@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* reset CSS */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
body {
    line-height: 1.6;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
nav ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
} /* change colours to suit your needs */ ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
} /* change colours to suit your needs */ mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
} /* change border colour to suit your needs */ hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}
input, select {
    vertical-align: middle;
}
img {
    display: block;
    margin: 0 auto;
}
* {
    box-sizing: border-box;
}
li {
    list-style: none;
}
.cf:before, .cf:after {
    content: "";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    zoom: 1;
}
/* PC CSS */
.pc {
    display: block !important;
}
.sp {
    display: none !important;
}
html {
    font-size: 62.5%;
}
body {
    font-size: 2.2rem;
    color: #eee;
    line-height: 1.6;
    background: #27303e;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
body {
    margin: 0;
    color: #202020;
    font-size: 2.2rem;
    font-weight: 500;
    line-height: 1.7;
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: "palt"1;
    /*background-color:#fff;*/
}
.main {
    width: 960px;
    padding: 0rem 0 1rem;
    margin: 0 auto;
    background: #FFF;
}
.clearfix {
    *zoom: 1;
    clear: both;
    overflow: hidden;
}
/*----------------------------------------------------------------------------------------------
prihead
----------------------------------------------------------------------------------------------*/
#prihead {
    z-index: 20;
    position: fixed;
    width: 100%;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    background: #960000;
    background: -moz-linear-gradient(left, #960000 0%, #cf0404 50%, #960000 100%);
    background: -webkit-linear-gradient(left, #960000 0%, #cf0404 50%, #960000 100%);
    background: linear-gradient(to right, #960000 0%, #cf0404 50%, #960000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#960000', endColorstr='#960000', GradientType=1);
}
#prihead #CDT {
    width: 960px;
    padding: 1rem 0;
    margin: 0 auto;
    color: #fff;
    line-height: 1.3;
}
#prihead #CDT .count_num {
    display: inline-block;
    padding: 0 .4rem;
    margin: 0 .4rem;
    border-radius: 3px;
    color: #333;
    font-size: 150%;
    font-family: "Century Gothic", monospace;
    background: #fff;
}
@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop, #prihead #CDT .count_num { /* IE11 */
        padding: 1rem .4rem 0;
        line-height: 1;}
}
.head_b #prihead {
    background: #0F0F11;
}
/*----------------------------------------------------------------------------------------------
header
----------------------------------------------------------------------------------------------*/
header h1 {
    width: 100%;
    margin: 0 auto;
    background: url(../img/nakazato_letter_bg.jpg)no-repeat center/cover;
    padding: 0;
    text-align: center;
    position: relative;
}
header h1 {
    padding-top: 0rem;
}
h3 + p {
    margin-top: 1em;
}
.r {
    color: #c00;
}
.r2 {
    color: #f74141;
}
.y {
    color: #ffc600;
}
.y2 {
    color: #f7df67;
}
.y3 {
    color: #fdf503;
}
.w {
    color: #fff;
}
.orange {
    color: #FF6600;
}
.yellow {
    color: #F8F026;
}
.blue {
    color: #0376bf;
}
.bg_y {
    background-color: #fff6b1;
}
.shadow {
    text-shadow: 0 0 10px #101010, 0 0 10px #101010, 0 0 10px #101010, 0 0 10px #101010, 0 0 10px #101010;
}
.mark_y_u2 {
    background: linear-gradient(transparent 77%, #FCFB77 77%);
}
.b {
    font-weight: bold;
}
.u {
    text-decoration: underline;
}
.u_g {
    text-decoration: underline;
    color: #f8d97a;
}
.u_p {
    text-decoration: underline;
}
.xsmall {
    font-size: 90%;
}
.xsmall2 {
    font-size: 90%;
}
.small {
    font-size: 80%;
}
.smallz {
    font-size: 80%;
}
.small1 {
    font-size: 60%;
}
.small2 {
    font-size: 70%;
}
.xxsmall {
    font-size: 30%;
}
.large {
    font-size: 110%;
}
.xxlarge {
    font-size: 120%;
}
.largex2 {
    font-size: 130%;
}
.xlarge {
    font-size: 140%;
}
.large2 {
    font-size: 150%;
}
.large3 {
    font-size: 180%;
}
.large4 {
    font-size: 230%;
}
.lh_small {
    line-height: 1.3;
}
.text_c {
    text-align: center;
}
.text_r {
    text-align: right;
    margin: 1rem 0 0;
}
.text_l {
    margin: 1rem 0 0;
}
.img_right {
    float: right;
    margin: 0 0 2em 1em;
    max-width: 250px;
}
.img_right {
    float: right;
    margin: 0 0 2em 1em;
}
.img_left {
    float: left;
    margin: 0 1em 2em 0;
}
.img_right.qr {
    max-width: unset;
}
.img_right.wide {
    width: 350px;
    max-width: unset;
}
.caption1 {
    border-left: 2px solid;
    padding: .5rem 0 0 .5rem;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.3;
}
.caption2 {
    text-align: center;
    line-height: 1.3;
    font-weight: bold;
    padding: 1rem 0 3rem;
}
.KG {
    font-family: "Gothic MB101 Heavy", sans-serif;
}
img {
    max-width: 100%;
}
.img-right {
    width: 270px;
    float: right;
    margin: 0 0 2rem 2rem;
}
.img-right_2 {
    width: 270px;
    float: right;
    margin: 1rem 0 2rem 2rem;
}
.img-left {
    width: 270px;
    float: left;
    margin: 2rem 2rem 2rem 0;
}
.txt-center {
    text-align: center;
}
@media all and (-ms-high-contrast:none) {
    .gradation2 {
        background: none;
    } /* IE11 */
}
.KG {
    font-family: "Gothic MB101 Heavy", sans-serif;
    font-weight: 800;
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: 'palt'1;
}
.mincho {
    font-family: Ryumin ExtraBold KL, serif;
}
.caption {
    max-width: 100%;
    padding: 1rem 0;
    margin: 0 !important;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
}
.movie iframe {
    position: relative;
    width: 100% !important;
    height: 500px;
    border: 10px solid #fbe5c4;
    ;
    z-index: 10;
    /*margin: 0 0 -20px;*/
    background-image: url(//t-marketing-present.com/hori20/wp-content/themes/T-MARKETING_B/img/video-close.png);
    -webkit-background-size: cover;
    background-size: cover;
}
.movie2 iframe {
    position: relative;
    width: 100% !important;
    border: 10px solid #fbe5c4;
    height: 500px;
    z-index: 10;
    margin: 0 0 -10px;
    -webkit-background-size: cover;
    background-size: cover;
}
.youtube {
    width: 700px;
    text-align: center;
    margin: 0 auto;
}
.youtube iframe {
    top: 0;
    right: 0;
    width: 700px;
    height: 394px;
}
/*----------------------------------------------------------------------------------------------
flex
----------------------------------------------------------------------------------------------*/
.flex_btw {
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.flex_center {
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}
/* FlexBox */
.flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.flex2 {
    margin: 0 auto;
    width: 860px;
}
.flex4 {
    margin: 0 auto;
    width: 760px;
    justify-content: space-around;
}
/*----------------------------------------------------------------------------------------------
flex row3
----------------------------------------------------------------------------------------------*/
.row3 .flex-inner {
    width: 33.3%;
}
.row3 .flex-inner .text {
    font-size: 1.7rem;
    text-align: center;
    margin-bottom: 1.5rem;
    font-weight: bold;
}
.row3 .flex-inner img {
    width: 100%;
}
.row3 .flex-inner.one .flex-box {
    margin: 0 1rem;
}
.row3 .flex-inner.two .flex-box {
    margin: 0 1rem;
}
.row3 .flex-inner.three .flex-box {
    margin: 0 1rem;
}
.flex.row3 {
    margin: 0 -1rem;
}
.row3 .flex-inner .name {
    text-align: center;
    margin-top: 1.5rem;
}
/*----------------------------------------------------------------------------------------------
アコーディオン
----------------------------------------------------------------------------------------------*/
.toggleBtn {
    cursor: pointer;
}
/*----------------------------------------------------------------------------------------------
サブヘッド
----------------------------------------------------------------------------------------------*/
h2.sub-head {
    padding: 4rem 0 0;
    margin: 0 auto;
    text-align: center;
    font-family: "Gothic MB101 Heavy", sans-serif;
    font-size: 6rem;
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: 'palt'1;
    line-height: 1.2;
}
.top-sec h2.sub-head {
    background: #000000;
    padding: 2rem 0;
    color: #ffffff;
    font-size: 5rem;
    line-height: 1.1;
    width: 960px;
}
.top-sec {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
section {
    margin-top: 4rem;
}
.sec02 {
    padding: 5rem 0;
}
.shadow_area {
    box-shadow: 4px 4px 16px #808080;
}
.sec10 {
    background: #a1a2a5;
    padding-bottom: 2rem;
    margin: 7rem 5rem;
}
.sec11 {
    background: #fff7f3;
    padding-bottom: 3rem;
    margin: 7rem 5rem;
}
section.bg_01 {
    width: 960px;
    padding-bottom: 3rem;
    margin: 0 auto;
    background: url(../img/letter_bg1.jpg)center;
    /*background-attachment: fixed;*/
    /*	padding-top: 7rem;*/
    color: #fff;
}
section.bg_02 {
    margin: 4rem auto 0;
    background: url(../img/letter_bg2.jpg);
    color: #fff;
}
section.bg_04 {
    margin: 4rem auto 0;
    background: url(../img/letter_bg4.jpg);
    color: #fff;
}
section.full_img {
    width: 960px;
    margin: 0 auto;
    padding: 0 5rem;
}
.back_color {
    background-color: #fbfbee;
    padding: 5rem 0;
}
.sec-inner {
    /*width: 960px;*/
    margin: 2rem auto 2rem;
    padding: 2rem 5rem;
}
.sec-inner2 {
    margin: 3rem auto;
    padding: 2rem 5rem 6rem;
}
.sec-inner3 {
    width: 960px;
    margin: 5rem auto 0rem;
    padding: 0rem 5rem 8rem;
}
.sec-inner4 {
    width: 960px;
    padding: 5rem 5rem 8rem;
}
.sec-inner5 {
    margin: 2rem 0 2rem;
}
.sec-dvd {
    padding-top: 3rem;
}
.letter {
    padding: 2rem 5rem;
}
.letter img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}
section.no-bottom {
    padding-bottom: 0;
}
.text-bottom {
    position: relative;
    font-size: 4rem;
}
img.next-arrow {
    position: absolute;
    right: 0;
    top: -10px;
}
h2 .bg_y {
    background-color: #f4f745;
    display: inline-block;
    width: 860px;
    padding: 0.5rem 0;
}
h2 .bg_y02 {
    background-color: #F8F026;
    width: 860px;
    padding: 0.5rem 0;
}
/*----------------------------------------------------------------------------------------------
リスト
----------------------------------------------------------------------------------------------*/
.list_box {
    margin: 3rem 0;
    padding: 1rem 2rem 0rem;
    border: solid #f57c98 3px;
}
.side_photo {
    float: right;
    padding: 0 0 2rem 2rem;
}
.side_photo2 {
    float: left;
    padding: 0 2rem 2rem 0;
}
/* 吹き出しタイトル客声 */
.voice_arrow {
    margin-bottom: 4rem;
}
.voice_ttl {
    position: relative;
    padding: 3rem 0;
    color: #FFF;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    background: #004f73;
}
.subttl {
    margin: 1rem auto;
}
.voice_img2 {
    width: 25%;
    float: right;
    margin-left: 2rem;
}
/* 固有 */
.voice_wrap {
    padding: 0 5rem;
    width: 960px;
    margin: 2rem auto;
}
.voice_title {
    background: #ccc;
    padding: 3rem 0;
    text-align: center;
    position: relative;
}
.voice_title h3 {
    font-family: "Gothic MB101 Heavy", sans-serif;
}
.voice_title:after {
    content: "";
    height: 0;
    width: 0;
    border: 30px solid;
    border-right-color: transparent;
    border-left-color: transparent;
    border-bottom: none;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
}
.voice_subttl {
    border-left: 5px solid #1a5377;
    font-size: 3.5rem;
    font-weight: bold;
    margin-bottom: 2rem;
    padding: 0 1rem;
}
.voice_num {
    display: table;
    background: #fff;
    line-height: 1;
    font-family: "Gothic MB101 Heavy", sans-serif;
    font-size: 3.5rem;
    font-weight: bold;
    margin: 0 auto 1rem;
    padding: 1rem;
    color: #222;
}
.voice_list {
    justify-content: center;
    margin: 0;
}
.voice_list li {
    background: #fff;
    line-height: 1;
    font-family: "Gothic MB101 Heavy", sans-serif;
    font-size: 3.5rem;
    font-weight: bold;
    color: #222;
    margin: 0 1rem 1rem;
    padding: 1rem;
}
.voice_title h3 {
    font-size: 4.5rem;
    line-height: 1.2;
    font-weight: bold;
}
.voice_inner {
    padding: 5rem;
    background: #f5f5f5;
}
.voice_inner2 {
    padding: 5rem;
    background: #fff3f9;
}
.voice_inner h4 {
    border-left: 5px solid;
    padding: 0 1rem;
    margin: 4rem 0 2rem;
    font-size: 2.8rem;
    font-weight: bold;
}
.voice_inner2 h4 {
    border-left: 5px solid;
    padding: 0 1rem;
    margin: 4rem 0 2rem;
    font-size: 2.8rem;
    font-weight: bold;
}
.voice_name {
    font-family: Ryumin ExtraBold KL, serif;
    font-size: 3.5rem;
    font-weight: bold;
    line-height: 1.3;
    border-bottom: 2px solid;
    overflow: auto;
    padding: 0 0 1rem;
    margin: 0 0 2rem;
}
.subttl {
    font-family: Ryumin ExtraBold KL, serif;
    font-size: 3rem;
    line-height: 1.3;
}
.voice_box {
    background: #fff;
    margin: 5rem 0 0;
    padding: 5rem 5rem;
}
.voice_box h4 {
    margin-top: 0;
}
.voice_box img {}
.voice_box .flex {
    margin: 3rem 0 0;
}
.voice_box .img_flex {
    margin: 0 0 1rem;
}
.voice_box .img_flex2 {
    width: 49%;
    margin: 0 0 1rem;
}
.voice_box .img_flex img {
    margin-top: 0;
}
.red .voice_title {
    background: #c00;
    color: #fff;
}
.red .voice_title:after {
    border-top-color: #c00;
}
.red .voice_inner {
    background: #ffefef;
}
.red .voice_box h4 {
    border-color: #c00;
}
.type_orange .voice_box h4 {
    border-color: #FF6600;
}
.blue .voice_title {
    background: #1a5377;
    color: #fff;
}
.blue .voice_title:after {
    border-top-color: #1a5377;
}
.blue .voice_inner {
    background: #e5f5ff;
}
.blue .voice_box h4 {
    border-color: #1a5377;
}
.voice_yellow .voice_title {
    background: #fdde89;
    color: #000;
}
.voice_yellow .voice_title:after {
    border-top-color: #fdde89;
}
.voice_yellow .voice_box h4 {
    border-color: #fdde89;
}
.voice_yellow2 .voice_title {
    background: #dc1e50;
    color: #fff;
}
.voice_yellow2 .voice_title:after {
    border-top-color: #dc1e50;
}
.voice_yellow2 .voice_box h4 {
    border-color: #dc1e50;
}
.voice_yellow .voice_inner {
    background: #fff9ea;
}
h4.deco_red {
    border-color: #cb3736;
}
.voice_inner h4.area-top {
    margin-top: 0;
}
.voice_inner2 h4.area-top {
    margin-top: 0;
}
.voice_inner2 h4.area-top {
    margin-top: 0;
}
.img_left .text {
    text-align: center;
    margin-top: 1rem;
    font-weight: bold;
    font-size: 2.2rem;
}
.img_right .text {
    text-align: center;
    margin-top: 1rem;
    font-weight: bold;
    font-size: 1.6rem;
}
.text.bg_black02 {
    background: #000;
    margin-top: 0;
    padding: 1rem;
    color: #fff;
}
.img_right.img_large {
    max-width: 380px;
}
.img_center {
    max-width: 500px;
    margin: 0 auto;
    text-align: center;
}
.box_main {
    background: #eaf4fd;
    padding: 2.5rem;
    margin-top: 1rem;
}
.type_orange .voice_title {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e77045+0,efa17b+51,e77045+100 */
    background: #e77045;
}
.type_orange .voice_title:after {
    border-top-color: #e77045;
}
.type_orange .voice_inner {
    background: #f9e4de;
}
/* voice_box.type_guest */
.voice_box.voice_box02 img {
    margin-top: 0;
}
.voice_box.voice_box02 h4 {
    overflow: hidden;
}
.voice_wrap h4.deco_red {
    margin-top: 0;
}
/* problem_box */
.problem_box {
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}
.problem_befor {
    width: 30%;
    font-size: 80%;
    line-height: 1.4;
    background: #fcffff;
}
.voice_box .problem_befor img {
    margin-top: 0;
}
.problem_arrow img {
    padding: 0 1rem;
    margin-top: 0;
}
.problem_after {
    width: 60%;
}
/* 先生枠 */
.voice_wrap_z {
    margin: 5rem 0 0;
    padding: 0 5rem
}
.voice_title_z {
    background: #ccc;
    padding: 3rem 0;
    text-align: center;
    position: relative;
}
.blue_z .voice_title_z:after {
    border-top-color: #1a5377;
}
.blue_z .voice_inner_z {
    background: #e5f5ff;
}
.voice_title_z {
    background: #ccc;
    padding: 3rem 0;
    text-align: center;
    position: relative;
}
.voice_title_z h3 {
    font-family: Ryumin ExtraBold KL, serif;
}
.voice_title h3.mincho {
    font-family: Ryumin ExtraBold KL, serif;
}
.blue_z .voice_title_z {
    background: #1a5377;
    color: #fff;
}
.blue_z .voice_inner_z {
    background: #fff;
    border: solid #1a5377;
    ;
    padding: 4rem 5rem 6rem;
    margin-bottom: 18rem;
}
.voice_title_z h3 {
    font-size: 5rem;
    line-height: 1.2;
    font-weight: bold;
}
.voice_list_z {
    justify-content: center;
    margin: 0;
}
.voice_list_z li {
    background: #fff;
    line-height: 1;
    font-family: Ryumin ExtraBold KL, serif;
    font-size: 3.5rem;
    font-weight: bold;
    color: #222;
    margin: 0 1rem 1rem;
    padding: 1rem;
}
.voice_subttl_z {
    line-height: 1.2;
    border-bottom: 3px solid #616060;
    font-size: 3.5rem;
    font-weight: bold;
    margin-bottom: 2rem;
    padding: 0 0 2rem;
    font-family: "Gothic MB101 DemiBold", sans-serif;
}
.blue_z.voice_wrap_z:last-child:after {
    border-top-color: #1a5377;
    ;
}
.voice_wrap_z:last-child:after {
    content: "";
    height: 0;
    width: 0;
    border: 200px solid;
    border-right-color: transparent;
    border-left-color: transparent;
    border-bottom: none;
    border-top-width: 80px;
    position: absolute;
    bottom: -80px;
    left: 50%;
    transform: translateX(-50%);
}
.voice_wrap_z {
    position: relative;
    margin: 5rem 0 0;
}
/* 完治しなかった理由
------------------------------
.bg_reason{ background:url("../img/symptom_bg.jpg")no-repeat top center; }*/
.bg_reason {
    background-color: black;
    margin-top: 2rem;
    padding: 3rem 5rem;
}
.reason_ttl {
    padding: 1rem;
    margin-bottom: 3rem;
    border: 2px solid #fff;
    color: #fff;
    font-size: 4rem;
    text-align: center;
    line-height: 1.3;
}
/* 症例 */
.symptom dt {
    width: 24%;
    padding: .6rem 1rem;
    margin-bottom: 1rem;
    color: #FFF;
    font-weight: bold;
    text-align: center;
}
.symptom01 {
    background: #AE0007;
}
.symptom02 {
    background: #005a88;
}
.symptom03 {
    background: #824c8e;
}
.symptom04 {
    background: #1b7e60;
}
.symptom05 {
    background: #6d6d6d;
}
.symptom06 {
    background: #353535;
}
.symptom dd {
    width: 76%;
    padding: .6rem 1rem;
    margin-bottom: 1rem;
    color: #fff;
}
/*----------------------------------------------------------------------------------------------
voice
----------------------------------------------------------------------------------------------*/
.voice_line_box {
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 0;
    margin: 3rem 0;
}
.voice_line_pic {
    width: 35%;
    padding: 0 2rem 0 0;
    text-align: center;
}
.voice_line_pic img {
    margin: 0;
}
.voice_line_pic img + img {
    margin-top: 1rem;
    ;
}
.voice_line_txt {
    width: 65%;
}
.voice_line_ttl {
    padding-bottom: .6rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #CCC;
    font-size: 4rem;
    line-height: 1.4;
    font-family: Ryumin ExtraBold KL, serif;
}
.voice02-repo {
    margin-top: 2rem;
    padding: 1rem 2rem 2rem;
    background: #f0f0f3;
    border-radius: 10px;
}
.voice02-repo h5 {
    font-size: 2.5rem;
    font-weight: bold;
    color: #c00;
    text-align: center;
}
.voice02-repo ul {
    margin-left: 2rem;
    padding-left: 1em;
    text-indent: -.5rem;
    font-size: 1.8rem;
    font-weight: bold;
}
.voice02_sub_text {
    text-align: center;
    margin-bottom: 2rem;
    border-bottom: 1px solid #c8cace;
    padding-bottom: 2rem;
    font-size: 90%;
}
/*----------------------------------------------------------------------------------------------
voice
----------------------------------------------------------------------------------------------*/
.bg_black {
    background-color: #4e4e54;
    margin-bottom: 2rem;
}
.bg_black .sub-head {
    color: #fff;
}
.bg_black .letter {
    color: #fff;
}
.voice2 .r {
    color: #FFFF55;
}
.voice2 .voice_line_box {
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 0;
    margin: 2rem 0;
    width: 49%;
}
.voice2 .voice_line_pic {
    width: 30%;
    padding: 0 1rem 0 0;
    text-align: center;
}
.voice2 .voice_line_pic img {
    margin: 0;
}
.voice2 .voice_line_pic img + img {
    margin-top: 1rem;
    ;
}
.voice2 .voice_line_txt {
    width: 68%;
}
.voice2 .voice_line_ttl {
    padding-bottom: .4rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #fff;
    font-size: 2rem;
    line-height: 1.4;
    font-family: Ryumin ExtraBold KL, serif;
}
.voice2 p {
    font-size: 1.5rem;
}
/* 症例 */
.symptom dt {
    width: 20%;
    padding: 1rem;
    font-size: 2.2rem;
    margin-bottom: 1rem;
    color: #fff;
    font-weight: bold;
    text-align: center;
}
.symptom01 {
    background: #d71523;
    ;
}
.symptom dd {
    width: 80%;
    font-weight: bold;
    font-size: 2.3rem;
    padding: .6rem 1rem;
    margin-bottom: 1rem;
    color: #eee;
}
/*----------------------------------------------------------------------------------------------
リスト
----------------------------------------------------------------------------------------------*/
/* 共有 */
ul.check3, ul.check4 {
    /*overflow:auto;*/
    margin: 0rem 0 2rem;
}
ul.check3.overflow-unset {
    overflow: unset;
}
/* 固有 */
ul.check3 li {
    padding: 1rem 0 1rem 4rem;
    font-weight: bold;
    font-size: 2.3rem;
    background: url("../img/base/check2.png") 0 .8rem no-repeat;
    /* border-bottom: 1px dashed #aaa; */
}
ul.check4 li {
    padding: 1rem 0 1rem 4rem;
    font-weight: bold;
    font-size: 2.6rem;
    background: url("../img/base/check2.png") 0 .8rem no-repeat;
    border-bottom: 1px dashed #aaa;
}
ul.check4 li:nth-child(even) {
    background-color: #FFFFF0;
}
ul.check5 li {
    width: 760px;
    padding: 2rem 0 2rem 3rem;
    font-weight: bold;
    font-size: 2.6rem;
    background: url(../img/base/check2.png) 0 2rem no-repeat;
    display: flex;
    vertical-align: middle;
    line-height: 1.2;
    background-size: 26px;
}
.check5 .title {
    border-right: 1px solid;
    padding-right: .5rem;
    margin-right: 1rem;
    width: 106px;
    font-size: 2.3rem;
}
.check5 .text {
    font-size: 2.2rem;
}
ul.check6 li {
    padding: 2rem 0 2rem 3rem;
    font-weight: bold;
    font-size: 2.3rem;
    background: url(../img/base/check2.png) 0 2rem no-repeat;
    display: flex;
    vertical-align: middle;
    line-height: 1.2;
    background-size: 26px;
}
ul.check6 {
    color: #5a595a;
    background: #f8f9ff;
    padding: 1rem 2rem;
}
ul.check5 {
    width: 760px;
}
.check8 {
    margin: 2rem 0;
    font-size: 2.1rem;
    font-weight: bold;
    padding-left: 1.5em;
    text-indent: -.8em;
}
/* 共有 */
ul.bullet1, ul.bullet2 {
    margin: .5rem 0 3rem;
}
/* 固有 */
ul.bullet1 li {
    overflow: hidden;
    padding: 2rem 0 1rem 5rem;
    margin: 0;
    border-bottom: 2px dotted #ccc;
    font-size: 2.4rem;
    font-weight: 900;
    background: url(../img/base/check3.png) 1rem 2.4rem no-repeat;
}
ul.check7 {
    margin: 2rem 0;
}
ul.check7 li {
    padding: 0 0 1rem 4rem;
    font-weight: bold;
    background: url(../img/base/check2.png) 0 .8rem no-repeat;
}
/*box*/
.box01-wrap {
    background: url("../img/box01-bg.jpg") no-repeat bottom;
    margin-bottom: 2rem;
    padding: 3rem 5rem;
}
.box01 {
    width: 100%;
    align-items: center;
}
.box01 dt {
    width: 20%;
    margin-bottom: 1.5rem;
    padding-left: 3.8rem;
    background: url(../img/base/check3.png) 0 .8rem no-repeat;
    font-size: 3rem;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
}
.box01 dd {
    width: 80%;
    margin-bottom: 1.5rem;
    padding-left: 2rem;
    font-weight: bold;
    line-height: 1.2;
    border-left: 4px solid #424242;
}
.black-box {
    background: #000;
    margin: 2rem 0;
    padding: 3rem;
    color: #fff;
    line-height: 1.2;
}
.black-box h4 {
    margin-bottom: .5rem;
    text-align: center;
    font-size: 4rem;
}
/*----------------------------------------------------------------------------------------------
block_box
----------------------------------------------------------------------------------------------*/
.block_box {
    width: 50%;
    margin-bottom: 2rem;
}
.block_box_area {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.block_box .title {
    text-align: center;
    padding: 1rem;
    font-weight: bold;
    font-size: 2.9rem;
}
.block_box.bb1 .title {
    background: #FBE5D6;
}
.block_box.bb2 .title {
    background: #DEEBF7;
}
.block_box.bb3 .title {
    background: #E2F0D9;
}
.block_box.bb4 .title {
    background: #FFF2CC;
}
.block_box.bb5 .title {
    background: #D6DCE5;
}
.block_box.bb6 .title {
    background: #E1DBF3;
}
.block_box:nth-child(odd) .inner {
    margin-right: 1rem;
}
.block_box:nth-child(even) .inner {
    margin-left: 1rem;
}
.bb5 ul.check6 {
    background: #f8f9ff;
    padding: 1rem 2rem;
    height: 450px;
}
.bb4 ul.check6 {
    height: 396px;
}
/*----------------------------------------------------------------------------------------------
product
----------------------------------------------------------------------------------------------*/
.product__wrap h3 {
    border-top: 3px solid #2B2B2B;
    border-bottom: 3px solid #2B2B2B;
    margin: 2rem 0;
    padding: 1.5rem;
    font-size: 3.5rem;
    text-align: center;
    color: #2B2B2B;
    line-height: 1.3;
}
.dvd01 {
    color: #fff;
}
.dvd02 {
    color: #fff;
}
.product__box ul {
    margin: 0rem 0;
}
.product__box ul.last {
    margin-bottom: 0;
}
.product__box {
    padding: 3rem 0 7rem;
}
.product__box:last-of-type {
    margin-bottom: 0;
}
.tokutenx {
    background: url("../img/login_bg.jpg") bottom center;
    margin-top: 5rem 0;
}
.tokuten {
    padding: 0 5rem 5rem;
}
.tokuten_list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.tokuten_box {
    width: 48%;
    background: #fff;
    color: #222;
    padding: 2rem;
    margin-top: 3rem;
}
.tokuten_num {
    background: #ca924c;
    background: -webkit-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: -moz-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    margin: 0 auto 1rem;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: 'palt'1;
    letter-spacing: -2px;
    font-size: 4rem;
    text-align: center;
    color: #300f00;
}
.tokuten_title {
    font-size: 1.9rem;
    line-height: 1.3;
    text-align: center;
    padding-bottom: 1rem;
    margin-bottom: 2rem;
    border-bottom: 2px solid #ccc;
}
.tokuten_txt {
    font-size: 1.6rem;
}
.tokuten_txt img {
    margin-bottom: 1rem;
}
/*----------------------------------------------------------------------------------------------
tokuten
----------------------------------------------------------------------------------------------*/
.tokuten2 {
    padding: 0rem 5rem 5rem; /*background: url("../img/base/darkness.jpg");background-attachment: fixed;*/
}
.tokuten__wrap {
    padding-top: 5rem;
}
.tokuten__box {
    padding-bottom: 5rem; /*background: url("../img/login_bg.jpg") bottom center; */
}
.tokuten__list {
    margin: 0 auto 1rem;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: 'palt'1;
    letter-spacing: -2px;
    font-size: 5rem;
    text-align: center;
    color: #300f00;
}
.tokuten__list span {
    background: #ca924c;
    background: -webkit-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: -moz-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    padding: .5rem 7rem;
}
.tokuten__ttl {
    color: #fff;
    font-size: 3.6rem;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: 'palt'1;
    letter-spacing: -2px;
    text-align: center;
    line-height: 1.3;
}
.tokuten__inner {
    background: #fff;
    padding: 5rem;
}
.tokuten__list .ok {
    background: #ca924c;
    background: -webkit-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: -moz-linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    background: linear-gradient(90deg, #ca924c, #fff6b1, #ca924c);
    padding: .5rem 7rem;
}
.tokuten_sen {
    margin-top: 4rem;
    padding: 5px;
    background: linear-gradient(45deg, #ca924c, #fffce6, #ca924c, #fffce6);
}
.tokuten__inner .flex img {
    width: 45%;
}
/*----------------------------------------------------------------------------------------------
technique
----------------------------------------------------------------------------------------------*/
.technique_wrap {
    padding: 3rem 0 2rem;
}
.technique_wrap:first-of-type {
    padding-top: 0;
}
.technique_wrap h2 {
    margin-bottom: 2rem;
}
.technique_wrap h3 {
    padding: 7rem 0 2rem;
    font-size: 3.4rem;
    text-align: center;
    color: #000;
    line-height: 1.3;
}
.technique_inner {
    padding: 0 5rem;
}
.technique_inner h3 + p {
    margin-top: 0;
}
/*----------------------------------------------------------------------------------------------
tokuten
----------------------------------------------------------------------------------------------*/
/* vol.2用特典↓ */
.tokuten_wrap {
    padding: 3rem 0 2rem;
}
.tokuten_wrap:first-of-type {
    padding-top: 0;
}
.tokuten_inner {
    padding: 2rem 5rem;
}
.tokuten_inner .notes {
    background: #f2f2f2;
    margin: 2rem 0 0;
    padding: .5rem 1rem;
    font-size: 1.5rem;
}
/* ブレット */
ul.bullet1 {
    margin: 3rem 0;
}
ul.bullet1 li {
    padding: 1.6rem 0 1.6rem 5rem;
    margin: 0;
    border-bottom: 2px dotted #ccc;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.3;
    background: url(../img/base/check4.png) 1rem 2rem no-repeat;
}
ul.bullet1 li:nth-child(even) {
    background-color: #FFFFF0;
}
h3.hosyou {
    font-size: 3.5rem;
    margin: 30px 0 15px;
}
/*----------------------------------------------------------------------------------------------
hosyou
----------------------------------------------------------------------------------------------*/
/* 返金保証の流れ */
.hosho_step {
    margin: 2rem 0;
    -webkit-box-align: start;
    -moz-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.hosho_step .step_box {
    width: 22%;
    padding: .4rem;
    font-size: 1.8rem;
    line-height: 1.4;
}
.hosho_step h4 {
    margin-bottom: 1rem;
    border-bottom: 1px solid #FFD12F;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}
.hosho_step img.arrow {
    width: 2%;
    margin: 0;
    transform: translate(-20%, 80%);
}
.tokuten_notice {
    margin-top: 2rem;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 1.8rem;
    line-height: 1.3;
}
/* 品質保証 */
/* 品質保証 */
.hosyo-img {
    float: left;
    padding: 0 3rem 3rem 0;
}
.hosho_step img.arrow {
    width: 2%;
    margin: 0;
    transform: translate(-20%, 80%);
}
.hosho2__flow_wrap {
    width: 100%;
    margin: 1.5rem auto 0;
    font-size: 70%;
}
.hosho2__flow_wrap_box {
    display: flex;
    margin: 0 auto;
}
.hosho2__flow_list {
    margin: 0 auto;
    flex: 1;
}
.hosho2__flow_list .hosho2__ttl {
    padding: .5rem 0;
    line-height: 1.3;
    font-size: 120%;
    font-weight: bold;
    text-align: center;
}
.hosho2__flow_list p {
    padding: 0 2rem;
}
.hosho2__flow_center {
    padding: 1.5rem 0;
    margin: 3rem 0;
    border-top: 1px solid #BFBFBF;
}
.form {
    padding: 20px 0 40px;
}
a.btn {
    display: block;
    text-align: center;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
    color: #fff;
    background: #0071c6;
    border-radius: 100px;
    padding: 10px;
    margin: 30px auto;
    box-shadow: 0 7px 0 0 #004c87;
    transition: all 0.2s;
    position: relative;
    top: 0;
}
a.btn .large {
    font-size: 250%;
}
a.btn:hover {
    background: #0c97ff;
    box-shadow: 0 0 0 0 #004c87;
    top: 7px;
}
span.mark {
    background: #fff;
    color: #005291;
    display: inline-block;
    padding: 0 10px;
}
.form-notice {
    padding: 15px;
    font-size: 2rem;
    text-align: center;
}
/* 料金 */
.form {
    margin: 0;
}
.price__box {
    width: 98%;
    margin: 0 auto;
}
.price__result {
    margin: 0 auto;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
}
.price__result_main {
    color: #cb3736;
    font-size: 7vw;
    line-height: 1;
}
.price__result_main img {
    float: left;
    width: 20%;
    padding-right: 1rem;
}
.price__result_sub {
    font-size: 6rem;
    text-align: right;
}
.price__result_sub {
    margin-top: 0;
}
.price__notice {
    padding: 3rem;
    margin: 1rem auto 0;
    background: #eee;
    color: #000;
}
.price__notice p {
    padding: 0 0 0 1em;
    margin: 0 auto;
    font-size: 4.5vw;
    text-indent: -1em;
}
.attention_box {
    padding: 2rem 2rem 2rem 4rem;
    border: 2px dotted #CCC;
    margin: 3rem 0;
    font-size: 1.8rem;
    line-height: 1.3;
    text-indent: -1em;
    background: #FFF;
}
.attention_box.normal {
    padding: 2rem;
    text-indent: 0;
}
/*----------------------------------------------------------------------------------------------
form
----------------------------------------------------------------------------------------------*/
.formWrap {
    width: 100%;
    margin: 2rem 0 4rem;
}
/* ボタン */
/* 共通 */
input.btn_submit, input.btn_submit02, input.btn_submit03 {
    cursor: pointer;
    display: block;
    width: 700px;
    height: 160px;
    margin: auto;
    border: none;
    text-indent: -9999px;
}
input.btn_submit:hover, input.btn_submit02:hover, input.btn_submit03:hover {
    opacity: .8;
}
/* 固有 */
input.btn_submit {
    background: url(../img/base/btn04.png) no-repeat 0 0;
}
input.btn_submit02 {
    background: url(../img/base/btn01.gif) no-repeat 0 0;
}
input.btn_submit03 {
    background: url(../img/base/btn03.gif) no-repeat 0 0;
}
/* 固有 */
input.btn_submit2 {
    background: url(../img/btn.png) no-repeat 0 0;
}
/*----------------------------------------------------------------------------------------------
form3
----------------------------------------------------------------------------------------------*/
.formbox .formWrap3 {}
/* ボタン */
/* 共通 */
input.btn_submit3, input.btn_submit02, input.btn_submit03 {
    cursor: pointer;
    display: block;
    width: 430px;
    height: 480px;
    margin: 0 auto;
    border: none;
    text-indent: -9999px;
}
input.btn_submit3:hover, input.btn_submit02:hover, input.btn_submit03:hover {
    opacity: .8;
}
/* 固有 */
input.btn_submit3 {
    background: url(../img/btn_sp.png) no-repeat 0 0;
}
.formbox {
    margin: 0 auto;
    padding-bottom: 8rem;
    width: 860px;
}
.tsuishin {
    margin-top: 2rem;
    background-color: #0f0f0f;
}
.tsuishin .sec-inner {
    padding: 5rem;
    background-color: #fff;
    border: 1px solid #ccc;
}
.tsuishin-txt {
    padding-top: 0;
    padding-bottom: 0;
    background: repeating-linear-gradient(rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 36.1px, #ccc 36.1px, #ccc 37.1px);
    font-family: リュウミン EB-KL, "Ryumin ExtraBold KL", "HGP明朝B", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif"
}
.tsuishin-txt p + p {
    margin-top: 1.7em;
}
.tsuishin-txt p {
    line-height: 1.7;
    color: #000;
}
#donation {
    padding: 80px 0;
}
#information .info-wrap {
    align-items: flex-start;
}
#information h3 {
    font-size: 2rem;
    text-align: left;
    border-bottom: 1px solid #ccc;
    padding: 0 0 5px;
    margin: 0 0 10px;
}
#information .info-item-half {
    width: 49%;
}
#information .info-box {
    border: 1px solid #ccc;
    padding: 20px;
    font-size: 1.5rem;
    line-height: 1.5;
    margin: 0 0 30px;
}
footer {
    background: #eee;
    padding-bottom: 80px !important;
}
.footer_logo img {
    display: block;
    max-width: 250px;
}
.footer_txt {
    padding: 0 0 0 2em;
    line-height: 1.9;
    font-size: 12px;
    text-align: left;
}
#footer_wrap {
    width: 800px;
    margin: 0 auto;
    font-size: 80%;
    padding: 1.5em 0;
    display: flex;
    justify-content: center;
}
#footer_wrap li {
    display: inline-block;
    border-left: 1px solid #aaa;
    padding: 0 1em 0;
}
#footer_wrap li:first-child {
    border: none;
    padding: 0 1em 0 0;
}
#footer_wrap p {
    color: #3f3f3f;
}
.hvr-wobble-vertical {
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
}
.hvr-wobble-vertical:active, .hvr-wobble-vertical:focus, .hvr-wobble-vertical:hover {
    -webkit-animation-name: hvr-wobble-vertical;
    animation-name: hvr-wobble-vertical;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
}
.reflection {
    height: 100%;
    width: 30px;
    position: absolute;
    top: -180px;
    left: 0px;
    background-color: #fff;
    opacity: 0;
    transform: rotate(45deg);
    animation: reflection 2.5s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 2.5s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 2.5s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 2.5s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 2.5s ease-in-out infinite;
}
.btn_ft {
    margin-left: auto;
    margin-right: auto;
    width: 480px;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
.btn_ft img {
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
.btn_ft a {
    text-decoration: none !important;
}
@media screen and (max-width:768px) {
    .btn_ft {
        width: 75%;
    }
}
@media screen and (max-width:425px) {
    .btn_ft {
        width: 100%;
    }
}
@-webkit-keyframes hvr-wobble-vertical {
    16.65% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
    }
    33.3% {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }
    49.95% {
        -webkit-transform: translateY(4px);
        transform: translateY(4px);
    }
    66.6% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
    }
    83.25% {
        -webkit-transform: translateY(1px);
        transform: translateY(1px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes hvr-wobble-vertical {
    16.65% {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
    }
    33.3% {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
    }
    49.95% {
        -webkit-transform: translateY(4px);
        transform: translateY(4px);
    }
    66.6% {
        -webkit-transform: translateY(-2px);
        transform: translateY(-2px);
    }
    83.25% {
        -webkit-transform: translateY(1px);
        transform: translateY(1px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}
@keyframes reflection {
    0% {
        transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        transform: scale(0) rotate(45deg);
        opacity: 0.25;
    }
    81% {
        transform: scale(10) rotate(45deg);
        opacity: 0.35;
    }
    100% {
        transform: scale(75) rotate(45deg);
        opacity: 0;
    }
}
@-webkit-keyframes reflection {
    0% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        -webkit-transform: scale(0) rotate(45deg);
        opacity: 0.25;
    }
    81% {
        -webkit-transform: scale(10) rotate(45deg);
        opacity: 0.35;
    }
    100% {
        -webkit-transform: scale(75) rotate(45deg);
        opacity: 0;
    }
}
@-moz-keyframes reflection {
    0% {
        -moz-transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        -moz-transform: scale(0) rotate(45deg);
        opacity: 0.25;
    }
    81% {
        -moz-transform: scale(10) rotate(45deg);
        opacity: 0.35;
    }
    100% {
        -moz-transform: scale(75) rotate(45deg);
        opacity: 0;
    }
}
@-ms-keyframes reflection {
    0% {
        -ms-transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        -ms-transform: scale(0) rotate(45deg);
        opacity: 0.25;
    }
    81% {
        -ms-transform: scale(10) rotate(45deg);
        opacity: 0.35;
    }
    100% {
        -ms-transform: scale(75) rotate(45deg);
        opacity: 0;
    }
}
@-o-keyframes reflection {
    0% {
        -o-transform: scale(0) rotate(45deg);
        opacity: 0;
    }
    80% {
        -o-transform: scale(0) rotate(45deg);
        opacity: 0.25;
    }
    81% {
        -o-transform: scale(10) rotate(45deg);
        opacity: 0.35;
    }
    100% {
        -o-transform: scale(75) rotate(45deg);
        opacity: 0;
    }
}
.product .sec-inner {
    padding: 3rem 5rem;
}
.price-table {
    width: 860px;
    ;
    margin: 20px auto;
    border: 2px solid #333;
}
.price-table th {
    background: #333;
    font-weight: bold;
    padding: 5px;
    color: #fff;
}
.price-table tr:nth-child(2n) {
    background: #fff;
    border: 2px solid #333;
    color: #3f3f3f;
}
.price-table td {
    padding: 10px;
    vertical-align: middle;
}
.price-table td .small {
    font-size: 60%;
}
.price-table td:nth-child(odd) {
    width: 60%;
    font-size: 1.8rem;
    background: #fff;
    color: #3f3f3f;
}
.price-table td:nth-child(even) {
    width: 40%;
    text-align: center;
    font-size: 2.5rem;
    border-left: 2px solid #333;
    background: #fff;
}
.price-box {
    margin-top: 2rem;
}
/* 料金 */
.form {
    margin: 0;
}
.price__box {
    width: 860px;
    margin: 0 auto;
}
.price__result {
    margin: 0 auto;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
}
.price__result_main {
    color: #cb3736;
    font-size: 7rem;
    line-height: 1;
}
.price__result_main img {
    float: left;
    width: 120px;
    padding-right: 2rem;
}
.price__result_sub {
    font-size: 6rem;
    text-align: right;
}
.price__result_sub {
    margin-top: 0;
}
.price__notice {
    padding: 3rem;
    margin: 1rem auto 0;
    background: #eee;
    color: #000;
}
.price__notice p {
    padding: 0 0 0 1em;
    margin: 0 auto;
    font-size: 2rem;
    text-indent: -1em;
}
/*----------------------------------------------------------------------------------------------
scfooter
----------------------------------------------------------------------------------------------*/
#scfooter {
    z-index: 1000;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0;
    background: rgba(202, 202, 202, .7);
}
.scfooter_inner {
    display: block;
    width: 80%;
    padding: 1rem 0;
    margin: auto;
    border-radius: 20px;
    margin: 0 auto;
    text-align: center;
}
.scfooter_inner a {
    text-decoration: none;
}
.btn_ft {
    position: relative;
    overflow: hidden;
    width: 480px;
    border-radius: 4px;
}
.btn_ft img {
    border-radius: 4px;
}
.btn_ft a {
    text-decoration: none !important;
}
@media screen and (max-width:768px) {
    .btn_ft {
        width: 75%;
    }
}
@media screen and (max-width:425px) {
    .btn_ft {
        width: 100%;
    }
}
/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
【 SP 】
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/* SP CSS */
@media screen and (max-width: 468px) {
    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }
    body {
        font-size: 4.5vw;
        font-weight: normal;
        line-height: 1.7;
    }
    .img-right {
        width: 60%;
        margin: 0 auto 1rem;
        float: none;
    }
    header {
        background: none;
    }
    .main {
        width: 100%;
        padding: 0;
        box-shadow: none;
    }
    .letter {
        width: 95%;
        margin: 2rem auto 0;
        background: #FFF;
        padding: 0;
    }
    .img_left {
        margin: 0 auto 1rem;
        float: none;
    }
    .img_right {
        margin: 0 auto 1rem;
        float: none;
    }
    .img_right {
        margin: 2rem auto 1rem;
        float: none;
    }
    .img-left {
        width: 40%;
        margin: 0 1rem 3rem 0;
    }
    .voice_img2 {
        width: 100%;
        float: none;
        padding: 0;
        margin: 0 auto 1rem !important;
    }
    .side_photo2 {
        float: none;
        margin: 1rem auto;
        padding: 0;
    }
    .side_photo {
        float: none;
        width: 95%;
        margin: 0 auto;
    }
    section {
        margin-top: 2rem;
    }
    .text_r {
        font-size: 3.2vw;
    }
    .top-sec h2.sub-head {
        width: 95%;
        font-size: 6.5vw;
    }
    h2 .bg_y {
        width: 100%;
    }
  header h1 {
    width: 100%;
    margin: 0 auto;
    background: #000;
}
  
    header { /*margin-bottom: 2rem;*/
    }
    .shadow {
        text-shadow: none;
    }
    .xsmall {
        font-size: 75%;
    }
    .xsmall2 {
        font-size: 100%;
    }
    .small {
        font-size: 80%;
    }
    .smallz {
        font-size: 68%;
    }
    .small2 {
        font-size: 60%;
    }
    .xxsmall {
        font-size: 30%;
    }
    .large {
        font-size: 105%;
    }
    .xlarge {
        font-size: 125%;
    }
    .largex2 {
        font-size: 100%;
    }
    .large2 {
        font-size: 135%;
    }
    .large3 {
        font-size: 145%;
    }
    .large4 {
        font-size: 185%;
    }
    .caption {
        font-size: 4vw;
    }
    #prihead {
        z-index: 20;
    }
    #prihead #CDT {
        width: 100%;
        font-size: 3.6vw;
    }
    .voice02-repo ul {
        margin-left: 2.2rem;
        padding-left: 1em;
        text-indent: -1rem;
        font-size: 4vw;
    }
    .largesp {
        font-size: 115%;
    }
    .smallsp {
        font-size: 90%;
    }
    .img_small {
        width: 70%;
        margin: 0 auto;
    }
    .font_big {
        font-size: 120%;
    }
    .flex2 {
        margin: 0 auto;
        width: 100%;
    }
    img.evaluation {
        width: 488px;
    }
    .row3 .flex-inner.one .flex-box {
        margin-top: 2rem;
    }
    .row3 .flex-inner {
        width: 80%;
        margin: 0 auto;
    }
    .row3 .flex-inner .name {
        margin-bottom: 2rem
    }
    .text-bottom {
        font-size: 6vw;
    }
    section.bg_02 {
        width: 100%;
        background: url(../img/letter_bg2_sp.jpg)center;
        background-attachment: fixed;
        margin: 3rem auto 0;
        padding-bottom: 3rem;
    }
    section.bg_04 {
        width: 100%;
        background: url(../img/letter_bg4.jpg)center;
        background-attachment: fixed;
        margin: 3rem auto 0;
        padding-bottom: 3rem;
    }
    .check5 .title {
        width: 12%;
        font-size: 5vw;
    }
    .check5 .text {
        font-size: 5.2vw;
    }
    ul.check5 li {
        width: 100%;
        padding: 4vw 0 2vw 9vw;
    }
    ul.check5 {
        width: 100%;
    }
    ul.check6 li {
        padding: 4vw 0 4vw 9vw;
        font-size: 5.2vw;
    }
    /* FlexBox 横並び1 */
    .flex {
        display: block;
        margin: 0 auto;
    }
    .img_flex + .img_flex {
        margin-top: 1rem;
    }
    .voice_box .img_flex2 {
        width: 100%;
        margin: 0 0 1rem;
    }
    /*サブヘッド*/
    h2.sub-head {
        width: 95%;
        font-family: "Gothic MB101 Heavy", sans-serif;
        font-size: 6.6vw;
        letter-spacing: -1px;
        margin: 0 auto 0px;
        padding: 3rem 0 2rem;
    }
    .sub-head_sp {
        width: 95%;
        margin: 0 auto;
    }
    /*セクション*/
    .sec-inner {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 2rem;
    }
    .sec-inner2 {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 0rem;
    }
    .sec-inner3 {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 0rem;
    }
    .sec-inner4 {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 0rem;
    }
    .sec-dvd {
        padding-top: 1rem;
    }
    .img_right.wide {
        width: 75%;
    }
    .back_color {
        padding: 4vw 0;
    }
    /*----------------------------------------------------------------------------------------------
	technique
	----------------------------------------------------------------------------------------------*/
    .technique_wrap {
        padding: 0 0 2rem;
    }
    .technique_inner {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 2rem;
    }
    .technique_wrap h3 {
        padding: 3rem 0 2rem;
    }
    .technique_inner .KG {
        font-size: 5.4vw;
    }
    .technique_wrap .text_r {
        padding-top: 1rem;
        line-height: 1.3;
        text-align: center;
        font-size: 3vw;
    }
    .product .sec-inner {
        padding: 0 0 2rem;
    }
    .voice02-repo h5 {
        font-size: 4.5vw;
    }
    .voice02-repo {
        padding: 1rem;
    }
    section.bg_01 {
        width: 100%;
        background: url(../img/letter_bg1_sp.jpg) no-repeat center; /*background-attachment: fixed;*/
        background-color: black;
    }
    .img_left .text {
        font-size: 5vw;
    }
    .img_right .text {
        font-size: 4vw;
        margin-bottom: 2rem;
    }
    .voice_inner2 {
        padding: 1rem;
    }
    /*----------------------------------------------------------------------------------------------
	tokuten
	----------------------------------------------------------------------------------------------*/
    .sec-inner5 {
        margin: 0rem 0 0rem;
    }
    .sec0 {
        margin-top: 0rem;
    }
    .sec00 {
        margin-bottom: 0rem;
    }
    .tokuten_wrap {
        padding: 2rem 0;
    }
    .tokuten_inner {
        padding: 2rem 0 0;
        width: 95%;
        margin: 0 auto;
    }
    .tokuten_inner .notes {
        font-size: 3vw;
    }
    .sec-inner .tokuten p, img {
        margin-top: 0;
    }
    ul.bullet1, ul.bullet2 {
        margin: 2rem 0;
    }
    .voice_wrap {
        width: 95%;
        margin: 0rem auto 0;
        padding: 0;
    }
    .voice_title {
        padding: 5% 0;
    }
    .voice_title:after {
        border: 5vw solid;
        border-left-color: transparent;
        border-right-color: transparent;
        border-bottom: none;
        bottom: -5vw;
    }
    .voice_title h3 {
        font-size: 5.4vw;
    }
    .img_center {
        max-width: 75%;
    }
    .voice_num {
        font-size: 5vw;
    }
    .voice_list li {
        font-size: 4.5vw;
        margin: 0 0.5rem 1rem;
        padding: 2vw;
    }
    .voice_title .flex {
        display: -webkit-flex;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
    }
    .voice_inner {
        padding: 2.5rem 1rem 2rem;
        margin-bottom: 3rem;
    }
    .voice_inner2 {
        padding: 2.5rem 1rem 2rem;
        margin-bottom: 3rem;
    }
    .voice_subttl {
        font-size: 6vw;
        line-height: 1.3;
    }
    .voice_inner h4 {
        font-size: 4.7vw;
        line-height: 1.3;
    }
    .sec10 {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 2rem;
    }
    .sec11 {
        width: 95%;
        margin: 0 auto;
        padding: 0 0 2rem;
    }
    .voice_inner2 h4 {
        font-size: 5vw;
        line-height: 1.3;
    }
    .voice_name {
        font-size: 6vw;
        text-align: center;
    }
    .subttl {
        font-size: 6vw;
        text-align: center;
    }
    .voice_box {
        margin: 2rem 0 0;
        padding: 5%;
    }
    .voice_box img {
        margin-top: 2rem;
    }
    /* problem_box */
    .problem_box {
        margin: 2rem 0;
    }
    .problem_befor {
        width: 100%;
        font-size: 80%;
    }
    .problem_arrow {
        width: 100%;
        padding: 0;
        margin: -8vw 0;
        transform: rotate(90deg);
    }
    .problem_arrow img {
        width: initial;
    }
    .problem_after {
        width: 100%;
    }
    .problem_after {
        font-size: 5vw;
        margin-top: 2rem;
    }
    /*----------------------------------------------------------------------------------------------
	モニター
	----------------------------------------------------------------------------------------------*/
    .bg_black {
        padding: 1rem 0;
    }
    .bg_black .letter {
        background: #4e4e54;
    }
    .voice2 .flex {
        display: -webkit-flex;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
    }
    .voice2 .voice_line_box {
        padding: 0;
        width: 100%;
        margin: 1.5rem 0;
    }
    .voice2 .voice_line_pic {
        width: 30%;
        padding: 0 1rem 0 0;
    }
    .voice2 .voice_line_pic img {
        margin: auto;
    }
    .voice_line_pic .caption1 {
        font-size: 3vw;
        text-align: left;
    }
    .voice2 .voice_line_txt {
        width: 69%;
    }
    .voice2 .voice_line_txt p {
        font-size: 3vw;
    }
    .voice2 .voice_line_ttl {
        font-size: 4vw;
    }
    .block_box:nth-child(even) .inner {
        margin-left: 0;
    }
    .block_box:nth-child(odd) .inner {
        margin-right: 0;
    }
    .bb5 ul.check6 {
        height: auto;
    }
    .bb4 ul.check6 {
        height: auto;
    }
    /*----------------------------------------------------------------------------------------------
		img
	----------------------------------------------------------------------------------------------*/
    .movie iframe {
        width: 100% !important;
        height: 200px;
        border: 6px solid #fbeac3;
        z-index: 10;
        margin: 0 auto 0rem;
    }
    .movie2 iframe {
        width: 100% !important;
        border: 6px solid #fbeac3;
        z-index: 10;
        margin: 0 auto 2rem;
    }
    .youtube {
        width: 100%;
    }
    .youtube iframe {
        top: 0;
        right: 0;
        width: 100% !important;
        height: 200px !important;
    }
    .prf_img li {
        width: 100%;
    }
    .prf_name {
        overflow: initial;
        font-size: 12vw;
        text-align: center;
    }
    .prf_img li:first-child {
        padding-top: 0rem;
    }
    .prf_img li {
        padding-top: 1.8rem;
    }
    .box {
        float: left;
        width: 100%;
        border: 1px solid #fff;
    }
    .block_box {
        width: 100%;
    }
    .tokuten2 {
        width: 95%;
        margin: 3rem auto 0;
        padding: 0;
    }
    .product__box ul {
        padding: 0;
    }
    .block_box .title {
        font-size: 6vw;
    }
    .flex4 {
        width: 80%;
    }
    .img__flex img {
        margin-bottom: 2rem;
        width: 75%;
    }
    .tokuten_title {
        font-size: 4.5vw;
    }
    .tokuten__inner {
        padding: 2rem;
    }
    .check8 {
        font-size: 4.6vw;
    }
    /*----------------------------------------------------------------------------------------------
	reason
	----------------------------------------------------------------------------------------------*/
    .reason {
        padding-top: 2rem;
    }
    .reason_wrap {
        width: 100%;
    }
    .reason_sub-ttl {
        padding: 1rem 0;
        font-size: 5vw;
    }
    .reason_wrap {
        padding-bottom: 0;
    }
    .reason_ttl {
        margin-bottom: 1rem;
        padding-top: 1rem;
        font-size: 5.5vw;
    }
    .reason_box {
        margin-bottom: 2rem;
        padding: 2rem 1rem;
    }
    .reason-list {
        width: 100%;
        font-size: 5.5vw;
    }
    .reason_box-ttl h3 {
        width: 100%;
        padding: 1rem;
        font-size: 5.6vw;
        text-align: center;
    }
    .reason_box .img-right {
        width: 100%;
    }
    /*----------------------------------------------------------------------------------------------
	左右ボックス
	----------------------------------------------------------------------------------------------*/
    .subttl {
        border-width: 3px;
        font-size: 5.0vw;
        font-weight: bold;
    }
    /* 共有 */
    ul.check3, ul.check4 {
        font-size: 5vw;
    }
    ul.check3 li {
        background-size: 8%;
    }
    ul.check4 li {
        padding: 3vw 0 2vw 11vw;
    }
    /* 固有 */
    ul.check3 li {
        padding: 1rem 0 1rem 4rem;
        line-height: 1.3;
        background-position: 0 1.3rem;
        font-size: 4.5vw;
    }
    ul.check4 li {
        font-size: 5vw;
        background-position: 0 2vw;
    }
    ul.bullet1 li {
        font-size: 4.5vw;
        background: url(../img/base/check3.png) no-repeat 0 13px;
        background-size: 7vw;
        padding: 10px 0 10px 9vw;
    }
    /*box*/
    .box01-wrap {
        width: 95%;
        margin: 0 auto 2rem;
        padding: 2rem 0 2rem;
        background-size: contain;
    }
    .box01 dt {
        width: 100%;
        margin-bottom: .5rem;
        font-size: 6vw;
        line-height: 1.2;
        background: url(../img/base/check3.png) 0 no-repeat;
    }
    .box01 dd {
        width: 100%;
        padding-top: .5rem;
        padding-left: 4rem;
        border-left: none;
        border-top: 1px solid #eee;
    }
    ul.check7 {
        font-size: 5vw;
    }
    /* 固有 */
    ul.check7 li {
        background-position: 0 1.4rem;
    }
    /* 二重の境界線 */
    .voice_line_box {
        padding: 1.5rem 0;
        margin-bottom: 0;
        border-width: 4px;
    }
    .voice_line_ttl {
        order: 0;
        width: 100%;
        padding-bottom: 1rem;
        font-size: 4.5vw;
    }
    .voice_line_box.no_pic .voice_line_ttl {
        padding-bottom: 0;
        font-size: 4.5vw;
    }
    .voice_txt_ttl {
        border-width: 2px;
        font-size: 5vw
    }
    p + .voice_txt_ttl {
        margin-top: 3rem;
    }
    /* 完治しなかった理由
	------------------------------*/
    .bg_reason {
        padding: 1rem;
    }
    .bg_reason .flex {
        display: -webkit-flex;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
    }
    .reason_ttl {
        margin-bottom: 2rem;
        font-size: 6vw;
    }
    .symptom dt {
        width: 20%;
        padding: .6rem;
        font-size: 4.5vw;
    }
    .symptom dd {
        width: 78%;
        padding: .6rem;
        font-size: 4.5vw;
        line-height: 1.3;
    }
    /* 二重の境界線 */
    .voice_line_box {
        padding: 1.5rem 0;
        margin-bottom: 2rem;
        border-width: 4px;
    }
    .voice_line_ttl {
        order: 0;
        width: 100%;
        padding-bottom: 1rem;
        font-size: 4.5vw;
    }
    .voice_wrap_z:last-child:after {
        content: "";
        height: 0;
        width: 0;
        border: 20vw solid;
        border-right-color: transparent;
        border-left-color: transparent;
        border-bottom-color: transparent;
        border-top-width: 15vw;
        position: absolute;
        bottom: -35vw;
        left: 50%;
        transform: translateX(-50%);
    }
    .blue_z .voice_inner_z {
        margin-bottom: 8rem;
        padding: 4vw;
    }
    .voice_inner_z .side_photo {
        width: 60%;
    }
    .voice_wrap_z {
        width: 95%;
        margin: 2rem auto 0;
        padding: 0;
    }
    .voice_subttl_z {
        font-size: 5vw;
        margin-bottom: 4vw;
        padding: 0 0 4vw;
        border-bottom: 1px solid #616060
    }
    .voice_title_z h3 {
        font-size: 6vw;
    }
    .blue_z .voice_title_z {
        padding: 4vw 0;
    }
    .voice_list_z li {
        font-size: 5vw;
    }
    .list_box {
        margin: 2rem 0;
        padding: 0rem 1rem;
    }
    /*----------------------------------------------------------------------------------------------
	product
	----------------------------------------------------------------------------------------------*/
    .product__wrap {
        width: 100%;
    }
    .product__wrap h3 {
        font-size: 5vw;
    }
    .product__box {
        padding: 4rem 0 1rem;
        margin-bottom: 0;
        width: 95%;
        border: none;
    }
    .product__box ul {
        padding: 0 2rem;
    }
    .product__box ul li p {
        display: none;
    }
    .tokuten {
        padding: 5% 5% 3rem;
    }
    .top_x {
        padding: 0rem !important;
    }
    .tokuten_list {
        padding: 0;
    }
    .tokuten_box {
        width: 100%;
        margin-top: 0;
        margin-bottom: 2rem;
    }
    .tokuten_sen {
        margin-top: 2rem;
    }
    .tokuten_sub {
        font-size: 6vw;
    }
    .tokuten_num {
        font-size: 7.5vw;
    }
    /*----------------------------------------------------------------------------------------------
	tokuten
	----------------------------------------------------------------------------------------------*/
    .tokuten2 {
        margin: 0rem auto 0;
    }
    .tokuten__wrap {
        margin-top: 1rem;
        padding: 3px;
    }
    .tokuten__box {
        padding-top: 1rem;
    }
    .tokuten__list {
        margin-bottom: 1.5rem;
        font-size: 6.5vw;
    }
    .tokuten__list span {
        padding: .5rem 3rem;
    }
    .tokuten__list span .ok {
        padding: .5rem 3rem;
    }
    .tokuten__ttl {
        font-size: 6vw !important;
    }
    .tokuten__inner .flex img {
        width: 100%;
    }
    /*----------------------------------------------------------------------------------------------
	tokuten
	----------------------------------------------------------------------------------------------*/
    /*hosyo*/
    .hosyo-img {
        width: 85%;
        float: none;
        padding: 0 0 2rem 0;
    }
    .name-img {
        width: 80%;
    }
    h3.hosyou {
        font-size: 5vw;
    }
    /*----------------------------------------------------------------------------------------------
	form
	----------------------------------------------------------------------------------------------*/
    .form {
        margin-top: 3rem;
    }
    .formWrap {
        margin: 0;
        width: 95%;
        margin: 0 auto;
        padding-bottom: 2rem;
    }
    /* ボタン */
    input.btn_submit, input.btn_submit02, input.btn_submit03 {
        width: 100%;
        height: 21vw;
        padding: 0;
        background-size: 100%;
    }
    /*特典*/
    .tsuishin {
        padding: 2rem 0;
    }
    .tsuishin .sec-inner {
        padding: 15px;
    }
    .tsuishin-txt {
        background: none
    }
    #information .info-item-half {
        width: 100%;
    }
    .text.bg_black02 {
        font-size: 4vw;
    }
    /*----------------------------------------------------------------------------------------------
	footer
	----------------------------------------------------------------------------------------------*/
    .footer_logo img {
        display: block;
        max-width: 300px;
    }
    .footer_txt {
        padding: 1rem;
    }
    #footer_wrap {
        display: block;
        width: 100%;
    }
    .letter_list ol {
        counter-reset: my-counter;
        list-style: none;
        padding: 0;
    }
    .letter_list li {
        font-size: 1.8rem;
        padding: 2rem 0 2rem 4.5rem;
        line-height: 1.4;
    }
    .letter_list li p {
        font-size: 1.8rem;
        font-weight: normal;
        margin-bottom: 0rem;
    }
    .letter_list li:before {
        content: counter(my-counter);
        counter-increment: my-counter;
        color: #FFF;
        display: block;
        float: left;
        line-height: 35px;
        margin: 0 0 0 -40px;
        text-align: center;
        height: 35px;
        width: 35px;
        border-radius: 50%;
    }
    #scfooter {
        z-index: 1000;
        position: fixed;
        bottom: 0px;
        left: 0px;
        width: 100%;
        padding: 0;
        background: rgba(202, 202, 202, 0.7);
    }
    .scfooter_inner {
        display: block;
        width: 95%;
        border-radius: 20px;
        margin: 0 auto;
        text-align: center;
    }
    .scfooter_inner a {
        text-decoration: none;
    }
    .product-tokuten {
        width: 95%;
    }
    .product-tokuten h3 {
        font-size: 4vw;
    }
    .product-tokuten img {
        margin: 10px auto;
    }
    .price-table {
        line-height: 1.3;
    }
    .price-table {
        width: 95%;
        margin: 20px auto;
        border: 2px solid #2C3C3F;
    }
    .price-table td:nth-child(even) {
        font-size: 2.0rem;
        border-left: 1px solid #333;
    }
    .price-table td:nth-child(odd) {
        font-size: 1.6rem;
    }
    .price-table tr:nth-child(2n) {
        border: 1px solid #333;
    }
    .timer01 {
        padding: 5px 0;
        font-size: 4.5vw;
        line-height: 1.2;
    }
    .timer01 .timer_num {
        font-size: 130%;
    }
    /* 料金 */
    .price__box {
        width: 95%;
    }
    .price_result {
        width: 100%;
    }
    .price__result_main {
        font-size: 8.3vw;
    }
    .price__result_main img {
        width: 14vw;
        padding-right: 1rem
    }
    .price__result_sub {
        font-size: 5.8vw;
    }
    .price__notice {
        padding: 1rem;
    }
    .price__notice p {
        font-size: 3.8vw;
    }
    .attention_box {
        padding: 1.5rem 1.5rem 1.5rem 2.5rem;
        border: 2px dotted #CCC;
        margin: 2rem 0;
        font-size: 3.8vw;
    }
    .attention_box.normal {
        padding: 1.5rem;
        text-indent: 0;
    }
    /*----------------------------------------------------------------------------------------------
	hoshou
	----------------------------------------------------------------------------------------------*/
    /* 返金保証 */
    .hosho .img-left {
        width: 100%;
        margin-bottom: 1.5rem;
    }
    /* 返金保証の流れ */
    .hosho_step {
        display: block;
        margin: 1rem 0;
    }
    .hosho_step .step_box {
        width: 100%;
        padding: 0;
        font-size: 4vw;
    }
    .hosho_step h4 {
        font-size: 5.4vw;
    }
    .hosho_step img {
        margin-bottom: 1rem;
    }
    .hosho_step img.arrow {
        width: 6%;
        margin: -6vmin auto;
        transform: rotate(90deg);
    }
    .tokuten_notice {
        font-size: 3.5vw;
    }
    /* 品質保証 */
    .hosho2__flow_wrap {
        width: 100%;
        margin: 0 auto 1.5rem;
        font-size: 4.5vw;
    }
    .hosho2__flow_wrap_box {
        width: 100%;
        display: block;
    }
    .hosho2__flow_list {
        margin: 0 auto;
        flex: 1;
    }
    .hosho2__flow_list img {
        width: 60%;
        margin: 0 auto 2rem;
        flex: 1;
    }
    .hosho2__flow_list p {
        width: 90%;
        padding: .5rem 0;
        margin: 0 auto 1.5rem;
    }
    .hosho2__flow_center {
        border-top: 1px solid #BFBFBF;
        margin: 3rem 0;
        padding: 1.5rem 0;
    }
    .hosho2__flow_list p {
        width: 90%;
        padding: .5rem 0;
        margin: 0 auto 1.5rem;
    }
}