@charset "UTF-8";
/* おてがる定期便 2022/05/10*/
.fixcenter {
  width: auto;
}

#subscription {
  -webkit-text-size-adjust: 100%;
  height: 100%;
  color: #211815;
  overflow: hidden;
}

#subscription * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #211815;
  font-family: "YakuHanJPs_Noto", "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "YuGothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-decoration: none;
}

/* メインビジュアル */
#subscription .main_title {
  width: auto;
  margin: 0 auto;
  padding: 0 0 7%;
}
#subscription .main_title img {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

/* 吹き出し */
#subscription .balloon-area {
  width: 80%;
  margin: 0 auto 8%;
  padding: 0;
}
#subscription .balloon-area img {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

/* ボタン */
#subscription .btn-link {
  display: block;
  position: relative;
  width: 70%;
  margin: 0 auto;
  padding: 1% 0;
  border: solid 3px #211815;
  color: #211815;
  font-weight: 700;
  font-size: calc(33 / 960 * var(--contents_width));
  line-height: 1.8;
  letter-spacing: 0.1em;
  text-align: center;
}
#subscription .btn-link:after {
  -webkit-transform: rotate(45deg);
  display: inline-block;
  position: absolute;
  top: 37%;
  right: 4%;
  width: 4px;
  height: 4px;
          transform: rotate(45deg);
  border-top: 2.5px solid #211815;
  border-right: 2.5px solid #211815;
  content: "";
}

/* キャッチ */
#subscription .catch-area_inner {
  width: 90%;
  margin: 0 auto 15%;
}
#subscription .catch {
  margin-bottom: 8%;
  font-weight: 700;
  font-size: calc(29 / 960 * var(--contents_width));
  line-height: 2.3;
  letter-spacing: 0.1em;
  text-align: center;
}

/* 対象商品 */
#subscription .sec_product {
	position: relative;
	width: 90%;
	margin: 0 auto;
	padding: 0 0 0;
}
#subscription .sec_product_wrap {
	padding: 26px 0 0;
}
#subscription .sec_product_bg {
	position: relative;
	padding: 0;
	background: #fff;
}
#subscription .sec_product_inner {
	width: auto;
	margin: 0 auto;
}
#subscription .sec_product_title {
	display: block;
	width: 90%;
	margin: 0 auto;
	padding: 5% 0 7%;
}
#subscription .sec_product_btns {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0 2%;
	width: 100%;
	margin: 0 auto 9%;
	padding: 0;
	list-style: none;
}
#subscription .sec_product_btns li {
	flex: 1;
}
#subscription .sec_product_btn {
    --btn-active-padding: 6px; /* ボタンアクティブ時の上下パディング増加値 */
	display: block;
	position: relative;
	width: 100%;
	margin: var(--btn-active-padding) auto; /* ボタンが高くなり、上下にガタつくことがないよう、あらかじめ余白をつけておく。 */
	padding: 12px 2px;
	border-radius: 3px;
	border: 1px solid #384182;
	background: #fff;
	color: #384182;
	font-weight: bold;
	font-size: calc(33 / 960 * var(--contents_width));
	letter-spacing: .05em;
	text-align: center;
	cursor: pointer;
	-webkit-user-select: none;
	user-select: none;
	transition: all 0.3s ease;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
#subscription .tab.is_active .sec_product_btn,
#subscription .tab:hover .sec_product_btn {
	padding-top: calc(12px + var(--btn-active-padding));
	padding-bottom: calc(12px + var(--btn-active-padding));
    margin-top: 0;
    margin-bottom: 0;
}
#subscription .sec_product_btn.btn_1day {
	box-shadow: 1px 1px 2px 01px rgba(30, 144, 255, 0.6);
}
#subscription .sec_product_btn.btn_2week {
	box-shadow: 1px 1px 2px 01px rgba(166, 75, 244, 0.6);
}
#subscription .sec_product_btn.btn_toric {
	box-shadow: 1px 1px 2px 01px rgba(52, 168, 83, 0.6);
}
#subscription .sec_product_btn.btn_multifocal {
	box-shadow: 1px 1px 2px 01px rgba(244, 180, 0, 0.6);
}
#subscription .sec_product_btn.btn_color {
	box-shadow: 1px 1px 2px 01px rgba(255, 95, 109, 0.6);
}
#subscription .js_tab_contents {
	position: relative;
	overflow: hidden;
}
#subscription .js_tab_panel {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	margin: 0;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	pointer-events: none;
	opacity: 0;
}
#subscription .js_tab_panel.is_active {
	position: relative;
	z-index: 2;
	pointer-events: auto;
	opacity: 1;
}
#subscription .productlist_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 40px 0 0 0;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#subscription .product_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: auto;
	margin: 0 auto 45px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
			-ms-flex-pack: start;
					justify-content: flex-start;
}

/* 特長 */
#subscription .feature-area {
  position: relative;
  width: auto;
  padding: 5% 0 8%;
  background: #76b4db;
  margin-top: 8%;
}
#subscription .feature-area_inner {
  width: 93%;
  margin: 0 auto;
  padding: 27% 0 0;
}
#subscription .feature-area_title {
  z-index: 5;
  position: absolute;
  top: -2.2%;
  right: 0;
  left: 4%;
  width: 96%;
  margin: 0 auto;
}

/* 特長 */
#subscription .faq-area {
  z-index: 10;
  position: relative;
  width: auto;
  margin: 0 auto;
  padding: 0 0 12%;
  background: #fff url(/service/subscription/img/sp_border01.png) no-repeat left top;
  background-size: contain;
}
#subscription .faq-area_title {
  margin-bottom: 6%;
  padding: 13% 0 3%;
  background: url(/service/subscription/img/sp_border02.png) no-repeat center bottom;
  background-size: 90%;
  font-weight: 700;
  font-size: calc(44 / 960 * var(--contents_width));
  letter-spacing: 0.05em;
  text-align: center;
}
#subscription .faq-area_title span {
  font-size: calc(29 / 960 * var(--contents_width));
}
#subscription .faq-area_text {
  width: 90%;
  margin: 0 auto 3%;
  font-weight: 700;
  font-size: calc(34 / 960 * var(--contents_width));
  line-height: 2;
}
#subscription .faq-area_img {
  z-index: 10;
  position: relative;
  width: auto;
  margin: 0 auto 18%;
  padding: 63% 0 0;
}
#subscription .faq-area_img .icon {
  position: absolute;
  left: 7%;
  top: 5%;
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

#subscription .faq-area_subtitle {
  width: 40%;
  margin: 0 auto 8%;
}
#subscription .faq-area_subtitle img {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

/* お客様の声  */
#subscription .faq_title {
  margin: 0 auto 33px;
  font-size: 30px;
  line-height: 1;
  text-align: center;
}
#subscription .faq_wrap {
  width: 90%;
  margin: 0 auto 6%;
}
#subscription .faq_wrap:last-of-type {
  margin: 0 auto 10%;
}
#subscription .faq_subtitle {
  position: relative;
  margin: 0 auto 2%;
  padding: 1% 0;
  background: #76b4db;
  color: #fff;
  font-weight: 700;
  font-size: calc(29 / 960 * var(--contents_width));
  letter-spacing: 0.1em;
  text-align: center;
}
#subscription .faq_subtitle.small {
  font-size: calc(23 / 960 * var(--contents_width));
  letter-spacing: 0.08em;
}
#subscription .faq_subtitle span {
  position: absolute;
  top: 10%;
  left: 2%;
  color: #fff;
  font-size: calc(29 / 960 * var(--contents_width));
  font-family: "Noto Sans JP";
}
#subscription .faq_subtitle:after {
  -webkit-transition: all 0.3s;
  position: absolute;
  top: 48%;
  right: 5%;
  width: 0.6rem;
  height: 1px;
  background: #fff;
  content: "";
  transition: all 0.3s;
}
#subscription .faq_subtitle::before {
  -webkit-transition: all 0.3s;
  -webkit-transform: rotate(-90deg);
  position: absolute;
  top: 48%;
  right: 5%;
  width: 0.6rem;
  height: 1px;
          transform: rotate(-90deg);
  background: #fff;
  content: "";
  transition: all 0.3s;
}
#subscription .faq_subtitle.open:before {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
#subscription .faq_inner {
  display: none;
  margin-bottom: 5%;
}
#subscription .faq_atext {
  position: relative;
  margin-bottom: 5%;
  padding-left: 10%;
  font-weight: 500;
  font-size: calc(29 / 960 * var(--contents_width));
  line-height: 2;
  letter-spacing: 2px;
}
#subscription .faq_atext:before {
  position: absolute;
  top: 1%;
  left: 2.6%;
  content: "A";
  font-weight: 700;
  font-size: calc(29 / 960 * var(--contents_width));
}
#subscription .card {
  margin: 0 auto 8%;
}
#subscription .card img {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 auto;
}

/*
モーダル
*/
#modal_quo {
  background: #fff;
  padding: 0 0 5%;

}

#modal_quo .quo_title {
  display: block;
  background: #fff;
  margin: 0 auto 45px;
}

.quo_contents {
  width: auto;
  margin: 0 10%;
}

.quo_label {
  display: block;
  font-size: calc(29 / 960 * var(--contents_width));
  font-weight: 700;
  margin: 0 auto 5%;
  text-align: center;
  letter-spacing: .2em;
  font-family: "YakuHanJPs_Noto", "Noto Sans JP", sans-serif;
}

.quo_text {
  font-size: calc(21 / 960 * var(--contents_width));
  font-weight: 500;
  margin: 0 auto 10%;
  line-height: 2;
  letter-spacing: .2em;
  font-family: "YakuHanJPs_Noto", "Noto Sans JP", sans-serif;
}

.w640 {
  max-width: 640px;
}

/* 商品ラインナップ リスト
	--------------------------------------- */
  #subscription .product_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0;
  }
  #subscription .aui_product_box {
    width: calc( 100% / 2 - 48 / 960 * var(--contents_width) / 2);
    margin-top: calc( 48 / 960 * var(--contents_width) + 10px);
  }
  #subscription .aui_product_box:not(:nth-child(n+3)) {
    margin-top: 0;
  }
  #subscription .aui_product_box .aui_product_imgbox {
    background-color: #ffffff;
    border: 1px solid #dddddd;
  }
  #subscription .aui_product_box .aui_product_brand {
    display: block;
    padding: 5% 0 3%;
    text-align: left;
  }
  #subscription .aui_product_box .aui_product_brand img {
    max-height:20px
  }
  #subscription .aui_product_box .aui_product_name {
    font-size: calc(30 / 960 * var(--contents_width));
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 6% 0;
    text-align: left;
  }
  
  #subscription .aui_product_box .aui_product_price {
    color: #222;
      font-weight: bold;
      font-size: calc(30 / 960 * var(--contents_width));
      font-family: Roboto;
  }
  