/*
Theme Name:オリジナルテーマ
Description: オリジナルテーマ
Author: CHOKOKU inc.
Theme URL: https://chokoku.co.jp
Version: 23.5.29
*/
/***********************************************/
/* update:2025/12/12 RishunTrading Limited.    */
/***********************************************/
/***********************************************/
/* page top                                    */
/***********************************************/
/***********************************************/
/* header                                      */
/***********************************************/
#header nav{
    right:0;
    left:-150%;
}
#header nav .inner{
    padding:80px 20px;
}
#header nav .inner ul{
    height:calc(100vh - 160px);
    overflow-y: auto;
    padding:0 10px;
}
#header .inner .logo{
    line-height:1;
}
@media(min-width:981px){
    #header .inner{
        justify-content: flex-start;
    }
    #header .inner .logo{
        width:calc(100% - 580px);
    }
    #header .inner .logo>a{
        margin-left:30px;
    }
    #header .inner .navi-box{
        width:580px;
    }
    #header .inner .navi-box .tel{
        white-space:nowrap;
    }
    #header .inner .navi-box .navi-button a{
        white-space:nowrap;
    }
}
@media(min-width:1400px){
    #header .inner{
        justify-content: center;
    }
    #header .inner .logo{
        width:100%;
    }
    #header .inner .logo>a{
        margin-left:0;
    }
}
/***********************************************/
/* front page                                  */
/***********************************************/
.h2org{
    font-size: 2.2rem;
    font-weight: bold;
    text-align: center;
}
.h3org{
    padding-bottom: calc(20 * (100vw / 480));
    font-size: 2rem;
    text-align: center;
    font-weight:bold;
    display: block;
    margin-block-start: 0.83em;
    margin-block-end: 0.83em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    unicode-bidi: isolate;
}
.h4org{
    font-size:1.2em;
    font-weight:bold;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    unicode-bidi: isolate;
}
@media(min-width:981px){
    .h2org{
        font-size: 4rem;
    }
    .h3org{
        margin-bottom: 10px;
        font-size:3rem;
        font-weight:bold;
    }
}
/***********************************************/
/* top slide                                   */
/***********************************************/
#header{
    height: calc(100 * (100vw / 480));
}
#top .slick-slide img {
    width:100%;
    height: 50vh;
    object-fit: cover;
    position: relative;
    object-position:center center;
}
#top .slider-item{
    height: 50vh;
}
#top .slider{
    height:50vh;
}
@media (min-width: 981px) {
    #header {
        height:80px;
    }
    #top .slick-slide img {
        height:60vh;
    }
    #top .slider-item{
        height: 60vh;
    }
    #top .slider{
        height:60vh;
    }
}
/***********************************************/
/* topintro                                    */
/***********************************************/
.tpintro-wrap{
    width:100%;
}
.concept .text-area .tpintro-wrap p{
    margin-bottom:10px;
}
.ul-tpintro{
    width:100%;
    margin:10px 0;
}
.ul-tpintro li{
    font-size: 1.1rem;
    line-height: 2;
}
@media(min-width:481px){
    .ul-tpintro li{
        font-weight: normal;
    }
}
@media(min-width:981px){
    .concept .text-area .tpintro-wrap p{
        line-height:1.8;
        font-size: 1.2rem;
    }
    .ul-tpintro li{
        font-size: 1.2rem;
        line-height: 1.6;
    }
}
@media(min-width:1025px){
    .ul-tpintro li{
        font-weight:300;
    }
}
/***********************************************/
/* top class                                   */
/***********************************************/
.class .jiujitsu {
    background-image: url('./img/judo00.jpg');
}
.class .kickboxing{
    background-image: url('./img/kickboxing00.jpg');
}
.class .mma{
    background-image: url('./img/mma00.jpg');
}
.class .grapling{
    background-image: url('./img/grapling00.jpg');
}
@media(min-width:981px){
    #top .class li{
        align-items:center;
    }
    #top .class figure{
        box-shadow:none;
    }
    #top .class figure img{
        box-shadow:1px 6px 10px rgba(0 0 0 / 15%);
    }
}
/***********************************************/
/* profile                                     */
/***********************************************/
#profile .title-area{
    background:url('./img/profile.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
#profile .profile-msg-wrap p{
    margin-bottom:10px;
}
@media(min-width:481px){
    #profile .title-area{
        margin-bottom:40px;
        background-position:center center;
    }
    #profile .profile._01, #profile .profile._02, #profile .profile._03, #profile .profile._04{
        flex-flow:row wrap;
        padding-bottom: 50px;
    }
    #profile .profile._03, #profile .profile._04{
        background-position:center center;
        height:auto;
    }
    #profile table{
        margin-top: calc(50 * (100vw / 480));
    }
    #profile .text-area{
        margin-top: calc(50 * (100vw / 480));
        padding:0 20px;
    }
}
@media(min-width:981px){
    #profile .title-area{
        background:url('./img/profile.jpg') center center / cover no-repeat;
        padding:0;
        height:40vh;
    }
    #profile .profile._01, #profile .profile._02, #profile .profile._03, #profile .profile._04{
        padding:100px 0;
        justify-content:space-between;
        margin:100px 0;
    }
    #profile .profile._01 figure, #profile .profile._02 figure, #profile .profile._03 figure, #profile .profile._04 figure{
        width:38%;
    }
    #profile .profile._01 table, #profile .profile._02 .text-area, #profile .profile._03 .text-area, #profile .profile._04 .text-area{
        width:58%;
        margin:0;
    }
    #profile .profile._02 figure, #profile .profile._04 figure{
        order:2;
    }
    #profile .profile._02 .text-area, #profile .profile._04 .text-area{
        order:1;
    }
    #profile h2{
        margin-bottom:40px;
    }
}
@media(min-width:1025px){
    #profile .profile._03 figure{
        height:auto;
    }
    #profile .profile._03 figure img{
        width:100%;
        aspect-ratio:4/5;
        object-fit:cover;
        top:0;
    }
}
@media(min-width:1200px){
    #profile .profile._01, #profile .profile._02, #profile .profile._03, #profile .profile._04{
        padding-left:calc((100% - 1200px) / 2);
        padding-right:calc((100% - 1200px) / 2);
    }
}
/***********************************************/
/* price                                       */
/***********************************************/
#link2 .content li .h3org{
    font-size:1.8rem;
}
@media(min-width:981px){
    #link2 .content li .h3org{
        font-size:2.2rem;
    }
}
@media(min-width:1025px){
    #link2 .content li .h3org{
        font-size:2.8rem;
    }
}
/***********************************************/
/* page header                                 */
/***********************************************/
.title-area h1{
    font-size:2.5rem;
}
@media(min-width:481px){
    .title-area h1{
        font-size:5rem;
    }
}
/***********************************************/
/* price                                       */
/***********************************************/
#price th, #price td{
    padding:5px 15px;
}
.price li{
    min-height:250px;
}
.price .text{
    font-size:0.9rem;
}
.price h3.h3org{
    font-size:2rem;
    margin:0;
    padding:0;
}
.price h4.h4org{
    margin:0;
    font-size:1rem;
}
p.text.attention{
    position:relative;
    padding-left:1.1em;
}
#price .text-area p.text.mb-0{
    margin-bottom:0;
}
p.text.attention:before{
    content:'※';
    position:absolute;
    top:0;
    left:0;
}
.ol-pr_kiyaku{
    width:100%;
    margin-bottom:50px;
}
#price .ol-pr_kiyaku>li{
    display:block;
    flex-direction:unset;
    justify-content:unset;
    height:auto;
    margin-bottom:0;
    padding:0;
    box-shadow:none;
    text-align:left;
    font-size: 1rem;
    position:relative;
    padding-left:1.1em;
    line-height: 2;
    font-weight:normal;
    letter-spacing: 0;
}
#price .ol-pr_kiyaku>li>span{
    position:absolute;
    top:0;
    left:0;
}
/* price list */
#price .price-box2._01 h2{
    font-size:2rem;
    margin:0;
    padding:0;
}
#price .price-box2._01 .fee{
    padding: 10px 0;
    font-size: 1.5rem;
}
#price .price-box2._01 h3{
    margin:0;
    font-size:1rem;
}
#price .price-box2._01 .text{
    font-size:0.9rem;
}
#price th, #price td{
    white-space:nowrap;
}
@media(min-width:481px){
    #price th, #price td{
        padding:5px 20px;
    }
    #price .content{
        padding:0 20px;        
    }
}
@media(min-width:981px){
    .price h3.h3org{
        padding:0;
    }
}
/***********************************************/
/* class                                       */
/***********************************************/
#class .title-area{
    background:url('./img/class.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
.ol-pr_kiyaku.ol-cl_strength{
    margin:10px 0 0 0;
}
#class .ol-cl_strength>li{
    display:block;
    flex-direction:unset;
    justify-content:unset;
    height:auto;
    padding:0;
    margin:0;
    box-shadow:none;
    text-align:left;
    font-size: 0.9rem;
    position:relative;
    padding-left:1.1em;
    line-height: 2;
    font-weight:300;
    letter-spacing: 0;
}
#class .ol-cl_strength>li span{
    position:absolute;
    top:0;
    left:0;
}
.mb-10{
    margin-bottom:10px;
}
.mb-20{
    margin-bottom:20px;
}
.mb-30{
    margin-bottom:30px;
}
.mt-10{
    margin-top:10px;
}
.mt-20{
    margin-top:20px;
}
.mt-30{
    margin-top:30px;
}
.ul-pochi{
    width:100%;
    display:block;
    list-style: disc;
    list-style-position: outside;
    padding-left:1.1em;
    margin-top:10px;
}
#class .ul-pochi>li{
    display:list-item;
    flex-direction:unset;
    justify-content:unset;
    height:auto;
    padding:0;
    margin:0;
    box-shadow:none;
    text-align:left;
    font-size: 0.9rem;
    position:relative;
    line-height: 2;
    font-weight:300;
    letter-spacing: 0;
    list-style: disc;
}
#class .mma table td p{
    margin-top:10px;
}
#class table td strong{
    font-weight:bold;
    font-size: 1.17em;
    display: block;
    font-size: 1.17em;
    margin:0;
    letter-spacing: 0.025em;
    font-family: "Lato", sans-serif;    
}
@media(min-width:481px){
    #class table th{
        padding:0.5em 1em;
    }
    #class table td{
        padding:0.5em 1em;
    }
    #class .content{
        padding:0 20px;
    }
    #class .img-area{
        height:auto;
        margin-bottom:40px;
    }
    #class h2{
        bottom:20px;
        left:20px;
        padding:20px;
    }
    #class .content>li{
        margin-bottom:100px;
    }
    #class .ol-cl_strength>li{
        font-weight:normal;
    }
    #class .ul-pochi>li{
        font-weight:normal;
    }
}
@media(min-width:981px){
    #class .title-area{
        background:url('./img/class.jpg') center center / cover no-repeat;
        padding: 0;
        height:40vh;
    }
    #class table th{
        padding:20px;
    }
    #class table td{
        padding:20px;
    }
    #class .sliderArea .slick-track img{
        aspect-ratio:5/3;
        object-fit:cover;
    }
    #class .content>li{
        margin-bottom:150px;
    }
    #class h2{
        bottom:50px;
        left:50px;
        padding:20px;
    }
}
@media(min-width:1025px){
    #class .sliderArea .slick-track img{
        aspect-ratio:30/16;
    }
}
/***********************************************/
/* Q&A                                         */
/***********************************************/
#q-and-a .title-area{
    background:url('./img/qanda.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
.ul_faq-wra{
    width:100%;
    padding-left:1em;
}
.ul_faq-wra>li{
    list-style: disc;
    font-size:1rem
}
.ul_faq-wra>li p{
    font-size:1rem
}
.ul_faq-wra>li p>strong{
    font-weight:500;
}
@media(min-width:981px){
    #q-and-a .title-area{
        padding: 0;
        height:40vh;
    }
}
/***********************************************/
/* schedule                                    */
/***********************************************/
#schedule .title-area {
    background:url('./img/schedule.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
.schedule-inner{
    width:100%;
    overflow-x: auto;
}
.schedule-wrap{
    min-width:600px;
}
.schedule-wrap img{
    width:auto;
    max-width:100%;
    height:auto;
    -webkit-user-drag:none;
    user-drag:none;
    pointer-events:none;
}
.schedule-sp-word{
    line-height:1.4;
    margin-bottom:10px;
}
@media(min-width:481px){
    .contains-wrap{
        padding:0 20px;
    }
}
@media(min-width:981px){
    #schedule .title-area {
        background:url('./img/schedule.jpg') center center / cover no-repeat;
        padding: 0;
        height:40vh;
    }
}
@media(min-width:992px){
    .schedule-sp-word{
        display:none;
    }
}
@media(min-width:1200px){
    .contains-wrap{
        padding:0;
    }
}
/***********************************************/
/* contact                                     */
/***********************************************/
#contact .title-area {
    background:url('./img/contact.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
#contact{
    width:100%;
}
#contact>.inner{
    width:100%;
}
#contact>.inner .contactfrm-wrap{
    width:100%;
}
.tbl-contact-wrap{
    width:100%;
    padding:0 20px;
}
#contact .tbl-contact-wrap table{
    width:100%;
}
#contact .tbl-contact-wrap table tr{
    width:100%;
    display:block;
    margin-bottom:20px;
}
#contact .tbl-contact-wrap table th{
    width:100%;
    display:block;
    padding: calc(20 * (100vw / 480));
    text-align:left;
    font-weight:700;
    font-size:1rem;
}
#contact .tbl-contact-wrap table td{
    width:100%;
    display:block;
    padding: calc(20 * (100vw / 480));    
    font-size:1rem;
}
.cl_contact_type{
    display:flex;
    flex-flow:row wrap;
}
.cl_contact_type .wpcf7-list-item{
    display:flex;
    align-items:center;
}
.cl_contact_type .wpcf7-list-item .wpcf7-list-item-label{
    font-weight:500;
}
#contact .tbl-contact-wrap table td input[type='radio']{
    width:20px;
    height:20px;
    margin-left:10px;
}
#contact .tbl-contact-wrap table td input[type='text'],
#contact .tbl-contact-wrap table td input[type='tel'],
#contact .tbl-contact-wrap table td input[type='email'],
#contact .tbl-contact-wrap table td textarea{
    width:100%;
    font-size:0.95rem;
    padding:10px;
    border:solid 1px #aaa;
}
#contact .tbl-contact-wrap table td input[type='text']::placeholder,
#contact .tbl-contact-wrap table td input[type='tel']::placeholder,
#contact .tbl-contact-wrap table td input[type='email']::placeholder,
#contact .tbl-contact-wrap table td textarea::placeholder{
    font-size:0.95rem;
}
@media(min-width:481px){
    #contact .tbl-contact-wrap table th{
        padding: 1em;
    }
    #contact .tbl-contact-wrap table td{
        padding: 1em;
    }
}
@media(min-width:981px){
    #contact .title-area {
        padding: 0;
        height:40vh;
    }
    #contact .tbl-contact-wrap table tr{
        width:100%;
        display: table-row;
        margin-bottom:0;
    }
    #contact .tbl-contact-wrap table th{
        display: table-cell;
        text-align:left;
        width:40%;
    }
    #contact .tbl-contact-wrap table td{
        display: table-cell;
        width:60%;
    }
    .tbl-contact-wrap{
        margin-bottom:40px;
    }
    .submit-wrap{
        margin-bottom:40px;
    }
}
/***********************************************/
/* instructors                                 */
/***********************************************/
#instructors .title-area{
    background:url('./img/voice.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
#instructors p.h1-jp{
    display: inline-block !important;
    color: #f8f8f8;
    text-align: center;
    text-shadow: 2px 2px 1px rgba(153, 153, 153, 0.8);
    font-weight: bold;
    font-size:0.8rem;
}
#instructors .content{
    padding:0 20px;
}
.ul-instructorlist{
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    flex-flow: row wrap;
}
.ul-instructorlist>li{
    display:block;
    width:100%;
    margin-bottom:40px;
}
.ul-instructorlist>li .box{
    width: 100%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.ul-instructorlist>li .pict{
    width:100%;
}
.ul-instructorlist>li .pict>img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
}
.ul-instructorlist>li .desc{
    padding:10px;
}
.ul-instructorlist>li .desc>h3{
    font-size:18px;
    text-align:center;
    margin-bottom:10px;
}
.ul-instructorlist>li .desc>p{
    font-size:16px;
    font-weight:500;
}
@media(min-width:481px){
    #instructors p.h1-jp{
        font-size:1rem;
    }
    .ul-instructorlist>li{
        display:block;
        width:50%;
        margin-bottom:40px;
        padding:0 5px;
    }
    .ul-instructorlist>li .desc{
        min-height:480px;
    }
    #instructors .content{
        margin-bottom:110px !important;
    }
}
@media(min-width:981px){
    #instructors .title-area{
        padding:0;
        height:40vh;
    }
    .ul-instructorlist>li{
        width:33.333%;
        padding:0;
    }
    .ul-instructorlist>li:nth-of-type(3n+1){
        padding-right:10px;
    }
    .ul-instructorlist>li:nth-of-type(3n+2){
        padding:0 5px;
    }
    .ul-instructorlist>li:nth-of-type(3n){
        padding-left:10px;
    }
    .ul-instructorlist>li .desc{
        min-height:350px;
    }
}
@media(min-width:1025px){
    #instructors p.h1-jp{
        font-size:1.2rem;
        font-weight:900;
    }
    .ul-instructorlist>li:nth-of-type(3n+1){
        padding-right:20px;
    }
    .ul-instructorlist>li:nth-of-type(3n+2){
        padding:0 10px;
    }
    .ul-instructorlist>li:nth-of-type(3n){
        padding-left:20px;
    }
    .ul-instructorlist>li .desc{
        min-height:380px;
    }
}
@media(min-width:1200px){
    .ul-instructorlist>li .desc{
        min-height:350px;
    }
}
/***********************************************/
/* privacy policy                              */
/***********************************************/
#privacy .title-area{
    background:url('./img/voice.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
.contains-wrap{
    padding:0 20px;
}
.detail-wrap{
    margin-top:40px;
    margin-bottom:10px;
}
.ul_pri{
    padding-left:1em;
}
.ul_pri>li{
    font-size:0.9rem;
    line-height: 2;
    list-style:disc;
}
@media(min-width:481px){
    #privacy h2{
        font-size:1.2rem;
    }
}
@media(min-width:981px){
    #privacy .title-area{
        padding: 0;
        height:40vh;
    }
    #privacy h2{
        font-size:1.2rem;
    }
}
/***********************************************/
/* voice                              */
/***********************************************/
#voice .title-area{
    background:url('./img/voice.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
@media(min-width:981px){
    #voice .title-area{
        padding: 0;
        height:40vh;
    }
}
/***********************************************/
/* kids                                        */
/***********************************************/
#kids .title-area{
    background:url('./img/kids.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
#kids .class li.list .text-box{
    width:80%;
}
#kids .contact .button .btn03{
    white-space: nowrap;
}
.tbl-kids-schedule{
    border:none;
    width:100%;
}
.tbl-kids-schedule th{
    border:none;
    font-weight:300;
    font-size:0.8rem;
    white-space:nowrap;
    text-align:left;
    width:120px;
    padding:5px 0;
}
.tbl-kids-schedule td{
    border:none;
    font-weight:300;
    font-size:0.8rem;
    width:calc(100% - 120px);
    text-align:left;
    padding:5px 0;
}
#kids .schedule .text-box li.list .tbl-kids-schedule span{
    padding:0;
    margin-left:1em;
}
@media(min-width:481px){
    #kids .class li.list .text-box{
        width:70%;
    }
    #kids .class{
        justify-content:space-evenly;
        flex-flow:row wrap;
    }
    #kids .class li.list{
        max-width:unset;
        height:auto;
        margin-bottom:20px;
    }
    #kids .reason-box{
        flex-flow:row wrap;
        justify-content: space-around;
    }
    #kids .reason-box .list{
        width:100%;
        max-width:unset;
        margin-bottom:20px;
    }
    #kids .content{
        padding:0 20px;
    }
    .tbl-kids-schedule th{
        font-size:1rem;
        letter-spacing: 0.1em;
        width:160px;
    }
    .tbl-kids-schedule td{
        font-size:1rem;
        letter-spacing: 0.1em;
        width:calc(100% - 160px);
    }
}
@media(min-width:981px){
    #kids .title-area{
        background:url('./img/kids.jpg') center center / cover no-repeat;
        padding:0;
        height:40vh;
    }
    #kids .class li.list{
        max-width:100%;
    }
    #kids .class li.list{
        width:100%;
        max-width:365px;
        margin:0;
        height:365px;
    }
    #kids .class li.list .text-box{
        width:80%;
    }
    #kids .reason-box .list{
        width:calc(33.333% - 40px);
        max-width:unset;
        margin:0 20px 40px 20px;
    }
}
@media(min-width:1025px){
    #kids .class li.list{
        margin:0;
    }
    #kids .reason-box .list{
        width:calc(33.333% - 40px);
        margin:0 20px 20px 20px;
    }
}
@media(min-width:1200px){
    #kids .reason-box{
        justify-content: space-between;
    }
    #kids .reason-box .list{
        max-width:210px;
        margin:0;
    }
}
/***********************************************/
/* campaign box                                */
/***********************************************/
#price .title-area{
    background:url('./img/price.jpg') center center / cover no-repeat;
    padding: calc(120 * (100vw / 480)) 0 calc(90 * (100vw / 480));
}
.price-campaign-wrap{
    margin: 0 calc(10 * (100vw / 480));
}
.price-campaign-wrap .box{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:40px 10px;
    background:#FF3451;
    margin-bottom:20px;
    box-shadow: 5px 10px 20px rgba(0, 0, 0, 0.25);
}
.price-campaign-wrap .box{
    width:100%;
}
.ol-campaign{
    margin-bottom:30px;
}
.price .ol-campaign>li{
    display:block;
    white-space:nowrap;
    flex-direction:unset;
    justify-content:unset;
    height:auto;
    min-height:unset;
    margin-bottom:0;
    padding:0;
    box-shadow:none;
    text-align:left;
    font-size: 2rem;
    position:relative;
    padding-left:1.1em;
    line-height: 1.1;
    font-weight:normal;
    letter-spacing: 0;
    color:#fff;
    font-weight:700;
}
.price .ol-campaign>li>span{
    position:absolute;
    top:0;
    left:0;
}
.price .price-campaign-wrap h3.h3org{
    color:#fff;
    text-align:center;
    margin-bottom:20px;
}
.price .price-campaign-wrap p{
    color:#fff;
    font-size:1rem;
    font-weight:700;
    line-height:1.2;
}
.price .price-campaign-wrap p.after_h3org{
    color:#fff;
    text-align:center;
    font-weight:700;
    font-size:1.8rem;
    margin-bottom:30px;
}
.price .price-campaign-wrap p a{
    display:flex;
    font-size:1rem;
    max-width:300px;
    height:45px;
    border-radius:23px;
    background:#fff;
    color:#FF3451;
    justify-content:center;
    align-items: center;
    margin-left:auto;
    margin-right:auto;
    position:relative;
    transition:all 0.5s;
}
.price .price-campaign-wrap p a:hover{
    transform:translateY(5px);
    background:#aaa;
    color:#fff;
}
.price .price-campaign-wrap p.attention{
    padding-left:1em;
    position:relative;
    line-height:1.4;
}
.price .price-campaign-wrap p.attention:before{
    content:'※';
    position:absolute;
    top:0;
    left:0;
}
.ol-inner{
    width:100%;
    display:flex;
    justify-content: center;
}
/* price page */
#price .ol-campaign>li{
    display:block;
    white-space:nowrap;
    flex-direction:unset;
    justify-content:unset;
    height:auto;
    min-height:unset;
    margin-bottom:0;
    padding:0;
    box-shadow:none;
    text-align:left;
    font-size: 2rem;
    position:relative;
    padding-left:1.1em;
    line-height: 1.1;
    font-weight:normal;
    letter-spacing: 0;
    color:#fff;
    font-weight:700;
}
#price .ol-campaign>li>span{
    position:absolute;
    top:0;
    left:0;
}
#price .price-campaign-wrap h3.h3org{
    color:#fff;
    text-align:center;
    margin-bottom:20px;
    font-size:2rem;
    padding-bottom:0;
}
#price .price-campaign-wrap p{
    color:#fff;
    font-size:1rem;
    font-weight:700;
    line-height:1.2;
}
#price .price-campaign-wrap p.after_h3org{
    color:#fff;
    text-align:center;
    font-weight:700;
    font-size:1.8rem;
    margin-bottom:30px;
}
#price .price-campaign-wrap p a{
    display:flex;
    font-size:1rem;
    max-width:300px;
    height:45px;
    border-radius:23px;
    background:#fff;
    color:#FF3451;
    justify-content:center;
    align-items: center;
    margin-left:auto;
    margin-right:auto;
    position:relative;
    transition:all 0.5s;
}
#price .price-campaign-wrap p a:hover{
    transform:translateY(5px);
    background:#aaa;
    color:#fff;
}
#price .price-campaign-wrap p.attention{
    padding-left:1em;
    position:relative;
    line-height:1.4;
}
#price .price-campaign-wrap p.attention:before{
    content:'※';
    position:absolute;
    top:0;
    left:0;
}
.dl-campaign dt p, .dl-campaign dd p{
    text-align:center;
}
@media(min-width:481px){
    .price-campaign-wrap{
        max-width:480px;
        margin-left:auto;
        margin-right:auto;
    }
    .price-campaign-wrap .box>div>p:first-of-type{
        text-align:center;
    }
}
@media(min-width:981px){
    #price .title-area{
        background:url('./img/price.jpg') center center / cover no-repeat;
        padding: 0;
        height:40vh;
    }
    .price-campaign-wrap{
        max-width:unset;
    }
    .price-campaign-wrap .box>div{
        width:100%;
    }
    .dl-campaign{
        display:flex;
        flex-flow:row nowrap;
    }
    .dl-campaign dt{
        width:50%;
    }
    .dl-campaign dt p{
        text-align:center;
    }
    .dl-campaign dd{
        width:50%;
    }
    .dl-campaign dd p{
        text-align:center;
    }
    .flx-center{
        width:100%;
        display:flex;
        justify-content: center;
    }
    .dl-campaign dt>div>p:first-of-type, .dl-campaign dd>div>p:first-of-type{
        height:60px;
        display:flex;
        justify-content:center;
        align-items:flex-end;
    }
}
/***********************************************/
/* header logo                                 */
/***********************************************/
.hdlogo_link{
    display:flex;
    align-items:center;
}
.hdlogo_link div{
    font-size:1.5rem;
    margin-left:1em;
    font-family: "Lato", sans-serif;
    font-weight:700;
    letter-spacing:0.1em;
    color:#333;
}