/* 規約 */

.kiyaku-bc {
    /* background-color: #fff0f0; */
}
.kiyaku {
    margin: 0.3rem;
    padding: 1rem;
    background-color: #fff7f7;
    border: #ffe9e9 solid 1px;
}
.kiyaku-title {
    margin-bottom: 1rem;
}
.kiyaku-title-row {
    font-size: 1.2rem;
    font-weight: bold;
}

.kiyaku-main-midasi {
    border-left: rgb(235, 87, 87) solid 8px;
    padding-left: 0.3rem;
    font-size: 1rem;
    font-weight: bold;
}
.kiyaku-sub-midasi {
}
.kiyaku-naiyou {
}
.kiyaku-bunsyou {
    background-color: #fffcf8;
    border: #ffd7d7 solid 1px;
    padding: 0.5rem;
    margin-top: 0.5rem;
    margin-bottom: 1.5rem;
}
.kiyaku-bunsyou-row {
    margin-bottom: 0.5rem;
}

/************************
/* プライバシーポリシー
*************************/
.pp {
    margin: 0.3rem;
    padding: 1.2rem;
    background-color: #fcfdff;
    border: #d9d7ff solid 1px;
}
.pp-text-waku {
    padding: 0.5rem;
    /* margin: ; */
    /* background-color: #fff; */
    /* border: #ddd solid 2px; */
    font-weight: bold;
    color: #333;
    letter-spacing: 0.05rem;
    margin-bottom: 1.5rem;
}
.pp-main-midasi {
    border-left: #61a3f3 solid 8px;
    padding-left: 0.3rem;
    font-size: 1rem;
    font-weight: bold;
}
.pp-bunsyou {
    background-color: #fdfeff;
    border: #aac9d7 solid 1px;
    padding: 0.5rem;
    margin-top: 0.5rem;
    margin-bottom: 1.5rem;
}
/****************************
/* Q&A
****************************/
#qa {
    padding: 1%;
    margin: 1%;
    /* background-color: #fffaee; */
    /* border: #f7f7d1 solid 1px; */
}
.cp_qa *,
.cp_qa *:after,
.cp_qa *:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.cp_qa {
    /* background-color: #ebf1ff; */
    /* border: #c1d6ff solid 1px; */
    padding: 0.1%;
}
.cp_qa .cp_actab {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin-bottom: 1px;
    color: #fff;
}
.cp_qa .cp_actab input {
    position: absolute;
    opacity: 0;
}
/* 質問 */
.situmon {
    margin-right: 2rem;
}
.cp_qa .cp_actab label {
    /* font-weight: bold; */
    line-height: 1.6;
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 0 0.8rem 0;
    padding: 0.5rem 0 0.5rem 0.5rem;
    cursor: pointer;
    border-bottom: 3px solid #aad4ff;
    border-left: #aad4ff solid 8px;
    /* background-color: #07427b; */
    background-color: #116fb3;
    font-weight: bold;
}
.cp_qa .cp_actab label:hover {
    color: rgb(210, 222, 255);
}
.q-mark {
    /* background-color: #FFF;
    font-size: 1.1rem;
    color: #07427b;
    border-radius: 15px;
    padding: 3px;
    margin-right: 0.5rem; */

    position: relative;
    display: inline-block;
    margin: 0.4rem 0.5rem 0.4rem 0;
    padding: 0 5px;
    min-width: 2.5rem;
    height: 2.5rem;
    line-height: 2.5rem;
    text-align: center;
    color: #07427b;
    font-size: 1rem;
    font-weight: bold;
    background: #ffffff;
    border-radius: 50%;
    box-sizing: border-box;
}
.q-mark:before {
    content: '';
    position: absolute;
    bottom: -0.5rem;
    right: -0.7rem;
    margin-top: -1rem;
    border: 12px solid transparent;
    border-left: 16px solid #ffffff;
    z-index: 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.cp_qa .cp_actab p span {
    font-weight: bold;
    font-size: 1.1rem;
    color: rgb(255, 80, 80);
}
/* 答え */
.cp_qa .cp_actab .cp_actab-content {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.5s ease;
    transition: max-height 0.5s ease;
    color: #333;
    /* margin: 0.5rem; */
}
.cp_qa .cp_actab .cp_actab-content p {
    margin: 0.5rem 0.5rem 1.5rem 0.5rem;
    padding: 1rem;
    background: ##fff0f0;
    border: #ffbebe solid 1px;
}
/* 質問を開いた時の仕様 */
/* --アイコン */
.cp_qa .cp_actab input:checked ~ label {
    /* font-weight: bold; */
    color: rgb(208, 223, 255);
}
/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
    max-height: 20rem;
}
/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab label::after {
    line-height: 1.6;
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    width: 3em;
    margin-top: -12.5px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-align: center;
}
.cp_qa .cp_actab input[type='checkbox'] + label::after {
    content: '▼';
}
.cp_qa .cp_actab input[type='checkbox']:checked + label::after {
    -webkit-transform: rotateX(180deg);
    transform: rotateX(180deg);
}

/* *************
/*Toho-gus
 ****************/
/*---------------------------------------------
page-faq
---------------------------------------------*/
.page-faq .btn {
    font-size: 16px;
    font-size: 1rem;
}

.page-faq .faq-navi1 {
    background: #fff;
    border: 1px solid #d2d3d6;
    border-radius: 12px;
    margin-bottom: 80px;
}

.page-faq .faq-navi1__item {
    -webkit-box-sizing: border-box;
    border-bottom: 1px dotted #d2d3d6;
    box-sizing: border-box;
    display: block;
    padding: 20px 20px 20px 70px;
    position: relative;
}

.page-faq .faq-navi1__item span {
    content: '';
    height: 42px;
    left: 15px;
    position: absolute;
    top: 10px;
    width: 42px;
}

.page-faq .faq-navi1__item:after {
    -webkit-transform: translateY(-50%);
    background: url(/-/media/Tohogas/common/img/common/icon_arrow_bottom_blue.svg) no-repeat center;
    background-size: contain;
    content: '';
    height: 12px;
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
}

.page-faq .faq-navi1__item:hover {
    background: #ebeff6;
}

@media screen and (max-width: 767px) {
    .page-faq .faq-navi1__item {
        padding: 20px 60px 20px 70px;
    }
    .page-faq .faq-navi1__item span {
        -webkit-transform: translateY(-50%);
        content: '';
        height: 42px;
        left: 15px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 42px;
    }
    .page-faq .faq-navi1__item:after {
        -webkit-transform: translateY(-50%);
        background: url(/-/media/Tohogas/common/img/common/icon_arrow_bottom_blue.svg) no-repeat center;
        background-size: contain;
        content: '';
        height: 12px;
        position: absolute;
        right: 25px;
        top: 50%;
        transform: translateY(-50%);
        width: 18px;
    }
    .page-faq .faq-navi1__item:hover {
        background: #ebeff6;
    }
}

.page-faq .style-layout-1c {
    margin-bottom: 60px;
}

@media screen and (max-width: 767px) {
    .page-faq .attention .link {
        display: block;
        margin-bottom: 10px;
        text-align: left;
    }
}

.page-faq .faq-layout-wrap {
    margin-bottom: 50px;
}

.page-faq .faq-layout {
    border-radius: 12px;
    margin-bottom: 20px;
    overflow: hidden;
}

.page-faq .faq-layout__q {
    -webkit-box-sizing: border-box;
    background: #07427b;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px 70px 20px 70px;
    position: relative;
}

.page-faq .faq-layout__q:before {
    background: url(/-/media/Tohogas/common/img/Faq/icon_q_white.svg) no-repeat center;
    background-size: contain;
    content: '';
    height: 42px;
    left: 15px;
    position: absolute;
    top: 15px;
    width: 42px;
}

.page-faq .faq-layout__q .btn-ac {
    -webkit-box-sizing: border-box;
    background: #fff;
    border-radius: 10px;
    box-sizing: border-box;
    color: #07427b;
    display: block;
    font-weight: 500;
    height: 32px;
    position: absolute;
    right: 20px;
    top: 20px;
    width: 32px;
}

.page-faq .faq-layout__q .btn-ac:after {
    -webkit-transform: translateY(-50%);
    background: url(/-/media/Tohogas/common/img/common/icon_arrow_bottom_navy.svg) no-repeat center;
    background-size: contain;
    border: 0;
    content: '';
    height: 10px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
}

.page-faq .faq-layout__q .btn-ac.open:after {
    background: url(/-/media/Tohogas/common/img/common/icon_arrow_top_navy.svg) no-repeat center;
    background-size: contain;
}

.page-faq .faq-layout__a {
    -webkit-box-sizing: border-box;
    background: #fff;
    box-sizing: border-box;
    display: none;
    padding: 20px 20px 20px 70px;
    position: relative;
}

.page-faq .faq-layout__a span {
    content: '';
    height: 42px;
    left: 15px;
    position: absolute;
    top: 15px;
    width: 42px;
}

.style-h2 {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #07427b;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.4;
    margin-top: 2rem;
    margin-bottom: 1.5rem;
    padding-left: 12px;
    border-left: #5d7587 solid 6px;
}
@media screen and (max-width: 767px) {
    .page-faq .faq-layout__q {
        font-size: 16px;
        font-size: 1rem;
        padding: 20px 70px 20px 70px;
    }
    .page-faq .faq-layout__q:before {
        -webkit-transform: translateY(-50%);
        background: url(/-/media/Tohogas/common/img/Faq/icon_q_white.svg) no-repeat center;
        background-size: contain;
        content: '';
        height: 42px;
        left: 15px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 42px;
    }
    .page-faq .faq-layout__q .btn-ac {
        -webkit-box-sizing: border-box;
        background: #fff;
        border-radius: 10px;
        box-sizing: border-box;
        color: #07427b;
        display: block;
        font-weight: 500;
        height: 32px;
        position: absolute;
        right: 20px;
        top: 20px;
        width: 32px;
    }
    .page-faq .faq-layout__q .btn-ac:after {
        -webkit-transform: translateY(-50%);
        background: url(/-/media/Tohogas/common/img/common/icon_arrow_bottom_navy.svg) no-repeat center;
        background-size: contain;
        border: 0;
        content: '';
        height: 10px;
        left: 0;
        margin: 0 auto;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 14px;
    }
    .page-faq .faq-layout__q .btn-ac.open:after {
        background: url(/-/media/Tohogas/common/img/common/icon_arrow_top_navy.svg) no-repeat center;
        background-size: contain;
    }
    .page-faq .faq-layout__a {
        -webkit-box-sizing: border-box;
        background: #fff;
        box-sizing: border-box;
        display: none;
        padding: 20px 20px 20px 70px;
        position: relative;
    }
    .page-faq .faq-layout__a span {
        content: '';
        height: 42px;
        left: 15px;
        position: absolute;
        top: 15px;
        width: 42px;
    }

    .style-h2 {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        color: #07427b;
        font-size: 1.2rem;
        font-weight: 700;
        line-height: 1.4;
        margin-top: 2rem;
        margin-bottom: 1.5rem;
        padding-left: 12px;
        border-left: #5d7587 solid 6px;
    }
}

/* .style-h2:before {
    -webkit-transform: translateY(-50%);
    background: #07427b;
    content: "";
    display: block;
    height: 76%;
    left: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
} */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -webkit-transition: all 0.3s ease-out;
    background: #fffce8;
    color: #031c33;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.6;
    transition: all 0.3s ease-out;
    word-break: break-all;
}
