/* _setting CSS */
.clear:after {
  content: '';
  display: block;
  clear: both;
}

p, li {
  line-height: 1.6;
}

img {
  width: 100%;
}

#contents h1,
#contents h2,
#contents h3,
#contents .img_wrap {
  line-height: 0;
}
#contents p, #contents ul {
  font-size: 14px;
}
#contents ul {
  padding: 0 4.6875% 25px;
}
#contents .notes {
  font-size: 11px;
  vertical-align: top;
}
#contents .indent1 {
  font-size: 11px;
  text-indent: -1em;
  padding-left: 1em;
}
#contents .indent2 li {
  font-size: 11px;
  text-indent: -2em;
  padding-left: 2em;
}
#contents .mb30 {
  margin-bottom: 30px;
}
#contents .mb50 {
  margin-bottom: 50px;
}
#contents .mb80 {
  margin-bottom: 80px;
}
#contents .mb100 {
  margin-bottom: 100px;
}

.product_text_wrap {
  padding: 20px 4.6875% 15px;
}
.product_text_wrap h2 {
  margin: 20px 0;
}
.product_text_wrap strong {
  color: #006699;
}
.product_text_wrap p {
  text-align: left;
  margin-bottom: 15px;
}

#contents h1 {
	margin: 0 0 20px;
}

.step_wrap {
  position: relative;
  margin-top: 20px;
}
.step_wrap > img {
	display: block;
	width: 309px;
	max-width: 100%;
	margin: 0 auto 5px;
}
.step_wrap ul:before, .step_wrap ul:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 7%;
  width: 86%;
  height: 0;
  padding: 19.0625% 0 0;
  overflow: hidden;
  background: url(../images/sp/top/step_bg01.png) no-repeat;
  background-size: 100%;
}
.step_wrap ul {
	display: flex;
	position: relative;
  padding: 14.5% 2.34375% 0 !important;
}
/*.step_wrap ul:after {
  content: '';
  display: block;
  clear: both;
}*/
.step_wrap li {
  margin: 0 1.5% 0 0;
}
.step_wrap li:last-child {
	margin: 0;
}

.type_wrap {
	padding: 35px 0 0;
  margin: 0 0 25px;
	clear: both;
}
.type_wrap h2 {
  line-height: 1.2 !important;
  margin: 0 0 2%;
  color: #0070AC;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.type_wrap ul {
  margin: 0 0 1%;
  padding: 0 !important;
  text-align: center;
}
.type_wrap ul li {
  display: inline-block;
  width: 30%;
  margin: 0 1%;
}
.type_wrap ul li img {
  width: 100%;
}
.type_wrap .text_ex {
  width: 90%;
  margin: 0 auto;
  padding: 0 0 0 1.5em;
  box-sizing: border-box;
  font-size: 10px !important;
  text-indent: -1.3em;
}

.img_step {
  margin-bottom: 10px;
}

.product_wrap {
  padding: 20px 4.6875% 25px;
}
#step_jump1 + .img_wrap + .product_wrap {
	padding-bottom: 0;
}
.product_wrap p {
  margin: 0 0 15px;
}
.product_wrap ul {
  padding: 0 !important;
}

.box {
  margin-bottom: 30px;
}
.box#step_jump2,
.box#step_jump6 {
	padding-top: 10px;
	margin-top: -10px;
}
.box .text {
  padding-bottom: 15px;
  border-bottom: 2px solid #CCCCCC;
}
.box .img_main {
  margin-bottom: 15px;
}
.box .img_text {
  margin-bottom: 5px;
}
.box ul.price {
	width: 55%;
  float: left;
  color: #666666;
  font-size: 12px !important;
}
.box ul.price span {
  color: #F89092;
  font-size: 18px;
  font-weight: bold;
}
.box .btn {
  float: right;
  width: 41.37931034482759%;
  margin: 0 0 8px;
}
.box .btn img {
  width: 100%;
}
.box .btn_wrap {
  clear: both;
  padding: 10px 0 0 !important;
}
.box .btn_wrap:after {
  content: '';
  display: block;
  clear: both;
}
.box .btn_wrap li {
  float: left;
  width: 48.7%;
  line-height: 0;
  margin: 0 0 10px;
}
.box .btn_wrap li img {
  width: 100%;
}
.box .btn_wrap li.btn_pre{
margin-top:-6.4%;
}
.product_wrap .box_wrap .box.clear .btn_wrap li.btn_pre img {
  width: 100% !important;
}
.box .btn_wrap .btn2,
.box .btn_wrap .btn4 {
  float: right;
}
.box .text_ex {
  margin: 0 0 10px;
  padding: 0 0 0 1em;
  text-indent: -1em;
font-size:10px!important;
}

.product_wrap2 .btn_wrap {
  padding: 8px 0 0 !important;
}

.product_area h3.title {
  margin-bottom: 40px;
}
.product_area h3 {
  margin-bottom: 10px;
}
.product_area ul li span {
  color: #AAAAAA;
}

#contents .product_text1_ex {
  padding: 0 4.6875% 20px;
}
#contents .product_text1_ex p {
  padding: 0 0 0 1.2em;
  font-size: 11px !important;
  text-indent: -1.2em;
}

sup {
  font-size: 10px;
  vertical-align: super;
}

.sec5 {
  padding: 0;
}
.sec5 .text_wrap {
  width: 75%;
  margin: 0 auto 5%;
}
.sec5 .sec5_innner1 {
  padding: 0 0 5%;
}
.sec5 .item_wrap {
  padding: 0 0 6%;
}
.sec5 .item_wrap .text_wrap {
  width: 76%;
}
.sec5 .price_wrap {
  width: 69%;
  margin: 0 auto;
	overflow: hidden;
}
.sec5 .price_wrap p {
  line-height: 0;
  margin: 0;
}
.sec5 .price_wrap p.btn {
	position: relative;
	z-index: 1;
  margin-top: 30px;
}
.sec5 .price_wrap p img {
  vertical-align: bottom;
}
.sec5 .text_ex {
  width: 90%;
  margin: -1% auto 8%;
  padding: 0 0 0 1.5em;
  box-sizing: border-box;
  font-size: 10px!important;
  text-indent: -1.3em;
}
.product_wrap .box_wrap .box.clear .btn_wrap li span img{
width:auto !important;
}

/*add 20180122*/
.box li.btn4{
position:relative;
}
.box li.btn4 span{
position:absolute;
bottom:200%;
right:0;
}

.cp_present_ {
	padding: 0 4.6875%;
	margin-top: -13px;
}
.cp_area_ {
	margin: -48px 0 0;
	padding: 75px 4.6875% 30px;
	background: url(../images/christmas2018/sp/bg_cp.jpg) no-repeat center top / 100%;
}
.cp_area_ img:first-child {
  display: block;
	margin: 0 0 5px;
}
.box .price + img.icon_present_ {
	float: right;
	width: 162px;
	max-width: 45%;
}

/* 5th anniversary */
.top_aniv_ {
	text-align: center;
	padding: 10px 4.6875% 15px;
	margin: 0 0 30px;
	background: url(../images/sp/5th_anniversary/bg_mv.jpg) repeat-y left top / 100%;
}
.top_aniv_ img {
	max-width: 100%;
}
.top_aniv_ img:nth-child(1) {
	width: 286px;
	margin: 0 0 25px;
}
.top_aniv_ img:nth-child(2) {
	width: 321px;
	margin: 0 0 25px;
}
.top_aniv_ img:nth-child(3) {
	margin: 0 0 10px;
}

/* Wash Campaign */
.box ul.price li.default_price {
	display: inline-block;
	font-size: 12px;
	padding: 0 10px 0 0;
	margin: 0 0 0 3px;
	background: url(../images/wash/sp/icon_price_arrow.png) no-repeat right center / 5px;
}
.box ul.price li.default_price span {
	color: #666;
	font-size: 11px;
	font-weight: normal;
}

/* SE Campaign */
.secp {
	position: relative;
}
.secp a {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 7.3%;
	width: 67%;
	margin: 0 auto;
}

/* 201910 */
.bnr_area {
	padding: 0 35px;
	margin: 0 0 25px;
}
.step_wrap + .bnr_area {
  margin-top: 25px;
}

.box_wrap p.text + a {
	display: block;
	width: 50%;
	margin: 0 auto 15px;
}
.price_area li {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 0 0 10px;
}
.box.fd .price_area li:first-child {
	margin: 13px 0 15px;
}
.price_area li .price {
	margin: 0;
	font-size: 12px !important;
	line-height: 1.4;
}
.price_area li .price span {
	color: #f58d8f;
	font-size: 18px;
	font-weight: bold;
	padding: 0 2px 0 0;
}
.price_area li a {
	width: 50%;
}
.box.fd .price_area li:last-child a {
	width: 49%;
}
.price_area li .price + div {
	width: 50%;
}
.price_area li .price + div.select_wrapper {
	position: relative;
	width: 49%;
}
.price_area .select_wrapper:after {
	content: '';
  position: absolute;
  top: 14px;
  right: 15px;
  width: 5px;
  height: 5px;
  border-right: 1px solid #555;
  border-bottom: 1px solid #555;
  transform: rotate(45deg);
}
.price_area .select_wrapper select {
	-webkit-appearance: none;
	border: 1px solid #aeaeae;
	border-radius: 3px;
	box-sizing: border-box;
	width: 100%;
	padding: 8px 15px;
	color: #555;
	font-size: 12px;
	background: #fff;
}
.price_area .about_regular {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.price_area .about_regular p {
	color: #f58d8f;
	font-size: 13px !important;
	letter-spacing: -1px;
}
.price_area .about_regular a {
	width: 50%;
}
.box_wrap .head {
	position: relative;
	margin: 0 0 8px;
}
.box_wrap .head .img_text {
	margin: 0;
}
.box_wrap .head img:last-child {
	position: absolute;
	right: 0;
	bottom: 6px;
	width: 85px;
}

/* FD present */
.present {
  position: relative;
  padding: 40px 0 0;
	margin: 0 0 35px;
  z-index: 1;
}
.present:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: #b3d5d9;
  z-index: -1;
}
.present h2 {
  text-align: center;
  margin: 0 0 25px;
}
.present h2 img {
  width: 47%;
}
.present .sample {
  margin: 0 0 25px;
}
.present .sample .img {
  position: relative;
  text-align: center;
  margin: 0 45px;
}
.present .sample .img img {
  width: 77%;
}
.present .sample .text {
  background: #71a5b2;
  padding: 120px 40px 35px;
  margin: -110px 35px 0;
}
.present .sample .text p {
  color: #fff;
	line-height: 25px;
  margin: 0 0 13px;
	background: transparent;
}
.present .sample .caution {
  color: #fff;
  font-size: 10px;
  line-height: 16px;
  letter-spacing: 1px;
}
.present .btn_cv {
  position: relative;
  display: block;
  background: #000;
  text-align: center;
  color: #fff;
  font-size: 14px;
  letter-spacing: 4px;
  text-decoration: none;
  padding: 20px 0;
	margin: 0 35px;
}
.present .btn_cv:after {
  content: '';
  position: absolute;
  top: 21px;
  right: 37px;
  border-style: solid;
  border-width: 5px 0 5px 6px;
  border-color: transparent transparent transparent #fff;
}

/* トピック一覧 */
.topiclist_ {
	padding: 0 4.6875%;
	margin: 30px 0;
}
.topiclist_ .topiclist_head_ {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #333;
	margin: 0 0 15px;
	padding: 0 0 7px 5px;
}
.topiclist_ .topiclist_head_ a {
	position: relative;
	color: #333;
	font-size: 12px;
	padding: 0 15px 0 0;
	text-decoration: none;
	transform: translateY(3px);
}
.topiclist_ .topiclist_head_ a:after {
	content: '';
	position: absolute;
	top: 3px;
	right: 0;
	width: 6px;
	height: 6px;
	border-right: 1px solid #137da9;
	border-bottom: 1px solid #137da9;
	transform: rotate(-45deg);
	margin: 0 5px 0 0;
}
.topiclist_ .topicline_ li {
	margin: 0 0 5px;
}
.topiclist_ .topicline_ li:last-child {
	margin: 0;
}
.topiclist_ .topicline_ li .wrap_ {
	display: flex;
	align-items: center;
}
.topiclist_ .topicline_ li .icon_ {
	height: 21px;
}
.topiclist_ .topicline_ li .icon_ img {
	width: auto;
	height: 100%;
}
.topiclist_ .topicline_ li .icon_ img:last-child {
	margin-right: 20px;
}
.topiclist_ .topicline_ li .date_ {
	font-size: 12px;
	line-height: 22px;
}
.topiclist_ .topicline_ li .text_ {
	font-size: 13px;
	line-height: 24px;
}
.topiclist_ .topicline_ li .text_ a {
	color: #333;
	font-size: 13px;
	line-height: 24px;
	text-decoration: none;
}

/* MV */
#mv {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 68.75% 0 0;
}
#mv li {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  line-height: 0;
}
#mv li.foundation a strong {
  font-size: 2.4vw;
  background: #007bae;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  width: 100%;
  height: 10.6vw;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  line-height: 1.3;
}


/* bnr */
.bnr-area {
	padding: 0 10px;
	margin: 20px 0 30px;
}
.bnr-area .bnr-half {
	display: flex;
	justify-content: space-between;
	margin: 0 0 5px;
}
.bnr-area .bnr-half a {
	display: block;
	width: 49%;
}
.bnr-area .note {
	font-size: 10px;
	margin: 0 0 10px;
}

.regular-check-text-wrap { margin: 10px auto 0; display: flex; justify-content: center; align-items: center;}
.regular-check-text-wrap.box { margin: 10px 4.6875% 20px;}
.regular-check-text-wrap ul { text-align: left;}
.regular-check-text-wrap li { padding-left: 1em; margin: 0 !important; text-indent: -1em; text-align: left; font-size: 12px; line-height: 1.4;}
.regular-check-text-wrap li.regular-check-link { margin-top: 5px !important;}
.regular-check-text-wrap li a { font-size: 12px; color: #106f9f; text-decoration: none !important;}
