                @charset "UTF-8";
                /*------------------------font---------------------- */
                
                @media all and (-ms-high-contrast: none) {
                    * {
                        font-family: YakuHanJP, "Hiragino Kaku Gothic ProN", Noto Sans JP, meiryo, 'Osaka', sans-serif;
                    }
                }
                /*------------------------common---------------------- */
                
                html {
                    font-size: 62.5%;
                }
                
                #content {
                    max-width: 1920px;
                    color: #231815;
                    font-size: 16px;
                    font-family: YakuHanJP, "Hiragino Kaku Gothic ProN", Noto Sans JP, meiryo, 'Osaka', sans-serif;
                    font-weight: 300;
                    line-height: 1.4;
                    letter-spacing: 0.75px;
                }
                
                img {
                    /* width: 100%; */
                    max-width: 100%;
                    transition: 1.5s;
                    vertical-align: top;
                }
                
                a {
                    color: #000;
                    text-decoration: none;
                }
                
                a:hover {
                    opacity: .8;
                }
                
                #content {
                    max-width: 100%;
                }
                
                .pc {
                    display: none!important;
                }
                
                .sp {
                    display: block!important;
                }
                
                @media (min-width: 769px) {
                    #content {
                        max-width: 1920px;
                        -webkit-font-smoothing: antialiased;
                        -moz-osx-font-smoothing: grayscale;
                        -webkit-text-size-adjust: 100%;
                    }
                    img {
                        width: 100%;
                    }
                    .pc {
                        display: block!important;
                    }
                    .sp {
                        display: none!important;
                    }
                }
                /* video */
                
                .video {
                    padding: 0 6.667vw 25vw;
                }
                
                .video h3 {
                    margin-bottom: 6.667vw;
                }
                
                .video-container {
                    width: 100%;
                    position: relative;
                    padding-bottom: 56.25%;
                    padding-top: 30px;
                    height: 0;
                    overflow: hidden;
                }
                
                .video-container iframe,
                .video-container object,
                .video-container embed {
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                }
                
                @media (min-width: 769px) {
                    .video {
                        max-width: 1100px;
                        margin: 0 auto;
                        padding: 0 0 100px;
                    }
                    .video h3 {
                        text-align: center;
                        margin-bottom: 45px;
                        letter-spacing: 2px;
                    }
                }
                /*------------------------font ---------------------- */
                /* font */
                /* .txt_font01 {
                    font-family: ten-mincho-text, serif;
                    font-weight: 500;
                    font-style: normal;
                }
                 */
                
                .txt_font02 {
                    font-family: mrs-eaves, serif;
                    font-weight: 700;
                    font-style: normal;
                }
                
                .word_ver {
                    writing-mode: vertical-rl;
                    margin: 0 auto;
                }
                
                .ttl {
                    /* 18 */
                    font-size: 4.8vw;
                    /* 24 */
                    line-height: 3.2vw;
                    letter-spacing: 0px;
                }
                
                .txt_02 {
                    /* 14 */
                    font-size: 3.733vw;
                    /* 24 */
                    line-height: 6.4vw;
                    letter-spacing: 1px;
                }
                
                .txt_03 {
                    font-weight: 500;
                    /* 14 */
                    font-size: 3.733vw;
                    /* 28 */
                    line-height: 7.467vw;
                    letter-spacing: 1.5px;
                }
                
                .txt_04 {
                    /* 10 */
                    font-size: 2.66vw;
                    /* 20 */
                    line-height: 5.33vw;
                    letter-spacing: 0.75px;
                }
                
                .txt_05 {
                    /* 12 */
                    font-size: 3.2vw;
                    /* 24 */
                    line-height: 6.4vw;
                    letter-spacing: .7px;
                }
                
                small {
                    font-size: 7px;
                    vertical-align: top;
                }
                
                @media (min-width: 769px) {
                    /* font size */
                    .sub_ttl {
                        font-size: 28px;
                        line-height: 45px;
                        letter-spacing: 2px;
                    }
                    .ttl {
                        text-align: center;
                        font-size: 24px;
                        line-height: 2;
                        letter-spacing: 1px;
                        font-weight: 300;
                    }
                    .txt_02 {
                        font-size: 26px;
                        line-height: 40px;
                        letter-spacing: 1px;
                    }
                    .txt_03 {
                        font-weight: 300;
                        font-size: 28px;
                        line-height: 56px;
                        letter-spacing: 1px;
                    }
                    .txt_04 {
                        text-align: justify;
                        font-size: 16px;
                        line-height: 2;
                        letter-spacing: 1px;
                        font-weight: 400;
                    }
                    .txt_05 {
                        font-size: 16px;
                        line-height: 2;
                        letter-spacing: 1.75px;
                    }
                    small {
                        font-size: 14px;
                        vertical-align: top;
                    }
                }
                /*------------------------floating banner---------------------- */
                
                .floating_bnr {
                    width: 99%;
                    display: block;
                    left: .5%;
                    bottom: 10px;
                    padding: 18px 0;
                    text-align: center;
                    font-size: 14px;
                    letter-spacing: 2.5px;
                    font-weight: bold;
                    background-color: #8F8068;
                    color: #fff;
                    border-radius: 30px;
                    position: fixed;
                    z-index: 20;
                    transition: .2s;
                }
                
                @media (min-width: 769px) {
                    .floating_bnr {
                        width: 98%;
                        font-size: 20px;
                        font-weight: bold;
                        letter-spacing: 3px;
                        left: 1%;
                        border-radius: 0;
                        padding: 20px 0;
                        transition: .2s;
                    }
                }
                /*------------------------main view---------------------- */
                
                .mv {
                    background-color: #fff;
                }
                
                .mv {
                    position: relative;
                    width: 100%;
                    margin-bottom: 0;
                }
                
                .mv .logo {
                    position: absolute;
                    left: 17%;
                    top: 14.5%;
                    width: 65%;
                }
                
                .mv-word {
                    font-weight: bold;
                    background-color: #fff;
                    /* 70 25 */
                    padding: 20vw 6.667vw;
                    text-align: justify;
                }
                
                .mv-word h3 {
                    font-weight: bold;
                    /* 16 */
                    font-size: 4.267vw;
                    /* 32 */
                    line-height: 8.53vw;
                    letter-spacing: 0.5px;
                }
                
                .mv-word p {
                    /* 14 */
                    font-size: 3.733vw;
                    /* 28 */
                    line-height: 7.467vw;
                    letter-spacing: 0.5px;
                }
                
                .mv-word img {
                    width: 47%;
                    margin-top: 6.667vw;
                }
                
                .mv-word p {
                    letter-spacing: 0.75px;
                    font-weight: bold;
                    /* 45 */
                    padding-top: 6vw;
                }
                
                @media (min-width: 769px) {
                    .mv {
                        max-width: 1920px;
                    }
                    .mv .logo {
                        width: 16%;
                        position: absolute;
                        top: 8%;
                        left: 21%;
                    }
                    .mv-word {
                        text-align: center;
                        padding: 140px 0;
                    }
                    .mv-word h3 {
                        text-align: center;
                        font-size: 24px;
                        line-height: 2;
                        letter-spacing: 1.5px;
                        margin-bottom: 0px;
                    }
                    .mv-word img {
                        width: 235px;
                        margin: 100px auto 0;
                    }
                    .mv-word p {
                        font-weight: bold;
                        max-width: 1100px;
                        margin: 0 auto;
                        padding-top: 0;
                        font-size: 28px;
                        line-height: 56px;
                        letter-spacing: 1.5px;
                    }
                }
                /*------------------------section---------------------- */
                
                .sec {
                    overflow: hidden;
                    width: 100%;
                    margin: 0 auto;
                    padding: 25vw 0;
                    position: relative;
                }
                
                .wrap {
                    width: 100%;
                    max-width: 100%;
                    margin: 0 auto;
                    padding: 0 6.667vw;
                }
                
                .secTop {
                    position: relative;
                    text-align: center;
                }
                
                .secTop .secTlt {
                    width: 68%;
                    z-index: 99;
                }
                
                .secTop .lineTitle {
                    text-align: justify;
                    margin: 13.333vw 6.667vw;
                    letter-spacing: 0.5px;
                }
                
                .line span {
                    margin: 0 auto;
                    width: 90%;
                    height: 1px;
                    display: block;
                    background-color: #000;
                }
                
                .secTop .line span {
                    margin: 20vw auto;
                }
                
                .sec .block {
                    max-width: 1100px;
                    margin: 0 auto 25vw;
                }
                
                .sec .block:last-child {
                    margin-bottom: 0;
                }
                
                .sec .block_tlt {
                    width: 35%;
                    text-align: center;
                    margin-right: auto;
                    margin-left: auto;
                }
                
                .content {
                    position: relative;
                    display: -webkit-flex;
                    display: -ms-flex;
                    display: flex;
                    justify-content: space-between;
                    align-items: flex-end;
                    flex-wrap: wrap;
                }
                
                .reverse {
                    flex-direction: row-reverse;
                }
                
                .content .word {
                    width: 100%;
                }
                
                .content p {
                    text-align: justify;
                }
                
                .content .image {
                    width: 100%;
                    display: flex;
                    justify-content: space-between;
                    align-items: center;
                }
                
                .content .image>div {
                    width: 48%;
                    display: inline-block;
                }
                
                .content .image.s01>div {
                    width: 100%;
                }
                
                .content .image span {
                    /* 12 */
                    font-size: 3.2vw;
                    /* 28 */
                    line-height: 7.467vw;
                }
                
                .content .intro .intro-c {
                    width: 100%;
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: space-between;
                    align-items: start;
                }
                
                .content .intro .intro-c>div:nth-child(1) {
                    width: 33%;
                }
                
                .content .intro .intro-c>div:nth-child(2) {
                    width: 60%;
                }
                
                .content .intro .intro-c>div.img img {
                    width: 100%;
                }
                
                .content .intro .tlt img {
                    width: 50%;
                }
                
                .content .price {
                    width: 100%;
                    text-align: center;
                }
                
                .content .price .main {
                    font-weight: 400;
                    text-align: center;
                    letter-spacing: 1px;
                }
                
                .content .price .main p {
                    text-align: center;
                }
                
                .content .price .main .tax {
                    /* 8 */
                    vertical-align: top;
                    font-size: 2.4vw;
                }
                
                .content .price .sub {
                    text-align: center;
                    /* 18 */
                    padding-top: 4.8vw;
                    /* 10 */
                    font-size: 2.667vw;
                    /* 20 */
                    line-height: 5.33vw;
                    letter-spacing: 1.5px;
                }
                
                .content .price .sub a {
                    border-bottom: 1px solid #231815;
                }
                
                .content .price .sub .tax {
                    vertical-align: top;
                    font-size: 2vw;
                }
                /* sec01 */
                
                .sec01 .secTop {
                    text-align: left;
                    margin-bottom: 50px;
                }
                /* sec02 */
                
                .sec02 .wrap>.content p {
                    font-weight: bold;
                }
                
                .sec02.sec .block02-1 .block_tlt img {
                    width: 60%;
                    margin-bottom: 24vw;
                }
                
                .sec02.sec .block02-2 .block_tlt {
                    width: 50%;
                }
                
                .sec02 .content .image {
                    width: 100%;
                }
                
                .sec .block02-3 {
                    margin-bottom: 0;
                }
                
                .info {
                    text-align: right;
                    margin-top: 70px;
                }
                
                @media (min-width: 769px) {
                    .sec02.sec .block .content .price {
                        padding-top: 30px;
                    }
                    .sec02.sec .block .block_tlt img {
                        width: 100px;
                        margin: 100px auto;
                    }
                }
                /*------------------------ height block ---------------------- */
                /* padding-bottom */
                
                .p-b-125 {
                    padding-bottom: 33.333vw;
                }
                
                .p-b-75 {
                    padding-bottom: 20vw;
                }
                
                .p-b-50 {
                    padding-bottom: 13.333vw;
                }
                
                .p-b-25 {
                    padding-bottom: 6.667vw;
                }
                
                .p-b-15 {
                    padding-bottom: 4vw;
                }
                /* margin-top */
                
                .m-t-125 {
                    margin-top: 33.333vw;
                }
                
                .m-t-75 {
                    margin-top: 20vw;
                }
                
                .m-t-50 {
                    margin-top: 13.333vw;
                }
                
                .m-t-25 {
                    margin-top: 6.667vw;
                }
                
                .p-t-15 {
                    margin-top: 4vw;
                }
                /* margin-bottom */
                
                .m-b-125 {
                    margin-bottom: 33.3333vw;
                }
                
                .m-b-75 {
                    margin-bottom: 20vw;
                }
                
                .m-b-50 {
                    margin-bottom: 13.333vw;
                }
                
                .m-b-25 {
                    margin-bottom: 6.667vw;
                }
                
                .m-b-15 {
                    margin-bottom: 4vw;
                }
                /* pc */
                
                @media (min-width: 756px) {
                    .wrap {
                        max-width: 1100px;
                        padding: 0 0;
                    }
                    .sec {
                        padding: 0 0 100px 0;
                    }
                    .line span {
                        width: 1100px;
                        max-width: 100%;
                        height: 1px;
                        display: block;
                        background-color: #949494;
                    }
                    .secTop .line span {
                        margin: 200px auto 0;
                    }
                    .secTop {
                        padding-bottom: 0;
                        padding-top: 0;
                        text-align: center;
                    }
                    .secContent {
                        margin: 0 auto;
                        display: flex;
                        flex-wrap: wrap;
                        justify-content: space-between;
                        max-width: 1100px;
                        align-items: center;
                    }
                    .secTop .secTlt {
                        width: 360px;
                        margin: 100px auto 0;
                    }
                    .secTop .lineTitle {
                        margin: 0 auto;
                        order: 3;
                        width: 500px;
                        letter-spacing: 3px;
                    }
                    .secTop .secImage {
                        order: 2;
                        width: 550px;
                    }
                    .secTop .wrap {
                        order: 4;
                        width: 500px;
                    }
                    .secTop .secWord {
                        margin-top: 20px;
                    }
                    .sec .block {
                        margin-bottom: 0px;
                    }
                    .sec .block_tlt {
                        max-width: 1100px;
                        margin: 0 auto 0px;
                    }
                    .sec .block_tlt .block_c {
                        margin: 0 auto;
                        max-width: 1100px;
                    }
                    .sec .block_tlt h3 {
                        font-size: 24px;
                        line-height: 24px;
                        margin-top: 190px;
                        margin-bottom: 45px;
                        margin-left: 0;
                        letter-spacing: 1px;
                    }
                    .sec .block_tlt .block_c .blockimg {
                        width: 700px;
                    }
                    .sec .block_tlt .block_c .blockword {
                        width: 125px;
                        margin-right: 140px;
                    }
                    .content {
                        align-items: flex-start;
                        justify-content: space-between;
                        max-width: 1100px;
                        margin: 0 auto;
                    }
                    .content .number {
                        width: 100%;
                        margin-bottom: 45px;
                        text-align: center;
                    }
                    .content .number img {
                        width: 60px;
                    }
                    .content .word {
                        width: 600px;
                        margin-bottom: 0;
                        text-align: center;
                    }
                    .content .word .wrap {
                        height: 650px;
                        display: flex;
                        flex-wrap: wrap;
                        align-content: space-between;
                    }
                    .content .word h3 {
                        position: relative;
                        top: -11px;
                        text-align: left;
                        margin-bottom: 40px;
                    }
                    .sec01 .content .image {
                        margin-top: 100px;
                        margin-bottom: 100px;
                        margin-right: auto;
                        margin-left: auto;
                        width: 650px;
                    }
                    .content .image span {
                        font-size: 24px;
                        line-height: 56px;
                        letter-spacing: 1px;
                    }
                    .content .price {
                        margin-top: 0;
                    }
                    .sec .content .price .main {
                        text-align: center;
                        font-size: 20px;
                        line-height: 44px;
                        letter-spacing: 2px;
                        padding-bottom: 10px;
                    }
                    .sec .content .price .main .tax {
                        font-size: 14px;
                        letter-spacing: 1.5px;
                    }
                    .sec .content .price .sub {
                        text-align: center;
                        padding-top: 15px;
                        font-size: 16px;
                        line-height: 2;
                        letter-spacing: 2.2px;
                    }
                    .sec .content .price .sub .tax {
                        font-size: 12px;
                        letter-spacing: 1px;
                    }
                    .content .image>div {
                        width: 100%;
                        display: inline-block;
                    }
                    .content .intro {
                        padding: 0 80px;
                        width: 100%;
                        display: flex;
                        justify-content: space-between;
                    }
                    .content .intro .tlt {
                        width: 400px;
                        text-align: center;
                    }
                    .content .intro .tlt img {
                        width: 400px;
                        margin: 0 auto;
                    }
                    .content .intro .intro-c {
                        width: 400px;
                    }
                    .content .intro .intro-c>div:nth-child(1) {
                        width: 100%;
                        margin-bottom: 30px;
                    }
                    .content .intro .intro-c>div:nth-child(2) {
                        width: 100%;
                    }
                    /* sec01 */
                    .sec01 {
                        padding-bottom: 0;
                    }
                    .sec01 .secTop {
                        text-align: center;
                    }
                    .sec01 .content .word {
                        margin-bottom: 0px;
                        width: 100%;
                    }
                    /* sec02 */
                    .sec02 .content {
                        max-width: 600px;
                        margin-bottom: 100px;
                        justify-content: center;
                        align-items: center;
                    }
                    /* .sec02 .content .word {
                        width: 500px;
                        margin-right: 0;
                        margin-left: auto;
                        text-align: center;
                    }
                    .sec02 .wrap>.content p . {
                        text-align: center;
                    }
                    .sec02 .content .image {
                        width: 500px;
                        padding: 0px 0 0;
                        margin-bottom: 0;
                    } */
                    .sec02 .block02pc {
                        padding-top: 100px;
                    }
                    .sec02 .block02pc>div {
                        width: 100%;
                        display: flex;
                        justify-content: center;
                        margin: 0;
                        align-items: center;
                    }
                    .sec02 .block02pc .block_tlt>div {
                        width: 48%;
                    }
                    .sec02 .block02pc .content .image {
                        padding-top: 0px;
                        margin-bottom: 0;
                        width: 100%;
                        display: flex;
                        justify-content: space-between;
                    }
                    .sec02 .block02pc .content .image img {
                        width: 500px;
                        margin-right: auto;
                        margin-left: 0;
                    }
                    .sec02 .block02pc .content .image img.right {
                        margin-right: 0;
                        margin-left: auto;
                    }
                    .sec02 .block02pc .image div {
                        text-align: center;
                    }
                    .sec02 .block02pc .image div:nth-child(2) img:first-child {
                        width: 500px;
                        margin-right: 0;
                    }
                    .sec02 .block02pc .word {
                        width: 1100px;
                        margin: 75px auto;
                    }
                    .sec02 .block02pc .price_g {
                        width: 1100px;
                        display: flex;
                        justify-content: space-between;
                        align-items: center;
                    }
                    .sec02 .block02pc .price_g>div {
                        width: 520px;
                    }
                }
                /*------------------------button ---------------------- */
                /* pc */
                
                .button {
                    width: 75%;
                    display: block;
                    margin: 0 auto 0;
                    cursor: pointer;
                    text-align: center;
                    font-size: 2.667vw;
                    background-color: #000;
                    color: #fff;
                    text-decoration: none;
                    padding: 5.33vw 0;
                    letter-spacing: 1.5px;
                    transition: .3s;
                    font-weight: bold;
                }
                
                .button:hover {
                    transition: .3s;
                    letter-spacing: 4px;
                }
                /* pc */
                
                @media (min-width: 768px) {
                    .button {
                        width: 400px;
                        letter-spacing: 3px;
                        font-size: 16px;
                        padding: 30px 0;
                    }
                }
                /*------------------------staff ---------------------- */
                /*------------------------feature ---------------------- */
                
                .feature {
                    text-align: center;
                }
                
                .feature .wrap {
                    padding: 20vw 5.333vw;
                }
                
                .feature.recommend .wrap {
                    padding: 20vw 0 5.333vw;
                }
                
                .feature .feature_title {
                    font-weight: bold;
                    font-size: 3.5vw;
                    line-height: 15px;
                    letter-spacing: 1.5px;
                    margin-bottom: 20px;
                }
                
                .feature.staff .feature_title {
                    letter-spacing: 2px;
                }
                
                .feature ul.two {
                    text-align: justify;
                    padding: 0 20px;
                    justify-content: space-between;
                }
                
                .feature ul.two {
                    width: 100%;
                    padding: 0 20px;
                    justify-content: space-between;
                    margin: 0 auto;
                    display: flex;
                    flex-wrap: wrap;
                }
                
                .feature ul.two li {
                    width: 46%;
                    border: 0;
                    margin: 0 0 30px 0;
                }
                
                .feature li {
                    border: none;
                }
                
                .feature ul.two li .f_tlt {
                    color: #000;
                    font-size: 3vw;
                    line-height: 6vw;
                    letter-spacing: 1px;
                    padding: 8px 0 0px;
                    font-weight: 500;
                }
                
                .feature ul.two li p {
                    font-size: 3vw;
                    line-height: 1.5;
                    font-weight: 200;
                    letter-spacing: 1px;
                    color: #808080;
                }
                
                .feature .two img {
                    transition: .2s;
                }
                
                .feature .two img:hover {
                    transition: .2s;
                    opacity: .9;
                }
                
                .secLine.grayLine {
                    width: 100%;
                }
                
                .secLine .line {
                    width: 100%;
                    background-color: #d4d4d4;
                    height: 1px;
                }
                
                .feature .button {
                    width: 66.7vw;
                    display: block;
                    margin: 6.667vw auto 0;
                    cursor: pointer;
                    text-align: center;
                    font-size: 2.667vw;
                    color: #000;
                    background-color: transparent;
                    text-decoration: none;
                    letter-spacing: 1.5px;
                    transition: .3s;
                    font-weight: bold;
                    border: 1px solid #000;
                    padding: 15px 0;
                }
                
                @media screen and (min-width: 768px) and (max-width: 1101px) {
                    .button {
                        margin-top: 50px;
                    }
                    .feature ul.two {
                        padding: 0;
                    }
                    .feature ul.two li {
                        width: 300px;
                    }
                }
                
                @media only screen and (min-width: 768px) {
                    .feature .wrap {
                        padding: 120px 0;
                        max-width: 1100px;
                        width: 100%;
                        margin: 0 auto;
                    }
                    .feature.recommend .wrap {
                        padding: 90px 0 70px;
                    }
                    .feature .feature_title {
                        font-size: 22px;
                        line-height: 45px;
                        letter-spacing: 2px;
                        text-align: center;
                        font-weight: 600;
                        margin-bottom: 60px;
                    }
                    .feature.staff .feature_title {
                        font-family: Noto Sans JP, sans-serif;
                        font-weight: bold;
                        letter-spacing: 2.8px;
                    }
                    .feature.staff img {
                        width: 60%;
                    }
                    .feature ul {
                        padding: 20px 0 0;
                    }
                    .feature ul.two {
                        padding: 0;
                        justify-content: space-between;
                        max-width: 660px;
                    }
                    .feature ul.two li {
                        width: 305px;
                        margin-bottom: 50px;
                        text-align: left;
                    }
                    .feature ul.two li .f_tlt {
                        padding: 15px 0 8px;
                        font-weight: bold;
                        color: #000;
                        font-size: 18px;
                        line-height: 21px;
                        letter-spacing: 1.5px;
                        white-space: nowrap;
                        text-align: justify;
                    }
                    .feature ul.two li p {
                        font-weight: 100;
                        color: #808080;
                        font-size: 17px;
                        line-height: 29px;
                        letter-spacing: 1.5px;
                        text-align: justify;
                    }
                    .feature .button {
                        text-align: center;
                        margin: 150px auto 0;
                        width: 400px;
                        font-size: 23px;
                        font-weight: 400;
                        background-color: transparent;
                        border: 2px solid #3C3C3C;
                        color: #000;
                        margin-top: 40px;
                        padding: 26px 0;
                    }
                    .secLine.grayLine {
                        max-width: 1100px;
                        margin: 0 auto;
                    }
                }
                
                @media (min-width: 768px) {
                    .m-b-15 {
                        margin-bottom: 0;
                    }
                    .m-b-25 {
                        margin-bottom: 30px;
                    }
                    .m-b-50 {
                        margin-bottom: 140px;
                    }
                }