@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Sawarabi+Mincho&display=swap');

/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box; word-break: break-all;}
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;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: Lucida Grande,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:24px;
text-align:left;
color:#3c281e;
background:url(../images/bg.webp) center top fixed;
-webkit-text-size-adjust:100%;
overflow-x:hidden;
/* min-width:750px; */
}

img { border-style:none; vertical-align:bottom; padding:0; max-width:100%;}
figure { margin:30px auto; text-align:center;}
figure.waku img{ border:5px solid #fff; box-shadow:rgba(60, 40, 30, 0.2) 0 0 5px 2px;}
 
p{ line-height:1.6em; margin:0 0 1em; padding:0; text-align:left; background:url(../images/alpha.webp);}
p:last-child{margin:0px; }
a{ color:inherit; text-decoration:none;}
a:hover{}
.opa { transition: all 0.3s ease;}
.opa:hover { opacity: 0.6; filter: alpha(opacity=60);}

.left { text-align:left;}
.right { text-align:right;}
.center { text-align:center;}

.clear { clear:both;}
.clearfix:after{ margin:0px; padding:0px; visibility:hidden; content:"."; display:block; line-height:0; clear:both;}

/*ヘッダー*/
#header{ text-align: center; margin: 0; padding: 0; box-shadow:rgba(60, 40, 30, 0.25) 0 0 5px 2px;}
#header figure{ margin: 0 auto;}

/*フッター*/
#footer{ width:100%; background: #fff; box-shadow:rgba(60, 40, 30, 0.25) 0 0 5px 2px;}
#footer ul{ letter-spacing: -1em; text-align: center; padding: 15px;}
#footer ul li{ display: inline-block; letter-spacing: normal; margin: 0 20px; font-size: 90%;}
#footer ul li a:hover{ text-decoration: underline;}
p.copyright{ text-align:center; margin:0; padding:5px; background:#f9b4b1; color:#fff; font-size:75%; letter-spacing:0.1em;}

/*メイン*/
#content{ max-width:750px; margin:0 auto;
    /* min-height: 100vh; */
}
section { width:100%; margin:30px auto 90px; background:#fff; border-radius: 30px; box-shadow:rgba(60, 40, 30, 0.25) 0 0 5px 2px;}
.maincontent { padding:45px 30px; margin:0 auto;}

/*タイトル*/
h2,h3,h4{ line-height: 1.25em; font-weight: normal; font-family: 'Sawarabi Mincho', sans-serif;}
h2{ position: relative; padding: 0.33em; font-size: 60px; text-align: center; background: #f0b4b4; color: #fff; box-shadow:rgba(240, 180, 180, 0.5) 0 0 5px 2px; z-index: 5; text-shadow:1px 1px 2px rgba(60,40,30,0.1), -1px 1px 2px rgba(60,40,30,0.1), 1px -1px 2px rgba(60,40,30,0.1), -1px -1px 2px rgba(60,40,30,0.1);}
h2:before{ content: ""; max-width: 750px; height: 10px; position: absolute; left: 0; top: 0; background:#e19696;}
h2:after{ content: ""; max-width: 750px; height: 10px; position: absolute; left: 0; bottom: 0; background:#e19696;}
h3{ text-align: center; position: relative; font-size: 36px; margin: 30px auto;}
h3:first-child{ margin-top: 0;}
h3 strong{ position: relative; z-index: 3; background: #fff; padding: 0 0.5em; display: inline-block; font-weight: normal;}
h3:before{ content: ""; width: 100%; height: 1px; background: #3c281e; position: absolute; left: 0; right: 0; top: 50%;}
h3.red:before{ background: #c83232;}
@media screen and (max-width:767px){
   h2{
    font-size: 30px;
   } 
}

/*リスト*/
.list01 ul{ margin:30px auto; border:10px solid #c83232; padding:3%;}
.list01 ul li{ padding:0.25em 0.5em; font-size:110%; letter-spacing: 0.1em; font-weight:bold; border-bottom:2px dotted #3c281e;}
.list01 ul li:first-child{ border-top:2px dotted #3c281e;}
.list01 ul li span.lsf{ font-size:125%; color:#c83232;}

.list02 dl{ display: table; table-layout: fixed; width: 100%;}
.list02 dl dt{ display: table-cell; vertical-align: middle;}
.list02 dl dd{ display: table-cell; vertical-align: middle; padding-left: 30px;}
.list02{ margin:30px auto;}
.list02 ul li{ color: #326496; padding:0.25em 0.5em; font-size:110%; letter-spacing: 0.1em; font-weight:bold; border-bottom:2px dotted #326496;}
.list02 ul li:first-child{ border-top:2px dotted #326496;}
.list02 ul li span.lsf{ font-size:125%; color:#326496;}

.list03{ margin:30px auto;}
.list03 ul li{ color: #c83232; padding:0.25em 0.5em; font-size:110%; letter-spacing: 0.1em; font-weight:bold; border-bottom:2px dotted #c83232;}
.list03 ul li:first-child{ border-top:2px dotted #c83232;}
.list03 ul li span.lsf{ font-size:125%; color:#c83232;}

.list04{ margin:30px auto;}
.list04 ul{ display: inline-block;}
.list04 ul li{ padding:0.25em 0.5em; letter-spacing: 0.1em; font-weight:bold; border-bottom:1px dotted #3c281e;}
.list04 ul li:first-child{ border-top:1px dotted #3c281e;}

/*酵素*/
#koso{ margin: 30px auto;}
#koso dl{ margin: 30px auto;}
#koso dl dt{ background: #c83232; color: #fff; padding: 0.225em; font-size: 36px; letter-spacing: 0.1em; font-weight: bold; text-align: center; border: 10px double #fff;}
#koso dl dd{ border: 10px solid #c83232; border-top: none; margin: 0 15px; padding: 15px;}
#koso dl dd ul li{ padding:0.25em 0.5em; font-size:110%; letter-spacing: 0.1em; font-weight:bold; border-bottom:2px dotted #3c281e;}
#koso dl dd ul li:first-child{ border-top:2px dotted #3c281e;}
#koso dl dd p{ margin-top: 15px;}

/*悪い＆良い食べ物*/
dl.bad_food{ margin: 30px auto;}
dl.bad_food dt{ background: #326496; color: #fff; font-size: 36px; font-weight: bold; text-align: center; border: 10px double #fff;}
dl.bad_food dt strong{ font-size: 150%; display: inline-block; margin-right: 0.25em;}
dl.bad_food dd{ border: 10px solid #326496; border-top: none; margin: 0 15px; padding: 15px; text-align: center;}

dl.good_food{ margin: 30px auto;}
dl.good_food dt{ background: #c83232; color: #fff; font-size: 36px; font-weight: bold; text-align: center; border: 10px double #fff;}
dl.good_food dt strong{ font-size: 150%; display: inline-block; margin-right: 0.25em;}
dl.good_food dd{ border: 10px solid #c83232; border-top: none; margin: 0 15px; padding: 15px; text-align: center;}

/*商品*/
.product_explain{ border: 10px solid #f0b4b4; padding: 15px; background: rgba(250,225,200,0.5);}

/*理由*/
#reason h3 span.red{ display: inline-block; background: #c83232; color: #fff; padding: 0 0.25em 0 0.5em; margin-right: 0.5em;}
#reason h3{ margin-top: 90px;}
#reason h3:first-child{ margin-top: 0;}
#reason dl{ margin: 30px auto;}
#reason dl dt{ background: #c83232; color: #fff; text-align: center; padding: 0.5em; font-size: 32px; font-weight: bold; letter-spacing: 0.1em; line-height: 1em;}
#reason dl dd{ border: 10px solid #c83232; border-top: none; padding:15px;}
#reason dl dd strong{ color: #c83232; display: inline-block; font-size: 28px; line-height: 1.5em; padding-right: 40px; position: relative;}
#reason dl dd strong:after{ content: ""; width: 45px; height: 40px; background: url("../images/ico1.webp") center bottom no-repeat; background-size:100% auto; position: absolute; right:-0.125em; bottom:0.5em;}
#reason ol{ margin: 30px auto;}
#reason ol li{ padding: 0.5em 1em; border-bottom: 2px dotted #3c281e; font-weight: bold; line-height: 1.25em; letter-spacing: 0.1em;}
#reason ol li:first-child{ border-top: 2px dotted #3c281e;}

/*ご注意*/
.attention{ border: 10px solid #c83232; background: #faf0b4; padding: 15px; font-weight: bold; margin-bottom: 30px;}
#comparison table{ width: 100%; border-collapse: collapse; border-spacing: 0;}
#comparison table th,
#comparison table td{ border: 2px solid #3c281e; background: #fff; padding: 5px; vertical-align: middle; text-align: center;}
#comparison table ul{ text-align: left; font-size: 17px;}
#comparison table ul li{ border-bottom: 1px dotted #333; line-height: 1.25em; padding: 0.25em; padding-left: 1em; position: relative;}
#comparison table ul li:first-child{ border-top: 1px dotted #333;}
#comparison table ul li:before{ content: "・"; position: absolute; left: 0; top: 0.25em;}
#comparison table ul li.blue{ font-weight: bold;}
#comparison table tbody th{ width: 22.5%; background: #efefef;}
#comparison table tbody td:nth-child(2){ width:27.5%;}
#comparison table tbody td:nth-child(3){ width:27.5%;}
#comparison table tbody td:nth-child(4){ width:22.5%;}
#comparison table thead th{ background: #f0b4b4; color: #3c281e;}

#comparison table#megumi{ margin: 30px auto; position: relative;}
#comparison table#megumi tbody th{ background: #c83232; color: #fff;}
#comparison table#megumi tbody span.ico{ position: absolute; left: 15px; top: -30px; margin: auto;}
#comparison table#megumi tbody span.ico img{ height: 40px; vertical-align: middle;}
#comparison table#megumi tbody td{ background: #f0b4b4; color: #3c281e; padding: 10px; font-weight: bold;}

/*男性にも*/
#for_men{ border: 10px solid #326496; padding: 15px; margin: 30px auto; background: rgba(200,225,250,0.5);}

/*夫婦で利用*/
.pairs{ margin: 30px auto; padding: 15px; border-top: 10px double #3c281e; border-bottom: 10px double #3c281e;}
.pairs dl{ display: table; table-layout: fixed; width: 100%;}
.pairs dl dt{ display: table-cell; vertical-align: middle; width: 160px;}
.pairs dl dd{ display: table-cell; vertical-align: middle; padding-left: 15px;}
.pairs p{ margin: 0 auto; text-align: center;}

/*特典*/
.tokuten_notice{ border: 10px solid #c83232; padding: 15px; margin-top: 30px; background: #fcf0e3;}
.tokuten_notice h3{ font-size: 24px; margin-bottom: 15px;}
.tokuten_notice h3 strong{ background: #fcf0e3;}
.tokuten_notice p{ font-size: 21px;}

/*ファスティング*/
#fasting dl{ margin: 30px auto;}
#fasting dl:first-child{ margin-top: 0;}
#fasting dl dt{ background: #329632; color: #fff; padding: 15px;  font-size: 32px; font-weight: bold; letter-spacing: 0.1em;}
#fasting dl dt span{ display: inline-block; background: #fff; color: #329632; padding: 0.25em 0.5em; margin-right: 0.5em;}
#fasting dl dd{ border-left: 8px dotted #329632; padding: 15px; margin-left: 15px;}
#fasting dl dd li{ padding:0.25em 0.25em 0.25em 2em; line-height: 1.25em; letter-spacing: 0.1em; border-bottom:2px dotted #3c281e; position: relative;}
#fasting dl dd li:first-child{ border-top:2px dotted #3c281e;}
#fasting dl dd li span{ position: absolute; left: 0.5em; top: 0.25em;}
.fasting_result h4{ background: #c83232; color: #fff; font-size: 36px; padding: 15px; position: relative; margin:60px auto 45px; text-align: center;}
.fasting_result h4:after{ content: ""; position: absolute; left: 0; right: 0; bottom: -30px; width: 0; height: 0; border-style: solid; border-width: 30px 345px 0 345px; border-color: #c83232 transparent transparent transparent;}
.fasting_result ul{ border: 10px solid #c83232; padding: 15px; background: rgba(250,225,200,0.5);}

/*愛用者の声*/
h2.voice_tit{ position: relative; /*padding-top: 75px;*/}
h2.voice_tit span.ico{ position: absolute; left: 90px; top: -30px;}
h2.voice_tit span.ico img{ transform: rotate(-22.5deg);}
#voice dl{ margin:30px auto; border:10px solid #f0b4b4; padding:15px;}
#voice dl dt{ background:#f0b4b4; color:#fff; padding:15px; font-size:32px; line-height: 1em; letter-spacing: 0.1em; text-align:center; font-family: 'Sawarabi Mincho', sans-serif;}
#voice dl dd{ padding:15px; font-family: 'Sawarabi Mincho', sans-serif;}
#voice p.voice_notice{ text-align: center; font-size: 18px;}



/*フォーム*/
.form{ background: #f9b4b1; border-radius: 0; overflow: hidden;}
.form figure{ margin: 0 auto;}
.form dl dt{ position: relative;}
.form dl dd{ padding: 15px 0 30px; text-align: center;}
.form dl dd a img{ max-width: 80%;}
.form dl dd p{ text-align: center; text-decoration: underline; font-weight: bold; letter-spacing: 0.1em; background: #fff; /*background: #fad278; color: #c83232;*/ width: 360px; margin: 0.5em auto 0; border-radius: 30px; padding:0.125em 0.5em;}
.form dl.btn1_2 dd a img{ max-width: 100%;}
.form dl.btn1_2 dt span.ico{ position: absolute; right: 30px; bottom: 5px;}
.form dl.btn1_3 dt span.ico{ position: absolute; right: 30px; bottom: -1px;}
.form dl.btn1_4 dt span.ico{ position: absolute; right: 30px; bottom: -10px;}
.form .form_notice{ background: #326496; border: 10px double #fff; padding: 30px 0; margin: 30px;}
.form .form_notice p{ text-align: center; color: #fff; font-size: 28px;}
.form .form_notice2{ margin: 30px; color: #fff;}
.form .form_notice2 ul li{ padding-left: 1.25em; position: relative; font-size: 18px; line-height: 1.25em; margin:15px auto;}
.form .form_notice2 ul li:before{ content: "※"; position: absolute; left: 0; top: 0;}
.form .form_notice2 a{ text-decoration: underline;}
.form .form_notice2 a:hover{ text-decoration: none;}

/*ボタン*/
/*.form a img{ position: relative; animation: fade ease-in-out 1s infinite alternate; transition: 0.3s;}*/
/*.form a:hover img{ /*animation-play-state: paused;*/ transform: scale(1.08); opacity: 0.7;}*/
/*フェードイン*/
@keyframes fade {
0% { left: -15px;}
100% { left: 15px;}
}

/*定期コース確認*/
.explain dl{ border: 10px solid #c83232; padding: 15px; margin: 0 auto 30px;}
.explain dl:last-child{ margin-bottom: 0;}
.explain dl dd{ padding: 15px 15px 0; font-size: 21px;}
.explain dl dd h3{ font-size: 28px;}
.explain table{ width: 100%; border-collapse: collapse; border-spacing: 0;}
.explain table th{ background: #f9b4b1; padding: 15px; width:220px; vertical-align: middle; text-align: center; border: 2px solid #3c281e; font-size: 21px;}
.explain table td{ padding: 15px; font-size: 18px; border: 2px solid #3c281e;}



/*問合せ*/
#mail table.mail{ width: 100%; border-collapse: collapse; border: 2px solid #333; margin-bottom: 20px;}
#mail table.mail th{ border: 2px solid #333; padding: 10px; background: #efefef; font-size:84%; width:240px; vertical-align:middle;}
#mail table.mail th span{ font-size: 80%;}
#mail table.mail td{ border: 2px solid #333; padding: 10px; vertical-align:middle;}
input[type=submit]{ -moz-appearance:none; -webkit-appearance:none; appearance:none; background:none; border:none;}
input,textarea{ font-family: Lucida Grande,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif; font-size:100%; width:100%; padding:10px; box-sizing:border-box; border:1px solid #aaa;}
input[type=submit]{ font-weight:bold; font-size: 126%; letter-spacing:0.1em; cursor:pointer; width:100%; margin:0; background: #329632; color: #fff; border: none; border: 10px double #fff;}

@media print, screen and (min-width:641px){
.smp{ display:none !important;}
}
@media screen and (max-width:640px){
.pc{ display:none !important;}
}

/*------------------------------------------
■  岡田先生メールサポート
------------------------------------------*/
.okada_sec{padding: 20px;}
.okada_sec p{padding: 10px;}
.okada_sub_title{ margin:20px auto; }
.okada_sub_title p:nth-child(1) {color:#EF5A78;font-weight:bold;margin:0px;}
.okada_sub_title p:nth-child(2) {background-color:#EF5A78;color:#ffffff;font-weight:bold;margin:0px;}
.okada_prof_l{float:left;width:45%;margin-left:20px;}
.okada_prof_r{float:right;width:45%;text-align:center;padding:5px;line-height:1.2em;}
.okada_prof{background-color:#FADC96;padding:5px;margin:5px auto 20px;-moz-box-shadow: 0px 0px 5px 2px #aaa;-webkit-box-shadow: 0px 0px 5px 2px #aaa;}
.okada_qa{margin:20px auto;}
.okada_qa p:nth-child(1) {background-color:#EF5A78;color:#ffffff;font-weight:bold;margin:0px;}
.okada_qa p:nth-child(2) {background-color:#EFD1E0;margin:0px;}
.okada_cap p{border:solid #FADC96 4px;border-radius:5px;margin:20px;}
@media screen and (max-width:750px){
    html,body {
        font-size:14px;
    }
    section { margin:30px auto 60px;}
    .maincontent{
        padding: 30px 20px;
    }
    h3{
        font-size:18px;
    }
    #koso dl dt{
        font-size:18px;
    }
    dl.bad_food dt,
    dl.good_food dt{
        font-size:18px;
    }
    #comparison table ul{
        font-size:12px;
    }
    .pairs dl dt{
        width:80px;
    }
    .form dl.btn1_2 dt span.ico,
    .form dl.btn1_3 dt span.ico,
    .form dl.btn1_4 dt span.ico{
        right:-20px;
        bottom: -20px;
        transform: scale(0.5);
    }
    .form .form_notice{
        margin: 10px;
    }
    .form .form_notice p{
        font-size:14px;
    }
    .form .form_notice2 ul li{
        font-size:13px;
    }
    .explain dl dd{
        font-size:14px;
        padding:15px 0px;
    }
    .explain dl dd h3{
        font-size:18px;
    }
    .explain table th{
        width:100px;
        font-size:13px;
    }
    .explain table td{
        font-size:12px;
    }
    .tokuten_notice h3{
        font-size:15px;
    }
    .tokuten_notice p{
        font-size:14px;
    }
    #fasting dl dt{
        font-size:16px;
    }
    .fasting_result h4{
        font-size:18px;
    }
    .fasting_result h4:after{
        border-width: 20px 50px 0 50px;
        bottom: -15px;
        left:50%;
        transform:translateX(-50%);
    }
    h2.voice_tit span.ico{
        left: -10px;
        top:-60px;
    }
    h2.voice_tit span.ico img{
            transform: rotate(-22.5deg)scale(0.7);
    }
    #voice dl dt{
        font-size:16px;
    }
    #voice dl dd{
        padding: 15px 0px;
    }
    #voice p.voice_notice{
        font-size:13px;
    }
    #reason dl dt{
        font-size:16px;
    }
    .list02{
        margin: 15px auto;
    }
    .list02 ul li,
    .list03 ul li{
        font-size:100%;
    }

}