/*フォント適用（デフォルトでは見出し系とグローバルナビ（サブメニュー除く）に明朝、その他にゴシックを当ててます）*/
body{
	font-family: sans-serif;
}
/*h1 , h2 , h3 , h4 , h5 , h6 , b , strong {
	font-family: "FP-ヒラギノ角ゴ ProN W6",sans-serif !important;
}

.smb-section__title ,  .p-global-nav a:not(.p-global-nav .c-navbar__submenu a){
	font-family: "FP-ヒラギノ角ゴ ProN W6",sans-serif !important;
}*/


/*ヘッダーメニュー余白なくしてベタ付け*/
header.l-header .p-global-nav .c-navbar__item a:not(header.l-header .c-navbar__submenu a){
	color:#fff;
	padding-top:0;
	padding-bottom: 0;
}
header.l-header .p-global-nav .c-navbar__item:last-child a{
	padding: 0;
}
header.l-header .p-global-nav .c-navbar__item:nth-last-child(2) a {
		padding: 0;
}
    .l-header .h_cta_i {
        max-width: 115px;
    }

li.c-meta__item.c-meta__item--author {
    display: none !important;
}

@media screen and (min-width: 1024px){
	header.l-header .l-header__content .c-fluid-container{
		padding-right: 0;
	}
}
@media (min-width: 64em) {
    .c-site-branding__title .custom-logo {
        width: 260px !important;
    }
}
a.editorskit-block-link {
    margin-top: 0 !important;
}

/*固定ページ見出し*/

h3:not(.home h3){
	border-bottom:none !important;
	margin-bottom: 20px !important;
}
h3:not(.home h3 ,.l-footer-widget-area h3 ,h3.no_deco ,h3.smb-section__title.smb-section-side-heading__title ,.accordion-section-title){
    border-left: 4px solid #167520;
    padding: 0px 20px 0px 20px;
}

/*ページヘッダーの高さ調整、スクロール背景など*/
@media screen and (min-width: 1024px){
	    [data-scrolled=true] .l-header--sticky-overlay-colored-lg {
        background-color: transparent !important;
		box-shadow:none !important;
	}
[data-scrolled=true] .l-header--sticky-overlay-colored-lg {
       background: linear-gradient(rgb(12 59 76 / 60%), rgba(0, 0, 0, 0));
    }
	nav.p-global-nav.p-global-nav--hover-text-color.p-global-nav--current-same-hover-effect {
    color: #fff !important;
}
	h1.c-page-header__title {
    margin-top: 3vw;
}
	.c-page-header[data-has-image=true]{
		max-height:260px;
	}
}
@media screen and (max-width: 1023px){
	.c-site-branding__title .custom-logo {
    width: 190px !important;
}
	.c-page-header[data-has-image=true]{
		max-height:200px;
	}
	.c-page-header h1{
		margin-top:5vh;
	}
}

@media screen and (max-width: 639px){
	.home .sp_br{
		display:none;
	}
}

/*グローバルナビのフォントサイズ可変化　 ※狭めのPC幅でメニューが詰まる件の対策になります。ブレイクポイントやテキストサイズはサイトに合わせて変更してください。
可変化したタイミングでグローバルナビのデフォルトのフォントサイズ（アプデで変わるかも）を超えないように設定してます。*/
@media screen and (min-width: 1024px) and (max-width: 1200px){
	header.l-header .p-global-nav .c-navbar__item a:not(header.l-header .c-navbar__submenu a) {
		font-size: min(1.1vw, 14.2222px);
	}
}

/*ハンバーガーボタン調整用*/
.c-hamburger-btn .c-hamburger-btn__bar{
	height:2px;
	background-color:#ccc !important;
}
.c-hamburger-btn__bar:nth-of-type(2){
	height:2.5px;
}
.c-hamburger-btn[aria-expanded=true]>.c-hamburger-btn__bars>.c-hamburger-btn__bar:nth-of-type(2){
	background-color:initial !important;
}
.c-hamburger-btn__label{
	color:#ccc;
}


/* メニュー全体にデフォルトの背景色を設定 */
.p-footer-sticky-nav {
    background-color: #212836 !important;
}

/* メニューの最初の数アイテムに異なる背景色を設定 */
.p-footer-sticky-nav li:nth-child(2) {
    background-color: #DD000D !important;
}


/*フッターメニュー用デフォルトスタイル*/
#footer_section{
	color:#fff;
	border-radius:14px !important;
}
.l-footer-widget-area > .c-container {
    max-width: 1600px;
}

#block-10 {
    width: 100%;
    max-width: 1280px !important;
    margin: 0 auto !important;
}
@media screen and (min-width: 1024px){
	footer.l-footer .widget_nav_menu ul{
		display: grid;
		grid-template-columns: 1fr;
		row-gap: 10px;
	}
	footer.l-footer .widget_nav_menu li{
		margin-top: 0;
	}
}
/*フッターsns用デフォルトスタイル*/
a:where(:not(.wp-element-button)) {
    text-decoration: none !important;
}
footer.l-footer .f_sns{
	max-width: 350px;
	margin-left:0;
}
/*フッターサイド余白消し*/
footer.l-footer .c-fluid-container{
	padding-left:0;
	padding-right:0;
}

/*フッター上下パディング*/
footer.l-footer .l-footer-widget-area{
	padding-bottom:0;
}

/*フッターセクションごとにできるマージンボトム消し*/
footer.l-footer .l-footer-widget-area__item.c-row__col{
	margin-bottom:0;
}


/*コピーライト用デフォルトスタイル*/
footer.l-footer .c-copyright{
	background-color:#fff;
	color:#000;
	margin-top: 47px;
	margin-bottom: 47px;
}
@media screen and (max-width: 1023px){
	footer.l-footer .c-copyright{
		font-size:12px !important;
		margin-top:0 !important;
		margin-bottom:20px !important;
	}
}

/*トップコンテンツ上下余白消し*/
.home .l-contents .c-section{
	padding-top:0;
	padding-bottom:0;
}
/*コンテンツの上下余白消し（投稿と投稿の一覧ページを除く）*/
.l-contents .l-contents__inner:not(.archive .l-contents .l-contents__inner , .single .l-contents .l-contents__inner){
	padding-top: 0;
	padding-bottom: 0;
}
/*投稿のコメント機能トラックバック機能削除*/
.p-comments , .p-trackbacks{
	display:none;
}
@media (min-width:1367px){

.bus_box .smb-box__body.is-layout-constrained.wp-block-box-is-layout-constrained {
	margin: 10px 35px 20px 35px;
}
}

/*スマホ時*/
/*見出しサイズ統一*/
@media screen and (max-width: 800px){
	.wp-block-snow-monkey-blocks-items-item-free.c-row__col {
    padding-left: 5px !important;
    padding-right: 5px !important;
}
	.wp-block-column.iso.is-layout-flow.wp-block-column-is-layout-flow img {
    max-width: 45%;
}
	img.h_cta_i {
    display: none;
}
	.wp-block-snow-monkey-blocks-section-break-the-grid.smb-section.smb-section-break-the-grid.smb-section-break-the-grid--right .c-container {
    padding: 0;
}
	

	/*.smb-section__title , h2.wp-block-heading , .smb-media-text__title , .smb-media-text__title span{
		font-size:27px !important;
	}*/
	.top_pro_me .wp-block-columns{
		gap:0;
	}
	.c-page-header__title {
    margin-top: 7vw !important;
	font-size: 20px;
}
}

/*小さめモニタ*/
@media screen and (min-width: 1024px) and (max-width: 1366px){
	    .top_left_b {
        left: 1vw !important;
    }
	#busness_section {
    --smb-section--background-transform: translate(0%, -3%) !important;
}
	#busness_section .c-container.alignwide {
    padding-left: 5vw;
    padding-right: 5vw;
}
	#recruit_section .c-container {
    padding-left: 5vw;
    padding-right: 5vw;
}	
/*    .bus_box {
        width: 93% !important;
    }*/
	.wp-block-columns.bus_block2 {
        width: 100% !important;
    }
	.wp-block-column.c_gruop_clum_first.is-layout-flow {
    flex-basis: 4% !important;
	}
	.c_gruop_clum .wp-block-column:first-child{
    flex-basis: 50% !important;		
	}
	/*英字タイトル幅*/
	.title_b .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 40% !important;
}
	.title_b_gruop .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 65% !important;
}
#footer_section	.wp-block-column.f_contact.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 50% !important;
}
#footer_section	.smb-section__inner>.c-container {
    padding-left: 50px;
    padding-right: 50px;
}
	#footer_section {
    padding-top: 34px;
}
}



/*右から左のアニメーションのキーフレーム*/
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
/*右から左に流したい要素に以下を付与*/
.top_scroll01 .scroll-infinity__list--left {
	animation: infinity-scroll-left 10s infinite linear 0.5s both;
	animation-duration: 30s !important;
}
.top_scroll02 .scroll-infinity__list--left{
	animation-duration: 60s !important;
}

.top_scroll01 .scroll-infinity__wrap {
	display: flex;
	overflow: hidden;
	margin: 0 calc(50% - 50vw);
	width: 100vw;
}
.top_scroll01 .scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.top_scroll01 .scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.top_scroll01 .scroll-infinity__item {
  width: calc(100vw / 1);
}
.top_scroll01 .scroll-infinity__item>img {
  width: 100%;
}
@media screen and (max-width: 1023px){
	.top_scroll01 .scroll-infinity__item{
		width:170vw;
	}
	.top_scroll02 .scroll-infinity__item {
        width: 300vw;
    }
}


/*アニメ付きボタン*/
.icon_block_right {
    position: relative;
    right: -22vw;
    bottom: 1vw;
}
@media (max-width: 480px) {
	.icon_block h4 {
    	margin-top: 25px !important;
	}
	.hovicon{
		width:40px !important;
		height:40px !important;
		margin-top: 10px !important;
	}
	.hovicon.effect-3:after{
		top:5px !important;
	}
}
.icon_block{
	width:max-content;
}
.icon_block.icon_block_left {
    margin-left: 0 !important;
	margin-right:auto !important;
	margin-top:0px !important;
}

.icon_block_right{
	margin-right:0 !important;
	margin-left:auto !important;
}
.icon_block a { 
	display:flex;
    text-decoration: none;
	z-index:10;
	max-width:max-content;
}
.icon_block h4 {
    margin-top: 23px;
	font-weight:700;
	color:#136157;
	font-size:26px;
}
.icon_block_re h4{
	color:#fff;
}
.hovicon {
    display: inline-block;
    font-size: 30px;
    line-height: 50px;
    cursor: pointer;
    margin: 20px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    text-align: center;
    position: relative;
    text-decoration: none;
    z-index: 1;
    color: #fff;	
}
.hovicon::backdrop {
  background-color: rgb(185, 204, 180);
}
.hovicon_re{
	color:#000;
}
.hovicon.effect-3:after {
    top: -2px;
    left: -2px;
    padding: 2px;
    z-index: -1;
    background: #136157;
    -webkit-transition: -webkit-transform 0.2s, opacity 0.3s;
    -moz-transition: -moz-transform 0.2s, opacity 0.3s;
    transition: transform 0.2s, opacity 0.3s;
}
.hovicon_re.effect-3:after{
	background: #fff;
}
.hovicon:after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

.hovicon.effect-3.sub-a:hover, .hovicon.effect-3.sub-a:hover i {
    color: #000;
}
.hovicon_re.effect-3.sub-a:hover, .hovicon_re.effect-3.sub-a:hover i{
	color: #fff;
}
.icon_block:hover .hovicon.effect-3.sub-a{
    color: #000;	
}
.icon_block_re:hover .hovicon_re.effect-3.sub-a{
    color: #fff;	
}
.icon_block:hover .hovicon.effect-3.sub-a:after {
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
    opacity: 0;
}
@media (max-width: 480px){
	
}

/*トップ英字タイトル*/
    .wp-block-columns.title_b ,.title_b_gruop{
    gap: 0;
    }
    .icon_block h3 {
    font-size: 40px;
    color: #136157;
    }

/*トップ事業案内 検査一覧*/

.smb-section__contents-wrapper img {
    border-radius: 12px !important;
}
    .wp-block-columns.bus_block{
    gap: 50px;	
    }
   .wp-block-columns.bus_clum_c {
    gap: 5px !important;
	border-bottom:1px solid #333333;
	padding-bottom: 12px;
    }
    .bus_box img {
    margin-bottom: 5px;
    }
    #busness_section .smb-section__background {
    border-radius: 86px 0px 0px 0px;
    }
    #no1_section .c-container.alignfull {
		z-index:50;
    }
/*チューケングループ*/
    #c_gruop_section .smb-box__background {
    border-radius: 0px 14px 14px 0px !important;
    }
/*採用情報*/
	.rec_title{
		margin-top:-1vw !important;
	}
.smb-media-text__figure>img{
    border-radius: 12px !important;	
}

/*トップスマホ*/
@media (max-width:39.9375em){
	.icon_block h4 {
    font-size: 19px;
	margin-top: 20px !important;
}
	figure.img_right_sp{
    margin-right: -20px !important;
}
/*グループ*/
	#c_gruop_section .wp-block-snow-monkey-blocks-box.smb-box {
    padding: 0 !important;
}
	.top_left_b {
    padding: 0;
}
	#c_gruop_section {
    padding-top: 0;
}
	#c_gruop_section img {
    object-fit: cover;
    height: 170px;
}
/*英字タイトル幅*/
	.title_b .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 60% !important;
}
	.title_b_gruop .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 75% !important;
}
/*検査一覧*/
.smb-section__contents-wrapper img {
    border-radius: 12px 0px 0px 12px !important;
}
    #busness_section .smb-section__background {
    border-radius: 40px 0px 0px 0px;
    }	
	#busness_section {
    --smb-section--background-transform: translate(0%, -3%) !important;
	--smb-section--background-image: linear-gradient(180deg, rgb(216, 234, 234) 0%, rgba(216, 235, 235, 0) 25%) !important;
}
	.bus_box {
    padding: 0px;
}
/*採用情報*/
	#recruit_section img{
    background-size: cover;
    height: 290px;
}
}
@media (min-width:64em){
	.bus_block2 .wp-block-snow-monkey-blocks-buttons.smb-buttons.is-content-justification-center {
    padding-right: 2vw;
	}
	.c_gruop_clum p{
    padding-right: 5vw;
	}
	.wp-block-columns.c_gruop_clum{
		margin-top:-4vw !important;
	}
	 .icon_block h3 {
    font-size: 40px;
    margin-right: 185px;
    margin-top: 10px;
    }
	.bus_box{
	margin-top:-5vw !important;
	width:95%;
		padding: 35px 25px 25px 25px;
    }
 /*   .wp-block-columns.bus_clum {
    width: 97%;
    }*/
/*トップ*/	
    #no1_section .c-container.alignfull {
        margin-right: 0;
        margin-left: 8vw !important;
        padding-right: 0 !important;
		z-index:50;
    }
	.top_pro_me{
		position:relative;
	}
	.top_left_b {
    position: absolute;
    left: 7vw;
    z-index: 30;
}
	.wp-block-columns.is-layout-flex.top_left_b_c {
    max-width: 690px;
    width: 100%;
}
	.wp-block-columns.bus_block2{
    width: 88%;	
    }
}
/*タブレット*/
@media screen and (min-width:768px) and ( max-width:1080px){
		.wp-block-columns.is-layout-flex.top_left_b_c {
    margin-left: 0 !important;
}
	.wp-block-columns.top_pro_me.tab1024_br_none.is-layout-flex.wp-container-core-columns-is-layout-22.wp-block-columns-is-layout-flex {
    display: grid
;
}
	    .title_b .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
        flex-basis: 44% !important;
    }
	    .bus_box {
        margin-top:  0!important;
        width: 100%; 
        padding: 35px 20px 25px 20px;
    }
	    .title_b_gruop .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
        flex-basis: 72% !important;
    }
	    .c_gruop_clum .wp-block-column:first-child {
        flex-basis: 78% !important;
    }
	    #footer_section .wp-block-column.f_contact.is-layout-flow.wp-block-column-is-layout-flow {
        flex-basis: 60% !important;
    }
}
	
@media (min-width:40em) and (max-width:63.9375em){

	/*英字タイトル幅*/
	.title_b .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 60% !important;
}
	.title_b_gruop .wp-block-column.is-vertically-aligned-bottom.is-layout-flow.wp-block-column-is-layout-flow {
    flex-basis: 80% !important;
}

}

/*トップメインヴィジュアルのアニメーション用*/
.mask_wrap{
  display: table;
  overflow: hidden;
}
.mask-wrap .mask{
  display: table;
  position: relative;
  margin-bottom: .25em;
  left: -100%;
  overflow: hidden;
}
.mask-wrap .mask-bg{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
}
.top_mavis_tex{
	overflow:hidden !important;
}



/*トップのメインヴィジュアルのアニメ*/
.mask_wrap{
  display: table;
  overflow: hidden;
}
.mask-wrap .mask{
  display: table;
  position: relative;
  margin-bottom: .25em;
  left: -100%;
  overflow: hidden;
}
.mask-wrap .mask-bg{
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
}

/*共通*/
.btn_arrow img{
	margin-left:17px !important;
}
.deco_h2_01{
	display: flex;
    gap: 20px;
    align-items: baseline;
}
.deco_h2_01 img{
	position:relative;
	top:20px;
}
.back_deco_ch{
	position: absolute;
	right: 100px;
	top: 35px;
	z-index:10;
}
.back_deco_ch2{
	position: absolute;
    left: 0px;
    top: -106px;
}
.back_deco_ch3{
	margin-bottom: 0px !important;
    margin-top: -77px !important;
}
.back_deco_ch3 img{
	margin-left:auto !important;
	margin-right:0 !important;
}
.sec_title_reverse .smb-section__header{
	display:flex;
	flex-direction:column;
}
.sec_title_reverse .smb-section__title{
	order:1;
}
.sec_title_reverse .smb-section__subtitle{
	order:2;
}
.sec_title_reverse .smb-section__lede-wrapper{
	order:3;
}
.icon_block_right{
		right:initial !important;
}
@media screen and (min-width: 1024px){
}
@media screen and (max-width: 1023px){
	
	.sp_max_wd , .sp_max_wd_img img{
		margin: 0 calc(50% - 50vw) !important;
		width: 100vw !important;
		max-width:initial !important;
	}
	.sp_sec_pa_t15{
		padding-top:15px !important;
	}
	.sp_sec_pa_b15{
		padding-bottom:15px !important;
	}
	.sp_sec_pa_tb15{
		padding-top:15px !important;
		padding-bottom:15px !important;
		
	}
	.deco_h2_01{
		gap:10px !important;
		z-index:10;
	}
	.deco_h2_01 strong span{
		font-size:53px !important;
	}
	.deco_h2_01 span:not(.deco_h2_01 strong span){
		font-size:15px !important;
	}
	.deco_h2_01 img{
		max-width:20px !important;
		top:8px;
	}
	body .smb-section .c-container--no-padding:not(.top_mv .c-container.alignfull.c-container--no-padding){
		padding-left:20px !important;
		padding-right:20px !important;
	}
	.top_mavis_tex{
		padding-left:15px !important;
		padding-right:15px !important;
	}
	.sp_gap0{
		gap:0 !important;
	}
	.sp_br_none br{
		display:none;
	}
	.sp_center_img img{
		margin:0 auto !important;
	}
	.fo_add_sns{
		justify-content:center !important;
	}
	.fo_menu_box01 .c-row{
		row-gap:45px !important;
	}
	body .fo_menu_box02 .widget_nav_menu{
		margin-top:0 !important;
	}
	
}
.wp-block-image img:not(.home .wp-block-image img) {
	border-radius:12px !important;
}
.wp-block-media-text__media img:not(.home .wp-block-media-text__media img){
	border-radius:12px !important;	
}
.smb-items__item__figure img:not(.home .smb-items__item__figure img){
	border-radius:8px !important;		
}
@media (max-width: 1024px){
.br-sm {
	display: none;
	}
}
@media (min-width:64em){
	br.br-sp {
    display: none !important;
}
}

.top_main_vis { 
    animation: fadeOut 3s; 
	animation-delay: 3s;
    animation-fill-mode: both; 
}
  
@keyframes fadeOut {
    0% {
        opacity: 1; /*初めに存在する*/
    }
    100% {
        opacity: 0; /*最後に消える*/
    }
}