@charset "UTF-8";

/* htmlにも適用して確実に止める */
html.modal-open,
body.modal-open {
    overflow: hidden !important;
    position: fixed; /* iOS対策: 画面を固定 */
    width: 100%;
    height: 100%;
}

/* モーダルの中身（Lightcase）の設定 */
#lightcase-case {
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch; /* 指に吸い付くスクロール */
    z-index: 2001;
}
@media screen and (min-width: 768px),print {

.lightcase-contentInner {height: 80vh!important;overflow-y: auto;}
html:not([data-lc-type=error]) #lightcase-content .lightcase-contentInner .lightcase-inlineWrap{height: 80vh!important;max-height: 80vh!important;}

body.lightcase-open {
overflow: hidden;
}

#ttlbox .inner-Box{padding: 23.9rem 0 0 0;margin-bottom: -126px;}
#ttlbox .inner-Box h1 .en{line-height: 1.3;margin-bottom: 1.2rem;}

#contents00 {margin: 0 auto;position: relative;padding: 7.1rem 4rem 0 4rem;}
#contents00 .inner-Box {margin: 0 auto;position: relative;width: 800px;}
#contents00 .inner-Box p.text {font-weight: 500;margin-bottom: 1.9rem;position: relative;font-size: 1.6rem;line-height: 2.4;letter-spacing: 0;}

#contents01 {margin: 0 auto 131px;position: relative;padding: 11.1rem 4rem 0 4rem;max-width: 880px;}
#contents01 h2.f-min {font-weight: 500;margin-bottom: 5.4rem;position: relative;font-size: 2.8rem;line-height: 1.6;letter-spacing: 0;text-align: center;}
#contents01 .inner-Box{border-top: #D6D6D6 1px solid;position: relative;margin-bottom: 7.5rem;}
#contents01 .inner-Box::before{content: "";display: block;background: #0097A3;width: 120px;height: 1px;position: absolute;top: -1px;left: 0;}

#contents01 .inner-Box h3{font-size: 2.4rem;color: #0097A3;letter-spacing: 0;font-weight: 500;padding: 23px 0 0;margin-bottom: 26px;}
#contents01 .inner-Box p.text {font-weight: 500;margin-bottom: 3rem;position: relative;font-size: 1.6rem;line-height: 2;letter-spacing: 0.032rem;}

.top-box{margin: 0 auto 103px;padding: 0 4rem;max-width: 1280px;}
.top-box h2{font-size: 2.8rem;line-height: 1.6;letter-spacing: 0;font-weight: 500;text-align: center;margin-bottom: 54px;}
.top-box ul{ display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.top-box ul li{width: 31.5%;margin-right: 2.7%;position: relative;padding-bottom: 27px;margin-bottom: 56px;}
.top-box ul li:nth-child(3n){ margin-right: 0; }
.top-box ul li figure{ }
.top-box ul li figure {width: 100%;aspect-ratio: 378 / 253;overflow: hidden;text-align: center;margin-bottom: 20px;position: relative;}
.top-box ul li figure img { width: 100%; height: 100%; object-fit: cover; display: block; }
.top-box ul li p{ font-size: 1.4rem; line-height: 0.86; letter-spacing: 0; font-weight: 400; margin-bottom: 21px; }
.top-box ul li h3{ font-size: 1.8rem; line-height: 1.42; letter-spacing: 0; font-weight: 500; }
.top-box ul li .ppnnbe{ position: absolute; bottom: 0; right: 0;}

.lightcase-content{ width: 600px; padding: 40px;}
.anchor-head{width: 600px;margin: 0 auto;}
.anchor-head .maincap{margin-bottom: 18px;}
.anchor-head .maincap img{ width: 100%; }
.anchor-head .prf{ position: relative;min-height: 53px;}
.anchor-head h3{font-size: 2rem;line-height: 1.15;letter-spacing: 0;font-weight: 500;}
.anchor-head .yer{border: 1px solid #0097A3;color: #0097A3!important;display: inline-block;position: absolute;top: 0;right: 0;padding: 11px 31px;}
.anchor-head .job{font-size: 1.4rem;line-height: 0.86;letter-spacing: 0;font-weight: 400;margin-bottom: 8px;}
.anchor-head .ttl{font-family: "Zen Kurenaido", sans-serif;text-align: center;font-size: 2.5rem;line-height: 1.02;letter-spacing: 0;font-weight: 400;margin-bottom: 40px;}
.anchor-head .textbox{border-top: #D6D6D6 1px solid;position: relative;margin-bottom: 0.5rem;}
.anchor-head .textbox::before{content: "";display: block;background: #0097A3;width: 120px;height: 1px;position: absolute;top: -1px;left: 0;}
.anchor-head .textbox h4{font-size: 2rem;line-height: 1.5;letter-spacing: 0;font-weight: 500;color: #0097A3!important;padding: 1.6rem 0 2.4rem;}
.anchor-head .textbox p.text{ font-size: 1.4rem; line-height: 2; letter-spacing: 0.028rem; font-weight: 400;}

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

}


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

#contents00 {margin: 0 4vw 18vw;position: relative;padding: 0vw;}
#contents00 .inner-Box {margin: 0 4vw;position: relative;}
#contents00 .inner-Box p.text {font-weight: 500;margin-bottom: 1.9rem;position: relative;font-size: 3.86vw;line-height: 2.4;letter-spacing: 0;}

#contents01 {margin: 0 7vw;position: relative;}
#contents01 h2.f-min {font-weight: 500;margin-bottom: 5vw;position: relative;font-size: 6.46vw;line-height: 1.6;letter-spacing: 0;}
#contents01 .inner-Box{border-top: #D6D6D6 0.24vw solid;position: relative;margin-bottom: 7.5rem;}
#contents01 .inner-Box::before{content: "";display: block;background: #0097A3;width: 28.99vw;height: 0.24vw;position: absolute;top: 0vw;left: 0;}

#contents01 .inner-Box h3{font-size: 6.2vw;color: #0097A3;letter-spacing: 0;font-weight: 500;padding: 5.56vw 0 0;margin-bottom: 6.28vw;}
#contents01 .inner-Box p.text {font-weight: 500;margin-bottom: 3rem;position: relative;font-size: 3.87vw;line-height: 2;letter-spacing: 0.08vw;}

.top-box{margin: 0 auto 7.88vw;padding: 0 3vw;}
.top-box h2{font-size: 5.76vw;line-height: 1.6;letter-spacing: 0;font-weight: 500;text-align: center;margin-bottom: 8.04vw;}
.top-box ul{ display: -webkit-box; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -ms-flexbox; display: flex; -webkit-box-lines: multiple; -moz-box-lines: multiple; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.top-box ul li{width: 49%;margin-right: 2%;position: relative;padding-bottom: 6.52vw;margin-bottom: 13.53vw;}
.top-box ul li:nth-child(2n){ margin-right: 0; }
.top-box ul li figure{ }
.top-box ul li figure {width: 100%;aspect-ratio: 378 / 253;overflow: hidden;text-align: center;margin-bottom: 4.83vw;position: relative;}
.top-box ul li figure img { width: 100%; height: 100%; object-fit: cover; display: block; }
.top-box ul li p{font-size: 3.38vw;line-height: 0.86;letter-spacing: 0;font-weight: 400;margin-bottom: 1.87vw;}
.top-box ul li h3{ font-size: 4.35vw; line-height: 1.42; letter-spacing: 0; font-weight: 500; }
.top-box ul li .ppnnbe{position: absolute;bottom: 0;right: 0;width: 3vw;}

#lightcase-case{width: 80vw!important;}
.lightcase-contentInner,.lightcase-inlineWrap{ width: 100%!important;}
.anchor-head{width: 100%;background: #fff;padding: 5vw;}
.anchor-head .maincap{margin-bottom: 4.35vw;width: 100%;}
#lightcase-content .anchor-head .maincap img{width: 100%!important;}
.anchor-head .prf{position: relative;margin-bottom: 5vw;text-shadow: none;}
.anchor-head h3{font-size: 4.83vw;line-height: 1.15;letter-spacing: 0;font-weight: 500;}
.anchor-head .yer{border: 0.24vw solid #0097A3;color: #0097A3!important;display: inline-block;position: absolute;top: 0;right: 0;padding: 0.66vw 4.49vw;font-size: 3.3vw;}
.anchor-head .job{font-size: 3.38vw;line-height: 0.86;letter-spacing: 0;font-weight: 400;margin-bottom: 1.93vw;}
.anchor-head .ttl{font-family: "Zen Kurenaido", sans-serif;text-align: left;font-size: 5.04vw;line-height: 1.02;letter-spacing: 0;font-weight: 400;margin-bottom: 3.66vw;text-shadow: none;}
.anchor-head .textbox{border-top: #D6D6D6 0.24vw solid;position: relative;margin-bottom: 0.5rem;}
.anchor-head .textbox::before{content: "";display: block;background: #0097A3;width: 28.99vw;height: 0.24vw;position: absolute;top: 0vw;left: 0;}
.anchor-head .textbox h4{font-size: 4.13vw;line-height: 1.5;letter-spacing: 0;font-weight: 500;color: #0097A3!important;padding: 1.6rem 0 2.4rem;text-shadow: none;}
.anchor-head .textbox p.text{font-size: 2.98vw;line-height: 2;letter-spacing: 0.07vw;font-weight: 400;text-shadow: none;}



}