@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");

/* html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin        : 0;
    padding       : 0;
    border        : 0;
    outline       : 0;
    font-size     : 100%;
    vertical-align: baseline;
    background    : transparent;
    font-weight   : normal;
} */

/* img {
    margin        : 0;
    padding       : 0;
    border        : 0;
    outline       : 0;
    font-size     : 100%;
    vertical-align: bottom;
    background    : transparent;
} */

/* HTML5 display-role reset for older browsers */
/* article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
} */

/* body {
    line-height: 1;
} */

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing : 0;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

/* a {
    margin         : 0;
    padding        : 0;
    font-size      : 100%;
    vertical-align : baseline;
    background     : transparent;
    text-decoration: none;
} */

.clearfix:after {
    content   : ".";
    display   : block;
    height    : 0;
    clear     : both;
    visibility: hidden;
}

.clearfix {
    display   : inline-table;
    min-height: 1%;
}

/* Hides from IE-mac */
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

/* End hide from IE-mac */
.clear {
    clear: both;
}

@media screen and (min-width: 48em) {
    .hsp {
        display: none;
    }
}

.hpc {
    display: none;
}

@media screen and (min-width: 48em) {
    .hpc {
        display: block;
    }
}

@media screen and (min-width: 64em) {
    .vsp {
        display: none;
    }
}

.vpc {
    display: none;
}

@media screen and (min-width: 64em) {
    .vpc {
        display: block;
    }
}

a[href^="tel:"] {
    cursor: default;
}

@media screen and (min-width: 48em) {
    a[href^="tel:"] {
        pointer-events: none;
    }
}

* {
    margin            : 0;
    padding           : 0;
    -webkit-box-sizing: inherit;
    box-sizing        : inherit;
}

img {
    max-width     : 100%;
    vertical-align: bottom;
}

/* a {
    -webkit-transition: all .4s ease-in-out;
    transition        : all .4s ease-in-out;
}

a {
    color: #000;
} */

.main {
    margin             : 0 auto;
    /* padding-top     : 10.4vw; */
    position           : relative;
    max-width          : 900px;
    background-color   : #ffdc7e;
}

.main__img {
    width : 100%;
    height: auto;
}

.main__fixed {
    position: absolute;
    z-index : 1;
}

.main__kiyaku {
    line-height      : 1.7;
    width            : calc(750 / 900 * 100%);
    height           : calc(450 / 18480 * 100%);
    top              : calc(16425 / 18480 * 100%);
    left             : 50%;
    -webkit-transform: translate(-50%, 0);
    transform        : translate(-50%, 0);
    overflow-y       : scroll;
    margin           : 0 auto;
    background-color : #fff;
    word-break       : break-all;
}

@media screen and (min-width: 48em) {
    .main__kiyaku {
        top   : calc(16413 / 18464 * 100%);
        height: calc(450 / 18464 * 100%);
    }
}

.main__kiyaku h5,
.main__kiyaku p,
.main__kiyaku ul,
.main__kiyaku ol {
    font-size: 14px;
}

@media screen and (min-width: 64em) {
    /* .main {
        padding-top: 72px;
    } */

    .main__kiyaku h5,
    .main__kiyaku p,
    .main__kiyaku ul,
    .main__kiyaku ol {
        font-size: 17px;
    }
}

.main__kiyaku>* {
    word-wrap     : break-word;
    letter-spacing: 0;
}

.main__kiyaku h5 {
    font-weight: normal;
    padding-top: 3%;
    line-height: 1.5;
}

.main__kiyaku h5:first-child {
    padding-top: 0;
}

.main__kiyaku p {
    margin-top: 0.8%;
}

.main__kiyaku a {
    text-decoration: underline;
    color          : #000;
}

.main__kiyaku ul li,
.main__kiyaku ol li {
    padding-left: 1em;
    text-indent : -1em;
}

.main__link01 {
    display          : inline-block;
    top              : calc(1710 / 18480 * 100%);
    width            : calc(800 / 900 * 100%);
    height           : calc(200 / 18480 * 100%);
    left             : 50%;
    -webkit-transform: translate(-50%, 0);
    transform        : translate(-50%, 0);
}

.main__link02 {
    display          : inline-block;
    top              : calc(9544 / 18480 * 100%);
    width            : calc(800 / 900 * 100%);
    height           : calc(200 / 18480 * 100%);
    left             : 50%;
    -webkit-transform: translate(-50%, 0);
    transform        : translate(-50%, 0);
}

.main__link03 {
    display          : inline-block;
    top              : calc(17032 / 18480 * 100%);
    width            : calc(800 / 900 * 100%);
    height           : calc(200 / 18480 * 100%);
    left             : 50%;
    -webkit-transform: translate(-50%, 0);
    transform        : translate(-50%, 0);
}

.main__link04 {
    display          : inline-block;
    top              : calc(17981 / 18480 * 100%);
    width            : calc(835 / 900 * 100%);
    height           : calc(42 / 18480 * 100%);
    left             : 50%;
    -webkit-transform: translate(-50%, 0);
    transform        : translate(-50%, 0);
}

@media screen and (min-width: 48em) {
    .main__link01 {
        top   : calc(1694 / 18464 * 100%);
        height: calc(200 / 18464 * 100%);
    }

    .main__link02 {
        top   : calc(9529 / 18464 * 100%);
        height: calc(200 / 18464 * 100%);
    }

    .main__link03 {
        top   : calc(17017 / 18464 * 100%);
        height: calc(200 / 18464 * 100%);
    }

    .main__link04 {
        top   : calc(17965 / 18464 * 100%);
        height: calc(42 / 18464 * 100%);
    }
}

#footer {
    position         : relative;
    background       : #fff;
    padding          : 60px 0 30px;
    display          : flex;
    align-items      : center;
    flex-direction   : column;
    /* margin        : 0 -24px;
	width               : calc(100% + 48px); */
    border-top       : 1px solid #eee;
}

#footer .logo_f img {
    display: block;
    margin : 0 auto;
}

#footer .sns_list {
    justify-content: center;
    margin         : 30px 0 40px;
    display        : flex;
    flex-wrap      : wrap;
    gap            : 0.5em;
}

#footer .sns_list img {
    width: 42px;
}

#footer .copyright {
    text-align: center;
    font-size : 12px;
}

.header-item_link {
    color: #000 !important;
}

.add-current .header-item_link {
    color  : #fff !important;
    opacity: 1
}

.header-item_link:hover {
    color: #fff !important;
}

@media only screen and (max-width: 767px) {
    .header-item_link {
        color: #fff !important;
    }

}

.header-wrap {
    width   : 100%;
    position: fixed;
    top     : 0;
    left    : 0;
    z-index : 11;
}

.header-wrap:before {
    width            : 100%;
    height           : 10.4vw;
    content          : "";
    display          : block;
    background-image : url(../img/bg01.png);
    background-size  : 7.2vw 100%;
    background-repeat: repeat-x;
    position         : fixed;
    top              : 0;
    left             : 0;
}


.add-sp .header-wrap:before {
    height             : 10.4vw;
    background-size    : 7.2vw 100%;
    background-position: initial;
}

.add-sp .header-wrap.add-active .header-nav {
    transform: scale(1);
}

.add-sp .header-wrap.add-active .header-nav:before {
    width      : 300%;
    padding-top: 300%;
}

.add-sp .header-wrap.add-active .header-navBox {
    transition-delay: .48s;
    transform       : scale(1);
    opacity         : 1;
}

.header-inner {
    position: relative;
}

.add-sp .header-inner {
    width: auto;
}

.header-link {
    width   : 21.3333333333vw;
    display : block;
    float   : left;
    position: relative;
}

.add-sp .header-link {
    width      : 21.3333333333vw;
    margin-left: 3.2vw;
}

.header-brandLink {
    width   : 32.2666666667vw;
    display : block;
    float   : left;
    position: relative;
}

.add-sp .header-brandLink {
    width : 32.2666666667vw;
    margin: 2.4vw 1.8666666667vw;
}

.header-nav {
    position  : fixed;
    top       : 0;
    left      : 0;
    z-index   : 11;
    text-align: center;
}

.header-navBox {
    position: relative;
}

.add-sp .header-nav {
    width              : 100%;
    height             : 100%;
    padding-top        : 9.6vw;
    transform          : scale(0);
    transition-duration: .4s;
    transition-property: transform;
    position           : fixed;
    top                : 0;
}

.add-sp .header-nav:before {
    content                   : "";
    display                   : block;
    width                     : 0%;
    padding-top               : 0%;
    background-color          : rgba(240, 131, 0, .9);
    border-radius             : 50%;
    transform                 : translate(-50%, -50%);
    transition-duration       : .6s;
    transition-timing-function: ease;
    transition-property       : width, padding-top;
    transform-origin          : center center;
    position                  : absolute;
    top                       : 50%;
    left                      : 50%;
}

.add-active .add-sp .header-nav:before {
    width      : 300%;
    padding-top: 300%;
}

.add-sp .header-navBox {
    position : relative;
    transform: scale(0.7);
    opacity  : 0;
}

.add-active .add-sp .header-nav {
    transform: scale(1);
}

.add-sp .header-wrap.add-active .header-nav {
    transform: scale(1);
}

.add-sp .header-wrap.add-active .header-nav:before {
    width      : 300%;
    padding-top: 300%;
}

.add-sp .header-wrap.add-active .header-navBox {
    transition-delay: .48s;
    transform       : scale(1);
    opacity         : 1;
}

.add-sp.add-loaded .header-navBox {
    transition-duration       : .4s;
    transition-property       : transform, opacity;
    transition-timing-function: ease;
}

.header-list {
    display    : inline-block;
    font-size  : 5.3333333333vw;
    font-weight: 500;
    line-height: 2.4;
}

.add-sp .header-list {
    display      : inline-block;
    height       : auto;
    font-size    : 5.3333333333vw;
    line-height  : 2.4;
    float        : none;
    border-left  : 0;
    text-align   : left;
    margin-bottom: 5.6vw;
}

.header-item.add-current {
    cursor: default;
}

.header-item.add-current:after {
    opacity: 1;
}

.header-item_link {
    display : block;
    color   : #fff;
    position: relative;
}

.header-item_link:after {
    content               : "";
    display               : block;
    display               : inline-block;
    background-image      : url(../img/arrow01.svg);
    background-size       : 70%;
    background-position   : center;
    background-repeat     : no-repeat;
    width                 : .8em;
    height                : .8em;
    /* vertical-align     : middle; */
    margin-left           : .2em;
    transition            : opacity .4s;
    opacity               : 1;
}

.add-current .header-item_link:after {
    opacity: 1;
}

.header-item_linkBox {
    position   : relative;
    font-weight: 500;
}

.add-sp .header-item {
    display     : block;
    border-right: 0;
    padding     : 0;
    position    : static;
}

.add-sp .header-item:after {
    display: none;
}

.add-sp .header-item_link {
    display   : block;
    color     : #fff;
    padding   : 0;
    position  : relative;
    transition: none;
}

.add-sp .header-item_link:before {
    display: none;
}

.add-sp .header-item_link:after {
    content         : "";
    display         : block;
    display         : inline-block;
    background-image: url(../img/arrow01.svg);
    width           : .8em;
    height          : .8em;
    transition      : opacity .4s;
    transform       : none;
    opacity         : 1;
    position        : static;
}

.add-sp .header-item_link:hover:after {
    opacity: 1;
}

.add-sp .header-item_linkBox {
    display       : inline;
    vertical-align: middle;
}

.util-snsList {
    display        : flex;
    justify-content: center;
}

.add-sp .util-snsList {
    display: flex;
}

.add-sp .util-sp {
    display: initial;
}

.util-snsItem {
    flex-basis: 11.2vw;
    margin    : 0 2.4vw;
}

.mod-footer .util-snsItem {
    margin: 0 1.3333333333vw;
}

.add-sp .mod-footer .util-snsItem {
    flex-basis: 11.2vw;
    margin    : 0 1.3333333333vw;
}

.header-btn {
    width              : 7.4666666667vw;
    height             : 4.8vw;
    display            : block;
    position           : fixed;
    top                : 2.4vw;
    right              : 4vw;
    z-index            : 11;
    transform          : rotate(0deg);
    transition-duration: .4s;
    transition-property: transform;
}

.add-active .header-btn {
    transform: rotate(360deg);
}

.header-btn_inline {
    background-color   : #fff;
    display            : block;
    width              : 100%;
    height             : 2px;
    position           : absolute;
    top                : calc(50% - 1px);
    left               : 0;
    transition-duration: .4s;
    transition-property: opacity, transform, top, bottom;
    transform-origin   : center;
}

.header-btn_inline:first-child {
    top: 0;
}

.header-btn_inline:last-child {
    top   : auto;
    bottom: 0;
}

.add-active .header-btn_inline {
    opacity: 0;
}

.add-active .header-btn_inline:first-child {
    top      : calc(50% - 1px);
    transform: rotate(30deg);
    opacity  : 1;
}

.add-active .header-btn_inline:last-child {
    bottom   : calc(50% - 1px);
    transform: rotate(-30deg);
    opacity  : 1;
}

.add-sp .header-btn {
    display: block;
}

.add-sp .header-btn_inline {
    display: block;
}

.header-btn_inline {
    background-color   : #fff;
    display            : block;
    width              : 100%;
    height             : 2px;
    position           : absolute;
    top                : calc(50% - 1px);
    left               : 0;
    transition-duration: .4s;
    transition-property: opacity, transform, top, bottom;
    transform-origin   : center;
}

.header-btn_inline:first-child {
    top: 0;
}

.header-btn_inline:last-child {
    top   : auto;
    bottom: 0;
}

.add-active .header-btn_inline {
    opacity: 0;
}

.add-active .header-btn_inline:first-child {
    top      : calc(50% - 1px);
    transform: rotate(30deg);
    opacity  : 1;
}

.add-active .header-btn_inline:last-child {
    bottom   : calc(50% - 1px);
    transform: rotate(-30deg);
    opacity  : 1;
}

.add-sp .header-btn_inline {
    display: block;
}

.add-sp .util-pc {
    display: none;
}

@media screen and (min-width: 751px) {

    .header-wrap:before {
        background-position: center top;
        background-size    : 54px 100%;
        height             : 72px;
    }

    .header-inner {
        max-width: 1005px;
        min-width: 1005px;
        margin   : 0 auto;
    }

    .header-inner:after {
        display: table;
        content: "";
        clear  : both;
    }

    .header-link {
        width: 160px;
    }

    .header-brandLink {
        width : 226px;
        margin: 14px 16px;
    }

    .header-nav {
        position: relative;
        top     : 12px;
    }

    .header-list {
        height     : 42px;
        border-left: 2px solid #000;
        display    : flex;
        float      : right;
        font-size  : 14px;
        line-height: 1.4;
    }

    .header-item {
        border-right: 2px solid #000;
        display     : flex;
        padding     : 2px 0;
        position    : relative;
    }

    .header-item:after {
        content            : "";
        display            : block;
        display            : inline-block;
        background-image   : url(../img/pcarrow02.svg);
        background-size    : 70%;
        background-position: center;
        background-repeat  : no-repeat;
        width              : .8em;
        height             : .8em;
        position           : absolute;
        top                : calc(50% + 1px);
        right              : 8px;
        transform          : translateY(-50%);
        transition         : opacity .4s;
        opacity            : 0;
    }

    .header-item:hover:after {
        opacity: 1
    }

    .header-item_link {
        color      : #000;
        padding    : 0 24px 0 10px;
        display    : flex;
        align-items: center;
        transition : color .4s;
    }

    .header-item_link:before {
        content         : "";
        display         : block;
        background-color: #000;
        border-radius   : 4px;
        opacity         : 0;
        position        : absolute;
        top             : -6px;
        right           : -2px;
        bottom          : -6px;
        left            : -2px;
        transition      : opacity .4s;
    }

    .header-item_link:after {
        background-image: url(../img/pcarrow01.svg);
        position        : absolute;
        top             : calc(50% + 1px);
        right           : 8px;
        transform       : translateY(-50%);
    }

    .header-item_link:hover {
        color  : #fff;
        opacity: 1;
    }

    .header-item_link:hover:before {
        opacity: 1;
    }

    .header-item_link:hover:after {
        opacity: 0;
    }

    .add-current .header-item_link {
        color  : #fff;
        opacity: 1;
    }

    .add-current .header-item_link:before {
        opacity: 1;
    }

    .mod-footer .util-snsItem {
        flex-basis: 42px;
        margin    : 0 6px;
    }

    .util-sp {
        display: none;
    }
}

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

    .header-link {
        margin-left: 3.2vw;
    }

    .header-brandLink {
        margin: 0.5vw 1.8666666667vw;
    }

    .header-nav {
        width      : 100%;
        height     : 100%;
        padding-top: 9.6vw;
        transform  : scale(0);
        transition : transform .4s;
    }

    .add-active .header-nav {
        transform: scale(1);
    }

    .header-nav:before {
        content                   : "";
        display                   : block;
        width                     : 0%;
        padding-top               : 0%;
        background-color          : rgba(240, 131, 0, .9);
        border-radius             : 50%;
        transform                 : translate(-50%, -50%);
        transition-duration       : .6s;
        transition-timing-function: ease;
        transition-property       : width, padding-top;
        transform-origin          : center center;
        position                  : absolute;
        top                       : 50%;
        left                      : 50%;
    }

    .add-active .header-nav:before {
        width      : 300%;
        padding-top: 300%;
    }

    .header-navBox {
        transform                 : scale(0.7);
        opacity                   : 0;
        transition-duration       : .4s;
        transition-property       : transform, opacity;
        transition-timing-function: ease;
    }

    .add-active .header-navBox {
        transition-delay: .48s;
        transform       : scale(1);
        opacity         : 1;
    }

    .header-list {
        text-align   : left;
        margin-bottom: 5.6vw;
    }

    .header-item_linkBox {
        display          : inline;
        /* vertical-align: middle; */
    }

    .util-pc {
        display: none;
    }
}

/*# sourceMappingURL=style.css.map */