@charset "utf-8";
/* CSS Document */

:root {
	--gy: #ccc;
	--org: #eb963b;
	--txt_org: #e98c29;
	--org_bg: #f6cfa6;
	--ic_ac: #dba900;
	--ic_na: #668e25;
	--ic_hi: #694e31;
	--ic_fd: #ba0118;
	--cafe_c: #00afcc;
}
.campaign .autumn_iwate_mv.jretravel-image {
	width: 84%;
	margin-inline: auto;
}
.feature .section h2.iwate_title {
	font-size: 2.0rem;
}
.feature .section h2.iwate_title span {
	color: var(--txt_org);
}
.ttl_w_ntohoku {
	text-align: center;
}
.ttl_w_ntohoku p {
	background-color: var(--org);
	color: #fff;
	border-radius: 2rem;
	font-weight: bold;
	display: inline-block;
	padding: 4px 10px;
}
.ttl_w_ntohoku p .youbi {
	font-size: 1.2rem;
	padding-left: 4px;
}
.autumn_iwate_bg {
	background-color: var(--org_bg);
}
.autumn_iwate .clm_2 {
	max-width: 1000px;
	width: 100%;
	display: flex;
	justify-content: flex-start;
}
.clm_2>div:has(.box_clm2) {
	/* width: 49% !important; */
	width: calc((1000px - 30px) /2) !important;
}
/* .autumn_iwate .clm_2 .aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--default--6:first-child {
	margin-right: 20px;
} */
/* .autumn_iwate .aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--offset--default--0:has(.box_clm2):first-child {
	padding-right: 20px;
} */
.autumn_iwate .clm_2 .area_name,
.autumn_iwate .clm_3 .area_name {
	background-color: transparent;
	color: #222;
	position: relative;
	padding-left: 15px;
	font-size: 1.3rem;
}
.autumn_iwate .area_titlebox>.area_name {
	padding-top: 10px;
	padding-bottom: 10px;
}
.autumn_iwate .clm_2 .area_name::before,
.autumn_iwate .clm_3 .area_name::before {
	color: var(--org);
	content: "";
	position: absolute;
	top: -2px;
	bottom: 0;
	margin: auto;
	left: 0;
	width: .9em;
	height: .9em;
	border: .30em solid currentColor;
	border-radius: 100% 100% 0 100%;
	background: radial-gradient(circle at 50% 50%, transparent 70%, currentColor 70%) no-repeat;
	box-sizing: border-box;
	transform: rotate(45deg);
}
.autumn_iwate .clm_2 .area_titlebox {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
}
.autumn_iwate .clm_3 .area_titlebox {
	display: flex;
	margin-bottom: 0;
	flex-wrap: wrap;
	justify-content: space-between;
}
.area_ic {
	display: inline-flex;
	font-weight: bold;
	color: #fff;
	align-items: center;
	gap: 0 10px;
}
.autumn_iwate .sightseeing .text {
	padding-top: 14px;
}
.clm_3 .area_ic {
	gap: 0 6px;
	font-size: 1.3rem;
}
.ic_item {
	padding: 0 6px;
}
.area_ic .activity {
	background-color: var(--ic_ac);
}
.area_ic .natural {
	background-color: var(--ic_na);
}
.area_ic .history {
	background-color: var(--ic_hi);
}
.area_ic .food {
	background-color: var(--ic_fd);
}
h3.title_name {
	background-color: var(--org_bg);
	padding: 6px 0 6px 6px;
	/* font-size: 2.2rem; */
	font-size: 1.8rem;
}
.autumn_iwate .sightseeing dl {
	background-color: transparent;
	padding: 4px 0 10px;
}
.autumn_iwate .access_box {
	border-top: dashed 1px var(--org);
}
.autumn_iwate .wrap_btn a {
	color: #fff;
}
.autumn_iwate .btn_inner {
	border: solid 2px var(--org);
	background-color: var(--org);
	display: block;
	border-radius: 6px;
	line-height: 1.4;
	padding: 6px 0;
	font-weight: bold;
	text-align: center;
	position: relative;
}
.autumn_iwate .btn_inner::after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
.autumn_iwate .btn_inner:hover {
	border: solid 2px var(--org);
	background-color: #fff;
	color: var(--txt_org);
	/* opacity: .7; */
	text-decoration: none;
	transition: all .4s;
}
.autumn_iwate .btn_inner:hover::after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid var(--txt_org);
	border-right: 2px solid var(--txt_org);
	transform: rotate(45deg);
}
/*----- 2カラム -----*/
/* .clm_3 div:has(.box_clm3:not(:last-child)) {
	margin-right: 10px;
} */
/* .autumn_iwate .clm_3 div:has(.box_clm3) {
	width: calc((100% - 40px) / 3) !important;
} */
/* .autumn_iwate .clm_3 .inbox_l {
	margin: 0 16px 2em 0;
} */
/* .autumn_iwate .clm_3 .inbox_c {
	margin: 0 8px 2em 8px;
} */
/* .autumn_iwate .clm_3 .inbox_r {
	margin: 0 0 2em 16px;
} */
.autumn_iwate .clm_3 div:has(.box_clm3):last-child {
	margin-right: 0px;
}

div:has(> .box_clm3) {
	width: calc((100% - 20px* 2) / 3) !important;
	display: flex !important;
	flex-direction: column;
}
.autumn_iwate .box_clm3 {
	/* margin: 0 0 2em 16px; */
	display: flex;
	flex-direction: column;
	flex: 1 auto;
}

/*-----  -----*/
.area_container {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 20px;
	justify-content: flex-start;
}
.area_container.clm_2 {
	gap: 0px 30px;
}

.area_box {
	margin: 0 0;
	display: flex;
	flex-direction: column;
	flex: 1 auto;
}
.area_box .freehtml:has(#text_grow_box) {
	/* display: flex; */
	flex-grow: 1;
}
/* .area_box #text_grow_box {
	flex: 1 auto;
} */
.area_container.aem-Grid::before, .area_container.aem-Grid::after {
	content: none;
}


/*----- 限定プラン -----*/
.autumn_iwate_plan .plan_bg .wrap_btn {
	display: flex;
	flex-wrap: wrap;
	gap: 20px
}
.autumn_iwate_plan .plan_bg .wrap_btn .w_light {
	width: calc((100% - 40px) / 3) !important;
}
.autumn_iwate_plan .btn_inner {
	border: solid 2px var(--org);
	background-color: #fff;
	display: block;
	border-radius: 6px;
	line-height: 1.4;
	padding: 6px 0;
	font-weight: bold;
	text-align: center;
	position: relative;
}
.autumn_iwate_plan .wrap_btn a {
	color: var(--txt_org);
}
.autumn_iwate_plan .btn_inner::after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid var(--txt_org);
	border-right: 2px solid var(--txt_org);
	transform: rotate(45deg);
}
.autumn_iwate_plan .btn_inner:hover {
	background-color: var(--org);
	border: solid 2px var(--org);
	color: #fff;
	opacity: 1;
}
.autumn_iwate_plan .btn_inner:hover:after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
/*----- カフェ -----*/
.iwate_cafe {
	background-color: #fff;
	border-radius: 10px;
	padding: 10px 30px;
}
.wrap_iwate_cafe {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.iwate_cafe .feature .section h3 {
	background-color: transparent;
	border: none;
	text-align: center;
	color: #5d3e19;
	font-size: 2.8rem;
}
.iwate_cafe .feature .section.cafe_ttl {
	position: relative;
}
.iwate_cafe .feature .section.cafe_ttl::before {
	position: absolute;
	content: "";
	background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_03.png) no-repeat;
	background-size: contain;
	width: 571px;
	height: 33px;
	display: inline-block;
	left: calc(50% - (571px / 2));
	bottom: -64px;
}
.iwate_cafe .feature .section.cafe_ttl::after {
	position: absolute;
	content: "";
	background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_04.png) no-repeat;
	background-size: contain;
	width: 136px;
	height: 14px;
	display: inline-block;
	left: calc(50% - (136px / 2));
	bottom: -18px;
}
.wrap_iwate_cafe .cafe_items {
	display: flex;
	gap: 20px;
}
.wrap_iwate_cafe .img_gourmet_n {
	width: 40%;
	flex-shrink: 0;
}
.wrap_iwate_cafe .box_text .tx_area {
	font-size: 1.3rem;
	/* font-weight: bold; */
	border: 1px solid;
	border-radius: 2rem;
	padding: 0 10px;
	margin-left: -3px;
	display: inline-block;
	color: #00afcc;
	border-color: #00afcc;
	background-color: #fff;
}
.wrap_iwate_cafe .box_details p {
	padding-top: 10px;
}
.wrap_iwate_cafe .ttl_gourmet_n {
	font-size: 1.8rem;
	font-weight: bold;
}
.wrap_iwate_cafe .tx_u_line {
	border-bottom: dashed 1px #222;
	display: inline;
}
.wrap_iwate_cafe .wrap_btn {
	width: 80%;
	margin-inline: auto;
}
.wrap_iwate_cafe .w_light {
	width: 100%;
}
.wrap_iwate_cafe .wrap_btn a {
	display: block;
	background-color: var(--org);
	border: solid 1px var(--org);
	position: relative;
	padding: 8px 10px;
	text-align: center;
	color: #fff;
	border-radius: 6px;
}
.wrap_iwate_cafe .wrap_btn a:hover {
	background-color: #fff;
	border: solid 1px var(--org);
	color: var(--txt_org);
	transition: all .4s;
	text-decoration: none;
}
.wrap_iwate_cafe .wrap_btn a::after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
}
.wrap_iwate_cafe .wrap_btn a:hover:after {
	content: "";
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid var(--txt_org);
	border-right: 2px solid var(--txt_org);
	transform: rotate(45deg);
}
/* .wrap_iwate_cafe .img_gourmet_n img {
  width: 100%;
  height: auto;
  display: block;
	aspect-ratio: 376 / 267;
	object-fit: cover;
} */
.iwate_cafe .cmp-text {
	position: relative;
	text-align: center;
	margin: 68px 0 60px;
}
.iwate_cafe .feature .section.cafe_ttl h3::before,
.iwate_cafe .feature .section.cafe_ttl h3::after {
	content: "";
	position: absolute;
	display: block;
}
.iwate_cafe .feature .section.cafe_ttl h3::before {
	background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_01.png) no-repeat;
	width: 155px;
	height: 109px;
	background-size: contain;
	top: 26px;
	left: 4px
}
.iwate_cafe .feature .section.cafe_ttl h3::after {
	background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_02.jpg) no-repeat;
	background-size: contain;
	width: 142px;
	height: 142px;
	right: 8px;
	background-size: contain;
	border-radius: 50%;
	bottom: -177px;
}
/*----- 東北ページ -----*/
.autumn_iwate_tohoku .content_box {
	border: solid 2px #222;
	border-radius: 10px;
}
.autumn_iwate_tohoku .cmp-text p {
	/* border-bottom: 1px dashed #222; */
	display: inline-block;
	text-decoration: underline;
	text-decoration-style: dashed;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}
.autumn_iwate_tohoku .autumn_iwate_plan {
	width: 60%;
	margin-inline: auto;
}
.autumn_iwate_tohoku .autumn_iwate_plan a.btn_inner {
	color: #fff;
	background-color: var(--org);
	border: 2px solid var(--org);
	text-decoration: none;
	transition: all .4s;
	margin-top: 26px;
}
.autumn_iwate_tohoku .autumn_iwate_plan .btn_inner:hover {
	background-color: #fff;
	border: solid 2px var(--txt_org);
	color: var(--txt_org);
	opacity: 1;
}
.autumn_iwate_tohoku .feature .section h2.iwate_title {
	margin: 0 auto;
}
.autumn_iwate_tohoku .ttl_w_ntohoku .tx_date {
	margin: 0 auto;
}
.autumn_iwate_tohoku .ttl_w_ntohoku p {
	background-color: var(--org);
	color: #fff;
	border-radius: 2rem;
	font-weight: bold;
	display: inline-block;
	padding: 4px 10px;
}
.autumn_iwate_tohoku .autumn_iwate_plan .btn_inner::after {
	border-color: #fff;
	right: 14px;
}
.autumn_iwate_tohoku .autumn_iwate_plan .btn_inner:hover:after {
	border-color: var(--txt_org);
	right: 14px;
}
/* ----------PCのみ---------- */
@media screen and (min-width: 768px) {
	.br_sp {
		display: none;
	}
	.clm_2>div:has(.box_clm2):first-child {
		margin-right: 30px;
	}
	/* .autumn_iwate .clm_3 div:has(.box_clm3) {
		margin-right: 20px;
	} */
	/*----- 商品コンポーネント -----*/
	.area_container.clm_2 div:has(> .area_box) {
		display: flex !important;
		flex-direction: column;
		width: calc((100% - 30px* 1) / 2) !important;
	}
	.area_container.clm_3 div:has(> .area_box) {
		display: flex !important;
		flex-direction: column;
		width: calc((100% - 20px* 2) / 3) !important;
	}
}
/* ----------SPのみ---------- */
@media screen and (max-width: 767px) {
	.autumn_iwate .clm_2 {
		padding: 0 10px;
		flex-direction: column;
	}
	.clm_2>div:has(.box_clm2) {
		width: 100% !important;
	}
	.autumn_iwate .clm_2 .area_titlebox,
	.autumn_iwate .clm_3 .area_titlebox {
		width: 100%;
	}
	/*----- 2カラム -----*/
	.autumn_iwate .clm_3 {
		padding: 0 10px;
	}
	.autumn_iwate .clm_3 .inbox_l,
	.autumn_iwate .clm_3 .inbox_c,
	.autumn_iwate .clm_3 .inbox_r {
		margin: 0;
	}
	.autumn_iwate .clm_3 div:has(.box_clm3) {
		width: 100% !important;
	}
	.autumn_iwate_plan .plan_bg .wrap_btn .w_light {
		/* padding: 0 10px; */
		width: calc((100% - 10px) / 2) !important;
		font-size: 1.2rem;
	}
	.autumn_iwate_plan .plan_bg .wrap_btn {
		padding: 0 7px;
		gap: 7px
	}
	.autumn_iwate_plan .btn_inner::after {
		right: 6px;
	}
	.autumn_iwate_plan .top .section h2 {
		margin: 0 auto;
	}
	.area_container.clm_3 .aem-Grid.aem-Grid--phone--12>.aem-GridColumn.aem-GridColumn--offset--phone--6,
	.area_container.clm_3 .aem-Grid.aem-Grid--12>.aem-GridColumn.aem-GridColumn--offset--phone--6 {
		margin-left: 0;
	}
	.area_container.clm_3 div:has(> .area_box) {
		width: 100% !important;
		margin-left: 0 !important;
	}
	.area_container {
		gap: 40px 0;
	}
	/*----- カフェ -----*/
	.autumn_iwate_bg {
		padding: 0 10px;
	}
	.wrap_iwate_cafe {
		gap: 30px
	}
	.iwate_cafe {
		padding: 20px 10px;
	}
	.wrap_iwate_cafe .cafe_items {
		flex-direction: column;
		gap: 10px;
	}
	.iwate_cafe .feature .section.cafe_ttl::before {
		width: 80%;
		/* left: calc(50% -(2.95rem / 2)); */
		left: 10%;
	}
	.iwate_cafe .cmp-text {
		width: 100%;
		margin: 60px 0 10px;
	}
	.iwate_cafe .cmp-text::before,
	.iwate_cafe .cmp-text::after {
		content: none;
	}
	.iwate_cafe .feature .section.cafe_ttl h3 {
		position: relative;
		font-size: 2.4rem;
	}
	.iwate_cafe .feature .section.cafe_ttl h3::before {
		content: "";
		position: absolute;
		background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_01.png) no-repeat;
		background-size: contain;
		width: 68px;
		height: 48px;
		display: block;
		top: -50%;
		bottom: 0;
		left: 2%;
	}
	.iwate_cafe .feature .section.cafe_ttl h3::after {
		content: "";
		position: absolute;
		background: url(/content/dam/jretravel/site/page/tohoku/images/touhokudc/img_iwatecafe_02.jpg) no-repeat;
		background-size: contain;
		width: 60px;
		height: 60px;
		display: block;
		top: -18%;
		bottom: 0;
		border-radius: 50%;
		right: 2%;
	}
	.iwate_cafe .feature .section.cafe_ttl::after {
		width: 110px;
		height: 12px;
		left: 35%;
	}
	.wrap_iwate_cafe .img_gourmet_n {
		width: 100%;
		margin-top: 10px;
	}
	.wrap_iwate_cafe .wrap_btn {
		width: 100%;
		margin-top: 10px;
	}
	.wrap_iwate_cafe .btn.w_light {
		width: 100%;
		padding: 0;
	}
	.wrap_iwate_cafe .box_details p {
		padding-top: 6px;
	}
	/*----- 東北ページ -----*/
	.autumn_iwate_tohoku .box_2 {
		display: none;
	}
	.autumn_iwate_tohoku .content_box {
		display: flex;
		flex-wrap: wrap;
		gap: 6px;
		align-items: center;
	}
	.autumn_iwate_tohoku .aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--offset--default--0:has(.box_1) {
		width: 100%;
	}
	.autumn_iwate_tohoku .aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--offset--default--0:has(.box_2) {
		width: 38%;
	}
	.autumn_iwate_tohoku .aem-Grid.aem-Grid--default--12>.aem-GridColumn.aem-GridColumn--offset--default--0:has(.box_3) {
		width: 100%;
	}
	.autumn_iwate_tohoku .box_3 .cmp-text {
		width: 100%;
	}
	.autumn_iwate_tohoku .feature .section h2.iwate_title {
		font-size: 1.6rem;
		text-align: center;
	}
	.autumn_iwate_tohoku .ttl_w_ntohoku .youbi:first-child {
		margin-left: 0;
	}
	.autumn_iwate_tohoku .ttl_w_ntohoku .tx_date .youbi {
		font-size: 1.0rem;
	}
	.autumn_iwate_tohoku .ttl_w_ntohoku .tx_date {
		font-size: 1.2rem;
		width: 100%;
	}
	.autumn_iwate_tohoku .autumn_iwate_plan {
		width: 80%;
	}
}