@charset "UTF-8";

/* ------------------------------------
  美肌堂 診断LP
  Date: 2021-07-19
------------------------------------ */

/* ------------------------------------
  Reset
------------------------------------ */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

input,
textarea {
	margin: 0;
	padding: 0;
}

ol,
ul {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

h1,
h2,
h3,
h4 {
	font-weight: 500;
}

/* ------------------------------------
  Base
------------------------------------ */

html {
	font-size: 62.5%;
}

html.wf-active body {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
}

body {
	font-size: 1.4rem;
	line-height: 1;
	font-family: "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 400;
	-webkit-text-size-adjust: none;
	color: #000;
	background: #fff;
}

img {
	border: 0;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

a {
	color: #000;
	text-decoration: none;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	cursor: pointer;
}

a:hover {
	color: #000;
}

a:visited {
	color: #000;
}

a:active,
a:focus {
	outline: none;
}

*:focus {
	outline: none;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.wrapper {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	background: #fff2f4;
}

.taC {
	text-align: center;
}

.bold {
	font-weight: 700;
}

.content {
	max-width: 640px;
	margin: 0 auto;
	width: 100%;
}

body:not(.mobile) a.sp_link {
	pointer-events: none;
}

body:not(.mobile) a:hover {
	opacity: .65;
}

/* ------------------------------------
  text
------------------------------------ */

.bg_white {
	background-color: #ffffff;
}

.bg_pink_dark {
	background-color: #ffb6c4;
}

.bg_pink_light {
	background-color: #ffe8ec;
}

.bg_pink {
	background-color: #ffe8ec;
}

.bg_gray {
	background-color: #f8f8f8;
}

.bg_green {
	background-color: #e8f7f6;
}

.bg_green_dark {
	background-color: #93d9d4;
}

/* ------------------------------------
  loading
------------------------------------ */

.loading {
	z-index: 1000;
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background: #ffffff;
	position: fixed;
	top: 0;
	left: 0;
}

.loading_box {
	position: absolute;
	top: calc(50% - 30px);
	left: calc(50% - 30px);
	width: 60px;
	width: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.loading_logo {
	width: 100%;
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-direction: alternate;
	animation-direction: alternate;
	-webkit-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-animation-name: loading_logo;
	animation-name: loading_logo;
	-webkit-transform: scale(0.9, 0.9);
	transform: scale(0.9, 0.9);
}

.loading_logo img {
	width: 100%;
	height: auto;
}

/* ------------------------------------
  effect
------------------------------------ */

.zoom_in {
	opacity: 0;
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
}

.zoom_in.show {
	opacity: 1;
	-webkit-transform: translate(0) scale(1);
	transform: translate(0) scale(1);
}

.up_in {
	opacity: 0;
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
	-webkit-transition: all 1s ease 0.4s;
	transition: all 1s ease 0.4s;
}

.up_in.show {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.fade_in {
	opacity: 0;
	-webkit-transition: all 1s ease 0.4s;
	transition: all 1s ease 0.4s;
}

.fade_in.show {
	opacity: 1;
}

.anim_scale {
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-direction: alternate;
	animation-direction: alternate;
	-webkit-animation-duration: 1.2s;
	animation-duration: 1.2s;
	-webkit-animation-name: anim_scale;
	animation-name: anim_scale;
	-webkit-transform: scale(0.9, 0.9);
	transform: scale(0.9, 0.9);
}

.anim {
	opacity: 0;
	-webkit-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s;
}

.anim.effect_delay_01 {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.anim.effect_delay_02 {
	-webkit-transition-delay: 0.2s;
	transition-delay: 0.2s;
}

.anim.effect_delay_03 {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

.anim.show {
	opacity: 1;
}

/* ------------------------------------
  Section：common
------------------------------------ */

.sec .sec_inner {
	width: 640px;
	margin: 0 auto;
	padding: 100px 0;
}

.sec .txt_wrap {
	margin: 0 50px;
}

.sec .img {
	text-align: center;
}

.sec p {
	font-size: 2.4rem;
	letter-spacing: 0.16em;
	line-height: 2.58;
	font-weight: 700;
	margin-top: 60px;
}

/* ------------------------------------
  slider
------------------------------------ */

.slide_wrap {
	max-width: 640px;
	width: 86%;
	border-radius: 10px;
	background: #ffffff;
	position: relative;
	opacity: 0;
	-webkit-transition: opacity .3s ease-in-out;
	transition: opacity .3s ease-in-out;
	margin: 0 auto 4.80769vh;
}

.slide_wrap.slick-initialized {
	opacity: 1;
}

.slide_wrap figure {
	margin: 0 auto;
}

.slide_dots {
	position: absolute;
	top: calc(100% + 50px);
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}

.slide_dots li {
	width: 20px;
	height: 20px;
	position: relative;
	cursor: pointer;
	margin: 0 10px;
}

.slide_dots li button {
	border: 0;
	border-radius: 100%;
	width: 100%;
	height: 0;
	padding-top: 100%;
	background: #ccc;
	overflow: hidden;
	cursor: pointer;
	-webkit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	display: block;
	padding: 100% 0 0;
	font-size: 0;
}

.slide_dots li.slick-active button {
	background: #ffb6c4;
}

.slide_arr {
	z-index: 100;
	position: absolute;
	top: calc(50% - 30px);
	cursor: pointer;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #ffb6c4;
}

.slide_arr::after {
	position: absolute;
	top: 36%;
	left: 30%;
	display: block;
	content: "";
	width: 24%;
	height: 24%;
	cursor: pointer;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.slide_arr.next {
	right: -40px;
}

.slide_arr.prev {
	left: -40px;
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.sec.bg_green_dark .slide_dots li button,
.sec.bg_green .slide_dots li button {
	background: #ffffff;
}

.sec.bg_green_dark .slide_dots li.slick-active button,
.sec.bg_green .slide_dots li.slick-active button {
	background: #0ebaae;
}

.sec.bg_green_dark .slide_arr,
.sec.bg_green .slide_arr {
	background: #0ebaae;
}

.sec.bg_pink .slide_dots li button {
	background: #ffffff;
}

.sec.bg_pink .slide_dots li.slick-active button {
	background: #ff5797;
}

.sec.bg_pink .slide_arr {
	background: #ff5797;
}

/* ------------------------------------
  CTA
------------------------------------ */

.cv_btn a {
	display: block;
	text-align: center;
}

.cv_btn.question {
	width: 100%;
	padding: 6.25vw 0;
}

.cv_btn.question .fuki {
	max-width: 640px;
	margin: 0 auto 2.1875vw;
}

.cv_btn.question a {
	display: block;
	max-width: 640px;
	margin: 0 auto;
}

.cta_modal {
	display: none;
}

.cta_modal_wrapper .modaal-container {
	padding: 0;
	border-radius: 10px;
}

.cta_modal_wrapper .modaal-content-container {
	padding: 35px 0 0;
}

.cta_modal_close {
	position: absolute;
	top: -10px;
	right: -10px;
	width: 34px;
	height: 34px;
	border-radius: 100%;
	background: #969696;
	letter-spacing: 0;
	cursor: pointer;
	line-height: 1;
	font-size: 0;
}

.cta_modal_close::after {
	content: "×";
	color: #ffffff;
	font-size: 22px;
	line-height: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: absolute;
	top: -1px;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
}

.cta_modal_logo {
	text-align: center;
	width: 62.4%;
	margin: 0 auto;
}

.cta_modal_wrap {
	text-align: center;
}

.cta_modal_wrap .txt_01 {
	width: 74.8%;
	margin: 0 auto;
}

.cta_modal_wrap .btn {
	width: 94.6%;
	margin: -2% auto 0;
}

.cta_modal_wrap p {
	font-size: 14px;
}

.cta_modal_wrap.form {
	padding: 20px 0 10px;
}

.cta_modal_wrap.tel {
	padding: 20px 0 30px;
	background: #faf5ea;
	border-radius: 0 0 10px 10px;
}

/* ------------------------------------
  floationg_btn
------------------------------------ */

/* ------------------------------------
  Footer
------------------------------------ */

.footer {
	z-index: 100;
	position: relative;
	background: #ff5797;
	color: #ffffff;
	text-align: center;
	padding: 40px 0;
	overflow: hidden;
	max-width: 640px;
	margin: 0 auto;
	width: 100%;
}

.footer a {
	color: #ffffff;
}

.footer_nav ul {
	font-size: 0;
}

.footer_nav li {
	display: inline-block;
	line-height: 1.4;
	margin: 0 15px;
}

.footer_nav li a {
	font-size: 1.6rem;
	font-weight: 500;
}

.footer_copy {
	padding-top: 15px;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.4;
}

/* ------------------------------------
  MV
------------------------------------ */

.sec_hero {
	display: block;
	position: relative;
	height: 100vh;
}

.sec_hero .hero_tit {
	z-index: 2;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	text-align: center;
}

.sec_hero .hero_tit img {
	height: 100%;
	width: auto;
	margin: 0 auto;
}

.sec_hero .hero_animation {
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/hero_img_01.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

.sec_hero .cv_wrap {
	z-index: 3;
	position: absolute;
	left: 0;
	bottom: 5.3vh;
	width: 100%;
	text-align: center;
	-webkit-transition-delay: 0.2s;
	transition-delay: 0.2s;
}

.sec_hero.cta_01 {
	background-image: url(../img/hero_visual_cta_01.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

.sec_hero.cta_02 {
	background-color: #ffffff;
	background-image: url(../img/hero_visual_cta_02.jpg);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: auto 100%;
}

/* ------------------------------------
  C1 お肌トラブルに悩むのはあなただけじゃない
------------------------------------ */

.sec_c1 ul {
	opacity: 1;
}

.sec_c1 ul li {
	opacity: 0;
	-webkit-transition: opacity 0.6s ease-in-out 0s;
	transition: opacity 0.6s ease-in-out 0s;
}

.sec_c1 ul.show li {
	opacity: 1;
	-webkit-animation-timing-function: ease-in-out;
	animation-timing-function: ease-in-out;
	-webkit-animation-duration: 4s;
	animation-duration: 4s;
	-webkit-animation-name: c1_pulse;
	animation-name: c1_pulse;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

.sec_c1 ul.show li:nth-child(1) {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

.sec_c1 ul.show li:nth-child(2) {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s;
}

.sec_c1 ul.show li:nth-child(3) {
	-webkit-transition-delay: 0.8s;
	transition-delay: 0.8s;
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
}

.sec_c1 ul.show li:nth-child(4) {
	-webkit-transition-delay: 1.2s;
	transition-delay: 1.2s;
	-webkit-animation-delay: 1.4s;
	animation-delay: 1.4s;
}

/* ------------------------------------
  C2 たくさんの女性が悩んでいます
------------------------------------ */

.sec_c2 .chart_wrap {
	width: 75vw;
	height: 75vw;
	margin: 0 auto;
	position: relative;
}

.sec_c2 .chart_wrap.show .chart_txt {
	opacity: 1;
	-webkit-transition: all 0.6s ease-in-out 1s;
	transition: all 0.6s ease-in-out 1s;
}

.sec_c2 .chart_img {
	position: relative;
	z-index: 1;
}

.sec_c2 .chart_txt {
	opacity: 0;
	z-index: 2;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

/* ------------------------------------
  C3 でも、もう大丈夫
------------------------------------ */

.sec_c3 .txt_03 {
	position: relative;
	opacity: 1;
}

.sec_c3 .txt_03 > div {
	opacity: 0;
	-webkit-transition: all 0.6s ease-in-out 0.2s;
	transition: all 0.6s ease-in-out 0.2s;
}

.sec_c3 .txt_03 .img_02,
.sec_c3 .txt_03 .img_03,
.sec_c3 .txt_03 .img_04 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
}

.sec_c3 .txt_03.show > div {
	opacity: 1;
}

.sec_c3 .txt_03.show .img_02 {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

.sec_c3 .txt_03.show .img_03 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
}

.sec_c3 .txt_03.show .img_04 {
	-webkit-transition-delay: 0.8s;
	transition-delay: 0.8s;
}

/* ------------------------------------
  C4 ”いつでも、気軽に、カンタンに”
------------------------------------ */

.sec_c4 .sec_inner {
	padding-bottom: 3.125vw;
}

/* ------------------------------------
  C5 東京美肌堂クリニックは
------------------------------------ */

.sec_c5 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.sec_c5 .txt_02 {
	position: relative;
	opacity: 1;
}

.sec_c5 .txt_02 > div {
	opacity: 0;
	-webkit-transition: all 0.6s ease-in-out 0.2s;
	transition: all 0.6s ease-in-out 0.2s;
}

.sec_c5 .txt_02 .img_02,
.sec_c5 .txt_02 .img_03 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
}

.sec_c5 .txt_02.show > div {
	opacity: 1;
}

.sec_c5 .txt_02.show .img_02 {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

.sec_c5 .txt_02.show .img_03 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
}

.sec_c5 .cv_btn.question {
	background: #e8f7f6;
}

.wrapper.scrollify .sec_c5 .cv_btn.question {
	margin-bottom: auto;
}

/* ------------------------------------
  C6 - C8 Catch
------------------------------------ */

.sec_catch figure img {
	border-radius: 10px;
}

/* ------------------------------------
  C9 Coupon
------------------------------------ */

.sec_c9 .wrap {
	position: relative;
}

.sec_c9 .wrap::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	opacity: 0;
	-webkit-transition: opacity 0.6s ease-in-out 0;
	transition: opacity 0.6s ease-in-out 0;
	background: url(../img/c9_img_01.png) top right/100% auto no-repeat;
}

.sec_c9 .wrap.show::after {
	opacity: 1;
}

.sec_c9 .wrap .img {
	z-index: 2;
	position: relative;
}

/* ------------------------------------
  C10 ３つの特徴
------------------------------------ */

.sec_c10 .feature_cnt .img {
	width: 86%;
	margin: 0 auto;
	max-width: 640px;
}

.sec_c10 .feature_cnt .txt_wrap p:first-of-type {
	margin-top: 0;
}

.sec_c10 .feature_cnt + .feature_cnt {
	margin-top: 7.69231vh;
}

.sec_c10 .feature_tit {
	text-align: center;
	margin-top: -3.84615vh;
}

/* ------------------------------------
  C11 どんなお肌を作りたいですか？
------------------------------------ */

.sec_c11 .medicine_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: calc(86% + 10px);
	margin: 0 auto;
	max-width: calc($w + 10px);
	opacity: 1;
}

.sec_c11 .medicine_wrap.show .medicine_cnt {
	opacity: 1;
}

.sec_c11 .medicine_cnt {
	border-radius: 10px;
	width: calc(50% - 10px);
	margin: 0 5px 10px;
	text-align: center;
	-webkit-transition: all 0.4s ease-in-out 0s;
	transition: all 0.4s ease-in-out 0s;
	opacity: 0;
}

.sec_c11 .medicine_01 {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	background-color: #dfd4e4;
}

.sec_c11 .medicine_02 {
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
	background-color: #ffecc1;
}

.sec_c11 .medicine_03 {
	-webkit-transition-delay: 0.2s;
	transition-delay: 0.2s;
	background-color: #cfd1ea;
}

.sec_c11 .medicine_04 {
	-webkit-transition-delay: 0.2s;
	transition-delay: 0.2s;
	background-color: #cad4e8;
}

.sec_c11 .medicine_05 {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
	background-color: #c8e9ed;
}

.sec_c11 .medicine_06 {
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
	background-color: #cad4e8;
}

.sec_c11 .medicine_07 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
	background-color: #ffded9;
}

.sec_c11 .medicine_08 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
	background-color: #c8e8cf;
}

.sec_c11 .medicine_09 {
	-webkit-transition-delay: 0.8s;
	transition-delay: 0.8s;
	background-color: #eaf1b7;
}

.sec_c11 .medicine_10 {
	-webkit-transition-delay: 0.8s;
	transition-delay: 0.8s;
	background-color: #cdd7c7;
}

.sec_c11 .medicine_11 {
	-webkit-transition-delay: 1s;
	transition-delay: 1s;
	background-color: #fff5be;
}

.sec_c11 .medicine_12 {
	-webkit-transition-delay: 1s;
	transition-delay: 1s;
	background-color: #c8e9e4;
}

/* ------------------------------------
  C12 美肌処方セットについて
------------------------------------ */

.sec_c12 {
	background: #ffd9e0;
}

.sec_c12 .set_cnt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	height: 100%;
	padding: 2.88462vh 20px;
}

.sec_c12 .set_cnt p {
	width: 100%;
	margin-top: 0;
	font-weight: normal;
	letter-spacing: 0.06em;
	line-height: 1.6;
	font-size: 2rem;
}

.sec_c12 .set_tit {
	width: 100%;
	margin-bottom: 10px;
}

.sec_c12 .set_info {
	margin: auto 0 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	width: 100%;
}

.sec_c12 .set_seibun {
	width: calc(65% + 4px);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 3.84615vh -2px -4px;
}

.sec_c12 .set_seibun li {
	width: 33.333%;
}

.sec_c12 .set_seibun li a {
	margin: 0 2px 4px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 30px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 1.1rem;
	text-align: center;
	letter-spacing: -0.04em;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #f5f5f5;
}

.sec_c12 .set_seibun li a[href*="#original_seibun01"] {
	background: #c8e9ed;
}

.sec_c12 .set_seibun li a[href*="#original_seibun02"] {
	background: #fff5be;
}

.sec_c12 .set_seibun li a[href*="#original_seibun03"] {
	background: #ffded9;
}

.sec_c12 .set_seibun li a[href*="#original_seibun04"] {
	background: #cad4e8;
}

.sec_c12 .set_seibun li a[href*="#original_seibun05"] {
	background: #ffecc1;
}

.sec_c12 .set_seibun li a[href*="#original_seibun06"] {
	background: #c8e9e4;
}

.sec_c12 .set_seibun li a[href*="#original_seibun07"] {
	background: #c8e8cf;
}

.sec_c12 .set_seibun li a[href*="#original_seibun08"] {
	background: #cfd1ea;
}

.sec_c12 .set_seibun li a[href*="#original_seibun09"] {
	background: #cdd7c7;
}

.sec_c12 .set_seibun li a[href*="#original_seibun10"] {
	background: #f1d9ef;
}

.sec_c12 .set_seibun li a[href*="#original_seibun11"] {
	background: #dfd4e4;
}

.sec_c12 .set_seibun li a[href*="#original_seibun12"] {
	background: #eaf1b7;
}

.sec_c12 .set_seibun li a[href*="#original_seibun13"] {
	background: #eef5ba;
}

.sec_c12 .set_price {
	width: 30%;
	margin-left: 5%;
}

.sec_c12 .set_btn {
	width: 100%;
}

.sec_c12 .set_btn a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #ff0030;
	color: #ffffff;
	height: 50px;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: 0.06em;
}

.sec_c12 .set_btn a .arr {
	border: 1px solid #ffffff;
	position: relative;
	width: 30px;
	height: 30px;
	margin-left: 10px;
	border-radius: 50%;
}

.sec_c12 .set_btn a .arr::after {
	position: absolute;
	top: 36%;
	left: 30%;
	display: block;
	content: "";
	width: 24%;
	height: 24%;
	cursor: pointer;
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.sec_c12 .cv_btn.question {
	margin-top: 6.25vw;
}

.seibun_modal_wrapper .modal_inner {
	text-align: left;
}

.seibun_modal_wrapper .modal_title {
	font-size: 2.4rem;
	font-weight: 700;
	margin-bottom: 25px;
	position: relative;
	line-height: 1.6;
}

.seibun_modal_wrapper .modal_title::after {
	position: absolute;
	content: "";
	width: 40px;
	height: 1px;
	background: #ff5797;
	bottom: -12px;
	left: 0;
	right: 0;
	margin: auto;
}

.seibun_modal_wrapper p {
	font-size: 1.4rem;
	line-height: 1.6;
	letter-spacing: 0.04em;
}

.seibun_modal_wrapper .seibun_cnt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
}

.seibun_modal_wrapper .seibun_cnt > p {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding-left: 15px;
}

.seibun_modal_wrapper .seibun_cnt + .seibun_cnt {
	margin-top: 15px;
}

.seibun_modal_wrapper .seibun_img {
	width: 90px;
}

.seibun_modal_wrapper .seibun_img figure figcaption {
	font-size: 1rem;
	text-align: center;
	margin-bottom: 5px;
}

.seibun_modal_wrapper .seibun_name {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 24px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.1rem;
	letter-spacing: -0.04em;
	margin-bottom: 5px;
	background: #f5f5f5;
}

.seibun_modal_wrapper .seibun_name.seibun_color_01 {
	background: #c8e9ed;
}

.seibun_modal_wrapper .seibun_name.seibun_color_02 {
	background: #fff5be;
}

.seibun_modal_wrapper .seibun_name.seibun_color_03 {
	background: #ffded9;
}

.seibun_modal_wrapper .seibun_name.seibun_color_04 {
	background: #cad4e8;
}

.seibun_modal_wrapper .seibun_name.seibun_color_05 {
	background: #ffecc1;
}

.seibun_modal_wrapper .seibun_name.seibun_color_06 {
	background: #c8e9e4;
}

.seibun_modal_wrapper .seibun_name.seibun_color_07 {
	background: #c8e8cf;
}

.seibun_modal_wrapper .seibun_name.seibun_color_08 {
	background: #cfd1ea;
}

.seibun_modal_wrapper .seibun_name.seibun_color_09 {
	background: #cdd7c7;
}

.seibun_modal_wrapper .seibun_name.seibun_color_10 {
	background: #f1d9ef;
}

.seibun_modal_wrapper .seibun_name.seibun_color_11 {
	background: #dfd4e4;
}

.seibun_modal_wrapper .seibun_name.seibun_color_12 {
	background: #eaf1b7;
}

.seibun_modal_wrapper .seibun_name.seibun_color_13 {
	background: #eef5ba;
}

/* ------------------------------------
  C13 HOWTOUSE
------------------------------------ */

.sec_c13 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.sec_c13 .step_wrap .img {
	opacity: 0;
	-webkit-transition: all 0.6s ease-in-out 0s;
	transition: all 0.6s ease-in-out 0s;
}

.sec_c13 .step_wrap .img.txt_02 {
	-webkit-transition-delay: 0.2s;
	transition-delay: 0.2s;
}

.sec_c13 .step_wrap .img.txt_03 {
	-webkit-transition-delay: 0.6s;
	transition-delay: 0.6s;
}

.sec_c13 .step_wrap .img.txt_04 {
	-webkit-transition-delay: 1s;
	transition-delay: 1s;
}

.sec_c13 .step_wrap .img.txt_05 {
	-webkit-transition-delay: 1.4s;
	transition-delay: 1.4s;
}

.sec_c13 .step_wrap.show .img {
	opacity: 1;
}

/* ------------------------------------
  C14 ４つの疑問に答えます
------------------------------------ */

.sec_c14 .qa_cnt {
	text-align: center;
	width: 100%;
	padding: 5.76923vh 40px;
}

.sec_c14 .qa_tit {
	color: #0ebaae;
	font-size: 2.6rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.6;
	padding-bottom: 20px;
	border-bottom: 1px solid #0ebaae;
}

.sec_c14 .qa_txt p {
	line-height: 2;
}

/* ------------------------------------
  C15 Change
------------------------------------ */

.sec_c15 .slide_wrap {
	max-width: 540px;
}

.sec_c15 .slide_cnt {
	position: relative;
}

.sec_c15 .slide_cnt .txt {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 2;
	opacity: 0;
	-webkit-transition: all 0.6s ease-in-out 0.4s;
	transition: all 0.6s ease-in-out 0.4s;
}

.sec_c15 .slide_cnt .img {
	z-index: 1;
	position: relative;
}

.sec_c15 .slide_cnt.slick-current .txt {
	opacity: 1;
}

/* ------------------------------------
  C16 FAQ
------------------------------------ */

.sec_c16 .faq_cnt {
	background: #ffffff;
	border-radius: 10px;
}

.sec_c16 .faq_cnt + .faq_cnt {
	margin-top: 10px;
}

.sec_c16 .faq_tit {
	min-height: 65px;
	padding: 20px 12% 20px 5%;
	position: relative;
	cursor: pointer;
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 0.16em;
	font-weight: 700;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.sec_c16 .faq_tit::after,
.sec_c16 .faq_tit::before {
	content: "";
	position: absolute;
	top: calc(50% - 1.5px);
	right: 5%;
	width: 16px;
	height: 3px;
	background: #ff5797;
}

.sec_c16 .faq_tit::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.sec_c16 .faq_tit span::before {
	content: "Q.";
}

.sec_c16 .faq_tit.is-open::after {
	display: none;
}

.sec_c16 .faq_txt {
	display: none;
	padding: 0 5% 15px 5%;
}

.sec_c16 .faq_txt p {
	margin-top: 0;
	font-size: 1.7rem;
	line-height: 1.9;
	letter-spacing: 0.16em;
}

.wf-active .wrapper::after {
	display: none;
}

/* ------------------------------------
  jquery.scrollify.min.js
  1ページごとのスクロール
------------------------------------ */

.scroll_panel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.scroll_panel .sec_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0;
}

@media not screen, screen and (min-width: 641px) {

.vsp640 {
	display: none;
}

}

@media screen and (min-width: 641px), print {

.sec .img img {
	width: auto;
}

.cv_btn.question {
	padding: 40px 0;
}

.cv_btn.question .fuki {
	margin-bottom: 14px;
}

.cta_modal_wrap.tel .txt_tel {
	width: 88.8%;
	margin: 15px auto;
}

.cta_modal_wrap.tel .btn {
	display: none;
}

.sec_hero .cv_btn_fuki img {
	height: 8.07692vh;
	width: auto;
	margin: 0 auto;
}

.sec_hero .cv_btn img {
	height: 12.30769vh;
	width: auto;
}

.sec_c1 .sec_title img {
	height: 21.15385vh;
	width: auto;
}

.sec_c1 ul li img {
	width: auto;
}

.sec_c1 ul li:nth-child(1) img {
	height: 16.15385vh;
}

.sec_c1 ul li:nth-child(2) img {
	height: 14.90385vh;
}

.sec_c1 ul li:nth-child(3) img {
	height: 19.42308vh;
}

.sec_c1 ul li:nth-child(4) img {
	height: 12.69231vh;
}

.sec_c2 .txt_01 img {
	height: 15.38462vh;
}

.sec_c2 .txt_02 img {
	height: 24.42308vh;
}

.sec_c2 .chart_wrap {
	width: 400px;
	height: 400px;
}

.sec_c3 .txt_01 img {
	height: 15.38462vh;
}

.sec_c3 .txt_02 img {
	height: 17.30769vh;
}

.sec_c3 .txt_03 img {
	height: 48.07692vh;
}

.sec_c4 .sec_inner {
	padding-bottom: 20px;
}

.sec_c4 .txt_01 img {
	height: 24.03846vh;
}

.sec_c4 .txt_02 img {
	height: 14.23077vh;
}

.sec_c5 .txt_01 img {
	height: 31.73077vh;
}

.sec_c5 .txt_02 img {
	height: 48.26923vh;
}

.sec_catch .txt_01 img {
	height: 49.03846vh;
}

.sec_catch .txt_02 img {
	height: 32.11538vh;
}

.sec_c9 .txt_01 img {
	height: 7.40385vh;
}

.sec_c9 .txt_02 img {
	height: 16.15385vh;
}

.sec_c9 .txt_03 img {
	height: 23.07692vh;
}

.sec_c9 .txt_04 img {
	height: 34.23077vh;
}

.sec_c10 .txt_01 img {
	height: 17.11538vh;
}

.sec_c10 .feature_cnt .img img {
	width: auto;
	height: 33.17308vh;
}

.sec_c10 .feature_tit img {
	width: auto;
}

.sec_c10 .feature_01 .feature_tit img {
	height: 22.21154vh;
}

.sec_c10 .feature_02 .feature_tit img {
	height: 28.76923vh;
}

.sec_c10 .feature_03 .feature_tit img {
	height: 30.76923vh;
}

.sec_c11 .txt_01 img {
	height: 20vh;
}

.sec_c11 .medicine_cnt img {
	width: auto;
	height: 10.57692vh;
}

.sec_c12 .sec_inner {
	padding-bottom: 0;
}

.sec_c12 .txt_01 img {
	height: 18.65385vh;
}

.sec_c12 .set_tit img {
	height: 6.15385vh;
}

.sec_c12 .cv_btn.question {
	margin-top: 40px;
}

.sec_c13 .txt_01 img {
	height: 19.61538vh;
}

.sec_c13 .step_wrap .img.txt_02 img {
	height: 20.19231vh;
}

.sec_c13 .step_wrap .img.txt_03 img {
	height: 24.03846vh;
}

.sec_c13 .step_wrap .img.txt_04 img {
	height: 24.03846vh;
}

.sec_c13 .step_wrap .img.txt_05 img {
	height: 13.46154vh;
}

.sec_c14 .txt_01 img {
	height: 22.40385vh;
}

.sec_c14 .qa_txt p {
	margin: 40px -5% 0;
	font-size: 2rem;
}

.sec_c15 .txt_01 img {
	height: 18.26923vh;
}

.sec_c16 .txt_01 img {
	height: 18.26923vh;
}

.scroll_panel .sec_inner {
	padding-top: 9.61538vh;
	padding-bottom: 9.61538vh;
}

}

@media not screen, screen and (min-width: 769px) {

.vsp768 {
	display: none;
}

}

@media not screen, screen and (min-width: 1025px) {

.vsp1024 {
	display: none;
}

}

@media screen and (max-width: 1024px) {

.vpc1024 {
	display: none;
}

}

@media screen and (max-width: 768px) {

.vpc768 {
	display: none;
}

.footer_copy {
	font-size: 2.75vw;
	padding-top: 10px;
}

}

@media screen and (max-width: 768px) and (orientation: landscape) {

.sec .sec_inner {
	padding: 50px 0;
}

.sec p {
	line-height: 2;
	font-size: 1.4rem;
	margin-top: 20px;
}

.slide_dots {
	top: calc(100% + 20px);
}

.sec_c10 .feature_cnt .txt_wrap p:first-of-type {
	margin-top: 20px;
}

.sec_c12 .set_cnt p {
	font-size: 1.5rem;
}

.sec_c14 .qa_tit {
	font-size: 1.7rem;
}

.sec_c14 .qa_txt p {
	margin-top: 20px;
	font-size: 1.5rem;
}

.sec_c16 .faq_tit {
	font-size: 1.5rem;
}

.sec_c16 .faq_txt p {
	font-size: 1.4rem;
}

.scroll_panel .sec_inner {
	padding-top: 50px;
	padding-bottom: 50px;
}

}

@media screen and (max-width: 640px) {

.vpc640 {
	display: none;
}

.up_in {
	-webkit-transition: all 0.6s ease 0s;
	transition: all 0.6s ease 0s;
}

.fade_in {
	-webkit-transition: all 0.6s ease 0s;
	transition: all 0.6s ease 0s;
}

.sec .sec_inner {
	width: 100%;
	padding: 15.625vw 0;
}

.sec .txt_wrap {
	margin: 0 7%;
}

.sec p {
	line-height: 2;
	font-size: 3.75vw;
	margin-top: 9.375vw;
}

.slide_wrap {
	margin-bottom: 7.8125vw;
}

.slide_dots {
	top: calc(100% + 7.8vw);
}

.slide_dots li {
	width: 10px;
	height: 10px;
	margin: 0 5px;
}

.slide_arr {
	width: 30px;
	height: 30px;
	top: calc(50% - 15px);
}

.slide_arr.next {
	right: -6.25vw;
}

.slide_arr.prev {
	left: -6.25vw;
}

.cta_modal_wrapper .modaal-content-container {
	padding-top: 20px;
}

.cta_modal_close {
	width: 30px;
	height: 30px;
}

.cta_modal_close::after {
	font-size: 16px;
}

.cta_modal_wrap p {
	font-size: 11px;
}

.cta_modal_wrap.form {
	padding-top: 15px;
}

.cta_modal_wrap.tel {
	padding: 15px 0 20px;
}

.cta_modal_wrap.tel .txt_tel {
	display: none;
}

.footer {
	padding: 6.25vw 0;
}

.footer_nav li {
	margin: 0 2.34375vw;
}

.footer_nav li a {
	font-size: 3vw;
}

.sec_c10 .feature_cnt + .feature_cnt {
	margin-top: 12.5vw;
}

.sec_c10 .feature_tit {
	margin-top: -6.25vw;
}

.sec_c12 .sec_inner {
	padding-bottom: 0;
}

.sec_c12 .set_cnt {
	padding: 4.6875vw 3.125vw;
}

.sec_c12 .set_cnt p {
	font-size: 3.125vw;
}

.sec_c12 .set_seibun {
	margin-top: 6.25vw;
}

.sec_c12 .set_seibun li a {
	height: 6.25vw;
	font-size: 2.25vw;
}

.sec_c12 .set_btn a {
	height: 7.8125vw;
	font-size: 3.5vw;
}

.sec_c12 .set_btn a .arr {
	width: 4.6875vw;
	height: 4.6875vw;
}

.seibun_modal_wrapper .modal_title {
	text-align: center;
	font-size: 4.6875vw;
}

.seibun_modal_wrapper p {
	font-size: 3.5vw;
}

.seibun_modal_wrapper .seibun_cnt > p {
	padding-left: 10px;
	font-size: 3.25vw;
}

.seibun_modal_wrapper .seibun_img {
	width: 65px;
}

.seibun_modal_wrapper .seibun_img figure figcaption {
	font-size: 0.9rem;
}

.seibun_modal_wrapper .seibun_name {
	height: 6.25vw;
	font-size: 0.9rem;
	letter-spacing: -0.06em;
}

.sec_c14 .qa_cnt {
	padding: 6.25vw 6.25vw 7.8125vw;
}

.sec_c14 .qa_tit {
	font-size: 5.3125vw;
	padding-bottom: 3.125vw;
}

.sec_c14 .qa_txt p {
	margin: 3.125vw -5% 0;
}

.sec_c16 .faq_tit {
	padding: 3.90625vw 12% 3.90625vw 5%;
	font-size: 3.4375vw;
}

.sec_c16 .faq_txt p {
	font-size: 3.125vw;
}

}

@-webkit-keyframes loading_logo {

100% {
	-webkit-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
}

}

@keyframes loading_logo {

100% {
	-webkit-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
}

}

@-webkit-keyframes fadeOut {

0% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@keyframes fadeOut {

0% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@-webkit-keyframes anim_scale {

100% {
	-webkit-transform: scale(1, 1);
	transform: scale(1, 1);
}

}

@keyframes anim_scale {

100% {
	-webkit-transform: scale(1, 1);
	transform: scale(1, 1);
}

}

@-webkit-keyframes c1_pulse {

0% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

25% {
	-webkit-transform: scale3d(1.15, 1.15, 1.15);
	transform: scale3d(1.15, 1.15, 1.15);
}

50% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

100% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

}

@keyframes c1_pulse {

0% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

25% {
	-webkit-transform: scale3d(1.15, 1.15, 1.15);
	transform: scale3d(1.15, 1.15, 1.15);
}

50% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

100% {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

}

