.main{
  overflow-x: hidden;
}

/*ファーストビュー*/
section.top-fv{
    padding: 0;
}
.main-fv{
    z-index: 0;
    position: relative;
}
.main-fv img{
    margin-top: -3em;
    width: 100%;
    height: 1156px;
    object-fit: cover;
    object-position: left;
}
.main-fv .top-txt{
    position: absolute;
    bottom: 21em;
}
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
          gap: 1em;
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 50s infinite linear 0.5s both;
}
.scroll-infinity__item--text {
  font-family: 'Quicksand',serif;
  width: calc(300vw / 3);
  font-size: 90px;
  color: #FFFFFF;
  opacity: 0.6;
        font-weight: 300;
}

.custom-shape-divider-top-1736334371 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}
.top-fv .title{
    position:relative;
    z-index: 9;
    width: 95%;
    margin: 0 auto;
}
.top-fv .title .copy_title{
    display: inline-block;
    position: absolute;
    margin-top: 12em;
}
.top-fv .title h2{
    line-height: 150%;
    margin-top: 5rem;
}
.top-fv .title h1{
    color: #D6196F;
text-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
font-family: "Shippori Mincho B1";
font-size: 6.25rem;
font-style: normal;
font-weight: 700;
line-height: 100%; /* 6.25rem */
letter-spacing: 0.625rem;
    margin-bottom: 2.5rem;
}
.top-fv .title h1 span{
color: #D6196F;
text-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
font-family: "Shippori Mincho B1";
font-size: 3.125rem;
font-weight: 700;
line-height: 100%; /* 3.125rem */
letter-spacing: 0.3125rem;
}
.top-fv .title label{
    color: #FFF;
text-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
font-family: "Shippori Mincho B1";
font-size: 3.75rem;
font-weight: 400;
line-height: 100%; /* 3.75rem */
letter-spacing: 0.375rem;
    background: #79482A;
    padding: 0.5rem 1rem;
}
.top-fv .title h2 span{
display: inline-block;
    background: rgba(255, 255, 255, 0.6);
    padding: 0.5em;
    margin-bottom: 0.5em;
    color: #79482A;
    font-family: 'Shippori Mincho B1', serif;
    letter-spacing: 2px;
    font-size: 60px;
    font-weight: 400;
}
.main-fv::after{
    content: "";
    display: block;
    background-image: url(/wp-content/themes/thema-berry/img//wave.webp);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 350px;
    position: absolute;
    left: 0;
    bottom: 0;
}

.main-fv .flex{
   display: flex;
   justify-content: space-between;
    align-items:flex-start;
    gap:1em;
    padding-top: 5em;
}
.main-fv .flex p{
    width: 46%;
    color: #fff;
    line-height: 2;
    margin: 0;
    
}
.main-fv div h3{
font-family: "Shippori Mincho", serif;
    color: #f2f2f2;
    font-size: 24px;
    font-weight: normal;
    letter-spacing: 1.5px;
}
section.top-fv .btn{
    margin-top: 4em;
}
/*スクロールバー*/
.scroll{
    position: relative;
       float: right;
}
.scroll_down{
      position: absolute;
    top: -28em;
    right: 3em;
    writing-mode: vertical-lr;
}

.scroll_down .txt{
  position: absolute;
        left: -17px;
    bottom: 7em;
    color: #ffffff;
    font-size: 24px;
    font-family: "Quicksand", sans-serif;
    font-weight: normal;
    text-decoration: none;
    letter-spacing: 0.1em;
    transform: rotate(180deg);
}

.scroll_down:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0px;
  width: 1px;
  height: 44px;
  background:#FAFBFE;
  animation:
    circlemove 1.6s ease-in-out infinite,
    cirlemovehide 1.6s ease-out infinite;
}

@keyframes circlemove{
  0%{bottom:113px;}
  100%{bottom:0px;}
}

@keyframes cirlemovehide{
  0%{opacity:0}
  50%{opacity:1;}
  80%{opacity:0.9;}
  100%{opacity:0;}
}

.scroll_down:after{
content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 157px;
    background: rgba(255, 255, 255, 0.4);
}

section.top-fv .right-img img{
    margin-right: calc(50% - 50vw);
    width: 52%;
    height: 100%;
    object-fit: cover;
}
/*キャンペーン*/
section.campaign {
       padding-top: 2em;
    text-align: center;
    position: relative;
}

/*about*/
section#about{
    padding-top: 0;
}
section#about p{
    margin-top: 4em;
    line-height: 200%;
}
section#about .content{
    display: flex;
    gap:3em;
    margin-top: 4em;
}

section#about .content .circle{
width: 305px;
height: 305px;
background: rgba(251, 242, 230, 0.8);
border: 0.5px solid #AE987B;
box-shadow: 0px 0px 20px rgba(121, 72, 42, 0.2);
    position: relative;
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center;
}
section#about .content .circle-inner{
    position: absolute;
    top: 55%;
    left: 28%;
    transform: translate(-20%, -50%);
    font-size: 16px;
    line-height: 1.6;
    text-align: center;
}

section#about .content p{
    text-align: center;
    line-height: 180%;
    margin-top: 2em;
}
section#about .content h3{
font-weight: 700;
font-size: 19px;
line-height: 160%;
    margin: 0;
}

/*ポイント*/
.point-bk{
        background: #FBF2E6;
}
section#point{
    position: relative;
    padding-bottom: 0;
}
section#point::after{
    content: "";
    display: block;
    transform: scaleX(-1) scaleY(-1);
    background-image: url(/wp-content/themes/thema-berry/img//wave.webp);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    height: 350px;
    position: absolute;
    left: 0;
    top: 0;
}
section#point .content{
    display: flex;
    align-items: center;
    gap:5em;
}
section#point .content img{
 margin-left: calc(50% - 50vw);
    object-fit: cover;
    object-position: bottom;
max-width: 50vw;
}

}

section#point .content p{
    margin-top: 4em;
}

section#point .content ul{
    padding: 0;
}
section#point .content ul li{
    padding: 1em 0;
    padding-left: 1em;
    border-bottom: 1px solid #C5B2A6;
    list-style: none;
}
section#point .content ul li:before {
content: "";
    position: relative;
    width: 4px;
    top: -4px;
    height: 4px;
    display: inline-block;
    background-color: #79482A;
       border-radius: 50%;
    right: 10px;
}

section#feature {
        background: #fff;               /* 背景色指定 */
    border-radius: 0px 200px 0px 200px;    /* 角丸指定 */
    padding-bottom: 15em;
}
section#feature .content{
    margin-top: 4em;
}
section#feature .content-box{
    display: flex;
    gap: 10em;
}
section#feature .content h3{
display: flex;
align-items: center;
    gap:1em;
font-weight: 400;
font-size: 24px;
letter-spacing: 0.1em;
padding-bottom: 1em;
border-bottom: 1px solid #C5B2A6;
}
section#feature .content h3 span{
font-family: 'Quicksand',sans-serif;;
font-weight: 300;
font-size: 40px;
line-height: 100%;
letter-spacing: 0.1em;
color: #AE987B;
}
section#feature .content .txt div{
    margin-bottom: 6em;
}
section#feature .content .content-box>div{
    flex: 1;
}
section#feature .content .img{
    position: relative;
} 
section#feature .content .img img{
    width: 100%;
}
section#feature .content .img .img2{
    position:absolute;
    position: absolute;
    top: 26.5em;
    left: 21em;
}
section#feature .content .img .img3{
position: relative;
    top: 7em;
    z-index: 555;
}
section#feature .content .img .img4{
position: absolute;
    z-index: 150;
    top: 19em;
    right: -17.7em;
    height: 483px;
    width: auto;
}
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

/*before&after*/
section#ba .content{
    display: flex;
    gap:1em;
    flex-wrap: wrap;
    justify-content: center;
}
section#ba .content>div{
background: #FFFFFF;
border: 0.5px solid #AE987B;
box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);
border-radius: 10px;
    padding: 1em 2em;
    width: 42%;
}
section#ba .content>div h3{
font-weight: 700;
font-size: 20px;
color: #79482A;
    margin-top: 0.5em;
}
section#ba .content>div .deta{
        display: flex;
    gap:0 0.5em;
    align-items: center;
        flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 0.5em;
    margin-top: 1em;
    padding-bottom: 1em;
}
section#ba .content>div .deta-2{
        margin-bottom: 0.5em;
    margin-top: 1em;
    padding-bottom: 1em;
}
section#ba .content>div p.sankaku{
    border-top: 1px solid #79482A;
     position: relative;
    padding-top: 1em;
}
section#ba .content>div p.sankaku:before,
section#ba .content>div p.sankaku:after {
    position: absolute;
    bottom: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}

section#ba .content>div p.sankaku:before {
   border: 16px solid;
    border-color: transparent;
    border-bottom-color: #79482A;
    margin-left: -16px;
}

section#ba .content>div p.sankaku:after {
border: 14.5px solid;
    border-color: transparent;
    border-bottom-color: white;
    margin-left: -14.5px;
}
section#ba .content>div .deta-2>div{
        display: flex;
    gap:0 0.5em;
    align-items: center;
        flex-wrap: wrap;
    justify-content: center;
}
section#ba .content>div h4{
    font-weight: 400;
    font-size: 15px;
    display: flex;
    gap:0.5em;
    align-items: center;
    margin: 0;
    line-height: 1.2;
}
.border {
    width: 30px;
}
section#ba .content>div h4 span{
font-family: 'Poppins', sans-serif;
font-weight: 600;
/*font-size: 36px;*/
    font-size:  25px;
color: #D6196F;
}
.border{
transform: rotate(299deg);
    width: 36px;
    border: 0;
    border-top: 1px solid #C5B2A6;
    margin: 0;
    padding: 0;
}
section#ba .bottom-box{
position: relative;
}
section#ba .bottom-box img.bk{
    object-fit: cover;
    border-radius: 10px;
    width: 100%;
    border: 0.5px solid #AE987B;
box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);
    margin-top: 4em;
}
section#ba .bottom-box .kasaneru{
position: absolute;/*重ねたい子要素にabsolute*/
  top:55%;
  left: 50%;
    text-align: center;
    width: 100%;
 -ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  -webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  transform: translate(-50%,-50%);/*センター寄せの修正*/
  margin: 0!important;/*文字がずれている場合や*/
  padding: 0!important;/*文字が折り返される場合*/
}
section#ba .bottom-box .kasaneru h3{
    position: relative;
    display: inline-block;
font-family: 'Shippori Mincho B1', sans-serif;
font-style: normal;
font-weight: 700;
font-size: 30px;
line-height: 160%;
text-align: center;
letter-spacing: 0.1em;
color: #79482A;
text-shadow: 0px 0px 10px rgba(255, 255, 255, 0.25);
    margin-bottom: 0;

}
section#ba .bottom-box .kasaneru h3:before {
    position: absolute;
    left: -2em;
    top: 0;
    content: "";
    width: 2px;
    height: 100%;
    background: #79482A;
    border-radius: 3px;
    transform: rotate(-25deg);
}
       
section#ba .bottom-box .kasaneru h3:after {
    position: absolute;
    content: "";
    right: -2em;
    top: 0;
    width: 2px;
    height: 100%;
    background: #79482A;
    border-radius: 3px;
    transform: rotate(25deg);
}
section#ba .bottom-box .kasaneru h3 span{
font-size: 38px;
line-height: 160%;
color: #D6196F;
}
section#ba .bottom-box .kasaneru .img{
    display: flex;
    padding: 2em 3em;
    gap: 2em;
    justify-content: center;
}
section#ba .bottom-box .kasaneru .img img{
    width: 50%;
}
section#voice{
    padding: 0;
}
section#voice .content{
    display: flex;
    gap:4em;
    align-items: center;
    padding: 2em 0;

}
section#voice .content div{
    position: relative;
    padding: 1em 2em;
background: #FFFFFF;
border: 0.5px solid #AE987B;
filter: drop-shadow(2px 4px 10px rgba(0, 0, 0, 0.15));
    border-radius: 10px;
}
section#voice .content div:before {
  content: "";
    position: absolute;
    top: 50%;
    left: -35px;
    margin-top: -12px;
    border: 16px solid transparent;
    border-right: 20px solid #FFF;
    z-index: 2;
}
section#voice .content div:after {
  content: "";
    position: absolute;
    top: 50%;
    left: -36px;
    margin-top: -12px;
    border: 16px solid transparent;
    border-right: 20px solid #ae987a;
    z-index: 1;
}

section#voice .content img{
       width: 171px;
}
section#voice .content h3{
    margin: 0;
font-weight: 400;
font-size: 20px;
line-height: 180%;
}
section#voice .content p{
    letter-spacing: 0.1em;
}

section#price p{
    margin-top: 4em;
}
section#price .content div:first-child{
    border-bottom: 1px solid #C5B2A6;
    padding-bottom: 4em;
    margin-bottom: 4em;
    margin-top: 4em;
}
section#price p.small{
    font-size: 14px;
}
section#program{
background: #fff;
    border-radius: 0px 200px 0px 200px;
}
section#program p.top-txt{
    margin-top: 4em;
}
section#program .content{
    padding-bottom: 10em;
}
section#program .content h3{
font-family: 'Shippori Mincho B1', sans-serif;
font-style: normal;
font-weight: 400;
font-size: 24px;
line-height: 180%;
letter-spacing: 0.1em;
color: #79482A;
      display: flex;
    align-items: center;
}

section#program .content h3:before,
section#program .content h3:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #79482A;
}

section#program .content h3:before {
    margin-right: 1em;
}

section#program .content h3:after {
    margin-left: 1em;
}
section#program .content .content-box{
    display: flex;
    gap:2em;
    margin-top: 3em;
}
section#program .content .content-box>div{
background: #FFFFFF;
border: 0.5px solid #AE987B;
box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);
border-radius: 30px 30px 0px 0px;
    flex: 1;
}

section#program .content .content-box>div .content-header{
background: #AE987B;
border-radius: 30px 30px 0px 0px;
    text-align: center;
    padding: 0.5em;
    padding-top: 1em;
}
section#program .content .content-box>div .content-header .class{
background: #FFFFFF;
    border-radius: 100px;
    font-weight: 700;
    font-size: 14px;
    line-height: 140%;
    letter-spacing: 0.1em;
    display: inline-block;
    padding: 0.3em 1em;
    margin-bottom: 0.3em;
}
section#program .content .content-box>div .content-header p{
    text-align: center;
    color: #fff;
    margin: 0;
}
section#program .content .content-box>div .body{
    padding: 1em;
}
section#program .content .content-box>div .body .box{
    display: flex;
    gap: 2em;
}
section#program .content .content-box>div .body .box img{
    width: 50%;
}
section#program .content .content-box>div .body .box p{
    color: #000;
}
section#program .content .content-box>div .body table{
border-collapse: collapse;
    width: 100%;
    margin-top: 1em;
}
section#program .content .content-box>div .body table th{
    border: 1px solid #AE987B;
    padding: 0.5em;
        letter-spacing: 0.1em;
}
section#program .content .content-box>div .body table th:first-child{
    background: #F4EADD;
}
.grad-wrap{
    position: relative;
}
.grad-btn {
    border: 1px solid #79482A;
    display: inline-block;
    padding: 1em 6em;
 position: absolute;
      bottom:-8em;
  left: 50%;
    text-align: center;
 -ms-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  -webkit-transform: translate(-50%,-50%);/*ベンダープレフィックス*/
  transform: translate(-50%,-50%);/*センター寄せの修正*/
}
.grad-btn:before, .grad-btn:after {
  display: block;
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #79482A;
}
.grad-btn:before {
  width: 1px;
    height: 17.5px;
    right: 23px;
}
.grad-btn:after {
   width: 17.5px;
  height: 1px;
    right: 15px;
}
.open,.open2,.open3{
  display: none;
}

.open-btn::before{
    display: none;
}


/*新着情報*/
section#news .content{
    display: flex;
    gap: 2em;
    align-items: flex-start;
}
section#news .content > div{
    width: calc(33% - 1em);
}
section#news .content img{
    object-fit: cover;
    width: 100%;
    height: 185px;
}
section#news .content .deta{
    display: flex;
    gap: 0.5em;
   align-items: center;
}
section#news .content .deta p{
font-family: 'Shippori Mincho B1', sans-serif;
font-weight: 400;
font-size: 14px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
}
section#news .content .deta>div{
background: #79482A;
    color: #fff;
    text-align: center;
    padding: 0.2em 0.5em;
border-radius: 100px;
    font-size: 12px;
}
section#news .content h3{
font-weight: 400;
font-size: 18px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
    margin-top: 0;
}
section#news p.kiji{
    text-align: center;
}
section#news .btn{
    text-align: center;
    margin-top: 2em;
}
section#news .btn a{
background: #FFFFFF;
border: 1px solid #79482A;
    padding: 0.8em 4em;
    text-align: center;
     position: relative;
    color: #79482A;
    letter-spacing: 0.1em;
}
section#news .btn a:before {
  content: '';
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 1px #79482A;
  border-right: solid 1px #79482A;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 1em;
  bottom: 0;
  margin: auto;
}

/*よくある質問*/
section#faq{
    padding-bottom: 0;
    padding-top: 0;
}
section#faq .content{
    margin-top: 4em;
}
.accordion_area {}
.accordion_area .accordion_one{
    padding: 0 1.5em;
background: #FFFFFF;
border: 0.5px solid #AE987B;
box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);
border-radius: 10px;
    margin-bottom: 2em;

}
.accordion_area .accordion_one .ac_header {
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
}

.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 1px solid #79482A;
  width: 32px;
  height: 0;
  top: 0;
  bottom: 0;
  right: -7px;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 1px solid #79482A;
  width: 0;
  height: 32px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: 1rem 2rem 1rem 0rem;
  border-top: 1px solid #C5B2A6;
  box-sizing: border-box;
}

/*=========
faq
=========*/

.p-faq__headinner {
  display: block;
  padding-left: 4em;
  position: relative;
  line-height: 1.5;
}
.p-faq__headinner::before {
  position: absolute;
  left: 0;
  content: "Q";
font-family: 'Quicksand', sans-serif;
font-style: normal;
font-weight: 400;
font-size: 36px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
}
.p-faq__headinner p.p-faq__q-txt {
  font-size: 20px;
    letter-spacing: 0.1em;
}

.p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__bodyinner::before {
  position: absolute;
  left: 0;
  content: "A";
font-family: 'Quicksand', sans-serif;
font-style: normal;
font-weight: 400;
font-size: 36px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
}
.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 16px;
    padding-left: 2em;
}

/*無料体験の流れ*/
section#flow .content{
    margin-top: 5em;
    display: flex;
    justify-content: center;
}
section#flow .content .flow-box{
    text-align: center;
    position: relative;
        width: 30%;
    padding: 1.5em;
background: #FFFFFF;
border: 0.5px solid #AE987B;
box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);
border-radius: 10px;

}
section#flow .content .flow-box h3{
font-weight: 400;
font-size: 24px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
    margin-top: 2em;
    margin-bottom: 1em;
}
section#flow .content .flow-box img{
    width: 60%;
}
section#flow .content .flow-box .no{
    position: absolute;
    font-family: 'Quicksand', sans-serif;
    display: inline-block;
    width: 94px;
    height: 94px;
    border-radius: 50%;
    background: #FBF2E6;
    border: 1px solid #AE987B;
    text-align: center;
    color: #79482A;
    line-height: 94px;
font-weight: 300;
font-size: 39.0909px;
letter-spacing: 0.1em;
    top: -64px;
    left: 33%;
}
section#flow .content .flow-box p{
    line-height: 180%;
    letter-spacing: 0.1em;
    margin: 0;
}
section#flow .sankaku {
  position: relative;
    width: 34px;
}
section#flow .sankaku:before {
  content: '';
  width: 11.5px;
  height: 11.5px;
  border: 0;
  border-top: solid 1px #AE987B;
  border-right: solid 1px #AE987B;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  left: 5px;
  bottom: 0;
  margin: auto;
}
/*アクセス*/
section#access{
    padding: 0;
}
section#access .content{
    display: flex;
    gap:2em;
    align-items: center;
}
section#access .content iframe{
    height: 321px;
}
section#access .content iframe,section#access .content>div{
    flex:1;
}
section#access .content h3{
font-weight: 700;
font-size: 16px;
line-height: 100%;
letter-spacing: 0.1em;
color: #79482A;
    padding-bottom: 1em;
    margin-bottom: 1em;
    border-bottom: 1px solid #79482A;
}
section#access .content p{
    font-size: 14px;
}

/*お問い合わせ*/
section#contact .content{
    padding: 2em 4em;
background: #FFFFFF;
border-radius: 30px;
}

section#contact .name p{
font-style: normal;
font-weight: 700;
font-size: 16px;
line-height: 180%;
letter-spacing: 0.1em;
    margin-top: 2em;
}
section#contact .name p .red{
    color: #D6196F;
    font-weight: bold;
}
.form__desc input[type=email], .form__desc input[type=tel], .form__desc input[type=text], .form__desc select, .form__desc textarea, .form__desc input[type="date"] {
   padding: 1em;
    padding-right: 0;
    background: #fff;
       border: 1px solid #C5B2A6;
    border-radius: 5px;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 1em;
}
section#contact .yoyaku>p{
    display: flex;
    gap:1em;
        width: 80%;
}
.wpcf7-form-control-wrap {
    position: relative;
    width: 70%;
}
.form__btn-wrapper{
margin: 2em 0;
    text-align: center;
}
section#contact .sbmit-content{
   background: #79482a;
    display: inline-block;
    padding: 0.5em 4em;
}
section#contact .sbmit-content:hover{
cursor:pointer;
    opacity: 0.5;
}
section#contact h3{
    margin-top: 4em;
    margin-bottom: 1em;
font-weight: 700;
font-size: 16px;
line-height: 180%;
letter-spacing: 0.1em;
}
section#contact .note{
padding: 2em;
    height: 189px;
    overflow: scroll;
    border: 1px solid #C5B2A6;
    margin: 2em 0;
    margin-top: 0;
    font-size: 14px;
    color: #333333;
}
section#contact .sbmit-content p{
    font-size: 13px;
    font-weight: 400;
    display: block;
    color: #fff;
    margin:0;
}
section#contact .sbmit-content input[type="submit"]{
    background: none;
    border: none;
    text-align: center;
    color: #fff;
    margin: 0;
    font-weight: bold;
    width: 100%;
    font-size: 16px;
}


/*----musashikoyama-----*/
.musashikoyama .top-fv .title .copy_title {
    margin-top: 20rem;
}
@media screen and (max-width:978px) {
    .musashikoyama .top-fv .title .copy_title {
    margin-top: 17rem;
}
}
/*============================
mobile style
============================*/

@media screen and (max-width:978px) {
    .main-fv img{
        margin-top: 0;
        height: 100%;
    }
.top-fv .title h1 span {
    font-size: 1.5625rem;
    display:block;
    margin-bottom: -3rem;
}
    .top-fv .title h1{
        font-size: 3.125rem;
        margin-bottom: 1.5rem;
    }
    .top-fv .title label{
        font-size: 1.5rem;
        letter-spacing: 3px;
    }
    .top-fv .title .copy_title {
    margin-top: 6em;
}
    .top-fv .title h2{
        margin-top: 3rem;
}

    .top-fv .title h2 span {
        font-size: 1.5rem;
        line-height: 100%;
    }
.main-fv::after {
    background-image: url(/wp-content/themes/thema-berry/img//wave-sp.webp);
    height: 175px;
            bottom: -70px;
    }
section#point::after{
        background-image: url(/wp-content/themes/thema-berry/img//wave-sp.webp);
    height: 175px;
    }
.scroll_down .txt {
    left: -11px;
        bottom: 6em;
    font-size: 16px;
    transform: rotate(180deg);
}
.scroll_down {
    top: -13.5em;
    right: 1em;
}
.scroll_down:before {
  height: 30px;
}

@keyframes circlemove{
  0%{bottom:60px;}
  100%{bottom:0px;}
}

.scroll_down:after{
content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 90px;
    background: rgba(255, 255, 255, 0.4);
}
    section#about p {
    margin-top: 3em;
    }
    section#about .content,section#point .content,section#feature .content-box{
    display: block;
    }
    section#about .content .circle{
        margin-bottom: 4em;
    }
    section#about .content .circle:last-child{
        margin-bottom: 0;
    }
    section#about{
        padding-bottom: 1em;
    }
    section#point .wrap{
        padding: 0;
    }
    section#point .txt{
        padding: 0 1em;
    }
    section#point{
        padding-bottom: 4em;
    }
    section#feature,section#program {
    border-radius: 0px 50px 0px 50px;
}
    section#feature .content h3 {
    display: flex;
    gap: 0.5em;
    font-size: 20px;
    }
    section#feature .content .img img {
    width: 60%;
}
    section#feature .content .img .img2 {
    top: 13.5em;
    left: 9.7em;
}

    section#feature .content .img {
    margin-bottom: 10em;
}
    section#feature .content .img .img3 {
    position: relative;
    top: 0em;
    width: 50%;
    }
    section#feature .content .img .img4 {
    position: absolute;
    z-index: 150;
    top: 5em;
    right: 0.3em;
    height: 346px;
    width: auto;
}
    section#ba .bottom-box .kasaneru h3,section#ba .bottom-box .kasaneru h3 span{
        font-size: 20px;
    }
section#ba .bottom-box .kasaneru .img {
    display: block;
    padding: 1em 1em;
    }
    section#ba .bottom-box .kasaneru .img img {
    width: 100%;
}
    section#ba .bottom-box .kasaneru h3:before {
    left: -1.5em;
    transform: rotate(342deg);
}
section#ba .bottom-box .kasaneru h3:after {
    right: -1.5em;
    transform: rotate(23deg);
}
    section#price p {
    margin-top: 2em;
}
    section#price .content div:first-child{
        border-bottom: none;
    }
    section#price .content div{
        display: flex;
        overflow-x: scroll;
    margin-right: calc(50% - 50vw);
    }
    section#price .content div img{
    width: 917px;
    max-width: max-content;
}
    section#program .content .content-box>div{
        margin-bottom: 2em;
    }
    section#program .content .content-box,section#news .content{
        display: block;
    }
    .grad-btn {
    border: 1px solid #79482A;
    display: block;
    width: 40%;
    padding: 1em 3em;
    position: absolute;
    bottom: -10em;
    left: 50%;
    }
    section#program .content .content-box>div .body .box {
    display: block;
    text-align: center;
    }
    section#program .content .content-box>div .body .box img {
    width: 70%;
}

.grad-btn {
    bottom: -7em;
    }
    section#program .content {
    padding-bottom: 7em;
}
    section#program .content h3 {
    margin-bottom: -1em;
    }
    section#news .content>div{
        margin-bottom: 4em;
        width: auto;
    }
    section#news .btn a {
    padding: 1em 4em;
    width: 40%;
}
    .p-faq__headinner p.p-faq__q-txt {
    font-size: 16px;
    }
    .p-faq__headinner {
    padding-left: 3em;
        
        padding-right: 2em;
    }
    .p-faq__headinner::before ,.p-faq__bodyinner::before{
    font-size: 30px;
    }
    .accordion_area .accordion_one .ac_header .i_box {
    right: 0rem;
    }
    .accordion_area .accordion_one .ac_header .i_box:before {
    width: 21px;
    }
    .accordion_area .accordion_one .ac_header .i_box:after{
        height: 21px;
        right: 4px;
    }
    .p-faq__bodyinner p.p-faq__a-txt {
    font-size: 16px;
    padding-left: 0.5em;
}
    section#flow .content .flow-box {
    text-align: center;
    position: relative;
    width: auto;
    }
    section#faq .content{
        margin-top: 6em;
    }
    section#flow .sankaku:before {
    content: '';
    width: 11.5px;
    height: 11.5px;
    border: 0;
    border-top: solid 1px #AE987B;
    border-right: solid 1px #AE987B;
    transform: rotate(135deg);
    position: absolute;
    top: -14em;
    left: 0;
    bottom: 0;
    margin: auto;
}
    section#flow .sankaku {
    width: 34px;
    margin: 10em auto;
}
section#access .content iframe {
    height: 321px;
    margin: 1em 0;
}
    section#access .content {
    display: block;
    }
section#contact .content {
    padding: 1em 1em;
    }
    section#contact .yoyaku>p {
    display: block;
    width: auto;
}
    .form__desc input[type="date"]{
        width: 60%;
    }
    section#contact h3 {
    margin-top: 1em;
    }
    section#flow .content{
        display: block;
    }
    .swiper{
        padding: 1em 0;
    }
    .container {
  position: relative;
}
    section#ba .content {
    display: flex;
    gap: 0;
    flex-wrap: nowrap;
    justify-content: flex-start;
}
section#ba .content>div {
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    width: auto;
}
    section#ba .content>div .box-content {
    background: #FFFFFF;
    border: 0.5px solid #AE987B;
   /* box-shadow: 2px 4px 10px rgba(0, 0, 0, 0.15);*/
            border-radius: 10px;
        padding: 1em 1em;
}
    .swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 18px;
    }
    .swiper-button-next, .swiper-button-prev {
    background: #7a482b;
    width: 35px;
    height: 35px;
    color: #fff;
}
    .swiper-button-next{
            right: -2%;
    }
    .swiper-button-prev{
            left: -2%;
    }
    section#voice .content {
    display: block;
        text-align: center;
    }
    section#voice .content div:before {
    content: "";
    position: absolute;
    top: -22px;
    left: 45%;
    margin-top: -12px;
    border: 16px solid transparent;
    border-right: 20px solid #FFF;
    z-index: 2;
    transform: rotate(90deg);
}
    section#voice .content div:after {
    content: "";
    position: absolute;
    top: -23px;
    left: 45%;
    margin-top: -12px;
    border: 16px solid transparent;
    border-right: 20px solid #ae987a;
    z-index: 1;
    transform: rotate(90deg);
}
    section#voice .content div {
    margin-top: 3em;
        filter: none;
}
.main-fv .top-txt {
    position: absolute;
    bottom: 8em;
}
    .scroll-infinity__item--text img {
        width: 910px;
        max-width: 910px;
        height: auto;
    }
    .scroll-infinity__item--text {
    width: calc(700vw / 3);
}
    section#point .content img {
        max-width: 100%;
    }
    section#price .content div img.img2{
        width: 682px;
    }
    section#ba .content>div .deta{
    gap:0em;
}
}