@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@400;500;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap&subset=japanese);
abbr,address,article,aside,audio,b,blockquote,body,caption,cite,code,dd,del,dfn,dialog,div,dl,dt,em,fieldset,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0;list-style:none}
html{position:relative;overflow-y:scroll;background:#fff;-ms-overflow-style:scrollbar}
html.nav-open{overflow:hidden}
body{position:relative;padding-top:0;color:#333;font-size:16px;line-height:1.666;font-family:'Zen Kaku Gothic Antique','ヒラギノ角ゴ ProN W3',Hiragino Kaku Gothic ProN,Arial,Meiryo,sans-serif}
body.nav-open{overflow:hidden}
body.modal-open{padding-right:0!important}
.sans{font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue','Noto Sans JP','ヒラギノ角ゴ ProN W3',Hiragino Kaku Gothic ProN,Arial,Meiryo,sans-serif}
.serif{font-family:'Noto Serif JP',"ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",HiraMinProN-W3,"HGS明朝E","ＭＳ Ｐ明朝","MS PMincho",serif}
.t_font{font-family:Poppins,sans-serif;font-weight:500}
.ltsn{letter-spacing:normal}
.lh2{line-height:2}
strong{font-weight:700}
.x-small{font-size:12px}
.small{font-size:14px}
.middle{font-size:16px}
.large{font-size:18px}
.x-large{font-size:20px}
.x2-large{font-size:22px}
.x3-large{font-size:24px}
.x4-large{font-size:26px}
.x5-large{font-size:28px}
.max-large{font-size:64px}
.italic{font-style:italic}
img{max-width:100%;height:auto;vertical-align:bottom;border:none}
img.frame{padding:8px;background-color:#fff;border:1px solid #eee;-webkit-box-shadow:1px 1px 3px rgba(0,0,0,.15);-moz-box-shadow:1px 1px 3px rgba(0,0,0,.15);box-shadow:1px 1px 3px rgba(0,0,0,.15)}
.white{color:#fff}
.red{color:#dd3229}
.blue{color:#006db9}
.lblue{color:#47b3ff}
.pink{color:#edafc3}
.yellow{color:#ffe201}
.orange{color:#dd8728}
.green{color:#23932c}
.gray{color:#b2b2b2}
.bk{color:#333}
.p_color{color:#029840}
.p2_color{color:#47b3ff}
.f-right{float:right;margin-left:15px!important}
.f-left{float:left;margin-right:15px!important}
.pointer{cursor:pointer}
.clear{clear:both}
.mb0{margin-bottom:0!important}
.mb5{margin-bottom:5px!important}
.mb10{margin-bottom:10px!important}
.mb15{margin-bottom:15px!important}
.mb20{margin-bottom:20px!important}
.mb25{margin-bottom:25px!important}
.mb30{margin-bottom:30px!important}
.mb40{margin-bottom:40px!important}
.mb50{margin-bottom:50px!important}
.mb60{margin-bottom:60px!important}
.mb70{margin-bottom:70px!important}
.mb80{margin-bottom:80px!important}
.mt5{margin-top:5px!important}
.mt10{margin-top:10px!important}
.mt20{margin-top:20px!important}
.mt30{margin-top:30px!important}
.pad10{padding:10px}
.pad15{padding:15px}
.pad20{padding:20px}
.pad30{padding:30px}
.pad40{padding:40px}
.pad50{padding:50px}
.pr05{padding-right:5px!important}
.pr10{padding-right:10px!important}
.pr15{padding-right:15px!important}
.pl05{padding-left:5px!important}
.pl10{padding-left:10px!important}
.pl15{padding-left:15px!important}
.pt5{padding-top:5px!important}
.pt10{padding-top:10px!important}
.pt20{padding-top:20px!important}
.pt30{padding-top:30px!important}
.pt40{padding-top:40px!important}
.pt50{padding-top:50px!important}
.pb5{padding-bottom:5px!important}
.pb10{padding-bottom:10px!important}
.pb20{padding-bottom:20px!important}
.pb30{padding-bottom:30px!important}
.pb40{padding-bottom:40px!important}
.pb50{padding-bottom:50px!important}
.space{display:inline-block}
.space-12{padding-left:12.6em}
.space-11{padding-left:11.55em}
.space-10{padding-left:10.5em}
.space-9{padding-left:9.45em}
.space-8{padding-left:8.4em}
.space-7{padding-left:7.35em}
.space-6{padding-left:6.3em}
.space-5{padding-left:5.25em}
.space-4{padding-left:4.2em}
.space-3{padding-left:3.15em}
.space-2{padding-left:2.1em}
.space-1{padding-left:1.05em}
.w20{width:20%}
.w25{width:25%}
.w30{width:30%}
.w33{width:33.33333333%}
.w50{width:50%}
.w60{width:60%}
.w70{width:70%}
.w80{width:80%}
.w100{width:100%}
a{font-size:100%;vertical-align:baseline}
a:link,a:visited{color:#029840!important;text-decoration:underline}
a:active,a:focus,a:hover{color:#029840!important;text-decoration:none}
a.opacity img{box-shadow:#000 0 0 0}
body.pc a.opacity{transition:opacity .3s ease-in-out}
body.pc a.opacity:hover{opacity:.6}
.indent{padding-left:1em;text-indent:-1em}
.indent span.icon{display:inline-block;width:1em;text-indent:0}
.indent-icon{position:relative;padding-left:1.2em}
.indent-icon::after{position:absolute;font-family:"Font Awesome 5 Free";font-weight:900;top:0;left:0;color:#029840}
.indent-icon.dot::after{content:"\f111"}
.indent-icon.check::after{content:"\f00c"}
.bb{padding-bottom:10px;border-bottom:2px solid #ddd}
a.btn{position:relative;display:inline-block;min-width:250px;padding:0 70px 0 35px;color:#fff!important;text-decoration:none;text-align:left;font-weight:500;line-height:80px;background:#333;border:none;border-radius:0;letter-spacing:.05em;opacity:1;transition:opacity .3s ease-in-out}
a.btn:not(.no_icon)::after{content:'';position:absolute;top:50%;right:25px;background:url(../images/icon_link.png) center center no-repeat;background-size:contain;width:17px;height:9px;transform:translate3d(0,-50%,0)}
a.btn.bd{color:#029840!important;background:#fff;border:1px solid #029840}
a.btn.bd.w{border:none}
body.pc a.btn:hover{opacity:.6}
.m_center{display:table;margin-right:auto;margin-left:auto}
.lh2{line-height:2!important}
.lightcase-open a{color:#fff!important}
@media screen and (max-width:991px){
body{padding-top:0}
.text-center.left-sm{text-align:left!important}
.max-large{font-size:48px}
}
@media screen and (min-width:768px) and (max-width:991px){
.md-mb5{margin-bottom:5px!important}
.md-mb10{margin-bottom:10px!important}
.md-mb15{margin-bottom:15px!important}
.md-mb20{margin-bottom:20px!important}
.md-mb25{margin-bottom:25px!important}
.md-mb30{margin-bottom:30px!important}
.md-mb40{margin-bottom:40px!important}
.md-mb50{margin-bottom:50px!important}
.md-mb60{margin-bottom:60px!important}
.md-mt10{margin-top:10px!important}
.md-mt20{margin-top:20px!important}
.md-mt30{margin-top:30px!important}
.md-w90{width:90%}
.md-w75{width:75%}
.md-w60{width:60%}
.md-w50{width:50%}
.md-w40{width:40%}
.md-w30{width:30%}
.md-w25{width:25%}
}
@media screen and (max-width:767px){
body{padding-top:0;font-size:15px;line-height:1.6}
.x-small{font-size:11px}
.small{font-size:13px}
.middle{font-size:15px}
.large{font-size:17px}
.x-large{font-size:19px}
.x2-large{font-size:21px}
.x3-large{font-size:23px}
.x4-large{font-size:25px}
.x5-large{font-size:27px}
.max-large{font-size:30px}
.max-large{font-size:44px}
.xs-mb5{margin-bottom:5px!important}
.xs-mb10{margin-bottom:10px!important}
.xs-mb15{margin-bottom:15px!important}
.xs-mb20{margin-bottom:20px!important}
.xs-mb25{margin-bottom:25px!important}
.xs-mb30{margin-bottom:30px!important}
.xs-mb40{margin-bottom:40px!important}
.xs-mb50{margin-bottom:50px!important}
.xs-mt10{margin-top:10px!important}
.xs-mt20{margin-top:20px!important}
.xs-mt30{margin-top:30px!important}
.text-center.left-xs{text-align:left!important}
.left-sm.center-xs,.text-right.center-xs{text-align:center}
.xs-text-left{text-align:left}
.btn{padding:10px}
a.btn{min-width:inherit;width:100%}
.text-center.left-xs{text-align:left}
.xs-w100{width:100%!important}
.xs-w75{width:75%!important}
.xs-w60{width:60%!important}
.xs-w50{width:50%!important}
.xs-w40{width:40%!important}
.xs-w30{width:30%!important}
.xs-w25{width:25%!important}
}
.pen{pointer-events:none}
body.mobile .pen{pointer-events:inherit}
.fadein{opacity:0;transition:opacity 2s cubic-bezier(.075,.82,.165,1) .25s}
.fadein.scrollin{opacity:1}
.fadein_y_u{opacity:0;transform:translate3d(0,40px,0);transition:opacity 2s cubic-bezier(.075,.82,.165,1),transform 2s cubic-bezier(.075,.82,.165,1)}
.fadein_y_u.scrollin{opacity:1;transform:translate3d(0,0,0)}
.fadein_y_d{opacity:0;transform:translate3d(0,-40px,0);transition:opacity 2s cubic-bezier(.075,.82,.165,1),transform 2s cubic-bezier(.075,.82,.165,1)}
.fadein_y_d.scrollin{opacity:1;transform:translate3d(0,0,0)}
.fadein_x_r{opacity:0;transform:translate3d(-50px,0,0);transition:opacity 2s cubic-bezier(.075,.82,.165,1),transform 2s cubic-bezier(.075,.82,.165,1)}
.fadein_x_r.scrollin{opacity:1;transform:translate3d(0,0,0)}
.fadein_x_l{opacity:0;transform:translate3d(50px,0,0);transition:opacity 2s cubic-bezier(.075,.82,.165,1),transform 2s cubic-bezier(.075,.82,.165,1)}
.fadein_x_l.scrollin{opacity:1;transform:translate3d(0,0,0)}
.container-fluid{max-width:1170px}
.container-fluid.max{max-width:inherit;width:100%;padding:0}
h1,h2,h3,h4,h5,h6{font-weight:inherit;line-height:1.6}
.headline-outer{margin-bottom:50px}
.headline{position:relative;padding-bottom:.75em;font-size:32px;font-weight:700;text-align:center;line-height:1;letter-spacing:.05em}
.headline::after,.headline::before{position:absolute;content:'';width:200px;height:3px;left:50%;bottom:0;background:#029840;transform:translate3d(-50%,0,0)}
.headline::after{width:100px;background:#ccc;transform:translate3d(0,0,0)}
.headline01{font-size:36px;line-height:.8}
.headline02{font-size:30px;line-height:1}
.headline03{font-size:24px;line-height:1.2}
.headline-en{font-size:13px;letter-spacing:.1em}
.headline-ll{padding:.2em 0 .2em .5em;border-left:5px solid #029840}
.headline-ul{padding-bottom:10px;border-bottom:1px solid #ddd}
.line-left{padding-left:5px;border-left:3px solid #0061ac}
.line-bottom{padding-bottom:10px;border-bottom:1px dotted #ccc}
.bread{background:#f3f3f3}
.breadcrumb{margin:0;padding-right:0;padding-left:0;background-color:transparent;color:#999!important;font-size:12px}
.breadcrumb-item+.breadcrumb-item::before,.breadcrumb-item.active{color:#999!important}
@media screen and (max-width:1024px){
.headline-outer{margin-bottom:30px}
.headline01{font-size:32px}
.headline02{font-size:24px}
.headline03{font-size:18px}
}
@media screen and (max-width:767px){
.breadcrumb{padding:10px 0;font-size:10px}
.headline{padding-bottom:15px}
.headline-outer{margin-bottom:30px}
.headline-ll{line-height:1.4}
.headline01{font-size:28px}
.headline02{font-size:21px}
.headline03{font-size:17px}
.headline-en{font-size:12px}
}
ul.normal{list-style-type:disc}
ul.normal li{margin:0 0 10px 20px;list-style-type:disc}
ul.normal.dot_line li{margin:0 0 10px 20px;padding-bottom:10px;list-style-type:disc;border-bottom:1px solid #ddd}
.table td ul.normal li{margin-bottom:0}
ol.normal{list-style-type:decimal}
ol.normal li{margin:0 0 0 22px;list-style-type:decimal}
ol.normal.dot_line li{margin:0 0 10px 20px;padding-bottom:10px;border-bottom:1px solid #ddd}
ol.normal li:last-of-type,ul.normal li:last-of-type{margin-bottom:0}
.row-10{margin-left:-5px;margin-right:-5px}
.row-10>div{padding-right:5px;padding-left:5px}
.well{margin:0 auto;padding:19px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05);border-radius:0}
.well_bg_w{margin:0 auto;padding:19px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;box-shadow:inset 0 1px 1px rgba(0,0,0,.05);background:rgba(255,255,255,.8)}
.common_box{padding:30px 50px;border:5px solid #ddd;background:rgba(255,255,255,.7)}
.mobile .shadow_box,.tablet .shadow_box{background:linear-gradient(to bottom,rgba(0,0,0,.15) 0,rgba(0,0,0,0) 15px,rgba(0,0,0,0) 100%),linear-gradient(to top,rgba(0,0,0,.15) 0,rgba(0,0,0,0) 15px,rgba(0,0,0,0) 100%);background-repeat:no-repeat;background-attachment:scroll}
.mobile .shadow_box .inner,.tablet .shadow_box .inner{background:linear-gradient(to bottom,#fff 0,rgba(255,255,255,0) 50px,rgba(255,255,255,0) 100%),linear-gradient(to top,#fff 0,rgba(255,255,255,0) 50px,rgba(255,255,255,0) 100%);background-repeat:no-repeat;background-attachment:local}
.photo-ofi{height:0;display:block;padding-bottom:75%;background-color:#f5f5f5;overflow:hidden;position:relative}
.photo-ofi img{max-width:inherit;max-height:inherit;width:100%;height:100%;object-fit:scale-down;font-family:'object-fit: scale-down;';position:absolute;left:0;top:0}
.of_cover .photo-ofi{background-color:transparent}
.of_cover .photo-ofi img{object-fit:cover;font-family:'object-fit: cover;'}
.g-maps{position:relative;padding-bottom:400px;height:0;overflow:hidden}
.g-maps iframe{position:absolute;top:0;left:0;width:100%!important;height:100%!important;padding:4px;border:1px solid #eee;background-color:#fff}
.g-maps.no_bd iframe{padding:0;border:none}
@media screen and (max-width:991px){
.common_box{padding:30px}
}
@media screen and (max-width:767px){
.common_box{padding:15px}
.g-maps{padding-bottom:75%}
}
.btn.focus,.btn:focus{box-shadow:none}
.img-thumbnail{padding:1px;border-radius:0}
.page-ttl{position:relative;display:flex;align-items:center;width:100%;height:400px;padding-top:100px!important;background-position:0 center;background-size:cover;background-repeat:no-repeat}
.page-ttl::after,.page-ttl::before{content:'';position:absolute;width:100%;height:100%;top:0;left:0;background:rgba(0,0,0,.35);transition:background .5s ease-out}
.page-ttl::after{background:rgba(0,0,0,0)}
.business .page-ttl{background-image:url(../images/business_title_bg.jpg)}
.concept .page-ttl{background-image:url(../images/concept_title_bg.jpg)}
.company .page-ttl{background-image:url(../images/company_title_bg.jpg)}
.contact .page-ttl{background-image:url(../images/contact_title_bg.jpg)}
.page-ttl h2{position:relative;display:inline-block;width:100%;max-width:1230px;margin:auto;padding:0 15px;font-size:36px;font-weight:500;color:#fff;line-height:.8;text-align:center;vertical-align:middle;letter-spacing:.05em;z-index:2}
.page-ttl h2 .main{display:inline-block;color:#fff;letter-spacing:.1em}
.page-ttl h2 .sub{display:block;margin-top:.65em;padding-top:.85em;font-size:45%;font-style:normal;font-weight:500;letter-spacing:.05em;border-top:6px solid #029840}
@media screen and (max-width:991px){
.page-ttl{height:320px;padding-top:40px}
.page-ttl h2{font-size:30px}
}
@media screen and (max-width:767px){
.page-ttl{height:60vw;padding-top:60px!important;background-position:10% 0}
.page-ttl::after{width:100%}
.page-ttl h2{padding:0 15px;font-size:22px;line-height:1}
}
.common-cont{position:relative;padding:100px 0;overflow:hidden}
main>.common-cont:first-of-type{padding-top:140px}
main>.common-cont:last-of-type{padding-bottom:140px}
@media screen and (max-width:1023px){
article{padding:0}
.common-cont{padding:80px 0}
main>.common-cont:first-of-type{padding-top:120px}
main>.common-cont:last-of-type{padding-bottom:120px}
}
@media screen and (max-width:767px){
.common-cont{padding:50px 0}
main>.common-cont:first-of-type{padding-top:70px}
main>.common-cont:last-of-type{padding-bottom:70px}
}
.common_row .txt_box{display:flex;align-items:center;padding:50px;background:#fff}
.common_row .txt_box .inner{position:relative;width:100%}
.common_row .txt_box p{line-height:2}
.common_row .img_box img{width:100%;height:100%;object-fit:cover;font-family:"object-fit: cover; object-position: 50% 50%;"}
@media screen and (max-width:991px){
.common_row .txt_box{padding:30px}
.common_row .txt_box p{line-height:1.8}
}
@media screen and (max-width:767px){
.common_row .txt_box{padding:30px 15px}
}
dl.common_faq{margin-bottom:50px}
dl.common_faq:last-of-type{margin-bottom:0}
dl.common_faq dt{position:relative;margin-bottom:15px;padding:0 0 10px 30px;font-size:16px;border-bottom:1px dotted #bbb}
dl.common_faq dt::before{content:"Q";position:absolute;top:0;left:0;color:#bbb;font-size:24px;font-family:Georgia,"Times New Roman",Times,serif;line-height:1}
dl.common_faq dd{position:relative;padding:0 0 0 30px;line-height:1.6;overflow:hidden}
dl.common_faq dd::before{content:"A";position:absolute;top:0;left:0;color:#1f49a8;font-size:30px;font-family:Georgia,"Times New Roman",Times,serif;line-height:1}
dl.common_faq dd strong{display:inline-block}
@media screen and (max-width:767px){
dl.common_faq{margin-bottom:30px}
dl.common_faq dd{padding:0 15px 15px 30px}
}
main .table{border:none!important}
main .table th{padding:20px;vertical-align:middle;background:0 0!important;border-top:none!important;border-bottom:1px solid #029840}
main .table:not(.th_auto) th{width:14em}
main .table td{padding:20px;background:0 0!important;border-top:none!important;border-bottom:1px solid #ddd}
@media screen and (max-width:767px){
main .table th{padding:10px}
main .table td{padding:10px}
table.table.mb{border:none!important}
table.table.mb td,table.table.mb th{display:block;width:auto}
table.table.mb th{padding:10px 0 5px!important;border:none!important}
table.table.mb td{padding:0 0 10px!important}
}
.youtube_box{position:relative;width:100%;padding-top:56.25%}
.youtube_box iframe{position:absolute;top:0;right:0;width:100%;height:100%}
.paging{margin-top:20px;text-align:center;line-height:1}
.paging span.current,.paging span.paging-text{margin:0 5px;color:#fff!important;border:1px solid #333;border:1px solid #ddd;zoom:1;display:inline-block;overflow:hidden;text-decoration:none;background-color:#333;background-color:#ddd}
.paging span.paging-text a{padding:8px;display:block;color:#000!important;text-decoration:none;transition:opacity .3s ease}
.paging span.current{background:#029840;border:1px solid #029840;color:#fff;zoom:1;padding:8px;text-decoration:none;display:inline-block;cursor:pointer}
.pc .paging span.paging-text a:hover{background-color:#333;color:#fff!important;text-decoration:none;cursor:pointer;opacity:.6}
@media screen and (max-width:767px){
.table_wrap{overflow-x:auto}
}
.pdf ul.normal.dot_line li{margin:10px 0;padding-bottom:10px;list-style-type:none}
.pdf ul.normal.dot_line li:last-of-type{margin-bottom:0}
.pdf i{color:#c00!important}
.pdf a{display:inline-block;position:relative;padding-left:1.2em}
.pdf a::before{position:absolute;top:0;left:0;width:1em;content:"\f1c1";color:#c00;font-family:"Font Awesome 5 Free";font-weight:900;text-decoration:none!important}
@media screen and (max-width:767px){
.accordion{padding:10px 8px 2px;border:1px solid #ddd;border-radius:8px}
.accordion dt div{position:relative;margin-bottom:0!important;padding-bottom:7px;font-size:14px;cursor:pointer;opacity:.75;border:none}
.accordion dt div::after{content:"\f078";position:absolute;top:40%;right:5px;font-family:"Font Awesome 5 Free";font-weight:900;transform:translate3d(0,-50%,0);line-height:1}
.accordion dt.active div::after{content:"\f077"}
.accordion dd{display:none;margin-top:10px}
}
.simplebar-track.simplebar-vertical{background:#eee;width:10px}
@media screen and (max-width:767px){
.simplebar-track.simplebar-vertical{width:5px}
}
.simplebar-scrollbar{background:#fff}
.simplebar-scrollbar:before{background:#777;border-radius:0;left:0;right:0;opacity:1;transition:.3s opacity cubic-bezier(.33,1,.68,1)}
.simplebar-scrollbar.simplebar-hover:before{opacity:.8}
.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:0;bottom:0}
.youtube_box{position:relative;width:100%;padding-top:56.25%}
.youtube_box iframe{position:absolute;top:0;right:0;width:100%;height:100%}
body.chrome img.chimg{image-rendering:-webkit-optimize-contrast}
.main_header{position:fixed;top:0;left:0;width:100%;height:100px;line-height:1;z-index:100;background:rgba(255,255,255,0);transition:background .3s ease}
.main_header.fixed{background:rgba(255,255,255,.85)!important}
.main_header>.inner{position:relative;width:100%;height:100%;margin:auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between}
.main_header.clone .inner{padding:0;justify-content:center}
.main_header .logo{display:flex;align-items:center;height:100%;z-index:1;font-size:10px}
.main_header .hamburger{position:absolute;top:0;right:5px;height:50px;padding-bottom:15px;z-index:100;display:none}
.main_header .hamburger-inner{background-color:#029840}
.main_header .hamburger-inner::after,.main_header .hamburger-inner::before{background-color:#029840}
.main_header .hamburger::after{position:absolute;content:'MENU';width:30px;bottom:0;left:10px;font-size:10px;font-weight:700;letter-spacing:-.02em;color:#666;text-align:center;letter-spacing:-.05em}
body:not(.home) .main_header{background:rgba(255,255,255,.65)}
@media all and (-ms-high-contrast:none){
.main_header .logo a,::-ms-backdrop{width:100%}
}
.main_header .tel_box{position:absolute;top:0;right:0;width:auto;height:100%;display:flex;justify-content:flex-end;z-index:1;font-size:10px;font-weight:700;color:#fff!important;line-height:1;letter-spacing:0}
.main_header .tel_box .tel{width:auto;height:100%;pointer-events:none;padding:0 20px}
.main_header .tel_box .tel a{width:100%;color:#fff!important;text-decoration:none;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0}
.main_header .tel_box .cb{height:100%}
.main_header .tel_box .cb a{display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;height:100%;padding:0 15px;color:#fff!important;font-size:12px;font-weight:500;text-decoration:none;letter-spacing:.05em;background:#029840;line-height:1}
.main_header .tel_box .cb a i{font-size:200%}
.main_header .tel_box .cb a span{margin-top:.4em}
.mobile .main_header .tel_box .tel{pointer-events:inherit}
@media screen and (max-width:991px){
.main_header>.inner{padding:0 15px}
.main_header .logo{width:30%}
}
@media screen and (max-width:767px){
.main_header{height:60px!important;z-index:999!important}
.main_header::before{width:calc(100% - 60px)}
.main_header>.inner{padding:0 15px 0 0}
.main_header.clone{display:none!important}
.main_header .logo{width:auto;display:flex;align-items:center;margin:0;padding-left:12px;opacity:1!important;visibility:visible!important}
.main_header .hamburger{display:block}
.hamburger.is-active{position:fixed}
.main_header .logo img{width:auto;height:30px}
.main_header .tel_box{display:none;z-index:1}
.nav-open .main_header .tel_box{position:fixed;display:flex;justify-content:center;align-items:center;top:auto;right:0;bottom:0;width:100%;height:50px;padding:0;z-index:100;font-size:15px;text-align:center}
.main_header .tel_box .cb,.main_header .tel_box .tel{width:50%}
.main_header .tel_box .tel{padding:0 20px;background:#fff}
.main_header .tel_box .cb a{flex-direction:row}
.main_header .tel_box .cb a span{margin:0 0 0 .5em}
}
.main_nav_container{height:100%;margin-right:0;padding-top:0;position:relative;z-index:1}
.main_nav_container .inner,.main_nav_container .main_nav{width:100%;height:100%}
.main_nav ul:not(.sub){width:100%;height:100%;padding-right:0;display:flex;justify-content:flex-end}
.main_nav ul:not(.sub)>li{position:relative;height:100%;padding:0 1em}
.main_nav ul:not(.sub)>li>a:not(.contact_btn){position:relative;display:flex;align-items:center;justify-content:center;height:100%;padding:0;color:#333!important;font-size:16px;font-weight:500;text-decoration:none;transition:color .3s ease-out,background .3s ease-out;cursor:pointer}
.main_nav ul:not(.sub)>li>a:not(.contact_btn)::before{content:'';position:absolute;display:inline-block;right:0;bottom:2.2em;width:0%;height:2px;background:#029840;transition:width .3s ease-in-out;z-index:-1}
.main_nav ul:not(.sub)>li>a:not(.contact_btn) .en{display:block;margin-bottom:.4em;font-size:125%;font-weight:700}
.main_nav ul:not(.sub)>li>a:not(.contact_btn) i{color:#029840}
.main_nav ul:not(.sub)>li.on>a>i{padding:0 5px 0 0!important;transform:rotate(180deg)}
.main_nav ul.sub{position:absolute;bottom:0;left:50%;width:8em;font-size:14px;transform:translate3d(-50%,100%,0);opacity:0;visibility:hidden;transition:opacity .3s ease-out,visibility .3s ease-out}
.main_nav ul.sub>li>a{display:block;padding:1em 0;color:#fff!important;font-weight:500;text-align:center;text-decoration:none;background:#333;border-bottom:1px solid #666;transition:background .3s ease-out}
.main_nav ul.sub>li>a.active,.main_nav ul.sub>li>a:hover{color:#fff!important;background:#029840}
.main_nav ul.sub>li:last-of-type>a{border-bottom:none}
.main_nav .child.on ul.sub{opacity:1;visibility:visible;z-index:1}
.main_nav ul:not(.sub)>li.on>a:not(.contact_btn)::before,.main_nav>ul>li.active>a:not(.contact_btn)::before,body.pc .main_nav>ul>li>a:not(.contact_btn):hover::before{right:auto;left:0;width:100%}
@media screen and (max-width:991px){
.main_nav>ul:not(.sub)>li{padding:0 10px}
}
@media screen and (max-width:767px){
.main_nav_container{display:block!important;position:fixed;top:0;left:0;width:100%;height:100%;padding:0;z-index:90;background:rgba(255,255,255,.95);transform:translate3d(100%,0,0);opacity:0;visibility:hidden;transition:all .3s ease-out}
.nav-open .main_nav_container{transform:translate3d(0,0,0);opacity:1;visibility:visible}
.main_nav_container .inner{width:100%;height:100%;margin:0;padding:0 15px;display:flex;align-items:center;justify-content:center}
.main_nav_container .main_nav{height:auto;margin:0;padding:0}
.main_nav ul:not(.sub){height:auto;display:flex;justify-content:center;flex-wrap:wrap;margin:0;padding:0}
.main_nav ul:not(.sub)>li{flex:0 1 100%;margin:0 0 20px;padding:0;text-align:center}
.main_nav ul:not(.sub)>li::before{display:none}
.main_nav ul:not(.sub)>li:last-of-type{margin:0;padding:0}
.main_nav ul:not(.sub)>li>a:not(.contact_btn){display:inline-block;height:auto;padding:.5em 0 .8em;font-size:18px;font-weight:500;transition:none}
.main_nav ul:not(.sub)>li>a:not(.contact_btn)::before{bottom:5px}
.main_nav ul:not(.sub)>li a.contact_btn{flex-direction:row;width:65%;margin:10px auto 0;padding:15px 25px;font-size:16px!important}
.main_nav ul:not(.sub)>li a.contact_btn i{font-size:20px;margin-right:10px}
.main_nav ul.sub{font-size:14px}
.main_nav ul.sub>li>a{font-size:15px}
}
@media screen and (orientation:landscape) and (max-width:767px){
.main_nav ul:not(.sub){display:flex;justify-content:center;flex-wrap:wrap;margin:0}
.main_nav ul:not(.sub)>li{flex:0 1 33.333%;padding:0}
.main_nav ul:not(.sub)>li>a:not(.contact_btn)::before{bottom:2px}
.main_nav ul.sub{font-size:10px}
}
.slick,.slick2{opacity:0;transition:opacity .3s linear}
.slick.slick-initialized,.slick2.slick-initialized{opacity:1}
.slick-list,.slick-track{height:100%}
.slick-dots{bottom:30px!important;z-index:55!important}
.slick-dots li{margin:0 3px!important;background:0 0!important}
.slick-dots li button:before{font-size:18px!important;opacity:1!important;color:#fff!important}
.slick-dots li.slick-active button:before{color:#029840!important}
.slick_img_box .slick-track{display:flex!important}
.slick_img_box .slick-slide{height:inherit!important}
.slick_img_box .slick-next,.slick_img_box .slick-prev{width:30px;height:30px}
.slick_img_box .slick-next:before,.slick_img_box .slick-prev:before{font-size:30px;color:#029840}
.slick_img_box .slick-prev{left:15px!important;z-index:1!important}
.slick_img_box .slick-next{right:15px!important}
.slick_img_box .slick_thumb{margin-right:-5px;margin-left:-5px}
.slick_img_box .slick_thumb .slick-track{width:100%!important;transform:unset!important;display:flex!important;flex-wrap:wrap}
.slick_img_box .slick_thumb .slick-list{padding:0!important}
.slick_img_box .slick_thumb li{margin:10px 0 0 0!important;width:20%!important;padding:0 5px}
.slick_img_box .slick_thumb li a{display:block;position:relative}
.slick_img_box .slick_thumb li.slick-current a::after{content:'';position:absolute;width:100%;height:100%;top:0;left:0;border:2px solid #029840}
.slick_img_box .slick_thumb li a:focus{outline:0}
_:-ms-lang(x),.slick_thumb .slick-track{transform:none!important}
main{position:relative;overflow:hidden;background:#fff}
.home #top_scroll{position:relative;width:100%;height:65vw;margin-bottom:-1px;background:#fff;overflow:hidden;z-index:2}
.home #top_scroll>ul{position:relative;width:100%!important;height:100%!important;margin-left:0;opacity:1!important}
.home #top_scroll>ul li{height:100%!important}
.home #top_scroll li{background-image:url(../images/main01.jpg);background-position:0 top;background-size:cover;background-repeat:no-repeat}
.home #top_scroll li:nth-child(2){background-image:url(../images/main02.jpg)}
.home #top_scroll li:nth-child(3){background-image:url(../images/main03.jpg)}
.home #top_scroll li:nth-child(4){background-image:url(../images/main04.jpg)}
.home #top_scroll li:nth-child(5){background-image:url(../images/main05.jpg)}
.home #top_scroll .top_scroll_main_txt{position:absolute;top:0;right:0;width:100%;height:100%;padding:100px 5% 0 5%;display:flex;align-items:center;justify-content:flex-start;z-index:50}
.home #top_scroll .top_scroll_main_txt .ttl h2{position:relative;width:70vw;max-width:870px}
.home #top_scroll .top_scroll_main_txt .ttl .t_box{transition-delay:.5s}
.home #top_scroll .sc_btn{position:absolute;bottom:0;padding-bottom:150px;right:1.5%;z-index:55;display:none;overflow:hidden}
.home #top_scroll .sc_btn::before{content:"";position:absolute;top:130px;left:calc(50% - 1px);width:1px;height:150px;background:rgba(255,255,255,.4)}
.home #top_scroll .sc_btn::after{content:'';position:absolute;top:130px;left:calc(50% - 1px);width:1px;height:150px;background:#fff;animation:sdl 3.5s cubic-bezier(1,0,0,1) infinite}
.home.pc #top_scroll{height:100vh}
.home.pc #top_scroll .sc_btn{display:block}
@keyframes sdl{
0%{transform:scale(1,0);transform-origin:0 0}
50%{transform:scale(1,1);transform-origin:0 0}
50.1%{transform:scale(1,1);transform-origin:0 100%}
100%{transform:scale(1,0);transform-origin:0 100%}
}
@media all and (-ms-high-contrast:none){
.home #top_scroll .top_scroll_main_txt .ttl,::-ms-backdrop{text-align:left}
}
@media screen and (max-width:991px){
.home #top_scroll .sc_btn{width:1.5vw}
}
@media screen and (max-width:767px){
.home #top_scroll{min-height:inherit;height:70vw}
.home #top_scroll .sc_btn{display:none}
.home #top_scroll li{background-position:7.5% center!important}
.home #top_scroll .top_scroll_main_txt{padding:60px 10px 0 10px}
.home #top_scroll .top_scroll_main_txt .ttl{width:100%}
.home #top_scroll .top_scroll_main_txt .ttl h2{width:100%}
.home #top_scroll .ov{display:none!important}
}
.en_txt{position:relative}
.home .bg{position:absolute;top:0;left:0;width:100%;height:50vw;max-height:700px;background:url(../images/index_bg.jpg) 0 top no-repeat;background-size:cover}
@media screen and (max-width:767px){
.home .bg{min-height:inherit;height:70vw;background:url(../images/index_bg.jpg) 7.5% top no-repeat;background-size:cover}
}
.common-cont .container-fluid:not(.max){max-width:1170px}
a.link_box{display:flex;align-items:center;justify-content:center;color:#029840!important;font-weight:500;text-decoration:none}
a.link_box img{margin-left:10px}
.home main h3,.home main h4{font-weight:500}
.home #main01{position:relative;padding:90px 0}
.home #main01 .container-fluid{position:relative}
.home #main01 h3{font-size:36px;letter-spacing:.075em}
.home #main01 h3 .min{font-size:66.666%}
@media screen and (max-width:767px){
.home #main01 h3{font-size:30px}
}
.home #main01 .deco{position:absolute;top:-90px;left:0}
@media screen and (max-width:767px){
.home #main01 .deco{left:4px;top:-50px}
.home #main01 .deco img{width:9px}
}
@media screen and (max-width:767px){
.home #main01{padding:50px 0}
}
.home #main01 p.lh2{font-weight:500;letter-spacing:.075em}
@media screen and (max-width:767px){
.home #main01 p.lh2{font-size:15px}
}
.home #main02{position:relative;padding:90px 0 150px}
.home #main02 h3{letter-spacing:.075em}
.home #main02 h3 span{letter-spacing:normal}
.home #main02 h4{line-height:1.8;letter-spacing:.1em}
.home #main02 .bb{font-weight:500;padding-bottom:5px;border-bottom:1px solid #333}
@media screen and (max-width:767px){
.home #main02{padding:50px 0 80px}
}
.home #main02 .b_box{margin-bottom:130px}
@media screen and (max-width:767px){
.home #main02 .b_box{margin-bottom:60px}
}
.home .wn_box .outer{background:#fff}
.home .wn_box .wrap{position:relative}
.home .wn_box table{width:100%;border-top:1px solid #707070}
.home .wn_box table tr{border-bottom:1px solid #707070}
.home .wn_box table td{padding:25px 0;word-wrap:break-word;vertical-align:middle}
.home .wn_box table td.date{position:relative;width:230px;padding-left:0}
.home .wn_box table td.date .new{position:absolute;top:50%;right:45px;padding:0 10px;color:#fff;font-size:12px;font-weight:700;text-align:center;background:#029840;line-height:20px;display:inline-block;margin-left:0;transform:translate3d(0,-50%,0)}
.home .wn_box table td.detail{width:170px}
.home .wn_box table td.detail a{padding:0 15px;color:#fff!important;font-size:16px;text-align:center;background:#012034;line-height:36px;display:inline-block;margin-left:30px;text-decoration:none}
.home .wn_box table td.txt{overflow:hidden;width:auto}
.home .wn_box table td.txt .html{width:calc(100% - 240px);float:left}
.home .wn_box table td.txt .file{width:230px;padding:0 15px;float:right;text-align:center}
.home .wn_box table td.txt .file a{color:#333!important}
.home .wn_box table td.txt .photo-ofi{background-color:transparent}
.home .wn_box table td.txt .photo-ofi img{object-fit:cover;font-family:'object-fit: cover;'}
@media screen and (min-width:768px){
.home.ie .wn_box table td.date{display:flex}
}
@media screen and (max-width:991px){
.home .wn_box table td.txt .html{width:calc(100% - 190px);float:left}
.home .wn_box table td.txt .file{width:180px}
}
@media screen and (max-width:767px){
.home .wn_box .wrap{padding-right:0}
.home .wn_box table td{display:block;width:auto;padding:0;font-size:14px!important}
.home .wn_box table td.date{float:left;width:100%;padding:10px 0 5px}
.home .wn_box table td.txt{clear:both;padding:0 0 15px}
.home .wn_box table td.txt .html{width:100%;float:none}
.home .wn_box table td.txt .file{width:100%;margin-top:5px;padding:0;text-align:right}
.home .wn_box table td.detail a{font-size:12px;line-height:26px}
.home .wn_box table td.date .new{right:0;margin-left:0;font-size:13px!important}
}
#main99{position:relative;padding:60px 0}
#main99 .container-fluid:not(.max){max-width:1500px}
@media screen and (max-width:767px){
#main99{padding:50px 0}
}
#main99 h3{padding-bottom:40px;background:url(../images/icon_ttl_w.png) 10px bottom no-repeat;background-size:29px auto;line-height:.6}
#main99 h3 span{display:inline-block;margin-top:.5em;font-weight:700}
#main99 p{font-weight:500}
body:not(.home) .headline h3{font-weight:500!important}
.business .common_row .txt_box{background:#f3f3f3;font-weight:500}
.business .common_box{font-weight:500}
.business #main01 .indent{padding-left:1.5em;text-indent:-1.5em}
.business #main01 .indent span.icon{width:1.5em}
@media screen and (max-width:767px){
.business #main01 h3{letter-spacing:normal}
}
.business #main02{background:#f3f3f3}
.business #main02 .common_row .txt_box{background:#fff}
.concept #main02{padding:100px 0!important;background:url(../images/concept_main02_bg.jpg) center center no-repeat;background-size:cover}
@media screen and (max-width:767px){
.concept #main02{padding:50px 0!important}
}
.concept #main02 .common_box{line-height:1}
@media screen and (max-width:767px){
.concept #main02 .common_box .headline01{line-height:1.2}
}
.concept #main01 .common_row .txt_box{background:#f3f3f3;font-weight:500}
.company #main00 .mds{display:inline-block;width:6.5em}
.company #main01{background:#f3f3f3}
.company #main01 .table th{border-color:#999!important}
.company #main01 .table td{border-color:#ccc!important}
.company #main03{background:#f3f3f3}
.contact #main01{background:#f3f3f3}
.contact #main01 .common_box strong{letter-spacing:.05em}
.contact #main02 .common_box{font-weight:500}
.contact .form-control:focus{border-color:#029840;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(0,0,0,.075)}
.contact .form-horizontal .checkbox,.contact .form-horizontal .checkbox-inline,.contact .form-horizontal .radio,.contact .form-horizontal .radio-inline{padding-top:0}
.contact.tablet .form-horizontal .checkbox-inline::after,.contact.tablet .form-horizontal .radio-inline::after{content:".";width:0;font-size:0;color:transparent;margin-right:1px}
.contact .form-control{height:auto;padding:12px;font-size:16px;color:#333;background:#f5f5f5;background:#fff;border-color:#f3f3f3;border-color:#ddd;border-width:2px;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}
.contact .form-control.short{display:inline-block;width:100px}
.contact .form-control:-ms-input-placeholder{color:#888}
.contact .form-horizontal .control-label{padding:0;text-align:left}
.contact .btn-original{padding:14px 40px;color:#fff;font-weight:700;border:none;border-radius:0;background-color:#029840;transition:opacity .3s ease-out}
.contact .btn-original.btn_back{background:#999}
.contact.pc .btn-original:hover{opacity:.6}
.contact .has-error .form-control{background-color:#faf5f5}
.contact .checkbox-inline,.contact .radio-inline{margin-right:10px}
.contact .privacy_box{position:relative;border:2px solid #f3f3f3;background:#fff}
.contact .privacy_box .inner{height:300px;overflow:auto}
.contact .privacy_box .inner .wrap{padding:30px 35px 30px 30px}
@media screen and (max-width:991px){
.contact .checkbox-inline,.contact .radio-inline{margin-right:8px}
}
@media screen and (max-width:767px){
.contact #main00 .common_box p{font-size:14px!important}
.contact .form-horizontal{padding:0}
.contact .checkbox-inline,.contact .radio-inline{display:block;margin:0 0 10px}
.contact input,.contact option,.contact select,.contact textarea{font-size:16px}
.contact select{width:100%}
.contact input[type=file]{font-size:12px}
.contact .privacy_box{font-size:12px}
.contact .privacy_box .inner{height:250px}
.contact .privacy_box .inner .wrap{padding:15px 20px 15px 15px}
.contact button.btn{width:100%;padding-right:0;padding-left:0}
}
#footer{position:relative;padding:100px 0;background:url(../images/footer_bg.jpg) center center no-repeat;background-size:cover}
#footer .inner{font-size:14px;font-weight:500}
#footer .inner a{color:#333!important;text-decoration:none}
#footer .inner .logo{margin-bottom:20px}
#footer .inner .adr{width:100%;max-width:285px;margin-bottom:40px;line-height:1.6;text-align:center;font-size:12px;letter-spacing:.05em}
#footer .inner .bnr{text-align:right}
#footer .inner .tel{position:relative;margin-top:0;line-height:1.2}
#footer .copyright{margin-top:15px;padding:0;text-align:right;font-weight:400;font-size:14px;line-height:1}
#footer .bnrs{display:flex;flex-wrap:wrap;justify-content:flex-end;margin-top:40px}
#footer .bnrs li{margin-left:20px}
.mobile #footer .tel{pointer-events:auto}
@media screen and (max-width:991px){
#footer .inner{font-size:14px}
#footer .bnrs{justify-content:flex-start}
#footer .bnrs li{margin-left:10px}
#footer .bnrs li:first-of-type{margin:0}
#footer .copyright{margin-top:40px}
}
@media screen and (max-width:767px){
#footer{padding:0}
#footer .inner{padding:70px 0}
#footer .inner .logo{margin-bottom:10px;text-align:center}
#footer .inner .logo img{width:200px}
#footer .inner .adr{max-width:inherit;margin-bottom:30px;line-height:1.6;text-align:center}
#footer .inner .bnr{margin-top:30px;text-align:center}
#footer .inner .tel{text-align:center;line-height:1.6}
#footer .inner .tel_box{text-align:center}
#footer .inner .tel_box p{margin:0 5px}
#footer .inner .bnrs{width:100%;max-width:280px;margin:40px auto 0 auto;justify-content:center}
#footer .inner .bnrs li{margin-left:0;margin-bottom:15px}
#footer .inner .bnrs li:nth-child(3),#footer .inner .bnrs li:nth-child(4){margin-right:10px;margin-left:10px}
#footer .copyright{margin-top:30px;text-align:center;font-size:12px}
}
.back-top{display:none;position:fixed;right:10px;bottom:10px;cursor:pointer;margin:0;z-index:50}
.back-top img{transition:opacity .6s ease-out}
body.pc .back-top img:hover{opacity:.6}
@media screen and (max-width:767px){
.back-top{right:10px!important;bottom:45px;width:30px}
}
#footer .footer_menu{margin-top:0;margin-bottom:0;padding-top:0;line-height:1;display:flex;justify-content:flex-end}
#footer .footer_menu-list{display:flex;justify-content:flex-end;flex-wrap:wrap}
#footer .footer_menu-list li{margin:0;padding:0 20px;text-align:left;border-left:1px solid #333}
#footer .footer_menu-list li:last-of-type{border-right:1px solid #333}
#footer .footer_menu-list li a{position:relative;font-weight:400;padding-left:0;text-decoration:none;transition:opacity .6s ease-out}
#footer .footer_menu-list li a::before{display:none;font-family:"Font Awesome 5 Free";font-weight:900;color:#029840;font-size:10px;content:"\f054";position:absolute;top:50%;left:0;transform:translateY(-45%)}
@media screen and (max-width:991px){
#footer .footer_menu-list li{padding:0 10px}
}
.pc #footer .footer_menu-list li a:hover{opacity:.6}
@media screen and (max-width:767px){
#footer .footer_menu{width:100%;max-width:270px;margin:30px auto 0;padding:0 15px;justify-content:space-between}
#footer .footer_menu .footer_menu-list{flex-wrap:wrap;flex-direction:row;justify-content:space-between}
#footer .footer_menu-list li{flex:0 1 50%;max-width:50%;width:auto;margin:0;padding:0;border:none!important;margin:0;text-align:left}
#footer .footer_menu-list li a{display:block;padding:14px 0 14px .8em;font-size:14px}
#footer .footer_menu-list li a::before{display:block;transform:translateY(-50%)}
}
@media print{
*{-webkit-print-color-adjust:exact!important;background-attachment:initial!important}
html{overflow:visible!important}
body{zoom:.87!important;min-width:1240px!important;padding-top:0!important;padding-bottom:0!important}
.container,.container-fluid{min-width:1170px!important}
.plx_ym,.plx_yp{transform:none!important}
.fade_action{opacity:1!important;transform:none!important}
.aos-init{opacity:1!important;-webkit-transform:none!important;transform:none!important}
.d-block.d-md-none{display:none!important}
.pbb{page-break-before:always}
.pba{page-break-after:always}
.main_header{position:relative!important;background:#fff!important}
.main_header.clone{display:none!important}
.main_header .logo{width:300px!important}
.home #top_scroll{max-height:inherit;height:700px!important}
.home.ie #top_scroll{min-height:inherit!important;height:650px!important}
.home #top_scroll .top_scroll_main_txt .ttl h2{width:80%!important}
.home #main02::after{display:none!important}
.home #main07 .outer::before{width:3000px;left:-60px}
.main_nav ul:not(.sub)>li{padding:0 6px}
.main_nav ul:not(.sub)>li>a:not(.contact_btn){font-size:12px!important}
body:not(.home) main{background:0 0!important}
body:not(.home) main section::before{display:none!important}
.back-top{display:none!important}
.edge *{color:#333!important}
}