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

* {
    margin: 0px;
    padding: 0px;
}

body {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
    font-family: "Noto Sans Japanese";
    font-family: "FOT-ロダン Pro DB";
    background: #fff;
    line-height: 1.5;
    color: #222;
    font-size: 18px;
    font-size-adjust: none;
    -webkit-font-size-adjust: none;
    position: relative;
    min-width: 1024px;
}
h1.entry-title {
display: none;
}
.fw-b {
    font-family: "FOT-ロダン Pro B";
    font-weight: 600;
}

.u-l-y {
    border-bottom: 5px solid #f1a742;
}

.u-l {
    border-bottom: 4px solid #0285c9;
    padding-bottom: 10px;
}

@media (max-width: 480px) {
    body {
        overflow-x: hidden;
        min-width: initial;
        font-size: 15px;
    }

    .u-l-y {
        border-bottom: 4px solid #f1a742;
    }

    .dis-b {
        display: block;
    }

    .dis-b i {
        display: inline !important;
    }
}

img {
    border: 0;
    outline: none;
}

a {
    transition: all 0.3s ease;
}

a:hover img.hover-alp {
    filter: alpha(opacity=70);
    -moz-opacity: 0.70;
    opacity: 0.70;
    transition: .5s;
}

a:link,
a:visited {
    color: #fc7248;
    text-decoration: none;
}

a:hover {
    color: #422f10;
    text-decoration: underline;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.clearfix {
    min-height: 1px;
}

* html .clearfix {
    height: 1px;
    /*\*/
    /*/
height: auto;
overflow: hidden;
/**/
}

p {
    margin: 0 0 15px;
}

.cb {
    clear: both;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    display: block;
    line-height: 1.5;
    font-weight: normal;
}

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 50;
}

#page-top a {
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #333;
    color: #fff;
    text-decoration: none;
    border-radius: 50%;
    font-size: 18px;
}

@media (max-width: 480px) {

    #page-top {
        bottom: 10px;
        right: 10px;
    }

    #page-top a {
        width: 42px;
        height: 42px;
        font-size: 15px;
    }

}


img {
    border: 0;
    outline: none;
}


.sp-only {
    display: none !important;
}

@media (max-width: 480px) {
    .sp-only {
        display: inline !important;
    }

    .pc-only {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .br-pc {
        display: block;
    }

    .br-sp {
        display: none;
    }
}

@media screen and (max-width: 480px) {
    .br-pc {
        display: none;
    }

    .br-sp {
        display: block;
    }
}

/*==================================================
ボタン
================================================== */



.btn-area {
    margin: 30px 0 0;
}

.btn-area small {
    display: block;
    text-align: center;
    width: 760px;
    margin: 30px auto 0;
    font-size: 14px;
}

a.btn {
    display: block;
    width: 800px;
    margin: 0 auto;
    position: relative;
    font-weight: bold;
    font-size: 28px;
    color: #000;
    padding: 21px 0;
    border-radius: 64px;
    background: #f1a742;
    text-decoration: none !important;
    text-align: center;
    border: 3px solid #000;
    box-shadow: 0px 9px 15px -5px #777777;
}

a.btn:hover {
    background: #e98e34;
}

a.btn span.pc-only {
    display: inline;
}

.btn-large {
    width: 100% !important;
    font-size: 24px !important;
    margin-top: 50px !important;
    border-radius: 90px !important;
}

.btn-large span {
    display: block;
}

.btn-large span small {
    font-size: 75%;
}

.nittei-txt {
    display: none;
}

/*
.btn span{
    display: block;
background: #f00303; 
background: -moz-linear-gradient(top,  #f00303 0%, #910101 100%); 
background: -webkit-linear-gradient(top,  #f00303 0%,#910101 100%); 
background: linear-gradient(to bottom,  #f00303 0%,#910101 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f00303', endColorstr='#910101',GradientType=0 ); 
    padding: 15px 0;
}
*/

.cp_arrows *,
.cp_arrows *:before,
.cp_arrows *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.cp_arrows {
    position: relative;
    display: flex;
    height: 50px;
    /*画面いっぱいにする場合100vh*/
    margin: 0.2em auto;
    justify-content: center;
    align-items: center;
    font-size: 42px;
    color: #f1a742;
}

.cp_arrows .cp_arrow {
    position: absolute;
    top: 100%;
    /*着地点（サンプルは[class:cp_arrows]height300pxの50%）*/
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    opacity: 0;
}

.cp_arrows .cp_arrowfirst {
    -webkit-animation: arrow-move08 1s ease-in-out infinite;
    animation: arrow-move08 1s ease-in-out infinite;
}

.cp_arrows .cp_arrowsecond {
    -webkit-animation: arrow-move08 1s 1s ease-in-out infinite;
    animation: arrow-move08 1s 1s ease-in-out infinite;
}

.cp_arrows .cp_arrow:before,
.cp_arrows .cp_arrow:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: '';
}

@-webkit-keyframes arrow-move08 {
    0% {
        top: 0%;
        /*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
        opacity: 0;
    }

    70% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes arrow-move08 {
    0% {
        top: 0%;
        /*スタート地点（サンプルは[class:cp_arrows]height300pxの35%）*/
        opacity: 0;
    }

    70% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@media (max-width: 480px) {

    a.btn {
        width: 100%;
        font-size: 18px;
        line-height: 1.4 !important;
        box-sizing: border-box;
        height: auto;
        padding: 12px 0;
    }

    .btn-area small {
        display: block;
        text-align: left;
        width: 86%;
        margin: 25px auto 0;
        font-size: 13px;
    }

    .btn-area p.sp-only {
        font-weight: bold;
        text-align: center;
        display: block !important;
        margin-bottom: 10px;
    }

    .btn-large {
        width: 100% !important;
        font-size: 18px !important;
        margin-top: 15px !important;
        border-radius: 80px !important;
        line-height: 1.4 !important;
    }

    .btn-large span {
        padding-top: 10px;
    }

    .btn-large span small {
        display: none;
    }

    .cp_arrows {
        height: 40px;
        /*画面いっぱいにする場合100vh*/
        margin: 0 auto;
        font-size: 34px;
    }

    .nittei-txt {
        display: block;
        margin: 20px 0 0 !important;
        font-weight: bold;
        text-align: center;
    }
}

@media (max-width: 320px) {

    .btn {
        font-size: 20px;
    }


}

/*==================================================
全体コンテンツエリア
================================================== */

.contents-area {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.contents-lp {
    padding: 40px 0 50px;
}

.sec {
    padding: 150px 0 100px;
    line-height: 2.0;
}


@media (max-width: 480px) {

    .contents-area {
        width: 90%;
    }

    .contents-lp {
        padding: 30px 0 30px;
    }

    .sec {
        padding: 60px 0;
        line-height: 1.7;
    }


}

@media (max-width: 320px) {}


/*==================================================
タイトル
================================================== */

.title-contents {
    display: block;
    background: #5c5a59;
    text-align: center;
    color: #f9e267;
}

.title-contents span {
    display: flex;
    width: 1000px;
    margin: 0 auto;
    text-align: center;
    align-items: center;
    justify-content: center;
    height: 150px;
    font-size: 38px;
}


.title-basic {
    display: block;
    margin-bottom: 80px;
    font-size: 34px;
    text-align: center;
    font-family: "FOT-ロダン Pro B";
    font-weight: 600;
}

.title-basic small {
    display: block;
    font-size: 75%;
}

.line {
    text-align: center;
    padding: 0 0 30px;
    font-size: 35px;
}

.line span {
    display: inline-block;
    border-top: 1px solid #000;
    width: 80px;
    height: 1px;
}


.title-bg {
    display: block;
    background: #454545;
    color: #fff;
    text-align: center;
    font-size: 34px;
    padding: 45px 0;
}



@media (max-width: 480px) {
    .title-contents span {
        display: flex;
        width: 94%;
        margin: 0 auto;
        text-align: center;
        align-items: center;
        justify-content: center;
        height: auto;
        font-size: 22px;
        padding: 12px 0;
    }

    #countdown .title-contents span {
        font-size: 30px;
    }



    .title-basic {
        margin-bottom: 50px;
        font-size: 6.2vw;
    }

    .title-basic small {
        font-size: 65%;
    }

    .line {
        padding: 0 0 20px;
        font-size: 25px;
    }


    .title-bg {
        font-size: 5.8vw;
        padding: 30px 0;
    }

}

@media (max-width: 320px) {}


/*==================================================
fontawesome
================================================== */

i.fas {
    font-weight: 900;
}

/*==================================================
header
================================================== */

#header-navi {
    background: #000;
    padding: 20px 35px;
    line-height: 1;
    color: #fff;
    position: relative;
}

.header-txt {
    position: absolute;
    right: 35px;
    bottom: 20px;
    font-size: 14px;
    font-weight: 600;
}

.header-txt img {
    width: 160px;
    vertical-align: bottom;
}

#header-navi h1 {
    font-size: 25px;
    font-weight: 600;
}

@media (max-width: 480px) {

    #header-navi {
        padding: 5px 5px;
        text-align: center;
    }

    .header-txt {
        display: none;
        position: relative;
        right: inherit;
        bottom: inherit;
        font-size: 10px;
        text-align: center;
        padding: 5px 0 10px;
    }

    .header-txt img {
        width: 36%;
        vertical-align: bottom;
    }

    #header-navi h1 {
        font-size: 4.8vw;
        margin-bottom: 0;
    }

}


/*==================================================
メインビジュアル
================================================== */

#mainimg {
    position: relative;
    background: url("https://lp.isapo-group.com/wp-content/uploads/2024/08/mainimg.jpg") center center no-repeat;
    background-size: cover;
    color: #fff;
    padding: 35px 30px 50px;
    text-align: center;
}

#mainimg h2 {
    display: block;
    font-size: 5vw;
}

#mainimg h2 small {
    display: block;
    font-size: 55%;
}

#mainimg .fc-red {
    color: #fd5959 !important;
}

#mainimg article {
    display: inline-block;
    margin: 35px auto 60px;
    background-color: rgba(255, 255, 255, 0.85);
    padding: 15px;
    color: #000;
}

#mainimg article>div {
    border: 1px solid #000;
    padding: 35px;
    background: #fff;
}


#mainimg h3 {
    display: block;
    font-size: 2.6vw;
}

#mainimg h3 .fs-small {
    font-size: 60%;
    padding: 0 3px;
}

#mainimg h3 small {
    display: block;
    font-size: 60%;
}

#mainimg h4 {
    display: block;
    font-size: 4.4vw;
}

#mainimg h4 small {
    display: block;
}

#mainimg .btn-area p {
    font-size: 28px;
}

.icn-l {
    height: 56px;
    vertical-align: middle;
    margin-right: 5px;
}

@media (max-width: 480px) {

    #mainimg {
        background: url("https://lp.isapo-group.com/wp-content/uploads/2024/08/mainimg_sp.jpg") top center no-repeat #000;
        background-size: 100%;
        padding: 155px 14px 40px;
    }

    #mainimg h2 {
        line-height: 1.7;
        font-size: 9.0vw;
    }

    /* #pp02_v02_p02 #mainimg h2 small {} */

    #mainimg .fc-red {
        color: #fd5959 !important;
    }

    #mainimg article {
        width: 100%;
        box-sizing: border-box;
        margin: 10px auto 0;
        padding: 10px;
    }

    #mainimg article>div {
        padding: 12px;
    }

    #mainimg h3 {
        font-size: 8.2vw;
    }

    #mainimg h3 .fs-small {
        font-size: 50%;
        padding: 0 2px;
    }

    #mainimg h3 small {
        font-size: 56%;
    }

    #mainimg h4 {
        display: block;
        font-size: 9.4vw;
    }

    #mainimg .btn-area {
        margin-top: 40px;
    }

    #mainimg .btn-area p {
        font-size: 5.5vw;
        margin-bottom: 0;
    }

    #mainimg a.btn {
        width: 100%;
    }

    .icn-l {
        height: 32px;
        margin-right: 3px;
    }

}


/*==================================================
footer
================================================== */

footer {
    clear: both;
    margin: 0;
    padding: 50px 0;
    position: relative;
    font-size: 14px;
    background: #f4f4f4;
    text-align: center;
}

.logo img {
    width: 140px;
    display: block;
    margin: 0 auto 30px;
}

p.txt-footer {
    margin-bottom: 20px;
    line-height: 2.0;
}

p.txt-footer strong {
    font-size: 20px;
}


.copyright {
    margin: 25px 0 0;
    letter-spacing: 0.1em;
    font-size: 12px;
    color: #999;
}

.footer-logo {
    width: 120px;
    vertical-align: bottom;
}


@media (max-width: 480px) {

    footer {
        padding: 25px 0;
        font-size: 13px;
    }

    .footer-logo {
        width: 26%;
        vertical-align: bottom;
    }

}

/*==================================================
トップページ
================================================== */

.contents-lp p {
    margin: 50px 0;
}

.txt-lead {
    font-size: 24px;
    margin-bottom: 50px;
}

#dm-02 {
    text-align: center;
    padding-top: 0;
    padding-bottom: 0;
}

.movie {
    background: #d9d9d9;
    ;
    text-align: center;
    padding: 130px 0 0;
    position: relative;
}

.movie:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 180px 100vw 0 0;
    border-color: #fff transparent transparent transparent;
}

.movie .title-basic {
    margin-bottom: 60px !important;
}

.box-movie {
    width: 1100px;
    margin: 0 auto;
    background: url("../images/mbp.png") top center no-repeat;
    background-size: 100%;
    min-height: 660px;
}

.movie .title-basic {
    margin: 85px 0 0;
    color: #222;
}

.movie .title-basic span {
    border-color: #222;
}

@media screen and (min-width: 481px) and (max-width: 1024px) {

    .box-movie {
        width: 1000px;
        min-height: 660px;
    }

}

.box-movie iframe {
    margin: 30px 0 0;
    width: 790px;
    height: 500px;
}

.box-movie p {
    margin: 50px 0 0;
}

/*#kigen{
    background: #d9d9d9;
    padding: 15px 0 50px;
    text-align: center;
}*/

#kigen {
    margin: 0;
    padding: 70px 0 150px;
    position: relative;
    background: #d9d9d9;
}

#kigen:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 180px 0 0 100vw;
    border-color: #d9d9d9 transparent transparent #239ddd;
}

#kigen article {
    margin: 0 auto 20px;
    padding: 20px;
    font-size: 24px;
}



#kigen article strong {
    color: #f10f0f;
}

#dm-02-txt {
    padding: 0;
}



#dm-btn {
    padding-bottom: 0 !important;
}

.btn-sec {
    /*background: url("../images/bg_btnarea.jpg") no-repeat bottom center;
    background-size: cover;*/
    padding: 50px 0;
}

.btn-sec .contents-area {
    border: 6px solid #5c5a59;
    box-sizing: border-box;
    background: #fff;
    width: 900px;
}

/*.btn-sec h2{
    text-align: center;
    font-size: 36px;
    background: #222;
    color: #fff;
    display: block;
    padding: 20px 0;
}*/

.btn-sec article {
    text-align: center;
    margin: 35px auto;
}

.btn-sec article h2 {
    margin: 0 0 25px;
}

.btn-sec table {
    font-size: 22px;
    width: 730px;
    margin: 35px auto 20px;
}

.btn-sec table tr {
    display: block;
    margin-bottom: 15px;
    border-bottom: 1px dotted #ddd;
}

.btn-sec table th {
    text-align: left;
    width: 240px;
    vertical-align: top;
    padding-bottom: 15px;
}

.btn-sec table td {
    text-align: left;
    vertical-align: top;
    padding-bottom: 15px;
}

del,
.btn-sec table td strong {
    font-weight: bold;
    color: #df0202;
}

del {
    background-image: linear-gradient(#000, #000);
    background-position: 0 50%;
    background-size: 100% 3px;
    background-repeat: repeat-x;
    color: #000;
    margin: 0;
    text-decoration: none;
}

del.red {
    background-image: linear-gradient(#df0202, #df0202);
}

del span {
    color: #000;
}

.btn-area-title {
    font-size: 26px;
    text-align: center;
    background: #5c5a59;
    color: #f9e267;
    line-height: 1;
    padding: 20px 0;
    font-weight: bold;
}

.btn-area-title span {
    display: block;
    font-size: 18px;
    padding-right: 7px;
}

.btn-sec .btn {
    margin: 10px auto 0;
}

.btn-sec p.fs-large {
    width: 90%;
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
}

.txt-att {
    display: block;
    text-align: center;
    font-size: 15px;
    margin: 30px 0 0;
}

.btn-sec article strong {
    display: block;
    padding: 25px;
    text-align: left;
    background: #f2f2f2;
    width: 84%;
    margin: 35px auto 0;
    box-sizing: border-box;
}

#dm-03 {
    text-align: center;
    padding-bottom: 90px;
    padding-top: 0 !important;
}

#dm-04 {
    text-align: center;
    padding-bottom: 90px;
    padding-top: 0 !important;
}

.img-zoom {
    display: block;
    width: 90%;
    margin: 0 auto;
}

#dm-03 .contents-area,
#dm-04 .contents-area {
    width: 1000px;
}

#dm-06 {
    border-top: 1px solid #ccc;
    padding-bottom: 40px;
}

#dm-06 h2 {
    text-align: center;
    margin: 0 0 60px;
}

#dm-06 h2 span.line {
    display: block;
    width: 80px;
    margin: 0 auto;
    height: 25px;
    border-bottom: 1px solid #000;
}

#dm-06 h2 span.subtitle {
    display: block;
    padding: 20px 0 0;

}

.pic-prof {
    width: 330px;
    float: left;
    margin-right: 40px;
}

.pic-prof img {
    width: 100%;
    height: auto;
}

.prof {
    padding: 10px 0 0;
    width: 240px;
}

.prof span {
    display: block;
}

.prof-sign {
    display: block;
    text-align: right;
}

.prof-sign img {
    width: 230px;
    padding: 10px 10px 0;
}

p.txt-prof {
    margin: 0 0 10px;
    text-align: justify;
    text-justify: inter-ideograph;
}

.place-date {
    margin-bottom: 20px;
}

.title-normal {
    font-weight: bold;
    display: block;
    font-size: 22px;
    margin: 15px 0 5px;
}

.ul-basic {
    margin: 0 0 0 22px;
}

.ul-basic li {
    line-height: 1.8;
}



@media (max-width: 480px) {

    .contents-lp p {
        margin: 30px 0;
    }

    .txt-lead {
        font-size: 16px;
        margin-bottom: 35px;
        line-height: 1.8;
    }

    #dm-btn .contents-area {
        padding-bottom: 25px !important;
    }

    #dm-02 {
        text-align: center;
    }

    .movie {
        padding: 10px 0 20px;
    }

    .movie {
        padding: 50px 0 0;
    }

    .movie:before {
        border-width: 70px 100vw 0 0;
    }

    .box-movie {
        width: 94%;
        min-height: 190px;
        background-position: top center;
    }

    .box-movie iframe {
        margin: 5px 0 0;
        width: 250px;
        height: 160px;
    }

    .box-movie p {
        margin: 40px 0 0;
        font-size: 14px;
    }

    .movie .title-basic {
        margin: 45px 0 0;
    }

    .movie .title-basic {
        margin-bottom: 40px !important;
    }

    #kigen article {
        width: 100%;
        box-sizing: border-box;
        margin: 0 auto;
        padding: 10px;
        font-size: 16px;
    }

    /* #kigen article span {} */

    #kigen article strong {
        font-size: 16px;
    }

    #kigen {
        padding: 0 0 80px;
    }

    #kigen:after {
        border-width: 70px 0 0 100vw;
    }




    .btn-sec {
        padding: 35px 0;
    }

    .btn-sec .contents-area {
        width: 90%;
        box-sizing: border-box;
        margin: 0 auto;
        padding-bottom: 0;
    }

    .btn-sec h2 {
        font-size: 28px;
        margin: 0 0 25px;
        padding: 10px 0 15px;
    }

    .btn-sec table {
        font-size: 15px;
        width: 90%;
        margin: 20px auto 0;
    }

    .btn-sec table th {
        width: 100%;
        display: block;
        background: #f2f2f2;
        text-align: center;
        padding: 10px 0;
    }

    .btn-sec table th span {
        display: none;
    }

    .btn-sec table td {
        width: 100%;
        display: block;
        padding: 15px 10px 20px;
        box-sizing: border-box;
    }

    .btn-sec article p {
        text-align: left;
        width: 90%;
        margin: 0 auto;
        font-size: 14px !important;
    }

    .btn-sec article strong {
        padding: 20px;
        width: 90%;
        margin: 25px auto 0;
    }

    .btn-area-title {
        font-size: 20px;
        line-height: 1.3em;
        padding: 10px 5px 15px;
    }

    .btn-area-title span {
        font-size: 15px;
        padding-right: 0;
    }



    .btn-sec .btn {
        width: 90%;
        position: relative;
        bottom: inherit;
        right: inherit;
        padding: 14px 0;
    }

    .txt-att {
        display: block;
        text-align: center;
        font-size: 14px;
        margin: 30px 0 0;
    }

    #dm-03 {
        text-align: center;
        padding-bottom: 30px;
    }

    #dm-04 {
        text-align: center;
        padding-bottom: 40px;
    }

    .img-zoom {
        width: 100%;
        margin-bottom: 20px;
    }

    #dm-03 .contents-area,
    #dm-04 .contents-area {
        width: 90%;
    }

    #dm-06 {
        font-size: 15px;
        padding-bottom: 0;
    }

    #dm-06 h2 {
        text-align: center;
        margin: 0 0 40px;
    }

    .pic-prof {
        float: none;
        width: 100%;
        margin: 0;
    }

    p.txt-prof {
        margin: 15px 0;
        line-height: 1.6;
    }

    .pic-kashino {
        float: none;
        display: block;
        margin: 0 auto 5px;
    }

    .prof-sign img {
        width: 55%;
    }

    .prof-name {
        text-align: right;
        display: block;
        margin-bottom: 15px;
    }

    .place-date {
        margin-bottom: 20px;
    }

    .title-normal {
        font-size: 15px;
        margin: 10px 0 5px;
    }

    .ul-basic {
        margin: 0 0 0 17px;
    }

    .ul-basic li {
        font-size: 14px;
        line-height: 1.7;
    }


}

/*==================================================
テーブル
================================================== */

.title-table {
    display: block;
    text-align: center;
    padding: 30px 0;
    font-size: 28px;
    background: #5c5a59;
    color: #f9e267;
    font-weight: bold;
}

.table {
    border-collapse: collapse;
    border: 1px solid #ddd;
    box-sizing: border-box;
    margin: 0 auto 30px;
    width: 100%;
}

.table th {
    border: 1px solid #ddd;
    background: #f4f4f4;
    font-weight: normal;
    text-align: center;
    padding: 25px 20px;
}

.table thead th {
    vertical-align: middle;
    width: 33.333333%;
}

.table td {
    border: 1px solid #ddd;
    font-weight: normal;
    padding: 25px 20px;
}

.table tbody th {
    vertical-align: middle;
    text-align: left;
    background: #fff;
    font-weight: bold;
}

.table tbody td {
    text-align: center;
    vertical-align: middle;
    position: relative;
}

.table tr.tr-strong th,
.table tr.tr-strong td {
    background: #fedddd !important;
}

.table tbody td i {
    position: absolute;
    top: 50%;
    right: -12px;
    margin-top: -12px;
    font-size: 24px;
    color: #f10f0f;
    z-index: 10;
}


.table-dotted-border {
    border-collapse: collapse;
    width: 100%;
    box-sizing: border-box;
}

.table-dotted-border th {
    font-weight: normal;
    padding: 25px 15px;
    border-bottom: 1px dotted #ccc;
    vertical-align: middle;
    text-align: left;
}

.table-dotted-border td {
    font-weight: normal;
    padding: 25px 15px;
    border-bottom: 1px dotted #ccc;
    vertical-align: middle;
    text-align: left;
}

@media (max-width: 480px) {

    .title-table {
        padding: 13px 0;
        font-size: 22px;
    }

    .table th {
        padding: 15px 10px;
    }

    .table td {
        padding: 15px 10px;
    }

    .table-dotted-border th {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 0;
        border-bottom: none;
    }

    .table-dotted-border td {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 12px 0 20px;
        border-bottom: 1px dotted #ccc;
        margin-bottom: 15px;
    }
}



/*==================================================
リスト
================================================== */

.ul-check {
    list-style: none;
    display: inline-block;
    text-align: left;
    margin: 80px 0 30px 0;
}

.ul-check li {
    padding: 5px 0;
}

.ul-check li strong {
    display: block;
    font-size: 26px;
    font-weight: bold;
    background: #fff;
    padding: 12px 15px 10px;
    border-left: 5px solid #fd6f6f;
}

.ul-check li i img {
    vertical-align: middle;
    width: 40px;
    margin-right: 10px;
}

.ul-check li p {
    margin: 40px 50px;
}

@media (max-width: 480px) {

    .ul-check {
        display: block;
        text-align: left;
        margin: 50px 0 0 0;
    }

    .ul-check li {
        padding: 5px 0 25px 10px;
    }

    .ul-check li strong {
        font-size: 18px;
    }

    .ul-check li i img {
        width: 26px;
        margin-right: 7px;
    }

    .ul-check li p {
        margin: 20px 0 0 0;
        font-size: 14px;
        line-height: 1.8;
    }

}

/*==================================================
align
================================================== */

.ta-c {
    text-align: center;
}

.ta-l {
    text-align: left;
}

.ta-r {
    text-align: right;
}


/*==================================================
FontColor Valiation
================================================== */

.fc-w {
    color: #fff !important;
}

.fc-black {
    color: #333 !important;
}

.fc-red {
    color: #f10f0f !important;
}

.fc-yellow {
    color: #fbe706 !important;
}

.fc-blue {
    color: #077fc6 !important;
}

/*==================================================
FontSize Valiation
================================================== */

.fs-xxlarge {
    font-size: 48px;
}

.fs-xlarge {
    font-size: 36px;
}

.fs-large2 {
    font-size: 28px;
    line-height: 1.8;
}

/*.fs-large2 strong{
    color: #f10f0f;
}*/

.fs-large {
    font-size: 21px;
    line-height: 1.7;
}

.fs-normal {
    font-size: 18px;
}


@media (max-width: 480px) {

    .fs-xxlarge {
        font-size: 36px;
    }

    .fs-xlarge {
        font-size: 26px;
    }

    .fs-large2 {
        font-size: 20px;
        line-height: 1.5;
    }

    .fs-large {
        font-size: 14px;
        line-height: 1.8;
    }

    .fs-normal {
        font-size: 14px;
    }

}

@media (max-width: 320px) {

    .fs-xxlarge {
        font-size: 36px;
    }

    .fs-xlarge {
        font-size: 22px;
    }

    .fs-large {
        font-size: 14px;
        line-height: 1.8;
    }

    .fs-normal {
        font-size: 14px;
    }

}

/*==================================================
lazyshow
================================================== */

.lazyshow {
    visibility: hidden;
    transform: translate(0, 5rem);
    opacity: 0;
    -moz-transition: all 700ms ease-out 0s;
    transition: all 700ms ease-out 0ms;
}


/*
.lazyshow-hidden{
  visibility: hidden;
  transform: translate(0,5rem);
  opacity: 0;
  -moz-transition: all 700ms ease-out 0s;;
  transition: all 700ms ease-out 0ms;
}
*/

.lazyshow-show {
    visibility: visible;
    opacity: 1;
    transform: translate(0, 0);
}


/*==================================================
公開終了ページ
================================================== */

#contents-close {
    height: auto;
    min-height: 100vh;
    background: url("../images/bg_close.jpg") right bottom no-repeat;
    background-size: cover;
    display: flex;
}

.txt-close {
    width: 45%;
    box-sizing: border-box;
    padding: 5vw 0 0 5vw;
}

.txt-close p {
    text-align: left;
    width: 90%;
    font-size: 1.3em;
}

.txt-close span {
    display: block;
    margin-bottom: 30px;
}

.txt-close p strong {
    display: block;
    font-size: 46px;
    line-height: 1.6;
    margin: 0 0 50px;
}

.img-close {
    width: 55%;
    opacity: 0.75;
    position: relative;
}

.footer-copy {
    position: absolute;
    width: 100%;
    text-align: center;
    padding: 15px 0;
    font-size: 15px;
    bottom: 0;
    left: 0;
}

.footer-copy a {
    color: #000;
    text-decoration: underline;
}

.footer-copy a:hover {
    color: #df0202;
}

a.btn-close {
    display: inline-block;
    padding: 12px 0;
    text-align: center;
    border: 1px solid #111;
    border-radius: 26px;
    text-decoration: none;
    color: #111 !important;
    font-size: 15px;
    width: 280px;
    margin-top: 35px;
    margin-right: 20px;
}

a.btn-close:hover {
    color: #fff !important;
    background: #111;
    text-decoration: none;
}

.title-close {
    display: block;
    font-weight: bold;
    font-size: 46px;
    text-align: center;
}

.title-close span {
    display: block;
    font-size: 75%;
}


@media (max-width: 1780px) {

    .txt-close {
        padding: 5vw 0 0 5vw;
    }

    .txt-close p {
        font-size: 1.2em;
    }

    .txt-close p strong {
        font-size: 38px;
        line-height: 1.5;
    }

}

@media (max-width: 1415px) {

    .txt-close {
        padding: 5vw 0 0 5vw;
    }

    .txt-close p {
        font-size: 1.0em;
    }

    .txt-close p strong {
        font-size: 34px;
        line-height: 1.5;
    }

}

@media (max-width: 1180px) {

    .txt-close {
        padding: 6vw 0 0 4vw;
    }

    .txt-close p strong {
        font-size: 28px;
    }

}


@media (max-width: 480px) {

    #contents-close {
        height: auto;
        background: url("../images/bg_close_sp.jpg") right bottom no-repeat;
        background-size: cover;
        display: block;
    }

    .txt-close {
        display: block;
        align-items: baseline;
        justify-content: center;
        width: 90%;
        margin: 0 auto 30px;
        padding: 0;
        padding-top: 30px;
    }

    .txt-close p {
        text-align: left;
        width: 100%;
        font-size: 18px;
    }

    .txt-close p strong {
        font-size: 24px;
        line-height: 1.4;
        margin: 0 0 30px;
    }

    .img-close {
        width: 100%;
        text-align: center;
    }

    .footer-copy {
        position: relative;
        padding: 12px 0;
        font-size: 13px;
        bottom: 0;
        left: 0;
    }

    a.btn-close {
        display: block;
        width: 100%;
        padding: 10px 0;
        font-size: 14px;
        margin: 15px auto 0;
    }

    .title-close {
        font-size: 28px;
    }

    .title-close span {
        display: block;
        font-size: 75%;
    }

}


/*==================================================
WISTIA
================================================== */

.wistia_responsive_padding {
    position: relative;
    width: 790px;
    margin: 0 auto;
    min-height: 570px;
}

.wistia_responsive_wrapper {
    height: 100%;
    left: 0;
    position: absolute;
    top: 65px;
    width: 100%;
}

.wistia_embed {
    height: 100%;
    position: relative;
    width: 100%;
}

.wistia_swatch {
    height: 100%;
    left: 0;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    top: 0;
    transition: opacity 200ms;
    width: 100%;
}

@media screen and (min-width: 481px) and (max-width: 1024px) {

    .wistia_responsive_padding {
        width: 720px;
        min-height: 520px;
    }

    .wistia_responsive_wrapper {
        top: 75px;
    }

}

@media (max-width: 480px) {

    .wistia_responsive_padding {
        width: 250px;
        min-height: 180px;
    }

    .wistia_responsive_wrapper {
        top: 15px;
    }

}


@media (max-width: 320px) {

    .wistia_responsive_padding {
        position: relative;
        width: 210px;
        margin: 0 auto;
        min-height: 150px;
    }

}


#research-award {
    height: auto !important;
    padding: 80px 0 90px !important;
    background: url("../images/bg.jpg") no-repeat bottom right;
    background-size: cover;
}

#research-award article {
    text-align: center;
}

#research-award article ul {
    list-style: none;
    margin-top: 50px;
}

#research-award article ul li {
    display: inline-block;
    width: 240px;
    margin: 0 45px;
    vertical-align: top;
}

#research-award article ul li img {
    width: 100%;
}

.top-award .top-title {
    font-size: 26px !important;
}

#research-award article p.fs-large2 strong {
    display: block;
}

@media (max-width: 480px) {

    #research-award {
        padding: 40px 0 40px !important;
    }

    #research-award article ul {
        margin-top: 40px;
    }

    #research-award article ul li {
        display: block;
        width: 45%;
        margin: 0 auto 6px;
    }

    #research-award article p.fs-large2 {
        line-height: 1.3 !important;
        font-size: 16px;
    }

    #research-award article p.fs-large2 strong {
        margin: 6px 0;
    }

}




/*==================================================
Padding Valiation
================================================== */

.p0 {
    padding: 0 !important;
}

.p5 {
    padding: 5px !important;
}

.p10 {
    padding: 10px !important;
}

.p15 {
    padding: 15px !important;
}

.p20 {
    padding: 20px !important;
}

.p25 {
    padding: 25px !important;
}

.p30 {
    padding: 30px !important;
}

.p40 {
    padding: 40px !important;
}

.p50 {
    padding: 50px !important;
}

.p1per {
    padding: 1% !important;
}

.p2per {
    padding: 2% !important;
}

.p3per {
    padding: 3% !important;
}

.p4per {
    padding: 4% !important;
}

.p5per {
    padding: 5% !important;
}

.pr0 {
    padding-right: 0px !important;
}

.pr5 {
    padding-right: 5px !important;
}

.pr10 {
    padding-right: 10px !important;
}

.pr15 {
    padding-right: 15px !important;
}

.pr20 {
    padding-right: 20px !important;
}

.pr25 {
    padding-right: 25px !important;
}

.pr30 {
    padding-right: 30px !important;
}

.pr40 {
    padding-right: 40px !important;
}

.pr50 {
    padding-right: 50px !important;
}

.pr1per {
    padding-right: 1% !important;
}

.pr2per {
    padding-right: 2% !important;
}

.pr3per {
    padding-right: 3% !important;
}

.pr4per {
    padding-right: 4% !important;
}

.pr5per {
    padding-right: 5% !important;
}

.pt0 {
    padding-top: 0px !important;
}

.pt5 {
    padding-top: 5px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pt30 {
    padding-top: 30px !important;
}

.pt40 {
    padding-top: 40px !important;
}

.pt50 {
    padding-top: 50px !important;
}

.pb0 {
    padding-bottom: 0px !important;
}

.pb5 {
    padding-bottom: 5px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.pb40 {
    padding-bottom: 40px !important;
}

.pb50 {
    padding-bottom: 50px !important;
}

.pl0 {
    padding-left: 0px !important;
}

.pl5 {
    padding-left: 5px !important;
}

.pl10 {
    padding-left: 10px !important;
}

.pl15 {
    padding-left: 15px !important;
}

.pl20 {
    padding-left: 20px !important;
}

.pl25 {
    padding-left: 25px !important;
}

.pl30 {
    padding-left: 30px !important;
}

.pl40 {
    padding-left: 40px !important;
}

.pl50 {
    padding-left: 50px !important;
}

.pl1per {
    padding-left: 1% !important;
}

.pl2per {
    padding-left: 2% !important;
}

.pl3per {
    padding-left: 3% !important;
}

.pl4per {
    padding-left: 4% !important;
}

.pl5per {
    padding-left: 5% !important;
}

.p0a {
    padding-right: auto;
    padding-left: auto !important;
}

.plr10 {
    padding-left: 10px;
    padding-right: 10px !important;
}

.plr15 {
    padding-left: 15px;
    padding-right: 15px !important;
}

.plr20 {
    padding-left: 20px;
    padding-right: 20px !important;
}

.plr25 {
    padding-left: 25px;
    padding-right: 25px !important;
}

.plr30 {
    padding-left: 30px;
    padding-right: 30px !important;
}

.plr40 {
    padding-left: 40px;
    padding-right: 40px !important;
}

.plr50 {
    padding-left: 50px;
    padding-right: 50px !important;
}

.plr1per {
    padding-left: 1%;
    padding-right: 1% !important;
}

.plr2per {
    padding-left: 2%;
    padding-right: 2% !important;
}

.plr3per {
    padding-left: 3%;
    padding-right: 3% !important;
}

.plr4per {
    padding-left: 4%;
    padding-right: 4% !important;
}

.plr5per {
    padding-left: 5%;
    padding-right: 5% !important;
}



/*==================================================
Margin Valiation
================================================== */

.m0 {
    margin: 0 !important;
}

.m5 {
    margin: 5px !important;
}

.m10 {
    margin: 10px !important;
}

.m15 {
    margin: 15px !important;
}

.m20 {
    margin: 20px !important;
}

.m25 {
    margin: 25px !important;
}

.m30 {
    margin: 30px !important;
}

.m40 {
    margin: 40px !important;
}

.m50 {
    margin: 50px !important;
}

.m1per {
    margin: 1% !important;
}

.m2per {
    margin: 2% !important;
}

.m3per {
    margin: 3% !important;
}

.m4per {
    margin: 4% !important;
}

.m5per {
    margin: 5% !important;
}

.mr0 {
    margin-right: 0px !important;
}

.mr5 {
    margin-right: 5px !important;
}

.mr10 {
    margin-right: 10px !important;
}

.mr15 {
    margin-right: 15px !important;
}

.mr20 {
    margin-right: 20px !important;
}

.mr25 {
    margin-right: 25px !important;
}

.mr30 {
    margin-right: 30px !important;
}

.mr40 {
    margin-right: 40px !important;
}

.mr50 {
    margin-right: 50px !important;
}

.mr1per {
    margin-right: 1% !important;
}

.mr2per {
    margin-right: 2% !important;
}

.mr3per {
    margin-right: 3% !important;
}

.mr4per {
    margin-right: 4% !important;
}

.mr5per {
    margin-right: 5% !important;
}

.mt0 {
    margin-top: 0px !important;
}

.mt5 {
    margin-top: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mb0 {
    margin-bottom: 0px !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.mb100 {
    margin-bottom: 100px !important;
}

.ml0 {
    margin-left: 0px !important;
}

.ml5 {
    margin-left: 5px !important;
}

.ml10 {
    margin-left: 10px !important;
}

.ml15 {
    margin-left: 15px !important;
}

.ml20 {
    margin-left: 20px !important;
}

.ml25 {
    margin-left: 25px !important;
}

.ml30 {
    margin-left: 30px !important;
}

.ml40 {
    margin-left: 40px !important;
}

.ml50 {
    margin-left: 50px !important;
}

.ml1per {
    margin-left: 1% !important;
}

.ml2per {
    margin-left: 2% !important;
}

.ml3per {
    margin-left: 3% !important;
}

.ml4per {
    margin-left: 4% !important;
}

.ml5per {
    margin-left: 5% !important;
}

.m0a {
    margin-right: auto;
    margin-left: auto !important;
}

.mlr10 {
    margin-left: 10px;
    margin-right: 10px !important;
}

.mlr15 {
    margin-left: 15px;
    margin-right: 15px !important;
}

.mlr20 {
    margin-left: 20px;
    margin-right: 20px !important;
}

.mlr25 {
    margin-left: 25px;
    margin-right: 25px !important;
}

.mlr30 {
    margin-left: 30px;
    margin-right: 30px !important;
}

.mlr40 {
    margin-left: 40px;
    margin-right: 40px !important;
}

.mlr50 {
    margin-left: 50px;
    margin-right: 50px !important;
}

.mlr1per {
    margin-left: 1%;
    margin-right: 1% !important;
}

.mlr2per {
    margin-left: 2%;
    margin-right: 2% !important;
}

.mlr3per {
    margin-left: 3%;
    margin-right: 3% !important;
}

.mlr4per {
    margin-left: 4%;
    margin-right: 4% !important;
}

.mlr5per {
    margin-left: 5%;
    margin-right: 5% !important;
}









#dm-btn02 {
    padding: 0;
}

#dm-btn02 .contents-area {
    width: 900px !important;
}


@media (max-width: 480px) {

    #dm-btn02 {
        padding: 20px 0;
    }

    #dm-btn02 .contents-area {
        width: 90% !important;
    }

    .btn-sec p.fs-large {
        width: 90% !important;
        margin-bottom: 0 !important;
    }

}

#limited {
    padding-top: 0 !important;
}

#limited p.fs-xlarge {
    text-align: center;
}

#limited p.fs-large:last-child {
    text-align: center;
}


#reserve {
    padding-top: 0 !important;
    text-align: center;
}

.img-flow {
    width: 460px;
    margin: 50px 0 0;
}

@media (max-width: 480px) {

    .img-flow {
        display: inline;
        width: 90%;
        margin: 30px 0 0;
    }
}

.ul-day {
    list-style: none;
}

.ul-day li {
    background: #eee;
    padding: 6px 0;
    margin-bottom: 10px;
    text-align: center;
    border-radius: 6px;
    font-size: 20px;
    font-weight: bold;
}

.btn-sec td p {
    margin: 0 0 15px !important;
}





#countdownUp {
    text-align: center;
    padding-top: 30px;
    font-size: 24px;
    padding-bottom: 50px;
}

@media (max-width: 480px) {
    #countdownUp {
        padding-top: 40px;
        font-size: 18px;
    }
}

/*==================================================
user-01
================================================== */

.article-user {
    text-align: center;
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px dotted #ddd;
}

#user03 {
    border: none;
}

.title-user-copy {
    display: block;
    font-weight: normal;
    font-size: 24px;
    /* vertical-align: top; */
    line-height: 1.7;
    font-style: italic;
}

.title-user-copy strong {
    display: block;
    font-size: 32px;
}

.title-user-copy strong span.quo {
    color: #f10f0f;
    font-size: 32px;
}

.name-user {
    display: block;
    font-size: 16px;
    margin-bottom: 35px;
}

.pic-user img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    vertical-align: bottom;
    object-fit: cover;
    margin: 25px 0;
}

@media (max-width: 480px) {

    #user-contents {
        padding-bottom: 0;
    }

    .article-user {
        padding-bottom: 30px;
        margin-bottom: 30px;
    }

    .title-user-copy {
        font-size: 16px;
        line-height: 1.6;
    }

    .title-user-copy strong {
        font-size: 5.8vw;
    }

    .title-user-copy strong span.quo {
        font-size: 24px;
    }

    .name-user {
        margin-bottom: 25px;
        font-size: 15px;
    }

    .name-user strong {
        font-size: 145%;
        padding-right: 5px;
    }

    #user-01 .name-user strong {
        font-size: 180%;
    }

    .pic-user img {
        width: 120px;
        height: 120px;
    }

}

/*==================================================
typo
================================================== */

.typo {
    text-align: center;
    font-weight: bold !important;
    padding-bottom: 100px;
}

.txt-typo-main {
    display: block;
    font-size: 14vw;
    color: #d8d8d8;
    font-weight: bold;
    letter-spacing: -0.04em;
}

.txt-typo {
    display: block;
    position: relative;
    z-index: 5;
    font-size: 3.4vw;
    font-weight: bold !important;
    line-height: 1.3;
    margin-top: -120px;
}

.txt-typo strong {
    color: #f10f0f;
}

.ul-red {
    border-bottom: 8px solid #f10f0f;
    padding-bottom: 4px;
}

/* #typo-02 {} */

#typo-03 {
    padding: 0 0 80px;
}

#typo-04 {
    padding: 0 0 80px;
}

@media (max-width: 480px) {

    .typo {
        padding-bottom: 50px;
    }

    .txt-typo-main {
        font-size: 24vw;
        line-height: 1;
        width: 100%;
        margin: 0 auto;
    }

    .txt-typo {
        font-size: 10vw;
        line-height: 1.3;
        margin-top: -22px;
        letter-spacing: -0.06em;
    }

    .ul-red {
        border-bottom: 6px solid #f10f0f;
        padding-bottom: 0;
    }

    #typo-01 p.fs-xlarge {
        margin-bottom: 35px;
        font-size: 22px;
    }

    #typo-01 .txt-typo {
        margin-top: -20px;
    }

    /* #typo-02 {} */

    #typo-03 {
        padding: 50px 0 40px;
    }

    #typo-04 {
        padding: 50px 0 50px;
    }

    #typo-04 .txt-typo {
        font-size: 9.2vw;
        line-height: 1.2;
    }

}

/*==================================================
LP-contents01
================================================== */

#LP-contents01 {
    padding-top: 0;
    padding-bottom: 150px;
    line-height: 1.8;
}

#LP-contents01 .title-basic {
    margin: 0;
}

#LP-contents01 div.clearfix {
    margin: 50px 0 50px;
}

#LP-contents01 .txt-typo-main {
    position: relative;
    margin-top: -65px;
}

.img-pic01 {
    float: right;
    width: 400px;
    vertical-align: bottom;
    margin: 0 0 30px 35px;
}

#LP-contents01 p {
    margin-bottom: 30px;
}

@media (max-width: 480px) {

    #LP-contents01 {
        padding-top: 20px;
        padding-bottom: 70px;
        line-height: 1.7;
    }

    #LP-contents01 .txt-typo-main {
        margin-top: 0;
    }

    #LP-contents01 div.clearfix {
        margin: 50px 0 20px;
    }

    .img-pic01 {
        width: 40%;
        margin: 0 0 15px 20px;
    }

    #LP-contents01 p {
        margin-bottom: 20px;
    }

    #LP-contents01 p.fs-xxlarge {
        line-height: 1.4;
        font-size: 7.4vw;
    }

    #LP-contents01 a.btn {
        width: 90%;
    }

}

/*==================================================
LP-contents02
================================================== */

#LP-contents02 {
    background: #f2f2f2;
    padding-bottom: 150px;
    line-height: 1.8;
}

.strong-type01 {
    border-bottom: 8px solid #fd6f6f;
}

#LP-contents02 p strong.strong-type01 {
    font-size: 130%;
}

.img-pic02 {
    width: 360px;
    float: left;
    margin: 0 35px 30px 0;
    vertical-align: bottom;
}

#LP-contents02 p {
    margin-bottom: 30px;
}

@media (max-width: 480px) {

    #LP-contents02 {
        line-height: 1.6;
        padding-bottom: 75px;
    }

    #LP-contents02 p strong.strong-type01 {
        font-size: 105%;
    }

    .img-pic02 {
        width: 40%;
        margin: 0 20px 10px 0;
    }

    #LP-contents02 p {
        margin-bottom: 20px;
    }

}

/*==================================================
benefit
================================================== */

#benefit {
    text-align: center;
}

#benefit .contents-area {
    width: 1200px;
}

.ul-3cols {
    list-style: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin: 80px 0 80px;
}

.ul-3cols li {
    width: calc(100%/3);
    text-align: center;
    position: relative;
}

.ul-3cols li article {
    width: 90%;
    margin: 0 auto;
    border: 3px solid #fcefdd;
    border-radius: 10px;
    /*padding: 40px 20px 20px;*/
    box-sizing: border-box;
    background: #fcefdd;
    min-height: 520px;
}

.li-num {
    display: flex;
    border: 3px solid #fff;
    background: #fcefdd;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    width: 54px;
    height: 54px;
    border-radius: 50%;
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -30px;
    line-height: 1;
    font-weight: bold;
}

.ul-3cols li article strong {
    display: flex;
    background: #fcefdd;
    padding: 40px 15px 0;
    font-size: 22px;
    text-align: center;
    align-items: center;
    justify-content: center;
}

.ul-3cols li article strong p {
    margin: 0;
}

.ul-3cols li article strong span {
    color: #000 !important;
}

.ul-3cols li article>div {
    padding: 0 15px;
}

p.p-benefit {
    text-align: justify;
    text-justify: inter-ideograph;
    font-size: 15px;
    line-height: 1.7;
    margin: 12px auto 0;
    width: 90%;
}

p.txt-benefit {
    width: 1000px;
    margin: 0 auto 30px;
    line-height: 1.8;
}

.img-benefit {
    width: 90%;
    display: block;
    /* vertical-align: bottom; */
    margin: 25px auto 0;
    border-radius: 8px;
    height: 132px;
    object-fit: cover;
    opacity: 0.72;
}

.bene-line {
    display: block;
    width: 80px;
    height: 17px;
    border-bottom: 1px solid #000;
    margin: 0 auto 16px;
}

@media (max-width: 480px) {

    #benefit {
        padding: 50px 0 50px;
        text-align: center;
    }

    #benefit .contents-area {
        width: 90%;
    }

    #benefit p.fs-xxlarge {
        font-size: 8.0vw;
    }

    .ul-3cols {
        display: block;
        margin-bottom: 20px;
        margin-top: 60px;
    }

    .ul-3cols li {
        width: 100%;
        margin-bottom: 40px;
    }

    .ul-3cols li article {
        min-height: auto;
        width: 94%;
        padding-bottom: 20px;
    }

    p.txt-benefit {
        width: 92%;
        text-align: left;
        margin: 0 auto 20px;
        line-height: 1.7;
    }

    .ul-3cols li article strong {
        padding: 45px 15px 0;
        font-size: 6.2vw;
        height: auto;
    }

}

/*==================================================
LP-contents03
================================================== */

#LP-contents03 {
    background: #f2f2f2;
}



@media (max-width: 480px) {

    /* #LP-contents03 {} */

    #LP-contents03 ul {
        display: block;
    }

    #LP-contents03 ul li {
        width: 100%;
        margin-bottom: 25px;
    }

    #LP-contents03 ul li article {
        width: 280px;
        height: 280px;
        border: 5px solid #f4b968;
    }

    #LP-contents03 ul li article div h4 {
        font-size: 28px;
    }

    #LP-contents03 ul li article div p {
        width: 100%;
        margin: 20px auto 0;
        font-size: 14px;
    }

    .txt-LPcontents03 {
        width: 90%;
        margin: 35px auto;
        text-align: left;
    }

    .txt-LPcontents03 p.fs-xlarge.fw-b {
        text-align: center;
    }

    .txt-LPcontents03 p.fs-xlarge {
        font-size: 20px;
        text-align: center;
    }

}



/*==================================================
flow
================================================== */

#flow {
    padding-bottom: 70px;
}

.box-flow {
    border: 3px solid #000;
    padding: 0;
}

.title-flow {
    display: block;
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    padding: 20px 0;
}

.ul-flow {
    width: 90%;
    margin: 50px auto;
    list-style: none;
}

.ul-flow li h4 {
    display: block;
    text-align: center;
    border-radius: 4px;
    background: #f4f4f4;
    font-size: 16px;
    padding: 15px 20px;
}

.ul-flow li h4 span {
    display: inline-block;
    font-size: 15px;
    color: #fff;
    background: #343434;
    padding: 0 8px;
    border-radius: 4px;
    margin-right: 10px;
}

.y-down {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 40px 0 40px;
    border-color: #f4f4f4 transparent transparent transparent;
    margin: 15px auto;
}

@media (max-width: 480px) {

    #flow {
        padding-bottom: 50px;
    }

    .title-flow {
        font-size: 22px;
        padding: 15px 0;
    }

    .ul-flow {
        margin: 30px auto;
    }

    .ul-flow li h4 {
        font-size: 15px;
        padding: 12px 15px;
        text-align: left;
    }

    .ul-flow li h4 span {
        font-size: 13px;
        display: block;
        width: 22%;
        padding: 0;
        margin-right: 0;
        text-align: center;
        margin-bottom: 7px;
    }

    .y-down {
        border-width: 18px 30px 0 30px;
        margin: 12px auto;
    }

}



/*==================================================
rej
================================================== */


#rej {
    margin: 0 auto 70px;
}

.title {
    display: block;
    border: 3px solid #333;
    padding: 35px 0;
    background: #fff;
    width: 80%;
    box-sizing: border-box;
    margin: 0 auto 50px;
}

.kousei {
    text-align: left;
    width: 90%;
    margin: 50px auto 50px;
}

p.title-kousei {
    font-size: 22px;
    margin: 0 !important;
}

@media (max-width: 480px) {
    #rej {
        margin: 0 auto 30px;
    }

    .title {
        border: 2px solid #333;
        padding: 15px 0;
        width: 100%;
        margin: 0 auto 45px;
    }

    .title .fs-xxlarge {
        display: block;
        line-height: 1.2;
        padding: 10px 0;
    }

    .kousei {
        margin: 30px auto 35px;
    }

    p.title-kousei {
        font-size: 4.4vw !important;
        margin-bottom: 10px !important;
    }

    .ul-day li {
        padding: 5px 0;
        margin-bottom: 8px;
        font-size: 15px;
        width: 95%;
        box-sizing: border-box;
    }

}

#title-resume span {
    display: inline-block;
    padding: 5px 20px;
}

.kousei p {
    margin: 25px 0;
}

.kousei p.fs-large {
    text-align: center;
    margin: 35px 0;
    padding-bottom: 35px;
    border-bottom: 1px dotted #ddd;
}

.kousei ul {
    margin: 0 auto;
    list-style: none;
}

.kousei ul li {
    margin-bottom: 20px;
    border-bottom: 1px dotted #ddd;
}



.kousei ul li strong {
    font-size: 22px;
}




@media (max-width: 480px) {

    .kousei ul {
        width: 100%;
        margin: 0 auto;
    }

    .kousei ul li {
        margin-bottom: 15px;
    }

    .kousei ul li strong {
        font-size: 15px;
    }

    .kousei p {
        font-size: 14px;
    }



}

/*==================================================
cta
================================================== */

.contents-cta {
    padding: 35px 0;
}

/* .contents-cta .f-btn { */
    /* right: 45px; */



#cta-03 {
    background-image: -moz-linear-gradient(90deg, rgb(252, 239, 221) 0%, rgb(255, 255, 255) 100%);
    background-image: -webkit-linear-gradient(90deg, rgb(252, 239, 221) 0%, rgb(255, 255, 255) 100%);
    background-image: -ms-linear-gradient(90deg, rgb(252, 239, 221) 0%, rgb(255, 255, 255) 100%);
}

#cta-02 {
    background: #f4f4f4;
}

.contents-cta h2 {
    display: block;
    text-align: center;
    font-size: 36px;
    font-weight: bold;
}

.contents-cta h2 span {
    display: inline-block;
    border: 5px solid #f1a742;
    background: #fff;
    padding: 20px 50px;
}

.contents-cta p {
    width: 80%;
    margin: 35px auto;
    font-size: 15px;
    line-height: 1.8;
}

.contents-cta .btn-area {
    text-align: center;
    margin: 60px auto;
}

.contents-cta .btn-area a {
    display: block;
    position: relative;
}

.f-btn {
    position: absolute;
    top: -75px;
    right: -25px;
    width: 100px;
    z-index: 3;
}

.contents-cta .btn-area img.btn-cta {
    width: 80%;
    vertical-align: bottom;
}

#cta-bottom {
    text-align: center;
    padding: 50px 0;
}

#cta-bottom p.fw-b {
    font-size: 28px;
}


@media (max-width: 480px) {

    .contents-cta {
        padding: 35px 0;
    }

    .contents-cta h2 {
        font-size: 28px;
    }

    .contents-cta h2 span {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 10px 30px;
    }

    .contents-cta p {
        margin: 25px auto 0;
        font-size: 14px;
    }

    .contents-cta .btn-area {
        margin: 20px auto;
    }

    .contents-cta .btn-area img.btn-cta {
        width: 90%;
        vertical-align: bottom;
    }

    .f-btn {
        top: -53px;
        right: 0;
        width: 64px;
    }

    #cta-bottom {
        padding: 15px 10px 35px;
    }

    #cta-bottom p.fw-b {
        font-size: 5.5vw;
        margin-bottom: 5px;
    }



}





/*==================================================
whatgreat
================================================== */

#whatgreat {
    text-align: center;
    padding: 50px 0;
    line-height: 1.8;
}

.img-pic03 {
    float: right;
    width: 360px;
    vertical-align: bottom;
    margin: 0 0 30px 35px;
}

#whatgreat div.clearfix {
    text-align: left;
    margin: 70px auto 0;
}

#whatgreat p.fs-xxlarge {
    font-size: 60px;
    margin-bottom: 90px;
}

@media (max-width: 480px) {

    #whatgreat {
        padding: 10px 0;
        line-height: 1.8;
    }

    #whatgreat p.fs-xxlarge {
        font-size: 28px;
        margin-bottom: 50px;
    }

    #whatgreat p.fs-xlarge {
        font-size: 18px;
    }

    .img-pic03 {
        width: 40%;
        margin: 0 0 15px 20px;
    }

    #whatgreat div.clearfix {
        text-align: left;
        margin: 35px auto 0;
    }

    #whatgreat p.fs-large {
        font-size: 15px;
        text-align: left;
    }

}

/*==================================================
LP-contents04
================================================== */

#LP-contents04 {
    background: #f4f4f4;
    padding: 80px 0 50px;
}

#LP-contents04 h3 {
    display: block;
    text-align: center;
    font-size: 36px;
    font-weight: bold;
}

#cta-02 h4 {
    display: block;
    text-align: center;
    font-weight: bold;
    font-size: 26px;
    margin-bottom: 100px;
}

@media (max-width: 480px) {

    #LP-contents04 {
        margin-top: 50px;
        padding: 60px 0 0;
    }

    #LP-contents04 h3 {
        font-size: 26px;
    }

    #cta-02 h4 {
        font-size: 24px;
        margin-bottom: 70px;
    }

    #cta-02 .f-btn {
        right: 0;
    }

}




/*==================================================
pic-kashino
================================================== */

.pic-kashino {
    width: 25%;
    float: right;
    text-align: right;
}

.pic-kashio-tri {
    width: 100%;
}

.pic-kashino span {
    display: block;
    font-size: 13px;
    text-align: right;
    padding-right: 15px;
}

.sign {
    width: 90%;
    margin-top: 15px;
    padding-right: 15px;
}

.txt-teni {
    width: 82%;
    margin: 0 auto 50px;
    padding-top: 25px;
    text-align: left !important;
}

.txt-teni p {
    margin: 0 0 30px !important;
    font-size: 19px;
}

@media (max-width: 480px) {

    .pic-kashino {
        width: 45%;
        margin-left: 10px;
        margin-bottom: 10px;
    }

    .pic-kashino span {
        font-size: 10px;
    }

    .sign {
        padding-right: 10px;
    }

    .txt-teni {
        width: 100%;
        padding-top: 30px;
        margin-bottom: 10px;
    }

    .txt-teni p {
        margin: 0 0 25px !important;
        font-size: 15px;
    }

}

/*==================================================
スピーカーについて
================================================== */
#speaker {
    padding-bottom: 100px;
}

.pic-speaker {
    width: 520px;
    position: absolute;
    top: -250px;
    right: 0;
    z-index: 10;
}

.pic-speaker img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
}

#speaker article {
    width: 800px;
    background: #f4f4f4;
    padding: 100px 30px 10px 50px;
    box-sizing: border-box;
    font-size: 15px;
    line-height: 1.8;
    position: relative;
    margin-top: 250px;
}

#speaker article p {
    margin: 0 0 25px;
    line-height: 1.8;
}

#speaker article h3 {
    display: block;
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 35px;
}

#speaker article h3 span {
    display: block;
    font-size: 60%;
}

@media (max-width: 480px) {
    #speaker {
        padding-bottom: 50px;
    }

    .pic-speaker {
        width: 70%;
        top: -130px;
    }

    #speaker article {
        width: 94%;
        padding: 100px 20px 10px 20px;
        font-size: 14px;
        line-height: 1.8;
        margin-top: 90px;
    }

    #speaker article p {
        margin: 0 0 20px;
    }

    #speaker article h3 {
        font-size: 25px;
        margin-bottom: 25px;
    }
}

/*==================================================
coach
================================================== */

#coach {
    border-top: 1px solid #ddd;
    padding: 0;
    text-align: center;
}

#coach>div>p {
    line-height: 2.4;
}

#coach>div>p.fs-xlarge {
    line-height: 1.7;
}

.ul-coach {
    margin: 100px auto;
    list-style: none;
    display: flex;
    width: 96%;
}

.ul-coach li {
    width: 32.3%;
    margin: 0 0.5%;
    background: #f4f4f4;
    padding: 25px 0;
    font-size: 16px;
}

.ul-coach li img {
    width: 180px;
    height: 180px;
    border-radius: 50%;
    margin-bottom: 20px;
}

.name-coach {
    display: block;
    background: #454545;
    padding: 12px 50px;
    font-size: 24px;
    width: 90%;
    margin: 0 auto;
    box-sizing: border-box;
    color: #f9e267;
    margin-bottom: 35px;
    border-top-left-radius: 30px;
    border-bottom-right-radius: 30px;
}

.name-coach small {
    display: block;
    font-size: 60%;
}

.ul-coach li>div {
    text-align: left;
    width: 90%;
    margin: 0 auto;
}

.position-coach {
    text-align: center !important;
    margin-bottom: 50px !important;
}

.position-coach span {
    display: inline-block;
    border-radius: 4px;
    background: #fff;
    text-align: center;
    font-size: 14px;
    padding: 3px 10px;
    margin: 0 3px 8px;
}

.message-coach p {
    margin: 0 0 25px;
    line-height: 2.0;
}

.box-y {
    display: inline-block;
    border: 5px solid #f1a742;
    background: #fff;
    padding: 15px 20px;
    font-size: 23px;
    font-weight: 600;
}

/* #cta-03/ {} */

@media (max-width: 480px) {

    #coach {
        border-top: 1px solid #ddd;
        padding: 0;
        text-align: center;
    }

    #coach p.fs-xlarge {
        font-size: 5.2vw;
    }

    #coach>div>p.fs-xlarge {
        margin-bottom: 0;
    }

    #coach p.fs-large {
        font-size: 18px;
    }

    .ul-coach {
        margin: 50px auto;
        display: block;
        width: 100%;
    }

    .ul-coach li {
        width: 90%;
        margin: 0 auto 20px;
        padding: 20px 0;
        font-size: 15px;
    }

    .ul-coach li img {
        width: 150px;
        height: 150px;
        border-radius: 50%;
        margin-bottom: 20px;
    }

    .name-coach {
        padding: 12px 10px;
        font-size: 21px;
        margin-bottom: 20px;
    }

    .position-coach {
        margin-bottom: 20px !important;
    }

    .position-coach span {
        font-size: 13px;
        padding: 3px 3px;
        margin: 0 2px 6px;
    }

    .message-coach p {
        margin: 0 0 20px;
        line-height: 2.0;
    }

    .box-y {
        padding: 15px;
        font-size: 20px;
    }

    #cta-03 {
        margin-top: 25px;
        padding-top: 0 !important;
    }

    /* #cta-03 .f-btn, */
    /* #cta-04 .f-btn, */
    /* #cta-06 .f-btn { */
        /* right: 0; */
    }



/*==================================================
LP-contents05
================================================== */

/* #LP-contents05 {} */

#LP-contents05 h3 {
    display: block;
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    margin-bottom: 70px;
}

.txt-contents05 {
    width: 92%;
    line-height: 1.8;
    margin: 0 auto;
}

.txt-contents05 p {
    margin-bottom: 25px;
}

.txt-contents05 p.ta-c {
    margin: 70px 0;
}

@media (max-width: 480px) {

    #LP-contents05 {
        padding: 50px 0 50px;
    }

    #LP-contents05 h3 {
        font-size: 7.6vw;
        margin-bottom: 35px;
    }

    .txt-contents05 {
        width: 96%;
    }

    .txt-contents05 p {
        margin-bottom: 25px;
    }

    .txt-contents05 p.ta-c {
        margin: 50px 0;
    }

}

/*==================================================
user-05
================================================== */

#user-05 {
    padding: 50px 0;
}

#user-05 .title-user-copy {
    font-size: 23px;
    margin-left: 210px;
    line-height: 1.8;
}

#user-05 .name-user {
    margin-left: 210px;
    text-align: right;
    color: #000;
    font-size: 14px;
    margin-top: 35px;
    padding-right: 20px;
}

#user-05 .pic-user {
    position: absolute;
    top: 0;
    left: 0;
    width: 170px;
}

#user-05 .pic-user img {
    width: 100%;
    height: 170px;
    border: 1px solid #ddd;
}

@media (max-width: 480px) {

    #user-05 {
        padding: 30px 0 10px;
    }

    #user-05 .title-user-copy {
        font-size: 18px;
        margin-left: 120px;
        line-height: 1.8;
    }

    #user-05 .name-user {
        margin-left: 0;
        text-align: center;
        font-size: 13px;
        margin-top: 25px;
        padding-right: 0;
    }

    #user-05 .pic-user {
        width: 100px;
    }

    #user-05 .pic-user img {
        height: 100px;
    }

}

/*==================================================
LP-contents06
================================================== */

#LP-contents06 {
    background: url("https://power-person.com/lp/pp02_v02/assets/images/bg01.jpg") center center no-repeat;
    background-size: cover;
    padding: 80px 0 60px;
}

#LP-contents06 h3 {
    display: block;
    text-align: center;
    font-size: 50px;
    font-weight: bold;
    margin-bottom: 70px;
}

.txt-contents06 {
    text-align: center;
    line-height: 2.2;
    font-size: 20px;
}

.txt-feeling {
    line-height: 2.0;
    font-size: 120%;
}

.txt-feeling p {
    margin: 30px 0 !important;
}

.txt-contents06 p {
    margin: 75px 0;
}

.txt-contents06 p strong {
    font-size: 42px;
}

@media (max-width: 480px) {

    #LP-contents06 {
        padding: 50px 0 30px;
    }

    #LP-contents06 h3 {
        font-size: 7.6vw;
        margin-bottom: 35px;
    }

    .txt-contents06 {
        line-height: 1.8;
        font-size: 17px;
    }

    .txt-feeling {
        font-size: 110%;
    }

    .txt-feeling p {
        margin: 25px 0 !important;
        font-size: 17px !important;
    }

    .txt-contents06 p {
        margin: 35px 0;
        font-size: 15px;
    }

    .txt-contents06 p strong {
        font-size: 26px;
    }

    .txt-contents06 p.fs-xlarge {
        font-size: 24px !important;
    }

}

/*==================================================
power-person
================================================== */

.ul-pp {
    list-style: none;
}

.ul-pp li {
    border: 7px solid #f4f4f4;
    margin-bottom: 30px;
}

.ul-pp li h3 {
    display: block;
    text-align: center;
    padding: 0;
    font-size: 22px;
    font-weight: bold;
    background: #f4f4f4;
}

.ul-pp li h3 span {
    display: block;
    border: 3px solid #f1a742;
    color: #ef7000;
    background: #fff;
    padding: 15px 0;
}

.ul-pp li div.clearfix {
    margin: 30px auto;
    width: 90%;
}

.pic-pp {
    width: 24%;
    float: right;
    font-size: 12px;
    text-align: center;
}

.pic-pp img {
    width: 84%;
    display: block;
    /* vertical-align: bottom; */
    margin: 0 auto 6px;
}

.txt-pp {
    width: 70%;
    float: left;
    line-height: 1.7;
}

#ul-pp-more .pic-pp {
    float: left;
}

#ul-pp-more .txt-pp {
    float: right;
}

#ul-pp-more li {
    border-color: #fcefdd;
}

#ul-pp-more li h3 {
    background: #fcefdd;
}


@media (max-width: 480px) {

    .ul-pp li {
        margin-bottom: 20px;
    }

    .ul-pp li h3 {
        font-size: 22px;
    }

    .ul-pp li div.clearfix {
        margin: 22px auto;
        width: 86%;
    }

    .pic-pp {
        width: 100%;
        float: none;
        margin-bottom: 15px;
    }

    .pic-pp img {
        width: 74%;
    }

    .txt-pp {
        width: 100%;
        float: none;
        line-height: 1.7;
    }

}

/*==================================================
cta-04
================================================== */

#cta-04 h3 {
    display: block;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
    line-height: 2.2;
}

@media (max-width: 480px) {

    #cta-04 h3 {
        font-size: 16px;
        margin-bottom: 20px;
        line-height: 1.7;
    }

    #cta-04 a.btn {
        width: 100%;
    }

}

/*==================================================
tokuten
================================================== */

#tokuten {
    text-align: center;
}

#tokuten>h4 {
    display: block;
    font-weight: 600;
    font-size: 42px;
    margin: 100px 0 70px;
}

.ul-tokuten {
    list-style: none;
    display: flex;
    width: 90%;
    margin: 120px auto 50px;
}

.ul-tokuten li {
    box-sizing: border-box;
    margin: 0;
    text-align: center;
    position: relative;
    padding: 70px 10px 15px;
    background-color: #f7f7f7;
    /*background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #f4f4f4), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #f4f4f4),color-stop(.75, #f4f4f4), color-stop(.75, transparent),to(transparent));
-webkit-background-size: 7px 7px;*/
}



.ul-tokuten li:nth-child(2) {
    transition-delay: 200ms;
    background-color: #e2e1e1;
}

.ul-tokuten li:last-child {
    transition-delay: 400ms;
    background-color: #cacaca;
}

.ul-tokuten li .li-num {
    display: flex;
    background: #404040;
    color: #fff;
    text-align: center;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    position: absolute;
    top: -45px;
    left: 50%;
    margin-left: -45px;
    line-height: 1;
    font-weight: bold;
}

.ul-tokuten li h5 {
    display: block;
    font-weight: 600;
    font-size: 1.5vw;
    margin-bottom: 15px;
}

.ul-tokuten li h5 small {
    display: block;
    font-size: 60%;
    margin-bottom: 10px;
}

.ul-tokuten li p {
    text-align: justify;
    text-justify: inter-ideograph;
    font-size: 16px;
    line-height: 1.7;
    width: 80%;
    margin: 0 auto 25px;
}

.img-tokuten {
    margin-top: 5px;
    border-radius: 8px;
    width: 80%;
    height: auto;
    margin-bottom: 20px;
}

.imgbox-tokuten small {
    display: block;
    font-size: 13px;
    margin: 0;
    text-align: right;
    padding-right: 50px;
}

.ul-tokuten li h6 {
    display: block;
    font-weight: 600;
    font-size: 21px;
    margin-bottom: 25px;
}

.txt-strong {
    font-weight: 600;
    font-size: 42px;
}

#tokuten>div.contents-area>p {
    margin-bottom: 80px;
}



.box-tokuten {
    box-sizing: border-box;
    margin: 170px auto 120px;
    text-align: center;
    position: relative;
    border: 3px solid #000;
    border-radius: 10px;
    padding: 80px 10px 35px;
    background-color: #f9f9f9;
    /*background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #f4f4f4), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #f4f4f4),color-stop(.75, #f4f4f4), color-stop(.75, transparent),to(transparent));
-webkit-background-size: 7px 7px;*/
}

.title-toku {
    display: block;
    width: 320px;
    height: 80px;
    line-height: 80px;
    border-radius: 8px;
    background: #000;
    color: #fff;
    font-size: 34px;
    position: absolute;
    top: -40px;
    left: 50%;
    margin-left: -160px;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.box-tokuten h4 {
    display: block;
    font-weight: 600;
    font-size: 48px;
}

.box-tokuten h4 small {
    display: block;
    font-size: 55%;
    margin-bottom: 20px;
}

.box-tokuten h4 span {
    display: block;
    font-size: 80%;
}

.img-tokuten-04 {
    width: 90%;
    display: block;
    margin: 35px auto;
    border-radius: 10px;
}

.box-tokuten .txt-strong {
    font-size: 34px;
}

.txtbox-tokuten {
    width: 90%;
    margin: 35px auto;
    text-align: left;
    line-height: 2.0;
}

@media (max-width: 480px) {

    #tokuten {
        text-align: center;
        padding-bottom: 0;
    }

    #tokuten>h4 {
        font-size: 7.2vw;
        margin: 50px 0;
    }

    #tokuten>div.contents-area>p {
        margin-bottom: 50px;
    }

    .ul-tokuten {
        display: block;
        width: 90%;
        margin: 20px auto 20px;
    }

    .ul-tokuten li {
        width: 100%;
        margin: 0 auto 50px;
        padding: 40px 10px 15px;
    }



    .ul-tokuten li:nth-child(2) {
        transition-delay: 0ms;
        background-color: #f7f7f7;
    }

    .ul-tokuten li:last-child {
        transition-delay: 0ms;
        background-color: #f7f7f7;
    }

    .ul-tokuten li .li-num {
        font-size: 21px;
        width: 44px;
        height: 44px;
        top: -25px;
        margin-left: -25px;
    }

    .ul-tokuten li h5 {
        font-size: 6.2vw;
        margin-bottom: 15px;
    }

    .ul-tokuten li p {
        font-size: 15px;
        width: 90%;
        line-height: 1.9;
    }

    .img-tokuten {
        width: 90%;
        margin-bottom: 20px;
    }

    .imgbox-tokuten small {
        padding-right: 30px;
    }

    .ul-tokuten li h6 {
        font-size: 5.4vw;
        margin-bottom: 18px;
    }

    .txt-strong {
        font-size: 7.2vw;
    }



    .box-tokuten {
        margin: 120px auto 0;
        padding: 60px 10px 35px;
    }

    .title-toku {
        width: 260px;
        height: 50px;
        line-height: 50px;
        font-size: 25px;
        top: -25px;
        left: 50%;
        margin-left: -130px;
    }

    .box-tokuten h4 {
        font-size: 7.5vw;
        line-height: 1.8 !important;
    }

    .box-tokuten h4 small {
        font-size: 55%;
    }

    .box-tokuten h4 span {
        display: block;
        font-size: 60%;
    }

    .img-tokuten-04 {
        margin: 20px auto;
    }

    .box-tokuten .txt-strong {
        font-size: 5.5vw;
        width: 100%;
        margin: 0 auto;
    }

    .txtbox-tokuten {
        width: 94%;
        margin: 15px auto;
    }

}

/*==================================================
gurantee
================================================== */

/* #gurantee {} */

.box-gurantee {
    background: #000;
    color: #fff;
    text-align: center;
    position: relative;
    padding: 35px 0 50px;
}

#gurantee h3 {
    display: block;
    text-align: center;
    font-size: 50px;
    font-weight: bold;
}

#gurantee h3 span {
    border-bottom: 5px solid #f10f0f;
    padding-bottom: 5px;
}

#txt-guarantee {
    line-height: 2.0;
    width: 76%;
    margin: 0 auto;
}

#txt-guarantee p.fs-xlarge {
    margin: 80px 0;
}

.img-guarantee {
    display: block;
    width: 40%;
    margin: 80px auto;
}

p.p-gurantee {
    margin: 150px 0 100px;
    text-align: center;
    line-height: 3.0;
    font-size: 20px;
}

#gurantee>.contents-area>p {
    text-align: center;
    font-weight: bold;
    font-size: 24px;
}

@media (max-width: 480px) {

    /* #gurantee {} */

    .box-gurantee {
        padding: 25px 0 35px;
        width: 100%;
        box-sizing: border-box;
    }

    #gurantee h3 {
        font-size: 9vw;
    }

    #gurantee h3 span {
        padding-bottom: 3px;
    }

    #txt-guarantee {
        width: 90%;
    }

    #txt-guarantee p.fs-xlarge {
        margin: 40px 0;
        line-height: 1.6;
    }

    .img-guarantee {
        width: 80%;
        margin: 50px auto;
    }

    p.p-gurantee {
        margin: 70px 0 60px;
        line-height: 1.8;
        font-size: 17px;
    }

    #gurantee>.contents-area>p {
        font-size: 22px;
    }

}

/*==================================================
cta-05
================================================== */


@media (max-width: 480px) {

    #cta-05 {
        padding-top: 5px;
    }

    #cta-05 small {
        width: 90% !important;
        margin-top: 20px;
    }

}

/*==================================================
closing
================================================== */

#closing {
    background: #000;
    color: #fff;
}

.pic-closing {
    width: 100%;
    vertical-align: bottom;
}

#txt-closing {
    width: 900px;
    margin: 100px auto 100px;
    line-height: 1.7;
}

#txt-closing p {
    margin: 50px 0;
}

#txt-closing p.fs-xlarge {
    margin: 120px 0;
}

#sign {
    margin-top: 120px;
}

#sign span,
#sign strong {
    display: block;
    font-weight: normal;
}

.img-sign {
    width: 200px;
    vertical-align: bottom;
}

@media (max-width: 480px) {

    #txt-closing {
        width: 84%;
        margin: 50px auto 50px;
        line-height: 1.6;
    }

    #txt-closing p {
        margin: 30px 0;
    }

    #txt-closing p.fs-xlarge {
        margin: 65px 0;
    }

    #sign {
        margin-top: 70px;
    }

    .img-sign {
        width: 40vw;
    }



}

/*==================================================
cta-06
================================================== */

#cta-06 {
    color: #000 !important;
    margin-bottom: 50px;
}

@media (max-width: 480px) {

    #cta-06 {
        padding-top: 5px;
    }



}




/*==================================================
#contents-06
================================================== */

/* #contents-06 {} */

#contents-06 .title-basic p {
    margin: 0 0 25px;
    font-size: 75%;
}

#contents-06 .contents-area {
    width: 1200px;
}

#contents-06 article {
    display: table;
}

#contents-06 article>div {
    display: table-cell;
    width: 30%;
    padding: 30px 1.5%;
    background: #d6e4ed;
    position: relative;
    text-align: center;
}

#contents-06 article>div#step-02 {
    background: #b9d0dd;
}

#contents-06 article>div#step-03 {
    background: #9ab7c9;
}

#contents-06 article>div i {
    display: inline-flex;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    align-items: center;
    justify-content: center;
    font-size: 50px;
    font-style: normal;
    z-index: 10;
}

#contents-06 article>div i.pc-only {
    width: 50px;
    height: 50px;
    background: #077fc6;
    color: #fff;
    font-size: 28px;
    position: absolute;
    right: -25px;
    top: 38%;
    z-index: 10;
}

#contents-06 article>div h3 {
    margin: 30px 0;
    display: block;
    font-size: 32px;
    line-height: 1.4;
}

#contents-06 article>div h3 small {
    display: block;
    font-size: 65%;
}

#contents-06 article>div p {
    width: 84%;
    margin: 0 auto;
    text-align: left;
}

.con-06-txt {
    text-align: center;
    padding: 60px 0;
}

.con-06-txt p {
    margin-bottom: 65px;
}

.con-06-txt p.fw-b {
    font-size: 34px;
    margin-bottom: 50px;
}

@media (max-width: 480px) {

    #contents-06 {
        padding-bottom: 0px;
    }

    #contents-06 .title-basic {
        font-size: 5.8vw;
    }

    #contents-06 .contents-area {
        width: 90%;
    }

    #contents-06 article {
        display: block;
    }

    #contents-06 article>div {
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 50px 25px 45px;
    }

    #contents-06 article>div#step-01 {
        padding-top: 30px;
    }

    #contents-06 article>div i {
        width: 80px;
        height: 80px;
        font-size: 35px;
    }

    #contents-06 article>div i.sp-only {
        width: 40px;
        height: 40px;
        background: #077fc6;
        color: #fff;
        font-size: 24px;
        position: absolute;
        right: inherit;
        top: inherit;
        bottom: -20px;
        left: 50%;
        margin-left: -20px;
        z-index: 10;
        line-height: 1.25;
    }

    #contents-06 article>div h3 {
        margin: 20px 0;
        font-size: 28px;
    }

    #contents-06 article>div p {
        width: 90%;
    }

    .con-06-txt {
        width: 96%;
        margin: 0 auto;
        text-align: left;
        padding: 40px 0;
    }

    .con-06-txt p.fw-b {
        text-align: center;
        font-size: 5.2vw;
    }

}




/*==================================================
#contents-08
================================================== */

#contents-08 ul {
    list-style: none;
    margin: 100px 0;
}

#contents-08 ul li {
    display: flex;
}

.be-no {
    width: 100px;
    text-align: center;
    position: relative;
}

.dot {
    display: block;
    width: 10px;
    position: absolute;
    left: 50%;
    margin-left: 0;
    border-left: 5px dotted #d6e4ed;
    height: 200px;
}

.be-no i {
    display: flex;
    width: 100px;
    height: 100px;
    align-items: center;
    justify-content: center;
    background: #077fc6;
    font-size: 32px;
    font-style: normal;
    color: #fff;
    border-radius: 50%;
    line-height: 1;
}

.be-box {
    padding: 25px 0 50px 25px;
}

#contents-08 ul li h3 {
    display: block;
    font-size: 32px;
    color: #077fc6;
}

#contents-08 ul li p {
    margin: 45px auto 0;
    padding-bottom: 50px;
    border-bottom: 1px solid #eee;
}

#contents-08 article p.fw-b {
    text-align: center;
    font-size: 38px;
}

#contents-08 article {
    margin-bottom: 50px;
}

@media (max-width: 480px) {

    #contents-08 ul {
        margin: 50px 0;
    }

    .be-no {
        width: 50px;
    }

    .dot {
        height: 250px;
        left: 46%;
    }

    .be-no i {
        width: 50px;
        height: 50px;
        font-size: 24px;
    }

    .be-box {
        padding: 10px 0 25px 15px;
    }

    #contents-08 ul li h3 {
        font-size: 7vw;
    }

    #contents-08 ul li p {
        margin: 25px auto 0;
        padding-bottom: 25px;
    }

    #contents-08 article p.fw-b {
        font-size: 6.2vw;
    }

    #contents-08 article {
        margin-bottom: 30px;
    }

}


/*==================================================
#contents-10
================================================== */

#contents-10 {
    border-top: 1px solid #ccc;
}

.box-flow {
    border: 2px solid #404040;
    padding: 0;
}

.title-flow {
    display: block;
    background: #404040;
    color: #fff;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    padding: 20px 0;
}

@media (max-width: 480px) {

    #contents-10 {
        padding-bottom: 30px;
    }

    .title-flow {
        font-size: 5.2vw;
        padding: 15px 0;
    }

}


#title-resume span {
    display: inline-block;
    padding: 5px 20px;
}

.kousei p {
    margin: 20px 0 30px;
}

.kousei ul {
    margin: 0 auto;
    list-style: none;
}

.kousei ul li {
    margin-bottom: 35px;
    border-bottom: 1px dotted #999;
}

#kousei-02 ul li {
    border-bottom: none;
}



.kousei ul li strong {
    font-size: 24px;
}

/* .kousei ul li strong:before {} */

#kousei-01 ul li strong:before {
    content: none;
}

.kousei {
    text-align: left;
    width: 90%;
    margin: 50px auto 50px;
}

#nittei {
    display: flex;
    margin-bottom: 40px;
}

#osaka-nittei {
    border-right: 1px solid #ddd;
    margin-right: 3%;
}

.box-nittei {
    width: 97%;
}

.box-nittei h4 {
    display: block;
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 24px;
}

.box-nittei table {
    width: 90%;
}

.box-nittei table th {
    width: 25%;
    background: #f4f4f4;
    padding: 8px 10px;
    box-sizing: border-box;
    vertical-align: middle;
    text-align: center;
    font-size: 15px;
}

.box-nittei table td {
    padding: 8px 10px;
    box-sizing: border-box;
    vertical-align: middle;
    font-size: 15px;
    line-height: 1.8;
}

.box-nittei table td small {
    display: block;
}


@media (max-width: 480px) {

    .kousei ul {
        width: 100%;
        margin: 30px auto;
    }

    .kousei ul li {
        margin-bottom: 25px;
    }

    .kousei ul li strong {
        font-size: 4.4vw;
    }

    .kousei p {
        font-size: 14px;
    }

    .kousei ul li p {
        font-size: 14px;
        margin-top: 15px !important;
    }

    .kousei {
        width: 86%;
        margin: 35px auto 35px;
    }

    #nittei {
        display: block;
        margin-bottom: 25px;
        border-bottom: 1px solid #ddd;
        padding-bottom: 25px;
    }

    #osaka-nittei {
        border-right: none;
        margin-right: 0;
        margin-bottom: 30px;
    }

    .box-nittei {
        width: 100%;
    }

    .box-nittei h4 {
        font-size: 18px;
    }

    .box-nittei table {
        width: 100%;
    }

    .box-nittei table th {
        width: 25%;
        padding: 8px 10px;
        font-size: 14px;
    }

    .box-nittei table td {
        padding: 8px 10px;
        font-size: 14px;
        line-height: 1.8;
    }

    .box-nittei table td small {
        display: block;
    }

}


/*==================================================
#btn-area-01
================================================== */

#btn-area-01 {
    padding: 35px 0;
}

#btn-area-01>p {
    margin: 0 auto 35px;
    line-height: 2.0;
    text-align: center;
}


@media (max-width: 480px) {

    #btn-area-01 {
        padding: 0 0;
    }

    #btn-area-01>p {
        width: 90%;
        margin: 0 auto 25px;
        line-height: 1.8;
        text-align: left;
    }

}


/*==================================================
#lecturer
================================================== */



#lecturer {
    border-top: none;
    background: #f2f2f2;
    margin: 120px 0 0;
    padding-top: 100px;
    padding-bottom: 150px;
}

.name-prof {
    display: block;
    font-size: 42px;
    font-weight: 600;
    text-align: center;
}

.name-prof small {
    font-size: 50%;
}

.status-prof {
    width: 400px;
    margin: 45px auto 0;
    padding: 20px 0;
    font-size: 21px;
    font-weight: bold;
    text-align: center;
    border-top: 3px dotted #06C755;
    border-bottom: 3px dotted #06C755;
}

.box-lecturer {
    display: flex;
    width: 1000px;
    margin: 100px auto 0;
}

.lecturer-pic {
    width: 40%;
    padding-right: 5%;
}

.lecturer-pic img {
    width: 100%;
    vertical-align: bottom;
}

.lecturer-txt {
    width: 55%;
}

.lecturer-txt h4 {
    display: block;
    font-weight: 600;
    font-size: 32px;
    margin-bottom: 25px;
}

.lecturer-txt h3 small {
    font-size: 65%;
}

.lecturer-prof {
    padding: 15px 5px;
    border-top: 3px dotted #06c755;
    border-bottom: 3px dotted #06c755;
    margin-bottom: 35px;
}

.ul-prof {
    margin: 0;
}

.ul-prof li {
    margin-bottom: 10px;
    padding-bottom: 10px;
    line-height: 1.7;
    border-bottom: 1px dotted #ccc;
    margin-left: 20px;
    font-size: 16px;
}

.prof-img-f img {
    width: 35%;
    margin: 5px 0 5px 12px;
    float: right;
}

.img-sign {
    width: 40%;
    margin-left: 60%;
    position: relative;
}

p.line-c {
    font-weight: 600;
    font-size: 28px;
    margin-bottom: 35px;
}

p.line-c span {
    border-bottom: 2px solid #06c755;
    padding-bottom: 5px;
}

@media (max-width: 480px) {

    #lecturer {
        margin-top: 75px;
    }

    .box-trigger {
        line-height: 1.7;
        padding-bottom: 50px;
    }

    .box-trigger h3 {
        margin-bottom: 25px;
    }

    .box-trigger>div {
        width: 94%;
        margin: 0 auto;
    }

    .img-t {
        position: relative;
        width: 50%;
        display: block;
        margin: 0 auto 25px;
        top: inherit;
        right: inherit;
        /* vertical-align: bottom; */
    }

    .ul-y {
        list-style: none;
        margin: 25px 0 0;
        font-size: 18px;
    }

    .ul-y li:before {
        font-size: 12px;
    }

    #contents-04 {
        padding-bottom: 0;
    }


    #lecturer {
        padding-bottom: 30px;
        padding-top: 50px;
    }

    .name-prof {
        font-size: 9vw;
    }

    .status-prof {
        width: 84%;
        margin: 30px auto 0;
        padding: 10px 0;
        font-size: 16px;
    }

    .box-lecturer {
        display: block;
        width: 100%;
        box-sizing: border-box;
        margin-top: 50px;
        padding: 0 15px;
    }

    .lecturer-pic {
        width: 100%;
        padding-right: 0;
        margin-bottom: 35px;
        text-align: center;
    }

    .lecturer-pic img {
        width: 72%;
    }

    .lecturer-txt {
        width: 100%;
    }

    .lecturer-txt h3 {
        text-align: center;
        font-size: 28px;
        margin-bottom: 25px;
    }

    .lecturer-txt h4 {
        text-align: center;
        font-size: 24px;
        margin-bottom: 25px;
    }

    .lecturer-txt h3 small {
        font-size: 58%;
    }


    .ul-prof {
        margin: 0 10px 0 25px;
    }

    .ul-prof li {
        margin-bottom: 8px;
        padding-bottom: 8px;
        line-height: 1.6;
        margin-left: 0;
        font-size: 15px;
    }

    .prof-img-f img {
        width: 40%;
        margin: 2px 0 2px 12px;
        float: right;
    }

    .img-sign {
        width: 50%;
        margin-left: 45%;
        margin-top: 15px;
        position: relative;
    }

    p.line-c {
        font-weight: 600;
        font-size: 6.2vw;
        margin-bottom: 35px;
        text-align: center !important;
    }

}





/*==================================================
#contents-09
================================================== */

#contents-09 {
    /*background: #f7f7f7;*/
    background: #fef8e6;
}

#user-voice article {
    background: #fff;
    box-sizing: border-box;
    padding: 35px 40px;
    margin-bottom: 30px;
    font-size: 16px;
    border: 3px solid #f1a742;
}

#user-voice article h3 {
    display: block;
    font-size: 32px;
    border-bottom: 1px solid #000;
    padding-bottom: 25px;
    margin-bottom: 35px;
    color: #f1a742;
    text-align: center;
}

#user-voice article h3 small {
    display: block;
    color: #000;
    font-size: 65%;
    padding-bottom: 10px;
}

#user-voice article>div {
    display: flex;
}

.txt-voice {
    width: 70%;
}

.txt-voice p {
    margin-bottom: 30px !important;
}

.img-voice {
    width: 25%;
    padding-left: 5%;
    text-align: center;
    font-size: 14px;
}

.img-voice small {
    display: block;
    font-size: 80%;
}

.img-voice img {
    width: 100%;
}


@media (max-width: 480px) {

    #contents-09 {
        padding-top: 20px;
    }

    #user-voice article {
        padding: 20px 15px;
        margin-bottom: 20px;
        font-size: 15px;
        border: 2px solid #f1a742;
    }

    #user-voice article h3 {
        font-size: 5.2vw;
        padding-bottom: 25px;
        margin-bottom: 25px;
    }

    #user-voice article h3 small {
        font-size: 75%;
    }

    #user-voice article>div {
        position: relative;
        display: block;
    }

    .txt-voice {
        display: block;
        width: 100%;
        padding-top: 60vw;
    }

    .txt-voice p {
        margin-bottom: 20px !important;
    }

    .img-voice {
        width: 100%;
        text-align: center;
        position: absolute;
        top: 0;
        left: 0;
        font-size: 13px;
        padding-left: 0;
    }

    .img-voice img {
        width: 50%;
    }

}


/*==================================================
title-black
================================================== */

.title-black {
    background: #404040;
    text-align: center;
    padding: 40px 0;
    font-size: 18px;
    color: #fff;
}

.title-black h2 {
    font-size: 48px;
}

#title-black-sec01 h2 {
    font-size: 34px;
}

@media (max-width: 480px) {

    .title-black {
        padding: 25px 0;
        font-size: 14px;
    }

    .title-black h2 {
        font-size: 6.4vw;
        line-height: 1.6;
    }

    #title-black-sec01 h2 {
        font-size: 5vw;
    }

}

/*==================================================
#contents-13
================================================== */

#contents-13 {
    border-top: 1px solid #ccc;
}

#contents-13 p.fw-b {
    text-align: center;
    font-size: 24px;
    margin-top: 80px;
    margin-bottom: 80px;
}

.tokuten-price {
    display: block;
    width: 90%;
    /* vertical-align: bottom; */
    margin: 35px auto;
}

@media (max-width: 480px) {

    #contents-13 p.fw-b {
        font-size: 4.2vw;
        margin-top: 40px;
        margin-bottom: 40px;
    }

}


/*==================================================
#contents-14
================================================== */

#contents-14 {
    border-top: 1px solid #ccc;
}

#contents-14 p#txt-13-01 {
    text-align: center;
    font-size: 32px;
    margin-top: 80px;
    margin-bottom: 80px;
}

#contents-14 p.fw-b {
    text-align: center;
    font-size: 24px;
    margin-top: 80px;
    margin-bottom: 80px;
}

#contents-14 p small {
    display: block;
    padding-top: 10px;
    font-size: 70%;
}

.img-g {
    display: block;
    width: 40%;
    /* vertical-align: bottom; */
    margin: 0 auto 70px;
}

@media (max-width: 480px) {

    #contents-14 {
        padding-bottom: 75px;
    }

    #contents-14 p#txt-13-01 {
        font-size: 7.0vw;
        margin-top: 40px;
        margin-bottom: 40px;
    }

    #contents-14 p.fw-b {
        font-size: 5.0vw;
        margin-top: 40px;
        margin-bottom: 40px;
    }

    .img-g {
        width: 90%;
        margin: 0 auto 50px;
    }

    #contents-14 p small {
        text-align: left;
    }

}

/*==================================================
#about-awake
================================================== */

#about-awake {
    background: #000;
    color: #fff;
    padding-bottom: 150px;
}

.pp-logo {
    display: block;
    width: 280px;
    margin: 50px auto;
}

#about-awake article {
    display: flex;
    margin-top: 100px;
    margin-bottom: 30px;
}

.txt-awake {
    width: 50%;
}

.txt-awake p {
    margin-bottom: 35px;
}

.pic-awake {
    width: 45%;
    padding-left: 5%;
}

.pic-awake img {
    width: 100%;
}

.outline-awake h3 {
    display: block;
    text-align: center;
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 60px;
}

.outline-awake th {
    width: 220px;
}


@media (max-width: 480px) {

    #about-awake {
        padding-bottom: 60px;
    }

    #about-awake .title-basic {
        font-size: 6.4vw;
    }

    #about-awake .title-basic small {
        font-size: 70%;
    }

    .pp-logo {
        width: 65%;
        margin: 40px auto;
    }

    #about-awake article {
        display: block;
        margin-top: 50px;
        margin-bottom: 30px;
    }

    .txt-awake {
        width: 90%;
        margin: 0 auto;
    }

    .txt-awake p {
        margin-bottom: 25px;
    }

    .pic-awake {
        width: 90%;
    }

    .outline-awake h3 {
        font-size: 7.2vw;
        margin-bottom: 20px;
    }

    .outline-awake th {
        width: 35%;
    }

}

/*==================================================
#contents-16
================================================== */

#contents-16 {
    background: url("https://lp.isapo-group.com/wp-content/uploads/2024/08/bg04.jpg") no-repeat center center;
    background-size: cover;
    color: #fff;
    text-align: center;
    border: none;
    font-size: 60px;
    padding: 150px 0 100px;
}

#contents-16 p {
    margin-bottom: 65px;
}

#contents-16 p .fc-red {
    color: #fd5959 !important;
}

@media (max-width: 480px) {

    #contents-16 {
        font-size: 7vw;
        padding: 220px 0 150px;
    }

    #contents-16 p {
        margin-bottom: 40px;
    }

}


/*==================================================
#contents-17
================================================== */

#contents-17 {
    background: #000;
    color: #fff;
    border: none;
}

#contents-17 h2 {
    display: block;
    margin-bottom: 100px;
    font-size: 42px;
    text-align: center;
}

.sign img {
    display: block;
    width: 140px;
    margin: 10px 0 0;
}

@media (max-width: 480px) {

    /* #contents-17 {} */

    #contents-17 h2 {
        margin-bottom: 35px;
        font-size: 8vw;
        text-align: center;
    }

    .sign img {
        width: 130px;
    }

}


/*==================================================
cta
================================================== */

.cta {
    text-align: center;
    padding: 80px 0;
    background: #000;
    color: #fff;
    border-top: 1px solid #f7f7f7;
}

.cta .contents-area {
    width: 1320px;
    text-align: center;
}

.ul-cta {
    list-style: none;
}

.ul-cta li {
    display: inline-block;
    width: 380px;
    background: #fff;
    padding: 25px 20px 35px;
    box-sizing: border-box;
    color: #000;
    border-top: 10px solid #f1a742;
    margin: 0 25px 50px;
    vertical-align: top;
    min-height: 450px;
}

#ul-cta-shoukai li {
    min-height: 310px;
}

.ul-cta li .btn-area {
    width: 100%;
}

.ul-cta li a.btn {
    width: 100%;
    font-size: 23px;
    margin-top: 25px;
    padding: 20px 0;
}

.ul-cta li h3 {
    display: block;
    font-size: 32px;
    margin-bottom: 10px;
}

.ul-cta li h3 small {
    display: block;
    font-size: 55%;
}

.txt-small {
    font-size: 14px;
}

.ul-cta li table {
    text-align: left;
    margin-bottom: 20px;
    font-size: 15px;
}

.ul-cta li table th {
    text-align: center;
    background: #f7f7f7;
    padding: 5px 6px;
    width: 20%;
}

.ul-cta li table td {
    text-align: left;
    padding: 5px 6px;
}

.ul-cta li table td small {
    display: block;
    padding: 10px 0 0;
    font-size: 60%;
}

.box-nokori {
    padding: 25px 0 0;
    color: #df0202;
    font-size: 22px;
    text-align: center;
}

.nittei {
    display: block;
    font-size: 19px;
}

del.uchikeshi {
    margin-right: 10px;
}

.cta .now-visit {
    width: 90%;
    margin: 35px auto 0;
    color: #fff;
}

p.kaijou {
    font-size: 22px;
    margin-bottom: 20px;
}

#lp-area p.kaijou {
    font-size: 32px;
}

#lp-area #mv p.kaijou {
    font-size: 32px;
}


.cta .btn-area small {
    width: 100%;
}

@media (max-width: 480px) {

    .cta {
        text-align: center;
        padding: 50px 0 50px;
    }

    .cta .title-basic {
        font-size: 6.0vw;
    }

    .cta .contents-area {
        width: 90%;
    }

    .ul-cta {
        display: block;
    }

    .ul-cta li {
        width: 100%;
        box-sizing: border-box;
        padding: 15px 7px 30px;
        margin: 0 auto 25px;
        min-height: auto;
    }

    #ul-cta-shoukai li {
        min-height: auto;
    }

    .ul-cta li h3 {
        font-size: 28px;
    }

    .ul-cta li .btn-area {
        margin: 0;
    }

    .ul-cta li a.btn {
        width: 90%;
    }

    .cta .now-visit {
        width: 94%;
        margin: 0 auto 0;
    }

    p.kaijou {
        font-size: 4vw;
        margin-bottom: 5px;
    }

    #lp-area p.kaijou,
    #lp-area #mv p.kaijou {
        font-size: 5.6vw;
        line-height: 1.6;
        padding-bottom: 15px;
    }

    #lp-area #mv p.kaijou {
        padding-bottom: 0;
    }


    .cta .btn-area small {
        width: 86%;
    }
}

.img-crown {
    width: 500px;
    display: block;
    margin: 0 auto 70px;
}


@media (max-width: 480px) {

    .img-crown {
        width: 90%;
        display: block;
        margin: 0 auto 40px;
    }

}

.txt-chu {
    font-size: 14px;
    text-align: center;
    margin: 0;
}

#user-voice .txt-chu {
    text-align: right;
}


@media (max-width: 480px) {

    .txt-chu {
        font-size: 12px;
    }

    #user-voice .txt-chu {
        font-size: 12px;
    }

}