img {
    width: 100%;
    height: auto;
}


.secerror {
    padding-top: 30px;
    padding-bottom: 30px;
    line-height: 1.5em;
}

.secerror a {
    text-align: center;
    display: block;
    margin-top: 30px;
}

.htwodiv h2 {
    text-align: center;
    color: #722929;
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 1.5em;
}

.htwodiv h2 span {
    font-size: 42px;
}

.mainvisualdiv {
    margin-bottom: 30px;
}

.aboutshougaidiv a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.aboutshougaidiv {
    margin-bottom: 60px;
}

.inneraboutshougai {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

.aboutimg {
    width: 73px;
    margin-top: 10px;
}

.abouttext {
    margin-left: 3%;
    line-height: 1.5em;
    color: #722929;
    font-weight: bold;
    margin-bottom: 20px;
    margin-top: 10px;
}

.aboutshougaidiv a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 350px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 15px;
    border-radius: 35px;
}

.htwodiv h2:before {
    content: '';
    /*何も入れない*/
    display: inline-block;
    /*忘れずに！*/
    width: 40px;
    /*画像の幅*/
    height: 40px;
    /*画像の高さ*/
    background-image: url(../img/greenflower.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
}

.htwodiv:after {
    content: '';
    display: block;
    width: 65px;
    height: 40px;
    text-align: center;
    background-image: url(../img/dot.png);
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 auto;
    vertical-align: middle;
}

.htwodiv:after {
    margin: 15px auto 0;
}

.sicklist {
    display: flex;
    flex-wrap: wrap;
}

.sicklist li {
    background-color: #8B701E;
    width: auto;
    margin-right: 3%;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #fff;
    font-weight: 600;
    text-align: center;
    padding-left: 20px;
    padding-right: 20px;
    border-radius: 20px;
    margin-bottom: 15px;
    line-height: 1.5em;
}

.sicklist li a {
    color: #fff;
}

.sickdiv {
    margin-bottom: 50px;
}

.sickdiv .diseasep {
    padding-top: 40px;
    color: #722929;
}

p.ifclick {
    text-align: right;
    font-size: 14px;
}

.beigebg {
    background-image: url(../img/wave.png);
    background-size: cover;
    background-repeat: no-repeat;
}

.innerbg {
    padding-top: 30px;
    padding-bottom: 50px;
}

.expensionul img {
    width: 200px;
    display: block;
    margin: 0 auto;
    padding-bottom: 20px;
}

.expensionul h3 {
    line-height: 1.5em;
    font-weight: bold;
    font-size: 18px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    color: #722929;
    border-bottom: 1px solid #722929;
}

.expensionul p.aboutex {
    font-size: 16px;
    line-height: 1.5em;
    color: #722929;
    padding-bottom: 15px;
}

.expensionul p.greenbox {
    background-color: #62BF54;
    border-radius: 10px;
    color: #fff;
    line-height: 1.5em;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.expensionul li {
    padding-bottom: 40px;
}


.voiceul {
    margin-bottom: 40px;
}

.voiceul img {
    width: 200px;
    display: block;
    margin: 0 auto;
    padding-bottom: 20px;
}

.voiceul h3 {
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5em;
    padding-bottom: 10px;
    margin-bottom: 10px;
    color: #722929;
    border-bottom: 1px solid #722929;
}

.voiceul p.aboutex {
    font-size: 16px;
    line-height: 1.5em;
    color: #722929;
    padding-bottom: 15px;
}

.voiceul p.brownbox {
    background-color: #8B701E;
    border-radius: 10px;
    color: #fff;
    line-height: 1.5em;
    padding-right: 10px;
    padding-left: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.voiceul li {
    padding-bottom: 40px;
}

.pricetopdiv p.innerpricep {
    line-height: 2.5em;
    color: #722929;
    font-size: 13px;
    font-weight: bold;
    margin-bottom: 30px;
    text-align: center;
}

.pricetopdiv a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.pricetopdiv a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}



.pricetopdiv img {
    width: 250px;
    margin: 30px auto;
    display: block;
}

.wantcheck {
    font-size: 14px;
    color: #722929;
    line-height: 1.5em;
    font-weight: bold;
}

.mar-bot {
    margin-bottom: 50px;
}

.chooseul img {
    display: block;
    margin: 0 auto 20px;
    width: 250px;
}

.chooseul li {
    margin-bottom: 40px;
}

.chooseul h3 {
    font-weight: bold;
    text-align: center;
    color: #722929;
    font-size: 20px;
    background-image: url(../img/line.png);
    background-position: bottom;
    display: table;
    background-size: 3px;
    margin: 0 auto;
    text-align: center;
    background-repeat: no-repeat;
    background-size: 100%;
    margin-bottom: 10px;
}

.chooseul p {
    font-weight: bold;
    text-align: center;
    color: #722929;
    font-size: 15px;
    line-height: 1.5em;
}

.chooseul p a.telp {
    color: #722929;
}

.chooseul p.choosep {
    margin-bottom: 10px;
}

.flowpadtop {
    padding-top: 30px;
    padding-bottom: 70px;
    margin-bottom: 30px;
}

.flowp {
    line-height: 1.5em;
    margin-bottom: 30px;
    font-weight: bold;
    color: #722929;
}

.flowul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.flowul li {
    width: 47%;
    padding-bottom: 20px;
    line-height: 1.5em;
}

.flowul li img {
    padding-bottom: 15px;
}

.flowul li p {
    font-weight: bold;
    color: #722929;
}

.flowul li:nth-child(odd) {
    margin-right: 5%;
}


.flowtopdiv a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.flowtopdiv a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.accordion {
    width: 100%;
    margin-bottom: 30px;
}

/* inputのチェックボックスを非表示 */
.accordion-hidden {
    display: none;
}

.accordion-open {
    display: block;
    padding: 10px 55px 10px 10px;
    background: #FFF8EB;
    cursor: pointer;
    margin: 5px 0;
    position: relative;
}

/* ＋アイコン */
.accordion-open::before,
.accordion-open::after {
    content: '';
    width: 20px;
    height: 3px;
    background: #000;
    position: absolute;
    top: 50%;
    right: 5%;
    transform: translateY(-50%);
}

/* アイコンのー */
.accordion-open::after {
    transform: translateY(-50%) rotate(90deg);
    transition: 0.3s;
}

/* アコーディオンが開いたらーに */
.accordion-hidden:checked+.accordion-open:after {
    transform: translateY(-50%) rotate(0);
}

/* アコーディオン中身部分 */
.accordion-inner {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
    transition: 0.5s;
    /* 表示速度の設定 */
    cursor: pointer;
}

/* チェックボックスにチェックが入ったら中身部分を表示する */
.accordion-hidden:checked+.accordion-open+.accordion-inner {
    height: auto;
    opacity: 1;
    padding: 10px;
}

/* ↑ここまで共通 */



/* 中にいろいろ入れたいとき */
.accordion-box {
    display: block;
    height: 0;
    overflow: hidden;
    padding: 0;
    opacity: 0;
}

.accordion-hidden:checked+.accordion-open+.accordion-box {
    height: auto;
    opacity: 1;
    padding: 10px;
    padding-left: 13px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.innerfaqspan {
    display: flex;
    flex-wrap: wrap;
}

.innerfaqspan span.qspan {
    padding-top: 2px;
    width: 10px;
    color: #B78A00;
    padding-right: 20px;
    font-size: 20px;
    font-weight: bold;
}

.innerfaqspan h2 span {
    width: 89%;
    color: #722929;
    font-weight: bold;
    line-height: 1.5em;
}

.innerfaqspan h2 {
    display: contents;
}

.accordion-box div.accordioninner {
    display: flex;
    flex-wrap: wrap;
}

.accordion-box div.accordioninner span.answer {
    padding-top: 2px;
    width: 10px;
    color: #FD981D;
    padding-right: 18px;
    font-size: 20px;
    font-weight: bold;
}

.accordion-box div.accordioninner span.answerinner {
    width: 90%;
    color: #722929;
    line-height: 1.5em;
}

.mt_S {
    margin-bottom: 80px;
}

.faqtopdiv a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.faqtopdiv a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.faqtopdiv {
    margin-bottom: 40px;
}

.areaul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.areaul li:nth-child(odd) {
    margin-right: 8%;
}

.areaul li {
    width: 46%;
    text-align: center;
    color: #fff;
    background-color: #8B701E;
    font-weight: bold;
    border-radius: 27px;
    padding-top: 12px;
    padding-bottom: 14px;
    margin-bottom: 15px;
}

.areaul li a {
    color: #fff;
}

.areaul li:nth-child(5) {
    background-color: #B48803;
}

.areabox {
    border: 1px solid #8B701E;
    background-color: #fff;
    border-radius: 8px;
    padding-top: 40px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 100px;
    background-size: 290px;
    background-repeat: no-repeat;
    background-position: right 5% bottom 15%;
    background-image: url(../img/kansaitr.png);
    margin-bottom: 40px;
}

.wakayamaareabox {
    background-image: url(../img/wakayamatr.png);
    background-size: 220px;
}

.areabox h3 {
    font-weight: bold;
    color: #722929;
    font-size: 18px;
    background-image: url(../img/line.png);
    background-position: bottom;
    text-align: left;
    background-size: 58%;
    background-repeat-y: no-repeat;
    margin-bottom: 30px;
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
}

.innerarea a {
    color: #722929;
    border-bottom: 1px solid #8B701E;

}

.innerarea {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
}

.innerarea li {
    width: 170px;
    color: #722929;
    font-weight: bold;
    margin-bottom: 30px;
    font-size: 20px;
    line-height: 1.5em;
}

.innerarea li:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 19px;
    background-image: url(../img/arrowbr.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: initial;
}

.wakayama {
    background-image: url(../img/wakayamatr.png);
}

.areatopdiv {
    padding-bottom: 10px;
    padding-top: 30px;
    margin-bottom: 60px;
}

.beigebgarea {
    background-image: url(../img/wave.png);
}

.newsul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.newsul li {
    width: 47%;
    padding-bottom: 20px;
    line-height: 1.5em;
}

.newsul li img {
    padding-bottom: 15px;
}

.newsul li p {
    font-weight: bold;
    color: #722929;
    background: #62BF54;
    color: #fff;
    width: 95px;
    text-align: center;
    padding-top: 1px;
    padding-bottom: 3px;
    font-size: 14px;
    border-radius: 22px;
    margin-bottom: 6px;
}

.newsul li time {
    color: #722929;
    font-weight: bold;
    padding-bottom: 7px;
    display: block;
}

.newsul li:nth-child(odd) {
    margin-right: 5%;
}

.newsul li time:before {
    content: '';
    display: inline-block;
    width: 21px;
    height: 14px;
    background-image: url(../img/calendar.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: baseline;
}

.newsul li h3 {
    color: #722929;
    line-height: 1.5em;
}

.newslink a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.newslink a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.newstopdiv {
    margin-bottom: 40px;
}

.newslink {
    margin: 30px auto;
}

@media (min-width:768px) {
    .htwodiv h2 {
        font-size: 28px;
    }

    .abouttext {
        font-size: 18px;
    }

    .aboutimg {
        width: 110px;
    }

    .aboutshougaidiv {
        margin-bottom: 100px;
    }

    .inneraboutshougai {
        margin-bottom: 80px;
    }

    .sicklist li {
        font-size: 18px;
    }

    .innerbg {
        padding-top: 70px;
    }

    .expensionul {
        display: flex;
        flex-wrap: wrap;
    }

    .expensionul li {
        width: 31%;
        margin-right: 3%;
    }

    .expensionul li:nth-child(3) {
        margin-right: 0%;
    }

    .expensionul img {
        width: 232px;
    }

    .expensionul p.greenbox {
        font-size: 16px;
    }

    .expensionul li {
        padding-bottom: 20px;
    }

    .innerbg {
        margin-bottom: 70px;
    }

    .voiceul {
        display: flex;
        flex-wrap: wrap;
    }

    .voiceul li {
        width: 31%;
        margin-right: 3%;
    }

    .voiceul li:nth-child(3) {
        margin-right: 0%;
    }

    .voiceul img {
        width: 232px;
    }

    .voiceul p.greenbox {
        font-size: 16px;
    }

    .priceabout {
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 30px;
    }

    .pricetopdiv p.innerpricep {
        line-height: 2.5em;
        font-size: 18px;
        margin-bottom: 45px;
        margin-top: 25px;
    }

    .pricetopdiv img {
        margin: 0px auto;
    }

    .innerbg {
        padding-bottom: 70px;
    }

    .chooseul {
        display: flex;
        flex-wrap: wrap;
    }

    .chooseul img {
        width: 100%;
    }

    .choosediv {
        margin-bottom: 50px;
    }

    .flowpadtop {
        padding-top: 80px;

    }

    .chooseul li {
        width: 32%;
        margin-right: 2%;
    }

    .chooseul h3 {
        font-size: 18px;
    }

    .chooseul p {
        line-height: 2em;
    }

    .flowp {
        line-height: 1.5em;
        margin-bottom: 30px;
        font-weight: bold;
        color: #722929;
    }

    .flowp {
        text-align: center;
    }

    .flowul li:nth-child(odd) {
        margin-right: 2%;
    }


    ul.flowul li {
        margin-right: 2%;
    }

    .flowul li {
        width: 23.5%;
    }

    .flowul li:nth-child(4) {
        margin-right: 0%;
    }

    .flowpadtop {
        margin-bottom: 80px;
    }

    .faqtopdiv {
        margin-bottom: 80px;
    }

    .areaul li {
        width: 18.5%;
        margin-right: 1.5%;
        font-size: 20px;
    }

    .areaul li:nth-child(odd) {
        margin-right: 1.5%;
    }

    .areabox h3 {
        font-size: 24px;
    }

    .areabox {
        flex-wrap: wrap;
        background-image: none;
        display: flex;
        padding-bottom: 35px;
    }

    .innerarea li {
        width: 203px;
    }

    .areatopdiv {
        padding-top: 70px;
    }

    .areabox img {
        width: 35%;
    }

    .areabox div {
        width: 65%;
    }

    .newsul li {
        width: 23.5%;
        margin-right: 2%;
    }


    .newsul li:nth-child(odd) {
        margin-right: 2%;
    }

    .newsul li:nth-child(4) {
        margin-right: 0%;
    }


    .innerprice {
        width: 65%;
    }

    .pricemg {
        width: 35%;
    }

    .chooseul li:nth-child(3) {
        margin-right: 0;
    }

    .newslink {
        width: 500px;
        display: block;
    }


    @media (min-width:1080px) {
        .secerror {
            padding-top: 250px;
            padding-left: 3%;
            padding-right: 3%;
            padding-bottom: 70px;
            line-height: 1.5em;
        }

        @media (min-width:1600px) {
            .secerror {
                padding-top: 315px;
            }

        }

        @media (min-width:2400px) {
            .secerror {
                padding-top: 400px;
            }

        }

        .mainvisualdiv {
            margin-bottom: 80px;
            padding-top: 12vw;
        }

        .aboutshougaidiv a {
            width: 500px;
            padding-top: 15px;
            padding-bottom: 16px;
            font-size: 20px;
        }

        .aboutshougaidiv a:before {
            width: 30px;
            height: 18px;
        }

        .titlehdiv {
            padding-top: 12vw;
        }

        .htwodiv h2 {
            font-size: 30px;
        }

        .htwodiv h2:before {
            width: 50px;
            height: 50px;
        }

        .htwodiv:after {
            width: 90px;
            height: 40px;
        }

        .sicklist li {
            padding-top: 12px;
            padding-bottom: 12px;
            padding-left: 50px;
            padding-right: 50px;
        }

        .sickdiv {
            margin-bottom: 150px;
        }

        .innerbg {
            padding-top: 120px;
        }

        .expensionul img {
            width: 335px;
        }

        .expensionul p.aboutex {
            font-size: 16px;
            line-height: 2em;
        }

        .expensionul p.greenbox {
            line-height: 2em;
            padding-left: 12px;
            padding-right: 12px;
        }

        .innerbg {
            margin-bottom: 150px;
            padding-bottom: 100px;
        }

        .voiceul img {
            width: 335px;
        }

        .voiceul p.aboutex {
            font-size: 14px;
        }

        .voiceul {
            margin-bottom: 150px;
        }

        .wrapped {
            width: 800px;
        }

        .pricetopdiv p.innerpricep {
            text-align: left;
        }

        .pricetopdiv a:before {
            width: 30px;
            height: 18px;
        }

        .pricetopdiv a {
            margin: 0;
            width: 380px;
            padding-top: 15px;
            padding-bottom: 16px;
            font-size: 20px;
        }

        .chooseul h3 {
            font-size: 26px;
        }

        .chooseul p.choosep {
            font-size: 18px;
        }

        .choosediv {
            margin-bottom: 120px;
        }

        .flowp {
            text-align: center;
            line-height: 2em;
            font-size: 18px;
        }

        .flowul li p {
            font-size: 18px;
            text-align: center;
            line-height: 2em;
        }

        .flowtopdiv a {
            width: 380px;
            padding-top: 15px;
            padding-bottom: 16px;
            font-size: 20px;
        }

        .flowtopdiv a:before {
            width: 30px;
            height: 18px;
        }

        .flowpadtop {
            padding-bottom: 150px;
        }

        .innerfaqspan h2 span {
            font-size: 20px;
        }

        .innerfaqspan span.qspan {
            padding-top: 0px;
            padding-right: 32px;
            font-size: 32px;
            margin-top: -2px;
        }

        .accordion-box div.accordioninner span.answer {
            padding-top: 0px;
            padding-right: 29px;
            font-size: 30px;
        }

        .accordion-box div.accordioninner span.answerinner {
            font-size: 18px;
            line-height: 2em;
            width: 96%;
        }

        .accordion-open {
            padding: 10px 55px 16px 20px;
        }

        .accordion-hidden:checked+.accordion-open+.accordion-box {
            padding-left: 26px;
        }

        .faqtopdiv a {
            width: 380px;
            padding-top: 15px;
            padding-bottom: 16px;
            font-size: 20px;
        }

        .faqtopdiv a:before {
            width: 30px;
            height: 18px;
        }

        .faqtopdiv {
            margin-bottom: 80px;
        }

        .areatopdiv {
            padding-top: 100px;
            padding-bottom: 80px;
            margin-bottom: 100px;
        }

        .areabox h3 {
            font-size: 35px;
        }

        .innerarea li {
            width: 337px;
            font-size: 24px;
        }

        .newsul div {
            display: flex;
            flex-wrap: wrap;
        }

        .newsul li time {
            width: 61%;
        }

        .newsul li {
            padding-bottom: 40px;
        }

        .newslink a {
            width: 380px;
            padding-top: 15px;
            padding-bottom: 16px;
            font-size: 20px;
        }

        .newslink a:before {
            width: 30px;
            height: 18px;
        }

        .newslink {
            width: 830px;
        }

        .newstopdiv {
            margin-bottom: 80px;
        }

        .newsul li h3 {
            line-height: 2em;
            font-size: 18px;
        }

    }
}

/*会社概要*/
.titlehdiv h1 {
    text-align: center;
    padding-left: 3%;
    padding-right: 3%;
    font-weight: bold;
    font-size: 24px;
    padding-top: 35px;
    padding-bottom: 50px;
    color: #722929;
    background-image: url(../img/waveb.png);
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 20px;
    line-height: 1.5em;
}

.titlehdiv h1 span {
    font-size: 12px;
    display: block;
    text-align: center;
    margin-top: -12px;
}

.shoreitop h1 span {
    margin-top: 0px;
}

nav.breadnav ul li a {
    display: inline;
    padding-right: 10px;
    color: #722929;
}

nav.breadnav ul li {
    display: inline;
    line-height: 1.5em;
}

nav.breadnav ul {
    color: #722929;
    margin-bottom: 40px;
}


.dldiv dl,
dt,
dd {
    box-sizing: border-box;
}

.dldiv dt {
    font-weight: bold;
    padding-left: 3%;
    display: block;
    border-top: 4px solid #35AA07;
    font-size: 16px;
    color: #000;
    width: 100%;
    line-height: 2em;
    padding-top: 12px;
}

.dldiv dt span {
    padding-left: 5%;
}

.dldiv dd {
    display: block;
    margin-top: 2%;
    margin-bottom: 10%;
    font-size: 14px;
    padding-left: 3%;
    padding-right: 3%;
    line-height: 2em;
    margin-left: 0%;
    border-bottom: 2px solid #CCCCCC;
    padding-bottom: 10px;
}

.dldiv dd:after {
    content: '';
    display: block;
    clear: both;
}

.dldiv h3 {
    color: #005D30;
    font-weight: bold;
    border-bottom: 5px solid #F4F6F2;
    padding-bottom: 1%;
    margin-bottom: 5%;
    font-size: 20px;
    line-height: 1.5em;
}

.dldiv {
    padding-bottom: 5%;
    margin-top: 8%;
}


@media(min-width: 768px) {
    .titlehdiv h1 {
        font-size: 36px;
    }

    .titlehdiv h1 span {
        font-size: 14px;
    }

    nav.breadnav ul {
        color: #722929;
        margin-bottom: 80px;
    }

    .dldiv {
        margin-top: 5%;
    }

    .dldiv h3 {
        font-size: 30px;
    }

    .dldiv {
        background-image: url(../image/treebig.png);
        background-repeat: no-repeat;
        padding-bottom: 3%;
        background-position: 135% -15%;
    }

    .dldiv dt {
        border-right: none;
        padding-left: 3%;
        display: block;
        border-bottom: none;
        font-size: 20px;
        width: 27%;
        float: left;
    }

    .dldiv dd {
        line-height: 2.5em;
        padding-left: 2%;
        width: 71%;
        font-size: 16px;
        margin-left: 27%;
        margin-top: 0;
        padding-top: 1.6%;
        padding-right: 0;
        margin-bottom: 0%;
        border-top: 2px solid #cccccc;
        border-bottom: none;
        background-color: #fff;
    }

    .dldiv dd p {
        padding-left: 2%;
        font-size: 20px;
    }

    .dldiv dl dt {
        border-top: 2px solid #A5CE20;
        height: 78px;
        padding-top: 1.5%;
        text-align: right;
        padding-bottom: 1.5%;
        padding-right: 2%;
    }

    .dldiv dl {
        border-bottom: none;
        border-left: none;
        border-right: none;
        margin-top: 4%;
    }

    .dldiv {
        margin-bottom: 80px;
    }

    .dldiv dl dt.lastdt {
        border-bottom: 2px solid #35AA07;
    }

    .dldiv dl dd.lastdd {
        border-bottom: 2px solid #cccccc;
    }

    .dldiv dl dt.lastdt {
        border-bottom: 2px solid #A5CE20;
        height: 150px;
    }

    .dldiv dl dd.lastdd {
        border-bottom: 2px solid #cccccc;
        padding-bottom: 0;
    }

    @media(min-width: 1080px) {
        .titlehdiv h1 {
            font-size: 42px;
        }

        .titlehdiv h1 {
            padding-top: 80px;
            padding-bottom: 80px;
        }
    }



}


/*料金費用*/



.shorttwo h2 {
    padding-right: 25px;
}


.innerpricelist h3 {

    font-weight: bold;
    color: #722929;
    font-size: 20px;
    background: linear-gradient(transparent 70%, #FFD096 0%);
    background-position: bottom;
    text-align: left;
    display: inline;
    margin-bottom: 20px;
}

.innerpricelist p {

    line-height: 1.5em;
    margin-bottom: 20px;
}

.innerpricelist ul li:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/check.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: baseline;
}

.innerpricelist ul li {
    padding-left: 24px;
    text-indent: -24px;
}


.innerpricelist ul li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 10px;
    line-height: 1.5em;
}

.innerpricelist a {
    display: block;
    background-color: #FD981D;
    margin: 30px auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.innerpricelist a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.innerpriceabout {
    margin-bottom: 50px;
}


.supportdiv p {
    line-height: 1.5em;
}

.supportdiv div p span {
    padding: 0.5em 0.5em;
    margin: 20px auto;
    line-height: 1.5em;
    color: #fff;
    text-align: center;
    /* color: #565656; */
    width: 250px;
    background: #A5CE20;
    box-shadow: 0px 0px 0px 10px #a5ce20;
    border: dashed 2px #fff;
    border-radius: 8px;
    display: block;
}

.supportdiv div p:after {
    content: '';
    text-align: center;
    width: 30px;
    height: 30px;
    background-image: url(../img/greenarrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
    margin: 0 auto;
    display: block;
}


.supportdiv div p:last-child:after {
    background-image: none;
}

.supportdiv ul li:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/check.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: baseline;
}


.supportdiv ul li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 10px;
    line-height: 1.5em;
}


.supportdiv ul {
    margin-top: 30px;
    margin-bottom: 30px;
}

.wantcheckp {
    margin-bottom: 30px;
}

@media(min-width:768px) {
    .innerpricelist {
        margin-bottom: 100px;
    }

    .innerpricelist h3 {
        font-size: 24px;
    }

    .wantcheckp {
        margin-bottom: 40px;
    }

    .innerpricelist a {
        margin: 30px 0 0 0;

    }

    .supportdiv div p span {
        padding: 0.5em 0.5em 0.7em 0.5em;
        width: 375px;
        font-size: 20px;
    }


}



/*ご相談の流れ*/
.aboutflow {
    line-height: 1.5em;
    margin-bottom: 40px;
    font-size: 16px;
    color: #722929;
}

.flowpage h3 {
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    color: #722929;
}

ul.flowpage p {
    font-size: 14px;
    color: #333333;
    padding-top: 10px;
}

@media(min-width: 768px) {
    ul.flowpage li {
        width: 47%;
        display: flex;
        flex-wrap: wrap;
    }

    ul.flowpage li img {
        width: 47%;
    }

    ul.flowpage li div {
        width: 47%;
        padding-left: 15px;
    }

    ul.flowpage li img {
        padding-bottom: 80px;
    }

    .flowpage h3 {
        font-size: 15px;
    }

    .aboutflow {
        line-height: 2em;
        margin-bottom: 40px;
        font-size: 18px;
    }

    .topflowpage .flowp {
        line-height: 2em;
        margin-bottom: 60px;
        font-weight: bold;
        color: #722929;
        font-size: 18px;
    }

    @media (min-width: 1080px) {
        .flowpage h3 {
            font-size: 20px;
            line-height: 1.8em;
        }

        ul.flowpage p {
            text-align: left;
            line-height: 2em;
            font-size: 14px;
        }


    }

}


/*プライバシーポリシー*/


.privacydiv p {
    line-height: 1.5em;
    font-size: 16px;
    margin-bottom: 40px;
}

.privacydiv h3 {
    font-weight: bold;
    color: #722929;
    font-size: 20px;
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    background-position: bottom;
    text-align: left;
    margin-bottom: 20px;
    line-height: 1.5em;
}

.aboutprivacy p {
    margin-top: 20px;
}

@media (min-width: 768px) {
    .privacydiv p.privacyp {
        margin-bottom: 80px;
        font-size: 18px;
        line-height: 2em;
    }

    .privacydiv p {
        line-height: 2em;
        font-size: 18px;
    }

    .privacydiv h3 {
        font-size: 24px;
    }
}



/*とは？*/
.specialhdiv:after {
    margin: 17px auto 0;
}

.innerspecial h3 {
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
}

.innerspecial p {
    line-height: 1.5em;
    margin-top: 20px;
}

.innerspecial {
    margin-bottom: 50px;
}

.specialdiv h4 {
    background-color: #732A2E;
    color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    border-radius: 5px;
    font-size: 18px;
    padding-left: 8px;
    line-height: 1.5em;
    padding-right: 8px;
    margin-bottom: 20px;
}

.specialabout img {
    width: 150px;
    display: block;
    margin: 0 auto 20px;
}

.specialabout p {
    line-height: 1.5em;
}

.specialabout {
    margin-bottom: 30px;
}

.specialabout img.si3 {
    width: 250px;
}

@media(min-width: 768px) {

    .innerspecial h3 {

        font-size: 24px;
    }

    .specialdiv h4 {
        padding-bottom: 12px;
        font-size: 22px;
        padding-left: 20px;
    }

    .innerspecial p {
        line-height: 2em;
        font-size: 18px;
        margin-top: 30px;
    }

    .specialabout {
        display: flex;
        flex-wrap: wrap;
    }

    .specialabout p {
        width: 70%;
        line-height: 2em;
        font-size: 18px;
    }

    @media(min-width: 1080px) {

        .innerspecial {
            margin-bottom: 80px;
        }
    }
}

/*お問い合わせ*/
.formdiv p.unknown {
    line-height: 1.5em;
    margin-bottom: 20px;

}

table.contacttable {
    width: 100%;
    margin-top: 3%;
    border-top: none;
}

table.contacttable th {
    vertical-align: top;
    text-align: left;
    padding-left: 2%;
    padding-right: 2%;
    padding-top: 3%;
    padding-bottom: 4%;
    line-height: 1.5em;
    width: 96%;
    display: block;
    background-color: #A5CE20;
}

table.contacttable td span {
    padding-top: 0%;
    padding-bottom: 0%;
}

table.contacttable tr th p {
    font-size: 16px;
    float: left;
    padding-left: 11px;
    padding-top: 1%;
    color: #fff;
}

table.contacttable tr td {
    font-size: 13px;
    line-height: 26px;
    display: block;
    width: 98%;
    padding-top: 4%;
    padding-left: 2%;
    padding-right: 1%;
    padding-bottom: 4%;
}

table.contacttable tr th span {
    vertical-align: baseline;
    font-size: 16px;
    color: #f86e34;
    padding-top: 0.7%;
    margin-left: 8px;
    background-color: #f86e34;
    color: #fff;
    padding-left: 9px;
    padding-right: 9px;
    padding-top: 0px;
    padding-bottom: 2px;
    border-radius: 10px;
}

table.contacttable tr th span.ninni {
    background-color: #312BF2;

}

input.bar {
    border: 1px solid #c0c0c0;
    width: 95%;
    font-size: 18px;
    padding-bottom: 1%;
    padding-top: 1%;
    padding-left: 1%;
}

input.short {
    padding-left: 1%;
    width: 50%;
    font-size: 18px;
    padding-bottom: 1%;
    padding-top: 1%;
}

select.short {
    border: 0.8px solid #c0c0c0;
    background-color: #fff;
    padding-left: 1%;
    width: 53%;
    font-size: 18px;
    padding-bottom: 1%;
    padding-top: 1%;
}

input::placeholder {
    color: #c3c3c3;
}

textarea {
    width: 95.5%;
    border: 1px solid #c0c0c0;
    height: 200px;
    font-size: 18px;
}

button {
    margin-left: 3%;
    font-size: 12px;
    border: none;
    padding-top: 1%;
    padding-bottom: 1%;
    padding-left: 3%;
    padding-right: 3%;
    border: 0.5px solid #c0c0c0;
    border-radius: 5px;
    background-color: #A7E5D8;
}

.send {
    display: block;
    background-color: #FD981D;
    margin: 20px auto 50px;
    width: 200px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
    box-shadow: 0 5px 5px rgb(0 0 0 / 26%);
    border: none;
    outline: none;
    -webkit-appearance: none;
}

@media(min-width: 768px) {
    table.contacttable {
        border-collapse: unset;
    }

    table.contacttable th {
        display: table-cell;
        line-height: 2em;
        padding-right: 3%;
        width: 37%;
        border-bottom: none;
        border-right: 1px solid #c0c0c0;
        border-top: 1px solid #fff;
        padding-bottom: 3%;
        padding-top: 2.8%;
    }

    .notbor {
        border-top: none;
    }

    .notborbot {
        border-bottom: none;
    }

    table.contacttable tr td {
        font-size: 19px;
        border-top: 0.5px solid #c0c0c0;
        line-height: 2em;
        padding-bottom: 3.8%;
        padding-top: 4.8%;
        width: 97.1%;
        float: left;
        padding-left: 5%;
        border-right: 1px solid #c0c0c0;
    }


    table.contacttable tr:nth-child(13) td {
        height: 72px;
    }

    table.contacttable tr th p {
        font-size: 20px;
    }

    span.pad {
        padding-right: 5%;
        display: inline;
        font-size: 20px;
    }

    input.short {
        width: 25%;
    }

    input.bar {
        width: 95%;
    }

    button {
        padding-right: 2%;
        padding-left: 2%;
        width: 8%;
        margin-left: 1%;
    }

    textarea {
        width: 95.7%;
        height: 350px;
    }

    select.short {
        width: 26.5%;
    }

    .send {
        font-size: 20px;
        padding-top: 10px;
        padding-bottom: 11px;
        margin: 40px auto 80px;
    }

    table.contacttable tr th span {
        padding-top: 1%;
    }

    .borbot {
        border-bottom: 1px solid #c0c0c0;
    }

    table.contacttable tr td.whentd {
        padding-top: 7vw;
        padding-bottom: 8vw;
    }

    table.contacttable tr td.lasttd {
        border-bottom: 1px solid #c0c0c0;
        padding-top: 5vw;
        padding-bottom: 5.5vw;
    }

    @media(min-width:1080px) {
        table.contacttable tr td.whentd {
            padding-top: 70px;
            padding-bottom: 45px;
            height: 82px;
        }

        table.contacttable tr td.lasttd {
            border-bottom: 1px solid #c0c0c0;
            padding-top: 50px;
            padding-bottom: 55px;
        }
    }
}

/*プロフィール*/
.profilehdiv:after {
    margin: 17px auto 0;
}

.profilediv {
    line-height: 1.5em;

}

span.bolding {
    font-weight: bold;
    font-size: 18px;

}

.profilediv h3 {
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
}

.profileinnerdiv {
    margin-top: 20px;
}

p.pbot {
    margin-top: 20px;
}

.profileul {
    margin-top: 20px;
}

.profileul li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 20px;
    line-height: 1.5em;
}

.profileul li:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/check.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: baseline;
}

p.bolding {
    font-weight: bold;
    font-size: 15px;
    line-height: 1.8em;
    padding-top: 10px;

}

.profilediv img {
    width: 200px;
    display: block;
    margin: 10px auto 50px;
}

p.profilepp {
    line-height: 1.5em;
}

.profiletext {
    line-height: 1.5em;
}

.innerprofile {
    margin-top: 20px;
}

.innerprofile p {
    margin-top: 20px;
}

.innerprofile h4 {
    margin-top: 20px;
    padding: 0.5em 0.5em;
    margin: 40px auto;
    line-height: 1.5em;
    color: #fff;
    text-align: center;
    /* color: #565656; */
    width: 350px;
    background: #A5CE20;
    box-shadow: 0px 0px 0px 10px #a5ce20;
    border: dashed 2px #fff;
    border-radius: 8px;
    display: block;
}

@media (min-width: 768px) {
    .innerpricelist h3 {
        font-size: 24px;
        margin-bottom: 30px;
    }

    .profileul li {
        line-height: 2em;
        font-size: 18px;
    }

    .profilediv h3 {
        font-size: 24px;
    }

    .profiletext {
        line-height: 2em;
        font-size: 18px;
    }

    p.profilepp {
        line-height: 2em;
        font-size: 18px;
    }

    .innerpricelist p {
        line-height: 2em;
        font-size: 18px;
    }

    .innerpricelist ul li {
        font-size: 18px;
        line-height: 2em;
    }

    .profileinnerdiv {
        display: flex;
        margin-top: 50px;
        flex-wrap: wrap;
        margin-bottom: 80px;
    }

    .profiletext {
        width: 55%;
    }

    .profilediv img {
        width: 360px;
        display: block;
        margin: 0 auto 50px;
    }

    .profileimgdiv {
        width: 42%;
        margin-left: 3%;
    }

    .supportdiv p {
        line-height: 2em;
        font-size: 18px;
    }

    .supportdiv ul li {
        line-height: 2em;
        font-size: 18px;
    }

    .innerprofile p {
        line-height: 2em;
        font-size: 18px;
    }

    .innerprofile h4 {
        line-height: 2em;
        font-size: 18px;
        width: 700px;
    }

    .innerprofile {
        margin-top: 50px;
    }
}

/*コラム*/
.voicelistdiv h3 {
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
}

.voicelistinner {
    margin-bottom: 50px;
}

.voicelistinner img {
    width: 50%;
    display: block;
    margin: 30px auto;
}

.voicelistinner p {
    line-height: 1.5em;
}

@media(min-width: 768px) {
    .voicelistinner div {
        display: flex;
        margin-top: 30px;
        flex-wrap: wrap;
    }

    .voicelistinner img {
        width: 20%;
        margin: 0;
        margin-top: auto;
    }

    .voicelistinner p {
        width: 75%;
        margin-left: 5%;
    }

    .voicelistdiv h3 {
        font-size: 24px;
    }
}




/*よくある質問投稿*/

.design04 {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    border-spacing: 0;
}

.design04 tr:nth-child(2n+1) {
    background: #FFF8EB;
    border-top: 1px solid #A56B00;
    border-bottom: 1px solid #A56B00;
}

.design04 th {
    padding: 10px;
    background: #A56B00;
    border-right: solid 20px #fff;
    color: #ffffff;
}

.design04 th:last-child {
    border-right: none;
}

.design04 td {
    padding: 10px;
}

.design04 td:last-child {
    border-right: none;
}

div.uppertable {
    overflow-x: scroll;
}

table.design04 {
    width: 100%;
    border-collapse: collapse;
    white-space: nowrap;
}

table.design04 th,
table.design04 td {
    padding: 4px 8px;
}

table.design04 td {
    padding-top: 20px;
    padding-bottom: 30px;
}

.postpbold {
    font-weight: bold;
}

.spanorangebold {
    background-color: #FD8E16;
    color: #fff;
    padding-left: 5px;
    padding-right: 5px;
}

.postdiv img {
    width: 70%;
}

.smallredbold {
    font-size: 14px;
    font-weight: bold;
}

.redbold {
    color: #E44F4B;
    font-weight: bold;
}

table.design04 a {
    text-decoration: all;
    color: normal;
}

/*エリア投稿*/
.areapostinner p.areaptop {
    line-height: 1.5em;
    margin-bottom: 50px;
}

div.areaposth2 h2 {
    font-size: 20px;
}

ul.areapostul li h3 {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 20px;
    line-height: 1.5em;
    font-size: 18px;
}

ul.areapostul {
    margin-bottom: 30px;
}

ul.areapostul li p {
    padding-left: 24px;
    padding-bottom: 20px;
    line-height: 1.5em;
}

ul.areapostul li h3:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/check.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: baseline;
}

div.areapostbottomdiv p {
    line-height: 1.5em;

}

div.areapostbottomdiv {
    margin-bottom: 50px;
}

div p.areabottomp {
    margin-bottom: 20px;
    font-size: 18px;
}

.areatovoice a {
    display: block;
    background-color: #FD981D;
    margin: 0 auto;
    width: 270px;
    text-align: center;
    padding-top: 15px;
    padding-bottom: 16px;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    border-radius: 35px;
}

.areatovoice a:before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 13px;
    background-image: url(../img/arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: bottom;
}

.areamerit p {
    line-height: 1.5em;
    /* border-bottom: 7px solid #FFD096; */
    padding-bottom: 10px;
    margin-bottom: 20px;
    background-repeat: no-repeat;
    background-size: 45px;
    height: 90px;
}

.areamerit p:first-child {
    background-image: url(../img/1.png);

}

.areamerit p:nth-child(2) {
    background-image: url(../img/2.png);
}

.areamerit p:nth-child(3) {
    background-image: url(../img/3.png);
}

.areamerit p:nth-child(4) {
    background-image: url(../img/4.png);
}

.areamerit p:nth-child(5) {
    background-image: url(../img/5.png);
}

@media(min-width:768px) {
    div.areapostbottomdiv {
        margin-bottom: 80px;
    }

    div.areaposth2 h2 {
        font-size: 30px;
    }

    .areapostinner p.areaptop {
        line-height: 2em;
        margin-bottom: 50px;
        font-size: 18px;
    }

    ul.areapostul li h3 {
        line-height: 2em;
        font-size: 18px;
    }

    ul.areapostul li p {
        line-height: 2em;
        font-size: 18px;
    }

    div.areapostbottomdiv p {
        line-height: 2em;
    }

    div.areapostbottomdiv p {
        line-height: 2em;
        font-size: 18px;
    }

    div p.areabottomp {
        font-size: 22px;
    }

    .areatovoice a {
        width: 380px;
        padding-top: 15px;
        padding-bottom: 16px;
        font-size: 20px;
    }

    .areatovoice a:before {
        width: 30px;
        height: 18px;
    }
}


/*コラム投稿*/
.listtopinner h3 {
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
}

.listtopinner img {
    margin-top: 20px;
    width: 200px;
    margin: 20px auto 20px;
    display: block;
}

.listtopinner p {
    line-height: 1.5em;
}

.listtopinner a {
    color: #000;
}

.listtopinner {
    margin-bottom: 50px;
}

@media(min-width:768px) {
    .listtopinner h3 {
        font-size: 24px;
    }

    .listtopinner p {
        line-height: 1.5em;
    }

    div.listaboutdiv {
        display: flex;
        flex-wrap: wrap;
        margin-top: 20px;
    }

    .listtopinner img {
        margin: 0;
        margin-bottom: 20px;
        margin-right: 3%;
    }

    .listtopinner p {
        font-size: 20px;
        line-height: 2em;
    }

    .listinneraboutdiv {
        width: 220px;
    }

    .listinneraboutimgdiv {
        width: 68%;
    }

    @media(min-width:768px) {
        .listinneraboutimgdiv {
            width: 79%;
        }
    }
}


/*コラム詳細*/
.columnpostdiv time {
    display: block;
    margin-bottom: 20px;
    margin-top: 20px;
    border-bottom: 1px solid #722929;
    padding-bottom: 20px;
}

.columnpostdiv img {
    display: block;
    margin-bottom: 20px;
    margin-top: 20px;
    width: 70%;
    margin: 30px auto 40px;
}

.columnpostdiv {
    margin-bottom: 50px;
}

.columnpostdiv .ctadiv img {
    width: 100%
}


/*傷病*/
.diseaseinner {
    margin-bottom: 50px;
}

.diseaseinnerabout img {
    width: 70px;
    padding-right: 15px;
    display: block;
}

.diseaseinnerabout h2 {
    font-size: 20px;
    line-height: 1.5em;
    padding-top: 15px;
    padding-bottom: 4px;
    text-align: left;
    width: 100%;
    display: block;
    color: #722929;
    padding-left: 20px;
}

.diseaseinnerabout a {
    color: #fff;
}

.diseaseinnerabout {
    padding-top: 14px;
    padding-bottom: 10px;
    padding-left: 5px;
    padding-right: 20px;
    margin-bottom: 20px;
    background-image: url(../img/eclipse.png);
    background-repeat: no-repeat;
    background-size: 72px;
    /* border-bottom: 29px solid #A5CE20; */
}

.diseaseinnerabout:nth-child(odd) {
    margin-right: 3%;
}

.diseasep {
    line-height: 1.5em;
    margin-bottom: 30px;
    color: #722929;
}

.diseaseinnerabout div {}

@media(min-width:768px) {
    .diseaseinnerabout h2 {
        font-size: 28px
    }

    .diseaseinnerabout h2 {
        padding-top: 16px;
    }

    .diseaseinnerabout {
        padding-bottom: 20px;
    }

    .diseaseinnerabout div {}

    .diseasep {
        line-height: 2em;
        font-size: 18px;
    }

    .diseaseinnerabout {
        background-size: 92px;
    }
}

/*症例カテゴリー*/
.shoreidiv h2 {
    text-align: center;
    color: #722929;
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 1.5em;
    margin-bottom: 30px;
}

.shoreidiv p {
    line-height: 1.5em;
    margin-bottom: 30px;
    margin-top: 20px;
}

.shoreidiv h3 {
    font-weight: bold;
    color: #722929;
    font-size: 20px;
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
    background-position: bottom;
    text-align: left;
    margin-bottom: 20px;
    line-height: 1.5em;
}

.shoreidiv ul li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 10px;
    line-height: 1.5em;
}

.shoreidiv ul {
    margin-bottom: 15px;
    margin-top: 15px;
}

.shoreidiv table {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    border-spacing: 0;
}

.shoreidiv table tr:nth-child(2n+1) {
    background: #FFF8EB;
}

.shoreidiv table th {
    padding: 10px;
    background: #A56B00;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1.5em;
}

.shoreidiv table th:last-child {
    border-right: none;
}

.shoreidiv table td {
    padding: 10px;
    line-height: 1.5em;
}

.shoreidiv table td:last-child {
    border-right: none;
}

.shoreidiv {
    margin-bottom: 50px;
}

@media(min-width:768px) {
    .shoreidiv h2 {
        font-size: 28px;
    }

    .shoreidiv p {
        line-height: 2em;
        font-size: 18px;
        margin-top: 40px;
    }

    .shoreidiv h3 {
        font-size: 24px;
    }

    .shoreidiv ul li {
        line-height: 2em;
        font-size: 18px;
    }

    .shoreidiv table td {
        line-height: 2em;
        font-size: 18px;
    }


}

/*受給事例*/
.examplediv {
    margin-bottom: 80px;
}

.examplediv p.aboutex {
    line-height: 1.5em;
    margin-bottom: 5%;
}

.examplediv h3 {
    text-align: center;
    display: block;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #722929;
}

.extitlediv p {
    color: #722929;
    margin-bottom: 30px;
    line-height: 1.5em;
}

.eximgdiv img {
    width: 200px;
    display: block;
    margin: 0 auto 30px;
}

.eximgdiv p {
    background-color: #62BF54;
    color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    line-height: 1.5em;
    border-radius: 8px;
}

.exinnerdiv {
    margin-bottom: 50px;
}

@media(min-width:768px) {
    .eximgdiv {
        order: 1;
        width: 22%;
        margin-right: 20px;
    }

    .examplediv p.aboutex {
        line-height: 2em;
        font-size: 18px;
        margin-bottom: 5%;
    }

    .extitlediv p {
        line-height: 2em;
        font-size: 18px;
    }

    .extitlediv {
        order: 2;
    }

    .exinnerdiv {
        margin-bottom: 50px;
        display: flex;
        flex-wrap: wrap;
    }

    .examplediv h3 {
        font-size: 20px;
        margin-bottom: 10px;

        text-align: left;
    }

    .eximgdiv img {
        width: 100%;
        display: block;
        margin: 0 0px 20px 0px;
    }

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

    .extitlediv {
        order: 2;
        width: 75%;
    }

    .shoreiexample {
        max-width: 900px;
        margin-left: auto;
        margin-right: auto;
    }

    .shoreiexample ul,
    .examplediv.shoreiexample ul {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .shoreiexample ul li,
    .examplediv.shoreiexample ul li {
        width: 48% !important;
        max-width: 48% !important;
        box-sizing: border-box !important;
        float: none !important;
        display: block !important;
        margin-bottom: 30px;
        background: #fff;
        border: 1px solid #eee;
        border-radius: 8px;
        padding: 20px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
        transition: transform 0.2s;
    }

    .shoreiexample ul li:hover {
        transform: translateY(-3px);
    }

    .shoreiexample .exinnerdiv {
        flex-direction: column;
        margin-bottom: 0;
    }

    .shoreiexample .eximgdiv {
        width: 100%;
        margin-right: 0;
        order: 2;
    }

    .shoreiexample .eximgdiv img {
        margin-bottom: 15px;
    }

    .shoreiexample .extitlediv {
        width: 100%;
        order: 1;
    }

    .shoreiexample h3 {
        font-size: 18px;
        text-align: left;
        border-bottom: 2px solid #A5CE20;
        padding-bottom: 8px;
        margin-bottom: 15px;
    }

    .shoreiexample .eximgdiv p {
        font-size: 13px;
        padding: 8px;
        margin-top: 10px;
    }





    .uppertable table {
        width: 100%;
        text-align: center;
        border-collapse: collapse;
        border-spacing: 0;
    }

    .uppertable table tr:nth-child(2n+1) {
        background: #FFF8EB;
    }

    .uppertable table th {
        padding: 10px;
        background: #A56B00;
        vertical-align: middle;
        color: #ffffff;
        line-height: 1.5em;
    }

    .uppertable table th:last-child {
        border-right: none;
    }

    .uppertable table td {
        padding: 10px;
        line-height: 1.5em;
    }

    .uppertable table td:last-child {
        border-right: none;
    }
}

/*お客様の一覧*/
.voicetopdiv {
    margin-bottom: 80px;
}

.voicetopdiv p.aboutvoice {
    line-height: 1.5em;
    margin-bottom: 5%;
}

.voicetopdiv h3 {
    text-align: center;
    display: inline-block;
    color: #722929;
    font-size: 20px;
    line-height: 1.5em;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #722929;
}

.voicetitlediv p {
    color: #722929;
    margin-bottom: 30px;
    line-height: 1.5em;
}

.voiceimgdiv img {
    width: 200px;
    display: block;
    margin: 0 auto 30px;
}

.voiceimgdiv p {
    background-color: #8B701E;
    color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    line-height: 1.5em;
    border-radius: 8px;
}

.voiceinnerdiv {
    margin-bottom: 50px;
}

@media(min-width:768px) {
    .voiceimgdiv {
        order: 1;
        width: 22%;
        margin-right: 20px;
    }

    .voicetitlediv {
        order: 2;
    }

    .voiceinnerdiv {
        margin-bottom: 50px;
        display: flex;
        flex-wrap: wrap;
    }

    .voicetopdiv h3 {
        font-size: 20px;
        margin-bottom: 10px;

        text-align: left;
    }

    .voiceimgdiv img {
        width: 100%;
        display: block;
        margin: 0 0px 20px 0px;
    }

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

    .voicetitlediv {
        order: 2;
        width: 75%;
    }

    .voicetitlediv p {
        line-height: 2em;
        font-size: 18px;
    }
}

/*各シングルページ*/
.singletitlediv p {
    text-align: center;
    font-weight: bold;
    font-size: 24px;
    padding-top: 35px;
    padding-bottom: 50px;
    color: #722929;
    background-image: url(../img/waveb.png);
    background-size: cover;
    background-repeat: no-repeat;
    margin-bottom: 20px;
    line-height: 1.5em;
}

.singletitlediv p span {
    font-size: 12px;
    display: block;
    text-align: center;
    margin-top: -12px;
}

/*.columnpostdiv h2 {
    color: #722929;
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 2px;
    line-height: 1.5em;
    margin-bottom: 30px;
}
*/
.columnpostdiv p {
    line-height: 2em;
    margin-bottom: 30px;
    font-size: 18px;
    margin-top: 15px;

}

.columnpostdiv h2 {
    font-weight: bold;
    color: #722929;
    font-size: 20px;
    background-position: bottom;
    text-align: left;
    background-size: 58%;
    background-repeat-y: no-repeat;
    margin-bottom: 20px;
    line-height: 1.5em;
    background: linear-gradient(transparent 70%, #FFD096 0%);
    display: inline;
}

.columnpostdiv ul li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 10px;
    line-height: 1.5em;
}

.columnpostdiv ul {
    margin-bottom: 15px;
    margin-top: 15px;
}

.columnpostdiv ol li {
    padding-left: 24px;
    text-indent: -24px;
    padding-bottom: 10px;
    line-height: 1.5em;
}

.columnpostdiv ol {
    margin-bottom: 15px;
    margin-top: 15px;
}

.columnpostdiv table {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
    border-spacing: 0;
}

.columnpostdiv table tr:nth-child(2n+1) {
    background: #FFF8EB;
}

.columnpostdiv table th {
    padding: 10px;
    background: #A56B00;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1.5em;
}

.columnpostdiv table th:last-child {
    border-right: none;
}

.columnpostdiv table td {
    padding: 10px;
    line-height: 2em;
    font-size: 18px;
}

.columnpostdiv table td:last-child {
    border-right: none;
}

.columnpostdiv {
    margin-bottom: 50px;
}

.columnpostdiv h1 {
    color: #722929;
    font-weight: bold;
    font-size: 20px;
    line-height: 1.5em;
}

@media(min-width:768px) {
    .singletitlediv p {
        font-size: 36px;
    }

    .singletitlediv p span {
        font-size: 14px;
    }

    .columnpostdiv h1 {
        font-size: 28px;
        line-height: 2em;
    }

    @media(min-width:1080px) {
        .singletitlediv p {
            font-size: 42px;
        }

        .singletitlediv p {
            padding-top: 80px;
            padding-bottom: 80px;
        }
    }
}

/*cta*/
.ctadiv {
    display: flex;
    flex-wrap: wrap;

}

.ctadiv a {
    width: 48%;
}

.ctadiv a:nth-child(2) {
    margin-left: 4%;
}

.ctap {
    color: #8B701E;
    line-height: 1.5em;
    font-weight: bold;
    text-align: center;
    font-size: 12px;
    margin-bottom: 60px;
}

.ctadiv a:nth-child(3) {
    margin-right: 4%;
}

@media(min-width:768px) {
    .ctap {
        font-size: 18px;
        margin-bottom: 100px;
    }
}

/*著者情報*/
.authordiv {
    border: 1px solid #c0c0c0;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 15px;
}

.authordiv p {
    line-height: 1.5em;
}

.authordiv img {
    width: 170px;
}

@media(min-width:768px) {
    .authordiv {
        display: flex;
        justify-content: space-around;
        flex-wrap: wrap;
    }

    .authordiv p {
        line-height: 2em;
        font-size: 16px;
    }

    .authordiv div {
        width: 75%;
    }

    .authordiv div:nth-child(2) {
        width: 20%;
    }

    .authordiv img {
        width: 170px;
    }

    @media(min-width:1080px) {
        .authordiv img {
            margin-left: 5%;
        }
    }
}

.updatep {
    text-align: right;
}



.dldiv h2 {
    text-align: center;
    font-size: 34px;
    color: #722929;
    margin-bottom: 20px;
}

footer iframe {
    margin-top: 20px;
    width: 100%;
    height: 180px;
}

/* もっと見るボタン */
button#load-more-btn {
    display: block;
    width: 270px;
    /* サイト内の他のボタンと統一 */
    margin: 0 auto;
    background-color: #FD981D;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
    padding: 15px 0;
    border-radius: 35px;
    border: none;
    cursor: pointer;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.26);
    transition: opacity 0.3s;
    outline: none;
    -webkit-appearance: none;
    line-height: 1.5em;
}


button#load-more-btn:hover {
    opacity: 0.8;
}

.load-more-container {
    clear: both;
    width: 100%;
}

@media (min-width: 768px) {
    .shoreiexample .eximgdiv img {
        max-width: 285px;
        display: block;
        margin: 0 auto;
    }
}

/* Update 2026-01-21 Top Page CTA */
.top-cta-container {
    margin-bottom: 40px;
    margin-top: 20px;
    text-align: center;
    font-family: "Yu Mincho", "YuMincho", serif;
}

.cta-box {
    border-radius: 15px;
    overflow: hidden;
    margin-bottom: 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    background-color: #FFF8EB;
    /* Site beige background */
    border: 2px solid #FD981D;
    /* Site Orange */
}

.cta-header {
    background-color: #FD981D;
    /* Site Orange */
    color: #fff;
    font-weight: bold;
    padding: 12px;
    font-size: 18px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-family: 'Zen Maru Gothic';
}

.cta-body {
    padding: 20px 15px;
}

.cta-lead {
    color: #722929;
    /* Site Brown */
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 1.6;
    font-size: 15px;
}

.cta-contact-row {
    margin-bottom: 10px;
}

.cta-tel {
    display: block;
    font-size: 30px;
    font-weight: bold;
    color: #722929;
    /* Site Brown */
    text-decoration: none;
    line-height: 1.2;
    font-family: "Times New Roman", Times, serif;
    margin-bottom: 10px;
    transition: opacity 0.3s;
    font-family: 'Noto Sans JP';
}

.cta-tel:hover {
    opacity: 0.7;
}

.tel-icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.tel-img-icon {
    width: 30px !important;
    /* Force override generic img width */
    height: auto;
    display: inline-block !important;
    vertical-align: middle;
    margin: 0 !important;
}

.cta-hours {
    color: #722929;
    font-weight: bold;
    font-size: 15px;
    line-height: 1.5;
}

.cta-note {
    font-size: 13px;
}

.cta-sub-note {
    font-size: 12px;
    color: #722929;
    margin-top: 15px;
    line-height: 1.4;
}

@media (min-width: 768px) {
    .top-cta-container {
        max-width: 800px;
        margin-left: auto;
        margin-right: auto;
    }

    .cta-header {
        font-size: 24px;
        padding: 15px;
    }

    .cta-body {
        padding: 30px;
    }

    .cta-lead {
        font-size: 20px;
        margin-bottom: 25px;
    }

    .cta-contact-row {
        justify-content: center;
        align-items: center;
        gap: 30px;
    }

    .cta-tel {
        font-size: 60px;
        margin-bottom: 0;
    }

    .cta-hours {
        text-align: center;
        font-size: 16px;
    }

    .tel-img-icon {
        width: 40px !important;
    }

    .cta-sub-note {
        font-size: 13px;
    }
}

div.shoreidiv .toc-title {
    margin-top: 0;
    margin-bottom: 0;
}

/* 目次アンカーずれ対策 */
h2[id^="toc-"] {
    scroll-margin-top: 300px;
}

.stbold {
    font-size: 18px;
}

/* お知らせボックス */
.top-news-notice {
    background-color: #fff;
    border: 2px solid #FD981D;
    border-radius: 12px;
    padding: 20px 24px;
    margin: 25px auto 45px;
    max-width: 860px;
    box-shadow: 0 4px 12px rgba(253, 152, 29, 0.08);
}

.top-news-notice__header {
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px dashed #FD981D;
}

.top-news-notice__title {
    font-size: 18px;
    font-weight: bold;
    color: #FD981D;
    margin: 0;
    line-height: 1.4;
    padding-left: 12px;
    border-left: 4px solid #FD981D;
}

.top-news-notice__content p {
    font-size: 14px;
    line-height: 1.8;
    color: #333;
    margin: 0;
}

@media (max-width: 767px) {
    .top-news-notice {
        padding: 15px;
        margin-top: 20px;
    }

    .top-news-notice__header {
        margin-bottom: 10px;
        padding-bottom: 8px;
    }

    .top-news-notice__title {
        font-size: 16px;
        padding-left: 10px;
        border-left-width: 3px;
    }

    .top-news-notice__content p {
        font-size: 13px;
        line-height: 1.7;
    }
}

/* ===================================================
   Top Movie Section (FV直下の1分紹介動画)
=================================================== */
.top-movie-container {
    margin-top: 25px;
    margin-bottom: 30px;
}

.top-movie-inner {
    max-width: 800px;
    margin: 0 auto;
    background-color: #FFF8EB;
    border: 2px solid #FD981D;
    border-radius: 15px;
    padding: 24px 20px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08);
    text-align: center;
}

.top-movie-title {
    color: #722929;
    font-size: 20px;
    font-weight: bold;
    font-family: 'Zen Maru Gothic', 'Noto Sans JP', sans-serif;
    line-height: 1.5;
    margin: 0 0 16px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.top-movie-title::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../img/greenflower.png) no-repeat center / contain;
    flex-shrink: 0;
}

.top-movie-title span {
    color: #FD981D;
    font-size: 1.25em;
    padding: 0 2px;
}

.top-movie-player-wrap {
    position: relative;
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    aspect-ratio: 16 / 9;
    border-radius: 10px;
    overflow: hidden;
    background-color: #000;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.top-movie-player {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

@media (max-width: 767px) {
    .top-movie-container {
        margin-top: 15px;
        margin-bottom: 25px;
    }

    .top-movie-inner {
        padding: 16px 12px;
        border-radius: 12px;
    }

    .top-movie-title {
        font-size: 16px;
        margin-bottom: 12px;
        gap: 6px;
    }

    .top-movie-title::before {
        width: 18px;
        height: 18px;
    }

    .top-movie-title span {
        font-size: 1.2em;
    }

    .top-movie-player-wrap {
        border-radius: 8px;
    }
}