@charset "UTF-8";
html{overflow-y:visible}
body{background-color:#fff}
body,div,p,li,dt,dd{font-family:'Zen Maru Gothic',sans-serif;font-weight:500;font-size:1.6rem;line-height:1.8;letter-spacing:.05em;color:#707070;z-index:10}
h1,h2,h3,h4{font-family:'Zen Maru Gothic',sans-serif;font-weight:600}
.txt{font-family:"游ゴシック体",YuGothic,"游ゴシック","Yu Gothic",sans-serif;font-weight:700;font-size:16px}
.sp{display:block!important}
.tb{display:none!important}
.pc{display:none!important}

@media (min-width: 768px) {
.txt{font-size:20px}
.sp{display:none!important}
.tb{display:block!important}
.tb.pc{display:block!important}
}

@media (min-width: 992px) {
.sp.tb{display:none!important}
.tb{display:none!important}
.pc{display:block!important}
}
.scroll_up{transition:.8s ease-in-out;transform:translateY(30px);opacity:0}
.scroll_up.on{transform:translateY(0);opacity:1}
header{width:100%;height:80px;box-shadow:0 8px 16px -2px rgba(10,10,10,0.1),0 1px 6px 0 rgba(0,0,0,0.16);position:fixed;top:0;z-index:50}
.header-cheese{display:none}

/* SPナビ関係
  ================================================ */
@media(max-width: 767px) {
header{height:56px}
nav.global-nav{display:none}
.sp__nav{position:fixed;top:0;left:0;width:100%;height:56px;background-color:#fff;z-index:50}
.header-insta-icon__sp{flex-basis:24px;margin-left:auto;margin-right:0}
.sp__nav .container{display:flex;justify-content:space-between;align-items:center;padding:0 0 0 16px}
.sp__nav__h1 a{display:flex;align-items:center;gap:4px;margin-top:13px}
.h1-ttl-01{font-size:12px}
.h1-ttl-02{font-size:18px}
.sp__nav__h1 img{width:100%}
.global-nav__list li{font-family:'Zen Maru Gothic',sans-serif;font-weight:600;font-size:20px;padding:0 4px;text-align:center}
.global-nav__list li a{display:block;line-height:60px;cursor:pointer;color:#707070}
.global-nav__list li::before{content:""}
.global-nav__list li a::before{display:inline-block;width:18px;height:18px;background-image:url(../../images/nav_icon.png);background-size:contain;vertical-align:middle;margin-right:8px;margin-top:-3px}
.drawer{background-size:72px;width:56px;height:56px;position:fixed;top:0;right:0;z-index:100}
.drawer-hidden{display:none}
.drawer-open{display:flex;height:56px;width:56px;justify-content:center;align-items:center;position:relative;z-index:100;cursor:pointer;background-size:72px}
.drawer-open span,.drawer-open span:before,.drawer-open span:after{content:'';display:block;height:2px;width:25px;border-radius:3px;background:#707070;transition:.5s;position:absolute;top:18px;right:15px}
.drawer-open span:before{right:0;top:17px}
.drawer-open span:after{top:8px;right:0}
.drawer-content{width:100%;height:100%;position:fixed;top:0;left:100%;z-index:50;background:#FBE2ED;transition:.5s;padding:0 16px}
.drawer-content .inner{padding:110px 4px 0}
#drawer-check:checked ~ .drawer-open span{background:rgba(255,255,255,0)}
#drawer-check:checked ~ .drawer-open span::before{top:10px;transform:rotate(45deg)}
#drawer-check:checked ~ .drawer-open span::after{top:10px;transform:rotate(-45deg)}
#drawer-check:checked ~ .drawer-content{left:0}
}

@media (min-width: 768px) {
.sp__nav{display:none}
.global-nav{display:block;height:80px;width:100%;background-color:#fff;position:fixed;top:0;z-index:50;min-width:1380px}
.global-nav__list{font-family:'Zen Maru Gothic',sans-serif;font-weight:600}
.global-nav__list li{font-size:20px;font-weight:700;display:inline-block;margin:0 15px;letter-spacing:0;line-height:80px;color:#707070}
.global-nav__list li:last-child{margin-right:0}
.global-nav__list li a{position:relative;display:inline-block;cursor:pointer}
.global-nav__list li a::after{position:absolute;bottom:0;left:0;content:'';width:0;height:2px;background-color:#f8cde0;transition:.3s}
.header-cheese{position:absolute;top:0;right:0;display:block;width:115px;z-index:50}
.global-nav__list li a:hover::after{width:100%}
.global-nav.fixed{position:fixed;top:0;z-index:100;margin:0}
.global-nav__container{display:flex;align-items:center;justify-content:space-between;max-width:100%!important;padding:0 40px!important;width:100%}
.global-nav__h1{width:440px}
.global-nav__h1 a{display:flex;align-items:center;gap:12px}
.h1-ttl-01{font-size:20px}
.h1-ttl-02{font-size:32px}
}

main{margin-top:56px}
section{padding:60px 0}
section .container{max-width:1120px;padding:0 20px;margin:auto}
.mv{padding:0;background-image:url(../../images/mv_sm.jpg);background-position:center;background-size:cover;position:relative;height:490px}
.mv::before{content:"";display:block;position:absolute;background-color: rgb(255 255 255 / 70%);width:100%;height:490px;z-index:10}
.mv__inner{padding:40px 12%;display:flex;align-items:center;justify-content:center;height:490px}
.mv__inner__container{position:relative;z-index:10}
.mv__ttl{font-size:28px;line-height:1.5;margin-bottom:24px}
.mv__sub{text-align:justify}
.facility{background-color:#F8CDE0}
.facility__wrap{display:flex;flex-flow:column;gap:20px}
.facility__wrap__info__h3{margin-bottom:12px}
.facility__ul{margin:15px 0 0 22px;list-style-type:disc}
.facility__ul li{margin-top:5px}
.work h2{margin-bottom:12px}
.works{display:flex;flex-flow:column;gap:20px;margin-bottom:40px}
.works:last-child{margin:0}
.works__info__h3{margin-bottom:4px}
.schedule{background-color:#F8CDE0}
.schedule h2{margin-bottom:12px}
.schedule__flow{display:flex;flex-flow:row;flex-wrap:wrap;justify-content:center;gap:20px 6px;margin-bottom:60px}
.schedule__flow__icon{width:29%;text-align:center}
.schedule__flow__icon img{width:80px}
.schedule__flow__icon__h3{font-size:13px;font-weight:600;line-height:1.5;margin-top:8px}
.schedule__flow__arrow{width:8px;padding-top:33px}
.use__flow__step{background-color:#fff;margin-bottom:16px;display:flex;align-items:center;padding:8px 16px;gap:12px}
.use__flow__step:last-child{margin:0}
.use__flow__step .step{font-size:16px;font-weight:600}
.use__flow__step .index{font-size:18px;font-weight:600}
.about h2{margin-bottom:12px;text-align:center}
.contact-wrap{margin-bottom:32px}
.contact-wrap__info{margin-bottom:20px}
.contact-wrap__info h3{margin-bottom:12px}
.contact-wrap__info__add{margin-bottom:20px}
.contact-wrap__info__tel{display:flex;align-items:center;gap:8px}
.contact-wrap__info__tel__icon img{width:24px}
.contact-wrap__info__tel__num{text-decoration:none}
.contact-wrap__info__mail{font-size:16px;font-weight:600;display:flex;align-items:flex-end}
.contact-wrap__info__mail .mailto{font-size:20px}
.footer{background-color:#FBE2ED}
.footer .container{padding:20px 0}
.footer__inner{display:flex;align-items:center;justify-content:center;gap:8px}
.footer__inner__info-01{font-size:12px}
.footer__inner__info-02{font-size:18px}

@media (min-width: 768px) {
main{margin-top:80px}
.h2-top img{max-width:215px}
section{padding:80px 0}
.mv{height:820px;background-image:url(../../images/mv_lg.jpg)}
.mv::before{background-color:transparent}
.mv__inner{height:100%;padding:0 5%}
.mv__inner__container{margin-left:calc(100vw - 66%)}
.mv__ttl{font-size:48px;margin-bottom:28px}
.facility__wrap{flex-flow:row;gap:72px;align-items:center}
.facility__wrap__info{flex:1}
.facility__wrap__photo{width:480px}
.works{flex-flow:row;align-items:center;gap:56px;margin-bottom:48px}
.works-reverse{flex-flow:row-reverse}
.works__photo{width:400px}
.works__info{flex:1}
.works__info__h3{margin-bottom:12px}
.schedule h2{margin-bottom:24px}
.schedule__flow{gap:7px}
.schedule__flow__icon{width:150px}
.schedule__flow__icon img{width:100%}
.schedule__flow__icon__h3{font-size:20px}
.schedule__flow__arrow{width:18px;padding-top:61px}
.use__flow__step{padding:12px 56px;margin-bottom:20px}
.use__flow__step .step{font-size:24px}
.use__flow__step .index{font-size:32px}
.about h2{text-align:center;margin-bottom:40px}
.contact-wrap{display:flex;margin-bottom:56px;align-items:center}
.contact-wrap__info{flex:1;margin:0}
.contact-wrap__info h3{margin-bottom:12px}
.contact-wrap__info__add{margin-bottom:32px}
.contact-wrap__info__tel__icon img{width:24px}
.contact-wrap__info__mail{font-size:20px}
.contact-wrap__info__mail .mailto{font-size:24px}
.contact-wrap__photo{width:480px}
.footer .container{padding:50px 0}
.footer__inner{gap:20px}
.footer__inner__info-01{font-size:20px}
.footer__inner__info-02{font-size:28px}
}

.delay-time01{animation-delay:.5s}
.delay-time02{animation-delay:1s}
.delay-time03{animation-delay:1.5s}
.delay-time04{animation-delay:2s}
.box{opacity:0}
.fadeUp{animation-name:fadeUpAnime;animation-duration:1.5s;animation-fill-mode:forwards;opacity:0}

@keyframes fadeUpAnime {
from{opacity:0;transform:translateY(100px)}
to{opacity:1;transform:translateY(0)}
}

.fadeDown{animation-name:fadeDownAnime;animation-duration:2s;animation-fill-mode:forwards;opacity:0}

@keyframes fadeDownAnime {
from{opacity:0;transform:translateY(-100px)}
to{opacity:1;transform:translateY(0)}
}