@charset "utf-8";
.contents{
	overflow:visible;
}

#page-top {
	display: block;
	position: fixed;
	bottom: 2%;
	right: 0;
	z-index: 997;
}
#page-top a {
	display: block;
}

#page-top a:hover {
	text-decoration: none;
}

#page-top img{
	width: 75%;
}

/* 定期購入 2026/07 */
#teiki {
	color:#333;
	font-family: "Noto Sans JP", sans-serif;
	width: 100%;
	max-width: 755px;
	margin:auto;
	line-height: 1.3;
	letter-spacing: .1em;
	.tbl{
		display:table;
		width:100%;
	}
	.tbl .cell{
		display:table-cell;
		vertical-align:top;
	}

	p{
		font-size: 3.4375vw;
		line-height: 2.5;
		font-weight: 500;
		letter-spacing: 2px;
	}

	a{
		color: #595757;
		text-decoration: none;
	}

	/*ヘッダー*/
	.head_area{
		margin:0 0 20px 0;
		text-align:center;
	}

	/* メイン */
	.header_box {
		position: relative;
	}

	.header {

	}

 	img{
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.main_btn {
		position: absolute;
		font-size: min(4.6vw, 22px);
		font-weight: 700;
		color: #fff;
		text-align: center;
		margin: 0 auto;
		padding: 4%;
		background: #0b3261;
		text-align: center;
		display: block;
		letter-spacing: 0.18em;
		width: 77%;
		border-radius: 0.4em;
		bottom: -7%;
		left: 0;
		right: 0;
		&::before {
			content: "";
			position: absolute;
			right: 5%;
			bottom: 44%;
			width: 5%;
			height: 2px;
			background: #fff;
		}
		&::after {
			content: "";
			position: absolute;
			right: 4.7%;
			bottom: 43.3%;
			width: 3%;
			height: 2px;
			background: #fff;
			transform: rotate(40deg);
			transform-origin: right center;
		}
	}

	/* Qietoの定期便が選ばれる理由 */
	.feature_ttl {
		width: 75%;
		margin: 7% auto 0;
	}

	.reason {
		background: #eaedef;
		padding: 8% 0 9%;
	}

	.feature_list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 3%;
		width: 85%;
		list-style: none;
		padding: 0;
		margin: 7% auto 0;
	}

	.feature_item--large {
		grid-column: 1 / -1;
	}

	.feature_item{
		display: block;
	}

	.feature_item img{
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.reason_text {
		font-size: min(3.6vw, 18px);
		font-weight: 700;
		color: #333333;
		text-align: center;
		margin-top: 4%;
	}

	.btn_white {
		border: solid 3px #0b3261;
		font-size: min(4.5vw, 22px);
		font-weight: 700;
		color: #0b3261;
		text-align: center;
		margin: 2% auto 0;
		padding: 4%;
		border-radius: 2em;
		background: #fff;
		text-align: center;
		display: block;
		letter-spacing: .05em;
		width: 75%;
	}

	.btn_blue {
		border: solid 3px #0b3261;
		font-size: min(4.5vw, 24px);
		font-weight: 700;
		color: #fff;
		text-align: center;
		margin: 5% auto 0;
		padding: 3%;
		border-radius: 2em;
		background: #0b3261;
		text-align: center;
		display: block;
		letter-spacing: .15em;
		width: 80%;
	}

	
	/* 遷移ボタンのエリア */
	.change_area {
		background: #0b3261;
		padding: 8% 0;
	}
	.change_list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 3%;
		width: 85%;
		list-style: none;
		padding: 0;
		margin: 5% auto 0;
	}
	.change_ttl {
		font-size: min(5.3vw, 25.5px);
		color: #ffffff;
		text-align: center;
		letter-spacing: .1em;
		line-height: 1.5;
	}

	.change_item{
		display: block;
	}

	.change_item img{
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.step_text {
		font-size: min(4.4vw, 21px);;
		font-weight: 700;
		color: #595757;
		text-align: center;
		margin-top: 2%;
	}
	
	/* 遷移ボタンのエリア */
	.btn_area {
		background: #0b3261;
		padding: 9% 0;
	}
	.btn_ttl {
		width: 82%;
		margin: 2% auto 0;
	}
	.btn_howto {
		border: solid 3px #0b3261;
		font-size: min(4.3vw, 22px);
		font-weight: 700;
		color: #fff;
		text-align: center;
		margin: 2% auto 0;
		padding: 3%;
		background: #0b3261;
		text-align: center;
		display: block;
		letter-spacing: 0.08em;
		width: 88%;
		border-radius: 2em;
	}
	.btn_howto.last {
		margin: 5% auto 0;
	}
	/* 定期便対象商品 */
	.target_item_area {

	}

	.target_item_ttl {
		font-size: min(5.1vw, 25.5px);
		color: #0b3261;
		text-align: center;
		margin: 8% 0 0;
		letter-spacing: .1em;
	}

	.cat_links {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 85%;
		margin: 6% auto 0;
	}

	.cat_links li{
		width: calc((100% - 11%) / 3);
	}

	.cat_links a {
		position: relative;
		display: block;
		padding: 0.5em 0 1.5em;
		border-radius: 5px;
		background-color: #0b3261;
		color: #fff;
		font-size: min(3.475vw, 18px);
		font-weight: bold;
		text-align: center;
		line-height: 1.5;
		letter-spacing: .2em;
		&::before{
			content: "";
			position: absolute;
			left: 0;
			right: 0;
			bottom: 25%;
			margin: 0 auto;
			width: 8px;
			height: 8px;
			border-top: 2px solid #fff;
			border-right: 2px solid #fff;
			-webkit-transform: rotate(45deg);
			transform: rotate(135deg);
		}
	}

	.target_item_wrap {
		width: 90%;
		margin: 0 auto;
	}

	.target_item_cate{
		font-size: min(4vw, 21.5px);
		font-weight: 700;
		text-align: center;
		margin: 15% 0 0;
		letter-spacing: .1em;
		color: #333;
		span{
			padding: 1% 5%;
			border: solid 1px #333;
		}
	}
/* 
	.cate_1day {
		color: #257fcb;
	}

	.cate_2week {
		color: #11b6ca;
	}

	.cate_color {
		color: #fc84a6;
	} */

	.target_item_inner {
		width: 95%;
		margin: 3% auto 0;
	}
	.target_item {
		margin-top: 10%;
		padding: 5% 7%;
		border: solid .2em #ccc;
	}
	.target_item + .target_item {
		margin-top: 5%;
	}
	/* .border_1ba {
		border: solid .3em #257fcb;
	}

	.border_2w {
		border: solid .3em #11b6ca;
	}

	.border_cba {
		border: solid .3em #fc84a6;
	} */
	.target_item_comment {
		font-size: min(2.3vw, 11px);
		text-align: center;
		margin: 2% 0 0;
	}

	/* .bgcolor_1ba {
		background-color: #257fcb !important;
	}
	.bgcolor_2w {
		background-color: #11b6ca !important;
	}
	.bgcolor_cba {
		background-color: #fc84a6 !important;
	}
	.ls_m{
		letter-spacing: 0.1em!important;
	} */

	.sub_goods_imgiconwrap {
		position: relative;
		width: auto;
		height: auto;
		margin: 0 auto 3%;
		padding: 0;
	}

	.sub_goods_specwrap {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.sub_goods_img {
		width: 32%;
	}

	.sub_goods_specwrap_inner {
		display: block;
		width: 60%;
	}

	.sub_goods_inner_top {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: auto;
		line-height: 1;
	}

	.sub_goods_name {
		font-size: min(3.7vw, 16.7px);
		font-weight: 700;
		text-align: center;
		letter-spacing: .1em;
		line-height: 1.3;
	}

	.sub_goods_box {
		font-size: min(2.3vw, 11px);
		font-weight: 700;
		border-radius: 0;
		align-items: center;
		padding: 1% 2%;
		display: flex;
		letter-spacing: 0.02em;
		color: #333333;
		border: solid 1px #333333;
		/* &.cate_1day {
			color: #257fcb;
			border: solid 1px #257fcb;
		}
		&.cate_2week {
			color: #11b6ca;
			border: solid 1px #11b6ca;
		}
		&.cate_color {
			color: #fc84a6;
			border: solid 1px #fc84a6;
		} */
	}

	.list_btn_yo{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 5%;
		width: auto;
		margin: 7% auto 0;
		&.week2{
			grid-template-columns: repeat(1, 1fr);
		}
	}

	.brand_logo{
		display: block;
		width: auto;
		font-size: min(3.6vw, 18px);
		font-weight: 700;
		color: #333333;
	}

	.goods_img_isize {
		width: 85%;
		display: block;
		margin: 5% auto 0;
	}

	.goods_specwrap {
		width: auto;
	}

	.tab3_li_txt{
		font-size: min(2.8421vw, 12px);
		line-height: 1.5;
		font-weight: 500;
		letter-spacing: 1px;
		margin: 4% auto 0;
		max-width: 600px;
		color: #595757;
	}

	.normal_price{
		margin: 2% auto 0;
		font-size: min(2.6vw, 12px);
		font-weight: 500;
		line-height: 1.4;
		/* text-decoration: line-through; */
		letter-spacing: 0.01em;
		color: #595757;
	}

	.special_price_title{
		width: max-content;
		margin: 0 4%;
		padding: 0.4em;
		border: 1px solid currentColor;
		color: #e73656;
		font-weight: bold;
		font-size: min(2.8421vw, 14px);
		line-height: 1;
		letter-spacing: 0.06em;
	}

	.special_price {
		display: block;
		text-align: center;
		&.price_2week {

		}
	}
	.price_2week{
		display: flex;
		justify-content: space-evenly;
		align-items: center;
	}
	.price_2week_inner{
		width: 34%;
		margin: 0 8% 0 0;
	}

	.tab3_list_btn {
		position: relative;
		color: #fff;
		display: block;
		width: auto;
		margin: 5% 0 0;
		text-align: center;
		border-radius: 0em;
		padding: 10% 0;
		font-size: min(2.5vw, 12px);
		font-weight: 700;
		line-height: 1.7;
		background-color: #555 !important;
		span {
			font-size: min(2.3vw, 10px);
		}
		&.btn_2week{
			width: 47.5%;
			padding: 4.8% 0;
		}
		&::before{
			content: "";
			position: absolute;
			right: 10%;
			top: 44%;
			width: 5px;
			height: 5px;
			border-top: 2px solid #fff;
			border-right: 2px solid #fff;
			-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
		}
	}

	.sub_price {
		color: #e73656;
		font-size: min(4.1vw, 18px);
		font-weight: bold;
		line-height: 1.4;
		letter-spacing: 0;
		text-align: center;
	}

	.special_price .price {
		font-weight: 500;
		font-size: min(3.7vw, 15px);
		color: #e73656;
		margin: 5% 0 0;
	}

	.special_price .sm_devide {
		font-size: min(3.7vw, 18px);
	}

	.special_price_text {
		font-weight: 700;
		font-size: min(2.2vw, 11px);
		color: #e73656;
		padding: 2% 0 3%;
		letter-spacing: 0;
		border: .05em solid #e73656;
	}

	.special_discount {
		position: relative;
		color: #e73656;
		font-weight: 500;
		font-size: min(2.8421vw, 12px);
		line-height: 1.8;
		letter-spacing: 0.06em;
	}
	.tab3_komoji{
		font-size: min(2.8421vw, 14px);
		text-align: center;
		font-weight: 500;
		letter-spacing: 2px;
		display: block;
		margin-top: 2%;
		color: #595757;
	}

	/* お申し込みは4ステップ */
	.subsc_area {
		background: #eaedef;
		padding: 8% 0 ;
	}
	.subsc_ttl {
		font-size: min(5.3vw, 26.5px);
		color: #0b3261;
		text-align: center;
	}

	/* ポイント利用の設定方法 */
	.point_text {
		font-size: min(4vw, 20px);
		font-weight: 700;
		color: #fcf276;
		text-align: center;
		line-height: 1.3;
	}
	.point_area {
		background: #eaedef;
		padding: 8% 0 10%;
	}
	.point_ttl {
		font-size: min(5.3vw, 26.5px);
		color: #0b3261;
		text-align: center;
	}

	/* FAQ */
	.faq_area {
		background: #fff;
		padding: 8% 0 6%;
	}
	.faq_ttl {
		font-size: min(5.3vw, 26.5px);
		color: #0b3261;
		text-align: center;
	}
	.faq_text {
		font-size: min(4vw, 20px);
		font-weight: 700;
		color: #333;
		text-align: center;
		margin-top: 3%;
	}

	/*タブ*/

	.tab_subttl{
		font-size: 5.625vw;
		line-height: 2.5;
		font-weight: bold;
		letter-spacing: 2px;
		color: #07bea9;
	}
	.yellow_line{
		background: linear-gradient(transparent 50%, #fcf276 50%);
	}

	.futomoji{
		font-weight: bold;
	}

	.tab1_img{
		margin: 6% auto 10%;
		width: 63%;
	}

	.tab_subtxt{
		line-height: 2;
		text-align: left;
	}

	.hassou_img{
		margin: 15% 0 20% 5%;
		width: 80%;
	}

	.li_gr{
		border: solid 2px #128da3 !important;
	}

	.new_icon{
		position: absolute;
		left: 6%;
		width: 24%;
		top: 4%;
	}

	.tab3_list_ma{
		margin-right: 4%;
	}

	.set_tabs .brand_logo{
		display: block;
		/*margin-left: 8%;*/
		width: 50%;
		/*margin: 0 auto 10%;*/
	}

	.syouhin_img{
		margin: 4% auto;
		width: 70%;
		max-width: 640px;
	}

	.tab3_list_btn img{
		margin: 4% auto 0;
	}

	/* 箱セットのタブ切り替え */
	.set_tabs {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 2% auto 10%;
	}
	.set_tab_item {
		order: -1;
		position: relative;
		width: 48.4%;
		padding: 1% 0;
		border: solid .2em #fc84a6;
		background-color: #ffffff;
		font-size: min(2.736vw, 16px);
		font-weight: 700;
		border-radius: 0.3em;
		text-align: center;
		color: #fc84a6;
		line-height: 1.5;
		letter-spacing: .05em;
		display: flex;
		align-items: center;justify-content: center;
	}

	.set_tab_item img{
		display: block;
		max-width: 100%;
		width: 50%;
		margin: 0 auto;
	}

	.set_tab_item img.long{
		display: block;
		max-width: 100%;
		width: 80%;
		margin: 0 auto;
	}

	.set_tabs input:checked + .set_tab_item {
		background-color: #fc84a6;
		color: #fff;
	}

	.set_tabs input:not(:checked) + .set_tab_item:hover {
		opacity: 0.75;
		cursor: pointer;
	}
	.set_tab_item .text_large {
		font-size: 1.4em;
	}
	input[name="set_tab_item"] {
		display: none;
	}
	.set_tab_content {
		display: none;
		width: 100%;
		/* padding: 5% 0 0; */
		clear: both;
		overflow: hidden;
	}
	/*選択されているタブのコンテンツのみを表示*/
	#set6:checked ~ #set6_content,
	#set12:checked ~ #set12_content {
		display: block;
	}

	/* 横長商品ボックス */
	.item_h_box {
		display: flex;
		align-items: center;
		position: relative;
		width: 100%;
		margin-bottom: 5%;
		padding: 4% 5%;
		border: solid 2px #fc84a6 !important;
		box-sizing: border-box;
	}
	.item_h_box_main {
		width: 50%;
	}
	.item_h_box_detail {
		flex: 1;
	}
	.item_h_box .new_icon {
		position: absolute;
		top: 0;
		left: 1.5%;
		width: 8.5%;
		margin-top: 1.5%;
	}
	.item_h_box .brand_logo {
		margin-bottom: 5%;
	}
	.item_h_box .syouhin_img {
		margin-bottom: 0;
	}

	.kantan_ttl{
		margin: 5% auto 10%;
	}

	.content_class {

	}
	.tab4_kantan_zone{
		margin: 5% auto 0;
		padding: 0 4% 8%;
	}

	.tab4_kantan_zone .acd-check{
		display: none;
	}

	.tab4_kantan_zone .acd-label{
		background: #fff;
		color: #000;
		letter-spacing: .12em;
		font-size: min(3.3vw, 16px);
		font-weight: 700;
		/* min-height: 70px; */
		display: flex;
		padding: 3% 0;
		position: relative;
		text-align: left;
		justify-content: flex-start;
		align-items: center;
	}

	.tab4_kantan_zone .qa {
		font-size: min(3.8vw, 26px);
		font-family: "Jost", sans-serif;
		color: #0b3261;
		padding: 0 3% 0 0;
		font-weight: 700;
	}

	.tab4_kantan_zone .acd-label::before{
		content: "";
		position: absolute;
		right: 4%;
		top: 50%;
		width: 18px;
		height: 2px;
		background: #000000;
		transform: translateY(-50%);
	}

	.tab4_kantan_zone .acd-label::after{
		content: "";
		position: absolute;
		right: calc(4% + 8px);
		top: 50%;
		width: 2px;
		height: 18px;
		background: #000000;
		transform: translateY(-50%);
		transition: opacity 0.2s;
	}
	.tab4_kantan_zone .acd-check:checked + .acd-label::after{
		opacity: 0;
	}
	.tab4_kantan_zone .acd-label{
		margin: 4% auto 0;
		padding: 0 0 4% 4%;
		border-bottom: solid 2px #eaedef;
	}
	.tab4_kantan_zone .acd-label.top{
		margin: 0 auto ;
	}
	/* .tab4_kantan_zone .acd-label:after{
		content: "";
		display: block;
		position: absolute;
		right: 4%;
		top: 45%;
		border-style: solid;
		border-width: 0.3em 0 0.3em 0.5em;
		border-color: transparent transparent transparent #ffffff;
	} */

	.tab4_kantan_zone .acd-content{
		/* border: 2px solid #07bea9; */
		background: #eaedef;
		display: block;
		height: 0;
		opacity: 0;
		padding: 0 10px;
		-webkit-transition: border-top .2s ease-out, padding-top .2s ease-out, padding-bottom .2s ease-out;
		visibility: hidden;
	}

	/* .tab4_kantan_zone .acd-check:checked + .acd-label:after{
		content: "";
		display: block;
		position: absolute;
		right: 4%;
		top: 45%;
		border-style: solid;
		border-width: 0.5em 0.3em 0 0.3em ;
		border-color: #ffffff transparent transparent transparent;
	} */

	.tab4_kantan_zone .acd-check:checked + .acd-label + .acd-content{
		display: flex;
		align-items: baseline;
		height: 100%;
		opacity: 1;
		padding: 3% 5%;
		visibility: visible;
	}

	.acd-content_txt2{
		font-size: min(3.2vw, 15px);
		font-weight: 500;
		line-height: 2;
		text-align: left;
		letter-spacing: 1px;
		margin: 0;
		color: #333;
	}

	.tab2_capture2 {
		margin: 5% auto 0;
	}

	.tab4_under{
		border-bottom: 1px solid #e73656;
		padding-bottom: 2px;
		display: inline;
		line-height: 2;
		color: #e73656;
	}

	.tab4_kantan_zone a{
		text-decoration: none;
		color: #e73656;
		border-bottom: 1px solid #e73656;
		padding-bottom: 2px;
	}

	.faq_btn{
		width: 95%;
		margin: 4% auto 6%;
		display: block;
	}

	/* キエトワンデーバナー */
	.qieto_bnr {
		font-size: 5vw;
		font-weight: bold;
	}

	.goods_imgiconwrap2 {
		position: relative;
		width: 80%;
		height: auto;
		margin: 0 auto;
		padding: 0;
	}

	.goods_imgiconwrap2 .goods_icon_type {
		position: absolute;
		right: -6%;
		top: -12%;
		width: 36%;
	}

	.goods_imgiconwrap2 .goods_icon_set{
		position: absolute;
		left: -5%;
		bottom: 4%;
		width: 29%;
	}

	.goods_imgiconwrap2 .goods_icon_option2 {
		position: absolute;
		right: 0;
		bottom: 16%;
		width: 45%;
	}

	/* スワイパー*/
	.swiper {
		width: 100%;
		margin: 5% auto 0;
	}
	.swiper-wrapper {
		width: 100%;
		margin: 0 auto;
	}
	.swiper-wrapper img{
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}
	.swiper-slide img{
		display: block;
		width: auto;
		max-width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.step-card {
		padding: 5% 4.3% 3%;
		background: #fff;
		border: .2em solid #0b3261;
		border-radius: 1.5em;
		box-sizing: border-box;
		min-height: 290px;
	}

	.step-card__step {
		position: relative;
		display: flex;
		align-items: center;
		padding: 0 3% 0 4%;
		justify-content: revert-layer;
		text-align: center;
		width: 25%;
		margin: 0 auto;
		background: #153f74;
		color: #fff;
		font-size: min(4.4vw, 21px);
		font-weight: 700;
		text-align: center;
		letter-spacing: 0.05em;
		line-height: 1.8;
	}

	.step-card__step::after {
		content: "";
		position: absolute;
		top: 0;
		right: -16%;
		width: 0;
		height: 0;
		border-top: .95em solid transparent;
		border-bottom: .95em solid transparent;
		border-left: 0.75em solid #153f74;
	}
	.step-card__title {
		color: #0b3261;
		font-size: min(4.1vw, 19px);
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
		letter-spacing: .05em;
		margin: 5% 0 0;
	}

	.step-card__text {
		margin: 5% 0 0;
		color: #595757;
		font-size: min(3vw, 14px);
		font-weight: 500;
		line-height: 2;
		letter-spacing: .05em;
		.red {
			color: #ff1c1c;
		}
	}
	.red {
		color: #ff1c1c;
	}
	.step-card__accent {
		color: #0b3261;
		font-weight: 900;
	}

}

/* モーダル */
.remodal {
	background: none;
	color: #fff !important;
	font-family: "Zen Kaku Gothic New", "YakuHanJP_Noto", "Roboto", "Noto Sans JP", sans-serif;
	padding: 1% 1% 2%;
	max-width: 400px;    
}
.sm_modal_close {
	display: inline-block;
	position: absolute;
	top: 7%;
	right: 5%;
	padding: 2px 0 0 22px;
	background-position: left center;
	background-size: contain;
	background-repeat: no-repeat;
	color: #626262;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
}

.sm_modal_close:before {
	display: none;
}

@media screen and (max-width: 720px) {
	#teiki{
		.tab4_kantan_zone .acd-label{
			min-height: 50px;
		}
	}
}