@charset "utf-8";

/*
---------------------------------------------
    navigation01 ※TOP、下層共通
*/
.header-area-upper {
    background: var(--site-color02);
    padding: 0.4rem var(--s1) var(--s1);
    text-align: right;
}

.header-title {
    font-size: 1.2rem;
    display: inline-block;
    position: relative;
    color: #fff;
}

.header-title::before {
    content: "PR";
    padding: .2rem;
    color: #212121;
    background-color: #ffffff;
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: -2.4rem;
}

.header-title a {
    text-decoration: none;
}

.header-title a:hover {
    text-decoration: underline;
}

.gnavi-ctrl {
    display: none;
}

.gnavi-btn {
    display: none;
}

.gnavi-btn-close {
    display: none;
}

.gnavi-area {
    display: none;
}

.toggle-content {
    display: none;
}

/*------------------------------------------
 Global menu settings
*/
.navigation01-menu-area {
    background: #fff;
    padding: 2.5rem 0;
}

.navigation01-menu {
    display: flex;
    background-color: #fff;
    justify-content: center;
    align-items: center;
}

.navigation01-menu li::before {
    display: none;
}

.navigation01-menu li::after {
    content: "";
    position: absolute;
    background: #939393;
    width: 1px;
    height: 80%;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.navigation01-menu li:last-child::after {
    display: none;
}

.navigation01-menu li a {
    padding: var(--s2) var(--s3);
    display: block;
    text-decoration: none;
    position: relative;
    font-size: 1.4rem;
    text-align: center;
    font-weight: 900;
}

.navigation01-menu li a:hover {
    opacity: .6;
}

/*
---------------------------------------------
    sp settings
*/
@media screen and (max-width: 767px) {
    .header-title {
        padding-left: 2rem;
        text-align: center;
        line-height: 1.4;
    }

    .header-area-upper {
        text-align: center;
    }

    .header-title::before {
        transform: none;
        top: 0;
        left: 0;
    }

    .gnavi-ctrl {
        display: block;
        transition: opacity 0.6s, visibility 0.6s;
        opacity: 0;
        visibility: hidden;
    }

    .gnavi-ctrl.is-show {
        opacity: 1;
        visibility: visible;
    }

    #low-header .gnavi-ctrl {
        opacity: 1;
        visibility: visible;
    }

    .gnavi-btn {
        width: var(--s7);
        height: var(--s6);
        background: #0E1B37;
        display: block;
        position: fixed;
        top: 4rem;
        right: 0;
        z-index: 200;
        cursor: pointer;
    }

    .gnavi-btn span {
        width: var(--s4);
        height: 0.2rem;
        display: inline-block;
        background: #fff;
        position: absolute;
        left: 1.2rem;
        transform: translate(0, -50%);
        transition: transform 0.4s, opacity 0.4s;
    }

    .gnavi-btn span:nth-of-type(1) {
        top: 1.7rem;
    }

    .gnavi-btn span:nth-of-type(2) {
        top: 2.4rem;
    }

    .gnavi-btn span:nth-of-type(3) {
        top: 3.1rem;
    }

    .gnavi-btn.is-active span:nth-of-type(1) {
        transform: translateY(0.7rem) rotate(-45deg);
    }

    .gnavi-btn.is-active span:nth-of-type(2) {
        opacity: 0;
    }

    .gnavi-btn.is-active span:nth-of-type(3) {
        transform: translateY(-0.7rem) rotate(45deg);
    }

    .gnavi-btn-close {
        width: 80%;
        margin: 0 auto;
        padding: var(--s2);
        background: #fff;
        display: block;
        text-align: center;
    }

    .gnavi-btn-close__inner {
        padding: 0 0 0 var(--s3);
        display: inline-block;
        color: #4B473C;
        font-weight: 700;
        position: relative;
    }

    .gnavi-btn-close__inner::before {
        content: "";
        width: 1em;
        height: 0.2rem;
        background: #4B473C;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translate(0, -50%) rotate(45deg);
    }

    .gnavi-btn-close__inner::after {
        content: "";
        width: 1em;
        height: 0.2rem;
        background: #4B473C;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translate(0, -50%) rotate(135deg);
    }

    .gnavi-area {
        width: 100%;
        height: 100vh;
        padding: var(--s3) var(--s1) var(--s10);
        display: block;
        background: #F6F6EF;
        overflow-x: hidden;
        overflow-y: auto;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 100;
        transform: translateX(100%);
        transition: transform 0.8s ease, opacity 0.8s ease;
        opacity: 0;
    }

    .gnavi-title {
        min-height: var(--s6);
        margin: 0 var(--s8);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.6rem;
        font-weight: 700;
        text-align: center;
        line-height: 1.5;
    }

    .gnavi-title img {
        width: 18rem;
    }

    .gnavi-pc {
        display: none;
    }

    .gnavi-list {
        border-bottom: 1px solid #A7A7A7;
        position: relative;
    }

    .gnavi-list li {
        padding-left: 0;
    }

    .gnavi-list__item::before {
        display: none;
    }

    .gnavi-list__link {
        width: 100%;
        margin: 0 auto;
        padding: var(--s2) var(--s4) var(--s2) var(--s2);
        border-top: 1px solid #A7A7A7;
        display: block;
        font-weight: 700;
        line-height: 2;
        text-decoration: none;
        position: relative;
    }

    .gnavi-list__link::after {
        content: "";
        width: 1.8rem;
        height: 2.2rem;
        background: url("img/arrow-01-black-right.svg") no-repeat center/100% auto;
        position: absolute;
        top: 50%;
        right: var(--s2);
        transform: translate(0, -50%) rotate(0);
        transition: transform 0.3s;
        background-size: 50%;
    }

    .gnavi-list__link--toggle::after {
        background-image: url("img/arrow-01-black-down.svg");
        background-size: auto 0.9rem;
    }

    .gnavi-list__link--toggle.is-open::after {
        transform: translate(0, -50%) rotate(180deg);
    }

    .gnavi-list__sub {
        width: 100%;
        background: #F6F6EF;
    }

    .gnavi-list__low .gnavi-list__link {
        padding: var(--s2) var(--s4) var(--s2) var(--s4);
    }

    .gnavi-list__low .gnavi-list__link::after {
        content: "└";
        background: none;
        transform: translateY(-50%);
        position: absolute;
        top: 40%;
        left: 1rem;
    }

    .is-gnavi-open .gnavi-area {
        opacity: 1;
        transform: translateX(0);
    }

    .gnavi-list__sub.toggle-content .gnavi-list__link {
        background: #fff;
    }

    /*------------------------------------------
	Global menu settings
	*/
    .navigation01-menu-area {
        display: none;
    }
}

/* ---------------------------------------------
index02(目次)
--------------------------------------------- */
.onb-index02-frame {
    width: 100%;
}

.onb-index02-wrap {
    margin: var(--s6) auto;
    padding: var(--s1) var(--s3) var(--s1) var(--s3);
    background-color: #f6f6ef;
    /* border: #222222 1px solid; */
    position: relative;
}

.onb-index02-title {
    padding: var(--s2) var(--s2) var(--s2) var(--s2);
    color: var(--site-color03);
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1;
    position: relative;
}

.chapter {
    padding: var(--s2) var(--s2) var(--s2) var(--s5);
    font-weight: 700;
    counter-reset: number 0;
}

#toc ul.-chapter li {
    position: relative;
}

#toc ul.chapter li:not(.chapter-h-three)::before {
    counter-increment: number 1;
    content: counter(number, decimal-leading-zero);
    color: var(--site-color03);
    position: absolute;
    font-weight: bold;
    top: 0.5rem;
    left: -1.8em;
}

#toc ul li.chapter-h {
    margin: 0 0 0 var(--s2);
    font-size: 1.4rem;
    line-height: 1.7;
    position: relative;
    padding: 0.5rem 0;
}

#toc ul li.chapter-h a {
    display: block;
    text-decoration: none;
}

#toc ul li.chapter-h {
    margin-left: var(--s2);
    position: relative;
}

#toc ul li.chapter-h-three {
    margin-left: var(--s4);
    position: relative;
}

#toc ul li.chapter-h::before,
#toc ul li.chapter-h-three::before {
    position: absolute;
    top: 0;
    left: -1.8em;
}

#toc ul li.chapter-h-three::before {
    content: "└";
}

/*----------------------------------------------
    more content settings
*/
#toc.onb-index02-gradation {
    margin-top: 1.4rem;
    height: auto;
    max-height: 12rem;
    overflow: hidden;
    transition: max-height 1s;
    border-top: 1px solid #222222;
    position: relative;
}

#toc.onb-index02-gradation::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    transition: 0.3s;
    background: linear-gradient(to bottom, transparent 0%, #fff 100%);
}

#toc.onb-index02-gradation.is-open::after {
    display: none;
}

.onb-index02-btn {
    max-width: 32rem;
    margin: 2rem auto 0 auto;
    position: relative;
    z-index: 5;
}

.onb-index02-btn span {
    width: 100%;
    margin: var(--s5) auto;
    padding: 2rem 6rem 2rem 3rem;
    border-radius: 4rem;
    background: url('./img/acc-off.svg') no-repeat 95% center #fff;
    display: block;
    text-align: center;
    font-weight: bold;
    transform: translate(0, 0);
    transition: transform 0.3s;
    cursor: pointer;
    border: 1px solid var(--site-color03);
    color: var(--site-color03);
    z-index: 1;
}

.onb-index02-btn:hover span {
    transform: translate(.8rem, .8rem);
}

.onb-index02-btn.is-open span {
    background: url('./img/acc-on.svg') no-repeat 95% center #fff;
    background-size: 12px auto;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    #toc .onb-index02-chapter {
        padding-left: var(--s3);
    }

    .onb-index02-btn:hover span {
        transform: none;
    }
}

/* ---------------------------------------------
目次アコーデイオン
--------------------------------------------- */
#toc.onb-index02-gradation {
    padding-top: 1.4rem;
    height: auto;
    max-height: 12rem;
    overflow: hidden;
    transition: max-height 1s;
    /* border-top: 2px solid  var(--site-color03); */
    position: relative;
    margin-top: 0;
}

#toc.onb-index02-gradation::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: none;
    width: 100%;
    height: 100%;
    transition: 0.3s;
    background: linear-gradient(to bottom, transparent 0%, #fff 100%);
}

#toc.onb-index02-gradation.is-open::after {
    display: none;
}

.acc-list-frame {
    border: 1px solid var(--site-color09);
}

.acc-list-title {
    padding: var(--s2);
    background-color: var(--site-color09);
    font-weight: 700;
}

.acc-list-content {
    padding: var(--s2);
}

.acc-list div {
    padding-bottom: var(--s2);
    display: flex;
    border-bottom: 1px solid var(--site-color09);
}

.acc-list div:last-child {
    border: none;
}

.acc-list div dt,
.acc-list div dd {
    width: 50%;
    line-height: 1.2;
}

.acc-list div dd span {
    font-size: 1.4rem;
}

/*----------------------------------------------
    more content settings
*/
.more-content-gradation {
    position: relative;
    height: auto;
    max-height: 12rem;
    overflow: hidden;
    transition: max-height 1s;
}

.more-content-gradation::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    transition: 0.3s;
    background: linear-gradient(to bottom, transparent 0%, #ffffff 100%);
}

.more-content-gradation.is-open::after {
    display: none;
}

.acc-list-more-btn {
    max-width: 32rem;
    margin: 2rem auto 0 auto;
    padding: 2rem 6rem 2rem 3rem;
    border: .2rem solid var(--site-color05);
    text-align: center;
    position: relative;
    transition: opacity 0.3s;
    cursor: pointer;
}

.acc-list-more-btn::before {
    content: "";
    width: 2rem;
    height: .2rem;
    background: #000;
    position: absolute;
    top: 50%;
    right: 3rem;
    transform: translate(0, -50%);
}

.acc-list-more-btn::after {
    content: "";
    width: .2rem;
    height: 2rem;
    background: #000;
    position: absolute;
    top: 50%;
    right: 3.9rem;
    transform: translate(0, -50%);
    transition: transform 0.3s;
}

.acc-list-more-btn:hover {
    opacity: 0.6;
}

.acc-list-more-btn.is-open::after {
    transform: translate(0, -50%) rotate(270deg);
}

/* ---------------------------------------------
related-article01(関連記事)
--------------------------------------------- */
.related-article01-frame {
    /* border: 1px solid var(--site-color01); */
    margin: var(--s6) auto;
    padding: var(--s1) var(--s3) var(--s4) var(--s3);
    background: #F6F6EF;
    position: relative;
}

.related-article01-title {
    padding: var(--s2) var(--s2) var(--s2) var(--s4);
    font-size: 2rem;
    font-weight: bold;
    line-height: 1;
    position: relative;
    border-bottom: 1px solid #9d9d9d;
    margin-bottom: 1.5rem;
}

.related-article01-list {
    padding: var(--s2) 0 var(--s2) var(--s2);
    font-weight: 700;
}

.related-article01-list li {
    margin: 0 0 0 var(--s2);
    padding-left: 1.5em;
    font-size: 100%;
    line-height: 1.7;
    position: relative;
}

.related-article01-list li+li {
    margin-top: 10px;
}

.related-article01-list li::before {
    content: "";
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 50%;
    background-color: #e99897;
    position: absolute;
    top: .6rem;
    left: 0;
}

.related-article01-list a {
    display: block;
    text-decoration: none;
}

.related-article01-list a:hover {
    opacity: 0.6;
}

.relations-box.relations-box--column {
    display: flex;
    gap: 10px;
}

.relations-box__pic {
    flex: 0 0 150px;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .related-article01-list {
        padding: 0;
    }

    .related-article01-list li {
        margin-left: 0;
    }

    .relations-box__pic {
        flex: 0 0 100px;
    }

    .related-article01-title {
        font-size: 1.8rem;
        padding: var(--s2) var(--s2) var(--s2) 0;
    }
}

/*------------------------------------------------------------
    TOPコンテンツ
*/
.sec01,
.sec02,
.sec03,
.sec04,
.sec05,
.sec06,
.sec07,
.sec08 {
    padding-top: 6rem;
    padding-bottom: 8rem;
}

.sec04,
.sec06 {
    background: #f8f8f8;
}

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

    .sec01,
    .sec02,
    .sec03,
    .sec04,
    .sec05 {
        padding-top: 3rem;
        padding-bottom: 4rem;
    }

}

.section-title07-frame {
    margin-top: 5rem;
    position: relative;
}

.section-title07-frame::before {
    content: "INDEX";
    font-size: 9.6rem;
    font-weight: bold;
    color: var(--site-color04);
    position: absolute;
    top: -8rem;
    left: 50%;
    transform: translateX(-50%);
}

.section-title07 {
    width: 100%;
    padding: var(--s4) var(--s12);
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .section-title07-frame {
        background-color: transparent;
    }

    .section-title07-frame::before {
        padding: var(--s1) 0;
        font-size: 2.4em;
        top: -3.4rem;
    }

    .section-title07 {
        padding: var(--s2) var(--s2) 0 var(--s2);
        font-size: 2.4rem;
    }
}

/*------------------------------------------
    3box column settings
*/
.column-small {
    padding: var(--s2);
    /* border: 1px solid var(--site-color02); */
    background: #f6f6ef;
}

.thb-box-full {}

.arrow-title {
    margin-bottom: 2.3rem;
    padding: var(--s2);
    font-size: 1.9rem;
    font-weight: 700;
    background-color: var(--site-color02);
    color: #ffffff;
    text-align: center;
    line-height: 1.5;
    position: relative;
}

.arrow-title::after {
    content: "";
    width: 0;
    height: 0;
    border-top: 1.5rem solid transparent;
    border-left: 1.5rem solid transparent;
    border-right: 1.5rem solid var(--site-color02);
    border-bottom: 1.5rem solid var(--site-color02);
    transform: translateX(-50%) rotate(45deg);
    position: absolute;
    left: 50%;
    bottom: -1.3rem;
}

.arrow-title-sub {
    padding: var(--s1);
    margin-bottom: .8rem;
    background-color: #817761;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1;
    display: inline-block;
}

.arrow-title-small {
    font-size: 2rem;
    color: #ffa4a2;
    display: inline-block;
    padding-top: 1.4rem;
    padding-bottom: 0.3rem;
}

.arrow-title-big {
    color: #ffffff;
    font-size: 1.9rem;
    line-height: 1.7;
    background: linear-gradient(transparent 90%, #ffa4a2 90%);
}

.img-title-area {
    display: flex;
    background-color: var(--site-color04);
    align-items: end;
}

.img-title-image {
    width: 36%;
    padding-left: var(--s1);
}

.img-title-image img {
    margin-top: -4rem;
    width: 100%;
}

.img-title {
    width: 64%;
    padding: var(--s2) var(--s2) var(--s2) var(--s1);
    line-height: 1.5;
    font-size: 1.8rem;
    font-weight: 700;
}

.img-title-sub {
    margin-bottom: .8rem;
    color: var(--accent-color03);
    font-size: 1.6rem;
    line-height: 1;
    display: inline-block;
}

.img-title-small {
    font-size: 1.4rem;
}

.thb-m-title04-frame {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.thb-m-title04 {
    position: relative;
    padding: var(--s2) var(--s1) var(--s2);
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}

.thb-m-title04-sub {
    padding: .8rem;
    font-size: 1.6rem;
    font-weight: 700;
    background-color: var(--accent-color01);
    color: #fff;
    transform: translateX(-50%);
    position: absolute;
    top: 0;
    left: 50%;
}

.selection-img img {
    max-height: 162px;
    width: auto;
    display: block;
    margin: 0 auto;
}

.thb-listbox-bg-colored {
    padding-top: 2rem;
}

.thb-listbox-area {
    padding: 4rem var(--s2) var(--s2) var(--s2);
    background-color: #f9fade;
    position: relative;
}

.thb-listbox-title {
    margin-top: -5.5rem;
    padding: var(--s1);
    color: var(--site-color02);
    background-color: #fff;
    text-align: center;
    font-weight: 700;
}

.thb-listbox-subtitle {
    text-align: center;
    font-weight: 700;
}

.thb-listbox-list {
    width: 100%;
    padding-left: 3rem;
}

.thb-listbox-list li {
    padding: var(--s1);
    line-height: 1.5;
    position: relative;
}

.thb-listbox-list li::before {
    content: "";
    width: 2.5rem;
    height: 2.5rem;
    background: url("./img/icon-check.png") no-repeat left center;
    background-size: contain;
    position: absolute;
    top: 1rem;
    left: -2.5rem;
}

.thb-listbox-list li span {
    margin-right: var(--s1);
    display: block;
    text-align: center;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .thb-listbox-area {
        padding: var(--s5) var(--s2) var(--s2) var(--s2);
    }

    .thb-listbox-list li {
        font-size: 1.4rem;
    }

    .thb-listbox-list--three li {
        width: calc((100% - var(--s2)) / 2);
    }

    .thb-listbox-title {
        width: 80%;
        margin: -5rem auto 0 auto;
        padding: var(--s1);
        font-size: 1.4rem;
        text-align: center;
    }

    .selection-img img {
        max-height: none;
    }

    .arrow-title-big {
        font-size: 2rem;
    }
}

.section-title02-frame {
    color: #ffffff;
    margin-top: 5rem;
    text-align: center;
    position: relative;
}

.section-title02 {
    font-size: 3.2rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
}

.section-title02-sub {
    width: 100%;
    margin-bottom: 1rem;
    font-size: 2.6rem;
    font-weight: 700;
    color: #212121;
    text-align: center;
    position: absolute;
    top: -2em;
    left: 0;
}

.section-title02-sub span {
    width: 100%;
    padding: 0 var(--s2);
    position: relative;
    background-color: #EFEBE4;
}

/*------------------------------------------
    1box column settings
*/
.sec02 .column-medium {
    margin-bottom: 5rem;
    padding-top: 0;
}

.column-medium {
    padding: var(--s4);
    /* border: 1px solid var(--site-color02); */
    background: #fff;
}

.onb-box-full {
    width: calc(100% + var(--s8));
    margin-left: calc(var(--s4) * -1);
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .column-medium {
        padding: var(--s2);
    }

    .onb-box-full {
        width: calc(100% + var(--s4));
        margin-left: calc(var(--s2) * -1);
    }

    .section-title02 {
        font-size: 2.4rem;
    }

    .section-title02-sub {
        font-size: 2rem;
    }
}

.section-title06-frame {
    margin-top: 5rem;
    position: relative;
}

.section-title06 {
    width: 100%;
    padding: var(--s4) var(--s12);
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

.section-title06::before {
    content: "";
    position: absolute;
    background: url(img/RECOMMENDED.svg) no-repeat;
    background-size: 154px auto;
    width: 154px;
    height: 22px;
    top: -1.5rem;
    left: 50%;
    transform: translateX(-50%);
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .section-title06 {
        padding: var(--s2);
        font-size: 2.4rem;
    }

    .section-title06::before {
        background-size: 170px auto;
        width: 170px;
    }
}

.onb-item-title-frame {
    padding: var(--s4) var(--s4);
    background-color: var(--site-color02);
    position: relative;
}

.onb-item-title-icon {
    width: 251.5px;
    height: 153px;
    overflow: hidden;
    position: absolute;
    top: -4rem;
    right: 1rem;
}

.onb-item-title-icon img {
    width: 100%;
}

.l-onb-item-title {
    display: flex;
    gap: var(--s2);
    justify-content: center;
}

.l-onb-item-title__side,
.l-onb-item-title__main {
    padding: 0 var(--s2) var(--s1);
    text-align: center;
    line-height: 1.2;
}

.l-onb-item-title__side span {
    font-size: 1.8rem;
}

.l-onb-item-title__side {
    color: #fff;
    width: calc((100% - var(--s2))*.2);
    font-size: 2.8rem;
    font-weight: 700;
    background-color: #817761;
    display: flex;
    justify-content: center;
    align-items: center;
}

.l-onb-item-title__main {
    width: calc((100% - var(--s2))*.9);
}

.l-onb-item-title__main span {
    display: inline-block;
    margin-top: 1.5rem;
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.6;
    background: linear-gradient(transparent 90%, #ffa4a2 90%);
}
.l-onb-item-title__main .onb-item-title-catch2{
	background:none;
	color: #ffa4a2;
	font-size: 2.8rem;
}
.onb-item-title-catch {
    font-size: 3rem;
    font-weight: 700;
    color: #fff;
    line-height: 1.8;
}

.onb-item-title-title {
    color: var(--site-color03);
    font-size: 3rem;
    font-weight: 700;
    padding: 3rem 0;
    text-align: center;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .onb-item-title-frame {
        padding: var(--s1) var(--s2) var(--s2);
    }

    .onb-item-title-icon {
        width: 17rem;
        height: 9rem;
        position: absolute;
        top: -2.5rem;
        right: 1rem;
    }

    .l-onb-item-title {
        flex-direction: column;
    }

    .l-onb-item-title__side,
    .l-onb-item-title__main {
        width: 100%;
        font-size: 2rem;
        padding: 1rem 0 0;
    }

    .l-onb-item-title__side span,
    .l-onb-item-title__main span {
        font-size: 2rem;
        display: inline;
        background: linear-gradient(transparent 90%, #ffa4a2 90%);
    }
    .l-onb-item-title__main .onb-item-title-catch2 {
        color: #ffa4a2;
        padding-top: 1.4rem;
        font-size: 2rem;
    }
    .onb-item-title-title {
        font-size: 2rem;
        padding: 2.5rem 0 2rem;
    }

    .onb-item-title-catch {
        font-size: 20px;
        color: #fff;
        /* line-height: 1.6; */
    }
}

.onb-five-slider-container {
    position: relative;
}

.onb-five-slider.swiper-thumbs .swiper-slide {
    width: 20%;
    margin-right: 10px;
}

.onb-five-slider .swiper-slide-thumb-active {
    outline: 4px solid var(--accent-color03);
    outline-offset: -4px;
}

.onb-five-slider2 {
    margin-bottom: var(--s3);
}

.onb-five-slider-container .swiper-button-next,
.onb-five-slider-container .swiper-button-prev {
    top: calc(50% - 100px);
    width: 5rem;
    height: 5rem;
}

.onb-five-slider-container .swiper-button-prev {
    left: var(--swiper-navigation-sides-offset, -2.2rem);
}

.onb-five-slider-container .swiper-button-next {
    right: var(--swiper-navigation-sides-offset, -2.2rem);
}

.onb-five-slider-container .swiper-button-next:hover,
.onb-five-slider-container .swiper-button-prev:hover {
    opacity: .6;
}

.onb-five-slider-container .swiper-button-next:after,
.onb-five-slider-container .swiper-rtl .swiper-button-prev:after {
    content: "";
    width: 5rem;
    height: 5rem;
    background: url("./img/slider-arrow-right.svg") no-repeat center center;
    background-size: contain;
}

.onb-five-slider-container .swiper-button-prev:after,
.onb-five-slider-container .swiper-rtl .swiper-button-next:after {
    content: "";
    width: 5rem;
    height: 5rem;
    background: url("./img/slider-arrow-left.svg") no-repeat center center;
    background-size: contain;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .onb-five-slider-container .swiper-button-prev {
        left: var(--swiper-navigation-sides-offset, -1.5rem);
    }

    .onb-five-slider-container .swiper-button-next {
        right: var(--swiper-navigation-sides-offset, -1.5rem);
    }

    .onb-five-slider-container .swiper-button-next,
    .onb-five-slider-container .swiper-button-prev {
        width: 3rem;
        height: 3rem;
        top: 35%;
    }
}

.onb-m-title5 {
    line-height: 1.5;
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    color: #2d4f9a;
}

.onb-m-title5 span {
    display: flex;
    align-items: center;
    font-size: 2rem;
}

.onb-m-title5 span::before,
.onb-m-title5 span::after {
    content: "";
    min-width: 5%;
    height: 3px;
    background-color: #e3e8f7;
    flex-grow: 1;
}

.onb-m-title5 span::before {
    margin-right: var(--s2);
}

.onb-m-title5 span::after {
    margin-left: var(--s2);
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .onb-m-title5 {
        font-size: 2rem;
    }

    .onb-m-title5 span {
        font-size: 1.6rem;
    }


    .onb-m-title5 span::before,
    .onb-m-title5 span::after {
        width: 2rem;
    }

    .onb-m-title5 span::before {
        margin-right: var(--s1);
    }

    .onb-m-title5 span::after {
        margin-left: var(--s1);
    }
}

.onb-listbox-area {
    margin-top: 1rem;
    padding: var(--s4);
    background-color: #f9fade;
    position: relative;
}

.onb-listbox-title {
    margin-top: -5rem;
    text-align: center;
}

.onb-listbox-title span {
    padding: .8rem;
    color: var(--site-color02);
    background-color: #fff;
    display: inline-block;
    font-weight: 700;
}

.onb-listbox-list {
    width: 100%;
}

.onb-listbox-list li {
    padding-left: var(--s4);
    line-height: 1.5;
    background: url('./img/icon-check.png') no-repeat top left;
    background-size: 2.4rem 2.4rem;
    font-weight: 700;
}

.onb-listbox-list li span {
    margin-right: var(--s1);
    display: block;
    text-align: center;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .onb-listbox-area {
        padding: var(--s2) var(--s2) var(--s2) var(--s2);
    }

    .onb-listbox-list li {
        font-size: 1.6rem;
    }

    .onb-listbox-list--three li {
        width: calc((100% - var(--s2)) / 2);
    }

    .onb-listbox-title {
        margin: -5rem auto 0 auto;
        padding: var(--s2);
        font-size: 1.8rem;
        text-align: center;
    }
}

.onb-iconbox03-frame {
    padding: var(--s4) var(--s2) var(--s2);
    background-color: #F1F1F1;
    position: relative;
}

.onb-iconbox03-frame:last-child {
    padding: var(--s4) var(--s2) var(--s2);
    background-color: #f9eaea;
    position: relative;
}

.onb-iconbox03-frame p {
    font-size: 1.5rem;
}

.onb-iconbox03-frame p span {
    background: linear-gradient(transparent 80%, var(--accent-color03) 80%);
    font-weight: bold;
}

.onb-iconbox03-sub {
    text-align: center;
    position: absolute;
    top: -2.5rem;
    transform: translateX(-50%);
    left: 50%;
}

.onb-iconbox03-sub img {
    padding: var(--s1);
    display: inline-block;
    /* background-color: var(--site-color02); */
}

.onb-iconbox03-img {
    padding-left: var(--s7);
    padding-right: var(--s7);
}

.onb-iconbox03-catch {
    padding-bottom: 2rem;
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    border-bottom: 1px solid #a4a39e;
}

.onb-iconbox03-caption {
    text-align-last: left;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .onb-iconbox03-frame {
        margin-top: 2rem;
    }

    .onb-iconbox03-img {
        padding-left: var(--s11);
        padding-right: var(--s11);
    }

    .l-grid-three_icon img {
        height: 60px;
        width: 30px;
    }

}

.onb-casebox02-frame {
    margin-top: 2rem;
    padding: var(--s3) var(--s4) var(--s4);
    border: 1px solid var(--site-color04);
    position: relative;
}

.onb-casebox02-frame span {
    background: linear-gradient(transparent 80%, var(--accent-color03) 80%);
    font-weight: bold;
}

.onb-casebox02-sub {
    padding: var(--s1) var(--s3);
    background-color: #d2d900;
    font-size: 1.8rem;
    font-weight: bold;
    transform: translateX(-50%);
    position: absolute;
    top: -2rem;
    left: 50%;
}

.l-onb-casebox02 {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s3);
}

.l-onb-casebox02__side {
    width: calc((100% - var(--s3))*.3);
}

.l-onb-casebox02__main {
    width: calc((100% - var(--s3))*.7);
    display: flex;
    justify-content: center;
    align-items: center;
}

.onb-casebox02-imgcap {
    margin-top: 1rem;
    text-align: center;
    font-size: 1.2rem;
}

.onb-casebox02-catch {
    font-size: 2.1rem;
    line-height: 1.5;
    font-weight: 700;
    color: var(--site-color03);
    padding-bottom: 2rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--site-color04);
}

.onb-casebox02-caption {
    text-align: left;
}

table .dl-style dt {
    padding: 0 0 0 var(--s1);
    border-left: 7px solid var(--accent-color03);
    font-weight: 700;
    margin-top: 1rem;
    margin-bottom: .8rem;
}

table .dl-style dd {
    line-height: 1.7;
}

.section-title03 {
    margin-top: 10rem;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

.section-title03::before {
    content: "";
    background: url(img/icon_office.png) no-repeat center center;
    background-size: 70px 57px;
    width: 7rem;
    height: 7.3rem;
    position: absolute;
    top: -9rem;
    left: 50%;
    transform: translateX(-50%);
}

.section-title03 a {
    display: inline-block;
    background: url(img/arrow-01-blue-right.svg) no-repeat center right / auto .8em;
    padding: 0 5rem;
    margin: 0 auto;
    text-decoration: none;
}

.section-title03 a:hover {
    opacity: .6;
}

/*------------------------------------------
    3box column settings
*/
.column-small {
    padding: 0 var(--s2) var(--s2);
    /* border: 1px solid var(--site-color02); */
}

.thb-box-full {
    width: calc(100% + var(--s2));
    margin-left: calc(var(--s1) * -1);
    margin-top: var(--s1);
}

.m-title03 {
    padding: var(--s2) var(--s1) var(--s3) var(--s7);
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    border-bottom: 4px solid var(--accent-color03);
    background: url('./img/icon-dummy.png') no-repeat center left;
    background-size: 4.8rem auto;
}

.acc-more-btn {
    max-width: 46rem;
    width: 100%;
    margin: var(--s5) auto;
    padding: 2rem 6rem 2rem 3rem;
    border: 1px solid var(--site-color02);
    text-align: center;
    position: relative;
    transition: opacity 0.3s;
    cursor: pointer;
    background: #fff;
    font-weight: bold;
    border-radius: 4.6rem;
}

.acc-more-btn::before {
    content: "";
    width: 2rem;
    height: .2rem;
    background: var(--site-color02);
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translate(0, -50%);
}

.acc-more-btn::after {
    content: "";
    width: .2rem;
    height: 2rem;
    background: var(--site-color02);
    position: absolute;
    top: 50%;
    right: 2.9rem;
    transform: translate(0, -50%);
    transition: transform 0.3s;
}

.acc-more-btn:hover {
    opacity: 0.6;
}

.acc-more-btn.is-open::after {
    transform: translate(0, -50%) rotate(270deg);
}

.more-content {
    display: none;
}

.section-title07-frame {
    margin-top: 5rem;
    position: relative;
}

.section-title07-frame::before {
    content: "";
    position: absolute;
    background: url(img/LIST.svg) no-repeat;
    width: 40px;
    height: 21px;
    top: -2rem;
    left: 50%;
    transform: translateX(-50%);
}

.sec06 .section-title07-frame::before {
    background: url(img/CASE.svg) no-repeat;
    width: 122px;
    height: 21px;
}

.section-title07 {
    width: 100%;
    padding: var(--s4) var(--s12);
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
}

.section-title07 a {
    display: inline-block;
    background: url(img/arrow-01-blue-right.svg) no-repeat center right;
    padding: 0 5rem;
    margin: 0 auto;
    text-decoration: none;
}

.section-title07 a:hover {
    opacity: .6;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .section-title07-frame {
        background-color: transparent;
    }

    .section-title07-frame::before {
        padding: var(--s1) 0;
        top: -3.4rem;
    }

    .section-title07 {
        padding: var(--s2) var(--s2) 0 var(--s2);
        font-size: 2.2rem;
    }

    .onb-casebox02-sub {
        width: 58%;
        font-size: 1.4rem;
        text-align: center;
    }
}

/*------------------------------------------
    2box column settings
*/
.column-medium {
    padding: var(--s4);
    /* border: 1px solid var(--site-color02); */
}

.twb-box-full {
    /*     width: calc(50% + var(--s8)); */
    width: 100%;
    text-align: center;
    margin: 0 auto;
}

.twb-box-full img {
    width: 100%;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .column-medium {
        padding: var(--s3) var(--s2) var(--s2);
    }

    .sec02 .column-medium {
        margin-bottom: 3rem;
    }

    .twb-box-full {
         /*  width: calc(100% + var(--s4));
              margin-left: calc(var(--s2) * -1); */
		width: 100%;
    }


    .onb-casebox02-frame {
        padding: var(--s2);
    }

    .onb-casebox02-catch {
        font-size: 1.6rem;
    }

    .onb-casebox02-frame p {
        font-size: 1.5rem;
    }
}

.twb-m-title01 {
    padding: var(--s2) var(--s1);
    font-size: 2.1rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    background: var(--site-color04);
}

.thb-iconlist-title {
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 700;
}

.thb-icon-list-3c {
    display: flex;
    flex-wrap: wrap;
    gap: var(--s2);
}

.thb-icon-list-3c li {
    width: calc((100% - var(--s4))/ 3);
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.5;
}

.thb-icon-list-3c li::before {
    display: none;
}

.thb-icon-list-3c li span {
    margin-bottom: .8rem;
    display: block;
    position: relative;
}

.icon-title-area {
    background-color: var(--site-color04);
    position: relative;
}

.icon-title-obj-l {
    width: 11rem;
    height: 11rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--accent-color01);
    color: #fff;
    border-radius: 11rem;
    position: absolute;
    top: -.8rem;
    right: -.8rem;
}

.icon-title-obj-l__inner {
    text-align: center;
    font-weight: 700;
}

.icon-title-l {
    padding: 1.6rem;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
}

.icon-title-small {
    font-size: 1.4rem;
    color: var(--accent-color03);
}

.bg-01 {
    background: #22345E url(img/bg-01.jpg) no-repeat top center;
    background-size: cover;
    padding: 12rem 0 15rem;
}

.bg-02 {
    background: #e5e7e7 url(img/bg-02.jpg) no-repeat top center;
    background-size: cover;
    background-attachment: fixed;
    padding-top: 12rem;
}

@media screen and (max-width: 767px) {
    .bg-01 {
        padding: 0 0 5rem;
        background-size: 100%;
    }

    .bg-02 {
        padding-top: 4rem;
        background-size: 100%;
        background-position: top center;
        background-attachment: scroll;
    }
}

.five-slider.swiper-thumbs .swiper-slide {
    width: 20%;
    margin-right: 10px;
}

.five-slider .swiper-slide-thumb-active {
    outline-offset: -4px;
}

.five-slider2 {
    text-align: center;
}

.swiper-thumbs {
    width: 60%;
}

.five-slider2 img {
    max-width: 800px;
}

.five-slider2 .swiper-button-next {
    right: 5rem;
}

.five-slider2 .swiper-button-prev {
    left: 5rem;
}

.five-slider2 .swiper-button-next,
.five-slider2 .swiper-button-prev {
    width: 5rem;
    height: 0rem;
}

.five-slider2 .swiper-button-next:hover,
.five-slider2 .swiper-button-prev:hover {
    opacity: .6;
}

.five-slider2 .swiper-button-next::after,
.five-slider2 .swiper-rtl .swiper-button-prev::after {
    content: "";
    width: 4rem;
    height: 4rem;
    background: url("./img/slider-arrow-right.svg") no-repeat center center;
    background-size: contain;
}

.five-slider2 .swiper-button-prev::after,
.five-slider2 .swiper-rtl .swiper-button-next::after {
    content: "";
    width: 4rem;
    height: 4rem;
    background: url("./img/slider-arrow-left.svg") no-repeat center center;
    background-size: contain;
}

.swiper-backface-hidden .swiper-slide.swiper-slide-visible img {
    width: 100%;
}


/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {

    .five-slider2 .swiper-button-next,
    .five-slider2 .swiper-button-prev {
        top: 30%;
        width: 3rem;
        height: 3rem;
    }

    .five-slider2 .swiper-button-next::after,
    .five-slider2 .swiper-rtl .swiper-button-prev::after,
    .five-slider2 .swiper-button-prev::after,
    .five-slider2 .swiper-rtl .swiper-button-next::after {
        width: 3rem;
        height: 3rem;
    }

    .five-slider2 .swiper-button-next {
        right: 0;
    }

    .five-slider2 .swiper-button-prev {
        left: 0;
    }
}

/* ---------------------------------------------
conclusion-box-frame
--------------------------------------------- */
.conclusion-box-frame {
    margin-block: 10rem;
    padding: var(--s2) var(--s4) var(--s1) var(--s4);
    background: #f3f3f3;
}

.conclusion-box-ttl {
    position: relative;
}

.conclusion-box-ttl__icon-frame {
    position: absolute;
    left: -4.8rem;
    bottom: 1rem;
    z-index: 10;
}

.conclusion-box-ttl__icon {
    width: 10rem;
    height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #e27f7c;
}

.conclusion-box-ttl__icon::after {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #707070;
    position: absolute;
    right: -1rem;
    bottom: -1rem;
    z-index: -1;
}

.conclusion-box-ttl__icon span {
    color: #fff;
    font-weight: 700;
    font-size: 2.2rem;
}

.conclusion-box-ttl__text {
    padding-top: var(--s2);
    padding-bottom: var(--s3);
    margin-left: 10rem;
    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.5;
    border-bottom: 1px solid var(--site-color03);
    color: var(--site-color03);
}

.conclusion-box-content {
    z-index: 5;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .conclusion-box-frame {
        margin-block: 5rem;
        padding: var(--s2) var(--s3) var(--s1) var(--s4);
    }

    .conclusion-box-ttl__icon-frame {
        top: -3.2rem;
        left: -3.6rem;
        bottom: inherit;
    }

    .conclusion-box-ttl__icon {
        width: 6rem;
        height: 6rem;
    }

    .conclusion-box-ttl__icon img {
        max-width: 75%;
    }

    .conclusion-box-ttl__icon span {
        font-size: 1.2rem;
		text-align:center;
    }

    .conclusion-box-ttl__icon::after {
        right: -0.5rem;
        bottom: -0.5rem;
    }

    .conclusion-box-ttl__text {
        margin-left: 0;
        padding-left: 4rem;
        padding-top: var(--s1);
        padding-bottom: var(--s2);
        font-size: 1.6rem;
        line-height: 1.6;
    }

    .l-onb-conclusion-img {
        width: 36%;
    }

    .section01 .column-small:nth-child(1) .img-title-sub {
        font-size: 2.4rem;
    }

    .m-title02 {
        font-size: 1.8rem;
    }

    .m-title01 {
        font-size: 2rem;
    }

}

.onb-index01-frame {
    width: 100%;
    background-color: #fff;
    border: 1px solid var(--site-color02);
    margin-bottom: 2.5rem;
}

.onb-index01-wrap {
    margin: 0 auto;
    padding: var(--s1) var(--s3);
    border: solid 0.1rem #D0D3E0;
    background-color: transparent;
    position: relative;
    transition: opacity 0.6s ease, color 0.6s ease;
}

.onb-index01-wrap:hover {
    opacity: .6;
}

.onb-index01-title {
    padding: var(--s2) var(--s2) var(--s2) var(--s7);
    color: #333;
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1;
    background: url("./img/toc_icon_yellow.svg") no-repeat left center;
    background-size: 4rem auto;
    position: relative;
    cursor: pointer;
}

.onb-index01-title::before {
    content: "";
    width: 2rem;
    height: 0.2rem;
    background: #333;
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translate(0, -50%);
}

.onb-index01-title::after {
    content: "";
    width: 0.2rem;
    height: 2rem;
    background: #333;
    position: absolute;
    top: 50%;
    right: 2.9rem;
    transform: translate(0, -50%);
    transition: transform 0.3s;
}

.onb-index01-title.is-open::after {
    transform: translate(0, -50%) rotate(270deg);
}

.onb-index01-chapter {
    padding: var(--s2) var(--s2) var(--s2) var(--s4);
    font-weight: 700;
}

.onb-index01-chapter-h {
    margin: 0 0 0 var(--s2);
    font-size: 100%;
    line-height: 1.7;
    position: relative;
}

.onb-index01-chapter-h a {
    display: block;
    text-decoration: none;
}

.onb-index01-chapter-h a:hover {
    opacity: .6;
}

.onb-index01-chapter-h-two {
    margin-left: var(--s2);
    position: relative;
}

.onb-index01-chapter-h-three {
    margin-left: var(--s4);
    position: relative;
}

.onb-index01-chapter-h-two::before,
.onb-index01-chapter-h-three::before {
    position: absolute;
    top: 0;
    left: -1.5em;
}

.onb-index01-chapter-h-two::before {
    content: "";
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 2rem;
    background-color: #D2D900;
    transform: translateY(-50%);
    top: .8em;
}

.onb-index01-chapter-h-three::before {
    content: "└";
}

.more-content {
    display: none;
}

.onb-index01-content {
    background-color: #fff;
}

.sp-fix-banner01 {
    display: none;
}

.pc-fix-banner04 {
    position: fixed;
    right: 1rem;
    bottom: 20rem;
    width: 26rem;
    z-index: 50;
    display: none;
}

.pc-fix-banner04-text a {
    display: block;
    padding: 1rem;
    background: url(img/bg_banner.jpg) no-repeat center top;
    background-size: cover;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
    color: #fff;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    border: 2px solid #fff;
}

.pc-fix-banner04-text a .icon {
    position: absolute;
    bottom: 5px;
    right: 5px;
    border-left: 20px solid transparent;
    border-bottom: 20px solid #fff;
}

.pc-fix-banner04-text a:hover {
    opacity: 0.7;
}

.pc-fix-banner04-text .txt-1 {
    text-align: center;
}

.pc-fix-banner04-text .txt-1 span {
    display: inline-block;
    margin: 0 0 0.5rem 0;
    padding: 0.5rem 1rem;
    background: #fff;
    color: #E15C5A;
    font-size: 1.4rem;
}

.pc-fix-banner04-text .txt-2 {
    text-align: center;
    text-align: left;
}

.pc-fix-banner04-text .txt-2 span {
    font-size: 1.8rem;

}

.pc-fix-banner04-text .txt-3 {
    font-size: 1.8rem;
    line-height: 1.1;
    text-align: right;
    padding-right: 2.5rem;
}

.pc-fix-banner04-text .txt-3 span {
    color: #ffa4a2;
    font-size: 4.3rem;
}

/*------------------------------------------------------------
SP settings
*/
@media screen and (max-width: 767px) {

    .sp-fix-banner01 {
        width: 70%;
        background: url(img/banner_bg_01.png) no-repeat center center;
        background-size: cover;
        position: fixed;
        right: 0;
        bottom: 0;
        z-index: 50;

    }

    .sp-fix-banner01-text {
        padding: var(--s1) var(--s2);
        color: #fff;
        position: relative;

    }



    .sp-fix-banner01-text p {
        margin: 0;
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1.4;
    }

    .sp-fix-banner01-text a {
        padding-right: 1.6rem;
        color: #fff;
        text-decoration: none;
        background: url("./img/arrow-01-wht-right.svg") no-repeat right center / 1rem auto;
        display: block;
    }

    .sp-fix-banner01-text a:hover {
        opacity: .7;
    }

    .pc-fix-banner04 {
        bottom: 0;
        left: 0;
        width: 60%;
    }

    .pc-fix-banner04-text .txt-1 {
        position: absolute;
        top: -15px;
    }

    .pc-fix-banner04-text .txt-2 br {
        display: none;
    }

    .pc-fix-banner04-text .txt-2 span,
    .pc-fix-banner04-text .txt-3 {
        font-size: 1.4rem;
    }

    .pc-fix-banner04-text a {
        padding-top: 2rem;
    }


    .pc-fix-banner04-text .txt-3 span {
        font-size: 2.3rem;
    }
}

.m-title01 {
    padding: var(--s5) var(--s1);
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color02);
}

.m-title01 a {
    display: block;
    background: url(img/arrow-01-black-right.svg) no-repeat center right / auto 0.7em;
    padding-right: 2rem;
    text-decoration: none;
    width: 100%;
}

.m-title01 a:hover {
    opacity: 0.6;
}

.com-box-frame {
    border: 1px solid var(--site-color11);
    margin-top: 2rem;
}

.com-box-title {
    padding: var(--s1);
    background-color: var(--site-color01);
    font-size: 1.6rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.5;
    text-align: center;
}

.com-box-area {
    padding: 0 var(--s2) var(--s2);
    display: flow-root;
    background: #fff;
}

.com-box-img {
    width: 8.2rem;
    margin-right: var(--s2);
    margin-bottom: var(--s2);
    float: left;
}

.com-box-img span {
    margin-top: var(--s1);
    display: block;
    font-size: 1.2rem;
    text-align: center;
}

.com-box-catch {
    margin-block: var(--s3) var(--s1);
    font-weight: 700;
    color: var(--accent-color02);
    line-height: 1.5;
    border-bottom: 1px solid #BEC3CF;
    );
    text-align: center;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
}


.com-box04-frame {
    background: #fff;
    padding: var(--s4);
    border: 1px solid var(--site-color02);
}

.com-box04-title {
    margin-bottom: var(--s4);
    padding: var(--s1);
    background-color: var(--accent-color03);
    color: #fff;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
}

.com-box04-area {
    display: flex;
    gap: var(--s4);
}

.com-box04-text {
    width: calc((100% - var(--s4))*.8);
}

.com-box04-img {
    width: calc((100% - var(--s4))*.2);
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.com-box04-img span {
    margin-top: var(--s1);
    display: block;
    font-size: 1.2rem;
    text-align: center;
}

.com-box04-catch {
    margin-bottom: var(--s2);
    font-size: 2.1rem;
    font-weight: 700;
    line-height: 1.5;
    color: var(--site-color01);
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    .com-box04-frame {
        padding: var(--s2);
    }

    .com-box04-area {
        flex-direction: column;
        gap: var(--s2);
    }

    .com-box04-title {
        margin-bottom: var(--s2);
        font-size: 1.8rem;
    }

    .com-box04-img {
        width: 50%;
        margin: 0 auto;
    }

    .com-box04-text {
        width: 100%;
    }

    .com-box04-catch {
        font-size: 1.8rem;
    }
}

.footer-area {
    margin-top: 0;
}

.mainvisual {
    height: 662px;
    background: url(/wp/wp-content/uploads/bg_top_mv-1.jpg) no-repeat center;
    background-size: cover;
}

.mainvisual .mv-inner {
    max-width: 680px;
    padding-top: 7rem;
}

.mainvisual .mv-logo {
    width: 19.6rem;
    padding: 1.5rem 0;
}

.mainvisual .mv-catch_small {
    display: table;
    font-size: 2.8rem;
    font-weight: bold;
    margin: 2.5rem 0 1rem;
    padding: .5rem 1.5rem 1rem;
    background: #0E1B37;
    color: #fff;
}

.mainvisual .mv-catch {
    font-size: 3.4rem;
    font-weight: bold;
    line-height: 1.52;
    margin-bottom: 2rem;
}

.mainvisual .mv-catch span.big {
    font-size: 4.2rem;
    color: #E15C5A;
}

.mainvisual .mv-txt {
    max-width: 530px;
    line-height: 1.8875;
}

.mainvisual-lower {
    height: 250px;
    background: #efeee0 url(/wp/wp-content/uploads/bg_mv.jpg) no-repeat center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mainvisual-lower .mv-inner {
    max-width: 420px;
    padding-top: 2rem;
}

.mainvisual-lower .mv-logo {
    width: 210px;
    padding: 1.5rem 0;
}

.mainvisual-lower a:hover {
    opacity: .6;
}

.sec01 .addTxt {
    color: #ffffff;
    line-height: 2;
}

.sec01.lower {
    /* margin: 0 calc(50% - 50vw) 0; */
    margin-bottom: -5rem;
    padding-top: 2rem;
}

#contents .sec01.lower .l-center {
    padding: 0;
}

#contents .sec01.lower .section-title02-frame {
    color: var(--site-color03);
}

.sec02 table td {
    background: #f1f1f1;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.sec02 .l-onb-casebox02 {
    margin-bottom: 1.5rem;
}

.sec02 .onb-casebox02-caption {
    margin-top: 2rem;
}

.sec02 table th {
    width: 26%;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.sec02 .box_flex {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    /*     margin-bottom: 4rem; */
}

.sec02 .box_flex .onb-iconbox03-frame {
    width: 100%;
}

.sec02 .l-grid-three_icon {
    margin: 0 20px;
}

.sec03 {
    background: #ffffff;
}

.sec04 {
    background: #F1F1F1;
}

.sec04 .btn-link a,
.sec05 .btn-link a,
.sec06 .btn-link a,
.sec07 .btn-link a {
    font-size: 14px;
}

.sec04 .column-small {
    background: #ffffff;
}

.sec05 .column-small {
    background: #F1F1F1;
}

.sec04 table,
.sec05 table {
    margin: 2rem 0;
}

.sec04 table th,
.sec05 table th {
    width: 26%;
}

.sec05 {
    background: #fff;
}

.sec06 {
    background: #F6F6EF;
}

.sec06 .column-medium {
    background: var(--site-color02);
}

.sec06 .column-medium .twb-m-title01 {
    color: #fff;
    background: none;
    border-bottom: 1px solid #A2A19C;
    padding-top: 0;
    font-size: 1.8rem;
}

.sec06 .column-medium .twb-m-title01 a {
    display: inline-block;
    background: url(img/arrow-01-right.svg) no-repeat center right;
    padding: 0 5rem;
    margin: 0 auto;
    text-decoration: none;
    background-size: 10px auto;
}

.sec06 .column-medium .twb-m-title01 a:hover {
    opacity: 0.6;
}


.sec06 .column-medium p {
    color: #fff;
}

.sec06 .column-medium .btn-link a {
    color: #fff;
}

.sec07 {
    background: #fff;
}

.sec07 .section-title03::before {
    content: "";
    background: url(img/graph.png) no-repeat;
    background-size: 5.5rem auto;
    width: 5.5rem;
    height: 6rem;
    position: absolute;
    top: -7rem;
    left: 50%;
    transform: translateX(-50%);
}

.sec07 .m-title01 {
    text-align: center;
    padding: var(--s2) var(--s1) var(--s1);
    color: #212121;
}

.sec07 .design-img {
    max-width: 150px;
    margin: 0 auto;
}

.sec07 .column-small {
    background: #F1F1F1;
}

.sec08 {
    background: #F6F6EF;
}

.sec08 .section-title07-frame::before {
    background: url(img/WHATs.svg) no-repeat;
    background-size: 78px auto;
    width: 78px;
    height: 21px;
}

.l-grid-three2 {
    display: flex;
}

.l-grid-three2 .column-small {
    width: calc(33.333333% - 1.6rem * 2 / 3);
    margin-right: 1.6rem;
}

/*------------------------------------------------------------
    SP settings
*/
@media screen and (max-width: 767px) {
    body {
        font-size: 1.5rem;
    }

    .mainvisual {
        height: auto;
        padding-bottom: 3rem;
        background: none;
    }

    .mv-logo {
        display: none;
    }

    .mainvisual .mv-inner {
        padding-top: 1rem;
    }

    .mainvisual-lower {
        height: 90px;
        margin-top: -0.6rem;
    }

    .mainvisual-lower img {
        margin-top: 1rem
    }

    .mainvisual-lower a {
        width: 13rem;
    }

    .mainvisual .mv-catch_small {
        font-size: 1.6rem;
        margin: 1rem 0 .5rem;
        padding-bottom: .7rem;
    }

    .mainvisual .mv-catch {
        font-size: 2.4rem;
        margin-bottom: 1rem;
    }

    .mainvisual .mv-catch span.big {
        font-size: 3.2rem;
    }

    .mv-txt {
        max-width: auto;
        font-size: 1.5rem;
        line-height: 1.6;
        margin-bottom: 3rem;
    }

    .mv-img2 {
        padding-left: 1.2rem;
    }

    .sec01.lower {
        padding: 1rem 0 3rem;
    }

    .sec02 .l-stack-xlarge {
        gap: var(--s6);
    }

    .sec02 table th {
        width: 100%;
    }

    .sec02 .box_flex {
        display: block;
        /* 		margin-bottom: 20px; */
    }

    .sec02 .l-grid-three {
        display: block;
        margin-bottom: 4rem;
    }

    .sec02 .l-grid-three_icon {
        transform: rotate(90deg);
        text-align: center;
        margin: 0 auto;
        width: 30px;
        height: 60px;
    }

    .sec02 .l-grid-three_icon img {
        margin-left: 0px;
    }

    .sec02 .btn-tel {
        margin-top: 0;
    }

    .sec02 .box_flex .onb-iconbox03-frame {}

    .sec03 table th {
        width: 22%;
    }

    .sec03 table {
        font-size: 1.4rem;
    }

    .section-title03 {
        font-size: 2.2rem;
    }

    .section-title03::before {
        background-size: 45px auto;
        width: 4.5rem;
        height: 4.3rem;
        top: -5rem;
    }

    .section-title03 a,
    .section-title07 a {
        padding: 0 3rem;
    }

    .sec07 .section-title03::before {
        top: -6rem;
        background-size: 4rem auto;
        width: 4rem;
    }

    .sec04 .column-medium .btn-link a {
        color: var(--site-color01);
    }

    .sec04 .l-grid-two:last-child {
        width: 100%;
    }

    .l-grid-three2 {
        display: block;
    }

    .l-grid-three2 .column-small {
        width: 100%;
        margin-right: 0;
        margin-bottom: 2.4rem;
    }

    .sec06 .column-medium .btn-link a {
        color: var(--site-color02);
    }

}

/*
.swiper-backface-hidden .swiper-slide{
	text-align: center;
}

.swiper-backface-hidden .five-slider2 img{max-width: 85%;}

.swiper-wrapper {
	align-items: center;
	justify-content: center;
}

*/
.five-slider-box {
    margin-bottom: 6rem;
    width: 100%;
    margin: 0 auto 3rem;
}

@media screen and (max-width: 767px) {
    .swiper-backface-hidden .swiper-slide img {
        width: 100%;
    }
}


/* ---------------------------------------------
index02(目次)
--------------------------------------------- */
.onb-index02-frame {
    width: 100%;
}

.onb-index02-title {
    padding: var(--s3) 0 var(--s1) var(--s1);
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 1;
    position: relative;
}

.onb-index02-chapter {
    padding: var(--s2) var(--s2) var(--s2) var(--s7);
    font-weight: 700;
    counter-reset: number 0;
}

#toc ul.onb-index02-chapter li {
    position: relative;
}

#toc ul.onb-index02-chapter li:not(.onb-index02-chapter-h-three)::before {
    counter-increment: number 1;
    content: counter(number, decimal-leading-zero);
    color: #E99897;
    position: absolute;
    top: 0;
    left: -1.8em;
}

#toc ul li.onb-index02-chapter-h {
    margin: 0 0 0 var(--s2);
    font-size: 100%;
    line-height: 1.7;
    position: relative;
}

#toc ul li.onb-index02-chapter-h a {
    display: block;
    text-decoration: none;
}

#toc ul li.onb-index02-chapter-h-two {
    margin-left: var(--s2);
    position: relative;
}

#toc ul li.onb-index02-chapter-h-three {
    margin-left: var(--s4);
    position: relative;
}

#toc ul li.onb-index02-chapter-h-two::before,
#toc ul li.onb-index02-chapter-h-three::before {
    position: absolute;
    top: 0;
    left: -1.8em;
}

#toc ul li.onb-index02-chapter-h-three::before {
    content: "└";
}

/*----------------------------------------------
    more content settings
*/
#toc.onb-index02-gradation {
    margin-top: 1.4rem;
    height: auto;
    max-height: 12rem;
    overflow: hidden;
    transition: max-height 1s;
    border-top: 1px solid var(--site-color03);
    position: relative;
}

#toc.onb-index02-gradation::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    transition: 0.3s;
    background: linear-gradient(to bottom, transparent 0%, #f6f6ef 100%);
}

#toc.onb-index02-gradation.is-open::after {
    display: none;
}

.onb-index02-btn {
    max-width: 32rem;
    margin: 2rem auto 0 auto;
    position: relative;
    z-index: 5;
}

.onb-index02-btn span {
    width: 100%;
    margin: var(--s5) auto;
    padding: 2rem 6rem 2rem 3rem;
    border-radius: 4rem;
    background: url('./img/acc-off.svg') no-repeat 95% center #fff;
    display: block;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    transform: translate(0, 0);
    transition: transform 0.3s;
    cursor: pointer;
    z-index: 1;
}

.onb-index02-btn:hover span {
    transform: matrix(1, 0, 0, 1, 0, 0);
}

.onb-index02-btn.is-open span {
    background: url('./img/acc-on.svg') no-repeat 95% center #fff;
}

/*2025.04.22*/
.slide-text-box {
    padding: 1.6rem;
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
}

.slide-text-box p {
    line-height: 1.5;
}

.box-title {
    font-size: 1.6rem;
    font-weight: 700;
    color: #E15C5A;
}

.sec02 .section-title06 {
    padding-bottom: 0;
}

@media screen and (min-width: 768px) {
    .sec05 .l-grid-three {
        display: grid;
        grid-gap: var(--s2);
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .thb-m-title04 {
        padding: var(--s4) var(--s1) var(--s3);
    }

    .sec07 .l-stack-xlarge {
        gap: var(--s4);
    }
}

@media screen and (max-width: 767px) {
    .mainvisual .mv-catch_small {
        /* margin: 1rem auto 0; */
        width: 100%;
        text-align: center;
    }

    .mainvisual .mv-catch {
        font-size: 2.4rem;
        margin-bottom: 2rem;
        margin-top: 1rem;
        text-align: center;
    }

    .sec07 .l-stack-xlarge {
        gap: var(--s2);
    }

    .thb-m-title04 {
        padding: var(--s2) var(--s1) var(--s3);
    }
}
/*カテトップのgmap*/
#low-page table iframe{
display:block;
width:100%;
margin:0 auto;
}