/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
@charset "utf-8";

/* header */
.page-header {
	margin-top: 0px;
	min-height: 400px;
	background-size: cover;
	background-position-y: bottom;
}
.page-header .page-header-title {
  font-size: min(3rem,8vw);
  font-weight: 600;
  text-align: center;
  color: #fff;
  filter: drop-shadow(1px 1px 6px #000000e3);
}
.page-header .page-header-subtext{
  font-size: min(2.5rem,5.5vw);
  font-weight: 600;
  filter: drop-shadow(1px 1px 6px #000000e3);
}
/* breadcrumb */
.breadcrumb{
	border: none;
}
.breadcrumb-list {
	text-align: left;
	font-size: .875rem;
	padding: 2.5em 0;
}
.breadcrumb-list li:after {
  content: "\003E";
}
.breadcrumb-list li a {
  text-decoration: none;
}
.breadcrumb-list li a .fas {
  display: none;
}
.breadcrumbs ul {
  padding-left: 0;
}


/* content */
.site-body{
	text-align: left;
	padding-bottom: 0;
}
.container {
	max-width: 1100px;
	--main-color: #0064ba;
}
:where(:not(.wp-block-table))>table :is(thead, tbody, tfoot, th, td) {
  border-color: transparent;
}
.entry-body h2,
.section-wrap h2,
.archive-header-title {
  position: relative;
  z-index: 0;
  text-align: left;
  font-size: 1.875rem;
  font-weight: bold;
  padding-left: 1.35em;
  margin-bottom: 1em;
}
.archive-header-title::before,
.entry-body h2::before {
	position: absolute;
	z-index: 0;
	display: inline-block;
	margin: auto;
	content: "";
	width: 0.91em;
	height: 0.25em;
	background: var(--main-color);
	inset: 0.65em auto auto 0;
}
.entry-body h3 {
	font-size: 1.75rem;
	font-weight: bold;
	color: var(--main-color);
	margin-bottom: 1em;
}
.entry-body h4 {
	font-size: 1.5rem;
	color: var(--main-color);
	border-bottom: 1px solid var(--main-color);
	font-weight: bold;
	padding-bottom: 0.5em;
	margin-bottom: 1em;
}
.entry-body h5 {
	font-size: 1.25rem;
	font-weight: 600;
}
.entry-body h6 {
	font-size: 1.125rem;
	font-weight: bold;
	color: var(--main-color);
}
#vk-mobile-nav-menu-btn {
  display: none;
}
.entry-body ul li {
  list-style-type: disc;
}
.entry-body a {
  color: #0368be;
  text-decoration: underline;
  text-underline-offset: 0.35em;
}
.entry-body a:hover {
  text-decoration: none;
}
.entry-body a:focus {
  text-decoration: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  outline: none;
}
.has-fixed-layout th,
.has-fixed-layout td {
  border-top: 1px solid #e9e9e9;
  border-bottom: 1px solid #e9e9e9;
  font-size: 1rem;
}
.has-fixed-layout th {
  font-weight: bold;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	display: inline-flex;
	
	min-width: 300px;
	width: fit-content;
	text-decoration: none !important;
	border: solid 1px #0064ba;
	border-radius: 0;
	color: #0064ba;
	background: #0064ba !important;
	font-size: 1.125rem;
	padding: 0.5em 4em 0.5em 2em;
	min-height: 70px;
	position: relative;
	z-index: 0;
	text-decoration: none;
	margin: 1em 0;
	transition: background .4s, color .4s, transform .4s;
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text)::after {
	content: "→";
	font-size: 1.125rem;
	display: block;
	color: #fff;
	width: 1em;
	height: 10px;
	position: absolute;
	z-index: 10;
	margin: auto;
	line-height: 1;
	transform: translateY(-5px);
	transition: color .4s;
	inset: 0 1em 0 auto;
}
@media (any-hover: hover) {
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover {
    background: #ffffff !important;
    color: #0368be !important;
    opacity: 1;
  }
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover:after {
    color: #0368be !important;
  }
}
.wp-block-vk-blocks-button.vk_button-align-block .vk_button_link,
.wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
  max-width: 100%;
}

@media screen and (max-width: 767px) {
	.page-header {
		min-height: 12em;
		margin-top: 0;
	}
	.page-header .page-header-title {
		font-size: 1.7rem;
	}
	.entry-body h2,
	.section-wrap h2,
	.archive-header-title {
	  font-size: 1.6rem;
	}
	.entry-body h3 {
		font-size: 1.5rem;
	}
	.entry-body h4 {
		font-size: 1.35rem;
	}
	.entry-body h5 {
		font-size: 1.25rem;
	}
	.entry-body h6 {
		font-size: 1.125rem;
	}
	table.has-fixed-layout,
	.has-fixed-layout tbody {
		border: none;
	}
	.has-fixed-layout th,
	.has-fixed-layout td {
		font-size: 1rem;
	}
	.has-fixed-layout.is-stacked-on-mobile tr:not(:first-of-type) th,
	.has-fixed-layout.is-stacked-on-mobile td {
		border-top-color: #fff;
	}
	.has-fixed-layout.is-stacked-on-mobile th,
	.has-fixed-layout.is-stacked-on-mobile td {
		padding: 0.75em 1em !important;
	}
	.has-fixed-layout th {
		font-weight: bold;
	}
	.wp-block-button {
		width: 100%;
	}
	 .wp-block-vk-blocks-button{
		 text-align: center;
	 }
  .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	max-width: 100%;
	width: auto;
	min-height: 3.5em;
	min-width: 280px;
	margin-inline: auto;
	}
  .wp-block-vk-blocks-button.vk_button-align-wide .vk_button_link {
    width: 100%;
  }
  .wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link {
    max-width: 100%;
  }
  .wp-block-button .wp-block-button__link:hover {
    transform: none;
  }
  .wp-block-vk-blocks-button .vk_button_link::after {
    width: 6px;
    height: 6px;
    border-width: 2px;
    right: 14px;
  }
}
.entry-body a img {
  transition: opacity .4s;
}
@media (any-hover: hover) {
  .entry-body a:hover img {
    opacity: 0.6;
  }
}
body.post-name-corporate .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr th,
body.post-name-corporate .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table>table tr td {
  border-color: #e9e9e9;
}
/* network
-------------------------------------------------------------------*/
.post-name-network iframe {
  margin: auto;
  display: block;
  max-width: 100%;
  max-height: 299px;
}
.post-name-network iframe.mo {
  max-height: 500px;
}
.post-name-network .wp-block-vk-blocks-button.btn_red .vk_button_link:not(.vk_button_link-type-text) {
  border: solid 1px #d63638;
  background: #e50011 !important;
}
@media (any-hover: hover) {
  .post-name-network .wp-block-vk-blocks-button.btn_red .vk_button_link:not(.vk_button_link-type-text):hover {
    color: #e50011 !important;
    background: #ffffff !important;
  }
}
@media screen and (max-width:767px) {
  .post-name-network iframe,
  .post-name-network iframe.mo {
    max-height: 220px;
  }
}
/* post-name-handling
-------------------------------------------------------------------*/
.post-name-handling .entry-body h2 {
  text-align: center;
  border: none;
  font-size: 2.15rem;
}
.post-name-handling .entry-body h3 {
  border-bottom-color: #afafaf;
  padding-bottom: 0.5em;
}
.post-name-handling .entry-body h3::before {
  width: 20%;
}
.post-name-handling .site-body .wp-block-button a {
  background-color: #fff;
  border: 1px solid #afafaf;
  border-radius: 50px;
  color: #282828;
  text-decoration: none;
}
@media (any-hover: hover) {
  .post-name-handling .site-body .wp-block-button a:hover {
    background: #afafaf;
    color: #ffffff;
  }
}
.maker_list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75em 2%;
  padding-inline: 0;
}
.maker_list li {
  width: 23%;
}
.maker_list li a {
  padding-left: 2em;
  position: relative;
  z-index: 0;
  color: #000;
  display: inline-block;
}
.maker_list li::marker {
  content: none;
}
.maker_list li a::before {
  position: absolute;
  z-index: 0;
  display: block;
  content: "";
  width: 20px;
  height: 2px;
  border-radius: 10px;
  background-color: #e50012;
  inset: 15px auto auto 0;
}
.maker_list li a::after {
  content: "";
  position: absolute;
  top: calc(50% - 1.5px);
  width: 10px;
  height: 2px;
  border-radius: 9999px;
  background-color: #e50012;
  transform: rotate(50deg);
  transform-origin: calc(100% - 1.5px) 50%;
  inset: 14px auto auto 10px;
}
.maker_list.e_list li a::before,
.maker_list.e_list li a::after{
  background-color: #004ea2;
}
.post-name-handling .inquiry_wrap {
  background: url(assets/img/maker/bg_maker.jpg) no-repeat;
  background-size: cover;
  background-position: 40%;
  position: relative;
  z-index: 0;
  padding: 5em 0 2em;
}
.post-name-handling .inquiry_wrap::before {
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.post-name-handling .inquiry_wrap .inquiry_title {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.8;
}
.post-name-handling .inquiry_wrap .common_btn a {
  max-width: 296px;
  margin-inline: auto;
  text-decoration: none;
}
@media (any-hover: hover) {
  .post-name-handling .inquiry_wrap .common_btn a:hover {
    color: #fff;
  }
}
.post-name-handling .col_area .lib_list {
  margin-top: 3em;
  margin-bottom: 5em;
  gap: 2em 1.3%;
}
.post-name-handling .col_area .lib_list li {
  width: 24%;
}
.post-name-handling .col_area .lib_list li a {
  text-decoration: none;
  color: #282828;
}
.post-name-handling .wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
  min-width: 200px;
  font-size: 0.875rem;
  padding: 10px 20px;
  min-height:46px;
  margin: 1em 0;
}
.post-name-handling .wp-block-vk-blocks-button.handling_btn01  .vk_button_link:not(.vk_button_link-type-text) {
  background-color: #e50012 !important;
  border: 1px solid #e50012;
}

.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) :after {
	display: none;
}
@media (any-hover: hover) {
	.post-name-handling .wp-block-vk-blocks-button.handling_btn01  .vk_button_link:not(.vk_button_link-type-text):hover {
	  background-color: #ffffff !important;
	  color: #e50012 !important;
	}
}
.post-name-handling .handling_btn01 a{
	background: #fff;
}
@media screen and (max-width:1200px) {
  .maker_list li {
    width: 32%;
  }
  .post-name-handling .col_area .lib_list {
    gap: 2em 2%;
  }
  .post-name-handling .col_area .lib_list li {
    width: 32%;
  }
  .post-name-handling .col_area .lib_list li:nth-child(4) {
    display: none;
  }
}
@media screen and (max-width:767px) {
  .post-name-handling .inquiry_wrap {
    padding: 3em 0 2em;
  }
  .post-name-handling .entry-body h2 {
    font-size: 1.7rem;
  }
  .post-name-handling .inquiry_wrap .inquiry_title {
    font-size: min(1.5rem, 4.8vw);
    line-height: 1.6;
  }
  .post-name-handling .inquiry_wrap .common_btn a {
    max-width: 250px;
  }
  .entry-body .maker_list li {
    width: 49%;
    list-style-type: none;
  }
  .post-name-handling .col_area .lib_list {
    margin-top: 1em;
    margin-bottom: 1em;
    gap: 2em;
  }
  .post-name-handling .col_area .lib_list li {
    width: 100%;
  }
  .post-name-handling .col_area .lib_list li .lib-cat {
    font-size: 0.9rem;
    padding: 0.3em 1em 0.3em;
  }
  .post-name-handling .col_area .lib_list li .lib-cat span::before {
    top: 4px;
  }
.maker_list li a::before {
  width: 18px;
  inset: 14px auto auto 4px;
}
.maker_list li a::after {
  width: 10px;
  inset: 13px auto auto 12px;
}
}
/* single-catalog
-------------------------------------------------------------------*/
.single-catalog .catalog-btn_box{
  display:flex;
  justify-content:center;
  align-content:center;
  gap:2em;
}
.single-catalog .catalog-btn_box .common_btn{
  width:245px;
  margin:0;
}
.single-catalog .catalog-btn_box .common_btn a:after{
  transform:rotate(90deg);
}
@media (any-hover: hover) {
  .single-catalog .catalog-btn_box .common_btn a:hover::after{
    right: 20px;
  }
}
.single-catalog .catalog_table table tr td,
.single-catalog .catalog_table table tr th {
  border-color: #fff !important;
  background-color: #fff !important;
  padding: 0.2em 0 !important;
}
.series-list{
  display:flex;
  justify-content:flex-start;
  align-items:flex-start;
  flex-wrap:wrap;
  gap:2em ;
  padding:0;
  margin:0;
}
.series-list .series-item{
  width:calc((100% - 10em) / 6);
  margin:0;
}
.series-list .series-item a{
  color:#282828;
  text-decoration:none;
}
.series-list .series-item_image img{
  transition:opacity .4s;
}
@media (any-hover: hover) {
  .series-list .series-item a:hover .series-item_image img{
    opacity: 0.7;
  }
}
.series-list .series-item_ttl{
  font-size:1rem;
  font-weight:bold;
  margin-top:0.5em;
  margin-bottom:0;
}
.series-list .series-item_num{
  font-size:0.875rem;
  margin:0;
}
@media screen and (max-width:767px) {
  .single-catalog .catalog_table {
    flex-direction: column-reverse;
  }
  .single-catalog .catalog_table table tr th {
    padding: 0 !important;
  }
  .single-catalog .catalog_table table tr td {
    padding-bottom: 0.75em !important;
  }
  .series-list{
    gap:1em;
  }
  .series-list .series-item{
    width:calc((100% - 1em) / 2);
  }
}
.single-catalog .page-header {
  min-height: 300px !important;
  min-height: unset !important;
}
.page-header .catalog-header_ttl {
  height: 300px !important;
  height: fit-content !important;
}
.single-catalog .catalog-btn_box{
	display: flex;
	justify-content: center;
	gap: 6em;
	margin-bottom: 3em;
}
.single-catalog .catalog-btn_box .common_btn a{
	max-width: unset;
	min-width: 280px;
}
@media screen and (max-width:767px) {
	.single-catalog .page-header {
	  min-height: 160px !important;
	}
	.page-header .catalog-header_ttl {
	  height: 160px !important;
	}
	.single-catalog .catalog-btn_box{
		margin-top: 3em;
		flex-direction: column;
		gap: 1.5em;
		align-items: center;
	}
	.single-catalog .catalog-btn_box .common_btn a{
		min-width: 240px;
	}
}
/* cdmo-services
-------------------------------------------------------------------*/
.cdmo-list .vk_gridColumn_item .wp-block-group{
	position: relative;
	z-index: 0;
	transition: 0.3s;
}
.cdmo-list .vk_gridColumn_item .wp-block-group::before{
	position: absolute;
	z-index: 1;
	display: block;
	content: "";
	width: 30px;
	height: 30px;
	background: #0064ba;
	background-size: contain;
	margin: auto;
	inset: auto 0 0 auto;
}
.cdmo-list .vk_gridColumn_item .wp-block-group::after{
	position: absolute;
	z-index: 2;
	display: block;
	color: #fff;
	content: "→";
	font-size: 0.9rem;
	width: 10px;
	height: 10px;
	margin: auto;
	inset: auto 0.75em 1em auto;
}
@media (any-hover: hover){
	.cdmo-list .vk_gridColumn_item:hover .wp-block-group{
		transform: translateY(3px);
	}
}
@media screen and (max-width: 1200px){
	.main-section {
		margin-bottom: 0rem
	}
	.outer.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
	.outer:is(.alignfull,.alignwide):where(:not(.is-layout-flex))>:is(div[class*=wp-container-],div[class*=wp-block-],div[class*=vk_],.alert,:where(:is(h1,h2,h3,h4,h5,h6))):where(:not(.alignfull,.alignwide,.wp-block-cover__background,.wp-block-cover__image-background,.wp-block-column,.vk_outer,.vk_slider_wrapper,.vk_gridcolcard_item,.swiper-wrapper,.swiper-pagination,.is-content-justification-right,.is-content-justification-left)){
		max-width: calc(100% - 60px) !important;
	}
}
@media screen and (max-width:767px){
	.cdmo_colmun_item{
		display: flex;
		padding: 2em 1em;
		gap: 1em;
	}
	.cdmo_colmun_item .cdmo_colmun_item_01{
		padding: 3em 1em 1em;
	}
	.cdmo_colmun_item .cdmo_colmun_item_02{
		text-align: left;
	}
}




/* contact
-------------------------------------------------------------------*/
.smf-form--letter .smf-text-control__control,
.smf-form .smf-textarea-control__control:active,.smf-form .smf-textarea-control__control:focus,.smf-form .smf-textarea-control__control:focus-within,.smf-form .smf-textarea-control__control[aria-selected=true] {
	font-weight: 500;
}
    
.post-name-contact .form-agree-area{
	font-size: 1.125rem;
	font-weight: 600;
	padding: 2em 0 0;
	text-align: center;
}
.post-name-contact .form-agree-area a{
	font-size: 1rem;
}
.post-name-contact .form-promotion-area{
	font-size: 1rem;
	font-weight: 600;
	padding: 2em 1em;
	background: #f8f8fa;
	text-align: center;
}
.smf-action .smf-button-control__control{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 300px;
	width: fit-content;
	text-decoration: none !important;
	border: solid 1px #0064ba;
	border-radius: 0;
	color: #ffffff;
	background: #0064ba !important;
	font-size: 1.125rem;
	font-weight: 600;
	padding: 0.5em 2em 0.5em 2em;
	min-height: 70px;
	position: relative;
	z-index: 0;
	text-decoration: none;
	margin: 1em 0;
	transition: background .4s, color .4s, transform .4s;
}
.smf-action .smf-button-control__control:after {
	content: "→";
	font-size: 1.125rem;
	display: block;
	color: #fff;
	width: 1em;
	height: 10px;
	position: absolute;
	z-index: 10;
	margin: auto;
	line-height: 1;
	transform: translateY(-5px);
	transition: color .4s;
	inset: 0 1em 0 auto;
}
.smf-action .smf-button-control__control[data-action="back"] {
	color: #0064ba;
	background: #ffffff !important;
}
.smf-action .smf-button-control__control[data-action="back"]:after {
	color: #0064ba;
}
@media (any-hover: hover) {
	.smf-action .smf-button-control__control:hover {
	    background: #ffffff !important;
	    color: #0368be !important;
	    opacity: 1;
	}
	.smf-action .smf-button-control__control:hover:after {    
		color: #0368be !important;
	}
	.smf-action .smf-button-control__control[data-action="back"]:hover {
		color: #ffffff!important;
		background: #0064ba !important;
	}
	.smf-action .smf-button-control__control[data-action="back"]:hover:after {
		color: #ffffff !important;
	}
}
@media screen and (max-width:767px) {
	.post-name-contact .form-agree-area .text_lead,
	.post-name-contact .form-promotion-area .text_lead{
		text-align: left;
	}
	.smf-action .smf-button-control+.smf-button-control{
		margin-left: 0;
	}
}

/* news
-------------------------------------------------------------------*/
.post-type-news .site-body{
	margin-bottom: 10em;
}
.post-type-news .widget-title{
	font-size : 1.5rem;
	font-weight: 500;
	display: block;
	margin-bottom: 0.5rem !important;
}
.post-type-news .sub-section aside{
	margin-bottom: 0;	
}
ul.localNavi{
  padding-left: 0;
}
ul.localNavi li{
  border-bottom: 1px solid #0064ba;
  list-style: none;
  margin-bottom: 0.5em;
}
ul.localNavi li a{
	display: block;
  font-size: 1rem;
  color: unset;
  padding: 0.5em 0 0.5em;
  border: none;
text-decoration: none;
}
@media (any-hover: hover){
  ul.localNavi li a:hover{
	  opacity: 0.7;
	  background: unset;
  }
}
@media screen and (max-width:767px) {
	.post-type-news .site-body{
		margin-bottom: 6em;
	}
}


.gl-icon-blank {
  vertical-align: top;
}

.gl-lang-list_btn {
  padding: 7px 8px 7px;
}

.gi-menu-globe {
  display: none;
}

@media only screen and (min-width: 1100px) {
  .gl-header.-horizontal .gl-header_globe {
    max-width: 330px;
  }
}

@media only screen and (max-width: 1099px) {
  .gi-menu-globe {
    display: block;
    padding: 14px 12px;
  }
}

@media only screen and (max-width: 1099px) {
  .gl-header_globe-btn {
    display: none;
    text-decoration: none;
  }

  .gl-header_globe-txt {
    display: block;
    font-size: 10px;
  }
}

@media only screen and (min-width: 1100px) {
  .gl-header.-horizontal .gl-header_globe {
    max-width: 365px;
    margin-left: 18px;
    padding-left: 18px;
    font-size: 0.9375rem;
    word-break: break-word;
  }
}

.gl-menu_sub-top.fn-menu_back-container,
.gi-menu-globe,
.gl-menu_sub-list {
  text-align: left;
}

main {
  margin-top: 0px;
}

@media screen and (max-width: 767px) {
  main {
    margin-top: 0px;
  }
}

.gl-footer {
  text-align: left;
}

.gl-footer-copyright {
  width: 250px;
}

.gl-footer-utility {
  width: 80%;
}

@media only screen and (max-width: 767px) {
  .gl-footer-nav-01_single_hdgButton::before {
    content: none;
  }

  .gl-footer-nav-01_single_hdgButton::after {
    content: none;
  }

  .gl-footer-utility {
    width: 100%;
  }
}