@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;
}

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

.p-breadcrumb > ol {
	display: flex;
	font-size: 13px;
	font-weight: normal;
	flex-wrap: wrap;
	position: absolute;
	top: -20px;
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

.p-breadcrumb__lists li {
	color: #00327d;
	list-style: none;
	line-height: inherit;
	margin-left: 0;
}

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

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

.p-breadcrumb > ol > 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 > ol {
	top: -80px;
  }

  .footer_name {
    margin-bottom: 5rem;
  }
	
  #nav-drawer {
    display: block;
  }
  
  #nav-open {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    border: 1px solid #fff;
    background: transparent;
    color: #fff;
    font: inherit;
    cursor: pointer;
    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-drawer.is-open #nav-open span.menu_line:nth-of-type(1) {
    transform: rotate(45deg);
    top: 25px;
  }   

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

  #nav-drawer.is-open #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-drawer.is-open 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 > ol {
    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: 200px;
  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_header.cases_page_header {
  max-width: 340px;
  width: 50%;
}

.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
}

/* 表示非表示 */
.pc_only{
	display: block;
}
.sp_only{
	display: none;
}

@media (max-width: 767px){
	.pc_only{
		display: none;
	}
	.sp_only{
		display: block;
	}
}

.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_more {
	margin-top: 40px;
	position: relative;
	z-index: 3;
}

.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
	}
}

/* 2025.11.27追記 ここから*/
#service .service-summary {
  color: #00327D;
  margin-top: 0px;
  padding-top: 30px;
  display: flex;
}

#service .service-summary .service-summary_title {
  display: block;
  margin: 0 auto;
  max-width: 660px;
  width: 100%;
}

#service .service-summary .service-summary_title .service_title_flex{
	display: flex;
	gap: 10px;
	width: 100%;
	margin-bottom: 15px;
}

#service .service-summary_illust{
  width: 25%;
	margin:0;
 }

#service .service-summary img {
  width: 100%;
  height: auto;
  display: block;
}

#service .service-summary_illust,
#service .service-summary .service_title_flex .page-title {
  min-width: 0; 
}

#service .service-summary .service-summary_title .service_title_flex .page-title{
	font-size: 6rem;
	width: 75%;
}

#service .service-summary div img {
  width: 100%;
	padding: 0;
}

#service .service-summary.web-sec .service_title_flex div img {
  width: 110px;
}

#service .service-summary.web-sec.lp-sec .service_title_flex {
  max-width: 420px;
}

#service .service-summary.system-sec .service_title_flex .page-title {
	transform: translateX(-40px);
}

#service .service-summary.flayer-sec .service-summary_title {
	max-width: 810px;
}

#service .service-summary.flayer-sec .service_title_flex div img {
  width: 150px;
}

#service .service-summary.flayer-sec .service-summary_illust {
  justify-content: flex-end;
}

#service .service-summary.illust-sec .service-summary_title .service_title_flex{
	max-width: 540px;
}

#service .service-summary.illust-sec .service_title_flex div img{
	width: 100px;
}

#service .service-summary.hojyokin-sec .service_title_flex .service-summary_illust{
	width: 30%;
}

#service .service-summary.hojyokin-sec .service_title_flex div img {
  width: 55%;
}

#service .service-summary .description{
	max-width: 100%;
}

#service .service-summary .service-summary_title .service_title_flex .page-title{
	line-height: 1.2;
}

@media screen and (max-width: 768px){
	#service .service-summary .service-summary_title .service_title_flex {
    flex-wrap: nowrap;
    align-items: center;
  }
	#service .service-summary .service-summary_title .service_title_flex .page-title{
		font-size: 3rem;
		width: 75%;
		line-height: 1.2;
	}
	#service .service-summary_illust{
		width: 15%;
	}
	#service .service-summary .service-summary_title .service_title_flex{
		gap: 20px;
		width: 350px;
		max-width: 100%;
	}
	#service .service-summary .service-summary_title .service_title_flex div img {
		width: 100%;
	}
	#service .service-summary.system-sec .service-summary_title .service_title_flex{
		width: 380px;
	}
	#service .service-summary.system-sec .service_title_flex .service-summary_illust{
		width: 30%;
	}
	#service .service-summary.system-sec .service_title_flex .page-title {
		transform: translateX(-35px);
	}
	#service .service-summary.flayer-sec .service-summary_title .service_title_flex{
		gap: 10px;
	}
	#service .service-summary.flayer-sec .service-summary_title .service-summary_illust {
		width: 20%;
	}
	#service .service-summary.flayer-sec .service-summary_title .service_title_flex .page-title {
		font-size: 2.7rem;
	}
	#service .service-summary.illust-sec .service-summary_title .service_title_flex{
		width: 310px;
		gap: 5px;
	}
	#service .service-summary.hojyokin-sec .service-summary_title .service_title_flex{
		gap: 35px;
		width: 310px;
	}
	#service .service-summary.hojyokin-sec .service_title_flex .service-summary_illust{
		width: 20%;
	}
	#service .service-summary.hojyokin-sec .service_title_flex div img {
		width: 100%;
	}
	#service .service-summary.web-sec.lp-sec .service-summary_title .service_title_flex .page-title {
    width: 40%;
	}
}
/* 2025.11.27追記　ここまで */



/*== 線の上を別の線が伸びる */
.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: 500px) {
	.news_bg {
		background-size: 75%;
	}
}

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

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

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

.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: 0;
}

.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;
	display: none;
}

.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 .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_column .news_list li {
	margin-bottom: 2em;
}

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

.news_column .news_list li.information_empty {
	width: 100%;
	text-align: center;
}

.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-btn-wrap .swiper-button-prev,
.interview-btn-wrap .swiper-button-next {
	background-color: #fff;
	border-radius: 50%;
  padding: 16px 24px;
	position: static;
	margin-top: 0;
}

.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;
		position: relative;
}

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

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

.interview .interview_title_flex h2{
	margin-left: 0;
}

.viewall {
    margin-right: 32px
}

.interview_list .overmask_list .overmask_caption {
	width: 55%;
}

.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;
	position: relative;
	justify-content: flex-end;
	padding-right: 150px;
}

.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-company-name {
	font-size: 13px;
	font-weight: 700;
	color: #00327d;
	padding-bottom: 3px;
	border-bottom: 1px solid;
	margin: 0 0 4px;
	line-height: 1.4;
	display: inline-block;
}

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

.interview-sub-info {
	width: 100%;
	margin-top: 0;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	gap: 0;
}

/* 制作物（青バッジ） - 全幅 */
.interview-category {
	flex: 0 0 100%;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 6px;
	flex-wrap: wrap;
}

.interview-category .category-title {
	display: inline-block;
	font-size: 12px;
	color: #00327d;
	font-weight: bold;
	white-space: nowrap;
	margin: 0;
	flex-shrink: 0;
}

.interview-category .category-title::after {
	content: "：";
}

.interview-category .category-text {
	margin: 0;
	line-height: 1.6;
}

.interview-category .category-text a {
	display: inline-block;
	font-size: 11px;
	color: #fff;
	background: #00327d;
	padding: 4px 10px;
	border-radius: 3px;
	text-decoration: none;
	margin-right: 5px;
	margin-bottom: 3px;
	transition: 0.3s ease;
}

.interview-category .category-text a:hover {
	opacity: 0.7;
}

#link_interview .interview-category .category-text a {
	color: #00327d;
	background: #fff;
}

/* 目的・業種・技術（黄色バッジ・横並び） */
.interview-tag {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-top: 0;
	margin-right: 4px;
	margin-bottom: 4px;
	flex-wrap: wrap;
}

.interview-tag .tag-title {
	display: none;
}

.interview-tag .tag-text {
	margin: 0;
	line-height: 1.6;
}

.tag-text a {
	display: inline-block;
	font-size: 11px;
	border-radius: 10px;
	background-color: #FFD700;
	color: #333;
	text-decoration: none;
	padding: 2px 10px;
	margin-right: 3px;
	margin-bottom: 3px;
	transition: 0.3s ease;
}

#link_interview .tag-text a {
	background-color: transparent;
	padding: 0;
	margin-right: 10px;
}

.tag-text a::before {
	content: "#";
}

.tag-text a:hover {
	opacity: 0.7;
}

.case_title_div{
	display:block;
	text-align:left;
	margin-top: 0;
	padding: 12px 12px 0;
}

.interview_column {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}

.interview_list_wrap {
  width: 70%;
}

.interview_column .interview_list li {
  padding: 20px 12px;
  margin-bottom: 2rem;
  width: calc(50% - 12px);
  background-color: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

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

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

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

.category_list_box.interview_list_box{
  margin-bottom: 20px;
}

.interview_sidebar .category_list_box.interview_list_box:last-of-type{
  margin-bottom: 50px;
}

.interview_column .interview_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
	justify-content: space-between;
	gap: 10px 0;
	max-width: 100%;
	margin: 0 auto;
}

.interview_column .interview_list img{
	object-fit: cover;
  display: block;
}

.interview_column .interview_list .overmask_list img{
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	margin: 0 auto;
}

@media screen and (max-width: 1024px){
	.interview_column .interview_list li {
		width: 100%;
	}
	.interview_column .interview_list{
		display: block;
	}
}

.interview_title a{
	transition: 0.3s ease;
}

.interview_title a:link{
	color: #00327D;
}

.interview_title a:hover{
	 opacity: 0.7;
}

@media screen and (max-width: 767px){
	.interview_column .interview_list li {
    width: 100%;
    padding: 25px 10px;
  }
	.interview_column .interview_list{
		display: block;
	}
}

@media screen and (max-width: 767px) {
	.interview_column {
		display: block;
	}
	.interview_list_wrap{
		width: 100%;
	}
	.interview_sidebar {
		width: 100%;
		max-width: 100%;
		margin-top: 80px;
		position: static;
	}
}

/* インタビューページ追加20260316~ */
#news_single #news_category a {
	color: #fff;
	text-decoration: none;
	display: inline-block;
	line-height: 1;
	text-align: center;
	padding: 10px 20px;
	margin-right: 10px;
	background: #00327d;
	transition: 0.3s ease;
}
.meta_info_flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
#news_category {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.post-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.category-link, .post-tags li a {
  white-space: nowrap;
  display: inline-block;
  padding: 4px 8px;
	transition: 0.3s ease;
}

#news_single #news_category a:hover,
#news_single .post-tags li a:hover{
	opacity: 0.7;
}

.archive_current_title {
	font-size: 20px;
	font-weight: 900;
	margin-bottom: 40px;
	text-align: center;
	color: #fff;
	background-color: #00327D;
	border-radius: 80px;
}

@media screen and (max-width: 767px){
	#news_category{
		margin-top: 10px;
	}
	.post-tags {
		display: block;
		margin-top: 10px;
	}
}


/* インタビュー記事スライド */
#link_interview {
  width: auto;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw + 17px);
  overflow: clip;
	margin-bottom: 60px;
}

#link_interview .interview_wrap{
	padding-left: max(24px, calc(50vw - 616px));
	padding-right: 0;
}

#link_interview .interview_flex{
  display: flex;
  align-items: flex-start;
	padding-top: 40px;
	gap: 40px;
}

#link_interview .interview_illust {
  flex-shrink: 0;
  width: 380px;
  align-self: flex-start;
  transition: width 0.3s ease;
}

#link_interview .interview_illust img {
  width: 100%;
  display: block;
  margin: 0;
}

#link_interview .interview-slide{
  flex: 1;
  min-width: 0;
  max-width: 1280px;
  margin: 0;
  overflow: hidden;
}

#link_interview .interview_title a{
	font-size: 16px;
}

#link_interview .category-text a,
#link_interview .tag-text a{
	font-size: 12px;
}

#link_interview .interview-slide .overmask_list{
	margin-bottom: 20px;
}

#link_interview .interview_list{
  flex-wrap: nowrap;
}

#link_interview .interview-btn-wrap {
	position: static;
}

#link_interview .interview-slide-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 230px;
	width: auto;
	height: auto;
	display: flex;
	align-items: center;
	gap: 16px;
}

#link_interview .interview-slide-btn .swiper-button-prev,
#link_interview .interview-slide-btn .swiper-button-next {
	left: auto;
	right: auto;
}

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

#link_interview .interview_list .swiper-slide {
	margin-bottom: 5rem;
	overflow: hidden;
	align-items: start;
}

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

#link_interview .interview_list .swiper-slide a img {
	text-align: center;
	margin: auto;
	display: block;
	object-fit: cover;
}

#link_interview .company_info_line1 {
	font-size: 13px;
	font-weight: 500;
	color: #fff;
	margin: 4px 0;
	line-height: 1.4;
}

@media screen and (max-width: 1200px){
	#link_interview .interview_illust {
		width: 300px;
	}
}

@media screen and (max-width: 1024px){
	#link_interview .interview-slide .swiper-wrapper{
		margin-left: 0;
	}
	#link_interview .interview_illust {
		width: 220px;
	}
	#link_interview .interview_flex{
		gap: 15px;
	}
	#link_interview .interview_wrap{
		padding-left: 12px;
	}
}

@media screen and (min-width: 520px) and (max-width: 768px){
	#link_interview .interview_title {
		width: calc(100% - 40px);
		max-width: 70%;
	}
	#link_interview .interview-sub-info {
		width: calc(100% - 40px);
		max-width: 70%;
	}
}

@media screen and (max-width: 767px){
	#link_interview .interview_flex{
		display: block;
	}
	#link_interview .interview_illust {
		margin: 0 auto 40px;
		width: 280px;
	}
	#link_interview .interview-slide .swiper-slide{
		width: 100% !important;
	}
	#link_interview .interview_title{
		width: calc(100% - 40px);
	}
	#link_interview .interview-sub-info {
		width: calc(100% - 40px);
	}
	#link_interview .interview_list .swiper-slide {
		align-items: center;
	}
}

@media screen and (max-width: 768px){
	#link_interview .company_info_line1 {
		margin-bottom: 20px;
	}
}



/* インタビュー詳細記事 */
.meta_info_flex{
  display: flex;
  gap: 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 {
  display: inline-block;
  font-size: 12px;
  margin-right: 5px;
  border-radius: 20px;
}

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

.case_page-title {
	font-weight: bold;
	font-size: clamp(32px, 1.56vw + 20px, 40px);
	margin-bottom: 20px;
}

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

#news_single .case-header-info h1{
	margin-bottom: 0;
	padding-bottom: 12px;
	line-height: 1.5;
	font-size: clamp(20px, 1.5vw + 15px, 24px) !important;
}

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

.case-header-info .case-company-name {
	font-size: clamp(16px, 1.5vw + 15px, 19px);
  font-weight: bold;
  border-left: 6px solid #00327d;
	margin-bottom: 8px;
  padding-left: 8px;
  line-height: 1.3;
}

.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,
.tag-text a {
	color: #00327d;
}

.overview_wrap.interview_overview_wrap{
  padding: 15px 0 0 0;
}

.overview_wrap.interview_overview_wrap .case-job-title{
	font-size: 14px;
}

.overview_wrap.interview_overview_wrap .case-person-name{
	font-size: 18px;
	font-weight: bold;
}

.case-header-info-text .interview_overview_wrap a{
	color: #00327D;
	font-weight: bold;
	transition: 0.3s ease;
}

.case-header-info-text .interview_overview_wrap a:hover{
	opacity: 0.8;
}

#news_single .interview_overview_wrap #news_category{
	gap: 8px;
	margin-top: 12px;
	margin-bottom: 5px;
}

#news_single .interview_overview_wrap #news_category a {
	padding: 5px 14px 7px 14px;
	font-size: 12px;
	margin-right: 0px;
	border-radius: 3px;
	margin-bottom: 0px;
}

#news_single .interview_overview_wrap .post-tags-container{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

#news_single .interview_overview_wrap .post-tags-container a{
	padding: 4px 10px;
	font-size: 11px;
	border-radius: 10px;
	background-color: #FFD700;
	color: #333;
	text-decoration: none;
}

#news_single .case-header-info-text h1{
  margin-top: 0;
}

#news_single #news_text.case_text{
  margin-bottom: 30px;
}
#news_single #news_text_inner.case_text_inner{
  max-width: 1024px;
  padding: 60px 24px 40px 24px;
}

/* インタビュー詳細記事の見出し */
#news_single #news_text_inner.case_text_inner h2,
#news_single #news_text_inner.case_text_inner h3,
#news_single #news_text_inner.case_text_inner h4,
#news_single #news_text_inner.case_text_inner h5{
	color: #1f2f45;
	line-height: 1.5;
	letter-spacing: 0.02em;
}

#news_single #news_text_inner.case_text_inner h2{
	display: block;
	font-size: clamp(1.8rem, 1.2rem + 1.1vw, 2.3rem);
	font-weight: 700;
	margin: 64px 0 24px;
	padding: 0.6em 0 0.6em 0.8em;
	border-left: 4px solid #ffcd00;
	background-color: #00327d;
	color: #fff;
}

#news_single #news_text_inner.case_text_inner h2:first-child{
	margin-top: 0;
}

#news_single #news_text_inner.case_text_inner h2 + p,
#news_single #news_text_inner.case_text_inner h2 + div,
#news_single #news_text_inner.case_text_inner h2 + iframe,
#news_single #news_text_inner.case_text_inner h2 + figure{
	margin-top: 0;
}

#news_single #news_text_inner.case_text_inner h3{
	font-size: clamp(1.7rem, 1.4rem + 0.6vw, 2.0rem);
	font-weight: 700;
	margin: 48px 0 18px;
	padding: 0 0 0.5em 0;
	border-bottom: 2px solid #00327d;
	position: relative;
}

#news_single #news_text_inner.case_text_inner h3::after{
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 3.5em;
	height: 2px;
	background: #ffcd00;
}

#news_single #news_text_inner.case_text_inner h4{
	font-size: clamp(1.12rem, 1rem + 0.35vw, 1.28rem);
	font-weight: 700;
	margin: 36px 0 14px;
	padding-left: 0.9em;
	position: relative;
}

#news_single #news_text_inner.case_text_inner h4::before{
	content: "";
	position: absolute;
	top: 0.45em;
	left: 0;
	width: 0.45em;
	height: 0.45em;
	border-radius: 50%;
	background-color: #ffcd00;
}

#news_single #news_text_inner.case_text_inner h5{
	font-size: 1rem;
	font-weight: 700;
	margin: 24px 0 12px;
	padding-left: 1em;
	border-left: 3px solid #00327d;
	color: #1f2f45;
}

/* インタビュー詳細記事：回答者の発言エリア */
#news_single #news_text_inner.case_text_inner .interviewee_talk{
	position: relative;
	margin: 8px 0 28px;
	padding: 22px 24px 22px 28px;
	background-color: rgba(0, 50, 125, 0.04);
	border-radius: 0 4px 4px 0;
}

#news_single #news_text_inner.case_text_inner .interviewee_talk p{
	margin-top: 0;
	margin-bottom: 1em;
	line-height: 1.85;
	color: #1f2f45;
}

#news_single #news_text_inner.case_text_inner .interviewee_talk p:last-child{
	margin-bottom: 0;
}

#news_single #news_text.case_text .case_list_area{
	--case-label-width: 6.5em;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 28px;
	margin: 0 0 40px;
	list-style: none;
}

#news_single #news_text.case_text .case_list_area li{
	position: relative;
	display: grid;
	grid-template-columns: var(--case-label-width) minmax(0, 1fr);
	align-items: baseline;
	column-gap: 20px;
	font-size: 14px;
	line-height: 1.7;
	margin-top: 0;
	padding: 0 0 5px;
	border-bottom: 1px dashed #c9d7ea;
}

#news_single #news_text.case_text .case_list_area li::before{
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: var(--case-label-width);
	height: 1px;
	background-color: #00327d;
}

#news_single #news_text.case_text .case_list_area li strong{
	display: block;
	color: #00327d;
	font-size: 14px;
	letter-spacing: 0.08em;
	line-height: 1.7;
}

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

#news_single #news_text .speaker-sec .wp-block-group__inner-container .speaker_name{
	margin-bottom: 5px;
}

#news_single #news_text.case_text li{
	padding-left: 0;
}

#news_single #news_text.case_text .summary-sec{
	margin-bottom: 40px;
	padding: 0;
}

#news_single #news_text.case_text .summary-sec > .wp-block-group__inner-container{
	display: flex;
	flex-direction: column;
	gap: 8px;
}

#news_single #news_text.case_text .summary-sec_title{
	display: block;
	margin: 0;
	padding: 0.5em 0.9em 0.45em;
	font-size: 0.8em;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1;
	color: #fff;
	background-color: #00327d;
	border-radius: 0;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}

#news_single #news_text.case_text .summary-sec_title::before{
	content: none;
}

#news_single #news_text.case_text .summary-sec_title::after{
	content: none;
}

#news_single #news_text.case_text .summary-sec_list{
	margin: 0;
}

#news_single #news_text.case_text .summary-sec_list > .wp-block-group__inner-container{
	margin: 0;
}

#news_single #news_text.case_text .summary-sec_list p{
	position: relative;
	padding: 8px 0 8px 1.4em;
	line-height: 1.6;
	margin-top: 0;
	margin-bottom: 0;
	font-size: 0.95em;
}

#news_single #news_text.case_text .summary-sec_list p::before{
	content: "";
	position: absolute;
	left: 0;
	top: 1.1em;
	width: 6px;
	height: 6px;
	background-color: #ffcd00;
	border-radius: 1px;
}

@media screen and (max-width: 767px){
	#news_single #news_text.case_text .summary-sec{
		padding: 0;
	}

	#news_single #news_text.case_text .summary-sec > .wp-block-group__inner-container{
		gap: 10px;
	}

	#news_single #news_text.case_text .summary-sec_title{
		font-size: 0.8em;
	}

	#news_single #news_text.case_text .summary-sec_list p{
		padding: 6px 0 6px 1.25em;
	}
}

#news_single #news_text.case_text .summary-sec strong{
	color: #00327d;
}

#news_single #news_text.case_text .list_typeA{
	margin-bottom: 32px;
}

#news_single #news_text.case_text .list_typeA li{
	padding-bottom: 10px;
	border-bottom: 1px solid #00327d;
}

#news_single #news_text.case_text .case_cta a{
	text-decoration: none;
	transition: 0.3s ease;
}

#news_single #news_text.case_text .case_cta a:hover{
	opacity: 0.8;
}

#news_single #news_text.case_text hr{
	border-top: 1px solid #cccccc;
}

.border_title {
  display: flex;
  align-items: center;
  padding: 0 1em;
}

.border_title::before,
.border_title::after {
  content: "";
  height: 1px;
  background-color: #AAAAAA;
  flex-grow: 1;
}

.border_title::before {
  margin-right: 1em;
}

.border_title::after {
  margin-left: 1em;
}

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

.cases_related-articles_card_item {
	box-sizing: border-box;
	background-color: #ffffff;
	border-radius: 8px;
	position: relative;
	transition: box-shadow 0.3s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	transition: 0.3s ease;
	cursor: pointer;
}

.cases_related-articles_card_item:hover {
	box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
	transform: translateY(-2px);
}

.cases_related-articles_card_item img {
	border-radius: 8px 8px 0 0;
	width: 100%;
	height: 180px;
	object-fit: cover;
}
.cases_related-articles_card_item figure{
	margin-bottom: 0 !important;
}

.cases_related-articles_card_item .card-content {
	padding: 15px 15px 20px 15px;
}

#news_single #news_text .cases_related-articles_card_item .card-title {
	font-size: 16px;
	font-weight: bold;
	margin-top: 0;
	margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
  #news_single #news_text.case_text{
    padding: 0;
  }

	#link_interview .interview-btn-wrap{
		flex-direction: column;
		padding-right: 0;
	}

	#link_interview .interview-slide-btn {
		position: static;
		padding-top: 20px;
		transform: translateY(0);
	}

	.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){
	#news_single .wp-block-table {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		position: relative;
		padding-top: 30px;
		padding-bottom: 10px
	}
	#news_single .wp-block-table table {
		display: block;
		width: 100%;
		white-space: nowrap;
	}
	#news_single .wp-block-table::before {
		content: "→ 表が切れている場合スクロールできます";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		font-size: 12px;
		font-weight: bold;
		color: #555;
		background-color: #f0f0f0;
		padding: 2px 8px;
		border-radius: 4px;
		z-index: 10;
	}
	.interview{
		margin-bottom: 8rem;
	}
  .meta_info_flex{
    display: block;
  }
	.swiper-slide {
		width: 65% !important;
	}
  .case-header-info{
    padding: 0;
  }
  #news_single #news_text_inner.case_text_inner{
    padding: 40px 24px 30px 24px;
  }
	#news_single #news_text_inner.case_text_inner h2{
		margin: 48px 0 20px;
		padding: 0.75em 0.85em;
	}
	#news_single #news_text_inner.case_text_inner h3{
		margin: 36px 0 16px;
	}
	#news_single #news_text_inner.case_text_inner h4{
		margin: 28px 0 12px;
	}
	#news_single #news_text_inner.case_text_inner .interviewee_talk{
		margin: 6px 0 20px;
		padding: 18px 18px 18px 22px;
	}
	#news_single #news_text.case_text .case_list_area{
		gap: 16px 20px;
		padding: 0px;
	}
}

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

@media screen and (max-width: 767px){
	#news_single #news_text.case_text .case_list_area{
		--case-label-width: 7.5em;
		grid-template-columns: 1fr;
		padding: 0px;
		border-radius: 12px;
	}

	#news_single #news_text.case_text .case_list_area li{
		grid-template-columns: 1fr;
		row-gap: 4px;
		padding-bottom: 8px;
	}

	#news_single #news_text.case_text .case_list_area li::before{
		width: 5.5em;
	}

	#news_single #news_text.case_text .case_list_area li strong::after{
		content: none;
	}
}

/*  インタビュー詳細記事目次 */
.toc-box {
  background-color: rgba(0, 50, 125, 0.04);
  border: 1px solid #00327D;
  padding: 20px;
  margin-bottom: 40px;
	border-radius: 5px;
}

#toc_list {
  list-style: none;
  padding: 0;
}

#news_single #news_text #toc_container ul li::before{
	content: none;
}

#news_single #news_text .toc-title{
	color: #00327D;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 10px;
}

#news_single #news_text .toc-h2 {
	color: #00327D;
  font-weight: bold;
  margin-top: 10px;
	padding-bottom: 10px;
	list-style-type: disc;
	list-style-position: inside;
}

#news_single #news_text .toc-h3 {
  margin-left: 20px;
  margin-top: 5px;
  font-size: 0.9em;
  list-style-type: disclosure-closed;
  list-style-position: inside;
}

#news_single #news_text .toc-item a {
  text-decoration: none;
  color: #333;
	transition: 0.3s ease;
	text-decoration: none;
}

#news_single #news_text .toc-item a:hover {
  color: #0066cc;
	text-decoration: none;
}


/*============お問い合わせと働く人=============*/
.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: 2rem
}

/* 見出し画像が無い一覧ページ（information）用のテキスト見出し */
.news_header.information_header {
	max-width: none;
	text-align: center;
	line-height: normal;
	color: #00327d;
}

.information_header .information_header_en {
	display: block;
	font-size: 1.5rem;
	letter-spacing: 0.3rem;
	margin-bottom: 0.5rem;
}

.information_header .information_header_kanji {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 4.7rem;
	letter-spacing: 1rem;
}

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

	.information_header .information_header_kanji {
		font-size: 3.4rem;
		letter-spacing: 0.6rem;
	}
}

@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: 2rem;
	}
	.news_list li:last-of-type{
		margin-bottom: 0;
		padding-bottom: 10px;
	}
	.news .news_list li:not(:first-child) {
		margin-top: -60px;
	}
	.news_wrap .news_list_wrap {
		margin-bottom: 5rem;
	}
}

.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: -3%;
	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 .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: 110px 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 > ol {
	position: static;
	margin-bottom: 40px;
	padding-left: 0;
}

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

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

#news_single #news_category a {
	color: #fff;
	text-decoration: none;
	display: inline-block;
    line-height: 1;
    text-align: center;
    padding: 10px 20px;
    margin-right: 10px;
    background: #00327d;
	margin-bottom: 16px;
}

#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.45;
	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: 10px;
	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: 40px;
		padding-left: 0;
		padding-right: 0;
	}

	#news_single .news_column {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	#news_single .news_column > div:first-child,
	#news_single #news_text {
		width: 100%;
		box-sizing: border-box;
	}

	#news_single .p-breadcrumb,
	#news_single #news_category,
	#news_single .news_meta_info,
	#news_single .news_sidebar {
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}
	
	#news_single h1 {
		font-size: 140%;
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}

	#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;
	}
}

/*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 > ol{
	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_mainbar {
	width: 70%;
}

.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_mainbar {
		width: 100%;
	}
	
	.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 .other_news_title {
	line-height: 1.8;
	text-align: left;
}

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

.information_other_title {
	max-width: 390px;
	white-space: nowrap;
}

/*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;
}

.other_news_list div.overmask_list img {
	height: 190px;
	width: 100%;
	object-fit: cover;
}
@media screen and (max-width:768px){
	.other_news_list div.overmask_list img {
		height: 200px;
	}
}

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

.overmask_list .overmask_caption {
	text-align: center;
	padding-top: 0%;
	color: #fff;
	line-height: 1.7;
	width: 60%;
	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;
	display: flex;
	align-items: center;
	justify-content: center;
}
.other_news_list .overmask_list{
	mask-image: none !important;
}


.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;
  }
}


/*サービスページ 2025.11.28追記
----------------------------*/
/* 関連する制作実績 */
.page-template-page-service .works-item {
  position: relative;
  overflow: hidden;
}

.page-template-page-service .works-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  gap: 30px; 
  list-style: none;
  padding: 0;
	margin-top: 40px;
}

.page-template-page-service .works-item {
  box-sizing: border-box; 
}


@media screen and (max-width: 768px) {
	.page-template-page-service .works-block{
		margin-top: 40px;
		margin-bottom: 60px;
	}
  .page-template-page-service .works-list {
    grid-template-columns: 1fr; 
    gap: 20px; 
  }
	.page-template-page-service .works-item-image-container{
		width: 70%;
		margin: 0 auto;
	}
}

.page-template-page-service .works-item .works-item-image-container a{
position: relative;
  width: 100%;
  height:auto;
  border-radius: 41% 59% 48% 52%/52% 50% 50% 48%;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.page-template-page-service .works-item .img-box {
  line-height: 0;
}

.page-template-page-service .works-item img {
	width: 100%;
  height: 100%;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}

.page-template-page-service .works-item .mask {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.4);
  transition: all 0.6s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  z-index: 1;
	padding: 0 42px;
}

.page-template-page-service .works-item .mask p {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  margin: 0;
  line-height: 1.5;
}

@media (hover: none) {
  .page-template-page-service .works-item .mask {
    opacity: 1;
    visibility: visible;
    background-color: rgba(0, 0, 0, 0.4);
  }
}


.page-template-page-service .works-item-body {
	padding-top: 20px;
}

.page-template-page-service .works-item-body .works-item-title {
	font-size: 16px;
	line-height: 1.4;
	margin-top: 10px;
	margin-bottom: 0
}

.page-template-page-service .works-item-body .works-item-title a {
	text-decoration: none;
	display: block;
	transition: 0.3s ease;
}

.page-template-page-service .works-item-body .works-item-title a:hover {
	color: #fff;
	opacity: 0.8;
}

.page-template-page-service .works-item-image-container a:hover .mask {
  opacity: 1;
  visibility: visible;
}

.page-template-page-service .works-item .mask {
  visibility: hidden; 
}



/* フロー 2026.01.14追加*/
.service-flow {
  padding: 100px 0;
}

#service .service-flow .sub-title{
	margin-bottom: 40px;
}

.service-flow__list {
  list-style: none;
  padding: 0;
  margin: 0;
  border-left: 1px solid #00327D;
}

.service-flow__item {
  position: relative;
  padding-bottom: 50px;
}

.service-flow__item:last-of-type{
	padding-bottom: 0;
}

.service-flow__block {
  position: relative;
  background: #fff;
  border-radius: 10px;
  margin-left: 5.8333333333vw;
}

.service-flow__block::before {
  content: "";
  position: absolute;
  top: 40px;
  left: -5.8333333333vw;
  width: 5.8333333333vw;
  height: 1px;
  background: #00327D;
}

.service-flow__block::after {
  content: "";
  position: absolute;
  top: 32px;
  left: -5.8333333333vw;
  width: 16px;
  height: 16px;
  background: #0327D1;
  border: 1px solid #00327D;
  border-radius: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

.service-flow__block-inner {
  display: flex;
  align-items: flex-start;
  padding: 24px 35px;
}

.service-flow__icon {
  width: 140px;
  flex-shrink: 0;
  margin-right: 30px;
}

.service-flow__icon img {
  width: 100%;
  height: auto;
}

.service-flow__content {
  flex: 1;
}

.service-flow__title {
	color: #00327D;
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 10px 0;
	line-height: 1.8;
	font-family: "Kotonode_700";
	letter-spacing: 0.2em;
}

.service-flow__title span{
	font-size: 40px;
	margin-right: 10px;
}

.service-flow__text {
  font-size: 14px;
  line-height: 1.8;
  color: #333;
  margin: 0;
	color: #00327D;
	font-weight: 500;
}

.service-flow__text li{
	margin-bottom: 15px;
}


@media (max-width: 768px) {
	.service-flow {
		padding: 30px 0;
	}
  .service-flow__container {
    padding-left: 30px;
  }
  .service-flow__block-inner {
    flex-direction: column;
    padding: 20px;
  }
  .service-flow__icon {
    width: 120px;
    margin: 0 auto;
  }
	#service .service-flow__title{
		text-align: center;
		font-size: 20px;
		margin-bottom: 10px;
	}
	.service-flow__title span{
		font-size: 24px;
		margin-right: 8px;
	}
  .service-flow__block {
    margin-left: 30px;
  }
  .service-flow__block::before {
    left: -30px;
    width: 30px;
  }
  .service-flow__block::after {
    left: -30px;
  }
}


/*============最新情報（カスタム投稿 information／inc/information.php）=============*/
.information {
	margin: 0 auto 14rem;
}

.information_wrap {
	padding: 0 20px;
}

/*== タブ ==*/
.information_tabs {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 1180px;
	margin: 6rem auto 0;
}

.information_tab {
	flex: 1 1 0;
	max-width: 260px;
	padding: 14px 20px;
	font-family: 'Kotonode_700';
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	line-height: 1.4;
	color: #00327d;
	background-color: #fff;
	border: 0;
	border-radius: 50px;
	cursor: pointer;
	transition: 0.15s ease-out;
	-webkit-appearance: none;
}

.information_tab::after {
	content: ">";
	margin-left: 0.6em;
	font-weight: bold;
}

.information_tab.is-active,
.information_tab:hover {
	color: #fff;
	background-color: #00327d;
}

/*== キャラクター／リスト ==*/
.information_flex {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 60px;
	max-width: 1180px;
	margin: 8rem auto 0;
}

.information_chara {
	width: 32%;
	flex-shrink: 0;
}

/* カテゴリー名は画像に含まれる。タブに合わせて1枚だけ表示する */
.information_chara_img {
	display: none;
	width: 321px;
	margin: 0 auto;
}

.information_chara_img.is-active {
	display: block;
}

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

.information_panels {
	flex: 1 1 auto;
	min-width: 0;
}

.information_panel {
	display: none;
}

.information_panel.is-active {
	display: block;
}

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

.information_list li {
	border-top: 1px solid #00327d;
}

.information_list li a {
	display: block;
	padding: 16px 0;
	text-decoration: none;
}

.information_date {
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #00327d;
}

.information_title {
	display: block;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.75;
	color: #00327d;
}

.information_list li a:hover .information_title {
	opacity: 0.7;
}

.information_empty {
	padding: 16px 0;
	font-size: 1.5rem;
	font-weight: 400;
	color: #00327d;
}

@media screen and (max-width: 1024px) {
	.information_tabs {
		gap: 14px;
	}

	.information_tab {
		flex: 1 1 45%;
		max-width: none;
		font-size: 1.5rem;
	}

	/* 2列レイアウトは維持したまま、キャラクター画像だけ縮小する */
	.information_flex {
		gap: 30px;
		margin-top: 6rem;
	}

	.information_chara {
		width: 160px;
	}

	.information_chara_img {
		width: 160px;
	}
}

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

	.information .info_ttl {
		font-size: 3.6rem;
		letter-spacing: 0.6rem;
	}

	.information_tab {
		padding: 12px 14px;
		font-size: 1.4rem;
	}

	/* スマホは1カラム（上: キャラクター / 下: リスト） */
	.information_flex {
		flex-direction: column;
		align-items: center;
		gap: 12px;
		margin-top: 4rem;
	}

	/* スマホ時はキャラクターを少し小さめにする */
	.information_chara {
		width: 120px;
	}

	.information_chara_img {
		width: 120px;
	}

	.information_panels {
		width: 100%;
	}

	.information_title {
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 414px) {
	.information {
		margin-bottom: 7rem;
	}

	.information .info_ttl {
		font-size: 3rem;
	}
}
