/** * Template: snow-monkey * Theme Name: Snow Monkey Child *//* common *//* デフォルト（PC）：改行させない */.br_sp{    display: none;  }.campaign-banner.top {   padding: 60px 0 100px;}.campaign-banner.top.--fv_under {  padding: 60px 0 40px;}    /* SPのみ改行させる（例：768px以下） */  @media (max-width: 1200px){    .br_sp{      display: inline;    }  }.campaign-banner .card .banner-contents .bottom-contents {    position: relative;}.campaign-banner .card .banner-contents .bottom-contents::after {    content: "";    position: absolute;    top: 20%;    left: 50%;    transform: translateX(-50%);    width: 50px;    height: 37px;    background: url("../images/common/btn/cta_allow.webp") no-repeat center / contain;}@media (max-width: 1200px){.campaign-banner .card .banner-contents .bottom-contents::after {    top: 20%;    left: 50%;    transform: translateX(-50%);}}  .campaign-banner .card.top {    padding: 35px 20px 30px 20px;    max-width: 900px;    width: 90vw;}.campaign-banner img {    max-width: 580px;    width: 100%;    box-shadow: 0px 10px 44px 0px rgba(191, 177, 146, 0.4);}.pink-btn-container {    display: flex;    justify-content: center;    flex-direction: column;    gap: 4px;}.pink-btn-container a .text-container {    top: 50%;    left: 47%;}.pink-btn-container a .text-container .title {    font-size: 36px;    white-space: nowrap;    color: #1E4584;    font-family: "Noto Serif JP";}@media screen and (max-width: 1200px) {    .pink-btn-container a .text-container .title {        font-size: 3vw;    }}@media screen and (max-width: 768px) {    .pink-btn-container a .text-container .title {        font-size: 4vw;    }}@media screen and (max-width: 1200px) {    .pink-btn-container a .text-container::after{        bottom: 14%;        right: -17%;            }}@media screen and (max-width: 1200px) {    .pink-btn-container img.top {        width: 80vw;    }}.pink-btn-container a .text-container::after{    content: "";    position: absolute;    bottom: 23%;    right: -15%;    border: 12px solid transparent;    border-left: 14px solid #1E4584;}@media screen and (max-width: 1200px) {    .pink-btn-container a .text-container::after{        border: 1.5vw solid transparent;        border-left: 2vw solid #1E4584;    }}.campaign-banner .card .banner-contents .bottom-contents .pink-text {    color: #DF6010;    font-size: 80px;    margin-bottom: 0px;    font-family: "Noto Serif JP";    line-height: 1.2;    letter-spacing: 6px;    padding: 0 16px;}@media screen and (max-width: 1200px) {    .campaign-banner .card .banner-contents .bottom-contents .pink-text {        font-size: 8.9vw;    }}.campaign-banner .card .banner-contents .bottom-contents .large .line {    font-size: 43px;}@media screen and (max-width: 1200px) {.campaign-banner .card .banner-contents .bottom-contents .large .line {    font-size: 7vw;}}p.large {    margin-bottom: 46px;}p.medium {    margin-top: -40px!important;}
.campaign-banner .card .banner-contents .bottom-contents .pink-text .small {    color: #DF6010;    font-size: 40px;    font-family: "Noto Serif JP";}@media screen and (max-width: 1200px) {.campaign-banner .card .banner-contents .bottom-contents .pink-text .small {font-size: 6vw;}} /* FV */#first-view{    background: url("../images/section/first-view/bg.webp") no-repeat center / contain;} #first-view .fv-content-wrapper .pink-circle-btn-container .pink-circle-btn {    width: 11.1vw;} #first-view .fv-content-wrapper .pink-circle-btn-container {    position: absolute;    bottom: 2vw;    right: 2vw;}#first-view .fv-content-wrapper .pink-circle-btn-container p {    color: #1E4584;    font-size: 1.5vw;    font-family: "Noto Serif JP";}#first-view .fv-content-wrapper .pink-circle-btn-container p::before {    border-left: 0.8vw solid #1E4584;    right: 41%;}#first-view .fv-content-wrapper .fv-content-container {    padding-left: 5.5vw;    margin-top: 8.7vw;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .heading {    margin-bottom: 2.4vw;    width: 58vw;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .sub-title {    width: 47vw;    margin-bottom: 35px;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .circle-contents {    margin-top: 2.5vw;    gap: 0;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .circle-contents img {    width: 13.3vw;}#first-view .logo-container {    display: flex;    align-items: flex-start;    column-gap: 1.3vw;}@media screen and (max-width: 1200px) {    #first-view .fv-content-wrapper .logo-container {        display: flex;        align-items: flex-start;        margin-top: 0vw;        gap: 2vw;        margin-left: 0vw;    }}#first-view .logo-area-text {    display: inline-block;    margin-top: 10px;    padding: 4px 19px;    border-radius: 9px;    background-color: #333;    color: #fff;    font-size: 22px;    font-weight: 700;    font-family: "Shippori Mincho", serif;}@media (max-width: 1200px) {    #first-view .logo-area-text {        padding: 1vw 3vw;        font-size: max(13px, 1.8vw);    }}/* FV_sp */@media screen and (max-width: 1200px) {#first-view .fv-content-wrapper .fv-content-container {    margin-top: 22.7vw;}    #first-view {        height: 151.2vw;        background: url("../images/section/first-view/sp/bg-sp.webp") no-repeat center / contain;    }    #first-view .fv-content-wrapper .logo-container .logo {        margin-bottom: 42vw;    }#first-view .fv-content-wrapper .fv-content-container .fv-content-area .heading {    width: 76vw;    margin-bottom: 1vw;    margin-left: 1vw;    max-width: 876px;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .sub-title {    width: 81vw;    margin-bottom: 0px;    margin-left: 2vw;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .circle-contents img {    width: 22vw;}#first-view .fv-content-wrapper .fv-content-container .fv-content-area .circle-contents {    margin-top: 0vw;}}.logo {    display: flex;    align-items: flex-start;    column-gap: 1.3vw;}.logo-area-text {    display: inline-block;    margin-top: 10px;    padding: 4px 19px;    border-radius: 9px;    background-color: #333;    color: #fff;    font-size: 22px;    font-weight: 700;    font-family: "Shippori Mincho", serif;}@media (max-width: 1200px) {    .logo-area-text {        padding: 1vw 3vw;        font-size: max(13px, 1.8vw);    }} /* issues */ #issues {    background: #F6F7FB;}#issues .content-container .img-and-text .issue-text-container ul{    position: relative;    margin: 0 0 0 215px;    z-index: 0;    gap: 12px;    isolation: isolate;  }    @media screen and (max-width: 1200px) {    #issues .content-container .img-and-text .issue-text-container ul{      margin-left: 42vw;      gap: 5vw;      text-align: initial;      line-height: 1.7;    }  }    #issues .content-container .img-and-text .issue-text-container ul::before{    content: "";    position: absolute;    top: -18%;    right: 7%;    width: 666px;    height: 268px;    background: url("../images/section/issues/speech_bubble.webp") no-repeat center / contain;    z-index: -1;             pointer-events: none;  }    #issues .content-container .img-and-text .issue-text-container ul li{    position: relative;    z-index: 1;  }@media screen and (max-width: 1200px) {#issues .content-container .img-and-text .issue-text-container ul::before {display: none;}} @media screen and (max-width: 1200px) {    #issues {        background-image: url("../images/section/issues/sp/man-img.png.webp");        background-position: left bottom;        background-repeat: no-repeat;         background-position: left bottom 0vw;        background-size: 44vw 68vw;    }}#issues .content-container .img-and-text .issue-text-container {    gap: 24px;}#issues .content-container .img-and-text .issue-text-container ul li {    font-weight: 500;    font-family: Noto Sans JP;    gap: 25px;}@media screen and (max-width: 1200px) {    #issues .content-container .img-and-text {        margin-top: 10vw;        width: 100%;    }}/* feature */#features {    padding-bottom: 0px;}#feature-introduction .tab {    position: absolute;    width: 41vw;    bottom: -5vw;    right: 2vw;    -webkit-clip-path: polygon(0 0, 100% 0, 100% 62%, 0 89%);    clip-path: polygon(0 0, 100% 0, 100% 58%, 0 85%);}#feature-introduction {    z-index: 2;}#feature-introduction .content-wrapper .circle-and-text .dot {    background-image: none;    background-position: top right;    background-repeat: repeat-x;    background-size: 1em 0.2em;    padding-top: 0em;}#feature-introduction .content-wrapper .circle-and-text .pink {    color: #2F5D8C;}#feature-introduction .content-wrapper .circle-and-text p::before {    background-color: #E0EFF9;}#features .content-area .features-container .feature .title p {    font-family: "Noto Serif JP";    font-size: 29px;    font-weight: bold;    color: #1E4584;    text-align: center;    width: 100%;}@media screen and (max-width: 1200px) {    #features .content-area .features-container .feature .title p {        font-size: 4.5vw;        text-align: left;        width: initial;    }}@media screen and (max-width: 1200px) {    #features .content-area .features-container .feature .title {        width: 95vw;        padding: 1.5vw 0;        border-radius: 10vw;    }}/* strongpoint */#strongpoint {    background-image: url("../images/section/strongpoint/bg.png.webp");    background-repeat: no-repeat;    background-size: cover;    background-position: center center;    background-color: rgba(242, 187, 0, 0.03);    padding-top: 150px;    margin-top: -150px;    z-index: 1;}@media screen and (max-width: 1200px) {#strongpoint {    padding-top: 240px;    margin-top: -210px;    z-index: 1;}#strongpoint .strongpoints-container .card .title-container .title, #strongpoint .strongpoints-container .strongpoint .title-container .title {    background-image:none;}}#strongpoint .heading {    padding: 69px 0 15px 0;    border-bottom: 2px solid #406994;    width: 90%;}#strongpoint .heading .text-container h2 {    color: #2F5D8C;    font-weight: bold;    font-size: 42px;}#strongpoint .under-heading-text .normal-font-box p {    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "ヒラギノ角ゴ ProN W3", sans-serif;}#strongpoint .strongpoints-container .card .title-container .title .number, #strongpoint .strongpoints-container .strongpoint .title-container .title .number {    color: #1E4584;}#strongpoint .down-arrow-and-taxt-container .text span {    color: #1E4584;    background-image: radial-gradient(circle at center, #1E4584 18%, transparent 18%);}#strongpoint .under-heading-text p, #strongpoint .under-heading-text span {    line-height: 1.7;    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "ヒラギノ角ゴ ProN W3", sans-serif;    color: #333333;    font-size: 18px;}#strongpoint .under-heading-text span {    font-weight: bold;}#strongpoint .strongpoints-container .card .title-container .text-container span, #strongpoint .strongpoints-container .strongpoint .title-container .text-container span {    font-weight: bold;    background: linear-gradient(transparent 10%, #fff4d0 0%);    padding: 5px 0;}@media screen and (max-width: 1200px) {    #strongpoint .under-heading-text p, #strongpoint .under-heading-text span {        font-size: 3.8vw;    }}@media screen and (max-width: 1200px) {    #strongpoint .section-bottm-text span {        padding: 8px;    }}#strongpoint .down-arrow-and-taxt-container .down-arrow {    border-top: 90px solid #F7D84E;}@media screen and (max-width: 1200px) {    #strongpoint .down-arrow-and-taxt-container .down-arrow {        border-left: 16vw solid transparent;        border-right: 16vw solid transparent;        border-top: 13vw solid #F7D84E;        margin-bottom: 2vw;    }}#strongpoint .down-arrow-and-taxt-container .down-arrow p {    color: #1E4584;}@media screen and (max-width: 1200px) {    #strongpoint .down-arrow-and-taxt-container .down-arrow p {        font-size: 4vw;        width: 20vw;        top: -11vw;        left: 50%;        transform: translateX(-50%);        text-align: center;    }}#strongpoint .good-changes .good-change .content-wrapper p::before {    background-color: #E0EFF9;}@media screen and (max-width: 1200px) {    #strongpoint .heading .text-container h2 {        font-size: 6vw;        line-height: 1.5;    }}@media screen and (max-width: 1200px) {    #strongpoint .down-arrow-and-taxt-container .down-arrow p {        font-size: 4vw;        width: 20vw;        top: -11vw;        left: 50%;        transform: translateX(-50%);        text-align: center;    }}#strongpoint .strongpoints-container .card .title-container .title, #strongpoint .strongpoints-container .strongpoint .title-container .title {    background-image: none;;}/* features */#features .content-area .heading h2 {    color: #1E4584;}h1#features .content-area .features-container .feature .title p {    color: #1E4584;}#features .content-area .features-container .feature .title {    background-color: #EDEEF3;    display: flex;    align-items: center;    padding: 5px 0;    border-radius: 40px;    width: 100%;}@media screen and (max-width: 1200px) {    #features .content-area .features-container .feature .title {        width: 95vw;        padding: 1.5vw 0;        border-radius: 10vw;    }}#features .content-area .features-container .feature .contents .text-container p .yellow-marker {    padding: 5px 0;}@media screen and (max-width: 1200px) {    #features .content-area .features-container .feature .title .number-img {        padding: 1vw 3vw 0;        align-content: center;        border-radius: 10vw;        margin-left: 1.5vw;        margin-right: 2vw;    }}@media screen and (max-width: 1200px) {    #features .content-area .features-container .feature .title .number-img img {        width: 12vw;    }}/* customer-vice */#customer-vice {    gap: 40px;    background-color: #F3F4F7;}#customer-vice .content-wrapper .seciton-title {    font-size: 42px;    font-weight: bold;    color: #1E4584;    margin: 81px 0 61px 0;    font-family: "Noto Serif JP";}@media screen and (max-width: 1200px) {    #customer-vice .content-wrapper .seciton-title {        font-size: 6.3vw;        margin: 14vw 0 10vw 0;    }}@media screen and (max-width: 1200px) {    #trial-training-introduction .content p {        font-size: 3.8vw;        line-height: 1.8;    }}@media screen and (max-width: 1200px) {    #trial-training-introduction {        height: initial;    }}/* trial-training-introduction */#trial-training-introduction {    height: 198px;    background-color: #DBE0EF;    z-index: 20;}#trial-training-introduction .content p {    color:#333333}#trial-training .traila-training-warpper .trial-training-order .trial-training-details .ribbon {    background-color: transparent;    -webkit-clip-path: none;    clip-path: none;}#trial-training .traila-training-warpper .trial-training-order .trial-training-details .ribbon img {    margin: auto;    display: block;    margin-top: 0;}#trial-training-introduction .content .pink-font {    color: #1E4584;    font-family: "Noto Serif JP";    font-size: 42px;    font-weight: bold;    margin: 35px 0 15px 0;}@media screen and (max-width: 1200px) {    #trial-training-introduction .content .pink-font {        font-size: 7vw;        margin: 6vw 0;        line-height: 1.5;    }}#trial-training-introduction .content p span {    font-size: 34px;    color: #1E4584;    border-bottom: 3px solid #1E4584;}@media screen and (max-width: 1200px) {    #trial-training-introduction .content p span {        border-bottom: 2px solid #1E4584;        font-size: 5.35vw;    }}#trial-training-introduction::after {    content: "";    width: 100%;    height: 185px;    background-color: #DBE0EF;    position: absolute;    z-index: -10;    bottom: -183px;    -webkit-clip-path: polygon(50% 100%, 100% 0%, 0% 0%);    clip-path: polygon(50% 100%, 100% 0%, 0% 0%);}@media screen and (max-width: 1200px) {    #trial-training-introduction::after {        -webkit-clip-path: polygon(50% 50%, 100% 0%, 0% 0%);        clip-path: polygon(50% 50%, 100% 0%, 0% 0%);        height: 45vw;        bottom: -44.8vw;    }}@media screen and (max-width: 1200px) {    #trial-training-introduction {        height: initial;    }}#trial-training .traila-training-warpper .heading h2 {    font-size: 42px;    font-weight: bold;    color: #1E4584;    font-family: "Noto Serif JP";}@media screen and (max-width: 1200px) {    #trial-training .traila-training-warpper .heading h2 {        font-size: 6.2vw;    }}#trial-training .traila-training-warpper .trial-training-order .trial-training-details::after {    position: absolute;    bottom: -40px;    left: 50%;    transform: translateX(-50%);    content: "";    border-left: 32px solid transparent;    border-right: 32px solid transparent;    border-top: 31px solid #F4D85C;}/* price-plans */#price-plans {    background-color: #F3F4F7;}#price-plans .price-plans-wrapper .heading h2 {    font-family: "Noto Serif JP";    font-size: 42px;    font-weight: normal;    color: #1F3B69;    position: absolute;    z-index: 20;    white-space: nowrap;}@media screen and (max-width: 1200px) {    #price-plans .price-plans-wrapper .heading h2 {        font-size: 6.2vw;        text-align: center;    }}#price-plans .price-plans-wrapper .price-plans .price-plan .title-and-time .title {    color: #1F3B69;    font-family: "Jost";    display: flex;    align-items: flex-end;    gap: 10px;}#price-plans .price-plans-wrapper .price-plans .price-plan .title-and-time .time {    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "ヒラギノ角ゴ ProN W3", sans-serif;    font-size: 24px;    font-weight: bold;    color: #FFFFFF;    background-color: #1F3B69;    border-radius: 5px;    padding: 0 15px;}@media screen and (max-width: 1200px) {    #price-plans .price-plans-wrapper .price-plans .price-plan .title-and-time .time {        font-size: 3.8vw;        border-radius: 0.5vw;        padding: 0 1vw;        height: 5.8vw;    }}/* section_logo */#section_logo .logo{margin: 70px 0 48px;}#section_logo .logo img{    width: 100%;    max-width: 400px;}@media screen and (max-width: 1200px) {    #section_logo .logo{        margin:  40px auto 20px;        text-align: center;        }    #section_logo .logo img{        width: 70%;    }}#location .logo {    margin: 68px 0 45px 0;    width: 400px;  }    @media screen and (max-width: 1200px) {    #location .logo {      width: 65vw;      margin: 15vw 0 7vw 0;    }  }    #location .location-container {    display: flex;    flex-direction: column;    align-items: center;  }    #location .location-container h3 {    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "ヒラギノ角ゴ ProN W3", sans-serif;    font-weight: bold;    font-size: 32px;    color: #7b6c5d;    margin-bottom: 50px;  }    @media screen and (max-width: 1200px) {    #location .location-container h3 {      margin-bottom: 7vw;      font-size: 4.8vw;    }  }    #location .location-container .second-area {    margin-bottom: 0;    margin-top: 0px;  }    @media screen and (max-width: 1200px) {    #location .location-container .second-area {      margin-top: 15vw;    }  }    #location .location-container .location-images {    display: flex;    justify-content: center;    flex-wrap: wrap;    gap: 10px;  }    @media screen and (max-width: 1200px) {    #location .location-container .location-images {      gap: 1vw;    }  }    @media screen and (max-width: 1200px) {    #location .location-container .location-images img {      width: 32.6vw;    }  }    #location .location-container .infos {    display: flex;    flex-direction: column;    margin: 45px 0;  }    @media screen and (max-width: 1200px) {    #location .location-container .infos {      margin: 5vw 0;      width: 87vw;    }  }    #location .location-container .infos .info {    display: flex;    background-image: linear-gradient(to right, #5f4f3f 1px, transparent 1px);    background-size: 5px 2px;    background-repeat: repeat-x;    background-position: left bottom;    padding: 15px 0;  }    @media screen and (max-width: 1200px) {    #location .location-container .infos .info {      background-image: linear-gradient(to right, #5f4f3f 0.3vw, transparent 0.3vw);      background-size: 1.5vw 0.4vw;      padding: 3.5vw 0;    }  }    #location .location-container .infos .info .title,  #location .location-container .infos .info p {    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "ヒラギノ角ゴ ProN W3", sans-serif;    font-size: 21px;    color: #5f4f3f;  }    @media screen and (max-width: 1200px) {      #location .location-container .infos .info .title,    #location .location-container .infos .info p {      font-size: 3.75vw;    }  }    #location .location-container .infos .info .title {    font-weight: bold;    margin: 0;    margin-right: 20px;    width: 100px;  }    @media screen and (max-width: 1200px) {    #location .location-container .infos .info .title {      margin-right: 0;      width: 19vw;    }  }    #location .location-container .infos .info p {    font-weight: 500;  }    #location .location-container .infos .info .phone-icon {    width: 36px;    height: 36px;    margin-right: 10px;  }    @media screen and (max-width: 1200px) {    #location .location-container .infos .info .phone-icon {      width: 5.5vw;      height: 5.5vw;      margin-right: 2vw;    }  }    #location .location-container .infos .info:last-child {    background-image: initial;  }    #location .map-wrap {    width: 100%;  }    #location .map-wrap .map {    position: relative;    width: 100%;    height: 100%;    padding-top: 500px;  }    @media screen and (max-width: 1200px) {    #location .map-wrap .map {      padding-top: 85vw;    }  }    #location .map-wrap .map iframe {    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;  }    #location .logo {    margin: 68px 0 45px 0;    width: 400px;}@media screen and (max-width: 1200px) {    #location .logo {        width: 65vw;        margin: 15vw 0 7vw 0;    }}/* FAQ */#q-and-a {    background-color: #F3F4F7;}#q-and-a .heading h2 {    color: #1F3B69;}#q-and-a .heading h2.yu-gothic {    color: #1F3B69;    font-family: "Noto Serif JP";}#q-and-a .q-and-a-container .q-and-a .question {    background-image: none;}#q-and-a .q-and-a-container .q-and-a .anser .a-icon {    color: #31548C;}/* trial-training *//* @media screen and (max-width: 1200px) {    #trial-training .traila-training-warpper .trial-training-order .trial-training-details .ribbon img {        width: 8vw;        margin-top: 4.5vw;    }} */@media screen and (max-width: 1200px) {    #trial-training .traila-training-warpper .trial-training-order .trial-training-details .ribbon {        width: 12.6vw;        height: 17vw;        top: -2vw;        left: -2vw;        -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);        clip-path: polygon(0 0, 100% 0, 100% 100%, 50% 80%, 0 100%);    }}/* reservation-form */#reservation-form {    background-image: url("../images/section/reservation-form/bg.png.webp");    background-repeat: no-repeat;    background-size: cover;    background-position: center center;    background-color: rgba(242, 187, 0, 0.03);    padding-bottom: 50px;}#reservation-form .heading h2 {    color: #1F3B69;}#reservation-form .heading h2.yu-gothic {    color: #1F3B69;    font-family: "Noto Serif JP";}#reservation-form .heading {    margin:50px 0 0;}#reservation-form form {    margin-top: 70px;    margin-bottom: 50px;}#smartwizard{    background-color: #ffffff;}.contact__form .ico__required {    color: #fff;    background: #31548C;}.carousel.custom-form-carousel .contact__radio label:has(input[type=radio]:checked) {    background: #FFB600;    color: #fff;}.arrow-btn {    background-color: #FFB600;}.carousel.custom-form-carousel input[type=radio]:checked+span:after {    content: "";    display: block;    position: absolute;    top: 50%;    margin-top: -10px;    right: 12px;    /* top: 13px; */    width: 10px;    height: 20px;    border-bottom: 6px solid #FFB600;    border-right: 6px solid #FFB600;    transform: translate(-5%, -23%) rotate(40deg);}.arrow-btn:hover {    background-color: #FFB600;    opacity: 0.7;    box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.8);  }