@charset "utf-8";
@import url("html5_reset.css");

/*------------------------------------------------
共通
-------------------------------------------------*/

/*
リンク
----------------------------------*/

a:link {
	color:#000;
	text-decoration:none;
}

a:visited {
	color:#000;
}

/*
全体レイアウト
----------------------------------*/

body {
	width: 900px;
	color:#242424;
	font-size:90%;
	line-height:1.2;
	margin:0 auto;
	font-family: 游ゴシック, YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", Osaka, sans-serif;
}

@media only screen and (max-width:754px) {
	body{
		width: 100%;
		color:#242424;
		font-size:90%;
		line-height:1.2;
		margin:0 auto;
	}
}

.header_img {
	position:relative;
}

#container_header {
	text-align:left;
	background-color:#ffffff;
}

#container_product {
	text-align:left;
	background-color:#ffffff;
	padding:15% 0 15% 0;
}

#container_bottom {
	text-align:left;
	background-color:#ffffff;
	padding:15% 0 15% 0;
}

#container {
	text-align:left;
	background-color:#ffffff;
}




/*
アニメーション調整
----------------------------------*/

.fade_area{
	overflow: hidden;
}

.fadeUp{
	animation-name:fadeUpAnime;
	animation-duration:0.5s;
	animation-fill-mode:forwards;
	opacity:0;
}

@keyframes fadeUpAnime{
	from {
		opacity: 0;
		transform: translateY(100px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.fadeUpTrigger{
	opacity: 0;
}

.zoomIn {
	animation-name: zoomInAnime;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
}

@keyframes zoomInAnime{
	0% {
		opacity: 0;
		transform: scale(0.6);
	}

	100% {
		opacity: 1;
		transform: scale(1);
	}
}

.swipe{
	overflow: hidden;/*左右アニメーションで画面からはみ出る際に出る横スクロールバーを隠す*/
}

.img_loop {
	animation: fuwafuwa_1 .8s ease 0s infinite;
}

.fuwafuwa_b {
  animation: fuwafuwa_b 0.1s ease-in-out infinite alternate;
  /*display: inline-block;*/
  margin-top: 15px;
}
 
@keyframes fuwafuwa_b {
 	0% {
		transform:translate(0, 0) rotate(-2deg);
	}

	100% {
		transform:translate(0, 0) rotate(2deg);
	}
}

/*========= 流れるテキスト ===============*/

/*全共通*/

.slide-in {
	overflow: hidden;
	display: inline-block;
}

.slide-in_inner {
	display: inline-block;

}

/*左右のアニメーション*/
.rightAnime{
	opacity: 0;/*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
	animation-name:slideTextX100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes slideTextX100 {
	from {
	transform: translateX(-100%); /*要素を左の枠外に移動*/
	opacity: 0;
	}
	
	to {
	transform: translateX(0);/*要素を元の位置に移動*/
	opacity: 1;
	}
}

.slideAnimeRightLeft {
	animation-name:slideTextX-100;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes slideTextX-100 {
	from {
	transform: translateX(100%);/*要素を右の枠外に移動*/
	opacity: 0;
	}

	to {
	transform: translateX(0);/*要素を元の位置に移動*/
	opacity: 1;
	}
}

@keyframes fuwafuwa_1 {
	0% {
		transform: translate(0, 0);
	}
	50% {
		transform: translate(0, -10%);
	}
	100% {
		transform: translate(0, 0);
	}
}



/*
マーカーアニメーション
----------------------------------*/
/*
.c-marker {
	background: -webkit-linear-gradient(left, rgb(246,200,63) 50%, transparent 30%);
	background: -moz-linear-gradient(left, rgb(246,200,63) 50%, transparent 30%);
	background: linear-gradient(left, rgb(246,200,63) 50%, transparent 30%);
	background-repeat: no-repeat;
	background-size: 200% .8em; 
	background-position: 100% .5em;
	transition: 2s;
}
.c-marker.is-active{
	background-position: 0% .5em;
}
*/

.h-marker {
	background-color: #e92a00;
}

.wh-marker {
	background-color: #ffffff;
}

.or-marker {
	background-color: #ef6e2a;
}

.y-marker {
	background-color: #f6c83f;
}

.ye-marker {
	background-color: #fffccb;
}

.pi-marker {
	background-color: #ff69b3;
}

.re-marker {
	background-color: #fe213b;
}


/*
会話調整
----------------------------------*/

.oneArea {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	max-width: 1024px;
	margin: 50px auto;
	padding: 0 10px;
}

.oneArea .onebox {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.oneArea .onebox:nth-child(even) {
	flex-direction: row-reverse;
	margin-top: 20px;
}

.oneArea .onebox .imgArea {
	width: 16%;
	position: relative;
}

.oneArea .onebox .imgArea img {
	width: 100%;
	max-width: 130px;
	position: absolute;
	top: 0;
}

.oneArea .onebox:nth-child(odd) .imgArea img {
	left: 0;
	padding-right: 30px;
}

.oneArea .onebox:nth-child(even) .imgArea img {
	right: 0;
	padding-left: 30px;
}

.oneArea .onebox .fukiArea {
	width: 75%;
}

.oneArea .onebox .fukidasi {
	width: 100%;
	position: relative;
	padding: 25px;
	background-color: #fbfbfb;
	/*font-size: 18px;*/
	color: #231815;
	border-radius: 12px;
	box-sizing: border-box;
}

.oneArea .onebox .fukidasi::before {
	content: '';
	position: absolute;
	display: block;
	top: 22px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 30px 15px 0;
	border-color: transparent #fbfbfb transparent transparent;
}

.oneArea .onebox:nth-child(odd) .fukidasi::before {
	left: -20px;
}

.oneArea .onebox:nth-child(even) .fukidasi {
	background-color: #fbfbfb;
}

.oneArea .onebox:nth-child(even) .fukidasi::before {
	right: -20px;
	border-color: transparent #fbfbfb transparent transparent;
	transform: rotate(180deg);
}

@media screen and (max-width: 1024px) {
	.oneArea .onebox .imgArea img {
		max-width: 70%;
	}
	.oneArea .onebox .fukidasi {
		padding: 15px;
		/*font-size: 14px;*/
	}
	.oneArea .onebox .fukidasi::before {
		top: 8px;
	}
}

@media screen and (max-width: 420px) {
	.oneArea {
		margin: 30px auto;
	}
	.oneArea .onebox:nth-child(even) {
		margin-top: 15px;
	}
	.oneArea .onebox .imgArea {
		width: 20%;
	}
	.oneArea .onebox .fukidasi {
		padding: 10px 15px;
		/*font-size: 12px;*/
	}
}


/*
サイズ調整
----------------------------------*/

#container_header img {
	width: 100%;
	height: auto;
}

#container img {
	width: 100%;
	height: auto;
}

.content_img {
	width: 60%;
	margin:0 auto;
}

@media only screen and (max-width:754px) {
	.content_img {
		width: 86%;
	}
}

.content_small_img {
	width: 50%;
	margin:0 auto;
}

@media only screen and (max-width:754px) {
	.content_small_img {
		width: 60%;
	}
}

.content_sns_img {
	width: 80%;
	margin:0 auto;
}

@media only screen and (max-width:754px) {
	.content_sns_img {
		width: 100%;
	}
}

@media only screen and (max-width:754px) {
	#container_header img {
		width: 100%;
		height: auto;
	}

	#container img {
		width: 100%;
		height: auto;
	}
}


/*
動画サイズ
----------------------------------*/

#v_f {
	width: 60%;
	height: auto;
	filter: drop-shadow(0px 0px rgba(0,0,0,0));
	outline: none;
	border: none;
}

@media only screen and (max-width:754px) {
	#v_f {
		width: 100%;
		height: auto;
	}
}

/*
見出し調整
----------------------------------*/

h1 {
	font-size: 250%;
	color: #000;
	padding:10% 2% 0% 2%;
	line-height: 2.0em;
	/*
	position:absolute;
	z-index:2;
	top:65%; left:0px;
	*/
}

h2 {
	font-size: 250%;
	color: #000;
	padding:4% 4%;
	background-color:#fff;
	/*background: linear-gradient(-140deg, #ac9ecf, #e3bd9e);*/
	border: solid 0.10em #4d382d;
	border-radius:60px;
	line-height: 1.6em;
	margin:0 4% 0 5%;
}

h3 {
	font-size: 200%;
	color: #000;
	padding:4% 0;
	/*background-color:#e3bd9e;*/
	/*background: linear-gradient(-140deg, #ac9ecf, #e3bd9e);*/
	border-top: solid 0.10em #fe213b;
	border-bottom: solid 0.10em #fe213b;
	border-radius:50px;
	line-height: 1.6em;
	margin:0 8%;
}

.h3_color_a {
	border-top: solid 0.10em #f6c83f;
	border-bottom: solid 0.10em #f6c83f;
	border-radius:50px;
}

h4 {
	font-size: 100%;
	padding: 4%;
	margin: 4%;
	background-color: #f2f3c7;
	font-weight: normal;
	border-radius:60px;
}

.h4_div {
	font-size: 100%;
	padding: 4%;
	margin: 4%;
	background-color: #f2f3c7;
	font-weight: normal;
	border-radius:60px;
}

h5 {
	font-size: 200%;
	color: #000;
	padding: 4%;
	border-bottom: solid 0.06em #000;
	
}

h6 {
	font-size: 200%;
	color: #666666;
	margin:30px 4% 15px 4%;
	padding:0;
}

p {
	font-size: 140%;
	color: #666666;
}

.container_offer_txt {
	padding:1.2% 0%;
	margin:0% 5%;
	line-height:1.8em;
	color:#000;
}

br {
	display: block;
	content: "";
}

.br-pc {
	display:block;
}

.br-sp {
	display:none;
}

@media only screen and (max-width:754px) {	
	.br-pc {
		display:none;
	}
	
	.br-sp {
		display:block;
	}
}


@media only screen and (max-width:754px) {
	h1 {
		font-size: 100%;
		padding:10% 4% 2% 4%;
		line-height:2.0em;
		/*
		position:absolute;
		z-index:2;
		top:50%; left:0px;
		*/
	}

	h2 {
		font-size: 115%;
		padding:6% 6%;
		margin:0 8%;
		line-height:1.4em;
		/*background-color:#e3bd9e;*/
		/*background: linear-gradient(-140deg, #ac9ecf, #e3bd9e);*/
		border: solid 0.10em #4d382d;
		border-radius:30px;
	}
	
	h3 {
		font-size: 110%;
		padding:6% 0%;
		margin:0 6%;
		line-height:2.0em;
		/*background-color:#e3bd9e;*/
		/*background: linear-gradient(-140deg, #ac9ecf, #e3bd9e);*/
		border-top: solid 0.10em #fe213b;
		border-bottom: solid 0.10em #fe213b;
		border-radius:30px;
	}
	
	.h3_color_a {
		font-size: 110%;
		padding:6% 0;
		margin:0 10%;
		line-height:2.0em;
		/*background-color:#e3bd9e;*/
		/*background: linear-gradient(-140deg, #ac9ecf, #e3bd9e);*/
		border-top: solid 0.10em #f6c83f;
		border-bottom: solid 0.10em #f6c83f;
		border-radius:25px;
	}

	h4 {
		font-size: 100%;
		padding: 6% 4%;
		margin: 4%;
		background-color: #f2f3c7;
		font-weight: normal;
		border-radius:30px;
		font-weight: normal;
	}

	.h4_div {
		font-size: 100%;
		padding: 6% 4%;
		margin: 4%;
		background-color: #f2f3c7;
		font-weight: normal;
		border-radius:30px;
		font-weight: normal;
	}

	h5 {
		font-size: 120%;
		padding: 4%;
		line-height:2.0em;
	}

	h6 {
		font-size: 120%;
		margin:30px 4% 15px 4%;
		padding:0;
		line-height:2.0em;
	}

	p {
		font-size: 98%;
	}

	
	.container_offer_txt {
		margin:0% 5% 8% 5%;
		line-height:1.9em;
		color:#000;
	}

	.p_list {
		font-size: 90%;
		margin: 0% 5% 2% 5%
	}
	
}

.btn {
	margin:10% 8%;
	padding:5% 0;
	text-align:center;
	background-color:#000;
	color:#ffffff;
}

.btn_color_a {
	margin:10% 8% 0%;
	padding:5% 0;
	text-align:center;
	background-color:#caa700;
	color:#ffffff;
}


/*
文字調整
----------------------------------*/

.t_i {
	padding-left:1em;
	text-indent:-1em;
}
	
.t_u {
	text-decoration:underline;
}

.t_c {
	text-align: center;
}

.t_r {
	text-align: right;
}

.f_b {
	font-weight: bold;
}

.f_c_r {
	color: #ff0000;
}

.f_c_p {
	color: #f4679c;
}

.f_s_30 {
	font-size: 30%;
}

.f_s_50 {
	font-size: 50%;
}

.f_s_80 {
	font-size: 80%;
}

.f_s_95 {
	font-size: 95%;
}

.f_s_150 {
	font-size: 150%;
}

.f_s_200 {
	font-size: 200%;
}

.f_s_180 {
	font-size: 180%;
}

.f_s_400 {
	font-size: 400%;
}

.m_lr_4 {
	margin: 0 4%;
}

.m_tb_0 {
	margin: 1.0em 0;
}

.m_tb_1 {
	margin: 2.0em 0;
}

.m_t_1 {
	margin: 2.0em 0 0 0;
}

.m_b_clear {
	margin-bottom:0%;
}

.m_b_1 {
	margin: 0 0 2.0em 0;
}

.m_b_10 {
	margin-bottom:10px;
}

.m_b_15 {
	margin-bottom:5%;
}

.m_b_20 {
	margin-bottom:35px;
}

.m_b_25 {
	margin-bottom:10%;
}

.m_b_35 {
	margin-bottom:10%;
}

.p_t_header {
	padding-top:0%;
}

.l_h_10 {
	line-height: 1.6em;
}

.l_h_18 {
	line-height: 1.8em;
}
.t_c_p {
	text-align:center;
}

@media only screen and (max-width:754px) {
	.m_b_clear {
		margin-bottom:10%;
	}
	.m_b_15 {
		margin-bottom:9%;
	}
	.m_b_25 {
		margin-bottom:13%;
	}
	.m_b_35 {
		margin-bottom:15%;
	}
	.f_s_30 {
		font-size: 15%;
	}

	.f_s_50 {
		font-size: 25%;
	}

	.f_s_80 {
		font-size: 40%;
	}

	.f_s_95 {
		font-size: 47.5%;
	}

	.f_s_150 {
		font-size: 75%;
	}

	.f_s_200 {
		font-size: 100%;
	}

	.f_s_180 {
		font-size: 90%;
	}

	.f_s_400 {
		font-size: 200%;
	}
	.p_t_25 {
		padding-top:12%;
	}
	.p_t_15 {
		padding-top:9%;
	}
	.p_t_6 {
		padding-top:6%;
	}
	.p_t_header {
		padding-top:0%;
	}
	.t_c_s {
		text-align:center;
	}
}

.clear {
	clear:both;
}
/*------------------------------------------------
コンテンツ
-------------------------------------------------*/

.pic {
	clear:both;
	margin-bottom:20px;
}

.box {
	clear:both;
}

.boxL {
	float:left;
	width:50.00%;
}

.boxR {
	float:right;
	width:50.00%;
}

.box_b {
	clear:both;
}

.boxLb {
	float:left;
	width:31.20%;
}

.boxCb {
	float:left;
	width:33.60%;
}

.boxRb {
	float:right;
	width:35.20%;
}

.box_c {
	clear:both;
}

.boxLC {
	float:left;
	width:34.93%;
}

.boxCC {
	float:left;
	width:32.00%;
}

.boxRC {
	float:right;
	width:33.06%;
}

.full {
	width: 100%;
	vertical-align: bottom;
}

.day {
	padding:4%;
	color: #7c7c7c;
	background-color: #fff;
}

.ad {
	padding:0%;
	color: #fff;
	background-color: #cec1a5;
}

.voice_box {
	border: solid 0.12em #cec1a5;
	padding: 0.6em 2.0em;
	border-radius: 1.0em;
	letter-spacing: 0.05em;
}

hr {
	border-top: 1px solid #666666;
}

.hr_color_a {
	border-top: 1px solid #caa700;
}




/*------------------------------------------------
フッター
-------------------------------------------------*/
footer {
	width:100%;
	/*background-color:#f2ebe2;*/
	text-align: center;
	margin-top: 20px;
	padding: 7px 0 0px 0;
}

footer a:link {
	width:50%;
	color:#000000;
	text-decoration:none;
	margin-right: 3%;
	margin-left: 3%;
	line-height: 2.0;
}

.footer_link {
	font-size:80%;
	background-color:#efefef;
}

footer .copy img{
	width:20% !important;
	margin:0 0 2% 0;
}

.copy {
	width:100%;
	/*background-color:#f2ebe2;*/
	color:#000000;
	padding:4% 0 0%;
	font-size:70%;
}

.links {
	width:100%;
	background-color:#efefef;
	color:#000000;
	padding:0% 0 2%;
	font-size:70%;
}

@media only screen and (max-width:754px) {
	footer a:link {
		margin-right: 3.5%;
		margin-left: 3.5%;
	}
	
	.footer_link {
		font-size:70%;
	}
	
	footer .copy img{
		width:30% !important;
		margin:2% 0 3% 0;
	}
	
	.copy {
		width:100%;
		/*background-color:#f2ebe2;*/
		color:#000000;
		padding:1% 0 0%;
	}
	
	.links {
		width:100%;
		background-color:#efefef;
		color:#000000;
		padding:0% 0 2%;
		font-size:70%;
	}
}
