.mainArea .mainvisual {
    background: url(/assets/top/img/mainvisual.jpg)no-repeat;
    background-position: center;
    background-size: cover;
    /* border-radius: 30px; */
    /* max-width: 1200px; */
    /* height: 580px; */
    height: 640px;
    margin: 0 auto;
    position: relative;
    margin-top: 80px;
}

/* --------------------------------------------------------------------------------

mainArea

-------------------------------------------------------------------------------- */

.scroll {
    background-color: #695858;
    opacity: .7;
    padding: 10px 0 10px 20px;
    width: 130px;
    height: 34px;
    position: absolute;
    right: -24px;
    top: 70%;
}

.scroll .cont {
    position: relative;
    font-size: 14px;
    letter-spacing: 0.2em;
    line-height: 1;
    color: #fff;
}

.scroll::after {
    content: '';
    display: inline-block;
    position: absolute;
    width: 8px;
    height: 8px;
    margin: 0 20px;
    left: 63%;
    top: 35%;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    transform: rotate(225deg);
}



.mainArea {
    background-color: #fff;
    padding: 0;
}

.mainArea .inner {
    position: relative;
    width: 1200px;
    height: 580px;
}

.mainArea .titBlock {
    position: absolute;
    top: 50%;
    transform: translateY(-45%);
    right: 0;
    width: 520px;
}

.mainArea .titBlock .m_tit {
    font-size: 46px;
    letter-spacing: 0.45em;
    line-height: 1.5;
}

.titBlock .m_txt {
    font-size: 18px;
    letter-spacing: 0.2em;
    line-height: 1.6;
    margin-top: 20px;
    text-align: center;
    color: #000;
    text-align: left;
}

.m_txt span {
    color: #db7071;
    font-weight: bold;
    font-size: 22px;
}

.txt.lead {
    font-size: 19px;
    line-height: 1.8;
    margin-top: 25px;
    border-top: 1px solid #ccc;
    padding-top: 25px;
    letter-spacing: 0.1em;
}

.txt.lead span {
    font-weight: bold;
}

.l-btnWrap.flexbox {
    width: 800px;
    margin: 60px auto 0;
    justify-content: center;
}

.sec01 .OverviewArea .l-btnWrap.flexbox.wide a {
    width: 100%;
}

.OverviewArea {
    width: 800px;
    margin: 40px auto 0;
    padding: 30px;
    background-color: #fdf5f5;
    border-radius: 10px;
}

.OverviewArea.none-bg{
    background: unset;
    margin-top: 60px;
}

.OverviewArea .end_text {
    text-align: center;
    font-weight: normal;
    line-height: 1.7;
    color: #CC0000;
    font-size: 26px;
}

ul.txtIndent03 li span.red {
    font-size: 24px;
}


.c-lead {
    margin-top: 30px;
    line-height: 1.6;
}

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

    .mainArea .inner {
        position: relative;
        width: 950px;
    }
}

@media screen and (max-width: 1024px) {
    .mainArea .titBlock {
        right: 4vw;
        width: 48vw;
    }

    .mainArea .titBlock .m_tit {
        font-size: 4.395vw;
    }

    .mainArea .titBlock .m_txt {
        font-size: 1.758vw;
    }

    .mainArea .titBlock .m_txt span {
        font-size: 1.953vw;
    }

    .mainArea .txt.lead {
        font-size: 1.563vw;
    }

    .mainArea .txt.lead br {
        display: none;
    }
}

@media screen and (max-width: 960px) {
    .mainArea .mainvisual {
        height: 61.053vw;
    }

    .mainArea .inner {
        height: 61.053vw;
        width: auto;
    }

    .l-btnWrap.flexbox {
        width: auto;
        margin: 60px auto 0;
    }

    .OverviewArea .end_text {
        font-size: 22px;
    }

    .OverviewArea {
        width: auto;
        padding: 20px 30px;
    }

    .c-lead {
        margin-top: 20px;
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    .mainArea .mainvisual {
        background: url(/assets/top/img/sp_mainvisual.jpg)no-repeat;
        background-position: center;
        background-size: cover;
        max-width: none;
    }

    .mainArea .mainvisual {
        height: 41.053vw;
    }

    .mainArea .inner {
        width: auto;
        height: 41.053vw;
    }

    .mainArea .titBlock {
        right: 0;
        width: 39.063vw;
    }

    .mainArea .titBlock .m_tit {
        font-size: 5.859vw;
    }

    .m_txt {
        text-align: center;
        line-height: 1.4;
        letter-spacing: .2em;
    }

    .m_txt span {
        font-size: 16px;
    }

    .txt.lead {
        font-size: 14px;
        line-height: 1.7;
        margin-top: 20px;
        border-top: 1px solid #ccc;
        padding-top: 20px;
        letter-spacing: 0.1em;
    }

    /* .mainArea .m_txt {
        font-size: 14px;
        text-align: center;
        width: max-content;
        letter-spacing: 0.3em;
        line-height: 2.0;
        color: #000;
        position: absolute;
        bottom: 35px;
        left: 50%;
        transform: translate(-50%);
    } */



    .OverviewArea .end_text {
        text-align: left;
        font-feature-settings: 'palt';
    }
}

@media screen and (max-width: 480px) {
    .mainArea .inner {
        height: 170px;

    }

    .mainArea .mainvisual {
        height: 170px;
    }

    /* .mainArea .m_txt {
        line-height: 1.7;
        bottom: 20px;
        border-radius: 20px;
        background: rgba(255 , 255 , 255 , .8);
        padding: 10px;
        left: 50%;
        width: 90%;
        font-size: 12px;
        letter-spacing: 0.35em;
    } */

    .OverviewArea {
        padding: 20px;
    }
}

/* --------------------------------------------------------------------------------

sec01

-------------------------------------------------------------------------------- */

.sec01 {
    margin: 0 auto;
}

.sec01 .inner {
    width: auto;
    padding: 50px 30px 100px;
}

.sec01 .titBlock {
    text-align: center;
}

.sec01 .titBlock .subtit {
    margin: 40px 0 25px;
}

.sec01 .titBlock .tit {
    font-size: 54px;
    letter-spacing: 0.08em;
    color: #db7071;
    font-weight: normal;
}

.sec01 .titBlock .txt {
    font-size: 22px;
    line-height: 1.7;
    letter-spacing: 0.16em;
    color: #333;
}

.sec01 .titBlock .commingsoon {
    font-size: 28px;
    letter-spacing: 0.11em;
    font-weight: normal;
    color: #db7071;
    border: 2px solid #db7071;
    border-radius: 10px;
    display: inline-block;
    padding: 10px 25px;
    margin-top: 30px;
}

.sec01 .OverviewArea .l-btnWrap.flexbox {
    width: 100%;
    flex-wrap: nowrap;
    margin-top: 30px;
}

.sec01 .OverviewArea .c-text {
    font-weight: normal;
    margin-top: 20px;
    letter-spacing: 0.03em;
}

.sec01 .ankerLinkArea {
    margin: 40px auto 0;
    background-color: #fff;
    padding: 30px;
    border-radius: 10px;
}

.sec01 .ankerLinkArea .c-text {
    text-align: center;

}

.sec01 .ankerLinkArea .c-text.-adjustment {
    font-size: 20px;
    line-height: 1.6;
    font-weight: normal;
    margin-top: 0;
}

.sec01 .ankerLinkArea .c-text.-adjustment span {
    font-size: 28px;
    font-weight: normal;
    color: #cc0000;
    border-bottom: 5px solid #cc0000;
    padding: 0 15px;
}

.sec01 .ankerLinkArea .c-text.-adjustment02 {
    text-align: left;
    font-weight: normal;
    margin-top: 25px;
}

.sec01 .ankerLinkArea .c-text .ankerLink.-adjustment {
    margin-top: -5px;
    width: 500px;
    padding: 12px;
    font-size: 20px;

}

.sec01 .ankerLinkArea .c-text span {
    font-size: 16px;
    font-weight: normal;
}

.c-linkBtn.ankerLink {
    display: inline-block;
    text-align: center;
    letter-spacing: 0.15em;
    background-color: #FFF;
    border: 1px solid #db7071;
    color: #db7071;
    font-size: 18px;
    transition: .3s;
    padding: 10px 40px;
    width: auto;
    position: relative;
    margin-top: 10px;
    font-weight: normal;
    line-height: 1.7;
}

.c-linkBtn.ankerLink::before {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    top: 50%;
    right: 15px;
    transform: translateY(-40%) rotate(-45deg);
    border-bottom: 1px solid #db7071;
    border-right: 1px solid #db7071;
    border-top: none;
    margin-top: -2px;
}

.c-linkBtn.ankerLink:hover {
    background-color: #db7071;
    color: #fff;
    transition: .5s;
}

/* .c-linkBtn:hover::before {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
} */

@media screen and (max-width: 860px) {
    .sec01 .ankerLinkArea {
        width: auto;
    }
}

@media screen and (max-width: 768px) {
    .sec01 .inner {
        padding: 40px 30px 60px;
        width: auto;
    }

    .sec01 .titBlock .tit {
        font-size: 45px;
    }

    .sec01 .titBlock .txt {
        font-size: 18px;
    }

    .sec01 .titBlock .commingsoon {
        font-size: 24px;
        font-weight: bold;
        margin-top: 30px;
    }

    .sec01 .ankerLinkArea {
        margin-top: 30px;
        padding: 20px;
    }


    .sec01 .ankerLinkArea .c-text span {
        font-size: 14px;
    }


    .sec01 .ankerLinkArea .c-text.-adjustment {
        font-size: 16px;
        line-height: 1.5;
    }

    .sec01 .ankerLinkArea .c-text.-adjustment span {
        font-size: 24px;
        border-bottom: 3px solid #cc0000;
        padding: 0 10px;
    }

    .sec01 .ankerLinkArea .c-text .ankerLink.-adjustment {
        margin-top: -5px;
        width: 100%;
        padding: 10px;
        font-size: 18px;
    }

    .sec01 .ankerLinkArea .c-text.-adjustment02 {
        margin-top: 20px;
    }

    .c-linkBtn.ankerLink {
        font-size: 16px;
        padding: 10px 35px;
    }
}

@media screen and (max-width: 480px) {
    .sec01 .inner {
        padding: 40px 20px 60px;
    }

    .sec01 .titBlock {
        margin-top: 0;
    }

    .sec01 .titBlock .tit {
        font-size: 36px;
        margin-top: 5px;
    }

    .sec01 .titBlock .txt {
        font-size: 16px;
        line-height: 1.7;
        display: inline-block;
    }

    .sec01 .titBlock .commingsoon {
        font-size: 20px;
        margin-top: 15px;
    }
}



/* --------------------------------------------------------------------------------

sec02

-------------------------------------------------------------------------------- */

.sec02 {
    margin: 60px auto 0;
    background-color: #fdf5f5;
}

.sec02 .inner {
    padding: 80px 0;
}

.sec02 .imgBlock {}

.sec02 .imgBlock .imgbox {
    display: flex;
    justify-content: space-between;
    /* width: 510px; */
    margin: 0 auto;
}

.sec02 .imgBlock .imgbox .imgItem {
    background-color: #fff;
    padding: 5px 20px;
    border-radius: 30px;
    width: calc((100% / 4) - 20px);
    display: flex;
    align-items: center;
}

/* .sec02 .imgBlock .imgbox .imgItem img {
    width: 150px;
} */

.sec02 .imgBlock .txt {
    font-size: 28px;
    font-weight: normal;
    letter-spacing: 0.03em;
    line-height: 1.7;
    margin-top: 40px;
    text-align: center;
}

.sec02 .imgBlock .c-text {
    text-align: center;
}

@media screen and (max-width: 860px) {
    .sec02 .inner {
        padding: 80px 20px;
    }
}

@media screen and (max-width: 768px) {
    .sec02 .inner {
        padding: 50px 30px;
    }

    .sec02 .imgBlock .imgbox {
        justify-content: space-around;
        flex-wrap: wrap;
    }

    .sec02 .imgBlock .imgbox .imgItem {
        width: calc((100% / 2) - 20px);
        padding-block: 15px;

    }

    .sec02 .imgBlock .imgbox .imgItem:nth-child(n+3) {
        margin-top: 20px;
    }

    .sec02 .imgBlock .txt {
        font-size: 20px;
        text-align: left;
    }

    .sec02 .imgBlock .c-text {
        text-align: left;
    }
}

@media screen and (max-width: 480px) {
    .sec02 .inner {
        padding: 50px 20px;
    }

    .sec02 .imgBlock .imgbox {
        width: auto;
    }

    .sec02 .imgBlock .txt {
        font-size: 16px;
        margin-top: 30px;
    }
}



/* --------------------------------------------------------------------------------

sec03

-------------------------------------------------------------------------------- */

.sec03 {
    margin: 0 auto;
    width: 800px;
}

.sec03 .inner {
    padding: 30px 0 40px;
}

/* .OverviewArea .contWrap02 {
    margin-top: 20px;
    border-top: 1px dashed #b3b3b3;
    padding-top: 20px;
} */

.OverviewArea .contWrap02 table tr td {
    font-size: 19px;
}

.OverviewArea .contWrap02 table tr td.strong {
    font-size: 21px;
    font-weight: bold;
}

.OverviewArea .contWrap02 table tr:nth-child(n+2) td {
    padding-top: 20px;
    line-height: 1.7;
    vertical-align: baseline;
}

.OverviewArea .contWrap02 table tr span {
    font-size: 18px;
    font-weight: normal;
}

.OverviewArea .contWrap02 table tr span.l-size {
    font-size: 24px;
    font-weight: bold;
}

.OverviewArea .contWrap02 table tr:nth-child(2) ul {
    font-size: 19px;
    font-weight: normal;
    margin-top: 15px;
}

.OverviewArea .contWrap02 table tr:nth-child(2) ul li {
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}

.OverviewArea .contWrap02 table tr:nth-child(2) ul li:nth-child(n+2) {
    margin-top: 10px;
}

.OverviewArea .contWrap02 table tr:nth-child(n+2) dl {
    font-size: 14px;
    font-weight: normal;
    margin-top: 15px;
}

.OverviewArea .contWrap02 table tr .comment dt:nth-child(n+2) {
    margin-top: 5px;
    padding-left: 1.1em;
}

.OverviewArea .contWrap02 table tr td:nth-of-type(1) {
    color: #db7071;
    width: 180px;
}

.OverviewArea .contWrap02 table tr td:nth-of-type(1).-adj {
    width: 280px;
}

.OverviewArea .contWrap02 table tr {
    /* display: flex;
    align-items: baseline; */
}

.sec03 .titBlock .imgItem {
    width: auto;
    border-radius: 10px;
    margin-top: 55px;
    padding-left: 40px;
}

@media screen and (max-width: 860px) {
    .sec03 {
        margin: 0 auto;
        width: auto;
        padding: 0 30px;
    }

    .sec03 .inner {
        padding: 20px 0 0;
    }

    .OverviewArea .contWrap02 table tr td:nth-of-type(1) {
        width: auto;
    }

    .OverviewArea .contWrap02 table tr td.strong {
        font-size: 18px;
    }

    .OverviewArea .contWrap02 table tr td:nth-of-type(1).-adj {
        width: auto;
    }
}

@media screen and (max-width: 768px) {
    .sec03 .titBlock .subtit {
        font-size: 20px;
    }

    .OverviewArea .contWrap02 table {
        margin: 0 auto;
    }

    .OverviewArea .contWrap02 table tr {
        font-size: 18px;
        flex-direction: column;
        align-items: center;
    }

    .OverviewArea .contWrap02 table tr td {
        display: block;
        text-align: center;
        line-height: 1.8;
    }

    .OverviewArea .contWrap02 table tr span {
        font-size: 16px;
    }

    .OverviewArea .contWrap02 table tr:nth-of-type(1) td:nth-of-type(2) {
        padding-top: 15px;
    }

    .OverviewArea .contWrap02 table tr:nth-child(n+2) td {
        padding-top: 0px;
    }

    .OverviewArea .contWrap02 table tr:nth-child(n+2) td:nth-of-type(1) {
        padding-top: 30px;
    }

    .OverviewArea .contWrap02 table tr:nth-child(n+2) td:nth-of-type(2) {
        line-height: 1.7;
    }

    .sec03 .titBlock .imgItem {
        margin-top: 20px;
        padding-left: 0;
    }
}

@media screen and (max-width: 480px) {
    .sec03 {
        padding: 0 20px;
    }

    .OverviewArea .contWrap02 table tr {
        font-size: 16px;
    }

    .OverviewArea .contWrap02 table tr span {
        font-size: 14px;
    }

    .OverviewArea .contWrap02 table tr:nth-child(2) ul {
        line-height: 1.4;
    }

    .OverviewArea .contWrap02 table tr:nth-child(n+2) dl {
        text-indent: -1.1em;
        padding-left: 1.1em;
        text-align: left;
    }

    .OverviewArea .contWrap02 table tr:nth-child(n+2) dl dt:nth-child(2) {
        text-indent: 0;
        padding-left: 0;
    }

    .OverviewArea .contWrap02 table tr .comment dt:nth-child(n+2) {
        text-indent: -1.1em;
    }
}



/* --------------------------------------------------------------------------------

sec04

-------------------------------------------------------------------------------- */

.sec04 {
    margin: 0 auto 100px;
    /* background-color: #fdf5f5; */
}

.sec04 .inner {
    margin: 0 auto;
    width: 800px;
    /* background-color: #fdf5f5; */
    padding: 0 0;
}

.sec04 .titBlock .subtit {
    margin-top: 0;
    ;
}

.sec04 .newsArea {
    margin-top: 30px;
}

.sec04 .newsArea strong {
    /* color: #db7071; */
    font-size: 21px;
    line-height: 1;
}

.sec04 .newsArea table tr td {
    line-height: 2;
    font-size: 19px;
}

.sec04 .newsArea table tr td .comment {
    font-size: 14px;
    text-indent: -16px;
    padding-left: 16px;
    margin-top: 10px;
}

.sec04 .newsArea table tr td:nth-of-type(n+2) {
    padding-left: 40px;
}

.sec04 .newsArea table tr:nth-of-type(n+2) td {
    padding-top: 30px;
}

.sec04 .newsArea table tr .txtIndent01 {
    text-indent: -3.4em;
    padding-left: 3.4em;
    font-feature-settings: "palt";
}

.sec04 .newsArea table tr .txtIndent02 {
    font-feature-settings: "palt";
    margin-top: 15px;
}

ul.txtIndent02 li {
    line-height: 1.7;
    position: relative;
    padding-left: 20px;
}
ul.txtIndent02 li:nth-child(n+2) {
    margin-top: 10px;
}
ul.txtIndent02 li::before {
    content: '';
    position: absolute;
    background-color: #db7071;
    border-radius: 50px;
    width: 7px;
    height: 7px;
    top: 9px;
    left: 5px;
}

ul.txtIndent03{
    display: inline-block;
    position: relative;
    left: 50%;
    right: 50%;
    transform: translateX(-50%);
    margin-top: 10px;
}
ul.txtIndent03 li {
    line-height: 1.7;
    position: relative;
    padding-left: 20px;
    font-size: 20px;
}
ul.txtIndent03 li:nth-child(n+2) {
    margin-top: 5px;
}
ul.txtIndent03 li::before {
    content: '';
    position: absolute;
    background-color: #db7071;
    border-radius: 50px;
    width: 7px;
    height: 7px;
    top: 50%;
    bottom: 50%;
    transform: translateY(-50%);
    left: 4px;
}

@media screen and (max-width: 860px) {
    .sec04 {
        padding: 0 30px;
    }

    .sec04 .inner {
        width: auto;
        padding: 0;
    }

    .sec04 .newsArea table tr .txtIndent01 {
        text-indent: -3.5em;
        padding-left: 3.5em;
    }

    .sec04 .newsArea strong {
        font-size: 16px;
        line-height: 1.8;
    }
}

@media screen and (max-width: 768px) {
    .sec04 .newsArea table tr td {
        font-size: 14px;
    }

    .sec04 .newsArea table tr td .comment {
        font-size: 12px;
        text-indent: -14px;
        padding-left: 14px;
        margin-top: 10px;
    }
}

@media screen and (max-width: 480px) {
    .sec04 {
        padding: 0 20px;
        margin: 0 auto;
    }

    .sec04 .newsArea table tr td {
        display: block;
    }

    .sec04 .newsArea table tr td:nth-of-type(n+2) {
        padding-left: 0;
    }

    .sec04 .newsArea table tr:nth-of-type(n+2) td:nth-of-type(1) {
        padding-top: 20px;
    }

    .sec04 .newsArea table tr:nth-of-type(n+2) td {
        padding-top: 0;
    }
}



/* ========================================================================================== 

add 240619

========================================================================================== */

.l-btnWrap.-adj {
    text-align: left;
    margin-top: 30px;
}

.l-btnWrap.-adj .c-linkBtn {
    width: 70%;
}

.acdArea .inner {
    padding: 100px 0 0;
}

.l-section-body.titBlock .subtit {
    text-align: center;
}

.acdArea .imgbox {
    width: 65%;
    margin: auto;
}

.sec04 .more_btn .l-section-body .subtit {
    text-align: center;
    margin: 40px auto;
    font-size: 19px;
    width: 300px;
    border-radius: 0;
    border-radius: 10px;
}

.more_btn .subtit {
    background-color: #fff;
    color: #db7071;
    border: 1px solid #ccc;
}

.more_btn .acordion-title::before {
    border-top: 1px solid #db7071;
    border-right: 1px solid #db7071;
}

.c-text.tC.-adj {
    font-size: 21px;
}

@media screen and (max-width: 860px) {
    .acdArea .inner {
        padding: 0 20px;
    }

    .l-btnWrap.-adj .c-linkBtn {
        width: 90%;
    }
    .l-btnWrap.-adj {
        text-align: center;
        margin: 30px auto 0;
    }
    .l-section-body.titBlock {
        width: 90%;
        margin: auto;
    }
    .imgbox {
        width: 100%;
        margin: auto;
    }
    .c-text.tC.-adj {
        font-size: 16px;
    }
    .acdArea .imgbox {
        width: 100%;
    }
    
}