@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Roboto&display=swap);
.hiragino, .hiramin, .roboto, .yugothic {
font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
font-style: normal;
font-weight: 500;
-webkit-font-smoothing: antialiased
}
.hiragino, .hiramin, .roboto {
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif
}
.hiragino, .roboto {
font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif
}
.roboto {
font-family: 'Roboto', sans-serif
}
@media screen and (max-width:767px) {
.pc {
    display: none !important
}
}
@media screen and (min-width:768px) {
.sp {
    display: none !important
}
}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
margin: 0;
padding: 0;
border: 0;
font: inherit;
vertical-align: baseline
}
#form .form-newmember .form-newmember-process ul li span, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block
}
body {
font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif
}
ol, ul {
list-style: none
}
blockquote, q {
quotes: none
}
blockquote:after, blockquote:before, q:after, q:before {
content: none
}
table {
border-collapse: collapse;
border-spacing: 0
}
.adlp-wrapper{
line-height:1;
}
#kv img, #section-01 img, .trialset img, .section-img img{
    display: block;
    width: 100%;
}
#form .form-newmember .form-newmember-process.center ul, #form .form-newmember .form-wrapper form .form-input .answer .answer-input.answer-input-col .answer-col, #kv .kv-top, #trialset {
    position: relative
}
main{
    box-shadow: 0 0px 25px 0 rgb(0 0 0 / 8%), 0 0px 75px 0 rgb(0 0 0 / 7%);
    display: block;
    max-width: 750px;
    margin: 0 auto;
    font-size: 16px;
    background: #fff;
}
.scrollmagic {
    opacity: 0;
    transition-property: opacity,transform;
    transition-duration: 1.4s;
    transition-timing-function: cubic-bezier(.215,.61,.355,1)
}

.scrollmagic[data-scrollmagic=L] {
    transform: translateX(-60px)
}

.scrollmagic[data-scrollmagic=l] {
    transform: translateX(-30px)
}

.scrollmagic[data-scrollmagic=R] {
    transform: translateX(60px)
}

.scrollmagic[data-scrollmagic=r] {
    transform: translateX(30px)
}

.scrollmagic[data-scrollmagic=B] {
    transform: translateY(60px)
}

.scrollmagic[data-scrollmagic=b] {
    transform: translateY(30px)
}

.scrollmagic[data-scrollmagic=U] {
    transform: translateY(-60px)
}

.scrollmagic[data-scrollmagic=u] {
    transform: translateY(-30px)
}

.scrollmagic[data-delay="0"] {
    transition-delay: 0
}

.scrollmagic[data-delay="100"] {
    transition-delay: 100ms
}

.scrollmagic[data-delay="200"] {
    transition-delay: 200ms
}

.scrollmagic[data-delay="300"] {
    transition-delay: 300ms
}

.scrollmagic[data-delay="400"] {
    transition-delay: 400ms
}

.scrollmagic[data-delay="500"] {
    transition-delay: 500ms
}

.scrollmagic[data-delay="600"] {
    transition-delay: 600ms
}

.scrollmagic[data-delay="700"] {
    transition-delay: 700ms
}

.scrollmagic[data-delay="800"] {
    transition-delay: 800ms
}

.scrollmagic[data-delay="900"] {
    transition-delay: 900ms
}

.scrollmagic[data-delay="1000"] {
    transition-delay: 1000ms
}

.scrollmagic.magic {
    opacity: 1;
    transform: translate(0,0);
}
.trialset{
    position: relative;
    margin-top: -2.7%;
}
.trialset .trialset-btn{
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
    bottom: 22.8%;
}
.trialset .trialset-btn a{
    margin: 0 auto;
    text-align: center;
    width: 90.9%;
    display: block;
}
.bottom-cv {
    position: fixed;
    bottom: 0;
    width: 750px;
    background-color: rgba(0, 0, 0, 0.7);
    padding: 1.5% 0 0;
    text-align: center;
    box-sizing: border-box;
    line-height: 1;
    z-index: 100;
    text-align: center;
    transform: translateY(100%);
    transition: transform .4s linear 0s;
}

.bottom-cv img{
    width: auto;
    max-width: 100%;
}

.bottom-cv.is-show {
    transform: translateY(0);
}

@media screen and (max-width:750px){
    .bottom-cv{
        width: 100%;
        padding: 2.5% 0 0;
    }
}

.d-none{display: none;}
.step input{display: none;}
.cl-green{color: #b460be;}
.form-buy{
    background: #f1f0ed;
}
.step-body {
    background: #fff;
}
#section-02{
    margin: 0px 15px;
    padding: 45px 0;
    font-size: 18px;
    line-height: 1.6;
}
#section-02 .heading{
    background-color: #be83c5;
    padding: 9px;
    font-size: 23px;
    color: #FFFFFF;
    text-align: center;
    font-weight: bold;
}

#section-02 .text{
    color: #2e2e2e;
    padding: 15px 15px 19px;
}

.error{
    text-align: center;
    background-color: #ff0000;
    color: #FFFFFF;
    padding: 3px 0 5px;
    letter-spacing: 2px;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 20px;
}

.error:nth-child(2){
    margin: 10px 0;
}

.error .number, .error .number1{
    font-size: 24px;
}
.fix_error {
    position: fixed;
    top: 0;
    width: 92%;
    right: 0;
    left: 0;
    margin: 0 auto;
}
.step{
    border: 2px solid #c1a4c5;
}
.step-02, .step-03, .step-04, .step-05, .step-06, .step-07, .step-08, .step-09{
    display: none;
    border-top: none;
}
.step-08 .step-body .step-bottom:first-child .expandable-text{
	border-top: 0;
}
.step .step-heading{
    display: flex;
    background-color: #e8d9ea;
    color: #2e2e2e;
    font-size: 18px;
    line-height: 1.4285;
    padding: 15px;
    gap: 10px;
}

.step .number{
    width: 27px;
    height: 27px;
    background-color: #b460be;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    color: #FFFFFF;
    font-weight: bold;
}

.step .question{
    flex: 1;
    font-weight: bold;
}

.step .step-answer{
    padding: 25px 50px;
    display: flex;
    justify-content: space-between;
    font-weight: bold;
    gap: 50px;
}

.step .step-answer label{
    padding: 18px 20px;
    width: 50%;
    font-size: 19px;
    line-height: 1.25;
    text-align: center;
    color: #2e2e2e;
    border: 4px solid #b460be;
    border-radius: 10px;
    cursor: pointer;
}
.step-answer.active label.active{
    background-color: #b460be;
    color: #FFFFFF;
}
.step-answer.active label:not(.active){
    background-color: #b5b5b5;
    border: 4px solid #b5b5b5;
    color: #FFFFFF;
}

.step .step-bottom{
    text-align: center;
    margin: 0 23px;
}

.step-wrapper{
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    transition: grid-template-rows 200ms;
}

.step-wrapper.open{
    grid-template-rows: 1fr;
}

.step-expandable{
    min-height: 0;
}

.step-expandable .expandable-text{
    border-top: 2px solid #c1a4c5;
    padding-top: 25px;
    font-size: 17px;
    color: #2e2e2e;
    line-height: 1.4285;
    font-weight: bold;
}

.step-expandable .expandable-agree{
    font-size: 19px;
    color: #2e2e2e;
    line-height: 1.25;
    border: 4px solid #9e7f56;
    padding: 17px 10px;
    cursor: pointer;
    border-radius: 10px;
    max-width: 37%;
    margin: 25px auto;
    font-weight: bold;
}

.step-expandable .expandable-agree.active{
    background-color: #9e7f56;
    color: #FFFFFF;
}

@media screen and (max-width:750px){
		#section-02{
		    width: 92%;
		    margin: 0px auto;
		    padding: 4.5% 0;
		    font-size: 15px;
		    line-height: 1.6;
		}
		#section-02 .heading{
		    font-size: 20px;
		}

		.error{
		    padding: 5px 0 7px;
		    font-size: 15px;
		}

		.error .number, .error .number1{
		    font-size: 20px;
		}
		.fix_error {
		    position: fixed;
		    top: 0;
		    width: 92%;
		    right: 0;
		    left: 0;
		    margin: 0 auto;
		}

		.step .step-heading{
		    font-size: 14px;
		    border-bottom: 2px solid #c1a4c5;
		}

		.step .number{
		    font-size: 16px;
		}

		.step .question{
		    font-size: 14px;
		    display: flex;
		    align-items: center;
		}

		.step .step-answer{
		    padding: 20px 0px;
		    width: calc(590/690 * 100%);
		    margin: 0 auto;
		}

		.step .step-answer label{
		    width: calc(260/590 * 100%);
		    font-size: 16px;
		    border-radius: 8px;
		    box-sizing: border-box;
		}

		.step .step-bottom{
		    padding: 0;
		    margin: 0 auto;
		    width: calc(635/690 * 100%);
		}

		.step-expandable .expandable-text{
		    padding-top: 14px;
		    font-size: 14px;
		}

		.step-expandable .expandable-agree{
		    font-size: 16px;
		    color: #2e2e2e;
		    padding: 14px;
		    max-width: 175px;
		    margin: 10px auto 0;
		    margin-bottom: 20px;
		}
}
.site-footer .copy {
    background: #3e362e;
    color: #A5A5A5;
    font-size: 12px;
    padding: 14px 0;
    text-align: center;
}
#fix-bg {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    background-position: center;
    background-size: cover;
    background-image: url(../../images/integrated/dermacept-rx-192335-002tst/fix.png);
}

body, p, input {
    margin: 0
}

#confirm_button img {
    width: 100%
}

.ttl01, .form_title {
    background-color: #fa6885;
    color: #fff;
    font-weight: 700;
    padding: 8px;
    margin-bottom: 10px;
    font-size: 1.2rem
}

#form {
    display:none;
    padding: 0 2%
}

select, input {
    padding: 10px 5px;
    font-size: 15px
}

input[type=checkbox], input[type=radio] {
    -webkit-transform: scale(2.2);
    transform: scale(2.2);
    height: 35px;
    vertical-align: top
}

.form_notice {
    font-size: 12px;
    color: #666
}

#agreement {
    background: #fddce2;
    padding: 10px;
    margin-top: 10px
}

#agreement a {
    color: #2d6fca;
    text-decoration: underline
}

#landing_form {
    background: #fff;
    border-bottom: 1px solid #f5b7c2
}

#form_checkout_title {
    display: none
}

span.form_required, span.form_notice {
    color: #fff;
    background: red;
    font-weight: 700;
    padding: 3px;
    font-size: 12px;
    margin-left: 10px
}

#confirm_button, #form-order {
    margin-top: 4%
}

#agreement table {
    width: 100%;
    border: 0;
    margin: 0 5px
}

#form_payment_method_credit {
	display: none;
}

#form_checkout_title {
    display: none
}

#OrderFamilyKana, #OrderGivenKana {
    ime-mode: active
}

#OrderZip1, #OrderZip2 {
    ime-mode: disabled
}

#OrderTelNo1, #OrderTelNo2, #OrderTelNo3, #OrderEmail, #OrderEmailConfirm, #OrderBirthdayYear {
    ime-mode: disabled
}

select, #form_payment_method_select {
    width: 100%
}

.site-footer .box-info {
    border-top: 2px solid #ccc;
    margin: 20px 10px 15px;
    text-align: left
}

.site-footer .footer-logo {
    margin-top: 15px
}

.site-footer .footer-logo img {
    width: 15%
}

.site-footer ul {
    margin-top: 10px
}

.site-footer ul li {
    display: block;
    padding: 4px 0
}

.site-footer ul li a:link {
    color: #0d5eaa
}
