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


body.check__border {
    position: relative;
}
body.check__border::before,
body.check__border::after {
    z-index: 50000;
    content: '';
    background-color: #ff0000;
}
body.check__border::before {
    position: absolute;
    left: 50%;
    top: 0;
    width: 1px;
    height: 100%;
}
/*body.check__border::after {
    position: fixed;
    left: 0;
    top: 50%;
    width: 100%;
    height: 1px;
}*/


div#wrapcont {
    --site-theme-color1: #6DC172;
    --site-theme-color2: #85C9B5;
    --site-theme-color3: #C0D061;
}

div#wrapcont * {
    color: #3E3A39;
}

div#wrapcont .wpcf7-spinner {
    display: none!important;
}

@font-face {
    font-family: 'M PLUS Rounded 1c';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/MPLUSRounded1c-Medium.ttf') format('truetype');
    font-display: swap;
}
@font-face {
    font-family: 'M PLUS Rounded 1c Bold';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/MPLUSRounded1c-Bold.ttf') format('truetype');
    font-display: swap;
}
div#wrapcont .fontF_mp,
div#wrapcont .fontF_mp * {
    font-family: "M PLUS Rounded 1c", sans-serif!important;
}
div#wrapcont .fontF_mpb,
div#wrapcont .fontF_mpb * {
    font-family: "M PLUS Rounded 1c Bold", sans-serif!important;
}


div#wrapcont br.cmn__sponly {
    display: none;
}
@media (max-width: 640px) {
    div#wrapcont br.cmn__sponly {
        display: block;
    }
    div#wrapcont br.cmn__pconly {
        display: none;
    }
}


/* ----------------------------------------
* 共通レイアウト
---------------------------------------- */
div#wrapcont h2.cmn__type1 {
    text-align: center;
    font-size: 1.75em;
}
div#wrapcont h2.cmn__type1 .row_main,
div#wrapcont h2.cmn__type1 .row_sub {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.25;
    font-weight: bold;
    letter-spacing: 0.1em;
    transform: translateX(calc(0.1em / 2));
    text-shadow: #ffffff 2px 0px 2px,
                 #ffffff -2px 0px 2px,
                 #ffffff 0px -2px 2px,
                 #ffffff 0px 2px 2px,
                 #ffffff 2px 2px  2px,
                 #ffffff -2px 2px 2px,
                 #ffffff 2px -2px 2px,
                 #ffffff -2px -2px 2px,
                 #ffffff 1px 2px 2px,
                 #ffffff -1px 2px 2px,
                 #ffffff 1px -2px 2px,
                 #ffffff -1px -2px 2px,
                 #ffffff 2px 1px 2px,
                 #ffffff -2px 1px 2px,
                 #ffffff 2px -1px 2px,
                 #ffffff -2px -1px 2px;
}
div#wrapcont h2.cmn__type1 .row_main {
}
div#wrapcont h2.cmn__type1 .row_sub {
    margin-top: 0.25em;
    color: var(--site-theme-color2);
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 0.75em;
    position: relative;
    padding-left: 0.75em;
    padding-right: 1em;
}
div#wrapcont h2.cmn__type1 .row_sub::before,
div#wrapcont h2.cmn__type1 .row_sub::after {
    position: absolute;
    top: 50%;
    z-index: 1;
    content: '';
    background-color: var(--site-theme-color2);
    width: 0.5em;
    height: 3px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    transform: translateX(-50%);
    box-shadow: 0 0 0 2px #ffffff;
    -moz-box-shadow: 0 0 0 2px #ffffff;
    -webkit-box-shadow: 0 0 0 2px #ffffff;
    box-sizing: border-box;
}
div#wrapcont h2.cmn__type1 .row_sub::before {
    left: 0;
}
div#wrapcont h2.cmn__type1 .row_sub::after {
    right: 0;
}


div#wrapcont h3.cmn__type1 {
    text-align: center;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    background-image: url('../images/common/logo_yasumotocl-icon-green.png');
    background-size: auto 45px;
    background-repeat: no-repeat;
    background-position: center top;
    padding-top: calc( 45px + 10px );
    margin-bottom: 80px;
}
div#wrapcont h3.cmn__type1 .row_sub,
div#wrapcont h3.cmn__type1 .row_main {
    font-weight: bold;
    line-height: 1.5;
}
div#wrapcont h3.cmn__type1 .row_sub {
    color: var(--site-theme-color2);
    font-family: "M PLUS Rounded 1c", sans-serif;
}
div#wrapcont h3.cmn__type1 .row_main {
    font-size: 1.25em;
    letter-spacing: 0.1em;
    transform: translate(calc(0.1em / 2));
    margin-top: 5px;
}
@media (max-width: 640px) {
    div#wrapcont h3.cmn__type1 {
        margin-bottom: 50px;
    }
}


div#wrapcont h4.cmn__type1 {
    color: #ffffff;
    text-align: center;
    background-color: #6DC172;
    padding: 0.75em 1em;
    font-weight: bold;
    font-size: 1.25em;
    margin-bottom: 80px;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}
div#wrapcont h4.cmn__type1.mt1 {
    margin-top: 150px;
}
@media (max-width: 640px) {
    div#wrapcont h4.cmn__type1 {
        font-size: 1.125em;
        margin-bottom: 30px;
    }
    div#wrapcont h4.cmn__type1.mt1 {
        margin-top: 50px;
    }
}


div#wrapcont h5.cmn__type1 {
    text-align: center;
    font-size: 1.125em;
    color: #6DC172;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-indent: 0.1em;
}
div#wrapcont h5.cmn__type1:not(:last-child) {
    margin-bottom: 40px;
}
@media (max-width: 640px) {
    div#wrapcont h5.cmn__type1 {
        margin-bottom: 20px;
    }
}


div#wrapcont h5.cmn__type2 {
    border-left: 6px solid #6DC172;
    padding-left: 0.75em;
    font-weight: bold;
    font-size: 1.25em;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
}
@media (max-width: 640px) {
    div#wrapcont h5.cmn__type1 {
        font-size: 1.125em;
    }
}


div#wrapcont h5.cmn__type3 {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.35em;
    color: #6DC172;
    font-weight: bold;
    background-image: url('../images/common/parts_dot_green.png');
    background-size: auto 5px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding: 0 0.25em calc(5px + 0.25em) 0.25em;
    line-height: 1.5;
    margin-bottom: 50px;
    letter-spacing: 0.05em;
    text-indent: 0.05em;
}
@media (max-width: 640px) {
    div#wrapcont h5.cmn__type3 {
        margin-bottom: 30px;
        font-size: 1.25em;
    }
}


div#wrapcont .cmn__parts_type1 {
    width: 90px;
    aspect-ratio: 1 / 1;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border: 1px dashed #ffffff;
    font-size: 40px;
    line-height: 90px;
    font-weight: bold;
    font-family: "M PLUS Rounded 1c Bold", sans-serif;
}
@media (max-width: 767px) {
    div#wrapcont .cmn__parts_type1 {
        width: 70px;
        font-size: 34px;
        line-height: 70px;
    }
}


div#wrapcont .cmn__btn_type1 {
    display: inline-block;
    position: relative;
    padding: 0.5em 3em;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    font-weight: bold;
}
div#wrapcont .cmn__btn_type1::before {
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 1;
    content: '';
    width: 1.75em;
    aspect-ratio: 1 / 1;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    transform: translate(40%, -50%);
}
div#wrapcont .cmn__btn_type1.c1 {
    background-color: var(--site-theme-color1);
    color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c1::before {
    background-image: url('../images/common/parts_btn-arrow-green1-white.svg');
}
div#wrapcont .cmn__btn_type1.c1w {
    color: var(--site-theme-color1);
    border: 1px solid var(--site-theme-color1);
    background-color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c1w::before {
    background-image: url('../images/common/parts_btn-arrow-green1.svg');
}
div#wrapcont .cmn__btn_type1.c2 {
    background-color: var(--site-theme-color2);
    color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c2::before {
    background-image: url('../images/common/parts_btn-arrow-green2-white.svg');
}
div#wrapcont .cmn__btn_type1.c2w {
    color: var(--site-theme-color2);
    border: 1px solid var(--site-theme-color2);
    background-color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c2w::before {
    background-image: url('../images/common/parts_btn-arrow-green2.svg');
}
div#wrapcont .cmn__btn_type1.c3 {
    background-color: var(--site-theme-color3);
    color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c3::before {
    background-image: url('../images/common/parts_btn-arrow-green3-white.svg');
}
div#wrapcont .cmn__btn_type1.c3w {
    color: var(--site-theme-color3);
    border: 1px solid var(--site-theme-color3);
    background-color: #ffffff;
}
div#wrapcont .cmn__btn_type1.c3w::before {
    background-image: url('../images/common/parts_btn-arrow-green3.svg');
}


div#wrapcont .cmn__btn_type2 {
    background-image: url('../images/common/parts_btn-arrow-green4.svg');
    background-size: 1.25em auto;
    background-repeat: no-repeat;
    background-position: right 2em center;
    display: inline-block;
    padding: calc(1em - 2px) calc(1.5em + 1.25em + 2em) calc(1em - 2px) 3em;
    text-align: center;
    border-radius: 15px;
    border: 2px solid #DDEDD4;
    background-color: #DDEDD4;
    opacity: 1!important;
    max-width: 100%;
}
div#wrapcont .cmn__btn_type2:hover {
    border: 2px solid #6DC172;
    background-color: #ffffff;
}
@media (max-width: 640px) {
    div#wrapcont .cmn__btn_type2 {
        background-position: right 1em center;
        padding: calc(1em - 2px) calc(1em + 1.25em + 1em) calc(1em - 2px) 2em;
    }
}


div#wrapcont .cmn__txt_type1 {
    display: none;
    margin-bottom: 10px;
    line-height: 1.5;
}
@media (max-width: 1000px) {
    div#wrapcont .cmn__txt_type1.view3 {
        display: block;
    }
}
@media (max-width: 900px) {
    div#wrapcont .cmn__txt_type1.view4 {
        display: block;
    }
}
@media (max-width: 800px) {
    div#wrapcont .cmn__txt_type1.view5 {
        display: block;
    }
}
@media (max-width: 750px) {
    div#wrapcont .cmn__txt_type1.view2 {
        display: block;
    }
}
@media (max-width: 640px) {
    div#wrapcont .cmn__txt_type1.view1 {
        display: block;
    }
}


div#wrapcont .cmn__txt_type2 {
    margin-top: 5px;
    line-height: 1.5;
}


div#wrapcont table.cmn__tbl_type1 {
    border-right: 1px solid #9E9E9F;
    border-bottom: 1px solid #9E9E9F;
    table-layout: auto;
}
div#wrapcont table.cmn__tbl_type1 .centeritem {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    display: block;
    text-align: left;
}
div#wrapcont table.cmn__tbl_type1 .small1 {
    font-size: 0.8em;
    font-weight: normal;
    line-height: 1.75;
    display: inline-block;
}
div#wrapcont table.cmn__tbl_type1 .ex1_wrap {
    position: relative;
}
div#wrapcont table.cmn__tbl_type1 .ex1_wrap .ex1 {
    font-size: 0.7em;
    line-height: 1;
    position: absolute;
    left: 0;
    bottom: 100%;
    font-weight: normal;
}
div#wrapcont table.cmn__tbl_type1.extype1 th.wm-v {
    width: 7em;
    line-height: 1.5;
    padding: 0.5em;
}
div#wrapcont table.cmn__tbl_type1.extype1 th.wm-v .txtwrap,
div#wrapcont table.cmn__tbl_type1.extype1 td.wm-v .txtwrap {
    line-height: inherit;
    font-weight: inherit;
    color: inherit;
    display: inline-block;
    writing-mode: vertical-rl;
}
div#wrapcont table.cmn__tbl_type1.extype2 tbody th {
    background-color: #ffffff;
}
div#wrapcont table.cmn__tbl_type1 ul.list1 {
    line-height: inherit;
}
div#wrapcont table.cmn__tbl_type1 ul.list1 > li {
    position: relative;
    padding-left: 1em;
    line-height: inherit;
}
div#wrapcont table.cmn__tbl_type1 ul.list1 > li::before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    content: '\30fb';
    color: inherit;
    line-height: inherit;
    font-weight: inherit;
}
@media (max-width: 640px) {
    div#wrapcont table.cmn__tbl_type1.extype1 th.wm-v {
        width: 5em;
    }
}
div#wrapcont table.cmn__tbl_type1 th,
div#wrapcont table.cmn__tbl_type1 td {
    padding: 20px 30px;
    border-top: 1px solid #9E9E9F;
    border-left: 1px solid #9E9E9F;
    vertical-align: middle;
    line-height: 1.75;
}
div#wrapcont table.cmn__tbl_type1 th.va-top,
div#wrapcont table.cmn__tbl_type1 td.va-top {
    vertical-align: top;
}
div#wrapcont table.cmn__tbl_type1 th > *,
div#wrapcont table.cmn__tbl_type1 td > * {
    font-weight: inherit;
    line-height: inherit;
}
div#wrapcont table.cmn__tbl_type1 thead th,
div#wrapcont table.cmn__tbl_type1 thead td,
div#wrapcont table.cmn__tbl_type1 tbody th {
    background-color: #DDEDD4;
    font-weight: bold;
    text-align: center;
}
div#wrapcont table.cmn__tbl_type1 tbody td {
    background-color: #ffffff;
}
div#wrapcont table.cmn__tbl_type1.t-allcenter thead th,
div#wrapcont table.cmn__tbl_type1.t-allcenter thead td,
div#wrapcont table.cmn__tbl_type1.t-allcenter tbody th,
div#wrapcont table.cmn__tbl_type1.t-allcenter tbody td {
    text-align: center;
}
div#wrapcont table.cmn__tbl_type1 thead th.t-left,
div#wrapcont table.cmn__tbl_type1 thead td.t-left,
div#wrapcont table.cmn__tbl_type1 tbody th.t-left,
div#wrapcont table.cmn__tbl_type1 tbody td.t-left {
    text-align: left;
}
@media (max-width: 640px) {
    div#wrapcont table.cmn__tbl_type1 th,
    div#wrapcont table.cmn__tbl_type1 td {
        padding: 10px 15px;
        line-height: 2;
    }
    div#wrapcont table.cmn__tbl_type1 .ex1_wrap .ex1 {
        position: static;
        display: block;
    }
}


div#wrapcont #edgeBnr {
    position: fixed;
    top: 250px;
    right: 15px;
/*    z-index: 10001;*/
    z-index: 9999;
    width: 60px;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox {
    flex-direction: column;
    gap: 20px 15px;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li {
    overflow: hidden;
    box-shadow: 3px 3px 3px rgba(0,0,0,0.25);
    -moz-box-shadow: 3px 3px 3px rgba(0,0,0,0.25);
    -webkit-box-shadow: 3px 3px 3px rgba(0,0,0,0.25);
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    background-size: 30px auto;
    background-repeat: no-repeat;
    background-position: center top 15px;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr a {
    padding: 15px;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 10px 10px;
    text-align: center;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr.type1 a {
    background-color: var(--site-theme-color2);
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr.type2 a {
    background-color: var(--site-theme-color3);
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-icon {
    width: 2em;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-txt {
    color: #ffffff;
    font-weight: bold;
    line-height: 1.25;
    width: 1em;
    text-align: center;
    font-size: 1.1em;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-txt br.ex1 {
    display: none;
}
div#wrapcont #edgeBnr ul.itemlist.flexbox > li.icon {
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    display: none;
}
@media (max-width: 767px) {
    div#wrapcont #edgeBnr {
        top: auto;
        bottom: 10px;
        right: 10px;
        width: auto;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox {
        flex-direction: row;
        align-items: flex-end;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr a {
        align-items: center;
        flex-direction: row;
        padding: 10px 10px;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-icon {
        width: 1.5em;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-txt {
        width: auto;
        font-size: 0.9em;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox > li.bnr .clm-txt br.ex1 {
        display: inline-block;
    }
    div#wrapcont #edgeBnr ul.itemlist.flexbox > li.icon {
        display: block;
        width: 50px;
    }
}


div#wrapcont .cmn__box_timetable table.main * {
    line-height: 1.25;
}
div#wrapcont .cmn__box_timetable table.main th,
div#wrapcont .cmn__box_timetable table.main td {
    text-align: center;
    vertical-align: middle;
}
div#wrapcont .cmn__box_timetable table.main th {
    width: 150px;
}
div#wrapcont .cmn__box_timetable table.main thead {
    margin-bottom: 5px;
}
div#wrapcont .cmn__box_timetable table.main thead th,
div#wrapcont .cmn__box_timetable table.main thead td {
    background-color: var(--site-theme-color2);
    color: #ffffff;
    font-weight: bold;
    padding: 0.75em 0.25em;
}
div#wrapcont .cmn__box_timetable table.main thead th {
    border-radius: 15px 0 0 15px;
    -webkit-border-radius: 15px 0 0 15px;
    -moz-border-radius: 15px 0 0 15px;
}
div#wrapcont .cmn__box_timetable table.main thead td:last-of-type {
    border-radius: 0 15px 15px 0;
    -webkit-border-radius: 0 15px 15px 0;
    -moz-border-radius: 0 15px 15px 0;
}
div#wrapcont .cmn__box_timetable table.main tbody {
    background-color: #ffffff;
}
div#wrapcont .cmn__box_timetable table.main tbody th,
div#wrapcont .cmn__box_timetable table.main tbody td {
    padding: 0.5em 0.25em;
}
div#wrapcont .cmn__box_timetable table.main tbody tr.space > th,
div#wrapcont .cmn__box_timetable table.main tbody tr.space > td {
    padding: 0;
    height: 10px;
}
div#wrapcont .cmn__box_timetable table.main tbody th {
    font-weight: normal;
}
div#wrapcont .cmn__box_timetable table.main tbody th .ib {
    display: inline-block;
    color: inherit;
}
div#wrapcont .cmn__box_timetable table.main tbody td {
    position: relative;
}
div#wrapcont .cmn__box_timetable table.main tbody td::before {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    z-index: 1;
    content: '';
}
div#wrapcont .cmn__box_timetable table.main tbody td.open::before {
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    background-color: var(--site-theme-color2);
    width: 1.25em;
    aspect-ratio: 1 / 1;
    transform: translate(-50%,-50%);
}
div#wrapcont .cmn__box_timetable table.main tbody td.close::before {
    transform: translate(-50%,-50%) rotate(-45deg);
    width: 1.25em;
    height: 1px;
    background-color: #3E3A39;
}
div#wrapcont .cmn__box_timetable table.main tbody td.ex::before {
    background-color: var(--site-theme-color3);
    width: 0.9em;
    aspect-ratio: 1 / 1;
    transform: translate(-50%,-50%);
}
div#wrapcont .cmn__box_timetable .txt-btm {
    margin-top: 15px;
}
div#wrapcont .cmn__box_timetable .txt-btm .icon1 {
    background-color: var(--site-theme-color3);
    width: 0.9em;
    aspect-ratio: 1 / 1;
    display: inline-block;
}
@media (max-width: 640px) {
    div#wrapcont .cmn__box_timetable table.main th {
        width: 80px;
    }
    div#wrapcont .cmn__box_timetable table.main tbody th,
    div#wrapcont .cmn__box_timetable table.main tbody td {
        padding: 0.25em 0.25em;
    }
    div#wrapcont .cmn__box_timetable table.main tbody th .ib {
        display: block;
    }
}


div#wrapcont ul.cmn__itemlist1 {
    gap: 30px 0;
    flex-direction: column;
    width: 100%;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist {
    gap: 10px 20px;
    align-items: flex-start;
    justify-content: flex-start;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist > dt {
    color: #ffffff;
    background-color: var(--site-theme-color3);
    line-height: 1.5;
    text-align: center;
    padding: 0.5em 1em;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    font-weight: bold;
    min-width: 7.5em;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist > dd {
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist .img1 img {
    max-height: 2em;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist img.icon1 {
    height: 2em;
    vertical-align: middle;
    margin-right: 0.5em;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist img.icon2 {
    height: 1.5em;
    vertical-align: middle;
    margin-right: 0.5em;
}
div#wrapcont ul.cmn__itemlist1 > li dl.txtlist .icon3 {
    color: #ffffff;
    vertical-align: middle;
    margin-right: 0.5em;
    display: inline-block;
    width: 1.5em;
    aspect-ratio: 1 / 1;
    background-color: #79BE58;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    text-align: center;
    line-height: 1.5em;
    font-weight: bold;
}
@media (max-width: 640px) {
    div#wrapcont ul.cmn__itemlist1 > li dl.txtlist {
        flex-direction: column;
        align-items: center;
    }
}


div#wrapcont ul.cmn__itemlist2.flexbox {
    gap: 50px 80px;
}
div#wrapcont ul.cmn__itemlist2.flexbox > li {
    width: calc( 50% - 40px );
}
body.home div#wrapcont ul.cmn__itemlist2.flexbox > li:nth-child(1) {
    background-image: url('../images/common/parts_grass.png');
    background-size: auto 100px;
    background-repeat: repeat-x;
    background-position: center bottom;
    padding-bottom: calc(100px + 20px);
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row1 > *:nth-child(n+2) {
    margin-top: 20px;
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row2 {
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row3 {
    margin-top: 20px;
    text-align: center;
    font-weight: bold;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-end;
    gap: 5px 20px;
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row3 .line {
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row3 .large {
    font-size: 1.25em;
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row3 ruby:not(:last-child) {
    margin-right: 1em;
}
div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row4 {
    text-align: right;
    margin-top: 20px;
}
@media (max-width: 1200px) {
    div#wrapcont ul.cmn__itemlist2.flexbox {
        flex-direction: column;
        align-items: center;
    }
    div#wrapcont ul.cmn__itemlist2.flexbox > li:nth-child(1) {
        width: 100%;
    }
    div#wrapcont ul.cmn__itemlist2.flexbox > li:nth-child(2) {
        width: 100%;
        max-width: 500px;
    }
}
@media (max-width: 640px) {
    div#wrapcont ul.cmn__itemlist2.flexbox > li .item-row3 {
        flex-direction: column;
        align-items: center;
    }
}


div#wrapcont .cmn__itemlist2_v2 {
}
div#wrapcont .cmn__itemlist2_v2 .item-row1 > p {
    line-height: 2;
}
div#wrapcont .cmn__itemlist2_v2 .item-row1 > p:nth-child(n+2) {
    margin-top: 1em;
}
div#wrapcont .cmn__itemlist2_v2 .item-row2 {
    margin-top: 30px;
    text-align: center;
    font-weight: bold;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-end;
    gap: 5px 20px;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: 0;
}
div#wrapcont .cmn__itemlist2_v2 .item-row2 .line {
}
div#wrapcont .cmn__itemlist2_v2 .item-row2 .large {
    font-size: 1.25em;
}
div#wrapcont .cmn__itemlist2_v2 .item-row2 ruby:not(:last-child) {
    margin-right: 1em;
}
@media (max-width: 640px) {
    div#wrapcont .cmn__itemlist2_v2 .item-row2 {
        flex-direction: column;
        align-items: center;
    }
}


div#wrapcont ul.cmn__itemlist3.flexbox {
    flex-direction: column;
    gap: 30px 0;
}
div#wrapcont ul.cmn__itemlist3.flexbox > li:nth-child(1) {
    --clm-number-color: var(--site-theme-color2);
    background-color: #DAEFE9;
}
div#wrapcont ul.cmn__itemlist3.flexbox > li:nth-child(2) {
    --clm-number-color: var(--site-theme-color1);
    background-color: #D3ECD4;
}
div#wrapcont ul.cmn__itemlist3.flexbox > li:nth-child(3) {
    --clm-number-color: var(--site-theme-color3);
    background-color: #E6ECC0;
}
div#wrapcont ul.cmn__itemlist3.flexbox > li {
    padding: 30px 30px 30px 70px;
    background-color: var(--clm-number-color);
    min-height: 150px;
    position: relative;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
}
div#wrapcont ul.cmn__itemlist3.flexbox > li .txt-number {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%,-50%);
    z-index: 1;
    content: '';
    box-shadow: 0 0 0 5px var(--clm-number-color);
    -moz-box-shadow: 0 0 0 5px var(--clm-number-color);
    -webkit-box-shadow: 0 0 0 5px var(--clm-number-color);
    background-color: var(--clm-number-color);
}
div#wrapcont ul.cmn__itemlist3.flexbox > li .txt-main {
}
@media (max-width: 1000px) {
    div#wrapcont ul.cmn__itemlist3.flexbox {
        padding-left: 30px;
    }
}
@media (max-width: 767px) {
    div#wrapcont ul.cmn__itemlist3.flexbox {
        padding-left: 0;
        padding-top: calc(70px / 2);
        gap: calc((70px / 2) + 30px) 0;
    }
    div#wrapcont ul.cmn__itemlist3.flexbox > li .txt-number {
        top: 0;
        left: 50%;
        transform: translate(-50%,-50%);
    }
    div#wrapcont ul.cmn__itemlist3.flexbox > li {
        padding: calc((70px / 2) + 30px) 30px 30px 30px;
    }
}


div#wrapcont .cmn__mainclm_type1 {
    background-color: var(--site-theme-color2);
    padding: 40px 15px;
}
div#wrapcont .cmn__mainclm_type1 .item-row1 {
    text-align: center;
}
div#wrapcont .cmn__mainclm_type1 .item-row1 img {
    width: min( 100%, 500px );
}
div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox {
    justify-content: center;
    align-items: center;
    gap: 20px 20px;
    flex-wrap: wrap;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox.twoclm {
    width: min( 100%, 600px );
}
div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox > li {
    width: 260px;
    max-width: 100%;
}
div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox > li a {
    text-align: center;
    border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    background-color: #ffffff;
    color: var(--site-theme-color2);
    padding: 1.25em;
    font-weight: bold;
    display: block;
}
@media (max-width: 640px) {
    div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox > li {
        width: calc(50% - 10px);
    }
}
@media (max-width: 500px) {
    div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox {
        gap: 20px 10px;
    }
    div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox > li {
        width: calc(50% - 5px);
    }
    div#wrapcont .cmn__mainclm_type1 ul.item-row2.flexbox > li a {
        padding: 1.25em 1em;
    }
}


div#wrapcont .cmn__mainclm_type2 {
    width: min(100%, 900px);
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox {
    width: calc( 100% + 20px );
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 40px 0;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li {
    width: calc( ( 100% / 3 ) - 20px );
    margin-right: 20px;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border: 1px solid var(--site-theme-color2);
    overflow: hidden;
    height: 100%;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dt {
    text-align: center;
    color: #ffffff;
    background-color: var(--site-theme-color2);
    padding: 20px 15px;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd {
    background-color: #ffffff;
    padding: calc(30px - 15px) 20px 30px 20px;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub {
    width: 200px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub > li {
    border-bottom: 1px dashed var(--site-theme-color2);
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub > li a {
    display: block;
    position: relative;
    padding: 10px calc(1em + 1em + 1em) 10px calc(0.5em + 0.75em);
    line-height: 1.5;
    background-image: url('../images/common/parts_link-arrow-green2.svg');
    background-size: 1em auto;
    background-repeat: no-repeat;
    background-position: top calc( (1em + 1.5em - 0.5em) / 2 ) right 1em;
}
div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub > li a::before {
    position: absolute;
    top: calc( (1em + 1.5em - 0.5em) / 2 );
    left: 0;
    z-index: 1;
    content: '';
    width: 0.5em;
    aspect-ratio: 1 / 1;
    background-color: #C0D061;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}
@media (max-width: 767px) {
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li {
        width: calc( ( 100% / 2 ) - 20px );
    }
}
@media (max-width: 500px) {
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox {
        width: calc( 100% + 10px );
        gap: 20px 0;
    }
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li {
        width: calc( ( 100% / 2 ) - 10px );
        margin-right: 10px;
    }
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dt {
        padding: 10px 15px;
    }
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd {
        padding: calc(20px - 15px) 15px 20px 15px;
    }
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub > li br.ex1 {
        display: none;
    }
    div#wrapcont .cmn__mainclm_type2 ul.item-row1.flexbox > li dl.itemlist-sub > dd ul.itemlist-sub-sub > li a {
        padding: 10px calc(1em + 1em) 10px calc(0.5em + 0.75em);
        background-position: top calc( (1em + 1.5em - 0.5em) / 2 ) right 0;
    }
}


div#wrapcont .cmn__mainclm_type3 {
    width: min(100%, 900px);
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox {
    gap: 30px 0;
    flex-direction: column;
}
div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li {
    background-color: #ffffff;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    padding: 30px;
}
div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li dl.itemlist-sub {
    width: min(100%, 750px);
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li dl.itemlist-sub > dt {
    font-weight: bold;
    font-size: 1.125em;
    color: var(--site-theme-color2);
    padding: 0 15px 10px 15px;
    border-bottom: 1px solid var(--site-theme-color2);
    margin-bottom: 15px;
    line-height: 1.5;
}
div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li dl.itemlist-sub > dd {
    padding: 0 15px;
}
@media (max-width: 500px) {
    div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li {
        padding: 30px 20px;
    }
    div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li dl.itemlist-sub > dt {
        padding: 10px 0;
    }
    div#wrapcont .cmn__mainclm_type3 ul.item-row1.flexbox > li dl.itemlist-sub > dd {
        padding: 0;
    }
}


div#wrapcont .cmn__article_body *:not(br) {
    line-height: 1.75;
    /*font-family: "Noto Sans JP", sans-serif;*/
    /*font-optical-sizing: auto;*/
    /*font-style: normal;*/
}
div#wrapcont .cmn__article_body > * {
    margin-top: 40px;
}
div#wrapcont .cmn__article_body > p {
    margin-top: 10px;
}
div#wrapcont .cmn__article_body > *:first-child {
    margin-top: 0;
}
div#wrapcont .cmn__article_body a {
    text-decoration: underline;
}
div#wrapcont .cmn__article_body ul {
    margin-left: 1.5em;
    list-style-type: disc;
}
div#wrapcont .cmn__article_body strong {
    font-weight: 700;
}
div#wrapcont .cmn__article_body .aligncenter {
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont .cmn__article_body .wp-element-caption {
    margin-top: 0.5em;
}
div#wrapcont .cmn__article_body h1.wp-block-heading {
}
div#wrapcont .cmn__article_body h2.wp-block-heading {
    font-size: 1.5em;
}
div#wrapcont .cmn__article_body h3.wp-block-heading {
    font-size: 1.35em;
}
div#wrapcont .cmn__article_body h4.wp-block-heading {
    border-bottom: 2px solid var(--site-theme-color1);
    border-left: 5px solid var(--site-theme-color1);
    padding: 0.25em 0.5em 0.25em 0.5em;
    width: fit-content;
    color: var(--site-theme-color1);
    max-width: 100%;
    line-height: 1.5;
    font-size: 1.35em;
    margin-bottom: 15px;
    font-weight: 500;
}
div#wrapcont .cmn__article_body h4.wp-block-heading + * {
    margin-top: 0;
}
div#wrapcont .cmn__article_body h5.wp-block-heading {
    color: var(--site-theme-color1);
    margin-bottom: 15px;
    font-size: 1.25em;
    font-weight: 500;
    border-bottom: 2px solid var(--site-theme-color1);
    width: fit-content;
    max-width: 100%;
}
div#wrapcont .cmn__article_body h5.wp-block-heading + * {
    margin-top: 0;
}
div#wrapcont .cmn__article_body h6.wp-block-heading {
    margin-bottom: 10px;
    font-size: 1.15em;
    color: var(--site-theme-color1);
}
div#wrapcont .cmn__article_body h6.wp-block-heading + * {
    margin-top: 0;
}
@media (max-width: 500px) {
    div#wrapcont .cmn__article_body > * {
        margin-top: 30px;
    }
}


/* ----------------------------------------
* ヘッダー
---------------------------------------- */
div#wrapcont header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
}
div#wrapcont header > .inner {
    width: min( calc( 100% - 30px ), 1350px );
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
}
div#wrapcont header ul.itemlist.flexbox {
    gap: 0 40px;
    align-items: flex-end;
}
div#wrapcont header ul.itemlist.flexbox > li.logo {
    width: 260px;
    max-width: 100%;
}
div#wrapcont header ul.itemlist.flexbox > li.main {
    width: min( 100% - 40px - 260px );
}
div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 {
    margin-left: auto;
    margin-right: 0;
    width: fit-content;
}
div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 .txt1 {
    font-size: 0.9em;
    text-shadow: #ffffff 2px 0px 2px,
                 #ffffff -2px 0px 2px,
                 #ffffff 0px -2px 2px,
                 #ffffff 0px 2px 2px,
                 #ffffff 2px 2px  2px,
                 #ffffff -2px 2px 2px,
                 #ffffff 2px -2px 2px,
                 #ffffff -2px -2px 2px,
                 #ffffff 1px 2px 2px,
                 #ffffff -1px 2px 2px,
                 #ffffff 1px -2px 2px,
                 #ffffff -1px -2px 2px,
                 #ffffff 2px 1px 2px,
                 #ffffff -2px 1px 2px,
                 #ffffff 2px -1px 2px,
                 #ffffff -2px -1px 2px;
}
div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 .txt2 {
    text-shadow: #ffffff 2px 0px 2px,
                 #ffffff -2px 0px 2px,
                 #ffffff 0px -2px 2px,
                 #ffffff 0px 2px 2px,
                 #ffffff 2px 2px  2px,
                 #ffffff -2px 2px 2px,
                 #ffffff 2px -2px 2px,
                 #ffffff -2px -2px 2px,
                 #ffffff 1px 2px 2px,
                 #ffffff -1px 2px 2px,
                 #ffffff 1px -2px 2px,
                 #ffffff -1px -2px 2px,
                 #ffffff 2px 1px 2px,
                 #ffffff -2px 1px 2px,
                 #ffffff 2px -1px 2px,
                 #ffffff -2px -1px 2px;
}
div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 .txt2 a.tel {
    display: inline-block;
    vertical-align: text-bottom;
    margin-left: 20px;
    margin-top: 5px;
}
div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 .txt2 a.tel img {
/*    height: 2em;*/
    height: 2.25em;
/*    filter: drop-shadow(3px 3px 0px #ffffff);*/
}
@media (max-width: 1200px) {
    div#wrapcont header ul.itemlist.flexbox > li.main .list-item1 {
        display: none;
    }
}
@media (max-width: 1000px) {
    div#wrapcont header ul.itemlist.flexbox {
        align-items: flex-start;
    }
    div#wrapcont header ul.itemlist.flexbox > li.logo {
        width: 200px;
    }
    div#wrapcont header ul.itemlist.flexbox > li.main {
        width: min( 100% - 40px - 200px );
    }
}
@media (max-width: 850px) {
    div#wrapcont header ul.itemlist.flexbox > li.logo {
        width: 150px;
    }
    div#wrapcont header ul.itemlist.flexbox > li.main {
        width: min( 100% - 40px - 150px );
    }
}
@media (max-width: 767px) {
    div#wrapcont header {
        display: none;
    }
}


/* ----------------------------------------
* Gナビ
---------------------------------------- */
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox {
    gap: 10px 0;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    font-size: 0.9em;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li {
    text-align: center;
    position: relative;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > a {
    padding: 10px 10px;
    width: 100%;
    opacity: 1;
    display: block;
    min-height: 62px;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > a > * {
    font-weight: bold;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > a > .row_sub {
    color: var(--site-theme-color2);
    font-size: 0.9em;
    line-height: 1.25;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > a > .row_main {
    margin-top: 5px;
    line-height: 1.5;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > a > .row_main.icon-home {
    background-image: url('../images/common/icon_home-black.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center top;
    width: 2.5em;
    aspect-ratio: 1 / 1;
}
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li:hover > a > .row_main.icon-home,
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li.cur > a > .row_main.icon-home {
    background-image: url('../images/common/icon_home-white.svg');
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > ul.submenu {
    display: none;
    position: absolute;
    left: 0;
    z-index: 1;
    width: 240px;
    border: 1px solid var(--site-theme-color2);
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > ul.submenu > li {
    text-align: left;
    background-color: #ffffff;
    background-image: url('../images/common/parts_link-arrow-green2.svg');
    background-size: 1.5em auto;
    background-repeat: no-repeat;
    background-position: right 1em center;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > ul.submenu > li:nth-child(n+2) {
    border-top: 1px solid var(--site-theme-color2);
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > ul.submenu > li > a {
    display: block;
    padding: 1em calc(1.5em + 1.5em + 1em) 1em 1.5em;
    opacity: 1;
}
div#wrapcont nav.cmn__gnavi ul.gnavi-list.flexbox > li > ul.submenu > li > a:hover {
    background-color: rgba(133,201,181,0.2);
}
@media (max-width: 767px) {
    div#wrapcont nav.cmn__gnavi {
        display: none!important;
    }
}

div#wrapcont nav.cmn__gnavi.head.static {
    margin-top: 15px;
    margin-left: auto;
    margin-right: 0;
    width: fit-content;
}
@media (max-width: 1200px) {
    div#wrapcont nav.cmn__gnavi.head.static {
        margin-top: 0;
    }
}
div#wrapcont nav.cmn__gnavi.head.fixed {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%;
    background-color: #ffffff;
    padding: 10px 15px 0;
    box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -moz-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
}
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li > a > * {
    text-shadow: #ffffff 2px 0px 2px,
                 #ffffff -2px 0px 2px,
                 #ffffff 0px -2px 2px,
                 #ffffff 0px 2px 2px,
                 #ffffff 2px 2px  2px,
                 #ffffff -2px 2px 2px,
                 #ffffff 2px -2px 2px,
                 #ffffff -2px -2px 2px,
                 #ffffff 1px 2px 2px,
                 #ffffff -1px 2px 2px,
                 #ffffff 1px -2px 2px,
                 #ffffff -1px -2px 2px,
                 #ffffff 2px 1px 2px,
                 #ffffff -2px 1px 2px,
                 #ffffff 2px -1px 2px,
                 #ffffff -2px -1px 2px;
}
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li:hover > a,
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li.cur > a {
    background-color: var(--site-theme-color2);
}
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li:hover > a > *,
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li.cur > a > * {
    text-shadow: none;
    color: #ffffff;
}
div#wrapcont nav.cmn__gnavi.head ul.gnavi-list.flexbox > li > ul.submenu {
    top: 100%;
}
div#wrapcont nav.cmn__gnavi.foot {
    padding: 0 15px;
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li:hover > a,
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li.cur > a {
    background-color: #ffffff;
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li > a > * {
    color: #ffffff;
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li:hover > a > *,
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li.cur > a > * {
    color: var(--site-theme-color2);
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li > a > .row_main.icon-home {
    background-image: url('../images/common/icon_home-white.svg');
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li:hover > a > .row_main.icon-home,
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li.cur > a > .row_main.icon-home {
    background-image: url('../images/common/icon_home-black.svg');
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li > a > .row_sub {
    order: 2;
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li > a > .row_main {
    order: 1;
}
div#wrapcont nav.cmn__gnavi.foot ul.gnavi-list.flexbox > li > ul.submenu {
    bottom: 100%;
}


/* ----------------------------------------
* SPヘッダー、SPナビ
---------------------------------------- */
div#wrapcont #spHeader {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10003;
    background-color: #ffffff;
    border-bottom: 2px solid var(--site-theme-color1);
    box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -moz-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    height: 60px;
}
div#wrapcont #spHeader .flexbox.clm1 {
    height: 60px;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.logo {
    width: calc(100% - 60px);
}
div#wrapcont #spHeader .flexbox.clm1,
div#wrapcont #spHeader .flexbox.clm1 > .child.logo,
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1,
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1 a {
    height: 100%;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1,
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1 a {
    width: 100%;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1 {
    display: table;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1 a {
    display: table-cell;
    vertical-align: middle;
    padding-left: 5px;
    padding-right: 5px;
    height: 50px;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.logo h1 a img {
    object-fit: contain;
    object-position: center;
    width: 100%;
    height: 100%;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.spbtn {
    width: 60px;
    background-color: var(--site-theme-color1);
}
div#wrapcont #spHeader .flexbox.clm1 > .child.spbtn a.btn_open_spnavi:hover,
div#wrapcont #spHeader .flexbox.clm1 > .child.spbtn a.btn_open_spnavi:hover * {
    opacity: 1;
}
div#wrapcont #spHeader .flexbox.clm1 > .child.spbtn a.btn_open_spnavi img {
    width: 100%;
}
@media (max-width: 767px) {
    div#wrapcont #spHeader {
        display: block!important;
    }
}

div#wrapcont #spNavi {
    display: none;
    width: 100%;
    background-color: #DEE6AC;
    position: fixed;
    top: 0;/* js調整  */
    left: 0;
    z-index: 10002;
    border-bottom: 2px solid var(--site-theme-color1);
    box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -moz-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    -webkit-box-shadow: 0 5px 5px rgba(0,0,0,0.25);
    max-height: calc(100% - 60px + 2px);
    overflow-y: auto;
}
/*div#wrapcont #spNavi::-webkit-scrollbar {
    width: 8px;
}
div#wrapcont #spNavi::-webkit-scrollbar-track {
    border-radius: 5px;
    background-color: #cccccc;
}
div#wrapcont #spNavi::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: #00873a;
}*/
div#wrapcont #spNavi ul.itemlist > li {
    position: relative;
}
div#wrapcont #spNavi ul.itemlist > li:first-child {
    padding-top: 1em;
}
div#wrapcont #spNavi ul.itemlist > li:not(:first-child) {
    border-top: 1px solid var(--site-theme-color1);
}
div#wrapcont #spNavi ul.itemlist > li > a {
    display: block;
    padding: 0.75em 1em 0.75em 2em;
    text-decoration: none;
    color: #000000;
    font-size: 16px;
    position: relative;
    opacity: 1;
}
div#wrapcont #spNavi ul.itemlist > li.cur > a,
div#wrapcont #spNavi ul.itemlist > li:hover > a {
    background-color: var(--site-theme-color1);
    color: #ffffff;
    opacity: 1;
}
div#wrapcont #spNavi ul.itemlist > li.cur > a::before,
div#wrapcont #spNavi ul.itemlist > li:hover > a::before {
    position: absolute;
    top: 0.7em;
    left: 5px;
    z-index: 1;
    content: '\25b6';
}
div#wrapcont #spNavi ul.itemlist > li > ul.submenu {
    margin-left: 40px;
}
div#wrapcont #spNavi ul.itemlist > li > ul.submenu > li > a {
    display: block;
    padding: 10px 10px;
    position: relative;
    opacity: 1;
    font-size: 16px;
}
div#wrapcont #spNavi ul.itemlist > li > ul.submenu > li.cur > a,
div#wrapcont #spNavi ul.itemlist > li > ul.submenu > li:hover > a {
    background-color: var(--site-theme-color1);
    color: #ffffff;
}


/* ----------------------------------------
* メインビジュアル
---------------------------------------- */
div#wrapcont #mainVisArea {
    position: relative;
}
div#wrapcont #mainVisArea::before {
    position: absolute;
    top: 0;
    left: 0;
    height: 200px;
    width: 100%;
    content: '';
    z-index: 1;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+66,ffffff+100&0.75+0,0.75+66,0+100 */
    background: -moz-linear-gradient(top,  rgba(255,255,255,0.75) 0%, rgba(255,255,255,0.75) 66%, rgba(255,255,255,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0.75) 0%,rgba(255,255,255,0.75) 66%,rgba(255,255,255,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom,  rgba(255,255,255,0.75) 0%,rgba(255,255,255,0.75) 66%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bfffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
}
div#wrapcont #mainVisArea > h2 {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    z-index: 100;
    width: fit-content;
    max-width: calc( 100% - 30px );
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    transform: translateY( calc(-50% + 50px) );
}
@media (max-width: 767px) {
    div#wrapcont #mainVisArea::before {
        display: none;
    }
    div#wrapcont #mainVisArea > h2 {
        transform: translateY( -50% );
    }
}


/* ----------------------------------------
* メインコンテンツ
---------------------------------------- */
div#wrapcont #mainArea {
    min-height: 300px;
}
div#wrapcont #mainArea section.mainsec > .inner {
    width: min( calc(100% - 30px), 1200px );
    margin-left: auto;
    margin-right: auto;
}
div#wrapcont #mainArea section.mainsec.wide > .inner {
    width: 100%;
}

div#wrapcont #mainArea section.mainsec:last-of-type > .inner {
    padding-bottom: 150px;
}
@media (max-width: 640px) {
    div#wrapcont #mainArea section.mainsec:last-of-type > .inner {
        padding-bottom: 100px;
    }
}

/* ----------------------------------------
* フッター上部コンテンツ
---------------------------------------- */
div#wrapcont #footer-topcontents ul.itemlist.flexbox {
    gap: 4px 4px;
    flex-wrap: wrap;
    justify-content: center;
}
div#wrapcont #footer-topcontents ul.itemlist.flexbox > li {
    overflow: hidden;
    aspect-ratio: 1.1 / 1;
    max-height: 250px;
    width: calc( ( 100% / 5 ) - 4px );
}
div#wrapcont #footer-topcontents ul.itemlist.flexbox > li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
@media (max-width: 1000px) {
    div#wrapcont #footer-topcontents ul.itemlist.flexbox > li {
        width: calc( ( 100% / 3 ) - 4px );
    }
    div#wrapcont #footer-topcontents ul.itemlist.flexbox > li:nth-child(4),
    div#wrapcont #footer-topcontents ul.itemlist.flexbox > li:nth-child(5) {
        width: calc( ( 100% / 2 ) - 4px );
    }
}
@media (max-width: 767px) {
    div#wrapcont #footer-topcontents ul.itemlist.flexbox > li {
        max-height: 150px;
    }
}
div#wrapcont #footer-topcontents ul.itemlist2.flexbox {
    margin-top: 50px;
    width: min( calc( 100% - 30px ), 1200px );
    margin-left: auto;
    margin-right: auto;
    gap: 50px 80px;
    align-items: center;
}
div#wrapcont #footer-topcontents ul.itemlist2.flexbox > li {
    width: calc( 50% - 40px );
}
div#wrapcont #footer-topcontents ul.itemlist2.flexbox > li .item-row1 {
}
div#wrapcont #footer-topcontents ul.itemlist2.flexbox > li .item-row2 {
    margin-top: 50px;
}
div#wrapcont #footer-topcontents ul.itemlist2.flexbox > li .item-row3 {
}
@media (max-width: 1000px) {
    div#wrapcont #footer-topcontents ul.itemlist2.flexbox {
        flex-wrap: wrap;
        flex-direction: column;
    }
    div#wrapcont #footer-topcontents ul.itemlist2.flexbox > li {
        width: 100%;
        max-width: 500px;
    }
}


/* ----------------------------------------
* フッター
---------------------------------------- */
div#wrapcont footer {
    margin-top: 50px;
}
div#wrapcont footer .mainclm1 {
    background-color: var(--site-theme-color2);
    padding: 15px 15px;
}
@media (max-width: 767px) {
    div#wrapcont footer .mainclm1 {
        display: none;
    }
}
div#wrapcont footer .mainclm2 {
    background-color: var(--site-theme-color3);
    padding: 30px 15px;
}
div#wrapcont footer .mainclm2 .item-row1 {
    text-align: center;
}
div#wrapcont footer .mainclm2 .item-row1 img {
    width: 100px;
}
div#wrapcont footer .mainclm2 .item-row2 {
    margin-top: 30px;
    text-align: center;
    color: #ffffff;
    font-size: 0.9em;
}

div#wrapcont footer .ex_space1 {
    width: 100%;
    height: 0;/* JS調整  */
}