        @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%;
        }
        
        body {
            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;
        }
        
        body {
            max-width: 100%;
        }
        
        .pc {
            display: none!important;
        }
        
        .sp {
            display: block!important;
        }
        
        @media (min-width: 769px) {
            body {
                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;
            }
        }
        /*------------------------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: bold;
            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 {
            /* 12 */
            font-size: 3.2vw;
            /* 24 */
            line-height: 6.4vw;
            letter-spacing: 1.5px;
        }
        
        .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.667vw;
            /* 20 */
            line-height: 5.33vw;
        }
        
        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: 35px;
                line-height: 35px;
                letter-spacing: 1px;
                font-weight: 300;
            }
            .txt_02 {
                font-size: 14px;
                line-height: 2;
                letter-spacing: 1px;
            }
            .txt_03 {
                font-weight: 300;
                font-size: 1.1vw;
                line-height: 2;
                letter-spacing: 1px;
            }
            .txt_04 {
                text-align: justify;
                font-size: 14px;
                line-height: 2.3;
                letter-spacing: 1.5px;
                font-weight: 400;
            }
            small {
                font-size: 14px;
                vertical-align: top;
            }
        }
        /*------------------------float--------------------- */
        
        .floatBanner {
            display: flex;
            position: fixed;
            justify-content: space-between;
            bottom: 3px;
            width: 100vw;
            height: 75px;
            z-index: 500;
        }
        
        .floatBanner>a {
            color: #fff;
            text-align: center;
            width: 49.8%;
            line-height: 75px;
            text-decoration: none;
            letter-spacing: 3px;
            transition: .2s;
            font-size: 22px;
            font-weight: 600;
        }
        
        .floatBanner>a:hover {
            transition: .2s;
            opacity: .8;
        }
        
        .floatBanner a.floatLeft {
            left: 0;
            background-color: #00135B;
        }
        
        .floatBanner a.floatRight {
            right: 0;
            background-color: #005b1f;
        }
        
        @media only screen and (max-width: 768px) {
            .floatBanner {
                bottom: 0px;
                height: 60px;
            }
            .floatBanner>a {
                font-size: 14px;
                top: 37%;
                width: 49%;
                line-height: 60px;
            }
        }
        /*------------------------main view---------------------- */
        
        .mv {
            background-color: #fff;
        }
        
        .mv {
            position: relative;
            width: 100%;
            margin-bottom: 0;
        }
        
        .mv .logo {
            position: absolute;
            top: 26vh;
            width: 100%;
            text-align: center;
            margin: 0 auto;
            height: 40%;
        }
        
        .mv .logo img {
            background-color: #fff;
            padding: 15px 10px;
            width: 62%;
        }
        
        .mv-word {
            border-bottom: 1px solid #ABAFB1;
            /* 70 25 */
            padding: 20vw 6.667vw;
            /* 12 */
            font-size: 3.2vw;
            /* 24 */
            line-height: 6.4vw;
            text-align: justify;
            letter-spacing: 0.5px;
        }
        
        @media (min-width: 380px) and (max-width: 768px) {
            .mv .logo {
                top: 40%;
            }
        }
        
        @media (min-width: 769px) {
            .mv {
                max-width: 1920px;
            }
            .mv .logo {
                width: 38%;
                position: absolute;
                top: 18%;
                left: 32%;
            }
            /* customer */
            .mv-word {
                border-bottom: none;
                text-align: justify;
                padding: 100px 0;
                font-size: 1.3vw;
                line-height: 2;
                letter-spacing: 0.8px;
            }
            .mv-word p {
                text-align: center;
                max-width: 1100px;
                margin: 0 auto;
            }
        }
        /*------------------------section---------------------- */
        
        .sec {
            overflow: hidden;
            width: 100%;
            margin: 0 auto;
            padding: 20vw 0 22vw;
        }
        
        .sec01 {
            background-color: #fff;
        }
        
        .wrap {
            width: 100%;
            max-width: 100%;
            margin: 0 auto;
            padding: 0 6.667vw;
        }
        
        .secTop .secTlt {
            width: 36%;
            margin-left: 6.667vw;
            margin-bottom: 13.33vw;
        }
        
        .secTop .lineTitle {
            text-align: center;
            margin: 8vw 6.667vw 20vw;
            letter-spacing: 0.5px;
        }
        
        .secTop .secWord {
            margin-top: 6.667vw;
            letter-spacing: 0.65px;
            text-align: justify;
        }
        
        .secTop .secImage:first-child {
            margin-bottom: 5px;
        }
        
        .line span {
            margin: 0 auto;
            width: 90%;
            height: 1px;
            display: block;
            background-color: #949494;
        }
        
        .secTop .line span {
            margin: 20vw auto;
        }
        
        .sec .block {
            max-width: 1100px;
            margin: 0 auto;
        }
        
        .sec .block_tlt {
            /* 70 */
            /* margin-bottom: 18.667vw; */
            margin-top: 18.667vw;
        }
        
        .sec .block_tlt h3 {
            /* line-height: 9.333vw; */
            margin-bottom: 5vw;
            /* margin-left: 6.667vw; */
        }
        
        .sec .block_tlt p {
            margin-bottom: 7vw;
        }
        
        .sec .block_tlt .block_c {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
        }
        
        .sec .block_tlt .block_c .blockimg {
            width: 63%;
        }
        
        .sec .block_tlt .block_c .blockword {
            width: 15%;
            margin-right: 9%;
        }
        
        .content {
            position: relative;
            display: -webkit-flex;
            display: -ms-flex;
            display: flex;
            justify-content: space-between;
            align-items: flex-end;
            flex-wrap: wrap;
            margin-bottom: 13.333vw;
        }
        
        .block .content:last-child {
            margin-bottom: 0;
        }
        
        .reverse {
            flex-direction: row-reverse;
        }
        
        .number {
            width: 8%;
            margin: 0 auto 4vw;
        }
        
        .content .word {
            width: 100%;
            margin-bottom: 4vw;
        }
        
        .content p {
            text-align: justify;
        }
        
        .content .image {
            display: flex;
            justify-content: space-between;
            margin-bottom: 3.8vw;
        }
        
        .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 .item {
            display: flex;
            justify-content: flex-start;
            align-items: center;
            margin-bottom: 3.8vw;
        }
        
        .content .item img {
            width: 50%;
            margin-right: 4vw;
        }
        
        .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%;
        }
        /* sec02 */
        
        .sec02 .secTop .secTlt {
            width: 78%;
        }
        /* sec03 */
        
        .sec03 .secTop .secTlt {
            width: 50%;
        }
        /* pc */
        
        @media (min-width: 769px) {
            .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-top: 0;
                text-align: center;
            }
            .secContent {
                padding-top: 90px;
                margin: 0 auto;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                max-width: 1100px;
                align-items: center;
            }
            .number {
                order: 1;
                width: 100%;
                margin-bottom: 0;
                text-align: center;
            }
            .number img {
                width: 30px;
            }
            .secTop .secTlt {
                text-align: left;
                order: 2;
                margin: 0 0 30px 0;
            }
            .secTop .secTlt img {
                width: 80%;
            }
            .secTop .lineTitle {
                text-align: center;
                order: 3;
                margin: 80px auto;
                letter-spacing: 3px;
            }
            .secTop .wrap {
                order: 4;
                width: 1100px;
                display: flex;
                flex-wrap: nowrap;
                justify-content: space-between;
                align-items: center;
            }
            .secTop .wrap .image {
                width: 40%;
            }
            .secTop .wrap .word {
                width: 550px;
            }
            .secTop .secWord {
                margin-top: 20px;
            }
            .sec .block_tlt {
                max-width: 1100px;
                text-align: center;
                margin: 0 auto;
            }
            .sec .block_tlt p {
                margin-bottom: 50px;
            }
            .sec .block_tlt .block_c {
                margin: 0 auto;
                max-width: 1100px;
            }
            .sec .block_tlt h3 {
                font-size: 20px;
                line-height: 24px;
                margin-top: 90px;
                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 {
                justify-content: space-between;
                align-items: flex-start;
                flex-wrap: nowrap;
                max-width: 1100px;
                margin: 0 auto 90px;
            }
            .content p {
                text-align: center;
                width: 100%;
            }
            .content .item {
                width: 31%;
                margin-bottom: 0;
                flex-wrap: wrap;
            }
            .content .item img {
                margin-right: 0;
                margin-bottom: 10px;
                width: 100%;
            }
            .content .word {
                text-align: center;
                margin-bottom: 45px;
            }
            .content .image {
                margin-bottom: 45px;
            }
            .content .image span {
                font-size: 24px;
                line-height: 56px;
                letter-spacing: 1px;
            }
            /*  */
            .sec01 .secContent {
                padding-top: 0px;
            }
            /*  */
            .sec02 .secTop .secTlt {
                width: 80%;
                margin-left: 0;
            }
            /*  */
            .sec03 .secTop .secTlt {
                /* width: 80%; */
                margin-left: 0;
            }
        }
        /*------------------------slider ------------ */
        
        .p_slider {
            max-width: 100%;
        }
        
        .p_slider .buy {
            margin-top: 10px;
        }
        
        .p_slider .buy>span {
            letter-spacing: 1.5px;
        }
        
        .p_slider .buy>span .tax {
            font-size: 9px;
            letter-spacing: 1px;
        }
        
        .p_slider .buy .more {
            margin-left: 10px;
            letter-spacing: 1px;
            font-weight: bold;
            border-bottom: 1px solid #000;
        }
        
        @media (min-width: 769px) {
            .p_slider {
                max-width: 1100px;
                margin: 0 auto;
            }
            .p_slider .buy {
                margin-top: 20px;
                text-align: center;
            }
            .p_slider .buy>span {
                font-size: 14px;
            }
            .p_slider .buy .more {
                font-size: 14px;
            }
        }
        /*------------------------btn ---------------------- */
        /* pc */
        
        @media (min-width: 769px) {}
        
        .btn {
            cursor: pointer;
            width: 200px;
            text-align: center;
            margin: 0 auto;
            font-size: 10px;
            font-weight: bold;
            background-color: transparent;
            color: #000;
            text-decoration: none;
            padding: 15px 0;
            letter-spacing: 0.75px;
            transition: .3s;
            display: block;
            border: 2px solid #787571;
            margin-top: 20px;
        }
        
        .btn:hover {
            transition: .3s;
            letter-spacing: 4px;
        }
        /* pc */
        
        @media (min-width: 769px) {
            .btn {
                width: 400px;
                letter-spacing: 0.5px;
                font-size: 15px;
                padding: 20px 0;
            }
        }
        /*------------------------staff ---------------------- */
        /*------------------------feature ---------------------- */
        
        .feature {
            text-align: center;
        }
        
        .feature .wrap {
            padding: 16vw 5.333vw;
        }
        
        .feature.recommend .wrap {
            padding: 16vw 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: 4vw;
            font-weight: 200;
            letter-spacing: 1px;
            color: #808080;
        }
        
        .feature .two img {
            transition: .2s;
        }
        
        .feature .two img:hover {
            transition: .2s;
            opacity: .9;
        }
        
        .secLine.grayLine {
            max-width: 100%;
        }
        
        .secLine .line {
            width: 100%;
            background-color: #d4d4d4;
            height: 1px;
        }
        
        @media screen and (min-width: 768px) and (max-width: 1101px) {
            .btn {
                margin-top: 50px;
            }
            .feature ul.two {
                padding: 0;
            }
            .feature ul.two li {
                width: 300px;
            }
        }
        
        @media only screen and (min-width: 768px) {
            .feature .wrap {
                padding: 70px 0;
                max-width: 1100px;
                width: 100%;
                margin: 0 auto;
            }
            .feature.recommend .wrap {
                padding: 180px 0 70px;
            }
            .feature .feature_title {
                font-size: 22px;
                line-height: 2;
                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;
            }
            .btn_03style {
                text-align: center;
                margin: 80px auto 0;
                width: 480px;
                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;
            }
        }