@charset "utf-8";


body {
font-family:Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
font-size:1rem;
background: #fff;
margin:0;
padding:0;
color:#000;
}

a {
	color:#000;
    /* -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out; */
}
a:hover,a:visited {
	color:#000;
}
a:hover {
    /* opacity: 0.8;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
    text-decoration: none; */
}

ul, ol, li {
	margin:0;
	padding:0;
	list-style:none;
}

.center {
    text-align: center!important;
}

.red {
    color:#ff0000;
}

.attn_red {
    border:1px solid #ff0000;
    padding:20px;
    color: #ff0000;
    font-weight: normal;
    font-size: 1rem;
    background: #fff;
}

.attn_red_small {
    border:1px solid #ff0000;
    padding:15px;
    color: #ff0000;
    font-weight: normal;
    font-size: 0.9rem;
    background: #fff;
}

.attn_red p {
    color: #ff0000!important;
    margin:0!important;
}
.attn_red span {
    margin:10px 0;
}

.attn_gold{
    border:1px solid #FFBA00;
    padding:20px;
    color: #FFBA00;
    font-weight: bold;
}
.attn_gold p {
    color: #FFBA00!important;
    margin:0!important;
}
.attn_gold span {
    color: #ff0000;
}


.bell12_wrap {
    width:100%;
    margin:0 auto 0;
    /* background: #D3D2D2; */
}

#top {
    background: #fff;
}
#course {
    background: #fff;
}

#junior {
    background: #EDF5FD;
}
#regular {
    background: #F4FFDB;
}
#partner {
    background: #393939;
}
#join {
    background: #63C335;
}

.junior_wrap {
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/junior_bg.png) no-repeat 50% 100%;
    background-size:100%;
}
.regular_wrap {
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/regular_bg.png) no-repeat 50% 100%;
    background-size:100%;
}
.partner_wrap {
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/partner_bg.png) no-repeat 50% 100%;
    background-size:100%;
}

.sponly {
    display: none;
}
.pconly {
    display: initial;
}

.join_btn {
    margin:20px auto;
    text-align: center;
}

.join_btn a {
    width: 600px;
    display: block;
    text-align: center;
    /* background: #fff; */
    color:#333;
    font-weight: bold;
    margin:35px auto 0;
    text-decoration: none;
    /* border-radius: 4rem;
    box-shadow: 0px 0px 15px -5px #777777; */
}
.join_btn a img {
    width: 100%;
}

a.btn {
    display: block;
    text-align:center;
    padding:25px;
    margin:10px 80px 25px;
    font-size: 1.25rem;
    line-height: 120%;
    text-decoration: none;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

a.btn:hover {
    background:#e4e4e4;
    opacity: 0.8;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

a.black {
    color:#000;
    border:1px solid #000;
}

@media screen and (max-width: 640px) {
    .bell12_wrap {
        width:100%;
        box-shadow:none;
    }

    .junior_wrap {
        backgroud-size:cover;
    }

    .sponly {
        display: initial;
    }
    .pconly {
        display: none;
    }

    .join_btn {
        margin:20px auto 0;
        text-align: center;
    }

    .join_btn a {
        width: auto;
        display: block;
        text-align: center;
        font-weight: bold;
        padding:0px 15px;
    }

    .junior_wrap {
        background-size:220%;
    }
    .regular_wrap {
        background-size:220%;
    }
    .partner_wrap {
        background-size:220%;
    }

    .attn_red {
        padding:10px;
        color: #ff0000;
        font-weight: normal;
        font-size: 0.8rem;
        background: #fff;
    }

    .attn_red_small {
        padding:8px;
        color: #ff0000;
        font-weight: normal;
        font-size: 0.7rem;
        background: #fff;
    }

    .attn_gold{
        padding:14px;
    }

    .btn_wrap {
        width:90%;
        margin:6px auto 0px;
        text-align: center;
    }

    a.btn {
        display: block;
        text-align:center;
        padding:15px 10px;
        margin:10px 0;
        font-size: 0.8rem!important;
        line-height: 120%;
        text-decoration: none;
        border-radius: 0!important;
    }

}

/* header ----- */

.header_wrap {
    width:100%;
    /* background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/hdr_bg2_pc.jpg) 50% 100%;
    background-repeat: no-repeat;
    background-size: cover; */
    position: relative;
    margin:auto;
    background-color: #63C335;
}
.second .header_wrap {
    position: fixed;
    top:0;
    left:0;
}

.header {
    width:1000px;
    display: block;
    padding: 0px;
    margin:auto;
}
.header_btm {
    display: block;
    background: #fff;
    padding:15px 0;
    margin:auto;
}
.second .header_btm {
    display: block;
    background: #fff;
    padding:20px 0 0;
    margin:auto;
}
.header_btm img {
    max-height: 30px;
    margin:auto;
    display: block;
}

.header_btm ul.hdrnav {
    max-width:1040px;
    margin:10px auto 0;
    display: flex;
    flex-wrap: nowrap;
}
.header_btm ul.hdrnav li {
    width:33.33%;
    padding-bottom: 12px;
}
.header_btm ul.hdrnav li a {
    display: block;
    margin:auto;
    padding:10px;
}
.header_btm ul.hdrnav li img {
    max-height: 40px;
    display: block;
    margin:auto;
}

.nav_partner_ac {
    background:url(../images/bell12_2025/arrow_blk.png) no-repeat center bottom;
    background-size: 80px;
}
.nav_partner a {
    background:#000;
}
.nav_regular_ac {
    background:url(../images/bell12_2025/arrow_grn.png) no-repeat center bottom;
    background-size: 80px;
}
.nav_regular a {
    background:#63C335;
}
.nav_junior_ac {
    background:url(../images/bell12_2025/arrow_blu.png) no-repeat center bottom;
    background-size: 80px;
}
.nav_junior a {
    background:#B2D6FF;
}
.nav_join a {
    background:#FEBA2B;
}



#top .header h1 {
    width:100%;
    padding:0;
    margin:auto;
}
.second .header h1 {
    width:700px;
    padding:0;
    margin:30px auto 40px;
}
.header h1 img {
    width: 100%;
    display: block;
    margin:0;
}
.second .header h1 img {
    width: 100%;
    display: block;
    margin:0;
}

.header .mypage {
    position: absolute;
    top:0;
    right:20px;
}
.header .mypage a {
    display: block;
    background:#fff;
    text-decoration: none;
    color:#333;
    font-size:1.125rem;
    padding:10px 20px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

@media screen and (max-width: 640px) {

    .header {
        width: 100%;
        /* background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/hdr_bg2_sp.jpg) 0% 50% no-repeat;
        background-size: cover;
        justify-content: space-between;
        align-items: center; */
        padding:0 0px 0px;
    }
    .header_btm {
        padding:10px 0;
    }
    .second .header_btm {
        padding:15px 0 0;
    }
    .header_btm img {
        max-height: auto;
        max-width: 80%;
        margin:auto
    }


    .header_btm ul.hdrnav {
        max-width:100%;
        margin:10px auto 0;
        display: flex;
        flex-wrap: nowrap;
    }
    .header_btm ul.hdrnav li {
        padding-bottom: 8px;
    }
    .header_btm ul.hdrnav li a {
        display: block;
        margin:auto;
        padding:10px;
    }
    .header_btm ul.hdrnav li img {
        max-height: 25px;
        height: 25px;
        max-width: auto;
        width:auto;
        display: block;
        margin:auto;
    }

    .nav_partner_ac {
        background:url(../images/bell12_2025/arrow_blk.png) no-repeat center bottom;
        background-size: 40px;
    }
    .nav_partner a {
        background:#000;
    }
    .nav_regular_ac {
        background:url(../images/bell12_2025/arrow_grn.png) no-repeat center bottom;
        background-size: 40px;
    }
    .nav_regular a {
        background:#63C335;
    }
    .nav_junior_ac {
        background:url(../images/bell12_2025/arrow_blu.png) no-repeat center bottom;
        background-size: 40px;
    }
    .nav_junior a {
        background:#B2D6FF;
    }
    .nav_join a {
        background:#FEBA2B;
    }

    .second .header {
        padding:10px 0px 0px;
    }

    #top .header h1 {
        width:100%;
        padding:0;
        margin:0 auto;
    }
    .second .header h1 {
        width:25%;
        padding:0;
        margin:15px auto 20px;
    }
    #top .header h1 img {
        width:100%;
    }
    .second .header h1 img {
        width:100%;
    }

    .header .mypage {
        position: absolute;
        top:0;
        right:0px;
    }

    .header .mypage a {
        font-size:0.8rem;
        padding:5px 8px;
        border-bottom-right-radius: 0;
    }

}


.nav {
    margin:0 auto;
    /* background:#63C335; */
}

footer .nav {
    margin:0 auto;
    background:none;
    width:100%;
}

.nav2 {
    display:flex;
    text-align: center;
    margin:0 auto;
    width:80%;
    max-width: 1000px;
    justify-content: center;
}
.nav2 li {
    text-align: center;
    padding:20px 0 10px;
    width:calc(50% - 0px);
    margin:0 0;
    display: flex;
    justify-content: space-between;
}
.nav2 li a {
    font-size: 1.35rem;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    padding:18px 10px;
    color:#000;
    width:calc(100% - 20px);
    justify-content: center;
    align-items: center;
    background:#1B46BA;
    color: #fff;
}
.nav2 li:first-child a {
    background:#FFBA00;
    color: #000;
}
/* .nav2 li:nth-child(1) a {
    background:#fff;
    color: #19153F;
}
.nav2 li:nth-child(2) a {
    background:#1B46BA;
    color: #fff;
}
.nav2 li:nth-child(3) a {
    background:#CFFAAF;
    color: #333;
}
.nav2 li:nth-child(4) a {
    background:#fff;
    color: #19153F;
} */
.nav2 li a:hover {
    /* text-decoration: underline; */
}

.nav2 li:last-child a {
    border-right:none;
}

@media screen and (max-width: 640px) {
    .nav2 {
        display: flex;
        width:100%;
        padding:0px;
        margin:auto;
        justify-content: center;
    }
    .nav2 li {
        display: block;
        width:50%;
        padding:0 0;
    }
    .nav2 li a {
        font-size: 0.9rem;
        line-height: 130%;
        padding:15px 8px;
        text-decoration: none;
        width:calc(100% - 16px);
    }


    #second .nav2 li {
        display: block;
        width:calc(50%);
        padding:14px 0;
    }
    #second .nav2 li a {
        font-size: 0.9rem;
        line-height: 130%;
        padding:0 20px;
        text-decoration: none;
    }
}


/* section ----- */

section {
    margin:0 auto;
    padding:80px 0;
    width:70%;
}

section#about {
    margin:20px auto;
    padding:0 0;
}

section#howto {
    margin:20px auto;
    padding:0 0;
}

section#catch {
    margin:0px auto 30px;
    padding:0 0;
}

section#point {
    margin:0 auto;
    padding:0px 0;
}

section#class {
    margin:0 auto;
    padding:30px 0 0;
    max-width: 1000px;
}

section#merit {
    margin:0 auto;
    padding:30px 0;
    max-width: 1000px;
}


section#join,
section#hasso {
    margin:50px auto;
    margin-bottom:0;
    max-width: 1000px;
}
section#hasso {
    padding:0 0 100px 0;
}

section h1 {
    text-align: center;
    margin:0;
    padding:0;
}

section h1 img {
    height: 50px;
    display: block;
    margin: 0 auto;
}

section h2 {
    text-align: center;
    margin:20px 0 0 0;
    padding:40px 0 0 0;
    font-size: 1.6rem;
    height: 3rem;
    color:#19153F;
}
section h2 img {
    height: 3rem;
}

section h3 {
    text-align: center;
    margin:40px 0 20px 0;
    padding:60px 0 0 0;
    font-size: 1.75rem;
    color:#19153F;
}


section p {
    font-size:1.1rem;
    line-height: 140%;
    text-align: center;
}

@media screen and (max-width: 640px) {

    section {
        margin:70px auto;
        padding:0 0;
        width:90%;
    }

    section#catch {
        margin:20px auto 30px;
        padding:0 0;
    }

    section#join {
        margin:70px 0 0px;
        padding:0 0;
    }

    section#about {
        margin:20px auto;
        padding:0 0;
    }

    section#point {
        margin:70px 0 0px;
        padding:0 0;
    }

    section#class {
        margin:30px auto 0px;
        padding:0 0;
        max-width: 90%;
    }

    section#merit {
        margin:40px auto 0px;
        padding:0 0 50px 0;
        max-width: 90%;
    }

    section#join,
    section#hasso {
        margin:70px auto 0px;
        padding:0 0;
        max-width: 90%;
    }


    section#hikikae {
        margin:20px auto 0px;
        padding:0 0 50px 0;
        width:95%;
    }

    section h1 {
        text-align: center;
        margin:0;
        padding:0;
    }

    section h1 img {
        height: 35px;
        display: block;
        margin: 0 auto;
    }

    section h2 {
        text-align: center;
        margin:10px 0 0 0;
        padding:30px 0 0 0;
        font-size: 1.125rem;
        color:#19153F;
        height: 2rem;
    }
    section h2 img {
        width: auto;
        height: 2rem;
    }

    section p {
        font-size:0.9rem;
        line-height: 140%;
        text-align: center;
    }

}

/* top ----- */

.top_body {
    /* background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/bg2.png) no-repeat; */
    background-size: 150%;
    padding:30px 0 180px 0;
}

@media screen and (max-width: 640px) {
    .top_body {
        /* background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/bg2.png) no-repeat;
        background-size: 300%; */
        padding:0px 0 100px 0;
    }
}

/* howto ----- */

.howto_body {
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/bg2.png) no-repeat;
    background-size: 150%;
    padding:150px 0 180px 0;
}

@media screen and (max-width: 640px) {
    .howto_body {
        background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/bg2.png) no-repeat;
        background-size: 300%;
        padding:80px 0 100px 0;
    }
}

/* class ----- */

.class_body {
    padding:0px 0 50px 0;
}

@media screen and (max-width: 640px) {
    .class_body {
        padding:0px 0 50px 0;
    }
}


/* premium ----- */

.premium_body {
    padding:130px 0 180px 0;
}

@media screen and (max-width: 640px) {
    .premium_body {
        padding:80px 0 100px 0;
    }
}


/* regular ----- */

.regular_body {
    padding:130px 0 150px 0;
}

@media screen and (max-width: 640px) {
    .regular_body {
        padding:80px 0 100px 0;
    }
}

/* catch ------ */

section#catch h2 {
    width:600px;
    margin:auto;
    height: auto;
}

section#catch h2 img {
    width:100%;
    height: auto;
}

section#catch p {
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    color:#000;
}

@media screen and (max-width: 640px) {

    section#catch h2 {
        width:90%;
        margin:auto;
    }

    section#catch p {
        font-size: 1rem;
    }
}


/* point ----- */

#point h2 {
    width:600px;
    margin:0 auto;
    height: auto;
}
#point h2 img {
    display: block;
    width:100%;
    height: auto;
}
.point_pre {
    width:640px;
    padding:80px;
    margin:0 auto;
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/tradingcard_bg.png) no-repeat #fff;
    background-size: 100%;
    background-position: 100% 100%;
    text-align: center;
    border-radius: 50px;
}
.point_pre img {
    display: block;
    width:90%;
    margin:auto;
}
.point_inner {
    padding-bottom:80px;
}
.point_inner:last-child {
    padding-bottom:0px;
}
.point_inner_ttl {
    width: 100%;
    margin:0 0 10px 0;
}
.point_inner_ttl img {
    width: 100%;
}
.point_pre p {
    font-size:1.25rem;
    font-weight: bold;
}


@media screen and (max-width: 640px) {

    section#point {
        width:100%;
        margin:0px 0;
    }

    #point h2 {
        width:85%;
        margin:0 auto;
    }
    #point h2 img {
        width:100%;
    }

    #point ul {
        padding:10vw 5vw;
        margin:auto;
    }

    #point ul li {
        display: block;
        margin:0px 0 30px 0;
        text-align: left;
    }
    #point ul li h3 {
        font-size:1rem;
        line-height: 130%;
    }
    #point ul li h3 .num {
        font-size:1.5rem;
        padding:8px;
        text-align: center;
        width:1rem;
        display: block;
        margin:0 0.5rem 0 0;
    }

    #point ul li p {
        line-height: 150%;
        text-align: justify;
    }

    #point a.ptnbtn {
        display: block;
        margin:15px 0 30px;
        padding:15px;
        background: #000;
        text-decoration: none;
        color:#E5B000;
        font-weight: bold;
        text-align: center;
        font-size: 1rem;
    }

    .point_pre {
        width:calc(95% - 40px);
        padding:30px 20px 10px;
        background-size: 100%;
        background-position: 100% 100%;
        border-radius: 30px;
    }
    .point_pre img {
        width:85%;
    }
    .point_inner {
        padding-bottom:30px;
    }
    .point_inner:last-child {
        padding-bottom:0px;
    }
    .point_inner_ttl {
        width: 100%;
        margin:0 0 10px 0;
    }
    .point_inner_ttl img {
        width: 100%;
    }
    .point_pre p {
        font-size:0.9rem;
        font-weight: bold;
    }
    

}


/* course ----- */

section #class h2 {
    height:1.5rem;
    margin:auto;
}
section #class h2 img {
    height:1.5rem;
}
#class ul {
    margin:50px auto 0;
    width:100%;
}

#class ul li {
    margin:30px 0;
    text-align: center;
    width:100%;
}
#class ul li img {
    width:100%;
    display: block;
}
#class ul li h3 {
    display: block;
    width:500px;
    margin:60px auto 0;
    padding:0;
}
#class ul li h3 img {
    width:100%;
    display: block;
}
#class ul li .class_price {
    font-size:1.4rem;
    border:1px solid #333;
    padding:20px;
    font-weight: bold;
}
#class ul li a {
    display: block;
    padding:0;
}
#class ul li a.join_class {
    padding:20px;
    margin:30px 0;
    text-decoration: none;
    font-size:1.45rem;
    color:#fff;
    font-weight: bold;
    border-radius: 4rem;
}
#class ul li a.partner {
    background: #FCE37F;
    color:#000;
}
#class ul li a.regular {
    background: #CFFAAF;
    color:#000;
}
#class ul li a.junior {
    background: #BAD9FC;
    color:#000;
}

@media screen and (max-width: 640px) {

    #class h2 {
        width:auto;
        margin:auto;
        padding:0;
    }
    #class h2 img {
        width:auto;
    }

    #class ul {
        margin:20px auto;
        width:100%;
    }

    #class ul li {
        margin:10px 0;
        text-align: center;
    }
    #class ul li h3 {
        display: block;
        width:90%;
        margin:40px auto 0;
        padding:0;
    }
    #class ul li .class_price {
        font-size:1rem;
        border:1px solid #333;
        padding:12px;
        font-weight: bold;
    }
    #class ul li a {
        font-size:1rem;
    }
        
    #class ul li a.join_class {
        padding:15px;
        margin:20px 0;
        font-size:1.125rem;
        border-radius: 2rem;
    }
}


/* partnerclass ----- */

#partnerclass {
}

.partnerclass_inner {
    margin:0 auto;
    width:70%;
    max-width: 1000px;
    background-size: 400px;
    padding:80px 0;
}

#partnerclass h2 {
    margin:0;
    padding:120px 0 0px;
    color:#FFBA00;
    font-size:2.5rem;
}
#partnerclass h2 span {
    display: block;
    font-size:1.2rem;
}

#partnerclass h3 span {
    display: block;
    font-size:1.2rem;
}

#partnerclass h4 {
    text-align: center;
    margin:0;
    padding:80px 0 0px;
    color:#FFBA00;
    font-size:2rem;
    font-weight: normal;
}

#partnerclass p {
    color:#B5B5B5;
    margin:30px 0;
}
#partner p strong {
    color:#FFBA00;
    font-size:1.4rem;
}

#partner p.endcap {
    color:#FFBA00;
    font-size:1.6rem;
    margin:80px 0 0;
    font-weight: bold;
}

#partnerclass p span {
    color:#FFBA00;
    font-size:1.125rem;
    display: block;
}

#partnerclass .btn {
    text-align: center;
    display: block;
    padding:25px 40px;
    width:24rem;
    margin:40px auto;
    color:#000;
    font-size:1.6rem;
    font-weight: bold;
    text-decoration: none;
    border-radius: 4rem;
    background: #e2ad00; /* Old browsers */
    background: -moz-linear-gradient(left, #e2ad00 0%, #e4b20d 19%, #ffe796 50%, #ffa700 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

#partnerclass .class_link {
    color:#fff;
    font-size:1.2rem;
    line-height: 140%;
    display: block;
    text-decoration: none;
    margin:20px 0 0;
    padding:5px 0 0;
    text-align: center;
}




#partnerclass .merit_list {
    margin:0 auto;
}

#partnerclass .merit_list li {
    border:none;
    display: block;
}

#partnerclass .merit_list li .merit_img {
    width:100%;
    background: #f9efcc; /* Old browsers */
    background: -moz-linear-gradient(left, #f9efcc 0%, #fff9e6 50%, #feeecd 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #f9efcc 0%,#fff9e6 50%,#feeecd 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #f9efcc 0%,#fff9e6 50%,#feeecd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    padding:0 0 10px 0;
}
#partnerclass .merit_list li .merit_img img {
    width:50%;
    margin:100px 40px;
}

#partnerclass .merit_list li .large_img img {
    width:80%;
    margin:80px 40px;
}
#partnerclass .merit_list li .merit_img_s img {
    width:35%;
    margin:50px 40px 10px;
}

#partnerclass .merit_list li .large_img_cmmt img {
    width:80%;
    margin:80px 40px 10px;
}
#partnerclass .merit_list li p {
    color:#333;
    font-size: 1.2rem;
    font-weight: bold;
}

#partnerclass .merit_list li .attn_red,
#partnerclass .merit_list li .attn_red_small {
    margin:20px;
    color: #ff0000;
    font-weight: normal;
    text-align: justify;
    font-size: 1.125rem;
    line-height: 130%;
}
#partnerclass .merit_list li .attn_red_small {
    font-size: 0.9rem;
}

#partnerclass .merit_list li .mid_img img {
    width:65%;
    margin:80px 40px 20px;
}

#partnerclass .merit_list li .merit_img strong {
    color:#000;
    font-size:1.65rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:15px;
    background: #e2ad00; /* Old browsers */
    background: -moz-linear-gradient(left, #e2ad00 0%, #e4b20d 19%, #ffe796 50%, #ffa700 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    box-shadow: 0px 0px 15px -5px #777777;
}

#partnerclass .merit_list li .merit_img strong span {
    font-size:1.2rem;
    color: #000;
}
#partnerclass .merit_list li .merit_img strong span.new {
    background: #ff0000;
    padding:5px;
    margin:0 0 0 5px;
    font-size: 1.2rem;
    line-height: 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
}

#partner .merit_list li p {
    margin:0;
    padding:20px 20px ;
}

#partner .merit_list li p span.red {
    display: inline;
    color: #ff0000;
}

#partner .merit_list li span {
    display: block;
    text-align: center;
    color:#B5B5B5 ;
}

#partner .merit_list li span.red {
    color: #ff0000;
}

@media screen and (max-width: 640px) {

    .partnerclass_inner {
        margin:0 auto;
        width:90%;
        max-width: 90%;
        background-size: 80%;
        padding:40px 0 80px;
    }

    #partnerclass  h2 {
        padding:20px 0 0px;
        font-size:2rem;
    }
    #partnerclass  h2 span {
        font-size:0.9rem;
    }

    #partnerclass  h3 {
        padding:30px 0 0px;
        color:#FFBA00;
        font-size:2rem;
        line-height: 100%;
    }
    #partnerclass  h3 span {
        font-size:0.9rem;
        line-height: 120%;
        margin:5px 0;
    }

    #partnerclass  h4 {
        padding:40px 0 0px;
        color:#FFBA00;
        font-size:1.2rem;
    }

    #partnerclass  p {
        margin:30px 0;
    }
    #partnerclass  p span {
        font-size:1.125rem;
    }

    #partnerclass  .btn {
        padding:15px;
        width:85%;
        margin:40px auto;
        font-size:1.2rem;
        border-radius: 4rem;
    }

    #partnerclass  .class_link {
        color:#fff;
        font-size:0.9rem;
        margin:15px 0 0;
        padding:0px 0 0;
    }

    #partnerclass  .merit_list li .merit_img img {
        width:50%;
        margin:40px 40px;
    }

    #partnerclass .merit_list li .merit_img_s img {
        width:35%;
        margin:30px 20px 10px;
    }

    #partnerclass  .merit_list li .large_img img {
        width:90%;
        margin:30px 20px;
    }

    #partnerclass  .merit_list li .large_img_cmmt img {
        width:90%;
        margin:30px 20px 5px;
    }
    #partnerclass  .merit_list li p {
        font-size: 0.75rem;
        line-height: 140%;
    }

    #partnerclass  .merit_list li .mid_img img {
        width:65%;
        margin:30px 40px 0;
    }

    #partnerclass  .merit_list li .merit_img strong {
        font-size:1.125rem;
        padding:7px;
    }

    #partnerclass  .merit_list li p {
        font-size:0.95rem;
        margin:5px 0;
        padding:10px;
        color: #000;
        line-height: 160%;
    }

    #partnerclass .merit_list li .attn_red,
    #partnerclass .merit_list li .attn_red_small {
        font-size:0.8rem;
        padding: 10px;
        margin: 0 10px;
        color: #ff0000;
    }

     #partnerclass .merit_list li .attn_red_small {
        font-size:0.65rem;
     }

    #partnerclass  .merit_list li span {
        display: block;
        text-align: center;
        color:#B5B5B5 ;
        font-size:0.75rem;
    }


    #partner p.endcap {
        font-size:1.2rem;
        margin:50px 0 0;
        
    }

    #partnerclass .merit_list li .merit_img strong {
        color:#000;
        font-size:1.125rem;
        display: flex;
        justify-content: center;
        align-items: center;
        padding:10px 4px;
        background: #e2ad00; /* Old browsers */
        background: -moz-linear-gradient(left, #e2ad00 0%, #e4b20d 19%, #ffe796 50%, #ffa700 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #e2ad00 0%,#e4b20d 19%,#ffe796 50%,#ffa700 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        box-shadow: 0px 0px 15px -5px #777777;
    }

    #partnerclass .merit_list li .merit_img strong span {
        font-size:0.75rem;
        color: #000;
    }
    #partnerclass .merit_list li .merit_img strong span.new {
        background: #ff0000;
        padding:5px;
        margin:0 0 0 5px;
        font-size: 0.85rem;
        line-height: 100%;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}


/* regular ----- */

#regular {
}

.regularclass_inner {
    margin:0 auto;
    width:70%;
    max-width: 1000px;
    background-size: 400px;
    padding:30px 0;
}

#regular h2 {
    margin:0;
    padding:120px 0 0px;
    color:#FFBA00;
    font-size:2.5rem;
}
#regular h2 span {
    display: block;
    font-size:1.2rem;
}

#regular h3 span {
    display: block;
    font-size:1.2rem;
}

#regular h4 {
    text-align: center;
    margin:0;
    padding:80px 0 0px;
    color:#000;
    font-size:2rem;
    font-weight: normal;
}

#regular p {
    color:#000;
    margin:30px 0;
}

#regular p span {
    color:#000;
    font-size:1.125rem;
    /* display: block; */
}


#regular .merit_list {
    margin:0 auto;
}

#regular .merit_list li {
    border:none;
    display: block;
}

#regular .merit_list li .merit_img {
    width:100%;
    background: #fff;
    padding:0 0 10px 0;
}
#regular .merit_list li .merit_img img {
    width:50%;
    margin:70px 40px 30px;
}

#regular .merit_list li .large_img img {
    width:80%;
    margin:80px 40px;
}
#regular .merit_list li .merit_img_s img {
    width:25%;
    margin:50px 40px 10px;
}

#regular .merit_list li .large_img_cmmt img {
    width:80%;
    margin:80px 40px 10px;
}
#regular .merit_list li p {
    color:#333;
    font-size: 1.4rem;
    font-weight: bold;
    padding:0 20px 10px;
    margin:0;
}

#regular .merit_list li span {
    margin:0;
    display: block;
    color: #000;
    font-weight: normal;
    text-align: center;
    font-size: 1rem;
    padding:0 20px 20px;
}

#regular .merit_list li .attn_red {
    margin:20px;
    color: #ff0000;
    font-weight: bold;
    text-align: justify;
    font-size: 1.2rem;
}

#regular .merit_list li .mid_img img {
    width:65%;
    margin:80px 40px 20px;
}

#regular .merit_list li .merit_img strong {
    color:#000;
    font-size:1.65rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:15px;
    background: #79D64D;
    box-shadow: 0px 0px 15px -5px #777777;
}

#regular .merit_list li .merit_img strong span {
    font-size:1.2rem;
    color: #000;
    margin:0;
    padding: 0;
}
#regular .merit_list li .merit_img strong span.new {
    background: #ff0000;
    padding:5px;
    margin:0 0 0 5px;
    font-size: 1.2rem;
    line-height: 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
}

#partner .merit_list li p {
    margin:0;
    padding:20px 20px ;
}

#partner .merit_list li p span.red {
    display: inline;
    color: #ff0000;
}

#partner .merit_list li span {
    display: block;
    text-align: center;
    color:#B5B5B5 ;
}

#partner .merit_list li span.red {
    color: #ff0000;
}

@media screen and (max-width: 640px) {

    .partnerclass_inner {
        margin:0 auto;
        width:90%;
        max-width: 90%;
        background-size: 80%;
        padding:40px 0 80px;
    }

    #regular  h2 {
        padding:20px 0 0px;
        font-size:2rem;
    }
    #regular  h2 span {
        font-size:0.9rem;
    }

    #regular  h3 {
        padding:30px 0 0px;
        color:#FFBA00;
        font-size:2rem;
        line-height: 100%;
    }
    #regular  h3 span {
        font-size:0.9rem;
        line-height: 120%;
        margin:5px 0;
    }

    #regular  h4 {
        padding:40px 0 0px;
        font-size:1.2rem;
    }

    #regular  p {
        margin:30px 0;
    }
    #regular  p span {
        font-size:1.125rem;
    }

    #regular .btn {
        padding:15px;
        width:85%;
        margin:40px auto;
        font-size:1.2rem;
        border-radius: 4rem;
    }

    #regular  .class_link {
        color:#fff;
        font-size:0.9rem;
        margin:15px 0 0;
        padding:0px 0 0;
    }

    #regular  .merit_list li .merit_img img {
        width:50%;
        margin:40px 40px 20px;
    }

    #regular .merit_list li .merit_img_s img {
        width:35%;
        margin:30px 20px 10px;
    }

    #regular  .merit_list li .large_img img {
        width:90%;
        margin:30px 20px;
    }

    #regular  .merit_list li .large_img_cmmt img {
        width:90%;
        margin:30px 20px 5px;
    }
    #regular  .merit_list li p {
        font-size: 0.75rem;
        line-height: 140%;
    }

    #regular  .merit_list li .mid_img img {
        width:65%;
        margin:30px 40px 0;
    }

    #regular  .merit_list li .merit_img strong {
        font-size:1.125rem;
        padding:7px;
    }

    #regular  .merit_list li p {
        font-size:0.95rem;
        margin:5px 0;
        padding:10px;
        color: #000;
        line-height: 160%;
    }

    #regular  .merit_list li .attn_red {
        font-size:0.8rem;
        padding: 10px;
        margin: 0 10px;
        color: #ff0000;
    }

    #regular  .merit_list li span {
        display: block;
        text-align: justify;
        color:#000 ;
        font-size:0.9rem;
    }


    #partner p.endcap {
        font-size:1.2rem;
        margin:50px 0 0;
        
    }

    #regular .merit_list li .merit_img strong {
        color:#000;
        font-size:1.125rem;
        display: flex;
        justify-content: center;
        align-items: center;
        padding:10px 4px;
        background: #79D64D;
        box-shadow: 0px 0px 15px -5px #777777;
    }

    #regular .merit_list li .merit_img strong span {
        font-size:0.75rem;
        color: #000;
    }
    #regular .merit_list li .merit_img strong span.new {
        background: #ff0000;
        padding:5px;
        margin:0 0 0 5px;
        font-size: 0.85rem;
        line-height: 100%;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}


/* junior ----- */

#junior {
}

.juniorclass_inner {
    margin:0 auto;
    width:70%;
    max-width: 1000px;
    background-size: 400px;
    padding:30px 0;
}

#junior h2 {
    margin:0;
    padding:120px 0 0px;
    color:#FFBA00;
    font-size:2.5rem;
}
#junior h2 span {
    display: block;
    font-size:1.2rem;
}

#junior h3 span {
    display: block;
    font-size:1.2rem;
}

#junior h4 {
    text-align: center;
    margin:0;
    padding:80px 0 0px;
    color:#000;
    font-size:2rem;
    font-weight: normal;
}

#junior p {
    color:#000;
    margin:30px 0;
}

#junior p span {
    color:#000;
    font-size:1.125rem;
    /* display: block; */
}


#junior .merit_list {
    margin:0 auto;
}

#junior .merit_list li {
    border:none;
    display: block;
}

#junior .merit_list li .merit_img {
    width:100%;
    background: #fff;
    padding:0 0 10px 0;
}
#junior .merit_list li .merit_img img {
    width:50%;
    margin:70px 40px 30px;
}

#junior .merit_list li .large_img img {
    width:80%;
    margin:80px 40px;
}
#junior .merit_list li .merit_img_s img {
    width:25%;
    margin:50px 40px 10px;
}

#junior .merit_list li .large_img_cmmt img {
    width:80%;
    margin:80px 40px 10px;
}
#junior .merit_list li p {
    color:#333;
    font-size: 1.4rem;
    font-weight: bold;
    padding:0 20px 10px;
    margin:0;
}

#junior .merit_list li span {
    margin:0;
    display: block;
    color: #000;
    font-weight: normal;
    text-align: center;
    font-size: 1rem;
    padding:0 20px 20px;
}

#junior .merit_list li .attn_red {
    margin:20px;
    color: #ff0000;
    font-weight: bold;
    text-align: justify;
    font-size: 1.2rem;
}

#junior .merit_list li .mid_img img {
    width:65%;
    margin:80px 40px 20px;
}

#junior .merit_list li .merit_img strong {
    color:#fff;
    font-size:1.65rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:15px;
    background: #2662A7;
    box-shadow: 0px 0px 15px -5px #777777;
}

#junior .merit_list li .merit_img strong span {
    font-size:1.2rem;
    color: #fff;
    margin:0;
    padding: 0;
}
#junior .merit_list li .merit_img strong span.new {
    background: #ff0000;
    padding:5px;
    margin:0 0 0 5px;
    font-size: 1.2rem;
    line-height: 100%;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
}

#partner .merit_list li p {
    margin:0;
    padding:20px 20px ;
}

#partner .merit_list li p span.red {
    display: inline;
    color: #ff0000;
}

#partner .merit_list li span {
    display: block;
    text-align: center;
    color:#B5B5B5 ;
}

#partner .merit_list li span.red {
    color: #ff0000;
}

@media screen and (max-width: 640px) {

    .partnerclass_inner {
        margin:0 auto;
        width:90%;
        max-width: 90%;
        background-size: 80%;
        padding:40px 0 80px;
    }

    #junior  h2 {
        padding:20px 0 0px;
        font-size:2rem;
    }
    #junior  h2 span {
        font-size:0.9rem;
    }

    #junior  h3 {
        padding:30px 0 0px;
        color:#FFBA00;
        font-size:2rem;
        line-height: 100%;
    }
    #junior  h3 span {
        font-size:0.9rem;
        line-height: 120%;
        margin:5px 0;
    }

    #junior  h4 {
        padding:40px 0 0px;
        font-size:1.2rem;
    }

    #junior  p {
        margin:30px 0;
    }
    #junior  p span {
        font-size:1.125rem;
    }

    #junior .btn {
        padding:15px;
        width:85%;
        margin:40px auto;
        font-size:1.2rem;
        border-radius: 4rem;
    }

    #junior  .class_link {
        color:#fff;
        font-size:0.9rem;
        margin:15px 0 0;
        padding:0px 0 0;
    }

    #junior  .merit_list li .merit_img img {
        width:50%;
        margin:40px 40px 20px;
    }

    #junior .merit_list li .merit_img_s img {
        width:35%;
        margin:30px 20px 10px;
    }

    #junior  .merit_list li .large_img img {
        width:90%;
        margin:30px 20px;
    }

    #junior  .merit_list li .large_img_cmmt img {
        width:90%;
        margin:30px 20px 5px;
    }
    #junior  .merit_list li p {
        font-size: 0.75rem;
        line-height: 140%;
    }

    #junior  .merit_list li .mid_img img {
        width:65%;
        margin:30px 40px 0;
    }

    #junior  .merit_list li .merit_img strong {
        font-size:1.125rem;
        padding:7px;
    }

    #junior  .merit_list li p {
        font-size:0.95rem;
        margin:5px 0;
        padding:10px;
        color: #000;
        line-height: 160%;
    }

    #junior  .merit_list li .attn_red {
        font-size:0.8rem;
        padding: 10px;
        margin: 0 10px;
        color: #ff0000;
    }

    #junior  .merit_list li span {
        display: block;
        text-align: justify;
        color:#000 ;
        font-size:0.9rem;
    }


    #partner p.endcap {
        font-size:1rem;
        margin:50px 0 0;
        
    }

    #junior .merit_list li .merit_img strong {
        color:#fff;
        font-size:1.125rem;
        display: flex;
        justify-content: center;
        align-items: center;
        padding:10px 4px;
        background: #2662A7;
        box-shadow: 0px 0px 15px -5px #777777;
    }

    #junior .merit_list li .merit_img strong span {
        font-size:0.75rem;
        color: #fff;
    }
    #junior .merit_list li .merit_img strong span.new {
        background: #ff0000;
        padding:5px;
        margin:0 0 0 5px;
        font-size: 0.85rem;
        line-height: 100%;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
    }

}

/* merit ----- */

.tokuten_wrap {
    margin:40px auto 0;
}

#merit h2 {
    width:380px;
    margin:0 auto;
}
#merit h2 img {
    width:100%;
}
#merit h2.partner {
    height: auto;
    width: 450px;
}
#merit h2.partner img {
    height: auto;
    width: 450px;
}
#merit p {
    text-align: center;
}
#merit p.price {
    font-weight: bold;
    font-size: 1.6rem;
    margin:10px 0 5px;
}
#merit p.price span {
    font-weight: bold;
    font-size: 1.2rem;
}
#merit p.price span.kaihi {
    font-weight: bold;
    font-size: 1.125rem;
    line-height: 100%;
    border:1px solid #333;
    padding:3px 8px;
    margin:0 10px 0 0;
}
#merit p.taisho {
    color: #fff;
    font-weight: bold;
    margin:0;
}

#partner #merit p.price {
    font-weight: bold;
    font-size: 1.6rem;
    color:#fff;
}
#partner #merit p.price span {
    font-weight: bold;
    font-size: 1.2rem;
}
#partner #merit p.price span.kaihi {
    font-weight: bold;
    font-size: 1.125rem;
    line-height: 100%;
    border:1px solid #fff;
    padding:3px;
    margin:0 10px 0 0;
}
#partner #merit p.price img {
    width:35%;
    height: auto;
}

#merit h3 {
    display: block;
    text-align: center;
    margin:40px 0 0;
    font-size:2rem;
}
#merit h3.regular {
    color:#000;
}
#merit h3.partner {
    color:#FFBA00;
}

.merit_list {
    margin:0 0;
}

.merit_list li {
    display: block;
    padding:0 0 4px 0;
    text-align: center;
}
.merit_txt {
    /* width:calc(100% - 370px); */
    width:100%;
    margin:0 0 0 0;
}
.merit_noimage {
    width:100%;
}
#merit .merit_txt h4 {
    font-size:1.8rem;
    margin:10px auto 0;
    padding: 0;
    line-height: 120%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
#merit .merit_txt h4 span.new {
    background:#ff0000;
    color:#fff;
    padding:7px;
    line-height: 110%;
    margin:0 0 0 10px;
}

#merit .merit_txt p,
#merit .merit_txt p span {
    font-size: 1.125rem;
    line-height: 140%;
    text-align: center;
    overflow: hidden;
}

#merit .merit_txt span {
    font-size:0.9rem;
}

.merit_txt p span.red {
    color:#ff0000:
}

.merit_img {
    margin:30px auto;
}
.merit_img img {
    width:100%;
}

.img_l {
    width:500px;
}
.img_m {
    width:400px;
}
.img_s {
    width:300px;
}
.img_s img {
    width:25%!important;
}
.img_xs {
    width:200px;
}

.merit_caution {
    margin:40px 120px;
    border:2px solid #ff0000;
    text-align: center;
}
.merit_caution strong {
    display: block;
    background:#ff0000;
    color:#fff;
    padding:12px;
    font-size: 1.125rem;
}
.merit_caution p {
    padding:20px;
    font-size: 1rem;
}

@media screen and (max-width: 640px) {

    .tokuten_wrap {
        margin:30px auto 0;
    }

    #merit h2 {
        width: auto;
        margin:0 auto 10px;
        height: 2rem;
    }
    #merit h2 img {
        height: 2rem;
        width: auto;
        display: block;
        margin: auto;
    }
    #merit h2.partner {
        height: auto;
        width: 80%;
    }
    #merit h2.partner img {
        height: auto;
        width: 100%;
    }
    #merit p {
        text-align: center;
    }
    #merit p.price {
        font-weight: bold;
        font-size: 1.3rem;
        margin:0;
    }
    #merit h3 {
        display: block;
        text-align: center;
        margin:60px 0 0;
        padding:0;
        font-size:1.3rem;
    }
    #merit h3.regular {
        color:#000;
    }

    .merit_list {
        margin:50px 0;
    }

    .merit_list {
        margin:0px 0;
    }

    .merit_list li {
        border-bottom:none;
        padding:5px 0 10px;
        margin:0 0 0 0;
        display: block;
    }
    .merit_txt {
        width:100%;
    }
    .merit_img {
        margin:20px auto 0;
    }
    .merit_img img {
        width:100%;
    }

    .img_l {
        width:90%;
    }
    .img_m {
        width:70%;
    }
    .img_m img {
        width:70%!important;
    }
    .img_s {
        width:50%;
    }
    .img_s img {
        width:45%!important;
    }
    .img_xs {
        width:40%;
    }

    .merit_txt h3 {
        font-size:1.125rem;
        margin:0;
        padding: 0;
        line-height: 120%;
        display: inline-block;
        align-items: center;
    }

    #merit .merit_txt h4 {
        font-size:1.25rem;
        margin:12px 0 0 0;
        padding: 0;
        line-height: 130%;
        align-items: center;
        text-align: center;
    }

    #merit .merit_txt p {
        font-size: 0.85rem;
        line-height: 145%;
        margin:0px 0 0 0;
        padding:10px 0 0 0;
        text-align: center;
        display:inline-block;
    }

    #merit .merit_txt p span {
        padding:0 0 0 0;
        display:inline;
        font-size: 0.85rem;
    }

    #merit .merit_txt span {
        display: block;
        margin:15px 0 0 0;
        font-size:0.75rem;
        text-align: center;
    }

    #partner #merit p.price img {
        width:65%;
        height: auto;
    }

    #merit p.price span.kaihi {
        font-weight: bold;
        font-size:0.9rem;
        line-height: 100%;
        border:1px solid #333;
        padding:0 3px;
        margin:0 5px 0 0;
    }

}


/* howto ----- */

#join h2 {
    margin:0 auto;
    padding:120px 0 0px;
}
#join h2 img {
}
#join p {
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
}

.howto_list {
    margin:50px 0;
}

.howto_list li {
    /* border:1px solid #A3C65E; */
    padding:10px 30px;
    margin:0px 0;
}

.howto_list li .li_inner {
    background: #fff;
    padding:50px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    border-radius: 40px;
}

.howto_list li .btn {
    text-align: center;
    margin:40px 0 20px 0;
}
.howto_list li .btn a {
    padding:15px 40px;
    font-size: 1.4rem;
    font-weight: bold;
    color:#fff;
    text-decoration: none;
    border-radius: 40px;
    box-shadow: 0px 0px 15px -5px #ccc;
    background: -moz-linear-gradient(top, #8ccc43 0%, #76b53b 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #8ccc43 0%,#76b53b 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #8ccc43 0%,#76b53b 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.howto_txt {
    width:100%;
}
.howto_txt h3 {
    font-size:2rem;
    margin:0;
    padding: 0;
    line-height: 100%;
    display: flex;
    align-items: center;
    color: #63C335;
}
.howto_txt h3 span {
    font-size: 1rem;
}
.howto_txt h3 span.recommend {
    display: inline-block;
    padding:4px 10px;
    font-size: 1rem;
    line-height: 110%;
    margin:0 0 0 10px;
    background:#ff0000;
    color:#fff;
}

#join .howto_txt p {
    font-size: 1rem;
    text-align: left;
}

.howto_txt strong {
    font-size: 1.125rem;
    text-align: left;
    font-weight: bold;
    display: block;
}

.howto_txt p span.red {
    color:#ff0000;
}

.howto_txt span.small {
    font-size: 0.85rem;
}

.howto_txt .join_btn {
    margin:20px 0 40px;
    display: block;
    text-align: left;
}

.howto_txt .join_btn a {
    padding:20px 20px;
    font-size:1.2rem;
}



.howto_txt .join_btn_green {
    margin:40px auto 60px;
    display: block;
    text-align: center;
}
.howto_txt .join_btn_green a {
    background:#63C335;
    padding:25px 80px;
    text-align: center;
    color:#fff;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.6rem;
    border-radius: 50px;
}

.howto_txt p.caption {
    border-top:1px solid #666;
    font-size: 0.9rem;
    color:#666;
    padding:20px 0 0 0;
    margin:20px 0;
}

.howto_img {
    width:300px;
    text-align: center;
    padding:30px 0 0 0;
}

#join_1 img {
    width:90%;
}
#join_2 img {
    width:80%;
}
#join_3 img {
    width:70%;
}
.howto_txt .text {
    font-size: 1.125rem;
}

.howto_txt .text dl {
    display: block;
    width: 100%;
}
.howto_txt .text dl dt {
    font-size: 1.2rem;
    padding: 5px 10px;
    border:1px solid #333;
    font-weight: bold;
}
.howto_txt .text dl dd {
    padding:0;
    margin:20px 0 0 10px;
    font-weight: bold;
    font-size: 1.5rem;
}

.henkoten_box {
    background-color: #fff;
    padding:40px;
    margin:25px;
}

.henkoten_box h3 {
    height: 5rem;
    margin:0;
    padding: 0;
}
.henkoten_box h3 img {
    width: auto;
    height: 100%;
}
.henkoten_box p {
    text-align: left!important;
}

.green_circle {
    background-color: #63C335;
    color: #fff;
    font-weight: bold;
    padding:0rem 0.5rem;
    margin:0 0.125rem;
    border-radius: 0.25rem;
}

@media screen and (max-width: 640px) {

    #join h2 {
        width:auto;
        margin:0 auto;
        padding:40px 0 0px;
    }
    #join h2 img {
        height: 1.5rem;
        width: auto;
    }

    .howto_list {
        margin:20px 0px 0;
    }

    .howto_list li {
        padding:0 0;
        margin:20px 0 0;
    }

    .howto_list li .li_inner {
        background: #fff;
        padding:20px;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        border-radius: 20px;
    }

    .howto_txt {
        width:100%;
    }
    .howto_txt h3 {
        font-size:1.4rem;
        margin:0;
        padding: 0;
        line-height: 120%;
        display: inline-block;
    }
    .howto_txt h3 span {
        font-size: 0.7rem;
        display: inline-block;
    }
    .howto_txt h3 span.recommend {
        display: inline-block;
        padding:4px 10px;
        font-size: 0.7rem;
        line-height: 100%;
        margin:-5px 0 0 10px;
        background:#ff0000;
        color:#fff;
        transform: rotate(-7deg);
    }

    .howto_txt p {
        font-size: 0.8rem;
        line-height: 150%;
        text-align: left;
    }

    .howto_txt strong {
        font-size: 1rem;
    }

    #join .howto_txt p.caption {
        font-size: 0.8rem;
        color:#666;
        margin:20px 0 0;
    }

    .howto_img {
        width:60%;
        text-align: center;
        padding:0 0 0 0;
        margin:20px auto 0;
    }

    .howto_txt .join_btn {
        margin:10px 0px;
        display: block;
        text-align: center;
        width: 100%;
    }

    .howto_txt .join_btn a {
        padding:0px 0px;
        font-size:1.2rem;
    }

    .howto_txt .join_btn_green {
        margin:40px auto 40px;
        display: block;
        text-align: center;
    }
    .howto_txt .join_btn_green a {
        display: block;
        background:#63C335;
        padding:12px 20px;
        font-size: 1.2rem;
        border-radius: 30px;
    }

    .howto_txt .text {
        font-size: 1rem;
        line-height: 120%;
    }

    .howto_txt .text dl {
    }
    .howto_txt .text dl dt {
        font-size: 0.85rem;
        line-height: 110%;
        padding: 8px 10px;
        border:1px solid #333;
        font-weight: bold;
        white-space: nowrap;
    }
    .howto_txt .text dl dd {
        padding:0;
        margin:10px 0 0 0;
        font-weight: bold;
        font-size: 0.85rem;
    }

    .howto_txt span.small {
        font-size: 0.75rem;
    }

    .henkoten_box {
        padding:15px;
        margin:10px 0;
    }

    .henkoten_box h3 {
        height: 3rem;
    }
    .henkoten_box p {
        text-align: left!important;
        font-size: 0.95rem!important;
    }

    .green_circle {
        background-color: #63C335;
        color: #fff;
        font-weight: bold;
        padding:0.125rem 0.5rem;
        margin:0 0.125rem;
        border-radius: 0.25rem;
    }

}



/* hasso ----- */
section#hasso {
    margin-bottom:80px;
}

#hasso h2 {
    margin:0 auto;
}
#hasso h2 img {
}
#hasso p {
    text-align: center;
}
#hasso h3 {
    font-size:1.6rem;
    text-align: center;
}
#hasso p.caption {
    font-size: 1rem;
    color: #666;
}

.hasso_list {
    margin:20px 0;
}

.hasso_list li {
    /* border:1px solid #A3C65E; */
    padding:20px 50px;
    margin:20px 0;
}

.hasso_list li .case_wrap {
    background:url(https://www.bellmare.co.jp/wp-content/themes/bellmare_20231115/images/bell12_2025/w_arrow.png)no-repeat 50% 100%;
    background-size: 30px;
    padding:0 0 20px 0;
}

.hasso_list li .case {
    background:#fff;
    padding:30px;
    text-align: center;
    font-size:1.45rem;
    font-weight: bold;
    border-radius: 2rem;
    color: #000;
}
.hasso_list li .date {
    background:#2662A7;
    padding:30px;
    text-align: center;
    font-size:1.45rem;
    font-weight: bold;
    border-radius: 2rem;
    color: #fff;
}
.hasso_list li .date_partner {
    background:#2C2C2C;
    color: #FFBA00;
    padding:30px;
    text-align: center;
    font-size:1.45rem;
    font-weight: bold;
    border-radius: 2rem;
}


@media screen and (max-width: 640px) {

    section#hasso {
        margin-bottom:50px;
    }

    #hasso h2 {
        width:40vw;
        margin:0 auto;
    }
    #hasso h2 img {
        width:100%;
    }
    #hasso p {
        text-align: center;
    }
    #hasso h3 {
        font-size:1.2rem;
        text-align: center;
        margin:40px 0 0 0;
    }
    #hasso p.caption {
        font-size: 0.7rem;
        color: #666;
    }

    .hasso_list {
        margin:20px 0;
    }

    .hasso_list li {
        /* border:1px solid #A3C65E; */
        padding:0px 0px;
        margin:20px 0;
    }

    .hasso_list li .case {
        padding:15px;
        font-size:0.9rem;
        border-radius: 20px;
    }
    .hasso_list li .date {
        margin:10px 0 0 0;
        font-size:1rem;
        font-weight: bold;
    }

    .hasso_list li .date_partner {
        font-size:1rem;
    }
}


/* hikikae ----- */

#hikikae h2 {
    width:400px;
    margin:0 auto;
}
#hikikae h2 img {
    width:100%;
}
#hikikae p {
    text-align: center;
}

#hikikae h3 {
    /* background:#6bb52e; */
    color:#333;
    padding:0;
    margin:20px 0 20px;
    font-size:2rem;
}
#hikikae h3.red {
    color:#ff0000;
}
#hikikae .block {
    background:#fff;
    width:calc(100% - 100px);
    padding:60px 50px;
    margin:30px 0;
}
#hikikae .block img {
    width:100%;
    display: block;
    margin:30px auto;
}
#hikikae .block2 {
    background:#fff;
    width:calc(100% - 100px);
    padding:60px 50px;
    margin:30px 0;
}
#hikikae h4 {
    font-size:1.65rem;
    text-align: center;
}
#hikikae .block2 h5 {
    border:1px solid #666;
    padding:6px;
    text-align:center;
    margin:2rem 0 2rem;
    font-size:1.4rem;
}

@media screen and (max-width: 640px) {

    #hikikae {
        margin:0;
    }
    #hikikae h2 {
        width:45vw;
        margin:0 auto 10px;
    }
    #hikikae p {
        width:95%;
        margin:auto;
    }

    #hikikae h3 {
        margin:10px 0 20px;
        font-size:1.125rem;
        line-height: 145%;
    }
    #hikikae .block {
        width:calc(100% - 40px);
        padding:20px 20px;
        margin:10px 0;
    }
    #hikikae .block img {
        margin:30px auto;
    }
    #hikikae .block2 {
        width:calc(100% - 40px);
        padding:20px 20px;
        margin:10px 0;
    }
    #hikikae h4 {
        font-size:1rem;
        text-align: center;
    }
    #hikikae .block2 h5 {
        border:1px solid #666;
        padding:6px;
        text-align:center;
        margin:1.2rem 0 ;
        font-size:1rem;
    }
}


/* footer -----*/


footer {
	padding:0 0 4px;
	color:#000;
	font-weight: 300;
	font-size:12px;
	text-align:center;
    width:100%;
    background: #fff;
    position: fixed;
    bottom:0;
    box-shadow: 0px 0px 15px -5px #777777;
}

.footer_inner {
    background:#fff;
    padding:70px 0 0px 0;
}

#partner .copyright {
    color: #333;
}


@media screen and (max-width: 767px) {

    footer {
        padding:0 0 0;
        color:#000;
        font-family: "din-condensed",sans-serif;
        font-weight: 300;
        font-size:12px;
        text-align:center;
    }

    .footer_inner {
        background:#fff;
        padding:0px 0 0px 0;
    }

    .copyright {
        margin:0px 0 0 0;
        padding:10px 0 10px 0;
        color: #1b1464;
        font-size:0.6rem;
    }

}


#page-top {
  position: fixed;
  bottom: 40px;
  right: 20px;
}

#page-top i {
  color: #333;
  font-size: 3rem;
  opacity: 0.5;
}

#page-top i:hover {
  cursor: pointer;
}


@media screen and (max-width: 640px) {

body {
	font-size:0.85rem;
}

.pconly {
	display: none;
}
.sponly {
	display: inherit;
}

#page-top {
  position: fixed;
  bottom: 90px;
  right: 20px;
}

}


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