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

.sp_only{display: none;}

.object_contain img{width:100%;height:100%;object-fit:contain;}
.object_cover img{width:100%;height:100%;object-fit:cover;}

.Oswald{font-family: 'Oswald', sans-serif;}


body{background:#1A1A1A;}
.top .sec_hero{position:relative;overflow:hidden;}
.top .sec_hero .mainarea{width:690px;height:690px;margin: 0 auto;border-radius:50%;overflow:hidden;position:relative;z-index:4;}
.top .sec_hero .mainarea .img{width:100%;position:absolute;top:0;transition:0.5s;}
.top .sec_hero .mainarea .img:nth-child(1){left:-100%;}
.top .sec_hero .mainarea .img:nth-child(2){left:0;}
.top .sec_hero .mainarea .img:nth-child(n + 3){left:100%}
.top .sec_hero .mess{width:410px;position:absolute;bottom:30px;left:calc(50% + 200px);z-index:5;}
.top .sec_hero .deco01{height:250px;width:100%;background:url(../img/top/herobg01.png);background-size:1700px 250px;position:absolute;bottom:51%;left:0;animation: herobg 20s linear infinite;}
.top .sec_hero .deco02{height:270px;width:100%;background:url(../img/top/herobg02.png);background-size:1700px 270px;position:absolute;top:51%;left:0;animation: herobg 20s linear infinite;}
.top .sec_hero .deco03{width:1000px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;}
.top .sec_hero .deco03.start{animation: herobg03 5s linear 0.1s infinite;}

@keyframes herobg{
  0% {background-position-x:0;}
  100% {background-position-x:-1700px;}
}

@keyframes herobg03{
  0% {transform:translate(-50%,-50%);}
  97% {transform:translate(-50%,-50%);}
  98% {transform:translate(-50%,-50%) rotate(2deg);}
  99% {transform:translate(-50%,-50%) rotate(-2deg);}
  100% {transform:translate(-50%,-50%);}
}


.top .sec_concept{position:relative;padding:180px 0 75px 0;overflow:hidden;}
.top .sec_concept::before{content:"";border-top:130px solid #1A1A1A;border-left:50vw solid transparent;border-right:50vw solid transparent;position:absolute;top:0;left:50%;z-index:4;transform:translateX(-50%);}
.top .sec_concept::after{content:"";border-top:13px solid #FFF;border-left:5vw solid transparent;border-right:5vw solid transparent;position:absolute;top:118px;left:50%;z-index:3;transform:translateX(-50%);}
.top .sec_concept .wrap{position:relative;z-index:2;}
.top .sec_concept .sec_etitle{font-size:48px;text-align:center;color:#CCAD67;}
.top .sec_concept .sec_title{font-size:14px;text-align:center;color:#CCAD67;font-weight:bold;margin-bottom:40px;}
.top .sec_concept .text{font-size:16px;line-height:36px;text-align:center;margin-bottom:40px;letter-spacing:0.1em;}
.top .sec_concept .autor{font-size:12px;line-height:20px;text-align:center;font-weight:bold;letter-spacing:0.1em;}
.top .sec_concept .autor span{font-size:14px;}
.top .sec_concept .bg01{position:absolute;top:0;left:0;width:50%;height:100%;}
.top .sec_concept .bg02{position:absolute;top:0;right:0;width:50%;height:100%;}

.top .sec_system{width:1100px;max-width:100%;margin: 0 auto;padding-top:120px;}
.top .sec_system .titles{position:relative;margin-bottom:60px;}
.top .sec_system .titles .sec_etitle{font-size:48px;line-height:100%;color:#CCAD67;margin-bottom:15px;}
.top .sec_system .titles .sec_title{font-size:14px;color:#CCAD67;}
.top .sec_system .titles .text{width:calc(100% - 230px);position:absolute;top:0;left:230px;font-size:14px;line-height:30px;letter-spacing:0.1em;}
.top .sec_system .item{display:flex;justify-content:space-between;flex-wrap:wrap;padding:60px 0;position:relative;}
.top .sec_system .item::before{content:"";width:100%;height:1px;position:absolute;top:0;left:0;background:repeating-linear-gradient(to right , #FFF 0px , #FFFFFF 1px ,transparent 1px ,transparent 7px);}
.top .sec_system .item .img{width:490px;}
.top .sec_system .item .texts{width:550px;padding-left:20px;}
.top .sec_system .item .title{font-size:24px;line-height:30px;font-weight:bold;letter-spacing:0.1em;}
.top .sec_system .item .etitle{font-size:13px;line-height:20px;color:#CCAD67;margin-top:2px;}
.top .sec_system .item .prices{border-top:1px solid #FFF;border-bottom:1px solid #FFF;padding:20px 0;margin: 25px 0;}
.top .sec_system .item .price{font-size:22px;line-height:100%;vertical-align:text-bottom;letter-spacing:0.1em;margin-bottom:10px;}
.top .sec_system .item .price .cnt{font-size:32px;line-height:100%;vertical-align:text-bottom;}
.top .sec_system .item .price .yen{font-size:40px;line-height:100%;vertical-align:text-bottom;}
.top .sec_system .item .text{font-size:14px;line-height:24px;letter-spacing:0.1em;text-align:justify;}
.top .sec_system .item .text span{color:#CCAD67;}
.top .sec03 {width:1100px;max-width:100%;margin: 25px auto 75px;background:#48A9D0;padding:30px 20px;box-sizing:border-box;}
.top .sec03 .sec_title{font-size:36px;font-weight:bold;letter-spacing:0.1em;text-align:center;}
.top .sec03 .icons{display:flex;justify-content:space-between;width:800px;max-width:100%;margin: 30px auto 20px;}
.top .sec03 .icon{width:180px;border-radius:50%;overflow:hidden;position:relative;}
.top .sec03 .icon span{position:absolute;bottom:25px;left:0;width:100%;font-size:14px;text-align:center;color:#48A9D0;}
.top .sec03 .text{font-size:14px;line-height:24px;letter-spacing:0.1em;text-align:center;}

.top .sec_access{width:1100px;max-width:100%;margin: 0 auto 60px;padding-top:50px;}
.top .sec_access .sec_etitle{font-size:48px;line-height:100%;color:#CCAD67;margin-bottom:15px;}
.top .sec_access .sec_title{font-size:14px;color:#CCAD67;margin-bottom:40px;}
.top .sec_access iframe{width:100%;height:340px;margin-bottom:70px;}
.top .sec_access .infos{display:flex;justify-content:space-between;}
.top .sec_access .infos dl{width:520px;max-width:100%;display:flex;flex-wrap:wrap;align-content: flex-start;font-size:14px;line-height:28px;}
.top .sec_access .infos dt{width:160px;padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #353535;}
.top .sec_access .infos dd{width:calc(100% - 160px);padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid #353535;}
.top .sec_access .infos .img{width:520px;max-width:100%;}


.top .sec_prf{width:1100px;max-width:100%;margin: 0 auto 60px;padding-top:50px;}
.top .sec_prf .sec_etitle{font-size:48px;line-height:100%;color:#CCAD67;margin-bottom:15px;}
.top .sec_prf .sec_title{font-size:14px;color:#CCAD67;margin-bottom:40px;}
.top .sec_prf .area{display:flex;justify-content:space-between;flex-wrap:wrap;}
.top .sec_prf .texts{width:410px;max-width:100%;;}
.top .sec_prf .texts span{color:#CCAD67;}

.top .sec_prf .name{font-size:24px;letter-spacing:0.1em;margin-bottom:40px;padding:30px 0;border-top:1px solid #FFF;border-bottom:1px solid #FFF;margin-bottom:30px;}
.top .sec_prf .name span{font-size:14px;color:#CCAD67;}
.top .sec_prf .data{font-size:14px;line-height:30px;letter-spacing:0.1em;margin-bottom:40px;}
.top .sec_prf .data span{color:#CCAD67;margin-right:5px;}
.top .sec_prf .message{font-size:14px;line-height:30px;letter-spacing:0.1em;text-align:justify;}
.top .sec_prf .beforeafter{width:600px;max-width:100%;position:relative;}
/*.top .sec_prf .beforeafter .before{width:200px;position:absolute;bottom:40px;left:0;}*/
/*.top .sec_prf .beforeafter .deco{width:90px;position:absolute;bottom:290px;left:40px;}*/
/*.top .sec_prf .beforeafter .after{width:420px;max-width:100%;margin: 0 0 0 auto;}*/

.top .sec_kids {width:800px;max-width:100%;background:#000;padding:15px;box-sizing:border-box;display:flex;justify-content:space-between;margin:0 auto 90px;}
.top .sec_kids .img{width:385px;max-width:100%;}
.top .sec_kids .texts{width:360px;max-width:100%;text-align:center;color:#FFF;position:relative;display:flex;flex-wrap:wrap;align-content: center;}
.top .sec_kids .title{font-size:28px;width:100%;letter-spacing:0.1em;position:relative;z-index:2;}
.top .sec_kids .caption{font-size:14px;width:100%;letter-spacing:0.1em;position:relative;z-index:2;}
.top .sec_kids .deco{font-size:80px;position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);color:#1A1A1A;white-space: nowrap;}

.top .gallery{height:280px;width:100%;background:url("../img/top/gallery.jpg?2021");background-size:2240px 280px;animation: gallery 30s linear infinite;}

@keyframes gallery{
  0% {background-position-x:0;}
  100% {background-position-x:-2240px;}
}

.top .sec_contact{text-align:center;padding-top:90px;padding-bottom:85px;background:url("../img/top/contact_bg.jpg");background-size:cover;}
.top .sec_contact .sec_etitle{font-size:48px;line-height:100%;color:#CCAD67;margin-bottom:15px;}
.top .sec_contact .sec_title{font-size:14px;color:#CCAD67;margin-bottom:70px;}
.top .sec_contact .links{width:1100px;max-width:100%;margin: 0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;}
.top .sec_contact .links .line_link{width:530px;max-width:100%;padding:20px;box-sizing:border-box;background:#06C755;display:flex;justify-content:space-between;}
.top .sec_contact .links .line_link .texts{width:340px;position:relative;}
.top .sec_contact .links .line_link .icon{width:82px;position:absolute;top:0;left:0;}
.top .sec_contact .links .line_link .title{padding-left:85px;font-size:24px;line-height:36px;text-align:justify;font-weight:bold;letter-spacing:0.1em;}
.top .sec_contact .links .line_link .link{width:215px;font-size:14px;line-height:25px;border:1px solid #FFFF00;padding:9px 0;background:#FFFF00;color:#06C755;text-align:center;margin:20px auto 0;display:inline-block;border-radius:30px;}
.top .sec_contact .links .line_link .link .img{width:25px;display:inline-block;}
.top .sec_contact .links .line_link .qr{width:140px;}
.top .sec_contact .links .tel_link{width:530px;display:flex;flex-wrap:wrap;align-content: center;justify-content:center;background:#000000;}
.top .sec_contact .links .tel_link .link{font-size:32px;}
.top .sec_contact .links .tel_link .time{width:100%;text-align:center;font-size:14px;letter-spacing:0.1em;}


header {display:flex;justify-content:space-between;padding:30px;}
header .logo{width:350px;}
header .links{align-self:center;}
header .links a{margin-right:30px;}
header .links .link{transition:0.5s;font-size:14px;}
header .links .link span{display:none;}
header .links .link:hover{color:#CCAD67;}
header .links .tellink{font-size:16px;color:#CCAD67;vertical-align:middle;}

footer {position:relative;}
footer {padding:40px 0 50px;text-align:center;}
footer .logo{width:300px;margin: 0 auto 20px;}
footer .address{font-size:14px;letter-spacing:0.1em;margin-bottom:50px;}
footer .links{display:flex;justify-content:center;margin-bottom:50px;}
footer .links *{font-size:14px;margin: 0 3px;padding:0 5px;}
footer .links p{color:#353535;}
footer .copyright{font-size:12px;;}
footer .totop{width:60px;position:absolute;bottom:240px;right:40px;transition:0.5s;}
footer .totop:hover{opacity:0.7;}

@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}
