@charset "utf-8";
/* CSS Document */

/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/

html,
body,
div, 
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
dialog, 
figure,
header,
hgroup,
menu,
section,
time,
mark,
audio,
video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
}

article,
dialog,
figure,
header,
hgroup,
nav,
section {
	display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes:none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content:'';
  content:none;
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
  text-decoration: none;
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0 1.8em;
    padding:0;
}

input,
select {
	vertical-align:middle;
}

ul{
	list-style: none;
}

ol li{
	list-style-position:outside;
	margin-left:2em;
	line-height: 2;
}

ol .kanji{
	list-style-type: cjk-ideographic;
	margin-left:2em;
	padding:0 0em 2em 0;
}
@charset "UTF-8";
/* CSS Document */

* {
  word-break: break-word;
  overflow-wrap: break-word
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

html {
  scroll-behavior:smooth;
  -webkit-scroll-behavior:smooth;
  box-sizing: border-box;
  font-size: 62.5%;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
  background: #fff;
  color: #333;
  letter-spacing: 0.05em;
  line-height: 3;
  font-size: 1.6rem;
  font-feature-settings:"pkna" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: bold;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

/* mac 游ゴシックbold*/
.bold {
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a:visited { 
  color:#00327d;
}

a:hover {
  color:#00327d; 
}

a:active {
  color:#00327d;
}

a:focus,
*:focus {
  outline: none;
}

img {
  width: 100%;
  height: auto;
}

/*  
  ページスクロール
---------------------------------*/

/* ページTOPに戻る */
#page_top{
  width: 70px;
  height: auto;
  z-index: 10;
  cursor: pointer;
  margin-bottom: 30px;
}

 #page_top a{
  text-decoration: none;
   display: block;
}

/*  
  news
---------------------------------*/
ul#news{color:#00327d;margin:0 auto 50px auto;}
ul#news li{max-width:1000px;width:100%;margin:0 auto;padding:10px 0;border-bottom:#879cbb 1px solid;box-sizing:border-box;position:relative;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-around;}
ul#news li:first-child{border-top:#879cbb 1px solid;}

ul#news li .news_date{text-align:center;width:20%;padding:20px 0;border-right:#879cbb 1px solid;}
ul#news li .news_text{line-height:1.7;width:80%;padding:10px 10px 10px 30px;box-sizing:border-box;}

.news_list_note a:link{color:#00327d!important;text-decoration:none;}
.news_list_note a:visited{color:#00327d!important;text-decoration:none;}
.news_list_note a:hover{color:#fff!important;text-decoration:none;}
.news_list_note a:active{color:#fff!important;text-decoration:none;}

.news_text a:link{color:#00327d!important;text-decoration:none;}
.news_text a:visited{color:#00327d!important;text-decoration:none;}
.news_text a:hover{color:#ffcd00!important;text-decoration:none;}
.news_text a:active{color:#ffcd00!important;text-decoration:none;}


@media screen and (max-width:1024px) {
  ul#news li{width:90%;flex-direction:column;flex-wrap:wrap;align-items:center;}
  ul#news li .news_date{text-align:left;width:100%;padding:20px 0;border-right:none;}
  ul#news li .news_text{text-align:left;width:100%;padding:10px 0;box-sizing:border-box;}
}


/*  
  contact
---------------------------------*/
form {margin:0;padding:0;}
input{padding:25px 30px;border:#8d8d8d 1px solid;background:#f4f4f4;box-sizing:border-box;}
textarea{border:#d7d0d0 1px solid;}
#thanks_form{text-align:center;margin:150px auto;}
.form_text_answer{
	width:60%;
	padding: 5px;
	zoom: 1;
}

.form_text, textarea, .dropdown {
	padding: 5px;
	zoom: 1;
}

.form_text_10 {
	width:10%!important;
	padding: 5px;
}

.form_text_20 {
	width:20%!important;
	padding: 5px;
}

.form_text_40 {
	width:40%!important;
	padding: 5px;
}

.form_text_60 {
	width:60%!important;
	padding: 5px;
}

.form_text_80 {
	width:80%!important;
	padding: 5px;
}

.LabelSelected,.RadioSelected {
	font-weight:normal;
	width:17%;
	padding:10px;
	padding: 5px;
	zoom: 1;
}

@media screen and (max-width:798px) {
  .form_text_20{font-size:90%;width:22%!important;box-sizing:border-box;}
  .form_text_40{font-size:90%;width:100%!important;box-sizing:border-box;}
  .form_text_60{font-size:90%;width:100%!important;box-sizing:border-box;}
  .form_text_80{font-size:90%;width:100%!important;box-sizing:border-box;}
  .LabelSelected,.RadioSelected{width:100%!important;box-sizing:border-box;}
}

#form_terms{line-height:1.5;max-height:300px;height:100%;width:100%;margin:0 auto 10px auto;padding:40px;background-color:#ffffff;border:#00327d solid 1px;overflow-y:scroll;box-sizing:border-box;}
#contact_table .wpcf7-response-output{color: red; text-align: center; border: none;}
#single #form_terms .terms_title{font-size:19px;font-weight:900;margin:24px auto 16px;}
#single #form_terms h3{margin:0 auto 16px;}

@media screen and (max-width:1200px) {
  #form_terms{max-height:200px;max-width:100%;padding:30px;}
}

#contact_table{font-size:15px;max-width:730px;width:100%;margin:50px auto 25px auto;}
#contact_table table th{color:#010075;text-align:left;vertical-align:middle;font-weight:normal;width:150px;padding:30px 0;border-top:none;border-bottom:none;background:transparent;box-sizing:border-box;}
#contact_table table tr{text-align:left;vertical-align:middle;clear:both;}
#contact_table table td{vertical-align:middle;padding:30px 2%;word-wrap:break-word;word-break:break-all;border-top:none;border-bottom:none;background:transparent;}
.contact_text , .center {text-align: center;}

@media screen and (max-width:414px) {
  #contact_table{font-size:13px;max-width:90%;margin:50px auto 25px auto;}
  #contact_table h2{margin:0 auto 45px auto;}
  #contact_table table th{font-size:14px;color:#010075;width:100%!important;white-space:nowrap;padding:20px 0 0 0;display:block!important;box-sizing:border-box;}
  #contact_table table tr{vertical-align:top;}
  #contact_table table td{width:100%!important;margin:10px auto 20px auto;padding:0 0;display:block!important;box-sizing:border-box;}
}

/* 入力項目を見やすくする */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {font-size:15px;padding:25px 30px;border:#8d8d8d 1px solid;background:#f4f4f4;box-sizing:border-box;width: 100%;}
textarea.wpcf7-form-control.wpcf7-textarea {
	height: 200px;
}

/* 必須項目の入力欄の色を変更する */
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
	background: rgba(255,255,255,1);
}

@media screen and (max-width:798px) {
  input.wpcf7-form-control.wpcf7-text,
  textarea.wpcf7-form-control.wpcf7-textarea {width:100%;box-sizing: border-box;}
}

.wpcf7 input[type="button"] {font-size:14px;color:#004ed7;position:relative;max-width:230px;width:100%;overflow:hidden;text-decoration:none;text-align:center;transition:ease .2s;border-radius:40px;line-height:100%;padding:25px 90px;outline:#004ed7 2px solid;outline-offset:-2px;background:transparent;}

@media screen and (max-width:798px) {
  .wpcf7 input[type="checkbox"] {padding:5px!important;}
}

div.wpcf7 .ajax-loader{display:none!important;}

/* 送信ボタン */	
#submit_bt_center{text-align:center;margin:50px auto 100px 10%;}


@media screen and (max-width:798px) {
  #submit_bt_center{margin:50px auto 100px auto;}
}	

.wpcf7 input[type="submit"] {font-size:1.7rem;color:#fff;font-weight:bold;max-width:260px;width:100%;margin:auto;text-align:center;background-color:#00327d;box-shadow: 0px 5px 0px 0px #ababab;border:0;border-radius:50px;position:relative;z-index:5;transition: .15s ease-out;transform:translateZ(0);-webkit-appearance: none;}
.wpcf7-submit:hover{color:#00327d!important;background-color:#ffcd00!important;cursor:pointer;transform: translateY(2px);box-shadow: 0 0 0 rgba(245, 209, 0, 0.75);opacity:1;}

.wpcf7-list-item{margin:0 auto!important;}

/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600;
}
/* エラーメッセージの上部を消去 */
div.screen-reader-response{
  display: none;
}

/* reCAPTCHA */
.grecaptcha-badge {
  padding-top: 0;
  padding-left: 0;
}

@media only screen and (max-width:798px) {
  .grecaptcha-badge {
      visibility: hidden;
      opacity: 0;
  }
}
@charset "UTF-8";
/* CSS Document */

.nav_row_inner {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.nav_txt span {
	font-size: 1.4rem !important;
	color: #ababab !important;
	text-align: right;
	display: block;
	line-height: normal;
}

.nav_txt {
	font-size: 2.2rem !important;
	color: #00327d;
	text-align: right;
	margin-right: 20px;
	line-height: normal;
	width: 200px;
}

.nav_pict {
	padding-top: 10px;
}

.nav_pict img {
	max-width: 67px;
	width: 100%;
	height: auto;
}

.header_menu_wrap {
	background: #fff;
	text-align: right;
	position: relative;
	top: 18%;
	right: 21%;
}

.nav_wrap {
	width: 100%;
}

.nav_wrap li {
	margin-bottom: 2.5rem;
}

.toggle_pict img {
	max-width: 80px !important;
	height: auto;
}

@media screen and (max-width: 767px) {
	.toggle_pict img {
		max-width: 13vw !important;
		height: auto;
	}
}

@media screen and (max-width: 414px) {
	.header_menu_wrap {
		position: relative;
		top: 21%;
		right: 5%;
	}

	.nav_wrap li {
		margin-bottom: 2rem;
	}

	.nav_txt span {
		font-size: 1.2rem !important;
	}

	.nav_txt {
		font-size: 2rem !important;
		margin-right: 20px;
		width: 200px;
	}

	.nav_pict img {
		max-width: 58px;
		width: 100%;
		height: auto;
	}
}

.nav_container {
	display: flex;
	justify-content: space-between;
}
@charset "UTF-8";
/* CSS Document */

@font-face {
  font-family:'Kotonode_100';
  src:url("../font/Kotonode-Kana-w100-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w100-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w100-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w100-M.eot") format("embedded-opentype");
}

@font-face {
  font-family:'Kotonode_250';
  src:url("../font/Kotonode-Kana-w250-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w250-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w250-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w250-M.eot") format("embedded-opentype");
}

@font-face {
  font-family:'Kotonode_400';
  src:url("../font/Kotonode-Kana-w400-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w400-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w400-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w400-M.eot") format("embedded-opentype");
}

@font-face {
  font-family:'Kotonode_550';
  src:url("../font/Kotonode-Kana-w550-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w550-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w550-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w550-M.eot") format("embedded-opentype");
}

@font-face {
  font-family:'Kotonode_700';
  src:url("../font/Kotonode-Kana-w700-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w700-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w700-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w700-M.eot") format("embedded-opentype");
}

@font-face {
  font-family:'Kotonode_900';
  src:url("../font/Kotonode-Kana-w900-M.woff") format("woff"),
    url("../font/Kotonode-Kana-w900-M.ttf") format("truetype"),
    url("../font/Kotonode-Kana-w900-M.otf") format("opentype"),
    url("../font/Kotonode-Kana-w900-M.eot") format("embedded-opentype");
}

.font_Kotonode_100{font-family: 'Kotonode_100';}
.font_Kotonode_250{font-family: 'Kotonode_250';}
.font_Kotonode_400{font-family: 'Kotonode_400';}
.font_Kotonode_550{font-family: 'Kotonode_550';}
.font_Kotonode_700{font-family: 'Kotonode_700';}
.font_Kotonode_900{font-family: 'Kotonode_900';}
.font_weigh_500{font-weight:500;}
.font_weigh_700{font-weight:700;}
.font_weigh_900{font-weight:900;}

body {
  background-color:#ffcd00;
  color: #fff;
}

.f_w {
  color:#fff
}

.f_b {
  color:#00327D
}

.top_ttl {
  font-size:1.5rem;
  margin-bottom: 1.5rem;
  display:block
}

.btm_ttl {
  font-size:4.7rem;
  display:block
}

.ttl_kanji {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 900 !important;
}

.ttl_kanji_700 {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700 !important;
}

.fontcolor_red {
  color:#ff4e31;
}

/* == FOOTER == */
footer {
	position: relative;
}

.footer_bg {
  margin-bottom: -10vh;
}

.footer_wrap_bg {
  background: #00327d;
}

.footer_wrap {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 50px;
}

li.p-breadcrumb {
	list-style: none;
}

.p-breadcrumb > ul {
	display: flex;
	font-size: 13px;
	font-weight: normal;
	flex-wrap: wrap;
	position: absolute;
	top: -20px;
}

.p-breadcrumb__lists li {
	color: #00327d;
}

.p-breadcrumb > ul > li:not(:last-of-type)::after {
	content: ">";
	padding: 0 15px;
}

.p-breadcrumb > ul > li > a {
	color: #00327d;
}

.p-breadcrumb > ul > li .next_list {
	display: inline-block;
	padding: 0 15px;
}

.footer_flex {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  padding-bottom: 100px;
}

.footer_menu_wrap {
  display: flex;
  justify-content: space-between;
}

.footer_nav_wrap {
  padding: 0 20px;
}

.footer_nav_wrap > li {
  font-size: 14px;
}

.footer_nav_wrap > li ul li {
  font-weight: normal;
  font-size: 13px;
}

.footer_nav_wrap li a {
  color: #fff;
}

.nav-unshown,
#nav-open {
  display: none;
}

.footer_name {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 10rem;
  line-height: 2;
}

.footer_add {
  font-size: 1.2rem !important;
  margin-left: 5px !important;
  font-weight: normal;
}

.footer_copyright {
  font-size: 1.1rem;
  font-weight: normal;
}

 @media screen and (max-width:1024px) {
  .footer_flex {
    display: block;
    justify-content: space-evenly;
    position: static;
    padding-bottom: 50px;
  }
}

@media screen and (max-width:767px) {
  .footer_wrap {
    margin: 0 auto
  }
	
  .footer_bg {
    margin-bottom: -20px;
  }
	
  .p-breadcrumb > ul {
	top: -80px;
  }

  .footer_name {
    margin-bottom: 5rem;
  }
	
  #nav-drawer {
    display: block;
  }
  
  #nav-open {
    position: relative;
    display: flex;
    justify-content: space-between;
    border: 1px solid #fff;
    padding: 0 20px;
  }
  
  #nav-open span.menu_line {
    position: absolute;
    right: 20px;
    height: 1px;
    width: 25px;
    border-radius: 3px;
    background: #fff;
  }

  #nav-open span.menu_line:nth-of-type(1) {
    top: 35%;
  }

  #nav-open span.menu_line:nth-of-type(2) {
    top: 50%;
  }

  #nav-open span.menu_line:nth-of-type(3) {
    top: 65%;
  }

  #nav-input:checked ~ #nav-open span.menu_line:nth-of-type(1) {
    transform: rotate(45deg);
    top: 25px;
  }   

  #nav-input:checked ~ #nav-open span.menu_line:nth-of-type(2) {
    transform: rotate(-45deg);
  }

  #nav-input:checked ~ #nav-open span.menu_line:nth-of-type(3) {
    opacity: 0;
  }

  .footer_menu_wrap {
	display: block;
    transform: scaleY(0);
    transform-origin: center top;
    transition: all .3s;
    height: 0;
	margin: 20px 0 60px;
  }

  #nav-input:checked ~ nav .footer_menu_wrap {
    transform: scaleY(1);
    height: 100%;
  }
	
  .footer_nav_wrap > li ul li {
    padding-left: 20px;
    position: relative;
  }

  .footer_nav_wrap > li ul li::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 0;
    width: 10px;
    height: 1px;
    background-color: #fff;
  }
}

@media screen and (max-width:414px) {
  /*修正113追加*/
  .footer_name {
    font-size: 1.5rem;
  }

  .p-breadcrumb > ul {
    font-size: 1rem; 		
  }

  .footer_add {
    font-size: 1.2rem !important;
    margin-left: 5px !important
  }

  .footer_copyright {
    font-size: 1rem
  }
  /*修正113追加ここまで*/
}

.about,
.works,
.service,
.news {
  margin-bottom: 27rem;
}

.wrap {
  max-width: 1280px;
  margin: auto;
}

@media screen and (max-width: 767px) {
  .about,
  .works,
  .service, 
  .news {
    margin-bottom: 10rem; 
  }
}

@media screen and (max-width: 414px) {
  .about,
  .works,
  .service,
  .news {
    margin-bottom: 7rem; 
  }
}

.loge_left {
  position: fixed;
  left:0;
  top:0;
  max-width: 250px;
  height: auto;
  z-index:10
}

@media screen and (max-width:1024px) {
  .loge_left {
    max-width: 190px
  }
}

@media screen and (max-width:767px) {
  .loge_left {
    max-width: 120px
  }
}

.page_header {
  margin:0 auto 11rem;
  max-width: 680px;
  height: auto;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .page_header {
    margin:0 auto 8rem;
    width: 85%;
  }
}

@media screen and (max-width: 414px) {
  .page_header {
    margin:0 auto 5rem;
  }
}

.page_wrap {
  max-width: 1100px;
  margin: 0 auto 16rem;
}

.page_wrap_inner {
  padding-left: 1.5rem;
  padding-right: 1.5rem
}

.btn_more,
.btn_more_blue {
  max-width: 260px;
  margin: auto;
  text-align: center;
  border-radius: 50px;
  position: relative;
  z-index: 5;
  letter-spacing: .2em;
}

.btn_more a,
.btn_more_blue a {
  display: block;
  padding: 5px;
  text-align: center;
  font-size: 1.7rem;
  background-color: #fff;
  font-weight: bold;
  color: #00327d;
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0px 5px 0px 0px #ffcd00;
  position: relative;
  text-decoration: none;
  transition: .15s ease-out;
}

.btn_more a:hover{
  transform: translateY(2px);
  box-shadow: 0 0 0 rgba(245, 209, 0, 0.75);
  opacity: 1;
}

.btn_more_blue a {
  color: #00327d;
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0px 5px 0px 0px #00327d;
}

.btn_more_blue a:hover {
  transform: translateY(2px);
  box-shadow: 0 0 0 rgba(245, 209, 0, 0.75);
  opacity: 1;
}

@media screen and (max-width: 1024px) {
  .btn_more_blue a:hover {
	box-shadow: 0px 5px 0px 0px #00327d;
  }
}

/*======お問い合わせ======*/
.info_wrap {
  margin-top: 22rem;
  margin-bottom: 22em;
}

@media screen and (max-width:767px) {
  .info_wrap {
    margin-top: 10rem;
  }
}

@media screen and (max-width:414px) {
  .info_wrap {
    margin-top: 10rem;
  }
}

.info_ttl {
  font-size: 4.7rem;
  text-align: center;
  line-height: normal;
  margin-bottom: 15px;
  letter-spacing: 1rem;
  color: #00327d;
}

.info_boby_wrap li {
  width: 100%;
  padding: 5px;
}

.info_boby_l {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 300px;
  flex-direction: column;
  margin-top: 240px;
}

.contact_bg {
  position: absolute;
  z-index: 1;
  width: 529px !important;
}

.contact_txt {
  position: absolute;
  z-index: 2;
  top: -38px;
  text-align: center;
  line-height: 2.3;
  letter-spacing: -0.01em
}

.contact_rollover_link {
  color: #00327D;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  z-index: 3;
  font-size: 1.8rem;
  white-space: nowrap;
}

.contact_rollover_link:hover {
  color: #00327D;
}

.contact_rollover_wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 5
}

/* Rollover */
.contact_rollover {
  position: relative;
  width: 232px;
  margin: auto;
  margin-top: 139px;
}

.contact_rollover img{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  display: block;
}

.contact_rollover img:nth-of-type(2) {
  opacity: 0;
}

.contact_rollover img:nth-of-type(1),
.contact_rollover:hover img:nth-of-type(1), 
.contact_rollover:hover img:nth-of-type(2) {
  opacity: 1;
}

@media screen and (max-width: 1024px) {
  .contact_bg {
    position: absolute;
    z-index: 1;
    width: 471px !important;
  }

  .contact_txt {
    position: absolute;
    z-index: 2;
    top: -38px;
    text-align: center;
    line-height: 2.3;
    letter-spacing: -0.01em
  }

  /* Rollover */
  .contact_rollover {
    position: relative;
    width: 210px;
    margin: auto;
    margin-top: 121px;
  }
}

@media screen and (max-width: 767px) {
  .info_boby_wrap li {
    width: 100%;
    padding: 1px;
  }

  .contact_bg {
    position: absolute;
    z-index: 1;
    width: 529px !important;
  }

  .contact_txt {
    position: absolute;
    z-index: 2;
    top: -38px;
    text-align: center;
    line-height: 2.3;
  }

  /* Rollover */
  .contact_rollover {
    position: relative;
    width: 232px;
    margin: auto;
    margin-top: 145px;
  }
}

@media screen and (max-width: 414px) {
  .contact_bg {
    position: absolute;
    z-index: 1;
    width: 374px !important;
  }

  .contact_txt {
    position: absolute;
    z-index: 2;
    top: -38px;
    text-align: center;
    line-height: 2.3;
    font-size: 1.2rem;
  }

  .contact_rollover {
    position: relative;
    width: 172px;
    margin: auto;
    margin-top: 99px;
  }

  .contact_rollover_link {
    font-size: 1.4rem;
  }
}

/*======single======*/ 
.bg_white{padding:5%; background:#fff;border-radius:40px;}
#single{color:#00327d;width:100%;padding:40px;margin:0 auto 20px auto;box-sizing:border-box;font-weight:initial;}
#single img{text-align:center;width:auto;height:auto;margin:0 auto 20px;display:block;}

.wp-block-image figcaption{font-size:14px;line-height:1.5;text-align:center;}

#single ul#archive_category{width:100%;margin:0 auto 10px auto;display:-webkit-flex;display:flex;justify-content:flex-start;align-items:center!important;}
#single ul#archive_category li{font-size:70%;letter-spacing:0;width:7%;text-align:center;margin:0 0.5% 0 0;padding:0;position:relative;}
#single ul#archive_category li a{position:absolute;top:0;left:0;height:100%;width:100%;text-decoration:none;display:block;}

#single ul#archive_category li a:link{color:#ffffff;text-decoration:none;}
#single ul#archive_category li a:visited{color:#ffffff;text-decoration:none;}
#single ul#archive_category li a:hover{color:#ffffff;text-decoration:underline;}
#single ul#archive_category li a:active{color:#ffffff;text-decoration:underline;}

#single #date{font-size:70%;color:#010075;line-height:100%;letter-spacing:0;max-width:100px;text-align:center;font-weight:700;margin:0 0 10px 0;padding:10px 0;border:#010075 1px solid;}
#single #heading{font-size:140%;color:#FFFFFF;text-align:left;line-height:100%;letter-spacing:0.1em;margin:0 auto 70px auto;padding:15px 30px;background:#4a4a4a;}

#single #text{width:100%;margin:0 auto 50px auto;padding:0;box-sizing:border-box;}

#single #text p{line-height:1.75;margin-top: 32px;margin-bottom: 32px;}
#single h1{font-size: 180%;line-height: 1.75;margin-top: 20px;margin-bottom: 50px;}
#single h2{font-size: 160%;line-height: 1.5;margin-top: 50px;margin-bottom: 50px;}
#single h3{font-size: 140%;line-height: 1.2;margin-top: 30px;margin-bottom: 30px;}
#single h4{font-size: 120%;line-height: 1;margin-top: 25px;margin-bottom: 25px;}
#single .wp-block-separator.is-style-dots:before {font-size: 3.5em;}
#single .wp-block-table table tbody tr td img{vertical-align:middle!important;margin:auto 3px auto 0!important;display:inherit;}

@media screen and (max-width:1024px) {
  #single{padding:20px;}
  #single #heading{font-size:120%;margin:0 auto 30px auto;}
}

/*======pagenation======*/ 
.pagination {
	clear: both;
	margin:0 auto 50px auto;
	position: relative;
	font-size: 16px;
	line-height:1;
	text-align: center;
}

.pagination-box {
	display: inline-block;
}

.pagination span,
.pagination a {
	display: block;height:50px;width:50px;line-height:300%;
	float: left;
	margin: 10px 15px 10px 15px;
	border-radius: 50%;
	text-decoration: none;
	color: #fff;
	background: #00327d;
}

.pagination a:hover{
	color: #00327d;
	background: #fff;
}

.pagination .current{
	border-radius: 50%;
	height: 50px;
	width: 50px;
	line-height: 300%;
	color: #00327d;
	background: #ffffff;
}

.page-of{display:none!important;}

@media only screen and (max-width: 413px) {
  .pagination {
    font-size: 12px;
    line-height: 12px;
  }

  .pagination span,
  .pagination a {
    padding: 8px 10px 8px 10px;
  }

  .pagination .current{
    padding: 8px 10px 8px 10px;
  }
}

/*======post======*/ 
.overmask_list:nth-child(12n+1) {
	-webkit-mask-image: url("../img/works/mask1.png");
	mask-image: url("../img/works/mask1.png");
}

.overmask_list:nth-child(12n+2) {
	-webkit-mask-image: url("../img/works/mask2.png");
	mask-image: url("../img/works/mask2.png");
}

.overmask_list:nth-child(12n+3) {
	-webkit-mask-image: url("../img/works/mask3.png");
	mask-image: url("../img/works/mask3.png");
}

.overmask_list:nth-child(12n+4) {
	-webkit-mask-image: url("../img/works/mask4.png");
	mask-image: url("../img/works/mask4.png");
}

.overmask_list:nth-child(12n+5) {
	-webkit-mask-image: url("../img/works/mask5.png");
	mask-image: url("../img/works/mask5.png");
}

.overmask_list:nth-child(12n+6) {
	-webkit-mask-image: url("../img/works/mask6.png");
	mask-image: url("../img/works/mask6.png");
}

.overmask_list:nth-child(12n+7) {
	-webkit-mask-image: url("../img/works/mask7.png");
	mask-image: url("../img/works/mask7.png");
}

.overmask_list:nth-child(12n+8) {
	-webkit-mask-image: url("../img/works/mask8.png");
	mask-image: url("../img/works/mask8.png");
}

.overmask_list:nth-child(12n+9) {
	-webkit-mask-image: url("../img/works/mask9.png");
	mask-image: url("../img/works/mask9.png");
}

.overmask_list:nth-child(12n+10) {
	-webkit-mask-image: url("../img/works/mask10.png");
	mask-image: url("../img/works/mask10.png");
}

.overmask_list:nth-child(12n+11) {
	-webkit-mask-image: url("../img/works/mask11.png");
	mask-image: url("../img/works/mask11.png");
}

.overmask_list:nth-child(12n+12) {
	-webkit-mask-image: url("../img/works/mask12.png");
	mask-image: url("../img/works/mask12.png");
}

.overmask_list:nth-child(12n+1),
.overmask_list:nth-child(12n+2),
.overmask_list:nth-child(12n+3),
.overmask_list:nth-child(12n+4),
.overmask_list:nth-child(12n+5),
.overmask_list:nth-child(12n+6),
.overmask_list:nth-child(12n+7),
.overmask_list:nth-child(12n+8),
.overmask_list:nth-child(12n+9),
.overmask_list:nth-child(12n+10),
.overmask_list:nth-child(12n+11),
.overmask_list:nth-child(12n+12) {
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

div.overmask_list img {
	height: 235px;
	width: 100%;
}

.overmask_list .overmask_caption {
	text-align: center;
	padding-top: 28%;
	color: #fff;
	line-height: 1.7;
	width: 80%;
	margin: 0 auto;
}

.overmask_list .overmask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.4);
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.overmask_list:hover .overmask {
	opacity: 1;
}

.overmask_caption p:first-child {
	font-size: 20px;
}

.overmask_caption p:last-child {
	font-size: 12px
}
@charset "UTF-8";

/* CSS Document */
/*index
----------------------------*/
body {
	background-color:#ffcd00;
	color: #fff;
}

.f_w {
	color: #fff
}

.f_b {
	color: #00327D
}

.top_ttl {
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
	display: block
}

.btm_ttl {
	font-size: 4.7rem;
	display: block
}

.ttl_kanji {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900 !important;
}

.about,
.works,
.service,
.interview{
	margin-bottom: 27rem;
}
.news{
	margin-bottom: 20rem;
}
.wrap {
	max-width: 1280px;
	margin: auto;
}

.works {
	padding-right: 3%
}

@media screen and (max-width: 1366px) {
	.works {
		overflow: hidden !important;
		padding-top: 10%;
		padding-bottom: 13%;
		padding-right: 3%
	}
}

@media screen and (max-width: 767px) {

	.about,
	.works,
	.service,
	.news {
		margin-bottom: 10rem;
	}

	.works {
		overflow: hidden !important;
		padding-bottom: 13%
	}
}

@media screen and (max-width: 414px) {

	.about,
	.works,
	.service,
	.news {
		margin-bottom: 7rem;
	}
}

/*============メインビジュアル=============*/
.mainvisual {
	max-width: 1280px;
	height: auto;
	margin: 6rem auto 0;
}

/*============どんな会社=============*/
.about_wrap {
	position: relative;
	padding-top: 225px;
	padding-bottom: 165px;
	max-width: 1280px;
}

.about_ttl {
	text-align: center;
	line-height: normal;
	margin-bottom: 15px;
	letter-spacing: 1rem;
	z-index: 3;
	position: relative;
}

.about_txt_wrap {
	margin: 0 auto 35px;
	z-index: 3;
	position: relative;
}

@media screen and (max-width: 414px) {
	.about_wrap {
		padding-bottom: 8rem;
	}

	.about_txt_wrap {
		margin: 0 auto 35px;
	}
}

.about_txt {
	text-align: center;
}

.chara_about_l img {
	position: absolute;
	width: 25%;
	left: 0;
	bottom: 17%;
	z-index: 3;
}

.chara_about_r img {
	position: absolute;
	width: 25%;
	right: 0;
	bottom: 21%;
	z-index: 3;
}

@media screen and (max-width: 414px) {
	.chara_about_l img {
		position: absolute;
		width: 38%;
		left: 0;
		bottom: 21%;
		opacity: 0.3 !important;
	}

	.chara_about_r img {
		position: absolute;
		width: 32%;
		right: 0;
		bottom: 23%;
		opacity: 0.3 !important;
	}

	.about_txt {
		text-align: center;
	}
}

/*============つくったもの=============*/
.works_body_wrap {
	display: flex;
}

.works_ttl {
	font-size: 5rem;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #00327d;
	letter-spacing: 1rem;
}

.works_ttl span {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: block;
	font-size: 1.5rem;
	margin-left: -49px;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.works_body_wrap {
		flex-direction: column;
	}

	.works_ttl {
		font-size: 4.7rem;
		text-align: center;
		line-height: normal;
		margin-bottom: 15px;
		letter-spacing: 1rem;
		color: #00327d;
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
	}

	.works_ttl span {
		display: block;
		font-size: 1.5rem;
		margin-bottom: 0.5rem;
		color: #fff !important;
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		margin: auto;
	}
}

.news_ttl {
	text-align: center;
	line-height: normal;
	margin-bottom: 6rem;
	letter-spacing: 1rem;
	color: #00327d;
}

.works_body_wrap {
	position: relative;
}

.chara_works_lt img,
.chara_works_lb img,
.chara_works_c img,
.chara_works_rt img,
.chara_works_rb img {
	width: 57%;
	margin: auto
}

.chara_works_lt {
	position: absolute;
	left: 26%;
	top: -19%;
}

@media screen and (max-width: 767px) {
	.chara_works_lt {
		position: absolute;
		left: 5%;
		top: 6%;
	}

	.chara_works_lt img {
		width: 48%;
	}
}

.chara_works_lb {
	position: absolute;
	left: 4%;
	bottom: 9%;
}

@media screen and (max-width: 1024px) {
	.chara_works_lb {
		position: absolute;
		left: 7%;
		bottom: -13%;
	}
}

@media screen and (max-width: 767px) {
	.chara_works_lb {
		position: absolute;
		left: 1%;
		bottom: -7%;
	}
}

@media screen and (max-width: 480px) {
	.chara_works_lt img {
		width: 64%;
	}

	.chara_works_lb {
		display: none
	}
}

.chara_works_c {
	position: absolute;
	right: 20%;
	bottom: 41%;
}

@media screen and (max-width: 767px) {
	.chara_works_c {
		position: absolute;
		right: 31%;
		bottom: 26%;
	}
}

.chara_works_rt {
	position: absolute;
	right: -4%;
	top: -17%;
}

@media screen and (max-width: 767px) {
	.chara_works_rt {
		position: absolute;
		right: -11%;
		top: 33%;
	}
}

.chara_works_rb {
	position: absolute;
	right: -13%;
	bottom: 10%;
}

@media screen and (max-width: 767px) {
	.chara_works_rb {
		position: absolute;
		right: -13%;
		bottom: -2%;
	}
}

@media screen and (max-width: 480px) {
	.chara_works_rb {
		position: absolute;
		right: -13%;
		bottom: 0%;
	}

	.chara_works_c img {
		max-width: 105px;
	}

	.chara_works_c {
		position: absolute;
		left: 8%;
		bottom: 26%;
	}
}

@media screen and (max-width: 414px) {
	.chara_works_rb {
		position: absolute;
		right: -30%;
		bottom: 0%;
	}

	.chara_works_rt {
		position: absolute;
		right: -110px;
		top: 33%;
	}
}

.works_list_wrap {
	margin-left: 3px;
	margin-top: -22px;
}

@media screen and (max-width: 767px) {
	.works_list_wrap {
		margin-top: 3rem;
	}
}

@media screen and (max-width: 414px) {
	.works_list_wrap {
		padding-left: 1.5rem;
		padding-right: 1.5rem
	}

	.chara_works_lt img,
	.chara_works_lb img,
	.chara_works_c img,
	.chara_works_rt img,
	.chara_works_rb img {
		width: 40%;
		margin: auto
	}
}

/*============できること=============*/
.service_body_wrap {
	display: flex;
	flex-direction: row-reverse;
}

.service_ttl {
	font-size: 5rem;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #00327d;
	letter-spacing: 1rem;
	z-index: 3;
}

.service_ttl span {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: block;
	font-size: 1.5rem;
	margin-left: -49px;
	color: #fff;
}

.service_list_wrap {
	z-index: 3;
}

.service_list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.service_list li {
	width: calc(100%/3);
	padding: 10px;
}

.service_list li a img {
	height: 203px;
	width: auto;
	display: block;
	margin: auto;
}

.service_wrap {
	position: relative;
	padding-top: 7rem;
}

.service_list figcaption {
	color: #00327d;
	text-align: center;
}

@media screen and (max-width: 1024px) {
	.service_list li a img {
		height: 150px;
	}
}

@media screen and (max-width: 767px) {
	.service_body_wrap {
		display: flex;
		flex-direction: column;
	}

	.service_list li {
		width: calc(100%/2);
		padding: 10px;
	}

	.service_list li a img {
		height: 159px;
		width: auto;
		display: block;
		margin: auto;
	}

	.service_ttl {
		font-size: 4.7rem;
		text-align: center;
		line-height: normal;
		margin-bottom: 15px;
		letter-spacing: 1rem;
		color: #00327d;
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
	}

	.service_ttl span {
		display: block;
		font-size: 1.5rem;
		margin-bottom: 0.5rem;
		color: #fff !important;
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: horizontal-tb;
		margin: auto;
	}
}

@media screen and (max-width: 480px) {
	.service_list li a img {
		height: 100px;
		width: auto;
		display: block;
		margin: auto;
	}

	.service_list figcaption {
		font-size: 1.4rem
	}

}

/*== 線の上を別の線が伸びる */
.btnlinestretches4 {
	/*線の基点とするためrelativeを指定*/
	position: relative;
	color: #00327d;
	display: inline-block;
	text-decoration: none;
	outline: none;
}

/*線の設定*/
.btnlinestretches4::before,
.btnlinestretches4::after {
	content: '';
	/*絶対配置で線の位置を決める*/
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	background: #00327d;
	width: 100%;
	height: 5px;
	transition: all 0.3s ease-in-out;
}

/*hover時に伸びる線の形状*/
.btnlinestretches4::after {
	width: 0;
	background: #fff;
}

/*hover時に100%に伸びる*/
.btnlinestretches4:hover::after {
	width: 100%;
}

/*============TenCy通信=============*/
.news_bg {
	background: url("../img/index/ufo_bg.png")no-repeat top center/contain
}

.news_wrap {
	padding-bottom: 105px;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 20rem;
}

@media screen and (max-width: 767px) {
	.news_wrap {
		padding-top: 17rem;
	}
}

@media screen and (max-width: 414px) {
	.news_wrap {
		padding-top: 14rem;
	}
}

.news_list_wrap {
	/* display: flex; */
	flex-wrap: wrap;
	margin-bottom: 6rem;
}

.news_list_wrap li {
	width: calc(100%/3);
	padding: 10px;
}

.news_list_wrap li a img {
	height: 235px;
	width: auto;
	display: block;
	margin: auto;
	margin-bottom: 10px;
	object-fit: cover;
}

.news_list_note {
	color: #00327d;
	line-height: 1.7;
	margin-top: 3px;
}

@media screen and (max-width: 1024px) {
	.news_list_note {
		color: #00327d;
		line-height: 1.7;
		margin-top: -20px;
	}
}

@media screen and (max-width: 767px) {
	.news_list_note {
		color: #00327d;
		line-height: 1.7;
		margin-top: -35px;
	}
}

.news_list {
	display: flex;
	flex-wrap: wrap;
}

.news_list li {
	width: calc(100%/3);
	padding: 0 30px 40px;
	position: relative;
	margin-bottom: 5rem;
}

.news_list .news_list_note_time{
	position: static;
	margin-top: 24px;
	text-align: right;
}

.news_list .news_list_note_time span{
	display: inline;
}

.news_list li.is-hidden {
  visibility: hidden;
  opacity: 0;
  height: 0;
  margin: 0 10px;
  padding:0;
}

.news_list li:first-child::before {
	position: absolute;
	top: 3%;
	left: 0;
	content: "";
	display: inline-block;
	height: 120px;
	width: 120px;
	background: url("../img/common/icon_new.png") no-repeat;
	background-size: contain;
	z-index: 2;
}

.news_column .news_list li:first-child::before {
	top: 0%;
	left: -30px;
}

.news_list li img {
	max-width: 100%;
	height: auto;
}

@media screen and (max-width: 414px) {
	.news_wrap {
		padding-bottom: 0;
	}

	.news_list_note {
		margin-top: -7px;
		margin-bottom: 15px;
	}

	.news_list li:not(:first-child) {
		margin-top: -60px;
	}
}


/*  以下追加 2カラムレイアウト用*/
.news_column {
  display: flex;
  gap: 30px;
  align-items: flex-start;
}

.news_list_wrap {
  flex: 1 1 70%;
}

.news_sidebar {
  flex: 1 1 30%;
  max-width: 300px;
}

.news_sidebar .dropmenu_icon{
	position: relative;
	background-size: contain;
	margin-bottom: 20px;
	width: 300px;
	height: 90px;
	margin-top: 25px;
	max-width: 100%;
}

/* .dropmenu_icon_wrap{
	position: absolute;
	top: -63px;
	left: 50%;
	transform: translateX(-50%);
} */


.category_list_title{
	position: absolute;
	top: 48%;
	left: 57%;
	transform: translate(-50%,-50%);
	font-weight: bold;
	color: #00327D;
}

.category_list_box {
  background-color: #f9f9f9;
  padding: 20px;
  border-radius: 8px;
	position: relative;
}

.category_list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.category_list li {
	border-bottom: 1px solid #00327d;
}

.category_list li:last-of-type{
	border: none;
	margin-bottom: 0;
}

.category_list li a {
	font-size: 14px;
  color: #00327d;
  text-decoration: none;
	transition: 0.3s ease;
}

.category_list li a:hover {
  opacity: 0.7;
}

.news_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
	justify-content: space-between;
}

.news_column .news_list li {
  width: calc(100% / 2 - 30px);
  padding: 0;
}

.news_list li a:hover{
	transition: 0.3s ease;
}

.category_list_box {
  padding: 20px;
  background: #f9f9f9;
  border-radius: 8px;
}

.category_list_title {
  font-weight: bold;
  margin-bottom: 1rem;
  color: #00327d;
}

.category_list {
  list-style: none;
  padding-left: 0;
}

.category_list a {
  color: #00327d;
  text-decoration: none;
}

.cat-parent{
	padding: 5px 0;
	font-weight: bold;
	margin-top: -7px;
}

.category_list .category_child_list{
	margin-top: -10px;
}

.category_list .category_child_list a{
	font-size: 13px;
}

.category_child_list .cat-child{
	border-bottom: 0;
	margin-bottom: 0;
	line-height: 2.4;
	padding-left: 1em;
	
}


@media screen and (max-width: 1120px) {
	.news_column .news_list_wrap li a img{
		height: auto;
		margin-bottom: 20px;
	}
	.news_column .news_list li:first-child::before {
    top: -4%;
    left: -10px;
    height: 80px;
    width: 80px;
	}
	.news_sidebar .dropmenu_icon{
		margin-top: 0px;
	}
}

@media screen and (max-width: 1024px){
	.news_column .news_list li {
    width: 100%;
    padding: 0;
  }
}

@media screen and (max-width: 768px) {
  .news_column {
    flex-direction: column;
  }
  .news_sidebar {
    max-width: 100%;
		width: 100%;
  }
	.news_column .news_list li:first-child::before {
    top: -8%;
    left: -15px;
    height: 120px;
    width: 120px;
	}
	.news_column .news_list .news_list_note_time{
		margin-top: 10px;
	}
	.category_list_title{
		top: 50%;
	}
	.news_sidebar .dropmenu_icon{
		margin: 0 auto;
		margin-bottom: 20px;
	}
	.news_column .news_list_wrap{
		margin-bottom: 3em;
	}
}

/*==================================================
　5-3-1 中心から外に線が伸びる（下部）
===================================*/
/*３つの動くメニュー*/
.news_menu {
	display: flex;
	flex-wrap: wrap;
	position: relative;
}

.news_menu li {
	width: calc(100%/3);
	padding: 26px;
	text-align: center;
}

.news_menu li a {
	color: #fff;
	font-weight: bold;
	position: relative;
	font-size: 1.8rem;
}

a.news_other_blue {
	color: #00327D !important;
	font-weight: bold;
}

.news_menu li.current a,
.news_menu li a:hover {
	color: #fff;
}

a.news_other_blue:hover {
	color: #00327D;
}

.news_menu li a::after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 10%;
	width: 80%;
	height: 1px;
	background: #fff;
	transition: all .3s;
	transform: scale(0, 1);
	transform-origin: center top;
}

a.news_other_blue::after {
	background: #00327D !important;
}

.news_menu li.current a::after,
.news_menu li a:hover::after {
	transform: scale(1, 1);
}

.news_menu_arrow {
	position: relative
}

.news_menu_arrow::after {
	position: absolute;
	content: "\03e";
	top: -7px;
	right: -19px;
	font-size: 1.4rem;
}

.news_menu_cell {
	position: relative;
}

.news_menu_cell figcaption {
	position: absolute;
	top: 57%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

@media screen and (max-width: 767px) {
	.news_menu {
		margin-top: 5rem;
	}

	.news_menu li {
		width: calc(100%/3);
		padding: 0;
	}

	.news_menu li a {
		font-size: 1.5rem;
	}

	.news_menu_arrow::after {
		position: absolute;
		top: -9px;
		right: -19px;
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 414px) {
	.news_menu {
		margin-top: 1rem;
	}

	.news_menu li a {
		font-size: 1.1rem;
	}

	.news_menu li {
		width: calc(100%/2);
		padding: 10px;
		text-align: center;
	}

	.news_menu_arrow::after {
		position: absolute;
		top: -7px;
		right: -12px;
		font-size: 1rem;
	}
}
/*============お客様インタビュー=============*/
.interview {
	width:100vw!important;
}

.interview-btn-wrap .swiper-button-prev,
.interview-btn-wrap .swiper-button-next {
	background-color: #fff;
	border-radius: 50%;
    padding: 16px 24px;
}

.interview-btn-wrap .swiper-button-prev::after,
.interview-btn-wrap .swiper-button-next::after {
	font-size: 20px;
    font-weight: bold;
    -webkit-text-stroke: 1px;
}

.interview_title_flex {
    display: flex;
}

.interview .info_ttl_en {
	text-align: left;
}

.interview h2 {
	margin-left:60px;
}

.viewall {
    margin-right: 32px
}

.interview_list .overmask_caption {
	width: 60%;
	padding-top: 21%;
}

.interview img {
	width: 25vw;
	margin:30px 60px;
}

.arrow {
  position: relative;
  display: inline-block;
  padding: 10px;
}

.arrow::before {
  content: '';
  width: 10px;
  height: 10px;
  border-top: solid 2px #00327d;
  border-right: solid 2px #00327d;
  position: absolute;
} 

.arrow.arrow-right::before {
  transform: rotate(45deg);
}

.all-slidebotton {
	display: flex;
	margin:40px;
}

.interview button {
	background-color: #ffffff;
    width: 50px;
    height: 50px;
    border-radius: 50px;
    border: none;
    color: #00327d;
    font-weight: 700;
}

.interview_flex {
	display:flex;
}

.company a {
	font-size:14px;
	font-weight: 400;
	color: #fff;
	font-weight: bold;
}

.interview_title {
	color:#00327d;
	line-height: 30px;
	margin-bottom:20px;
} 

.interview_industry {
	margin-top:3px;
}

.interview-category,
.interview-industry {
	display:flex;
	font-size:14px;
	font-weight: 700;
	color:#00327d;
	width: 100%;
}

.category-text,
.industry-text {
	background-color:#ffffff;
	padding:5px 10px;
	border-radius:8px;
	margin-left:12px;
	line-height: 1.8;
    display: flex;
    align-items: center;
}
.case_title_div{
	display:inline-block;
	text-align:left;
	margin-top: 16px;
}

/* インタビュー記事スライド */
.interview-btn-wrap {
	position: relative;
}

.interview-slide-btn {
	position: absolute;
	top: 50%;
    transform: translateY(-50%);
	right: -120px;
	width: 100%;
	height: 100%;
}

.interview_list::after {
	content: "";
	display: block;
	width: 30%;
}

.interview_list .swiper-slide {
	width: 32%;
	margin-bottom: 5rem;
	overflow: hidden;
}

.interview_list .swiper-slide.is-hidden {
  visibility: hidden;
  opacity: 0;
  height: 0;
  margin: 0 10px;
  padding:0;
}

.interview_list .swiper-slide a img {
	text-align: center;
	margin: auto;
	display: block;
}

/* 詳細記事 */
#news_single .post-tags li a {
    background-color: #00327D;
    padding: 2px 24px;
    padding-bottom: 3px;
    color: #fff;
    text-decoration: none;
    border-radius: 20px;
}

#news_single .post-tags li {
    display: inline-block;
    font-size: 12px;
    margin-right: 5px;
    border-radius: 20px;
}

#news_single .post-tags li a::before {
    content: "#";
}

.case-header-info {
	display: flex;
	align-items: center;
    background-color: #fff;
    margin: 24px 0;
}

.case-header-info > div {
	width: 50%;
}

.case-header-info .case-header-info-text {
	padding: 20px 40px;
}

.case-header-info .case-company-name {
	font-size: 22px;
    font-weight: bold;
    border-left: 6px solid #00327d;
	margin-bottom: 8px;
    padding-left: 8px;
    line-height: 1.3;
}

.case-header-info h1 {
	font-size: 23px !important;
}

.case-detail-outline {
	padding: 20px 40px;
}

.case-detail-outline .case-detail-outline-title {
	padding-left: 24px;
	position: relative;
}

.case-detail-outline .case-detail-outline-title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 0.8em;
  height: 0.8em;
  background-color: #FFD700;
  border-radius: 50%;
}

.category-text a,
.industry-text a {
	color: #00327d;
}

.interview-industry {
	margin-top:10px;
}

.overview_inner .company_name a {
	text-decoration: none;
	font-size: 35px;
}

@media screen and (max-width: 1024px) {
	.interview-slide-btn {
		position: absolute;
		top: 80px;
		transform: translateY(-50%) translateX(-50%);
		left: 50%;
		width: 150px;
	}
	
	.case-header-info {
		display: block;
	}
	
	.case-header-info > div {
		width: 100%;
	}
	
	.case-header-info .case-header-info-text {
		padding: 20px;
	}
	
	.case-detail-outline {
		padding: 20px;
	}
	
	.interview_title_flex {
        display:block;	
	}
	
	.interview h2 {
        margin:0 auto!important;
	}
	
	.interview_flex {
		display:block;
	}
	
	.info_ttl_en {
	    text-align:center!important;
	}
	
	.all-slidebotton {
		align-items: center;
        justify-content: space-around;
    }
	
	.interview figure {
		text-align:center;
	}
	
	.all-slidebotton {
		text-align:center;
		margin-top:20px;
	}
	
	.viewall {
		margin:0 auto;
	}
	
	.interview img {
		width: 60vw;
   		max-width: 400px;
		margin:0 auto;
	}
	
	.swiper-wrapper {
		margin-left:40px;
	}
	
	.swiper-slide{
		width: 55% !important;
	}
}

@media screen and (max-width: 767px){
	.swiper-slide {
		width: 65% !important;
	}
}
/*============お問い合わせと働く人=============*/
.info_boby_wrap {
	display: flex;
	justify-content: center;
}

.info_boby_wrap li {
	width: 100%;
	padding: 5px;
}

.info_boby_l,
.info_boby_r {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 300px;
	flex-direction: column;
	margin-top: 240px;
}

/*==お問い合わせ==*/
.contact_bg {
	position: absolute;
	z-index: 1;
	width: 470px !important;
}

.contact_txt {
	position: absolute;
	z-index: 2;
	top: -38px;
	text-align: center;
	line-height: 2.3;
	letter-spacing: -0.01em
}

/* Text - 画像にテキストを重ねる*/
.contact_rollover_link {
	color: #00327D;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-40%) translateX(-50%);
	z-index: 3;
	font-size: 1.8rem;
	white-space: nowrap;
	font-weight: 900;
}

.contact_rollover_link:hover {
	color: #00327D;
}

.contact_rollover_wrap {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 5
}

/*==働く人間==*/
.recruit_bg {
	position: absolute;
	z-index: 1;
	width: 450px !important;
}

.recruit_txt {
	position: absolute;
	z-index: 2;
	top: -61px;
	text-align: center;
	line-height: 2.3;
	letter-spacing: -0.01em
}

.recruit_rollover_link {
	color: #00327D;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	z-index: 3;
	font-size: 1.8rem;
	white-space: nowrap;
	font-weight: 900;
}

.recruit_rollover_link:hover {
	color: #00327D;
}

.recruit_rollover_wrap {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 5
}

/* Rollover */
.contact_rollover {
	position: relative;
	width: 232px;
	margin: auto;
	margin-top: 139px;
}

.recruit_rollover {
	position: relative;
	width: 318px;
	margin: auto;
	margin-top: 139px;
}

.contact_rollover img,
.recruit_rollover img {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -46.5%);
	width: 90%;
	display: block;
}

.contact_rollover img:nth-of-type(2),
.recruit_rollover img:nth-of-type(2) {
	opacity: 0;
}

.contact_rollover img:nth-of-type(1),
.recruit_rollover img:nth-of-type(1),
.contact_rollover:hover img:nth-of-type(1),
.recruit_rollover:hover img:nth-of-type(1),
.contact_rollover:hover img:nth-of-type(2),
.recruit_rollover:hover img:nth-of-type(2) {
	opacity: 1;
}

.txt_12 {
	font-size: 12px;
}

.info_bg {
	background-image: url("../img/index/info_line_bg_.png");
	background-repeat: repeat-y;
	background-position: top center;
	background-size: contain;
	height: 575px;
}

/*==お問い合わせ==*/
@media screen and (max-width: 1024px) {
	.contact_bg {
		position: absolute;
		z-index: 1;
		width: 420px !important;
	}

	.contact_txt {
		position: absolute;
		z-index: 2;
		top: -38px;
		text-align: center;
		line-height: 2.3;
		letter-spacing: -0.01em
	}

	/*==働く人間==*/
	.recruit_bg {
		position: absolute;
		z-index: 1;
		width: 411px !important;
	}

	.recruit_txt {
		position: absolute;
		z-index: 2;
		top: -61px;
		text-align: center;
		line-height: 2.3;
		letter-spacing: -0.01em
	}

	/* Rollover */
	.contact_rollover {
		position: relative;
		width: 210px;
		margin: auto;
		margin-top: 122px;
	}

	.recruit_rollover {
		position: relative;
		width: 300px;
		margin: auto;
		margin-top: 120px;
	}

	.info_bg {
		background-image: url("../img/index/info_line_bg_.png");
		background-repeat: repeat-y;
		background-position: top center;
		background-size: contain;
		height: 575px;
	}
}

@media screen and (max-width: 767px) {
	.info_bg {
		background-image: none;
	}

	.info_boby_wrap {
		flex-direction: column;
	}

	.info_boby_wrap li {
		width: 100%;
		padding: 1px;
	}

	.contact_bg {
		position: absolute;
		z-index: 1;
		width: 470px !important;
	}

	.contact_txt {
		position: absolute;
		z-index: 2;
		top: -38px;
		text-align: center;
		line-height: 2.3;
	}

	/*==働く人間==*/
	.recruit_bg {
		position: absolute;
		z-index: 1;
		width: 450px !important;
	}

	.recruit_txt {
		position: absolute;
		z-index: 2;
		top: -61px;
		text-align: center;
		line-height: 2.3;
		letter-spacing: -0.01em
	}

	/* Rollover */
	.contact_rollover {
		position: relative;
		width: 232px;
		margin: auto;
		margin-top: 146px;
	}

	.recruit_rollover {
		position: relative;
		width: 318px;
		margin: auto;
		margin-top: 139px;
	}

	.info {
		margin-bottom: 70rem
	}

	.info_ttl_recruit {
		margin-top: 280px;
	}
}

@media screen and (max-width: 414px) {
	.contact_bg {
		position: absolute;
		z-index: 1;
		width: 333px !important;
		;
	}

	.contact_txt {
		position: absolute;
		z-index: 2;
		top: -38px;
		text-align: center;
		line-height: 2.3;
		font-size: 1.2rem;
	}

	/*==働く人間==*/
	.recruit_bg {
		position: absolute;
		z-index: 1;
		width: 358px !important;
	}

	.recruit_txt {
		position: absolute;
		z-index: 2;
		top: -61px;
		text-align: center;
		line-height: 2.3;
		letter-spacing: -0.01em;
		font-size: 1.2rem;
	}

	.contact_rollover {
		position: relative;
		width: 172px;
		margin: auto;
		margin-top: 99px;
	}

	.recruit_rollover {
		position: relative;
		width: 242px;
		margin: auto;
		margin-top: 93px;
	}

	.info_ttl_recruit {
		margin-top: 170px;
	}

	.contact_rollover_link {
		font-size: 1.4rem;
	}

	.recruit_rollover_link {
		font-size: 1.4rem;
	}

	.info {
		margin-bottom: 45rem
	}
}

.info_ttl {
	font-size: 4.7rem;
	text-align: center;
	line-height: normal;
	margin-bottom: 15px;
	letter-spacing: 1rem;
	color: #00327d;
}

.info_ttl .info_ttl_en {
	display: block;
	font-size: 1.5rem;
	margin-bottom: 0.5rem;
	color: #fff !important;
}

.info_ttl .info_ttl_kanji {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900 !important;
}

/*== マスク　== */
.news_list_mask1 {
	width: 100%;
	height: auto;
	-webkit-mask-image: url("../img/index/news_list_mask01.png");
	mask-image: url("../img/index/news_list_mask01.png");
	-webkit-mask-position: -15% 0%;
	mask-position: -15% 0%;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.news_list_mask2 {
	width: 100%;
	height: auto;
	-webkit-mask-image: url("../img/index/news_list_mask02.png");
	mask-image: url("../img/index/news_list_mask02.png");
	-webkit-mask-position: -15% 0%;
	mask-position: -15% 0%;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.news_list_mask3 {
	width: 100%;
	height: auto;
	-webkit-mask-image: url("../img/index/news_list_mask03.png");
	mask-image: url("../img/index/news_list_mask03.png");
	-webkit-mask-position: -15% 0%;
	mask-position: -15% 0%;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

.news_menu_news {
	position: relative;
	top: 105px;
}

@media screen and (max-width: 767px) {
	.icon_news_new:before {
		height: 89px;
		width: 86px;
		position: absolute;
		top: -1%;
		left: -2%;
	}
}

@media screen and (max-width: 414px) {
	.icon_news_new:before {
		height: 89px;
		width: 86px;
		position: absolute;
		top: 6%;
		left: -2%;
	}

	.info_boby_l,
	.info_boby_r {
		margin-top: 20rem;
	}
}

.about_bg {
	position: relative;
	width: 100%;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

/*▼▼▼1223　ここから▼▼▼*/
.circle {
	max-width: 100%;
	height: 800px;
	background: #00327D;
	border-radius: 48% 69% 56% 53% / 47% 73% 43% 49%;
	animation: move 8s linear infinite;
	overflow: hidden;
	position: absolute;
	top: 80px;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

@media screen and (max-width: 599px) {
	.circle {
		background: transparent;
		border-radius: 0;
		animation: none;
		display: none !important
	}
}

.circle_1,
.circle_2,
.circle_3,
.circle_4,
.circle_5,
.circle_6,
.circle_7 {
	background: #00327D;
	border-radius: 48% 69% 56% 53% / 47% 73% 43% 49%;
	animation: move 8s linear infinite;
	overflow: hidden;
	position: absolute;
	width: 400px;
	height: 300px;
}

.circle_1 {
	position: absolute;
	top: 31%;
	left: 28%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_2 {
	position: absolute;
	top: 22%;
	left: 47%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_3 {
	position: absolute;
	top: 35%;
	left: 70%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_4 {
	position: absolute;
	top: 73%;
	left: 36%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_5 {
	position: absolute;
	top: 69%;
	left: 26%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_6 {
	position: absolute;
	top: 74%;
	left: 65%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.circle_7 {
	position: absolute;
	top: 65%;
	left: 73%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

/*=== できること ===*/
.ellipse {
	max-width: 100%;
	max-height: 950px;
	background: #ABABAB;
	border-radius: 34% 59% 42% 51% / 30% 39% 67% 63%;
	animation: move 8s linear infinite;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
}

.ellipse_1,
.ellipse_2,
.ellipse_3,
.ellipse_4,
.ellipse_5,
.ellipse_6,
.ellipse_7 {
	background: #ABABAB;
	border-radius: 48% 69% 56% 53% / 47% 73% 43% 49%;
	animation: move 8s linear infinite;
	overflow: hidden;
	position: absolute;
	width: 400px;
	height: 300px;
}

.ellipse_1 {
	position: absolute;
	top: 28%;
	left: 16%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_2 {
	position: absolute;
	top: 53%;
	left: 20%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_3 {
	position: absolute;
	top: 84%;
	left: 17%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_4 {
	position: absolute;
	top: 30%;
	left: 76%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_5 {
	position: absolute;
	top: 49%;
	left: 84%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_6 {
	position: absolute;
	top: 78%;
	left: 74%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

.ellipse_7 {
	position: absolute;
	top: 78%;
	left: 60%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	z-index: 0;
}

@keyframes move {
	50% {
		border-radius: 80% 20% 59% 41% / 72% 21% 79% 28%;
	}

	75% {
		border-radius: 100% 69% 100% 83% / 68% 99% 53% 93%;
	}
}

/*　11.3 追加　*/
.info_menu_arrow {
	position: relative
}

.info_menu_arrow::after {
	position: absolute;
	content: "\03e";
	top: -6px;
	right: -19px;
	font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
	.info_menu_arrow::after {
		position: absolute;
		top: -7px;
		right: -19px;
		font-size: 1.4rem;
	}
}

@media screen and (max-width: 414px) {
	.info_menu_arrow::after {
		position: absolute;
		top: -4px;
		right: -12px;
		font-size: 1rem;
	}
}

/*　11.13 追加　*/
@media screen and (max-width: 599px) {
	.circle_wrap {
		display: none;
	}

	.about_wrap {
		background-color: #00327d;
		padding-top: 13rem;
		padding-bottom: 13rem;
		;
		width: 100%
	}

	.ellipse_wrap {
		display: none;
	}

	.service_wrap {
		background-color: #ababab;
		padding-top: 13rem;
		padding-bottom: 13rem;
		;
	}

	.ellipse {
		display: none;
	}
}

.works_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.works_list li {
	width: 32%;
	margin-bottom: 5rem
}

.works_list li a img {
	text-align: center;
	margin: auto;
	display: block;
}

.works_list li:nth-child(1) {
	mask-image: url('../img/works/mask1.png');
	-webkit-mask-image: url('../img/works/mask1.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(2) {
	mask-image: url('../img/works/mask2.png');
	-webkit-mask-image: url('../img/works/mask2.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(3) {
	mask-image: url('../img/works/mask3.png');
	-webkit-mask-image: url('../img/works/mask3.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(4) {
	mask-image: url('../img/works/mask4.png');
	-webkit-mask-image: url('../img/works/mask4.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(5) {
	mask-image: url('../img/works/mask5.png');
	-webkit-mask-image: url('../img/works/mask5.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(6) {
	mask-image: url('../img/works/mask6.png');
	-webkit-mask-image: url('../img/works/mask6.png');
	mask-mode: alpha;
	-webkit-mask-mode: alpha;
	mask-position: 0 0;
}

.works_list li:nth-child(1),
.works_list li:nth-child(2),
.works_list li:nth-child(3),
.works_list li:nth-child(4),
.works_list li:nth-child(5),
.works_list li:nth-child(6) {
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

@media screen and (max-width: 767px) {
	.works_list li {
		width: 45%;
		margin: auto;
		margin-bottom: 3rem
	}
}

@media screen and (max-width: 480px) {
	.works_list li {
		width: 80%;
		margin: auto;
		margin-bottom: 3rem
	}
}

/*about
----------------------------*/
/*スマホ 320〜519px*/
@media screen and (min-width: 520px) {}

/*タブレット 560〜959px*/
@media screen and (min-width: 960px) {}

.qa {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.qa li {
	width: 48%;
}

.qa_pict {
	max-width: 60%;
	margin: auto;
}

.qa_container h4 {
	margin: 0 auto 35px;
	width: 90%;
}

.info_container {
	margin-top: 100px;
	margin-bottom: 200px;
	position: relative;
}

.info_table {
	color: #00327D;
	font-size: 12px;
	position: relative;
	z-index: 3;
}

.info_table th {
	padding: 35px 0px 35px 1px;
	letter-spacing: .3em;
	vertical-align: middle;
	white-space: nowrap;
	text-align: left;
}

.info_table td {
	padding-left: 32px;
	vertical-align: middle;
	box-sizing: border-box;
}

.info_table tr {
	border-bottom: 2px solid #00327D !important;
}

.info_table tr:first-child {
	border-top: 2px solid #00327D !important;
}

.info_container h4 {
	width: 40%;
	margin: 0 auto 35px;
}

.qa_wrap {
	margin-top: 100px
}

.chara1 {
	position: absolute;
	top: 53%;
	right: -8%;
	z-index: 1;
	width: 46%;
	overflow: hidden;
}

.chara2 {
	position: absolute;
	bottom: -11%;
	right: 5%;
	z-index: 1;
	width: 24%;
}

@media screen and (min-width: 767px) {
	.qa_container h4 {
		margin: 0 auto 35px;
		width: 50%;
	}

	.qa_container {
		margin-bottom: 100px;
		position: relative;
	}

	.qa_pict {
		width: 28%;
		margin: auto;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		top: 205%;
	}

	.qa {
		display: block;
	}

	.qa li {
		width: 28%
	}

	.qa li:nth-of-type(1) {
		position: absolute;
		top: 160%;
		right: 13%;
		z-index: 10;
	}

	.qa li:nth-of-type(5) {
		position: absolute;
		top: 147%;
		left: 17%;
		z-index: 10;
		width: 24%;
	}

	.qa li:nth-of-type(2) {
		position: absolute;
		top: 320%;
		right: 9%;
		z-index: 9
	}

	.qa li:nth-of-type(6) {
		position: absolute;
		top: 233%;
		left: 10%;
		z-index: 9;
		width: 25%;
	}

	.qa li:nth-of-type(3) {
		position: absolute;
		top: 452%;
		right: 8%;
		z-index: 8
	}

	.qa li:nth-of-type(7) {
		position: absolute;
		top: 337%;
		left: 7%;
		z-index: 8;
		width: 25%;
	}

	.qa li:nth-of-type(4) {
		position: absolute;
		top: 584%;
		right: 17%;
		z-index: 7;
		width: 22%;
	}

	.qa li:nth-of-type(8) {
		position: absolute;
		top: 426%;
		left: 17%;
		z-index: 7;
		width: 19%;
	}

	.qa li:nth-of-type(9) {
		position: absolute;
		top: 501%;
		left: 9%;
		z-index: 6;
		width: 21%;
	}

	.qa li:nth-of-type(10) {
		position: absolute;
		top: 591%;
		left: 19%;
		z-index: 6;
		width: 23%;
	}

	.info_container {
		margin-top: 112%;
		margin-bottom: 300px;
	}

	.info_container h4 {
		width: 19%;
		margin: 0 auto 35px;
	}

	.info_table {
		color: #00327D;
	}

	.info_table th {
		padding: 35px 0px 35px 20px;
		font-size: 18px;
	}

	.info_table td {
		padding-left: 32px;
		font-size: 16px;
		font-weight: normal;
	}

	.chara1 {
		position: absolute;
		top: 32%;
		right: -8%;
		z-index: 1;
		width: 46%;
	}

	.chara2 {
		position: absolute;
		bottom: -11%;
		right: 9%;
		z-index: 1;
		width: 22%;
	}
}

@media screen and (min-width: 960px) {}

/*　＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
モーダル
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*スマホ 320〜519px*/
@media screen and (min-width: 520px) {}

/*タブレット 560〜959px*/
@media screen and (min-width: 960px) {}

.remodal {
	position: relative;
	background-color: #fff;
	border-radius: 30px;
	padding: 50px
}

.remodal_ttl {
	margin-bottom: 15px;
}

.remodal p {
	font-size: 12px;
	color: #00327d;
	text-align: left;
	line-height: 2
}

.remodal img {
	width: 100%;
	max-width: 200px;
	height: auto;
	vertical-align: top;
}

.batsu {
	display: block;
	position: relative;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	/* 丸みの度合い */
	background: #00327D;
	/* ボタンの背景色 */
}

.batsu::before,
.batsu::after {
	/* 共通設定 */
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1px;
	height: 21px;
	background: #fff;
	/* バツ印の色 */
}

.batsu::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.batsu::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

/*タブレット 560〜959px*/
@media screen and (min-width: 960px) {
	.remodal p {
		font-size: 14px;
	}

	.remodal img {
		max-width: 315px;
	}

	.remodal {
		box-sizing: border-box;
		width: 100%;
		margin-bottom: 10px;
		padding: 60px 65px 50px 65px;
		transform: translate3d(0, 0, 0);
	}

	.remodal_ttl>img {
		width: 40%;
	}
}

.remodal {
	position: relative;
}

.icon_remodal {
	position: absolute;
	z-index: 15;
	width: 27%;
	max-width: 100px
}

.icon_remodal_a1 {
	bottom: 5%;
	right: -10%;
}

.icon_remodal_a2 {
	bottom: 50%;
	left: -14%;
}

.icon_remodal_a3 {
	bottom: 50%;
	right: -10%;
}

.icon_remodal_a4 {
	bottom: -3%;
	left: -14%;
}

.icon_remodal_a5 {
	bottom: -5%;
	right: -10%;
}

.icon_remodal_a6 {
	bottom: 50%;
	left: -14%;
}

.icon_remodal_a7 {
	bottom: -4%;
	right: -10%;
}

.icon_remodal_a8 {
	top: 5%;
	left: -14%;
}

.icon_remodal_a9 {
	bottom: 50%;
	right: -10%;
}

.icon_remodal_a10 {
	bottom: 50%;
	left: -14%;
}

/*タブレット 560〜959px*/
@media screen and (min-width: 767px) {
	.icon_remodal {
		position: absolute;
		z-index: 15;
		width: 40%;
	}

	.icon_remodal_a6,
	.icon_remodal_a8,
	.icon_remodal_a10 {
		left: -7%;
	}

	.icon_remodal_a2,
	.icon_remodal_a4 {
		left: -9%;
	}
}

/*works
----------------------------*/
#works_wrapper {
	font-size: 16px;
	font-weight: normal;
}

ul#works_top {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

ul#works_top li {
	font-size: 14px;
	font-weight: normal;
	margin: 0 0;
}

ul#works_top li h1 {
	font-size: 24px;
	font-weight: 700;
}

#works_wrapper h2 {
	font-size: 18px;
	font-weight: 700;
	margin: 0 auto;
}

/*news
----------------------------*/
.news_header {
	margin: 0 auto 11rem;
	max-width: 480px;
	height: auto;
	width: 100%;
}

.news_list_wrap {
	margin-bottom: 5rem
}

@media screen and (max-width: 767px) {
	.news_header {
		margin: 0 auto 8rem;
		width: 85%;
	}
}

@media screen and (max-width: 414px) {
	.news_header {
		margin: 0 auto 5rem;
	}
}

.news_list {
	display: flex;
	flex-wrap: wrap;
}

.news_list_pict1 {
	-webkit-mask-image: url("../img/news/mask1.png");
	mask-image: url("../img/news/mask1.png");
}

.news_list_pict2 {
	-webkit-mask-image: url("../img/news/mask2.png");
	mask-image: url("../img/news/mask2.png");
}

.news_list_pict3 {
	-webkit-mask-image: url("../img/news/mask3.png");
	mask-image: url("../img/news/mask3.png");
}

.news_list_pict4 {
	-webkit-mask-image: url("../img/news/mask4.png");
	mask-image: url("../img/news/mask4.png");
}

.news_list_pict5 {
	-webkit-mask-image: url("../img/news/mask5.png");
	mask-image: url("../img/news/mask5.png");
}

.news_list_pict6 {
	-webkit-mask-image: url("../img/news/mask6.png");
	mask-image: url("../img/news/mask6.png");
}

.news_list_pict7 {
	-webkit-mask-image: url("../img/news/mask7.png");
	mask-image: url("../img/news/mask7.png");
}

.news_list_pict8 {
	-webkit-mask-image: url("../img/news/mask8.png");
	mask-image: url("../img/news/mask8.png");
}

.news_list_pict9 {
	-webkit-mask-image: url("../img/news/mask9.png");
	mask-image: url("../img/news/mask9.png");
}

.news_list_pict1,
.news_list_pict2,
.news_list_pict3,
.news_list_pict4,
.news_list_pict5,
.news_list_pict6,
.news_list_pict7,
.news_list_pict8,
.news_list_pict9 {
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
}

@media screen and (max-width: 1024px) {
	.news_list li {
		width: calc(100%/2);
	}
	
	.news_list_wrap li a img {
		margin-bottom: 30px;
	}
}

@media screen and (max-width: 767px) {
	.news_list_wrap li a img {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 480px) {
	.news_list li {
		width: calc(100%/1);
		padding: 10px 10px 30px;
		margin-bottom: 7rem;
	}

	.news_list li:not(:first-child) {
		margin-top: -60px;
	}
}

.news_list_pict a img {
	text-align: center;
	margin: auto;
	display: block;
}

.news_list_note {
	color: #00327d;
	line-height: 1.7;
	margin-top: -1.3rem
}

@media screen and (max-width: 1024px) {
	.news_list_note {
		color: #00327d;
		line-height: 1.7;
	}
}

@media screen and (max-width: 767px) {
	.news_list_note {
		color: #00327d;
		line-height: 1.7;
	}
}

.news_list_note span {
	margin: 10px 0 5px;
	font-size: 1.3rem;
	font-weight: normal;
	display: block;
}

.news_list_note dt {
	font-weight: bold;
	margin-bottom: 8px;
}

.news_list_note dd {
	color: #00327d;
	font-size: 1.3rem;
	font-weight: normal;
}

.news_list li:first-child::before {
	position: absolute;
	top: 3%;
	left: 0;
	content: "";
	display: inline-block;
	height: 120px;
	width: 120px;
	background: url("../img/common/icon_new.png") no-repeat;
	background-size: contain;
	z-index: 2;
}

@media screen and (max-width: 414px) {
	.news_list_note {
		margin-top: -7px;
		margin-bottom: 15px;
	}

	.news_list li:not(:first-child) {
		margin-top: -60px;
	}
}

@media screen and (max-width: 414px) {
	.news_list_pict {
		width: 100%;
		margin: auto;
		margin-bottom: 3rem
	}
}

.menu_wrap {
	margin-bottom: 13rem;
}

/*バツマーク*/
.menu li.menu_list:after {
	position: absolute;
	right: -8%;
	top: 16%;
	content: "";
	background: url("../img/news/turn_on.svg") no-repeat center /contain;
	display: inline-block;
	width: 5rem;
	height: 5rem;
}

.menu li.menu_list:last-child:after {
	display: none;
}

/*矢印マーク*/
.under_arrow {
	position: relative;
	display: inline-block;
	color: #00327d;
	text-decoration: none;
	letter-spacing: 0.3em
}

.under_arrow:before {
	content: '';
	width: 24px;
	height: 24px;
	background: #00327d;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: -25px;
	margin-top: -12px;
}

.under_arrow:after {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-bottom: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: -17px;
	margin-top: -6px;
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	.menu_wrap {
		margin-bottom: 15rem;
	}

	/*矢印マーク*/
	.under_arrow:before {
		width: 16px;
		height: 16px;
		top: 79%;
		right: -14px;
		margin-top: -12px;
	}

	.under_arrow:after {
		content: '';
		width: 6px;
		height: 6px;
		position: absolute;
		top: 68%;
		right: -9px;
		margin-top: -6px;
		border-bottom: solid 2px #fff;
		border-right: solid 2px #fff;
	}
}

@media screen and (max-width: 414px) {
	/*矢印マーク*/
	.under_arrow:before {
		width: 13px;
		height: 13px;
		top: 93%;
		right: -14px;
		margin-top: -12px;
	}

	.under_arrow:after {
		content: '';
		width: 5px;
		height: 5px;
		position: absolute;
		top: 76%;
		right: -10px;
		margin-top: -6px;
		border-bottom: solid 2px #fff;
		border-right: solid 2px #fff;
	}
}

.wavy_line_ttl {
	font-size: 3rem;
	color: #00327d;
	text-align: center;
	background-color: #ffcd00;
	max-width: 290px;
	margin: auto;
}

.wavy_line_ttl_bg {
	background: url("../img/news/waveline.svg")repeat-x center/auto 4px;
	max-width: 730px;
	margin: 0 auto 7.5rem;
}

.news_list_note_time {
	position: absolute;
	bottom: 0;
	right: 30px;
}

.news_list_note_time a {
	text-decoration: underline !important;
}

.dropmenu {
	width: 300px;
	margin: 0 auto;
	padding-top: 2rem;
	padding-left: 3.5rem;
}

.dropmenu li {
	position: relative;
}

.dropmenu li a {
	display: block;
	margin: 0;
	padding: 15px 40px;
	font-size: 1.8rem;
	line-height: 1.5;
	color: #00327D;
	cursor: pointer;
	text-align: center;
}

.dropmenu li a:hover {
	background: #ABABAB;
	cursor: pointer;
}

.dropmenu_icon {
	background: url("../img/news/category.png")no-repeat top center/250px auto;
	height: 90px;
}

.dropmenu li {
	position: relative;
}

.dropmenu li ul {
	position: absolute;
	width: 100%;
	z-index: 9999;
	top: 100%;
	left: 0;
}

.dropmenu li ul li {
	overflow: hidden;
	height: 0;
	transition: .2s;
}

.dropmenu li ul li a {
	background: #fff;
	color: #00327D;
	font-size: 1.5rem;
}

.dropmenu li ul li a:hover {
	font-size: 1.5rem;
}

.dropmenu li ul li a:hover::after {
	font-family: 'Font Awesome 5 Free';
	content: '\f00c';
	font-weight: 900;
	display: inline-block;
	color: #00327D;
	padding: 0.3em;
	position: absolute;
	right: 15px;
	top: 20%;
}

.dropmenu li ul li:first-child a {
	border-top: none;
}

.dropmenu li:hover a:after {
	transition: .1s;
}

.dropmenu li:hover ul li {
	overflow: visible;
	height: auto;
}

.dropmenu li ul li a:hover {
	background: #ABABAB;
	transition: .5s;
}

@media screen and (max-width: 600px) {
	.dropmenu li.active_sp a:after {
		transition: .1s;
	}

	.dropmenu li.active_sp ul li {
		overflow: visible;
		height: 40px;
	}
}

/*news detail
----------------------------*/
#news_single #toc_container {
	border: 1.5px solid #00327d;
	padding: 20px;
	margin-bottom: 64px;
	width: 100%;
}

#news_single #toc_container .toc_title {
	margin: 0 0 16px;
}

#news_single #toc_container .toc_list li {
	padding-left: 0;
}

#news_single #toc_container .toc_list li::before {
	display: none;
}

#news_single {
	color: #00327d;
	max-width: 1126px;
	width: 100%;
	margin: 160px auto 20px auto;
	box-sizing: border-box;
	font-weight: initial;
	line-height: 1.8;
}

#news_single img {
	text-align: center;
	width: 100%;
	height: auto;
	margin: 0 auto;
	display: block;
}

#news_single #eyecatch {
	margin: 0 auto;
	background: #FFFFFF;
}

#news_single #eyecatch img {
	max-width: 100%;
	margin: 0 auto;
}

#news_single .wp-block-image {
	margin: 0 auto 45px auto;
}

#news_single ul#news_archive_category {
	width: 100%;
	margin: 0 auto 10px auto;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-start;
	align-items: center !important;
}

#news_single ul#news_archive_category li {
	font-size: 70%;
	letter-spacing: 0;
	width: 7%;
	text-align: center;
	margin: 0 0.5% 0 0;
	padding: 0;
	position: relative;
}

#news_single ul#news_archive_category li a {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	text-decoration: none;
	display: block;
}

#news_single ul#news_archive_category li a:link {
	color: #ffffff;
	text-decoration: none;
}

#news_single ul#news_archive_category li a:visited {
	color: #ffffff;
	text-decoration: none;
}

#news_single ul#news_archive_category li a:hover {
	color: #ffffff;
	text-decoration: underline;
}

#news_single ul#news_archive_category li a:active {
	color: #ffffff;
	text-decoration: underline;
}

#news_single .p-breadcrumb > ul {
	position: static;
	margin-bottom: 40px;
	padding-left: 0;
}

#news_single .p-breadcrumb > ul a {
	text-decoration: none;
}

.rewrite-mark {
	margin-left: 0.5rem;
}

#news_single #news_category {
	display: inline-block;
	line-height: 1;
	text-align: center;
	padding: 10px 20px;
	margin-right: 10px;
	background: #00327d;
}

#news_single #news_category a {
	color: #fff;
	text-decoration: none;
}

#news_single #news_date {
	font-size: 70%;
	color: #010075;
	line-height: 100%;
	letter-spacing: 0;
	max-width: 100px;
	text-align: center;
	font-weight: 700;
	margin: 0 0 10px 0;
	padding: 10px 0;
	border: #010075 1px solid;
}

#news_single #news_heading {
	font-size: 140%;
	color: #FFFFFF;
	text-align: left;
	line-height: 100%;
	letter-spacing: 0.1em;
	margin: 0 auto 70px auto;
	padding: 15px 30px;
	background: #4a4a4a;
}

#news_single #news_text {
	width: 100%;
	margin: 0 auto 50px auto;
	padding: 0;
	box-sizing: border-box;
	background: #FFFFFF;
}

#news_single #news_text_inner {
	max-width: 816px;
	margin: 0 auto;
	padding: 90px 24px 70px 24px;
}

#news_single #news_text_inner iframe {
	width: 100%;
}

#news_single h1 {
	font-size: 200%;
	line-height: 1.75;
	margin: 10px auto 30px 0;
}

#news_single h2 {
	font-size: 160%;
	line-height: 1.3;
	/* background: linear-gradient(transparent 70%, #ffcd00 70%); */
	display: inline;
}

#news_single h2+p,
#news_single h2+div,
#news_single h2+iframe,
#news_single #news_text_inner h2+figure {
	margin-top: 12px;
}

#news_single h3 {
	font-size: 120%;
	line-height: 1.3;
	margin: 30px auto 16px 0;
}

#news_single h4 {
	line-height: 1.3;
	margin: 30px auto 16px 0;
}

#news_single #news_text p{
	color: #333;
}

#news_single #news_text p,
#news_single #news_text .wp-block-table {
	line-height: 1.75;
	margin-bottom: 32px;
}

#news_single #news_text ul {
	margin-bottom: 16px;
}

#news_single #news_text ul li {
	padding-left: 20px;
	margin-top: 10px;
}

#news_single #news_text ul li::before {
	content: "・";
}

#news_single .wp-block-separator.is-style-dots:before {
	font-size: 3.5em;
}

#news_single .wp-block-table table tbody tr td img {
	vertical-align: middle !important;
	margin: auto 3px auto 0 !important;
	display: inherit;
}

#news_single blockquote {
	position: relative;
	border: 1.5px solid #00327d;
	border-radius: 4px;
	padding: 20px;
	margin-bottom: 32px;
}

#news_single blockquote cite {
	display: block;
	font-size: 0.8rem;
	text-align: right;
	color: #D4DED7;
	padding-right: 20px;
}

#news_single a {
	text-decoration: underline;
}

#news_single table th,
#news_single table td {
	border: 1.5px solid #00327d;
	padding: 10px;
}

#news_single .wp-element-caption {
	font-size: 1.4rem;
  text-align: center;
	margin-top: 6px;
}

#news_single .lkc-thumbnail {
	margin-right: 16px
}

#news_single .lkc-title-text {
	margin: 8px;
}

#news_single #news_text .ub-number-display {
	margin-bottom: 0;
}

#news_single .category_list li a{
	text-decoration: none;
}

#news_single .cat-parent{
	margin-top: 0;
	padding: 8px 0;
}

#news_single .category_child_list {
  list-style: none;
	border-bottom: none;
	margin-top: 0px;
}

#news_single .category_list_title{
	background: none;
	font-size: 1.8rem;
}

#news_single .post-tags li{
	display: inline-block;
	font-size: 12px;
	margin-right: 5px;
	border-radius: 20px;
}

#news_single .post-tags li a{
	background-color: #00327D;
	padding: 2px 24px;
	padding-bottom: 3px;
	color: #fff;
	text-decoration: none;
	border-radius: 20px;
}

#news_single .post-tags li a::before{
	content: "#";
}

@media screen and (max-width:1180px){
	#news_single{
		padding: 0 20px;
	}
}

@media screen and (max-width:1024px) {
	#news_single {
		padding: 20px;
		margin-top: 100px;
	}

	#news_single .news_column{
		display: block;
	}

	#news_single .news_sidebar {
    max-width: 100%;
		width: 100%;
  }

	#news_single .news_sidebar .dropmenu_icon{
		margin: 0 auto;
		margin-bottom: 20px;
	}

	#news_single #heading {
		font-size: 120%;
		margin: 0 auto 30px auto;
	}

	#news_single #news_text {
		padding: 20px;
	}

	#news_single #news_text_inner {
		padding: 50px 0 50px 0;
	}

	#news_single h1 {
		font-size: 170%;
	}

	#news_single h2 {
		font-size: 120%;
	}

	#news_single h3 {
		font-size: 110%;
	}
}

@media screen and (max-width:768px) {
	#news_single {
		margin-top: 20px;
	}
	
	#news_single h1 {
		font-size: 140%;
	}

	#news_single .wp-block-separator.is-style-dots:before {
		font-size: 2em;
	}
}

@media screen and (max-width:480px) {
	#news_single .news_meta_info {
		display: block;
		margin-top: 15px;
	}
}

/*tag-archive
----------------------------*/
.tag-archive{
	color: #00327d;
	max-width: 1126px;
	width: 100%;
	margin: 160px auto 20px auto;
	box-sizing: border-box;
	font-weight: initial;
	line-height: 1.8;
}

.tag-archive h1{
	font-size: 200%;
	line-height: 1.75;
	margin: 10px auto 30px 0;
}

.tag-archive .p-breadcrumb.breadcrumb_header > ul{
	position: static;
	margin-bottom: 30px;
}

.tag-post-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  list-style: none;
  padding: 0;
}

.tag-post-card {
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow 0.3s ease;
  height: 100%;
	transition: 0.3s ease
}

.tag-post-card img {
  height: 200px !important;
  object-fit: cover;
  width: 100%;
}

.tag-post-card:hover {
  opacity: 0.8;
}

.tag-post-thumb img {
  display: block;
  width: 100%;
  height: auto;
}

.tag-post-content {
  padding: 16px;
}

.tag-post-title {
  font-size: 14px;
  margin: 0;
  color: #00327D;
}

@media (max-width: 1024px) {
  .tag-post-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
	.tag-archive{
		margin-top: 20px;
	}
  .tag-post-grid {
    grid-template-columns: 1fr;
  }
}

/*works
----------------------------*/
ul#works_top {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
}

ul#works_top li {
	margin: 0 0;
}

ul#works_top li h2 {
	font-size: 24px;
}

.work_list::after {
	content: "";
	display: block;
	width: 30%;
}

.work_list li {
	width: 32%;
	margin-bottom: 5rem;
	overflow: hidden;
}

.work_list li.is-hidden {
  visibility: hidden;
  opacity: 0;
  height: 0;
  margin: 0 10px;
  padding:0;
}

.work_list li a img {
	text-align: center;
	margin: auto;
	display: block;
}

.work_list .overmask_list:nth-child(12n+1) {
	-webkit-mask-image: url("../img/works/mask1.png");
	mask-image: url("../img/works/mask1.png");
}

.work_list .overmask_list:nth-child(12n+2) {
	-webkit-mask-image: url("../img/works/mask2.png");
	mask-image: url("../img/works/mask2.png");
}

.work_list .overmask_list:nth-child(12n+3) {
	-webkit-mask-image: url("../img/works/mask3.png");
	mask-image: url("../img/works/mask3.png");
}

.work_list .overmask_list:nth-child(12n+4) {
	-webkit-mask-image: url("../img/works/mask4.png");
	mask-image: url("../img/works/mask4.png");
}

.work_list .overmask_list:nth-child(12n+5) {
	-webkit-mask-image: url("../img/works/mask5.png");
	mask-image: url("../img/works/mask5.png");
}

.work_list .overmask_list:nth-child(12n+6) {
	-webkit-mask-image: url("../img/works/mask6.png");
	mask-image: url("../img/works/mask6.png");
}

.work_list .overmask_list:nth-child(12n+7) {
	-webkit-mask-image: url("../img/works/mask7.png");
	mask-image: url("../img/works/mask7.png");
}

.work_list .overmask_list:nth-child(12n+8) {
	-webkit-mask-image: url("../img/works/mask8.png");
	mask-image: url("../img/works/mask8.png");
}

.work_list .overmask_list:nth-child(12n+9) {
	-webkit-mask-image: url("../img/works/mask9.png");
	mask-image: url("../img/works/mask9.png");
}

.work_list .overmask_list:nth-child(12n+10) {
	-webkit-mask-image: url("../img/works/mask10.png");
	mask-image: url("../img/works/mask10.png");
}

.work_list .overmask_list:nth-child(12n+11) {
	-webkit-mask-image: url("../img/works/mask11.png");
	mask-image: url("../img/works/mask11.png");
}

.work_list .overmask_list:nth-child(12n+12) {
	-webkit-mask-image: url("../img/works/mask12.png");
	mask-image: url("../img/works/mask12.png");
}

.work_list .overmask_list:nth-child(12n+1),
.work_list .overmask_list:nth-child(12n+2),
.work_list .overmask_list:nth-child(12n+3),
.work_list .overmask_list:nth-child(12n+4),
.work_list .overmask_list:nth-child(12n+5),
.work_list .overmask_list:nth-child(12n+6),
.work_list .overmask_list:nth-child(12n+7),
.work_list .overmask_list:nth-child(12n+8),
.work_list .overmask_list:nth-child(12n+9),
.work_list .overmask_list:nth-child(12n+10),
.work_list .overmask_list:nth-child(12n+11),
.work_list .overmask_list:nth-child(12n+12) {
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.work_title_wrap,
.case_title_wrap{
	text-align: center;
}

.work_list li .work_title {
	line-height: 1.7;
	margin-top: 16px;
	text-align: left;
	display: inline-block;
}

.work_list li .work_title a {
	color: #00327d;
}

.work_list li .work_title a:hover {
	color: #fff;
}

@media screen and (max-width: 1024px) {
	.work_list li {
		width: calc(100%/2);
	}
}

@media screen and (max-width: 767px) {
	.work_list li {
		width: 100%;
		margin: auto;
		margin-bottom: 3rem
	}
}

/*４つのメニュー*/
.menu_wrap {
	margin-bottom: 15rem;
}

.menu {
	display: table;
	table-layout: fixed;
	text-align: center;
	width: 100%;
}

.menu li.menu_list {
	display: table-cell;
	text-align: center;
	position: relative;
}

.menu li.menu_list a {
	letter-spacing: 0.05em;
	font-size: 2rem;
	color: #00327d;
}

/* フォロップダウン */
.menu li.menu_list ul {
	position: absolute;
	width: 100%;
	z-index: 9999;
	top: 100%;
	left: 0;
}

.menu li.menu_list ul li {
	overflow: hidden;
	height: 0;
	transition: .2s;
}

.menu li.menu_list:hover ul li {
	overflow: visible;
	height: 40px;
}

.menu li.menu_list ul li a {
	font-size: 1.5rem;
	background: #fff;
	display: block;
	padding: 15px;
	line-height: 1;
}

.menu li.menu_list ul li a:hover {
	background: #ABABAB;
	transition: .5s;
	position: relative;
}

.menu li.menu_list ul li a:hover::after {
	font-family: 'Font Awesome 5 Free';
    content: '\f00c';
    font-weight: 900;
    display: inline-block;
    color: #00327D;
    padding: 0.3em;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}

/*アイコン*/
.menu li.menu_list img {
	width: 100px;
	display: block;
	margin: auto;
}

/*バツマーク*/
.menu li.menu_list:after {
	position: absolute;
	right: -8%;
	top: 16%;
	content: "";
	background: url("../img/works/turn_on.svg") no-repeat center /contain;
	display: inline-block;
	width: 5rem;
	height: 5rem;
}

.menu li.menu_list:last-child:after {
	display: none;
}

/*矢印マーク*/
.under_arrow {
	position: relative;
	display: inline-block;
	color: #00327d;
	text-decoration: none;
	letter-spacing: 0.3em
}

.under_arrow:before {
	content: '';
	width: 24px;
	height: 24px;
	background: #00327d;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: -25px;
	margin-top: -12px;
}

.under_arrow:after {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-bottom: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: -17px;
	margin-top: -6px;
	transform: rotate(45deg);
}


/* 以下2カラム用追加 */
.works_column {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}

.work_list_wrap {
  width: 70%;
}

.works_column .work_list li {
  width: calc(100% / 2 - 30px);
  padding: 0;
}

.works_sidebar {
  width: 30%;
  max-width: 300px;
}

.works_sidebar img{
  width: 120px;
  max-width: 100%;
	margin: 0 auto;
	display: block;
}

.works_sidebar_category_title{
	color: #00327D;
	text-align: center;
	font-size: 22px;
	letter-spacing: 0.3em;
}

.work_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
	justify-content: space-between;
}

.work_list img{
	object-fit: cover; 
}

.work_title a{
	transition: 0.3s ease;
}


@media screen and (max-width: 1024px){
	.works_column .work_list li {
    width: 100%;
    padding: 0;
  }
	.work_list{
		display: block;
	}
	.work_list img{
		object-fit: contain; 
	}
}

@media screen and (max-width: 767px) {
	.works_column {
		display: block;
	}
	.work_list_wrap{
		width: 100%;
	}
	.works_sidebar {
		width: 100%;
		max-width: 100%;
		margin-top: 80px;
	}
	.menu_wrap {
		margin-bottom: 8rem;
	}

	.menu li.menu_list:hover ul li {
		height: 100%;
	}

	.menu li.menu_list a {
		font-size: 1.8rem;
		color: #00327d;
		letter-spacing: 0.5em
	}

	.menu li.menu_list ul li a {
		font-size: 12px;
		padding: 15px 5px;
		line-height: 1.5;
	}

	/*アイコン*/
	.menu li.menu_list img {
		width: 90px;
	}

	/*バツマーク*/
	.menu li.menu_list:after {
		position: absolute;
		right: -8%;
		top: 16%;
		content: "";
		background: url("../img/works/turn_on.svg") no-repeat center /contain;
		display: inline-block;
		width: 3.5rem;
		height: 3.5rem;
	}

	.menu li.menu_list:last-child:after {
		display: none;
	}
}

@media screen and (max-width: 414px) {
	.menu li.menu_list a {
		font-size: 1.2rem;
		color: #00327d;
		letter-spacing: 0.5em
	}

	/*アイコン*/
	.menu li.menu_list img {
		width: 53px;
	}

	/*バツマーク*/
	.menu li.menu_list:after {
		position: absolute;
		right: -8%;
		top: 16%;
		content: "";
		background: url("../img/works/turn_on.svg") no-repeat center /contain;
		display: inline-block;
		width: 2rem;
		height: 2rem;
	}

	.menu li.menu_list:last-child:after {
		display: none;
	}
}

.wavy_line_ttl {
    font-size: 3rem;
	color: #00327d;
	text-align: center;
	background-color: #ffcd00;
	max-width: 290px;
	margin: auto;
}

.work_banner {
    padding: 20px;
	max-width: 972px;
	margin: 0 auto 7rem auto;
}

.work_banner img {
	border-radius: 8px;
	border: 1.5px solid #00327d;
}

.list_other {
    padding: 20px;
	max-width: 1120px;
	margin: 0 auto 7rem auto;
}

.list_other h1 {
	line-height: 1.8;
    text-align: center;
}

.wavy_line_ttl_bg {
	background: url("../img/works/waveline.svg")repeat-x center/auto 4px;
	max-width: 730px;
	margin: 0 auto 3.5rem;
}

/*work detail
----------------------------*/
#works_single {
	color: #00327d;
	max-width: 1126px;
	width: 100%;
	margin: 0 auto 20px auto;
	box-sizing: border-box;
	font-weight: initial;
}

#works_single img {
	text-align: center;
	width: auto;
	height: auto;
	margin: 0 auto;
	display: block;
}

#works_single #eyecatch {
	margin: 0 auto;
	background: #FFFFFF;
}

#works_single #eyecatch img {
	max-width: 100%;
	margin: 0 auto;
}

#works_single .wp-block-image {
	margin: 0 auto 45px auto;
}

#works_single ul#works_archive_category {
	width: 100%;
	margin: 0 auto 10px auto;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-start;
	align-items: center !important;
}

#works_single ul#works_archive_category li {
	font-size: 70%;
	letter-spacing: 0;
	width: 7%;
	text-align: center;
	margin: 0 0.5% 0 0;
	padding: 0;
	position: relative;
}

#works_single ul#works_archive_category li a {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	text-decoration: none;
	display: block;
}

#works_single ul#works_archive_category li a:link {
	color: #ffffff;
	text-decoration: none;
}

#works_single ul#works_archive_category li a:visited {
	color: #ffffff;
	text-decoration: none;
}

#works_single ul#works_archive_category li a:hover {
	color: #ffffff;
	text-decoration: underline;
}

#works_single ul#works_archive_category li a:active {
	color: #ffffff;
	text-decoration: underline;
}

#works_single #works_category {
	color: #FFFFFF;
	line-height: 1;
	text-align: center;
	padding: 10px 20px;
	background: #00327d;
	display: inline-block;
}

#works_single #works_date {
	font-size: 70%;
	color: #010075;
	line-height: 100%;
	letter-spacing: 0;
	max-width: 100px;
	text-align: center;
	font-weight: 700;
	margin: 0 0 10px 0;
	padding: 10px 0;
	border: #010075 1px solid;
}

#works_single #works_heading {
	font-size: 140%;
	color: #FFFFFF;
	text-align: left;
	line-height: 100%;
	letter-spacing: 0.1em;
	margin: 0 auto 70px auto;
	padding: 15px 30px;
	background: #4a4a4a;
}

#works_single #works_text {
	width: 100%;
	margin: 0 auto 50px auto;
	padding: 0 24px;
	box-sizing: border-box;
	background: #FFFFFF;
}

#works_single #works_text_inner {
	max-width: 816px;
	margin: 0 auto;
	padding: 90px 0 70px 0;
}

#works_single .works_sidebar img{
  width: 120px;
  max-width: 100%;
	margin: 0 auto;
	display: block;
}

#works_single .works_sidebar_category_title{
	color: #00327D;
	text-align: center;
	font-size: 22px;
	letter-spacing: 0.3em;
	display: block;
	margin: 10px 0 20px 0;
}

#works_single h1 {
	font-size: 180%;
	line-height: 1.75;
	margin: 10px auto 30px 0;
}

#works_single h2 {
	font-size: 150%;
	line-height: 1.3;
	margin: 0 auto 50px 0;
	background: linear-gradient(transparent 70%, #ffcd00 70%);
	display: table;
}

#works_single h3 {
	font-size: 120%;
}

#works_single #works_text p {
	line-height: 1.75;
}

#works_single .wp-block-separator.is-style-dots:before {
	font-size: 3.5em;
}

#works_single .wp-block-table table tbody tr td img {
	vertical-align: middle !important;
	margin: auto 3px auto 0 !important;
	display: inherit;
}


@media screen and (max-width:1180px){
	#works_single{
		padding: 0 20px;
	}
}

@media screen and (max-width:1024px) {
	#works_single {
		padding: 20px;
		margin-top: 100px;
	}

	#works_single .works_column{
		display: block;
	}

	#works_single .works_sidebar {
    max-width: 100%;
		width: 100%;
  }
}

@media screen and (max-width:1024px) {
	#works_single,
	#cases_single{
		padding: 20px;
	}

	#works_single #heading {
		font-size: 120%;
		margin: 0 auto 30px auto;
	}

	#works_single #works_text,
	#cases_single #cases_text{
		padding: 20px;
	}

	#works_single #works_text_inner {
		padding: 50px 0 50px 0;
	}

	#works_single h1 {
		font-size: 150%;
	}

	#works_single h2 {
		font-size: 120%;
	}
}

@media screen and (max-width:768px) {
	#works_single h1 {
		font-size: 120%;
	}

	#works_single h2 {
		font-size: 100%;
	}
	
	#works_single iframe {
		width: 100% !important;
		min-width: initial !important;
	}
}

.overview_wrap {
	max-width: 816px;
	margin: 0 auto;
	padding: 60px 0 90px 0;
	border-top: #00327d 1px solid;
}

.overview {
	line-height: 2 !important;
}

.overview_inner {
	margin: 0 auto 10px auto;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	box-sizing: border-box;
}

.overview_inner dt {
	width: 22%;
	font-size: 14px;
	font-weight: bold !important;
	color: #00327d;
	display: flex;
	align-items: center;
}

.overview_inner dd {
	width: 78%;
	font-size: 14px;
	color: #00327d;
}

.overview a {
	color: #00327d;
	text-decoration: underline;
}

.overview_icon img {
	width: 100% !important;
	max-width: 18px;
	height: auto;
	vertical-align: -3px;
	margin: 0 3px 0 0;
	display: inherit;
}

@media screen and (max-width:1024px) {
	.overview_wrap {
		padding: 50px 0 20px 0;
	}

	.overview_inner {
		margin: 0 auto 30px auto;
		flex-direction: column;
	}

	.overview_inner dt {
		width: 100%;
	}

	.overview_inner dd {
		width: 100%;
	}
}

.overmask_list {
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
}

/* お知らせの関連記事 */
.other_news_list {
	display: flex;
	flex-wrap: wrap;
}

.other_news_list .overmask_list {
	width: calc(100%/3);
	padding: 10px;
}

div.overmask_list img {
	height: 235px;
	width: 100%;
}

.other_news_list a:hover {
	color: #fff;
}

.overmask_list .overmask_caption {
	text-align: center;
	padding-top: 28%;
	color: #fff;
	line-height: 1.7;
	width: 80%;
	margin: 0 auto;
}

.overmask_list .overmask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	background-color: rgba(0, 0, 0, 0.4);
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.overmask_list:hover .overmask {
	opacity: 1;
}

.overmask_caption p:first-child {
	font-size: 20px;
}

.overmask_caption p:last-child {
	font-size: 12px
}

@media screen and (max-width:1024px) {
  .other_news_list .overmask_list {
	width: calc(100%/2);
  }
}

@media screen and (max-width:767px) {
  .other_news_list {
    display: block;
  }

  .other_news_list .overmask_list {
    width: 100%;
    text-align: center;
  }
}
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */

/* Hide scroll bar */

html.remodal-is-locked {
  overflow: hidden;
  touch-action: none;
}

/* Anti FOUC */

.remodal,
[data-remodal-id] {
  display: none;
}

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  backface-visibility: hidden;
}

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  text-size-adjust: 100%;
}

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block;
}
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */

/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  filter: blur(3px);
}

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(43, 46, 56, 0.9);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
  animation-name: remodal-overlay-opening-keyframes;
}

.remodal-overlay.remodal-is-closing {
  animation-name: remodal-overlay-closing-keyframes;
}

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 80px 10px 0;
}

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 80%;
  margin-bottom: 10px;
  padding: 60px 65px 50px 65px;
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  animation-duration: 0.3s;
  animation-fill-mode: forwards;
}

.remodal.remodal-is-opening {
  animation-name: remodal-opening-keyframes;
}

.remodal.remodal-is-closing {
  animation-name: remodal-closing-keyframes;
}

/* Vertical align of the modal dialog */

.remodal,
.remodal-wrapper:after {
  vertical-align: middle;
}

/* Close button */
.remodal-close {
  position: absolute;
  top: -3%;
  right: 1%;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent;
}

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38;
}

.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center;
}

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0;
  background-color:transparent
}

.remodal-cancel {
  position:absolute;
  right:-0%;
  top: -19%;
}

.remodal-confirm {
  color: #fff;
  background: #81c784;
}

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a;
}

.remodal-cancel {
  color: #fff;
  background: #e57373;
}

.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #ef5350;
}

/* Remove inner padding and border in Firefox 4+ for the button tag. */

.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* Keyframes
   ========================================================================== */

@keyframes remodal-opening-keyframes {
  from {
    transform: scale(1.05);

    opacity: 0;
  }

  to {
    transform: none;

    opacity: 1;

    filter: blur(0);
  }
}

@keyframes remodal-closing-keyframes {
  from {
    transform: scale(1);

    opacity: 1;
  }

  to {
    transform: scale(0.95);

    opacity: 0;

    filter: blur(0);
  }
}

@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 700px;
  }
}

@media only screen and (max-width: 767px) {
  .remodal {
    padding-left: 45px;
	padding-right: 45px;
  }
}

/* IE8
   ========================================================================== */

.lt-ie9 .remodal-overlay {
  background: #2b2e38;
}

.lt-ie9 .remodal {
  width: 700px;
}
