@media screen and (max-width: 1700px) {
.triangle{ background-size: 1900px; }
}



@media screen and (max-width: 1400px) {
#top .sec02 ul .items .img_box .inner{ max-height: 400px; }
#work_detail .sec02 .box ul .items .img_box .inner{ max-height: 400px; }
}

@media screen and (max-width: 1280px) {
.sub_header{ max-width: 1140px; }
.sub_wrapper .titlebox{ max-width: 980px; }
.sub_wrapper .container{ max-width: 1030px; }
}

@media screen and (max-width: 1250px) {
#top .sec02 .slick-next { right: 19%; }
#top .sec02 .slick-prev { left: 19%; }
#work_detail .sec02 .slick-next { right: 19%; }
#work_detail .sec02 .slick-prev { left: 19%; }
#top .sec02 ul .items .category span{ font-size: 1.2rem; }
#work_detail .sec02 .box ul .items .category span{ font-size: 1.2rem; }
#top .sec02 ul .items .img_box .inner{ max-height: 500px; }
#work_detail .sec02 .box ul .items .img_box .inner{ max-height: 500px; }
}

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

.border:after{ left: 130px; }
#top .fv .logo{ left: 69px; }
#top .menu_box{ margin-left: 130px; }
#top .sec01 .sec_box .box{ margin-left: 130px; }

}

@media screen and (max-width: 1180px) {
.sub_wrapper .titlebox{ margin-right: 65px; }
.sub_wrapper .container{ max-width: 1045px; margin: 0px 40px; }
#top .sec02 ul .items .img_box .inner{ max-height: 400px; }
#work_detail .sec02 .box ul .items .img_box .inner{ max-height: 400px; }
}


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

#top .sec01{ margin-top: 100px; }
#top .sec01 .sec_box{ padding: 150px 0; }
#top .sec01 .sec_box .box .right.text_box{ margin-top: 60px; }
#top .sec01 .sec_box .box .left{ width: 35%; }
#top .sec03 .btn{ padding: 20px 30px; width: 100%; }
#top .sec03 .access_box .left{ width: 55%; }
#top .sec03 .access_box .right{ width: 38%; }

#top .sec01 .sec_box .box .flex{ padding: 50px 50px 100px; }

}


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

.border:after{ left: 80px; }
.sub_header .bodysns_box{ top: 460px; }
#top .fv .logo{ left: 19px; }
#top .menu_box{ margin-left: 80px; }
#top .sec01 .sec_box .box{ margin-left: 80px; }
#top .fv .fv_text{ margin: auto 0; left: 220px; }
#top .menu_box ul li a{ padding: 30px 0; }
#top .menu_box ul li p.ja{ margin-bottom: 15px; }
#top .menu_box ul li .img_box img { max-width: 80px; max-height: 80px; }
#top .menu_box ul li .img_box { width: 80px; height: 80px; }
#top .sec01 .sec_box .box .left{ width: 60%; }
#top .sec01 .sec_box .box .right.text_box {  }
#top .sec02{ padding: 100px 0; }
#top .sec02 p br{ display: none; }
#top .sec02 .box{ margin: 80px 0 0; }
#top .sec02 .slick-prev{ left: 20px; }
#top .sec02 .slick-next{ right: 20px; }
#top .sec03{ margin: 100px 0; }
#top .sec03 dl{ display: block; }
#top .sec03 dl dd{ margin-bottom: 20px; }
#top .sec03 dl dt{ width: 100%; }
#top .sec03 .btn{ padding: 20px 30px; width: 100%; }
#top .sec03 .access_box .left{ width: 55%; }
#top .sec03 .access_box .right{ width: 38%; }
#top .sec03 ul.slider-center2 .slick-prev { left: 45px; }
#top .sec03 ul.slider-center2 .slick-next { right: 45px; }
#top .sec03 ul.slider-center2 .slick-prev:before{ top: -10px; }
#top .sec03 ul.slider-center2 .slick-next:before{ top: -10px; }

#footer .container{ padding-bottom: 150px; }
#footer .box{ -ms-flex-wrap: wrap; flex-wrap: wrap; }
#footer .right{ width: 100%; text-align: center; margin: auto; margin-top: 70px; }
#footer .left{ width: 100%; }
#footer .left h3{ text-align: center; display: block; }
#footer .left h3 span{ display: block; margin-top: 10px; padding-left: 0; }
#footer .left .nav-list1{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: auto; }
#footer .left .nav-list1 li,
#footer .left .address,
#footer .left .text{ text-align: center; }
#footer .right .sns_box ul,
#footer .right .nav-list2{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin: auto; }
#footer .right small{ margin-top: 100px; display: block; }

.sub_wrapper .titlebox{ padding: 80px 25px; }
.sub_wrapper .titlebox .container{ margin: 0; }
.sub_wrapper .titlebox h2.en span { padding-left: 30px; }

#work .sec01 .worklist_box .worklist li .category li a{ font-size: 1rem; }

#recruit .sec01 .recruit_box1 .position img.img01{ right: -25px; top: 0; }
#recruit .sec01 .recruit_box1 .position img.img02{ right: 0px; bottom: 150px; }
#recruit .sec01 .recruit_box1 .position img.img03{ margin: auto;left: 0; right: 0; bottom: 0; }
#recruit .sec01 .recruit_box1 .position img.img04{ left: -30px; top: 0; }
#recruit .sec01 .recruit_box1 .position img.img05{ left: 0px; bottom: 150px; }

.triangle{ background-size: 175%; background-position: 50% 0%; }
}

@media screen and (max-width: 980px) {
#work_detail .sec02 .slick-prev{ left: 20px; }
#work_detail .sec02 .slick-next{ right: 20px; }
#top .sec02 .slick-next { right: 20px; }
#top .sec02 .slick-prev { left: 20px; }
#work .sec01 .worklist_box .worklist li .category .post-categories{ margin-left: 0; margin-right: 0; }
}

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

.sub_wrapper .imgtitle_wrapper{ background: none; }
.sub_wrapper .imgtitlebox{ margin-top: 100px; position: relative; padding: 0; margin-right: 0; background: none; }
.sub_wrapper .imgtitlebox img{ position: unset; height: 250px; width: 100%; object-fit: cover; }
.sub_wrapper .imgtitlebox .container{ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: absolute; background: #000; position: absolute; padding: 0px 50px; bottom: -60px; height: 125px; }

#work .sec01 .worklist_box .worklist li h3{ padding: 0 20px; }
#work .sec01 .worklist_box .worklist li p{ padding: 0 20px; }
#work .sec01 .worklist_box .worklist li .category{  }
#work .sec01 .worklist_box .worklist li .category .post-categories li a{ font-size: 1rem; }
#work .sec01 .worklist_box .worklist li .imgbox img{ height: 200px; }
#work .sec01 .worklist_box .worklist li:nth-child(-n+2){ padding: 50px 0; }
#work .sec01 .worklist_box .worklist li{ padding-bottom: 50px; }

#work_detail .work_box .work_inner{ margin: 0 70px; }
#work_detail .work_box .work_inner .intitle_box{ margin-left: -70px; margin-right: -70px; padding: 50px 70px 30px; }
#work_detail .work_box .work_inner .article,
#work_detail .work_box .work_inner .article img{ padding: 50px 0; }
#work_detail .work_box .work_inner .article .making{ margin: 70px auto 50px; }


#philosophy .sec01 .philosophy_box1 .left{ width: 65%; }
#philosophy .sec01 .philosophy_box1 .right{ width: 35%; }
#philosophy .sec01 .philosophy_box1 .right .text{ line-height: 2em; padding-right: 55px; font-size: 2.5rem; }
#philosophy .sec01 .philosophy_box3 .left table th{ padding: 30px 30px 30px 0; }
#philosophy .sec01 .philosophy_box3 .left{ width: calc( 70% - 30px ); margin-right: 30px; }
#philosophy .sec01 .philosophy_box3 .right{ width: 30%; }

.triangle{ background-size: 235%; }
}


@media screen and (max-width: 767.98px){
.link_box{ display: none!important; }
}

@media screen and (max-width: 768px) and (min-width: 640px){
#philosophy .sec01 .philosophy_box1 .left p br{ display: none; }
}

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

.pc { display: none; }
.sp { display: block; }
.contact_btn.sp{ display: block; }
.wp-video{ padding: 40px 0; }
.sub_wrapper .contact_btn{ display: block; }

.wrapper { margin-top: -35px; }
/*.sub_wrapper { margin-top: 95px; }*/
.sub_wrapper .imgtitlebox .bgLRextendTrigger{ position: unset; width: 100%; z-index: -1; }

body.fixed #header h1.title{ left: 15px; }
body.fixed #header .header-nav .nav_box .pt h1.title{ left: 0!important; }

.border:after{ left: 25px; }
.bodysns_box{ display: none; }
.btn{ padding: 20px 10px; width: 100%; font-size: 1.4rem; }

#header .modal_btnbox{ right: 0; bottom: auto; }
#header .header-nav .nav_box .nav_scroll{ margin-top: 100px; }

.sub_wrapper .container{ margin: 0 auto; }
.sub_wrapper .titlebox{ margin-right: 25px; padding: 50px 25px 50px 15px; }
.sub_wrapper .titlebox h2.en{ display: inline-block; text-align: right; font-size: 2.3rem; }
.sub_wrapper .titlebox h2.en span{ display: block; font-size: 1.2rem; margin-top: 10px; }
.sub_wrapper .imgtitlebox{ margin-top: 62px; padding: 0; margin-right: 0;}
.sub_wrapper .imgtitlebox .container{ width: auto; z-index: 1; }
.sub_wrapper .imgtitlebox img{ height: 190px; }
.sub_wrapper .imgtitlebox .container h2.en{ display: block; text-align: right; }
.sub_wrapper .imgtitlebox .container h2.en span{ display: block; padding-left: 0; }
.sub_wrapper .section_wrapper{ padding-top: 60px; padding-bottom: 100px; }
.sub_wrapper .titlebox{ margin-top: 62px; }

#header{ text-align: left; padding: 15px; }
.pt{ display: inline-block; top: 15px; left: 15px; font-size: 1.1rem; text-align: left; line-height: 1.5em; }
.pt a{ font-size: 1.1rem; text-align: left; line-height: 1.5em; }
#header .modal_btn{ margin-top: 0; }
#header .header-nav{ background: url("../images/nav_bgsp.jpg") no-repeat; background-size: cover; overflow: scroll; }
#header .header-nav .nav_box .nav-list1{ margin-bottom: 50px; height: auto; }
#header .header-nav .nav_box .nav-list1 .nav-item{ margin-bottom: 50px; }
#header .header-nav .nav_box .nav-list .nav-item a{ font-size: 2.5rem; }
#header .header-nav .nav_box .nav-list2{ position: unset; }
#header .header-nav .nav_box .nav-list2 .nav-item{ width: 100%; margin: 20px 0; }
#header .header-nav .nav_box .sns_box{ position: unset; text-align: center; height: auto; margin-bottom: 50px; }
#header .header-nav .nav_box .sns_box a{ display: inline-block; margin: 0 10px; }
#header .header-nav .nav_box .sns_box a svg{ width: 35px; height: 35px; }
#header .header-nav .nav_box p{ margin-top: 20px; padding-bottom: 100px; line-height: 1.5em; }
#header .header-nav img{ position: fixed; left: 15px; opacity: 0.5; }

#footer { padding-top: 100px; padding-bottom: 55px; }
#footer .container{ padding-bottom: 130px; }
#footer .sns_box{ margin-bottom: 100px; }
#footer .sns_box ul{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#footer .sns_box ul li{ min-width: 30px; margin: 0 10px; }
#footer .sns_box ul li img{ height: 27px; }
#footer .box{ -ms-flex-wrap: wrap; flex-wrap: wrap; }
#footer .box .left{ width: 100%; }
#footer .box .left h3{ display: block; margin-bottom: 15px; text-align: left; }
#footer .box .left h3 span{ margin-top: 10px; display: block; padding-left: 0;}
#footer .left .address, #footer .left .text{ text-align: left; }
#footer .left .text{ font-size: 11px; }
#footer .box .right{ margin-top: 70px; width: 100%; }
#footer .box .right small{ margin-top: 0;}

#top .fv { height: calc( 100vh - 117px); }
#top .fv .contact_btn { height: 55px; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9; }
#top .fv .contact_btn:after{ content: none; }
#top .fv .logo{ width: 50px; left: 0; display: inline-flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#top .fv .logo img{  }
#top .fv h2.copy{ width: auto; font-size: 2.3rem; margin-bottom: 30px; }
#top .fv .fv_text{ padding-left: 80px; left: 0; margin: auto; height: 300px; }
#top .fv .text2{ font-size: 1rem; width: auto; }
#top .fv .text1{ font-size: 1.4rem; margin-bottom: 45px; }
#top .menu_box { margin: 0 25px; }
#top .menu_box ul{ -ms-flex-wrap: wrap; flex-wrap: wrap; }
#top .menu_box ul li{ width: calc( 100% / 2 ); }
#top .menu_box ul .sp_line{ display: block; position: relative; }
#top .menu_box ul .sp_line:before{ content: ""; position: absolute; width: 25px; height: 1px; bottom: -1px; background: #E0E0E0; }
#top .menu_box ul .sp_line1:before{ left: -25px; }
#top .menu_box ul .sp_line2:before{ right: -25px; }

#top .menu_box ul li a {padding: 20px 0 30px; }
#top .menu_box ul li:nth-child(-n+3){ border-bottom: 0; }
#top .menu_box ul li .img_box{ margin-bottom: 5px; }
#top .menu_box ul li .img_box .gif { max-width: 105px; max-height: 70px; }
#top .menu_box ul li p.en{ font-size: 0.9rem; letter-spacing: 1.5px; padding-bottom: 25px; margin-bottom: 9px; }
#top .menu_box ul li p.ja{ font-size: 1.3rem; margin-bottom: 15px; }
#top .menu_box ul:before{ content: ""; position: absolute; height: calc( 100% - 2px ); width: 25px; border-top: 1px solid #E0E0E0; border-bottom: 1px solid #E0E0E0; left: -25px; top: 0; bottom: 0; margin: auto; }
#top .menu_box ul:after{ content: ""; position: absolute; height: calc( 100% - 2px ); width: 25px; border-top: 1px solid #E0E0E0; border-bottom: 1px solid #E0E0E0; right: -25px; top: 0; bottom: 0; margin: auto; }
#top .menu_box ul li:after{ height: 30px; }

#top .sec01{ margin-top: 0; }
#top .sec01 .sec_box{ padding: 115px 0 120px; }
#top .sec01 .sec_box .box { margin-left: 25px; }
#top .sec01 .sec_box .box .right.text_box{ width: 100%; }
#top .sec01 .sec_box .box .flex{ padding: 0; -ms-flex-wrap: wrap; flex-wrap: wrap; }
#top .sec01 .sec_box .box .left { order: 2; position: unset; margin-bottom: -50px; width: calc( 100% + 50px ); margin-right: -25px; margin-left: -25px; }
#top .sec01 .sec_box .img01{ width: 95%; margin-top: -75px; margin-left: -25px; }
#top .sec01 .sec_box .box .right.text_box{ margin: 0; padding: 30px; }
#top .sec01 .sec_box .box .right.text_box h3{ margin-bottom: 15px; font-size: 2.2rem; line-height: 1.4em; }
#top .sec01 .sec_box .box .right.text_box p{ line-height: 2em; max-width: 100%; font-size: 1.4rem; }
#top .sec01 .sec_box .box .right.text_box img{ padding: 45px 30px; }
#top .sec01 .sec_box .box .right.text_box .btn{ position: unset; width: 100%; }
#top .sec01 .sec_box .box .img04{ margin-left: 13px;  }

#top .sec02{ padding: 100px 0; background: url("../images/topsec02_bgsp.jpg") no-repeat; background-size: cover; }
#top .sec02 p{ text-align: left; font-size: 1.4rem; }
#top .sec02 h3{ font-size: 2.3rem; margin-bottom: 40px; }
#top .sec02 .box{ margin: 30px 0 0; }
#top .sec02 ul .items{ margin: 0 15px 10px; }
#top .sec02 ul .items .category{ height: 19px; overflow: hidden; left: 0; right: 0; margin: auto; }
#top .sec02 ul .items .category span{ letter-spacing: 0.5px; width: calc( 100% / 3 ); font-size: 1rem; padding: 4px; }
#top .sec02 ul .items .bottom{ margin: 35px 20px 45px; }
#top .sec02 ul .items .bottom p{ font-size: 1.4rem; }
#top .sec02 ul .items .bottom h4{ font-size: 1.8rem; padding: 0 10px; }
#top .sec02 ul .items .bottom h4:after{ right: -10px; font-size: 1.3rem; bottom: -2px; }
#top .sec02 ul .items .img_box .num{ right: 20px; bottom: -8px; font-size: 3rem; height: 65px; width: 65px; line-height: 65px; }
#top .sec02 ul .items .img_box .num:after{ height: 63px; width: 63px; }
#top .sec02 ul .items:after{ height: 60px; bottom: 15px; }

.slick-next { right: 18px; }
.slick-prev { left: 18px; }
.slick-next:before { content: url("../images/arrow07.svg"); }
.slick-prev:before { content: url("../images/arrow08.svg"); }


#top .sec03{ margin: 50px 0 100px; overflow: hidden; }
#top .sec03 ul.slider-center2 li{ margin: 0 5px; }
#top .sec03 ul.slider-center2 .slick-prev{ left: 15px; }
#top .sec03 ul.slider-center2 .slick-next{ right: 15px; }
#top .sec03 ul.slider-center2 .slick-prev:before{ content: url("../images/arrow05.svg"); opacity: 1; position: absolute; right: 0; top: -12px; }
#top .sec03 ul.slider-center2 .slick-next:before{ content: url("../images/arrow06.svg"); opacity: 1; position: absolute; left: 0; top: -12px; }
#top .sec03 h4{ text-align: left!important; margin-top: -65px; margin-bottom: 50px; line-height: 1.5em; text-align: left; letter-spacing: 3px; font-size: 2.2rem; }
#top .sec03 .access_box{ display: block;  }
#top .sec03 .access_box .left{ width: 100%; }
#top .sec03 .access_box .right{ width: 100%; }
#top .sec03 dl{ display: block; }
#top .sec03 dl dd,
#top .sec03 dl dt{ width: 100%; }
#top .sec03 dl dd{ margin-bottom: 15px; }
#top .sec03 dl dt{ font-size: 1.4rem; }
#top .sec03 .balloon_box{ margin-top: -10px; }
#top .sec03 .balloon_box .balloon{ width: 100px; height: 100px; border-radius: 100px; margin-right: -30px; line-height: 1.3em; font-size: 1.2rem;}

#top .sec04{ margin-bottom: 100px; }
#top .sec04 h3{ font-size: 2.3rem; margin-bottom: 20px; }
#top .sec04 .news_list li a{ display: block; }
#top .sec04 .news_list li a .date{ width: 100%; margin-bottom: 15px; }
#top .sec04 .news_list li a .text{ line-height: 1.5em; width: 100%; }
#top .sec04 .news_list li a { padding: 35px 0; }
#top .sec04 .news_list li:before{ width: 70px; }

.sub_header{ margin-bottom: 0; }

#work .titlebox{ margin-top: 62px; margin-right: 25px; }
#work .titlebox h2.en span{ padding-left: 20px; font-size: 1.3rem; }
#work .sec01 .worklist_box .worklist:after{ content: none; }
#work .sec01 .worklist_box .worklist:before{ content: none; }
#work .sec01 .worklist_box .worklist li{ width: 100%; padding-bottom: 50px; }
#work .sec01 .worklist_box .worklist li:nth-child(odd){ margin-right: 0; }
#work .sec01 .worklist_box .worklist li:nth-child(1){ padding: 50px 0; }
#work .sec01 .worklist_box .worklist li:nth-child(2){ padding: 0px 0 50px; }
#work .sec01 .worklist_box .worklist li .category{ margin-left: 0; margin-right: 0; }
#work .sec01 .worklist_box .worklist li .category .post-categories{ margin-left: 0; margin-right: 0; }
#work .sec01 .worklist_box .worklist li .category .post-categories li a{ font-size: 1rem; }
#work .sec01 .worklist_box .worklist li h3{ padding: 0 15px; }
#work .sec01 .worklist_box .worklist li p{ padding: 0 15px; line-height: 1.7em; }
#work .sec01 .worklist_box .worklist li .imgbox img{ height: 180px; }
#work .sec01 .pagination_leftbox{ width: 100%; margin-right: 0; }
#work .sec01 .pagination_leftbox ul{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#work .sec01 .pagination_rightbox{ display: none; }


#work_detail .work_box{ border: none; }
#work_detail .work_box .work_inner{ margin: 0; padding: 0; }
#work_detail .work_box .work_inner .intitle_box{ margin-left: -25px; margin-right: -25px; padding: 50px 45px 30px; }
#work_detail .work_box .work_inner .intitle_box h3{ line-height: 1.2em; font-size: 2.2rem; }
#work_detail .work_box .work_inner .intitle_box h3:after{ right: -20px; font-size: 1.4rem; bottom: 0; }
#work_detail .work_box .work_inner .intitle_box .client{ margin-bottom: 15px; }
#work_detail .work_box .work_inner .intitle_box .box{ padding: 0 10px; }
#work_detail .work_box .work_inner .category{ margin-left: -1px; margin-right: -1px; }
#work_detail .work_box .work_inner .category .post-categories li a{ padding: 4px; width: 100%; font-size: 1.1rem; }
#work_detail .work_box .work_inner .article h4, 
#work_detail .work_box .work_inner .article h5, 
#work_detail .work_box .work_inner .article h6, 
#work_detail .work_box .work_inner .article p{ padding: 0 20px; }
#work_detail .work_box .work_inner .article p{ font-size: 1.4rem; }
#work_detail .work_box .work_inner .article h4{ margin-bottom: 15px; line-height: 1.5em; }
#work_detail .work_box .work_inner .article, #work_detail .work_box .work_inner .article img{ padding: 40px 0; }
#work_detail .work_box .topimg { margin-top: 0; width: calc( 100% + 50px ); margin-left: -25px; }
#work_detail .work_box .work_inner .article .btn{ width: calc( 100% + 2px ); margin-left: -1px; margin-right: -1px; }
#work_detail .work_box .work_inner .article .making{ padding: 0 20px; }
#work_detail .work_box .work_inner .article .making table{ margin: auto; font-size: 1.3rem; }
#work_detail .work_box .work_inner .article .making table th{ font-size: 1.1rem; letter-spacing: 1.5px; padding-right: 25px; width: auto; }
#work_detail .work_box .work_inner .article .making table td{ font-size: 1.1rem; letter-spacing: 1.5px; }
#work_detail .work_box .work_inner .article .making table tr:nth-child(-n+2) th{ margin-bottom: 15px; }
/*#work_detail .sec02 ul .items{ margin: 0 10px; }
#work_detail .sec02 ul .items .category{ padding: 0 5px; }
#work_detail .sec02 ul .items .category span{ font-size: 1rem; padding: 4px 0px; }
#work_detail .sec02 .slick-prev{ left: 19px; }
#work_detail .sec02 .slick-next{ right: 19px; }
#work_detail .sec02 ul .items .img_box .num{ right: 20px; bottom: 20px; font-size: 3rem; height: 65px; width: 65px; line-height: 65px; }
#work_detail .sec02 ul .items .img_box .num:after{ height: 63px; width: 63px; background: repeating-linear-gradient(-45deg, #fff, #fff 4.5px, #000 4.5px, #000 7px);}
*/
#work_detail .sec02 .box ul .items{ margin: 0 15px 10px; }
#work_detail .sec02 .box ul .items .category{ height: 19px; overflow: hidden; left: 0; right: 0; margin: auto; }
#work_detail .sec02 .box ul .items .category span{ letter-spacing: 0.5px; width: calc( 100% / 3 ); font-size: 1rem; padding: 4px; }
#work_detail .sec02 .box ul .items .bottom{ margin: 35px 20px 45px; }
#work_detail .sec02 .box ul .items .bottom p{ font-size: 1.4rem; }
#work_detail .sec02 .box ul .items .bottom h4{ font-size: 1.8rem; padding: 0 10px; }
#work_detail .sec02 .box ul .items .bottom h4:after{ right: -10px; font-size: 1.3rem; bottom: -2px; }
#work_detail .sec02 .box ul .items .img_box .num{ right: 20px; bottom: -8px; font-size: 3rem; height: 65px; width: 65px; line-height: 65px; }
#work_detail .sec02 .box ul .items .img_box .num:after{ height: 63px; width: 63px; }
#work_detail .sec02 .box ul .items:after{ height: 60px; bottom: 15px; }


#service .sec01{ padding-top: 130px; }
#service .sec01 h3.en{ font-size: 1.3rem; margin-bottom: 13px; }
#service .sec01 h3.ja{ margin-bottom: 50px; font-size: 2.3rem; letter-spacing: 7px; }
#service .sec01 p{ text-align: left; }
#service .sec02{ margin-top: 60px; }
#service .sec03{ margin-top: 100px; }
#service .sec04{ margin-top: 100px; }
#service .sec05{ margin-top: 100px; margin-bottom: 100px; }
#service section .sevice_box .num{ width: 65px; height: 65px; line-height: 65px; }
#service section .sevice_box .num:after{ width: 65px; height: 65px; }
#service section .sevice_box h4.en{ font-size: 1.2rem; }
#service section .sevice_box h4.ja{ font-size: 2.1rem; letter-spacing: 7px; }
#service section .sevice_box .img_box{ margin: 40px 0; }
#service section .sevice_box .img_box img{ max-height: 100%; }
#service section .sevice_box .text_box h5{ font-size: 1.8rem; letter-spacing: 4px; }
#service .sec02 .sevice_box .btn_box .btn{ max-width: 100%; }

#philosophy .sec01{ background-size: 100% auto; background-position: 10px 6%; }
#philosophy .sec01 h3.en{ margin-bottom: 30px; font-size: 2.3rem; text-align: center; }
#philosophy .sec01 .philosophy_box1{ padding-top: 130px; }
#philosophy .sec01 .philosophy_box1 .left{ order: 2; width: 100%; text-align: center; }
#philosophy .sec01 .philosophy_box1 .left p{ font-size: 1.6rem; line-height: 1.8em; letter-spacing: 4px; }
#philosophy .sec01 .philosophy_box1 .right{ margin-bottom: 80px; order: 1; width: 100%; text-align: center; }
#philosophy .sec01 .philosophy_box1 .right .en{ width: auto; position: unset; padding: 10px 15px; margin: auto auto 20px; -webkit-transform: rotate(0deg); transform: rotate(0deg); }
#philosophy .sec01 .philosophy_box1 .right .text{ line-height: 1.8em; letter-spacing: 6px; font-size: 2.0rem; padding-right: 0; -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb; }
#philosophy .sec01 .philosophy_box2{ margin-top: 100px; margin-bottom: 100px; }
#philosophy .sec01 .philosophy_box2 ul li{ font-size: 1.3rem; letter-spacing: 1.2px; padding-left: 25px; }
#philosophy .sec01 .philosophy_box2 ul li:before{ width: 12px; }
#philosophy .sec01 .philosophy_box3{ margin-bottom: 100px; }
#philosophy .sec01 .philosophy_box3 .left{ width: 100%; margin-right: 0; order: 2; }
#philosophy .sec01 .philosophy_box3 .right{ margin-bottom: 20px; width: 100%; order: 1; }
#philosophy .sec01 .philosophy_box3 .left table td{ padding: 0 0 25px;  position: relative; width: 100%; display: block; }
#philosophy .sec01 .philosophy_box3 .left table th{ padding: 25px 0 10px; width: 100%; display: block; border-bottom: none; }
#philosophy .sec01 .philosophy_box3 .left table th:before{ content: none; }
#philosophy .sec01 .philosophy_box3 .left table td:before{ content: ""; position: absolute; height: 1px; background: #000; width: 25px; bottom: -1px; left: 0;}
#philosophy .sec01 .philosophy_box3 .left table tr:last-child td:before{ content: none; }
#philosophy .sec01 .philosophy_box3 .map{ margin-top: 30px; }
#philosophy .sec01 .philosophy_box3 .map iframe{ height: 200px; }


.triangle{ background-image: url("../images/triangle2.png"); background-size: 180%; background-repeat: no-repeat; background-position: top -200px center; }
#recruit .sec01{ padding-top: 130px; padding-bottom: 100px; }
#recruit .sec01 .recruit_box1 .position{ text-align: center; }
#recruit .sec01 .recruit_box1 .position .en{ width: auto; position: unset; padding: 10px 15px; margin: auto auto 20px; -webkit-transform: rotate(0deg); transform: rotate(0deg); }
#recruit .sec01 .recruit_box1 .position .text{ line-height: 1.8em; letter-spacing: 6px; font-size: 2.0rem; padding-right: 0; -webkit-writing-mode:horizontal-tb; -ms-writing-mode:lr-tb; writing-mode:horizontal-tb; }
#recruit .sec01 .recruit_box1{ margin-bottom: 70px; }
#recruit .sec01 .recruit_box1 .position{ padding-bottom: 140px; }
#recruit .sec01 .recruit_box1 .position img{ max-height: 100px; }
#recruit .sec01 .recruit_box1 .position img.img01{ right: -25px; top: 0; }
#recruit .sec01 .recruit_box1 .position img.img02{ right: 0px; bottom: 50px; }
#recruit .sec01 .recruit_box1 .position img.img03{ margin: auto;left: 0; right: 0; bottom: 0; }
#recruit .sec01 .recruit_box1 .position img.img04{ left: -30px; top: 0; }
#recruit .sec01 .recruit_box1 .position img.img05{ left: 0px; bottom: 50px; }
#recruit .sec01 .recruit_box2 h4{ font-size: 2rem; letter-spacing: 4px; }
#recruit .sec01 .recruit_box2 h4 br{ display: none; }
#recruit .sec01 .recruit_box2 p{ font-size: 1.4rem; }
#recruit .sec01 .recruit_box2 img{ margin: 80px 0 30px; }
#recruit .sec01 .recruit_box2 table th,
#recruit .sec01 .recruit_box2 table td{ display: block; width: 100%; }
#recruit .sec01 .recruit_box2 table th{ padding: 0 0 10px; font-size: 1.4rem; }
#recruit .sec01 .recruit_box2 table td{ padding: 0 0 30px; font-size: 1.3rem; }
#recruit .sec01 .recruit_box2 table{ margin-bottom: 30px; }

#contact .form_wrapper th { padding-bottom: 10px; }
#contact .section_wrapper{ padding-top: 100px; padding-bottom: 100px; }
#contact .list-tab { margin: 0 auto 50px; }

#news_detail .sec01{ padding: 0; }
#news_detail .content .date{ font-size: 1.3rem; }
#news_detail .content h3{ font-size: 1.8rem; margin-bottom: 30px; }

#news_detail .pagenation{ margin-top: 100px; }
#news .sec01 .news_list li a{ display: block; }
#news .sec01 .news_list li a .date{ width: 100%; margin-bottom: 15px; }
#news .sec01 .news_list li a h2{ width: 100%; line-height: 1.5em; }
#news .sec01 .news_list li a { padding: 35px 0; }
#news .sec01 .news_list li:before{ width: 70px; }

#contact .form_btn .btn input{ font-size: 1.5rem; width: 100%; }

#top .fv .text2{ line-height: 2; }
#top .fv .text2 span{ letter-spacing: 1px; }
#footer .left .text{ line-height: 2; }
#footer .left .text span{ letter-spacing: 1px; }

.slick-dots li button{ width: 15px; height: 15px; }
#footer .zealox_img{ bottom: 0; }
#top .fv .contact_btn{ position: fixed; width: calc( 100% - 8px); bottom: 4px; right: 4px; left: 4px; }
#top .fv .contact_btn:after{ content: ""; position: absolute; background: none; right: 20px; top: 0; bottom: 0; margin: auto; width: 9px; height: 9px; border-top: 1px solid #fff; border-right: 1px solid #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

#thanks .sec01 h3{ font-weight: 700; font-size: 1.8rem; line-height: 1.5em; margin-bottom: 15px; }
#thanks .sec01 p{ margin-bottom: 40px; font-size: 1.4rem; line-height: 1.5em; }
#thanks .section_wrapper{ padding-top: 100px; }
}

@media screen and (max-width: 559px) {
#top .sec02 ul .items .img_box .inner { max-height: 250px; }
#work_detail .sec02 .box ul .items .img_box .inner{ max-height: 250px; }
}