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

body { font-size:calc(18 * 0.2vw) }
:target { scroll-margin-top: calc(120vw / 7.5); }


.pc { display:none; }
.sp { display:block; }

.sp_left { text-align:left; }

.fs10vw { font-size:calc(10 * 0.22vw); }
.fs11vw { font-size:calc(11 * 0.22vw); }
.fs12vw { font-size:calc(12 * 0.22vw); }
.fs14vw { font-size:calc(14 * 0.22vw); }
.fs16vw { font-size:calc(16 * 0.2vw); }
.fs17vw { font-size:calc(17 * 0.2vw); }
.fs18vw { font-size:calc(18 * 0.2vw); }
.fs19vw { font-size:calc(19 * 0.2vw); }
.fs20vw { font-size:calc(20 * 0.2vw); }
.fs21vw { font-size:calc(21 * 0.17vw); }
.fs22vw { font-size:calc(22 * 0.17vw); }
.fs23vw { font-size:calc(23 * 0.17vw); }
.fs24vw { font-size:calc(24 * 0.17vw); }
.fs25vw { font-size:calc(25 * 0.16vw); }
.fs26vw { font-size:calc(26 * 0.16vw); }
.fs27vw { font-size:calc(27 * 0.16vw); }
.fs28vw { font-size:calc(28 * 0.16vw); }
.fs29vw { font-size:calc(29 * 0.15vw); }
.fs30vw { font-size:calc(30 * 0.15vw); }
.fs31vw { font-size:calc(31 * 0.15vw); }
.fs32vw { font-size:calc(32 * 0.15vw); }
.fs33vw { font-size:calc(33 * 0.15vw); }
.fs34vw { font-size:calc(34 * 0.15vw); }
.fs35vw { font-size:calc(35 * 0.15vw); }
.fs36vw { font-size:calc(36 * 0.15vw); }
.fs37vw { font-size:calc(37 * 0.15vw); }
.fs38vw { font-size:calc(38 * 0.15vw); }
.fs39vw { font-size:calc(39 * 0.15vw); }
.fs40vw { font-size:calc(40 * 0.15vw); }
.fs42vw { font-size:calc(42 * 0.15vw); }
.fs44vw { font-size:calc(44 * 0.15vw); }
.fs45vw { font-size:calc(45 * 0.15vw); }
.fs48vw { font-size:calc(48 * 0.14vw); }
.fs50vw { font-size:calc(50 * 0.14vw); }
.fs52vw { font-size:calc(52 * 0.14vw); }
.fs53vw { font-size:calc(53 * 0.14vw); }
.fs54vw { font-size:calc(54 * 0.11vw); }
.fs55vw { font-size:calc(55 * 0.11vw); }
.fs56vw { font-size:calc(56 * 0.11vw); }
.fs60vw { font-size:calc(60 * 0.11vw); }
.fs62vw { font-size:calc(62 * 0.11vw); }
.fs64vw { font-size:calc(64 * 0.11vw); }
.fs65vw { font-size:calc(65 * 0.11vw); }
.fs66vw { font-size:calc(66 * 0.1vw); }
.fs68vw { font-size:calc(68 * 0.1vw); }
.fs70vw { font-size:calc(70 * 0.1vw); }
.fs72vw { font-size:calc(72 * 0.1vw); }
.fs100vw { font-size:calc(100 * 0.1vw); }
.fs110vw { font-size:calc(110 * 0.1vw); }

.inner,
.middle_inner,
.low_inner,
.minimum_inner { max-width: none; width:92%; }


.logo .fs60vw { font-size:calc(60 * 0.15vw); }
.ttl::after { bottom: -4.5vw; width: 12.5vw; }


.subttl::before { width: calc(60vw / 7.5); }

.more { width: 60%; height: 3em; line-height: 3em; padding-left: calc(25vw / 7.5); display: block; margin: 2em auto 2em auto; }
.more::after { top: 1.4em; right: calc(-25vw / 7.5); width: calc(50vw / 7.5); }

.ttl {margin: 2.33em 0 2.33em 0;}
ttl .slug {margin-block-end: 0.25em;}
.ttl .ja .space {margin-left:0;}

.subttl {margin: 1.5em 0 1.25em 0; line-height: 1.125;}
.subttl.center {margin: 1.5em 0 1.25em 0;}

header#header { height: calc(110vw / 7.5); }
header#header .inner { width: 96%; }
header#header .site_name { margin: 4.3vw 0 4.3vw 0; padding-left: calc(30vw / 7.5);}
header#header .site_name .logo { width: calc(306vw / 7.5);}
header#header .site_name span { line-height: 1.2; margin-block-start: 0; margin-block-end: 1.5vw;}



header#header .main_menu { padding:30vw 3vw 0 3vw; }
header#header .main_menu li { border-bottom:solid 1px #222222; padding:1em 0 1em 0; line-height: 1; }
header#header .main_menu li:last-of-type { border:none; }
header#header .main_menu li a { position:relative; display:block; text-align: left; }
header#header .main_menu li a .slug { display:inline-block; width:7em }
header#header .main_menu li a i { position: absolute; right: 3vw; top: 0; bottom: 0; margin: auto; }

#header .header_contact.pc { display:none; }

.zdo_drawer_menu .zdo_drawer_button { right: 0; }
.zdo_drawer_menu .zdo_drawer_button .icon { padding: calc(20vw / 7.5) calc(40vw / 7.5) calc(20vw / 7.5) calc(40vw / 7.5);}
.zdo_drawer_menu .zdo_drawer_bar { width: calc(74vw / 7.5); margin: 2.1vw 0 0 0; }
.zdo_drawer_menu .zdo_drawer_button .text { margin-block-start: 0;}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar { width: calc(74vw / 7.5); }

.zdo_drawer_menu .zdo_drawer_button.active .cloze { margin-block-start: 0;}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar1 { transform: rotate(14deg);}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar2 { transform: rotate(-14deg);}
.zdo_drawer_menu .zdo_drawer_nav { display: block; padding: calc(200vw / 7.5);padding: calc(200vw / 7.5) 4% 0 4%;}

.zdo_drawer_menu .zdo_drawer_nav .box li.section { padding-left: 1.4em; }



main { padding: calc(120vw / 7.5) 0 0 0; }

/* contents page fv */
header.page .page_title {width: calc(740vw / 19.2);padding: calc(40vw / 19.2) 0 0 0;margin: calc(90vw / 19.2) 0 0 calc(70vw / 19.2);}
header.page .page_title .slug { line-height: 1;}
header.page .page_title .ja { font-size: calc(24* 0.18vw); margin-block-start: 0.25em;}
header.page .page_title .ja.tighten {letter-spacing: -0.05em;}
header.page .page_title .smoll {display: block; font-size: calc(20 * 0.17vw);}

.page_start { padding: 1em;}




.bottom_contact .middle_inner .ttl { width: 100%; margin: 1em 0 2.33em 0; }
.bottom_contact .middle_inner .button_wrapper { width: 100%; display:block;}
.bottom_contact .middle_inner .button_wrapper .box { width: 100%; border:none;}
.bottom_contact .middle_inner .button_wrapper .box:first-of-type{ width: 100%; border:none}
.bottom_contact .middle_inner .button_wrapper .box .button { border: solid 1px #332956; width: 80%; height: calc(90vw / 7.5); line-height: calc(90vw / 7.5);}
.bottom_contact .middle_inner .button_wrapper .box .icon { width: calc(40vw / 7);}




footer#footer { padding: 3.83em 0 3.83em 0; }
footer#footer .footer_info { width:100%; }


footer#footer .footer_info .site_name { }
footer#footer .footer_info .site_name .logo { width: calc(306vw / 7.5); }


footer#footer .footer_info .movie_link { display: block; margin: auto; width: max-content; }

footer#footer .footer_sns { justify-content: center; }
footer#footer .footer_sns a { margin: 0 3vw 0 3vw; }
footer#footer .footer_sns a i { font-size: calc(45 * 0.22vw); vertical-align: middle; }
footer#footer .footer_sns a i.fa-line { font-size: calc(38 * 0.22vw); }


footer#footer .footer_nav { width: 100%; display: block; padding: 2em 0 0 0;}

footer#footer .footer_nav ul { display:block; }
footer#footer .footer_nav ul li a { text-align:left; }





#ptop { bottom:5vw; right:5vw; width: 12.5vw; height: 12.5vw; line-height: 12.5vw; padding: 1vw; }



/****** top *********************************/


main #fv { height:calc(520vw / 7.5); }

main #fv.re0922 { height:calc(420vw / 7.5); }
main #fv.re0922 .slide1 { background-size: 115%; background-position: right top; }
main #fv.re0922 .slide2 video { margin-block-start: 0;}


main #fv.re0922 .slide2 .catch { font-size: calc(70 * 0.08vw); }
main #fv.re0922 .slide2 .movie_logo { width: calc(400vw / 8.8);top: calc(300vw / 8.8); }



main #fv .swiper-slide { width:100%; height:calc(520vw / 7.5); }
main #fv .slide01 { background-image:url(../img/top/slide01_sp.jpg); }
main #fv .slide02 { background-image:url(../img/top/slide02_sp.jpg); }
main #fv .slide03 { background-image:url(../img/top/slide03_sp.jpg); }
main #fv .slide04 { background-image:url(../img/top/slide04_sp.jpg); }

main #fv .text { top: calc(420vw / 7.6); left: 6%; padding: 1em; width: 88%; }
#top_over_view { padding: calc(350vw / 7.5) 0 0 6%;}
#top_over_view.re0922 { padding: 0 0 0 6%;}

#top_over_view .text { width: 94%;}
#top_over_view .thumb { width: 100%;}
#top_over_view .movie_box {margin: calc(40vw / 7.5) 0 calc(70vw / 7.5) 0;}
#top_news, #top_insta {background-image:url(../img/top/news_bg_sp.gif); background-size: 150%; padding: calc(100vw / 7.5) 0 calc(100vw / 7.5) 0;}
#top_insta {padding-top:0;}

#top_news .middle_inner .top_news_header, #top_insta .middle_inner .top_insta_header  { width:100%; }
#top_news .middle_inner .top_news_wrapper, #top_insta .middle_inner .top_insta_wrapper { width:100%; }

#top_news .middle_inner .top_news_wrapper .list { display: block; }
#top_news .middle_inner .top_news_wrapper .list dt { display: block; width:100%; padding:1em 0 0 0; }

#top_news .middle_inner .top_news_wrapper .list dd { display: block; }




#top_business .box .text { width: 100%;}
#top_business .box .thumb { width: 100%;}
#top_business .box { margin-block-end: 4em;}

#top_company .text { width: 100%; padding: 2.33em 2.33em 10em 2.33em;}

#top_company .thumb { width: 100%;}

#top_company .button_wrapper .box .icon { width: calc(60vw / 5); margin: 0 auto 1em auto;}
#top_company .button_wrapper .box { width: 32%; padding: calc(80vw / 7.5) 0 calc(40vw / 7.5) 0; }

#top_company .button_wrapper .box::before { top: calc(40vw / 7.5); width: calc(50vw / 7.5); }
#top_company .button_wrapper { bottom: calc(350vw / 7.5);}
#top_company .button_wrapper .box .slug { font-size: calc(20 * 0.18vw); }


/****** business ********************************/

#about_asbestos .text { width: 100%; margin-block-end: 2em;}
#about_asbestos .thumb { width: 100%; }

#about_asbestos .thumb.left .heading { box-shadow: 7px 7px 0 #C5BFDA; }
#about_asbestos .thumb.right .heading { box-shadow: -7px 7px 0 #DCEBFC;}

#about_asbestos .scope.left, #about_asbestos .scope.right, #about_asbestos .scope2.left, #about_asbestos .scope2.right { width: 100%; }

#about_asbestos .scope dd.flex { display: block; }
#about_asbestos .scope .scope_type .box { width: 100%; }

#asbestos_survey_and_sampling .middle_inner { padding: 1em;}

#asbestos_survey_and_sampling .text { width: 100%; margin-block-end: 2em;}
#asbestos_survey_and_sampling .thumb { width: 100%; }

#asbestos_survey_and_sampling .thumb.left .heading { box-shadow: 7px 7px 0 #C5BFDA; }
#asbestos_survey_and_sampling .thumb.right .heading { box-shadow: -7px 7px 0 #DCEBFC;}



#asbestos_survey_and_sampling .flow .thumb { width: 100%; margin-block-end: 2em;}
#asbestos_survey_and_sampling .flow .remarks { width: 100%; margin-block-end: 2em;}


#asbestos_analysis .middle_inner, #request_forms .middle_inner { padding: 1em; margin-block-end: 2em;}

.second_contents_wrapper .inquiry_box .button {width: 60vw; height: 3em; line-height: 3em;}
.second_contents_wrapper .inquiry_box .button .icon { width: calc(32vw / 6); }


#asbestos_analysis .text { width: 100%; margin-block-end: 2em;}
#asbestos_analysis .thumb { width: 100%; }

#asbestos_analysis .thumb.left .heading { box-shadow: 7px 7px 0 #C5BFDA; }
#asbestos_analysis .thumb.right .heading { box-shadow: -7px 7px 0 #DCEBFC;}

#asbestos_analysis .inquiry_box dt {width: calc(100% + 2em); margin-left: -1em;}
#asbestos_analysis .inquiry_box dd .low_inner { display: block; width: 100%;}
#asbestos_analysis .inquiry_box dd .low_inner .button { margin-block-start:1em; }

#asbestos_analysis .report { display: block;}
#asbestos_analysis .report .report_box { width: 100%; }
#asbestos_analysis .inquiry_box { padding: 0 1em 2em 1em;}

#plan .plan_type { display: block;}
#plan .plan_type .box { width: 100%; margin-block-end: 1em; }
#plan .plan_type .box .plan_name::before { width: calc(50vw / 7.5); }
#plan .plan_type .box .icon { width: calc(58vw / 5); }

#consulting { background: linear-gradient(to bottom, #332956 0, #332956 calc(475vw / 7.5), #EEE calc(475vw / 7.5), #EEE 100%); }

#consulting .text { width: 100%; margin-block-end: 2em;}
#consulting .thumb { width: 100%; }

#consulting .thumb.left .heading { box-shadow: 7px 7px 0 #C5BFDA; }
#consulting .thumb.right .heading { box-shadow: -7px 7px 0 #DCEBFC;}

#consulting .middle_inner { padding: 1em;}




/****** end business ****************************/
/****** company *********************************/

#message { padding-bottom: 3.83em; background: linear-gradient(to bottom, transparent 0, transparent calc(120vw / 19.2), #EDEDED calc(120vw / 19.2)); }
#company_profile { background: linear-gradient(to bottom, #332956 0, #332956 calc(475vw / 7.5), #D3D5E5 calc(475vw / 7.5), #E9EAF2 100%); padding: 3.83em 0 3.83em 0; }

#message .catch::before {top: calc(70vw / 19.2);left: calc(-80vw / 19.2);width: calc(60vw / 19.2); height:1px;}
#message .catch::after {top:calc(70vw / 19.2); right:calc(-80vw / 19.2); width:calc(60vw / 19.2); height:1px;}

#company_profile .middle_inner .box:first-of-type dt { border-top: none;}
#company_profile .middle_inner .box:first-of-type dd { border-top: none}
#company_profile .middle_inner .box { display: block;}
#company_profile .middle_inner .box dt { display: block; width: 100%; }
#company_profile .middle_inner .box dd { display: block; border-bottom: none; padding: 1em 0 1em 0;}


#map { padding: 3.83em 0 3.83em 0; }
#map #gmap { height:320px; }
#map .flex { display:block; }
#map .route { width:100%; height:320px; margin-block-start:2em; }


#privacy-policy { padding: 3.83em 0 3.83em 0; background-size: 150%; }
#privacy-policy .minimum_inner { width: 100%; }
#privacy-policy .list dd .contact_box { padding: 1em; width: 100%;}
#privacy-policy .list dd .contact_box .flex { display: block; }
#privacy-policy .list dd .contact_box .more { margin: 1em auto 2em auto;}

/****** end privacy-policy ******************************/


/****** sustainability *********************************/
#sdgs_initiatives .middle_inner {padding-bottom: calc(70vw / 19.2);}
#sdgs_commitment .text.left {width: 100%;  margin-block-end: 2em;}
#sdgs_commitment .thumb {width: 100%;  margin-block-end: 2em; margin-block-start: 0;}

#sdgs_initiatives .initiatives_block {margin-block-end: 2em;}
#sdgs_initiatives dl.detail dd {padding: 0.75em 2%;}
#sdgs_initiatives dl.detail dd ul.detail_item li {margin-left: 1.5em; letter-spacing: -0.02em;}
#sdgs_initiatives .icon_container {margin-top: 1em; justify-content: flex-start;}
#sdgs_initiatives .icon_container .icon {width: 23%;margin: 0.5em 1%;}

#sdgs_initiatives #sdgs_certified .certified_img {margin-block-start:1.5em; margin-block-end: 2em;}

/****** analysis *********************************/
#aobut_analysis .select_box {margin:1.5em auto 0 auto;}
#aobut_analysis .select_box .button {width: 80%; height: calc(90vw / 7.5); line-height: calc(90vw / 7.5); margin:auto; margin-block-start:1em; margin-block-end:1.5em; float: none}
#aobut_analysis .select_box .button i.fa-check {margin-right: 0.25em;}
#request_forms .middle_inner { padding: 1em 1em 3em 1em;}
#request_forms .lower_inner {width: 100%; margin: 1em auto;}
#request_forms .lower_inner .qr_column {width: 100%; float: none; margin-block-end: 1.5em;}
#request_forms .lower_inner .qr_column.right {border-left: none;; border-top: 1px solid #A7A5B1; padding-top:1em;}
#request_forms .qr_column .qr_img {width:30%;}
#request_forms .guide {margin-block-start:3em;}
#request_forms .guide .page {margin-block-start:2.5em;}
#request_forms .guide .flow { padding: 0.75em 0.5em;}
#request_forms .guide .flow .flow_img  {width: 100%; float:none;}
#request_forms .guide .flow .text_box  {width: 100%; padding:0.5em  1em; margin-block-start: 0; margin-block-end: 0.75em;}
#request_forms .guide .line_qr {flex-direction: column; column-gap: 0; margin-block-start:2em; padding: 0.75em 2%;}
#request_forms .guide .line_qr .text {text-align:center; margin:0.5em 0;}

/****** news *********************************/
#news_contents .low_inner .column_left { width: 100%; border-radius: 1em; padding: 1em;}
#news_contents .post-thumbnail img { border-radius: 1em; }
#news_contents .low_inner .column_right {  width: 100%;margin-block-start: 3em;}
#news_contents .entry-content img { width:100%; margin-block-end:1em; }
#news_contents .column_left article.post { margin-block-end: 3em; }

.column_left a.page-numbers ,
.column_left span.page-numbers { width: 7vw; height: 7vw; line-height: 6.3vw; margin-right: 2.4vw;}
.column_left a.next.page-numbers { width: 5.5em;}
.column_left a.prev.page-numbers { width: 5.5em; margin-right: 2.4vw;}

.column_right .widget_block h2.wp-block-heading { font-size: calc(25 * 0.16vw); }
.column_right .widget_block h2.wp-block-heading::before { font-size: calc(25 * 0.16vw); }

.column_right .widget-area { display: block; }
.column_right .widget_block { width: 100%;}
.column_right { padding: 1.83em 0 3.83em 0;}

/****** end news *********************************/
/****** contact **********************************/

#form { padding: 0;}

#form form dl { display:block; }
#form form dl dt { display:block; width:100%; padding: 0 1em 0.5em 0; line-height: 1.2; }
#form form dl dd { display:block; width:100%; margin: 0; padding: 0.5em 0 1.5em 0; }
#form form dl dd .field { line-height: 1; }
#form form dl dt .required, #form form dl dt .any { padding: 0.9vw 1.5vw 0.9vw 1.5vw; }

#form form .send { width: 66vw; height: 3.5em; margin: 1em auto 3em auto; }
#form form .send i { right: 3vw; line-height: 2em; }

.recaptcha_notice { text-align:left; }


#form form .flex.date_box { display: block; }
#form form dl dd input[type=date] { width: 100%; }

#contact .notice_box { width: 100%; }
#contact .notice_box .flex { display: block; }

#contact .notice_box .flex .more { margin: 0 auto 0 auto; width: 21em;}
#contact .notice_box .flex .text { margin: 0 auto 1em auto;  text-align: center;}

/****** end contact ******************************/
/****** privacy *********************************/

#privacy_contents .middle_inner { clip-path: polygon(8% 0%, 100% 0, 100% 97.5%, 92% 100%, 0 100%, 0 2.5%);}
#privacy_contents .middle_inner::after {clip-path: polygon(8% 0%, 100% 0, 100% 97.5%, 92% 100%, 0 100%, 0 2.5%);}
#privacy_contents .middle_inner .wrapper { padding: 3.125vw 5.333vw 2vw calc(5.333vw + 1.5em);}

#privacy_contents .middle_inner .wrapper .center { text-align:left; }
ol.privacy li.article::marker { font-size: calc(21* 0.2vw);}

/****** end privacy *********************************/




