﻿*,
*::before,
*::after {
    box-sizing: border-box
}

body {
    margin: 0
}

.wrapper {
    width: 100vw;
    margin: 0 0 80px;
    padding-top: 0
}

@media(max-width: 768px) {
    .wrapper {
        padding-top: 0;
        width: initial;
        margin: initial
    }
}

.container {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0
}

@media(max-width: 768px) {
    .container {
        width: initial;
        max-width: initial;
        padding-left: 15px;
        padding-right: 15px
    }
}

#wrap {
    margin: 0 auto;
    color: #222;
    font-family: serif;
    font-size: 18px;
    text-align: center;
    line-height: 1.7;
    min-width: 1200px;
    overflow: hidden
}

@media(max-width: 768px) {
    #wrap {
        max-width: 768px;
        width: 100%;
        min-width: initial;
        font-size: 3.6vw
    }
}

#wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    vertical-align: bottom
}

#wrap .sp {
    display: none
}

@media(max-width: 768px) {
    #wrap .sp {
        display: block
    }
}

#wrap .pc {
    display: block
}

@media(max-width: 768px) {
    #wrap .pc {
        display: none
    }
}

#wrap a {
    text-decoration: none
}

#wrap ul {
    list-style: none;
    padding-left: 0
}

#wrap button {
    outline: none
}

#wrap .kv {
    width: 1200px;
    height: 500px;
    margin: 0 auto
}

@media(max-width: 768px) {
    #wrap .kv {
        width: 100%;
        height: auto;
        margin: 0 auto;
        padding: 0 15px
    }
}

#wrap .link {
    width: 1020px;
    margin: 20px auto
}

#wrap .link ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap
}

#wrap .link ul li {
    width: 230px;
    height: 80px;
    margin: 10px;
    border: solid 1px #e293a1;
    padding: 2px
}

#wrap .link ul li a {
    display: block;
    width: 100%;
    height: 100%;
    color: #e293a1;
    font-size: 22px;
    font-weight: bold;
    border: solid 1px #e293a1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: .4s
}

#wrap .link ul li a::after {
    content: "";
    display: block;
    border-width: 10px 0 10px 10px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #e293a1;
    transform: rotate(45deg);
    position: absolute;
    right: -2px;
    bottom: -7px;
    transition: .4s
}

#wrap .link ul li a:hover {
    background-color: #e293a1;
    color: #fff
}

#wrap .link ul li a:hover::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff
}

#wrap .link ul li:nth-of-type(7) {
    border-color: #a09159;
    grid-column: 1 / 3;
    height: 52px;
}

#wrap .link ul li:nth-of-type(7) a {
    background-color: #a09159;
    border-color: #a09159;
    color: #fff;
}

#wrap .link ul li:nth-of-type(7) a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff
}

#wrap .link ul li:nth-of-type(7):hover a {
    background-color: #fff;
    color: #a09159
}


#wrap .link ul li:nth-of-type(7):hover a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #a09159
}

#wrap .link ul li:nth-of-type(8) {
    border-color: #222422;
    grid-column: 3 / 5;
    height: 52px;
}

#wrap .link ul li:nth-of-type(8) a {
    background-color: #222422;
    border-color: #222422;
    color: #fff
}

#wrap .link ul li:nth-of-type(8) a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff
}

#wrap .link ul li:nth-of-type(8):hover a {
    background-color: #fff;
    color: #222422
}

#wrap .link ul li:nth-of-type(8):hover a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #222422
}

#wrap .link ul li:nth-of-type(9) {
    border-color: #745E48;
    grid-column: 5 / 7;
    height: 52px;
}

#wrap .link ul li:nth-of-type(9) a {
    background-color: #745E48;
    border-color: #745E48;
    color: #fff
}

#wrap .link ul li:nth-of-type(9) a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #fff
}

#wrap .link ul li:nth-of-type(9):hover a {
    background-color: #fff;
    color: #745E48
}

#wrap .link ul li:nth-of-type(9):hover a::after {
    border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #745E48
}

@media(max-width: 768px) {
    #wrap .link {
        max-width: 768px;
        width: 100%;
        margin: 20px auto;
        padding: 0 15px
    }

    #wrap .link ul li {
        /*width: 45%;*/
        width: 48%;
        margin: 1% 1%;
        /*height: auto*/
        height: 12vw;
    }

    #wrap .link ul li a {
        font-size: 3.6vw;
        transition: 0s;
        padding: 5%
    }

    #wrap .link ul li a::after {
        transition: 0s
    }

    #wrap .link ul li:nth-of-type(7),#wrap .link ul li:nth-of-type(8),#wrap .link ul li:nth-of-type(9){
        height: 12vw;
    }
}

#wrap .about {
    width: 1200px;
    margin: 120px auto
}

#wrap .about h1 {
    font-weight: bold
}

#wrap .about h1:after {
    content: "";
    display: block;
    width: 80px;
    height: 2px;
    background-color: #e293a1;
    margin: 10px auto
}

#wrap .about p {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    margin-top: 40px
}

#wrap .about p span {
    display: inline-block;
    font-size: 14px;
    margin-top: 20px
}

#wrap .about .about_df {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 40px auto
}

#wrap .about .about_df .about_left {
    width: 650px
}

#wrap .about .about_df .about_left .kome {
    font-size: 16px
}

#wrap .about .about_df .about_right {
    width: 500px;
    text-align: left
}

#wrap .about .about_df .about_right .feature {
    text-align: center;
    font-size: 23px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px
}

#wrap .about .about_df .about_right .feature::after {
    content: "";
    display: block;
    background: url(../_img/select.svg) no-repeat center center;
    background-size: contain;
    width: 83px;
    height: 60px;
    margin-left: 5px
}

#wrap .about .about_df .about_right .feature_list li {
    margin-bottom: 20px
}

#wrap .about .about_df .about_right .feature_list li .bold {
    font-size: 20px;
    font-weight: bold;
    font-family: serif;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end
}

#wrap .about .about_df .about_right .feature_list li .bold::before {
    content: "";
    display: block;
    background: url(../_img/no1.svg) no-repeat center center;
    background-size: contain;
    width: 37px;
    height: 37px;
    margin-right: -10px
}

#wrap .about .about_df .about_right .feature_list li:nth-of-type(2) .bold::before {
    background: url(../_img/no2.svg) no-repeat center center
}

#wrap .about .about_df .about_right .feature_list li:nth-of-type(3) .bold::before {
    background: url(../_img/no3.svg) no-repeat center center
}

#wrap .about .about_df .about_right .feature_list li:nth-of-type(4) .bold::before {
    background: url(../_img/no4.svg) no-repeat center center
}

#wrap .about .about_df .about_right .feature_list li:nth-of-type(5) .bold::before {
    background: url(../_img/no5.svg) no-repeat center center
}

#wrap .about .about_df .about_right .feature_list li:nth-of-type(6) .bold::before {
    background: url(../_img/no6.svg) no-repeat center center
}

#wrap .about .about_df .about_right .feature_list li p {
    font-size: 16px;
    margin-top: 0
}

@media(max-width: 768px) {
    #wrap .about {
        max-width: 768px;
        width: 100%;
        margin: 16% auto;
        padding: 0 15px
    }

    #wrap .about h1 {
        font-size: 7vw
    }

    #wrap .about p {
        font-size: 4vw;
        margin-top: 4%
    }

    #wrap .about p span {
        font-size: 3.2vw
    }

    #wrap .about .about_df {
        display: block;
        margin: 10% auto
    }

    #wrap .about .about_df .about_left {
        width: 100%
    }

    #wrap .about .about_df .about_left .kome {
        font-size: 3.4vw
    }

    #wrap .about .about_df .about_right {
        width: 100%;
        text-align: left;
        margin: 5% auto
    }

    #wrap .about .about_df .about_right .feature {
        font-size: 5.5vw
    }

    #wrap .about .about_df .about_right .feature_list li {
        margin-bottom: 10%
    }

    #wrap .about .about_df .about_right .feature_list li .bold {
        font-size: 5vw
    }

    #wrap .about .about_df .about_right .feature_list li .bold::before {
        width: 10vw;
        height: 10vw;
        margin-right: 0px
    }

    #wrap .about .about_df .about_right .feature_list li p {
        font-size: 3.5vw
    }
}

#wrap h2 {
    font-size: 44px;
    color: #e293a1;
    display: flex;
    justify-content: center;
    align-items: center
}

#wrap h2::before,
#wrap h2::after {
    content: "";
    display: block;
    background: url(../_img/h2.svg) no-repeat center center;
    background-size: contain;
    width: 30px;
    height: 30px;
    margin: 0 10px
}

@media(max-width: 768px) {
    #wrap h2 {
        font-size: 7vw
    }

    #wrap h2::before,
    #wrap h2::after {
        width: 5vw;
        height: 5vw
    }
}

#wrap .design {
    margin: 0 auto
}

#wrap .design p {
    font-size: 16px;
    margin-top: 20px
}

#wrap .design .tab_area .tab {
    display: flex;
    justify-content: center;
    width: 1200px;
    margin: 80px auto 0
}

#wrap .design .tab_area .tab .tab_li {
    width: 48%;
    margin: 0 1%;
    border: solid 2px #e293a1;
    border-bottom: initial;
    border-radius: 40px 40px 0 0;
    background-color: #e293a1
}

#wrap .design .tab_area .tab .tab_li button {
    background: initial;
    border: initial;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    height: 100%;
    width: 100%
}

#wrap .design .tab_area .tab .tab_li button figure {
    width: 150px;
    height: 200px;
    margin: -60px 0 0 0;
    transition: .4s
}

#wrap .design .tab_area .tab .tab_li button p {
    text-align: left;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.3;
    margin: 20px
}

#wrap .design .tab_area .tab .tab_li button p span {
    font-size: 19px
}

#wrap .design .tab_area .tab .tab_li button:hover figure {
    transform: scale(1.05)
}

#wrap .design .tab_area .tab .tab_li button:hover figure img {
    opacity: 1
}

#wrap .design .tab_area .tab .tab_li.is-active {
    background-color: #fff
}

#wrap .design .tab_area .tab .tab_li.is-active button figure {
    transform: scale(1.05)
}

#wrap .design .tab_area .tab .tab_li.is-active p {
    color: #e293a1
}

#wrap .design .tab_area .area {
    border-top: solid 2px #e293a1;
    margin-top: -2px;
    display: none
}

#wrap .design .tab_area .area.is-show {
    display: block;
    padding: 80px 20px 0
}

#wrap .design .tab_area .area h5 {
    font-size: 20px;
    font-weight: bold;
    color: #e293a1;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .design .tab_area .area .modal_df {
    width: 1020px;
    margin: 60px auto;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap
}

#wrap .design .tab_area .area .modal_df li {
    width: 180px;
    height: 270px;
    margin: 0 12px 24px;
    position: relative
}

#wrap .design .tab_area .area .modal_df li::before {
    content: "M";
    position: absolute;
    left: 5px;
    top: 8px;
    font-size: 12px;
    background-color: #e293a1;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    z-index: 1
}

@media(max-width: 768px) {
    #wrap .design .tab_area .area .modal_df li::before {
        width: 4vw;
        height: 4vw;
        aspect-ratio: 1;
        font-size: 2vw;
        top: 2%
    }
}

#wrap .design .tab_area .area .modal_df li a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative
}

#wrap .design .tab_area .area .modal_df .l_size::after {
    content: "L";
    position: absolute;
    left: 28px;
    top: 8px;
    font-size: 12px;
    background-color: #5795ae;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff
}

@media(max-width: 768px) {
    #wrap .design .tab_area .area .modal_df .l_size::after {
        width: 4vw;
        height: 4vw;
        aspect-ratio: 1;
        font-size: 2vw;
        top: 13%;
        left: 5px
    }
}

#wrap .design .tab_area .area .modal_df .popularity a::before {
    content: "";
    display: block;
    background: url(../_img/250124/popularity.svg) no-repeat center center;
    background-size: contain;
    width: 20px;
    height: 40px;
    position: absolute;
    right: 10px;
    z-index: 5
}

@media(max-width: 768px) {
    #wrap .design .tab_area .area .modal_df .popularity a::before {
        width: 12px;
        height: 24px;
        right: 5px
    }
}

@media(max-width: 768px) {
    #wrap .design {
        max-width: 768px;
        width: 100%;
        margin: 0 auto
    }

    #wrap .design p {
        font-size: 3.2vw;
        margin-top: 20px;
        padding: 0 15px;
        text-align: left
    }

    #wrap .design .tab_area .tab {
        max-width: 768px;
        width: 100%;
        margin: 10% auto 0
    }

    #wrap .design .tab_area .tab .tab_li {
        border-radius: 20px 20px 0 0;
        width: 44%
    }

    #wrap .design .tab_area .tab .tab_li button figure {
        display: none
    }

    #wrap .design .tab_area .tab .tab_li button p {
        text-align: center;
        font-size: 4.5vw;
        font-weight: bold;
        line-height: 1.3;
        margin: 10px auto;
        padding: 0
    }

    #wrap .design .tab_area .tab .tab_li button p span {
        font-size: 3.2vw
    }

    #wrap .design .tab_area .area.is-show {
        padding: 10% 20px 0
    }

    #wrap .design .tab_area .area h5 {
        font-size: 5vw
    }

    #wrap .design .tab_area .area .modal_df {
        max-width: 768px;
        width: 100%;
        margin: 10% auto;
        justify-content: flex-start
    }

    #wrap .design .tab_area .area .modal_df li {
        width: 30.3%;
        height: auto;
        margin: 0 1.5% 4%
    }
}

#wrap .set {
    width: 1140px;
    margin: 40px auto;
    padding-top: 80px
}

#wrap .set figure {
    width: 1140px;
    margin: 60px auto
}

#wrap .set .price {
    width: 80%;
    margin: 0 auto 40px 0
}

#wrap .set .kome_list {
    text-align: left;
    font-size: 16px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .set .kome_list li::before {
    content: "※"
}

@media(max-width: 768px) {
    #wrap .set {
        max-width: 768px;
        width: 100%;
        padding: 0 15px;
        padding-top: 10%
    }

    #wrap .set figure {
        width: 100%;
        margin: 7% auto
    }

    #wrap .set .price {
        width: 100%
    }

    #wrap .set .kome_list {
        text-align: left;
        font-size: 3.4vw;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
        margin-left: 0
    }

    #wrap .set .kome_list li::before {
        content: "※"
    }
}

#wrap .size {
    background-color: #fcfbf9;
    padding: 60px 0;
    margin: 120px auto
}

#wrap .size .size_wrap {
    width: 1200px;
    margin: 0 auto
}

#wrap .size .size_wrap .size_img {
    width: 800px;
    margin: 80px auto
}

#wrap .size table {
    width: 1200px;
    margin: 0 auto 40px;
    display: flex;
    justify-content: center
}

#wrap .size table tbody {
    width: 600px
}

#wrap .size table tbody:nth-of-type(2) {
    width: 480px
}

#wrap .size table tr {
    width: 600px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .size table tr th {
    width: 160px;
    border: solid 1px #b7b7b7;
    text-align: center;
    color: #fff;
    background-color: #e293a1;
    font-size: 20px;
    padding: 10px
}

#wrap .size table tr .bl {
    border-left: none
}

#wrap .size table tr .w300 {
    width: 280px
}

#wrap .size table tr td {
    height: 160px;
    background-color: #fff;
    border: solid 1px #b7b7b7;
    padding: 10px;
    font-size: 18px;
    line-height: 1.3
}

#wrap .size table tr td span {
    font-size: 16px
}

#wrap .size .size_list {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    width: 800px;
    margin: 40px auto
}

#wrap .size .size_list li {
    display: flex;
    font-size: 20px
}

#wrap .size .size_list li .bold {
    font-size: 18px;
    font-weight: bold;
    width: 200px;
    text-align: left;
    position: relative
}

#wrap .size .size_list li .bold::after {
    content: "";
    display: block;
    width: 80px;
    height: 1px;
    background-color: #222;
    position: absolute;
    top: 20%;
    right: 10px
}

#wrap .size .size_list li:nth-of-type(4) .bold::after {
    top: 6%
}

#wrap .size .size_list li p {
    font-size: 16px;
    text-align: left
}

#wrap .size .size_list li p span {
    font-size: 14px
}

#wrap .size .kome {
    width: 800px;
    margin: 0 auto;
    font-size: 14px;
    text-align: left
}

@media(max-width: 768px) {
    #wrap .size {
        background-color: #fcfbf9;
        padding: 16% 0;
        margin: 10% auto
    }

    #wrap .size .size_wrap {
        max-width: 768px;
        width: 100%;
        padding: 0 15px
    }

    #wrap .size .size_wrap .size_img {
        width: 100%;
        margin: 10% auto
    }

    #wrap .size table {
        max-width: 768px;
        width: 100%;
        display: block
    }

    #wrap .size table tbody {
        width: 100%
    }

    #wrap .size table tbody:nth-of-type(2) {
        width: 100%
    }

    #wrap .size table tr {
        width: 100%
    }

    #wrap .size table tr th {
        font-size: 4vw
    }

    #wrap .size table tr .bl {
        border-left: solid 1px #b7b7b7
    }

    #wrap .size table tr .w300 {
        width: 33.3333333333%
    }

    #wrap .size table tr td {
        padding: 5px;
        font-size: 3.2vw
    }

    #wrap .size table tr td span {
        font-size: 3vw
    }

    #wrap .size .size_list {
        width: 100%;
        margin: 8% auto
    }

    #wrap .size .size_list li {
        font-size: 3.4vw
    }

    #wrap .size .size_list li .bold {
        font-size: 4vw;
        width: 50%;
        align-items: flex-start
    }

    #wrap .size .size_list li .bold::after {
        content: "";
        width: 30%;
        top: 30%;
        right: 20px
    }

    #wrap .size .size_list li:nth-of-type(1) .bold::after {
        top: 20%
    }

    #wrap .size .size_list li:nth-of-type(4) .bold::after {
        top: 4%
    }

    #wrap .size .size_list li p {
        width: 50%;
        font-size: 3.6vw;
        text-align: left
    }

    #wrap .size .size_list li p span {
        font-size: 14px
    }

    #wrap .size .kome {
        width: 100%;
        font-size: 3.2vw;
        margin: 0
    }
}

#wrap .safe {
    width: 800px;
    margin: 80px auto
}

#wrap .safe h3 {
    font-size: 62px;
    line-height: 1.4;
    margin-bottom: 40px;
    color: #e293a1
}

#wrap .safe h3 span {
    font-size: 45px
}

#wrap .safe .safe_img img {
    width: 80%;
    height: 80%;
    padding: 40px
}

@media(max-width: 768px) {
    #wrap .safe {
        max-width: 768px;
        width: 100%;
        padding: 0 15px;
        margin: 20% auto
    }

    #wrap .safe h3 {
        font-size: 6vw;
        margin-bottom: 5%;
        font-weight: bold
    }

    #wrap .safe h3 span {
        font-size: 5vw
    }

    #wrap .safe .safe_img img {
        width: 90%;
        height: 90%;
        padding: 40px
    }
}

#wrap .reason {
    width: 1200px;
    margin: 80px auto
}

#wrap .reason h3 {
    font-size: 58px;
    line-height: 1.4;
    color: #e293a1
}

#wrap .reason h3 span {
    font-size: 40px
}

#wrap .reason .reason_df {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 20px auto
}

#wrap .reason .reason_df li {
    margin: 20px 10px
}

#wrap .reason .reason_df li .reason_main {
    font-size: 24px;
    line-height: 1.3;
    height: 123px;
    width: 342px;
    border: double 4px #a09159;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold
}

#wrap .reason .reason_df li .reason_detail {
    margin-top: 10px;
    font-size: 16px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .reason .reason_df li .reason_detail span {
    font-size: 12px;
    line-height: 1.3;
    display: block;
    margin-top: 10px
}

@media(max-width: 768px) {
    #wrap .reason {
        max-width: 768px;
        width: 100%;
        margin: 0 auto;
        padding: 0 15px
    }

    #wrap .reason h3 {
        font-size: 6vw;
        font-weight: bold
    }

    #wrap .reason h3 span {
        font-size: 5vw
    }

    #wrap .reason .reason_df {
        margin: 8% auto;
        justify-content: center
    }

    #wrap .reason .reason_df li {
        width: 46%;
        margin: 3% 2%
    }

    #wrap .reason .reason_df li .reason_main {
        font-size: 4vw;
        width: 100%;
        height: 25vw
    }

    #wrap .reason .reason_df li .reason_detail {
        font-size: 3vw;
        text-align: left
    }

    #wrap .reason .reason_df li .reason_detail span {
        font-size: 2.8vw
    }
}

#wrap .gray_bg {
    background-color: #fcfbf9;
    padding: 100px 0
}

#wrap .gray_bg .flow {
    width: 1100px;
    margin: 0 auto
}

#wrap .gray_bg .flow h3 {
    font-size: 50px
}

#wrap .gray_bg .flow .flow_df {
    display: flex;
    justify-content: center
}

#wrap .gray_bg .flow .flow_df li {
    width: 300px;
    margin: 40px 10px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .gray_bg .flow .flow_df li .step {
    width: 40%;
    margin: 0 auto
}

#wrap .gray_bg .flow .flow_df li .flow_img {
    width: 50%;
    margin: 10px auto
}

#wrap .gray_bg .flow .flow_df li .flow_bold {
    font-size: 26px;
    font-weight: bold
}

#wrap .gray_bg .flow .flow_df li .flow_detail {
    font-size: 16px
}

#wrap .gray_bg .flow .flow_df li .flow_detail span {
    font-size: 12px
}

#wrap .gray_bg .shop {
    width: 1200px;
    margin: 100px auto
}

#wrap .gray_bg .shop h3 {
    font-size: 48px
}

#wrap .gray_bg .shop .shop_kome {
    font-size: 16px;
    text-align: center;
    margin-top: 10px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif
}

#wrap .gray_bg .shop .btn_a {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    display: block;
    width: 464px;
    height: 70px;
    background-color: #e293a1;
    color: #fff;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px auto;
    font-weight: bold;
    border-radius: 65px;
    position: relative
}

#wrap .gray_bg .shop .btn_a::after {
    content: "";
    background: #fff;
    height: 13.8564064606px;
    width: 14px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    top: 40%;
    right: 5%
}

#wrap .gray_bg .shop .btn_a:hover {
    background-color: #fff;
    color: #e293a1;
    border: solid 1px #e293a1;
    transition: .4s
}

#wrap .gray_bg .shop .btn_a:hover::after {
    background-color: #e293a1
}

#wrap .gray_bg .kiyaku {
    width: 1000px;
    margin: 80px auto;
    text-align: left
}

#wrap .gray_bg .kiyaku .kiyaku_ttl {
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px
}

#wrap .gray_bg .kiyaku .kiyaku_ttl::before,
#wrap .gray_bg .kiyaku .kiyaku_ttl::after {
    content: "";
    display: block;
    border-bottom: double 4px #e293a1;
    width: 390px;
    height: 1px;
    margin-left: 20px;
    margin-right: 20px
}

#wrap .gray_bg .kiyaku .kiyaku_list {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    font-size: 14px
}

#wrap .gray_bg .kiyaku .kiyaku_list .kiyaku_list_item {
    margin-bottom: 16px
}

#wrap .gray_bg .kiyaku .tar {
    text-align: right;
    font-size: 14px
}

#wrap .gray_bg .kiyaku .btn_a {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    display: block;
    width: 464px;
    height: 70px;
    background-color: #e293a1;
    color: #fff;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px auto;
    font-weight: bold;
    border-radius: 65px;
    position: relative
}

#wrap .gray_bg .kiyaku .btn_a::after {
    content: "";
    background: #fff;
    height: 13.8564064606px;
    width: 14px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    top: 40%;
    right: 5%
}

#wrap .gray_bg .kiyaku .btn_a:hover {
    background-color: #fff;
    color: #e293a1;
    border: solid 1px #e293a1;
    transition: .4s
}

#wrap .gray_bg .kiyaku .btn_a:hover::after {
    background-color: #e293a1
}

@media(max-width: 768px) {
    #wrap .gray_bg {
        padding: 16% 0
    }

    #wrap .gray_bg .flow {
        max-width: 768px;
        width: 100%;
        padding: 0 15px;
        margin: 0 auto
    }

    #wrap .gray_bg .flow h3 {
        font-size: 8vw;
        font-weight: bold
    }

    #wrap .gray_bg .flow .flow_df {
        display: block;
        text-align: left
    }

    #wrap .gray_bg .flow .flow_df li {
        width: 70%;
        margin: 10% 0 20% auto;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
        position: relative
    }

    #wrap .gray_bg .flow .flow_df li::before {
        content: "";
        display: block;
        background: url(../_img/step1_img.svg) no-repeat center center;
        background-size: contain;
        width: 25vw;
        height: 25vw;
        position: absolute;
        top: 0;
        left: -45%
    }

    #wrap .gray_bg .flow .flow_df li .step {
        width: 60%;
        margin: 0 auto 3% 0
    }

    #wrap .gray_bg .flow .flow_df li .flow_img {
        display: none
    }

    #wrap .gray_bg .flow .flow_df li .flow_bold {
        font-size: 7vw;
        margin-bottom: 2%
    }

    #wrap .gray_bg .flow .flow_df li .flow_detail {
        font-size: 3.6vw
    }

    #wrap .gray_bg .flow .flow_df li .flow_detail span {
        font-size: 3.2vw
    }

    #wrap .gray_bg .flow .flow_df li:nth-of-type(2)::before {
        content: "";
        display: block;
        background: url(../_img/step_sp.svg) no-repeat center center;
        background-size: contain;
        width: 25vw;
        height: 100vw;
        position: absolute;
        top: -75%;
        left: -45%
    }

    #wrap .gray_bg .flow .flow_df li:nth-of-type(3)::before {
        content: "";
        display: block;
        background: url(../_img/step3_img.svg) no-repeat center center;
        background-size: contain;
        width: 25vw;
        height: 25vw;
        position: absolute;
        top: 0%;
        left: -45%
    }

    #wrap .gray_bg .shop {
        max-width: 768px;
        width: 100%;
        padding: 0 15px;
        margin: 24% auto
    }

    #wrap .gray_bg .shop h3 {
        font-size: 7vw;
        line-height: 1.3;
        font-weight: bold
    }

    #wrap .gray_bg .shop .shop_kome {
        font-size: 3.4vw
    }

    #wrap .gray_bg .shop .btn_a {
        width: 90%;
        height: auto;
        font-size: 5vw;
        padding: 3%;
        margin: 5% auto
    }

    #wrap .gray_bg .shop .btn_a::after {
        content: "";
        background: #fff;
        height: 12.124355653px;
        width: 12px
    }

    #wrap .gray_bg .shop .btn_a:hover {
        background-color: #a09159;
        color: #fff;
        border: none;
        transition: 0
    }

    #wrap .gray_bg .shop .btn_a:hover::after {
        background-color: #fff
    }

    #wrap .gray_bg .kiyaku {
        max-width: 768px;
        width: 100%;
        padding: 0 15px;
        margin: 10% auto
    }

    #wrap .gray_bg .kiyaku .kiyaku_ttl {
        font-size: 5vw
    }

    #wrap .gray_bg .kiyaku .kiyaku_ttl::before,
    #wrap .gray_bg .kiyaku .kiyaku_ttl::after {
        width: 60px
    }

    #wrap .gray_bg .kiyaku .kiyaku_list {
        font-size: 3.4vw;
        padding-left: 5%
    }

    #wrap .gray_bg .kiyaku .kiyaku_list .kiyaku_list_item {
        margin-bottom: 16px
    }

    #wrap .gray_bg .kiyaku .tar {
        text-align: right;
        font-size: 3.2vw
    }

    #wrap .gray_bg .kiyaku .btn_a {
        width: 80%;
        height: auto;
        font-size: 5vw;
        margin: 10% auto;
        padding: 3%
    }

    #wrap .gray_bg .kiyaku .btn_a::after {
        content: "";
        background: #fff;
        height: 12.124355653px;
        width: 12px
    }

    #wrap .gray_bg .kiyaku .btn_a:hover {
        background-color: #a09159;
        color: #fff;
        border: none;
        transition: 0
    }

    #wrap .gray_bg .kiyaku .btn_a:hover::after {
        background-color: #fff
    }
}

#wrap .stock_link {
    display: inline-block;
    color: #c42727;
    font-weight: bold;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    transition: .3s;
    margin: 10px auto;
    text-decoration: underline
}

@media(max-width: 768px) {
    #wrap .stock_link {
        transition: 0s;
        margin: 3% auto;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center
    }
}

#wrap .stock_link:hover {
    color: #e293a1;
    border-color: #e293a1
}

.remodal {
    max-width: 550px;
    overflow: hidden;
    margin-bottom: 0
}

.remodal div {
    width: 90%;
    margin: 0 auto
}

.remodal div .kome {
    color: #c42727;
    font-size: 22px;
    font-weight: bold;
    text-align: center
}

.remodal div .pink_bg {
    font-weight: bold;
    font-size: 20px;
    background-color: #e293a1;
    color: #fff;
    display: block;
    margin: 10px auto;
    text-align: center;
    padding: 15px 10px 6px
}

.remodal div .pink_bg ruby rt {
    padding-bottom: 2px;
    font-size: 8px
}

.remodal div img {
    width: 100%;
    margin: 0 auto
}

.remodal div p {
    text-align: left
}

.remodal .remodal-close {
    left: auto;
    right: 10px;
    top: 10px;
    outline: none
}

@media(max-width: 768px) {
    .remodal {
        max-width: 550px;
        width: 90%;
        overflow: hidden;
        margin-bottom: 0
    }

    .remodal div {
        width: 100%
    }

    .remodal div .kome {
        font-size: 3.2vw
    }

    .remodal div .pink_bg {
        font-size: 4vw;
        padding: 15px 5px 5px
    }

    .remodal div p {
        font-size: 3.4vw
    }

    .remodal .remodal-close {
        left: auto;
        right: 10px;
        top: 10px;
        outline: none
    }
}

#wrap .link {
    width: min(100%, 1200px)
}

@media screen and (min-width: 769px) {
    #wrap .link ul {
        display: grid;
        /*grid-template-columns: repeat(3, 1fr);*/
        grid-template-columns: repeat(6, 1fr);
        /*gap: 10px 20px*/
        gap: 10px 8px
    }

    #wrap .link ul li {
        margin: 0;
        width: 100%
    }

    #wrap .link ul li a {
        line-height: 120%;
        /*font-size: 20px*/
        font-size: 18px;
    }
}

@media screen and (max-width: 768px) {
    #wrap .link ul li a {
        /*font-size: clamp(12px, 3.6vw, 18px);*/
        line-height: 130%;
        padding: 5% 0
    }
}

/*# sourceMappingURL=style_20241205.css.map */
.aa-ssi_wrap {
    display: block !important;
    margin: 100px auto 0;
    text-align: center;
}

.aa-ssi_copy {
    font-size: 24px !important;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Yu Mincho", "MS PGothic", serif;
    margin-bottom: 10px;
    position: relative;
    text-align: center;
}

.aa-ssi_copy:before,
.aa-ssi_copy:after {
    position: absolute;
    display: inline-block;
    content: "";
    background: #1a1a1a;
    width: 2px;
    height: 32px;
    vertical-align: middle;
}

.aa-ssi_copy:before {
    margin: 6px -25px;
    transform: rotate(-35deg);
}

.aa-ssi_copy:after {
    margin: 6px 20px;
    transform: rotate(35deg);
}

.aa-ssi_wrap picture {
    display: inline-block;
}

.aa-ssi_text {
    font-size: 15px;
    margin-top: 10px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
}

.aa-ssi_text a {
    color: #1a1a1a;
    text-decoration: underline !important;
    transition: 0.3s;
}

.aa-ssi_text a:hover {
    text-decoration: underline;
    opacity: 0.7;
}

@media screen and (max-width: 768px) {
    .aa-ssi_wrap {
        margin: 12vw auto 0;
        padding: 0 15px;
    }

    .aa-ssi_copy {
        font-size: 4vw !important;
        margin-bottom: 1.33vw;
    }

    .aa-ssi_copy:before,
    .aa-ssi_copy:after {
        width: 2px;
        height: 4.5vw;
    }

    .aa-ssi_copy:before {
        margin: 1vw -4vw;
    }

    .aa-ssi_copy:after {
        margin: 1vw 2.67vw;
    }

    .aa-ssi_link {
        width: 100% !important;
    }

    .aa-ssi_text {
        margin-top: 1.33vw;
        text-align: left;
        font-size: 3.33vw;
    }
}

.btn_reserve {
    margin-top: 65px !important;
    margin-bottom: 0 !important;
    text-align: center;
}

.btn_appoint {
    margin-top: 20px !important;
    margin-bottom: 0 !important;
    text-align: center;
}

.btn_reserve a,
.btn_appoint a {
    font-size: 18px;
    text-decoration: underline !important;
    transition: .3s;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "MS PGothic", sans-serif;
    color: #222;
}

.btn_reserve a:hover,
.btn_appoint a:hover {
    opacity: 0.7;
}

@media screen and (max-width: 768px) {
    .btn_reserve {
        margin-top: 6vw !important;
    }

    .btn_appoint {
        margin-top: 3vw !important;
    }

    .btn_reserve a,
    .btn_appoint a {
        font-size: 4vw;
    }
}