<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

/*
------------------------

plandetail

------------------------
	1. module
			1.1 container
			1.2 accordion
			1.3 tab
			1.4 label
			1.5 table
			1.6 input
			1.7 radio
			1.8 checkbox
			1.9 select
			1.10 button
			1.11 section
			1.12 status
			1.13 facility
			1.14 detail
			1.15 note
			1.16 ballon
			1.17 confirm
			1.18 plan
			1.19 carousel
			1.20 tooltip
			1.21 modal
			1.23 search
			1.25 pagination
			1.26 feature
			1.27 attention
			1.28 slick
			1.29 recommend
			1.30 information
			1.31 map
			1.32 hotel
			1.33 window
			1.34 train
			1.35 plandetail
			1.36 facility list
			1.37 plan list
			1.38 search window
			1.39 itinerary
*/
/*--------------------------------

1. module

--------------------------------*/
/*--------------------------------
1.1 container
--------------------------------*/
.f-container {
	width: 840px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
	padding-top: 30px;
	padding-bottom: 60px;
}

main.f-container {
	padding-bottom: 30px;
}

@media screen and (max-width: 759px) {

	.f-container,
	main.f-container {
		width: 100%;
		padding: 20px 16px 0;
	}
}

.f-container_flex {
	display: flex;
	justify-content: space-between;
}

.f-container_half {
	width: 470px;
}

.f-container_half+.f-container_half {
	margin-left: 10px;
}

/*--------------------------------
1.2 accordion
--------------------------------*/
.f-accordion__button {
	position: relative;
}

.f-accordion__button::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e145";
	color: var(--nta-gray1);
	font-size: 24px;
	transition: transform .2s;
}

@media screen and (max-width: 759px) {
	.f-accordion__button::before {
		font-size: 20px;
	}
}

.f-ballon.is-open .f-accordion__button::before,
.f-accordion__button.is-open::before {
	transform: rotate(-180deg);
	content: "\e15b";
}

.f-accordion-button {
	width: 100%;
	border: 1px solid #ccc;
	box-sizing: border-box;
}

.f-accordion-button__head {
	display: flex;
	align-items: center;
	height: 46px;
	padding-left: 12px;
	padding-right: 12px;
	cursor: pointer;
}

.f-accordion-button__title {
	width: calc(100% - 25px);
	font-size: 13px;
	font-weight: bold;
}

.f-accordion-button__body {
	display: none;
	position: relative;
	padding-top: 15px;
}

.f-accordion-button__body::before {
	content: "";
	position: absolute;
	top: 0;
	left: 12px;
	width: calc(100% - 24px);
	height: 1px;
	background-color: #ccc;
}

.f-accordion-button__body.is-open {
	display: flex;
}

.f-accordion-more__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 30px;
	margin: 10px auto 20px;
	font-size: 11px;
	border: 1px solid #ccc;
	border-radius: 2px;
	transition: all 0.2s ease;
	cursor: pointer;
}

.f-accordion-more__button.is-open {
	display: none;
}

.f-accordion_more__text {
	position: relative;
	padding-right: 15px;
}

.f-accordion_more__text::before {
	content: "";
	position: absolute;
	top: 1px;
	right: 4px;
	width: 1px;
	height: 9px;
	background-color: #333;
}

.f-accordion_more__text::after {
	content: "";
	position: absolute;
	top: 5px;
	right: 0;
	width: 9px;
	height: 1px;
	background-color: #333;
}

.f-accordion-more {
	display: none;
	padding-bottom: 20px;
}

/* 補足アコーディオン */
.f2-note-accordion {}

.f2-note-accordion__head {
	cursor: pointer;
}

.f2-note-accordion__head-ttl {
	display: inline-flex;
	align-items: center;
	padding: 4px 0;
	font-weight: 700;
	position: relative;
	padding-right: 24px;
}

.f2-note-accordion__head-ttl::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	color: var(--nta-gray1);
	font-size: 22px;
	transition: transform .2s;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -0.5em;
}

.f2-note-accordion__head-ttl:not(.is-open)::after {
	content: "\e145";
}

.f2-note-accordion__head-ttl.is-open::after {
	transform: rotate(-180deg);
	content: "\e15b";
}

.f2-note-accordion__content {
	display: none;
	text-align: left;
	line-height: 1.5;
	margin-top: 8px;
}

/*--------------------------------
1.3 tab
--------------------------------*/
.f-tab__menu {
	display: flex;
	gap: 0 16px;
	border-bottom: 4px solid var(--nta-blue1);
}

@media screen and (max-width: 759px) {
	.f-tab__menu {
		gap: 0 8px;
		border-bottom-width: 2px;
	}
}

.f-tab__item {
	list-style: none;
	flex: 1;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	background: var(--nta-bg-gray1);
	padding: 8px;
	height: 48px;
	color: var(--nta-gray1);
	font-size: 18px;
	font-weight: 700;
	box-sizing: border-box;
	border-radius: 4px 4px 0 0;
	cursor: pointer;
}

@media screen and (max-width: 759px) {
	.f-tab__item {
		height: 40px;
		font-size: 14px;
	}
}

.f-tab__item.is-active {
	font-weight: 700;
	background: var(--nta-blue1);
	color: #fff;
}

.f-tab__item.is-disabled {
	color: var(--nta-txt-disabled);
	cursor: default;
}

.f-tab__item-inner {
	font-weight: bold;
	text-align: center;
	line-height: 1.1;
}

.f-tab__icon {
	width: 14px;
	margin-right: 6px;
}

.f-tab__text--small {
	font-size: 11px;
	font-weight: normal;
}

.f-tab__content {
	display: none;
}

.f-tab__content.is-active {
	display: block;
}

/*--------------------------------
1.4 label
--------------------------------*/
.f-label {
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	/*gap:4px;*/
}

.f-label-type {
	display: inline-block;
	color: #fff;
	background: var(--nta-orange1);
	font-size: 12px;
	line-height: 1;
	border-radius: 2px;
	padding: 4px 8px;
	margin: 0 4px 4px 0;
}

@media screen and (max-width: 759px) {
	.f-label-type {
		font-size: 11px;
	}
}

.f-label-type--line {
	display: inline-block;
	margin-top: 10px;
	margin-right: 2px;
	padding: 6px 9px;
	font-size: 12px;
	font-weight: bold;
	color: #ccc;
	list-style: none;
	background-color: #fff;
	border: 1px dotted #ccc;
	box-sizing: border-box;
}

.f-label-type__icon-nosmorking {
	/*	position: relative;
	padding-left: 14px;
	font-weight: bold;*/
}

.f-label-type__icon-nosmorking::before {
	/*	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 12px;
	height: 12px;
	background: url("../images/icon/ico_nosmoking01.png") no-repeat 0 center;
	background-size: 12px 12px;
	transform: translateY(-50%);*/
}

.f-label-train--standard {
	display: inline-block;
	margin-top: 6px;
	margin-right: 8px;
	margin-bottom: 4px;
	padding: 2px 11px;
	font-size: 11px;
	font-weight: bold;
	background-color: #fff;
	border: 1px solid #ccc;
}

.f-label-train--green {
	display: inline-block;
	margin-top: 6px;
	margin-right: 8px;
	margin-bottom: 4px;
	padding: 2px 11px;
	font-size: 11px;
	font-weight: bold;
	color: #27a639;
	background-color: #fff;
	border: 1px solid #27a639;
}

.f-label-limited {
	display: inline-block;
	margin-right: 8px;
	padding: 4px 8px;
	font-size: 11px;
	font-weight: bold;
	color: #fff;
	background-color: var(--nta-red1);
	border-radius: 2px;
}

.f-label-left {
	display: inline-block;
	margin-top: 6px;
	margin-right: 5px;
	padding: 6px 10px;
	font-size: 12px;
	font-weight: bold;
	color: #e61b61;
	text-decoration: none;
	background-color: #ffeaf1;
	border: 1px solid #e61b61;
	box-sizing: border-box;
}

/*--------------------------------
1.5 table
--------------------------------*/
.f-table {
	width: 100%;
	border-top: 1px solid #dedede;
	border-collapse: collapse;
}

.f-table__row-head {
	background-color: #ededed;
}

.f-table__head {
	height: 40px;
	padding-left: 3px;
	padding-right: 3px;
	font-size: 12px;
	font-feature-settings: "palt";
	line-height: 1.3;
	vertical-align: middle;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-table__head:last-child {
	border-right: none;
}

.f-table__head-sort {
	height: 50px;
	font-size: 12px;
	font-feature-settings: "palt";
	line-height: 1.3;
	vertical-align: middle;
	background-color: #ededed;
	background-clip: padding-box;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-table__head-sort:last-child {
	border-right: none;
}

.f-table__head-text {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 32px;
}

.f-table__head--strong {
	display: block;
	margin-left: 7px;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
}

.f-table__data {
	padding: 10px 10px;
	line-height: 1.3;
	vertical-align: middle;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-table__data:last-child {
	border-right: none;
}

.f-table__row-body.is-checked {
	background-color: #ffeaf1;
}

.f-table__text--small {
	font-size: 9px;
}

.f-table__text--medium {
	font-size: 12px;
}

.f-table-train__cell--exsmall {
	width: 63px;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
}

.f-table-train__cell--small {
	width: 76px;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	white-space: nowrap;
}

.f-table-train__cell--medium {
	/*	width: 82px;
	font-weight: bold;
	color: #cc0d21;
	text-align: right;
	white-space: nowrap;*/
}

.f-table-train__cell--large {
	width: 98px;
	text-align: right;
}

/*--------------------------------
1.7 radio
--------------------------------*/
.f-radio__wrap {
	display: block;
}

.f-radio__wrap+.f-radio__wrap {
	margin-top: 7px;
}

input.f-radio {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.f-radio+.f-radio__label {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
	padding-left: 28px;
	line-height: 1.2;
	cursor: pointer;
	min-height: 20px;
}

@media screen and (max-width: 759px) {
	.f-radio+.f-radio__label {
		padding-left: 24px;
		min-height: 16px;
	}
}

.f-radio+.f-radio__label::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 20px;
	height: 20px;
	background-color: #fff;
	border: 1px solid var(--nta-blue1);
	border-radius: 50%;
	box-sizing: border-box;
	transform: translateY(-50%);
}

@media screen and (max-width: 759px) {
	.f-radio+.f-radio__label::before {
		width: 16px;
		height: 16px;
	}
}

.f-radio:checked+.f-radio__label::before {
	background-color: var(--nta-blue1);
	box-shadow: 0 0 0 3px #fff inset;
}

@media screen and (max-width: 759px) {
	.f-radio:checked+.f-radio__label::before {
		box-shadow: 0 0 0 2px #fff inset;
	}
}

.f-radio:disabled+.f-radio__label {
	color: var(--nta-txt-disabled);
	cursor: default;
}

.f-radio:disabled+.f-radio__label::before {
	border-color: var(--nta-txt-disabled);
}

_:-ms-input-placeholder,
:root,
.f-radio+.f-radio__label {
	min-height: auto;
	padding-top: 5px;
	padding-bottom: 5px;
}

/* ラジオボタン範囲調整 */
#JrDepStaSelect .f-table__data,
#JrArrStaSelect .f-table__data {
	padding: 0;
}

#JrDepStaSelect .f-table__data.f-table-train__cell--large,
#JrArrStaSelect .f-table__data.f-table-train__cell--large {
	padding: 10px 10px;
}

#JrDepStaSelect .f-radio+.f-radio__label,
#JrArrStaSelect .f-radio+.f-radio__label {
	padding: 10px 10px 10px 40px;
}

#JrDepStaSelect .f-radio+.f-radio__label::before,
#JrArrStaSelect .f-radio+.f-radio__label::before {
	left: 10px;
}

#JrDepStaSelect .f-radio:checked+.f-radio__label::after,
#JrArrStaSelect .f-radio:checked+.f-radio__label::after {
	left: 16px;
}

.f-plan-confirm__radio .f-radio__label {
	margin-right: 35px;
	padding-right: 0px;
}

.f-search__descirption--long label {
	margin-right: 20px;
}

.f-search__descirption--long .f-radio__label {
	margin-right: 0;
}

/* ボタン型 */
.f2-radio-btn__input {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.f2-radio-btn__label {
	cursor: pointer;
	border-radius: 3px;
	padding: 4px 12px;
	display: block;
	text-align: center;
	line-height: 1.4;
	background: var(--nta-bg-gray1);
	transition: all 0.2s;
}

.f2-radio-btn__input:checked+.f2-radio-btn__label {
	background: var(--nta-blue1);
	color: #fff;
}

/*--------------------------------
1.8 checkbox
--------------------------------*/
.f-checkbox__wrap {
	display: block;
}

.f-checkbox__wrap .f-checkbox__text {
	margin-right: 0;
}

input.f-checkbox {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.f-checkbox__text {
	display: inline-flex;
	align-items: center;
	position: relative;
	min-height: 20px;
	padding-left: 28px;
	padding-right: 4px;
	line-height: 1.2;
	box-sizing: border-box;
	cursor: pointer;
}

.f-checkbox__text::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 20px;
	height: 20px;
	background-color: #fff;
	border: 1px solid var(--nta-blue1);
	border-radius: 2px;
	box-sizing: border-box;
}

.f-checkbox__text::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e5ca";
	font-variation-settings: 'wght'500;
	color: #fff;
	font-size: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	opacity: 0;
}

@media screen and (max-width: 759px) {
	.f-checkbox__text {
		min-height: 16px;
		padding-left: 24px;
		padding-right: 4px;
	}

	.f-checkbox__text::before {
		width: 16px;
		height: 16px;
	}

	.f-checkbox__text::after {
		font-size: 16px;
	}
}

.f-checkbox:checked+.f-checkbox__text::before {
	background: var(--nta-blue1);
}

.f-checkbox:checked+.f-checkbox__text::after {
	opacity: 1;
}

.f-checkbox:disabled+.f-checkbox__text {
	color: var(--nta-txt-disabled);
	cursor: default;
}

.f-checkbox:disabled+.f-checkbox__text::before {
	border-color: var(--nta-txt-disabled);
	cursor: default;
}

.f-checkbox:checked:disabled+.f-checkbox__text::before {
	background: var(--nta-txt-disabled);
}

_:-ms-input-placeholder,
:root,
.f-checkbox__text {
	min-height: auto;
	padding-top: 5px;
	padding-bottom: 5px;
}

.f-checkbox-button__text {
	position: relative;
	padding-top: 22px;
	font-weight: bold;
	font-size: 12px;
}

.f-checkbox-button__text::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	width: 17px;
	height: 17px;
	background-color: #ccc;
	border-radius: 17px;
	transform: translateX(-50%);
}

.f-checkbox-button__text::after {
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 50%;
	width: 3px;
	height: 5px;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(40deg) translateX(-52%);
	transform: rotate(40deg) translateX(-52%);
}

.f-checkbox-button__text.is-checked {
	color: #fff;
}

.is-checked.f-checkbox-button__text::before {
	background-color: #fff;
}

.is-checked.f-checkbox-button__text::after {
	border-bottom: 2px solid #e61b61;
	border-right: 2px solid #e61b61;
}

.f-checkbox-button__text--ok,
.f-checkbox-button__text--few,
.f-checkbox-button__text--full {
	font-size: 0;
}

.f-checkbox-button__text--ok::before,
.f-checkbox-button__text--few::before,
.f-checkbox-button__text--full::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: 'wght'500;
	font-size: 24px;
}

.f-checkbox-button__text--ok:before {
	content: "\ef4a";
	color: var(--nta-blue1);
	font-variation-settings: 'wght'700;
}

.f-checkbox-button__text--few:before {
	content: "\e86b";
	color: var(--nta-yellow1);
}

.f-checkbox-button__text--full:before {
	content: "\e5cd";
	color: var(--nta-gray1);
}

/* チェックボックスの押せる範囲とポインターの範囲を合わせる */
label {
	cursor: pointer;
}

.f-checkbox__text {
	margin-right: 0;
}

#NTA_JR2_Brand label {
	margin-right: 20px;
}

.f-checkbox__wrap {
	display: inline-block;
}

/*--------------------------------
1.9 select
--------------------------------*/
.f-select__wrap {
	display: inline-flex;
	position: relative;
	height: 38px;
}

.f-select__wrap::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e5cf";
	font-size: 16px;
	color: var(--nta-gray1);
	pointer-events: none;
	z-index: 0;
	position: absolute;
	top: 50%;
	right: 4px;
	margin-top: -.5em;
}

.f-select__wrap.is-disabled {
	opacity: 0.5;
	pointer-events: none;
}

.f-select__wrap.is-error {

	.f-select {
		background: var(--nta-bg-red1);
	}
}

.f-select {
	width: 100%;
	/*min-width: 120px;*/
	height: 38px;
	padding-left: 10px;
	padding-right: 20px;
	background: #fff;
	border: 1px solid var(--nta-border-gray1);
	border-radius: 4px;
	box-sizing: border-box;
	cursor: pointer;
	appearance: none;
	color: inherit;
}

.f-select-stay-nights {
	min-width: 100px;
}

.na {
	background-color: lightgray;
}

.f-select-departure {
	width: auto;
}

.f-select::-ms-expand {
	display: none;
}

.f-select:disabled {
	background: var(--nta-bg-disabled);
	color: var(--nta-txt-disabled);
	pointer-events: none;
}

.f-select option:disabled {
	color: var(--nta-txt-disabled);
	pointer-events: none;
}

/*--------------------------------
1.10 button
--------------------------------*/
.f-button__wrap {
	display: flex;
	justify-content: space-between;
}

.f-button-reserve {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	width: 100px;
	height: 34px;
	padding-left: 0;
	padding-right: 0;
	font-size: 11px;
	color: #20208c;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #20208c;
	border-radius: 6px;
	transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 760px) {
	.f-button-reserve:hover {
		opacity: 0.6;
	}
}

.f-button-line,
.f-button-line--small {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 20px;
	border: 1px solid var(--nta-blue1);
	background: #fff;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	color: var(--nta-blue1);
	cursor: pointer;
	text-decoration: none;
}

@media screen and (max-width: 759px) {
	.f-button-line--small {
		height: 30px;
		font-size: 14px;
	}
}

@media screen and (min-width: 760px) {

	.f-button-line:hover,
	.f-button-line--small:hover {
		opacity: 0.6;
	}
}

.f-button-line--cancel {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	position: relative;
	width: 148px;
	height: 40px;
	margin-right: 30px;
	font-size: 12px;
	color: #333;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #a0a0a0;
	border-radius: 6px;
	box-shadow: 0 2px 0 #d6d6d6;
	box-sizing: border-box;
	transition: opacity 0.3s ease-out;
	cursor: pointer;
}

.f-button-line--cancel::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #20208c;
	border-right: 2px solid #20208c;
	transform: rotate(45deg) translateY(-50%);
}

@media screen and (min-width: 760px) {
	.f-button-line--cancel:hover {
		opacity: 0.6;
	}
}

.f-button-submit,
.f-button-submit--small {
	border: none;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 20px;
	background: var(--nta-blue1);
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	color: #fff;
	cursor: pointer;
	transition: filter .2s;
}

.f-button-submit--small {
	height: 30px;
	font-size: 14px;
}

@media screen and (min-width: 760px) {

	.f-button-submit:hover,
	.f-button-submit--small:hover {
		filter: brightness(110%);
	}
}

.f-button-submit.btn_reserve {
	background: var(--nta-orange1);
}

.f-button-submit__inner {
	font-weight: bold;
	text-align: center;
}

.f-button-submit__link {
	text-decoration: none;
}

.f-button-submit__text--small {
	display: block;
	margin-top: 6px;
	font-weight: bold;
	font-size: 12px;
}

.f-button-submit--long {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	position: relative;
	width: 424px;
	height: 43px;
	font-size: 16px;
	color: #fff;
	text-decoration: none;
	background-color: #e61b61;
	border: none;
	border-radius: 6px;
	box-shadow: 0 2px 0 #d6d6d6;
	box-sizing: border-box;
	transition: opacity 0.3s ease-out;
	cursor: pointer;
}

.f-button-submit--long::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 20px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg) translateY(-50%);
}

@media screen and (min-width: 760px) {
	.f-button-submit--long:hover {
		opacity: 0.6;
	}
}

.f-button-submit--half {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--nta-orange1);
	border: none;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.142857142;
	text-align: center;
	text-decoration: none;
	width: 240px;
	min-height: 48px;
	padding: 6px 10px;
	border-radius: 30px;
	box-shadow: 0 1px 2px 0 rgba(var(--nta-black1-rgb), .16);
}

@media screen and (max-width: 759px) {
	.f-button-submit--half {
		min-height: 40px;
	}
}

.f-button-cancel {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 20px;
	background: var(--nta-gray1);
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	color: #fff;
	cursor: pointer;
	transition: filter .2s;
}

@media screen and (min-width: 760px) {
	.f-button-cancel:hover {
		filter: brightness(110%);
	}
}

.f-button-back {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	font-size: 14px;
	font-weight: 700;
	border-radius: 20px;
	border: 1px solid var(--nta-blue1);
	background: #fff;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	color: var(--nta-blue1);
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

@media screen and (min-width: 760px) {
	.f-button-back:hover {
		opacity: 0.6;
	}
}

.f-button-more {
	display: flex;
	align-items: center;
	position: relative;
	width: 160px;
	height: 30px;
	padding-top: 2px;
	padding-left: 35px;
	font-size: 12px;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-shadow: 0 1px 0 #d6d6d6;
	cursor: pointer;
	transition: opacity 0.3s ease-out;
}

.f-button-more::before {
	content: "";
	position: absolute;
	top: 11px;
	left: 13px;
	width: 7px;
	height: 7px;
	border-bottom: 1px solid #20208c;
	border-right: 1px solid #20208c;
	transform: rotate(45deg) translateY(-50%);
}

@media screen and (min-width: 760px) {
	.f-button-more:hover {
		opacity: 0.5;
	}
}

.f-button-hint__wrap {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
	justify-content: space-between;
}

.f-button-hint__wrap--top {
	display: flex;
	justify-content: space-between;
}

.f-button-hint__wrap--top .f-button-hint {
	margin-top: 3px;
}

.f-search-requirement__item .f-button-hint {
	position: absolute;
	padding-left: 4px;
}

.f-button-hint {
	position: relative;
	top: 1px;
	display: inline-block;
	width: 16px;
	height: 16px;
	cursor: pointer;
	transition: opacity 0.2s ease-out;
}

.f-button-hint:hover {
	opacity: 0.6;
}

.f-button-hint__image {
	width: 100%;
}

.f-button__fixed {
	position: sticky;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 32px;
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	backface-visibility: hidden;
	overflow: hidden;
	z-index: 8;
	text-align: center;
	display: flex;
	justify-content: center;
	gap: 40px;
	box-sizing: border-box;
	transition: all .2s;
}

@media screen and (max-width: 759px) {
	.f-button__fixed {
		padding: 24px 16px;
	}
}

.f-button__fixed.is-hide {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.f-button__fixed .f-button-submit,
.f-button__fixed .f-button-cancel {
	width: auto;
	min-width: 180px;
}

.f-button__fixed .f-button-submit:only-child {
	min-width: 240px;
}

.f-button__fixed .f-button-submit--small {
	height: 40px;
	font-size: 16px;
	max-width: 400px;
	border: 1px solid var(--nta-blue1);
	background: #fff;
	color: var(--nta-blue1);
}

@media screen and (max-width: 759px) {
	.f-button__fixed .f-button-submit--small {
		height: 30px;
		font-size: 14px;
		width: auto;
		min-width: 180px;
	}
}

.f-button__fixed .f2-fixed-reserve-btn {
	width: 240px;
	font-size: 16px;
}

.f2-button__fixed-row {
	display: flex;
	align-items: center;
	justify-content: center;
}

.f2-button__fixed-note {
	margin-top: 10px;
	line-height: 1.4;
	text-align: center;
}

@media screen and (max-width: 759px) {
	.f2-button__fixed-note {
		font-size: 12px;
		text-align: left;
	}
}

/* ？ヘルプ（モーダルを開く） */
.f2-button-hint {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	transition: opacity 0.2s ease-out;
}

.f2-button-hint::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"1, "wght"500, "GRAD"0, "opsz"24;
	content: "\e887";
	font-size: 1.4em;
	color: var(--nta-gray1);
}

.f2-button-hint:hover {
	opacity: 0.6;
}

/*--------------------------------
1.11 section
--------------------------------*/
.f-section input:disabled+label {
	color: #CCCCCC;
}

.f-section__head {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding-bottom: 18px;
	font-size: 22px;
	font-weight: 700;
	text-align: center;
	min-height: 40px;
}

.f-section__head--line {
	display: flex;
	align-items: center;
	position: relative;
	padding-bottom: 16px;
	margin-bottom: 32px;
	border-bottom: 1px solid var(--nta-border-gray2);
	font-size: 22px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f-section__head {}

	.f-section__head--line {
		display: block;
		padding-bottom: 16px;
		margin-bottom: 0;
		font-size: 18px;
		text-align: left;
		border-bottom: none;
	}
}

.f-section__title {
	font-size: 22px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f-section__title {
		font-size: 18px;
	}
}

.f-section__button {
	position: absolute;
	top: 24px;
	right: 10px;
}

.f-section__button-top {
	padding-bottom: 30px;
}

.f-section__text--important {
	font-weight: 700;
	color: var(--nta-red1);
	line-height: 1.5;
}

.f-section__text--important-short {
	display: inline-block;
	padding: 10px 18px;
	font-size: 16px;
	font-weight: bold;
	color: #cc0d21;
	text-align: center;
	border: 1px solid #cc0d21;
}

.f-section__button-bottom {
	padding-top: 50px;
	border-top: 1px solid #dedede;
}

.f-section__button-bottom&gt;.f-button-back {
	margin-top: 80px;
	margin-bottom: 14px;
}

.f-section__text--attention {
	font-weight: bold;
	color: #cc0d21;
	text-align: center;
}

.f-section__link {
	font-weight: bold;
	color: #cc0d21;
	text-decoration: underline;
}

/* hover追加 */
.f-section__link:hover {
	opacity: 0.6;
}

.f-section__inner--small {
	width: 310px;
	text-align: right;
}

.f-section__name {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f-section__name {
		font-size: 18px;
	}
}

.f-section__text--small {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--nta-gray1);
}

@media screen and (max-width: 759px) {
	.f-section__text--small {
		margin-top: 5px;
		font-size: 12px;
	}
}

.f-section__pr_label {
	margin: 6px 0;
	font-size: 13px;
}

.f-section__pr_icon_01 {
	display: inline-block;
	border: 1px solid #e04c31;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
	font-weight: bold;
}

.f-section__pr_icon_01_text {
	display: inline-block;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
}

.f-section__pr_icon_02 {
	display: inline-block;
	border: 1px solid #069ad6;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #069ad6;
	font-weight: bold;
}

.f-section-review {
	margin-top: 5px;
	margin-bottom: 15px;
}

.f-section-review__stars {
	font-weight: bold;
	font-size: 18px;
}

.f-section-access__list {
	display: flex;
	margin-top: 16px;
}

.f-section-access__list::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	content: "\e0c8";
	font-size: 24px;
}

.f-section-access__item {
	display: none;
}

.f-section-access__description {
	font-size: 14px;
	line-height: 1.5;
}

/* 「宿泊の追加をやめる」ボタン配置 */
.f2-section__head-action {
	position: absolute;
	top: 0;
	right: 0;
}

.f2-section__cancel-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	position: relative;
	min-height: 40px;
	padding: 8px 16px;
	font-size: 14px;
	color: var(--nta-blue1);
	background-color: #fff;
	border: 1px solid var(--nta-blue1);
	border-radius: 20px;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	box-sizing: border-box;
	cursor: pointer;
}

@media screen and (max-width: 759px) {
	.f2-section__head-action {
		position: static;
		margin-left: auto;
		padding-left: 16px;
	}

	.f2-section__cancel-btn {
		width: 108px;
		min-height: 30px;
		padding: 4px 12px;
		font-size: 12px;
	}
}

/*--------------------------------
1.12 status
--------------------------------*/
.f-status {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 40px;
	max-width: 800px;
}

.f-status__list {
	display: flex;
	justify-content: center;
	position: relative;
	gap: 40px;
}

.f-status__item {
	flex: 1;
	list-style: none;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	color: var(--nta-gray1);
	text-align: center;
	background: var(--nta-bg-gray3);
	border-radius: 2px 0 0 2px;
	padding: 0 0 0 4px;
	height: 28px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.f-status__item::after {
	content: "";
	display: block;
	border-style: solid;
	border-width: 14px 8px;
	border-color: transparent transparent transparent var(--nta-bg-gray3);
	position: absolute;
	top: 0;
	left: 100%;
}

.f-status__item.is-done {
	background: var(--nta-border-gray1);
	color: #fff;
}

.f-status__item.is-done::after {
	border-color: transparent transparent transparent var(--nta-border-gray1);
}

.f-status__item.is-current {
	background: var(--nta-blue1);
	color: #fff;
}

.f-status__item.is-current::after {
	border-color: transparent transparent transparent var(--nta-blue1);
}

@media screen and (max-width: 759px) {
	.f-status {
		margin-bottom: 32px;
	}

	.f-status__list {
		gap: 16px;
	}

	.f-status__item {
		font-size: 10px;
		height: 26px;
	}

	.f-status__item::after {
		border-width: 13px 8px;
	}
}

/*--------------------------------
1.13 facility
--------------------------------*/
.f-facility-info__head {
	display: flex;
	align-items: center;
	width: 100%;
	height: 40px;
	padding: 12px 10px;
	font-size: 14px;
	font-weight: bold;
	background-color: #ededed;
	box-sizing: border-box;
}

.f-facility-info__icon {
	width: 20px;
	margin-right: 10px;
}

.f-facility-info__body {
	display: flex;
	justify-content: space-between;
	padding: 25px 10px 35px;
}

.f-facility-info__image {
	width: 220px;
}

.f-facility-info__picture {
	width: 100%;
}

.f-facility-info__inner {
	width: 697px;
}

.f-facility-info__title {
	margin-bottom: 12px;
	font-size: 18px;
	font-weight: bold;
}

.f-facility-info__text {
	font-size: 12px;
}

.f-facility-info__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 10px;
	line-height: 1.2;
}

.f-facility-info__item {
	width: 138px;
	padding-top: 9px;
	padding-bottom: 9px;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.2;
	border-bottom: 1px solid #dedede;
}

.f-facility-info__description {
	width: calc(100% - 138px);
	padding-top: 9px;
	padding-bottom: 9px;
	font-size: 13px;
	line-height: 1.2;
	border-bottom: 1px solid #dedede;
}

.f-facility-info__description-checkin {
	width: calc(40% - 138px);
}

.f-facility-info__description-checkout {
	width: calc(60% - 138px);
}

/*--------------------------------
1.14 detail
--------------------------------*/
.f-detail *,
.f-detail *::before,
.f-detail *::after {
	box-sizing: border-box;
}

.f-detail__head {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	font-size: 20px;
	font-weight: 700;
	color: var(--nta-black1);
	background-color: var(--nta-bg-blue2);
	box-sizing: border-box;
	border-radius: 4px;
	position: relative;
}

@media screen and (max-width: 759px) {
	.f-detail__head {
		padding: 9px 16px;
		font-size: 16px;
	}
}

.f-detail__head .f-accordion__button {
	position: absolute;
	right: 8px;
}

.f-detail__head .f-accordion__button::before {
	font-size: 24px;
}

.f-detail__head.js-accordion {
	cursor: pointer;
}

.f-detail__title {
	font-weight: 700;
}

.f-detail__body,
.f-detail__body--small,
.f-detail__body--large,
.f-detail__body--exlarge {
	padding-top: 24px;
	padding-bottom: 32px;
	width: 96%;
	margin: auto;
}

@media screen and (max-width: 759px) {

	.f-detail__body,
	.f-detail__body--small,
	.f-detail__body--large,
	.f-detail__body--exlarge {
		padding-top: 16px;
		padding-bottom: 32px;
	}
}

.f-detail-apply-form__body {
	padding: 25px 10px 0;
}

.f-detail__link {
	color: #0065d6;
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}

@media print,
screen and (min-width: 760px) {
	.f-detail__link:hover {
		opacity: 0.6;
		text-decoration: underline;
	}
}

.f-detail__text {
	font-size: 16px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f-detail__text {
		font-size: 14px;
	}
}

.f-detail__text--small {
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f-detail__text--small {
		font-size: 12px;
	}
}

p.f-detail__text:not(:only-child) {
	margin-bottom: 1em;
}

.f-detail__text+.f-detail__text {
	margin-top: 20px;
}

.f-detail__text--strong {
	font-weight: 700;
}

.f-detail__text--important {
	font-weight: 700;
	color: var(--nta-red1);
}

.f-detail-note__list {
	margin-top: 20px;
}

.f-detail__text--attention,
.f-detail-note__list--important {
	color: var(--nta-red1);
}

.f-detail-note__menu {
	margin-top: 5px;
	margin-bottom: 5px;
}

@media screen and (max-width: 759px) {

	.f-detail-note__item,
	.f-detail-note__item--large {
		font-size: 12px;
	}
}

.f-detail-note__item,
.f-detail-note__item--large {
	font-size: 14px;
	list-style: none;
	line-height: 1.7;
}

.f-detail-note__item--large-container {
	margin-bottom: 15px;
}

.f-detail-term {
	box-sizing: border-box;
}

.f-detail-term__text {
	font-size: 12px;
	font-weight: bold;
	margin-bottom: 17px;
}

.f-detail-term__list+.f-detail-term__list {
	margin-top: 30px;
}

.f-detail-term__item {
	background: var(--nta-bg-gray1);
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	padding: 10px 16px;
}

.f-detail-term__description {
	padding-top: 32px;
	padding-bottom: 32px;
	width: 80%;
	margin: 0 auto;
}

.f-detail-term__label {
	font-size: 16px;
	margin-bottom: 16px;
}

.f-detail-term__choice+.f-detail-term__label {
	margin-top: 40px;
}

.f-detail-term__choice {
	width: 100%;
	word-break: break-all;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
}

.f-detail-term__choice .f-checkbox__text {
	font-size: 16px;
	font-weight: 700;
}

/* 滞在時間 */
.f-detail-term__choice .f2-stay-time {
	width: 100%;
	display: flex;
	align-items: center;
	padding-left: 28px;
	gap: 8px;
	font-size: 16px;
}

.f-detail-term__choice .f-select {
	font-weight: 700;
}

/* 経由 */
.f-detail-term__choice .f-radio__label {
	width: 100%;
	padding-top: 8px;
	padding-bottom: 8px;
}

.f-detail-term__choice .f2-via-station {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.f-detail-term__choice .f2-via-station span {
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 0 16px;
}

.f-detail-term__choice .f2-via-station span:not(:first-child)::before {
	content: "";
	display: block;
	width: 44px;
	height: 6px;
	border-style: solid;
	border-width: 1px 0;
	border-color: var(--nta-gray2);
	background-image: linear-gradient(to right, var(--nta-gray2) 4px, transparent 4px);
	background-size: 8px 4px;
}

.f-detail-term__choice .f2-via-note {
	margin-top: 6px;
	font-size: 14px;
	font-weight: 700;
	color: var(--nta-red1);
}

/*----------*/
.f-detail-info__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 16px;
}

.f-detail-info__item {
	width: 210px;
	padding: 10px 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

.f-detail-info__text {
	display: inline-block;
	font-weight: 700;
	margin-top: 8px;
}

.f-detail-info__description {
	width: calc(100% - 210px);
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 16px;
	font-size: 16px;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f-detail-info__list {
		margin-bottom: 24px;
	}

	.f-detail-info__item {
		width: 8em;
		padding: 8px 8px 8px 0;
		font-size: 14px;
	}

	.f-detail-info__text {
		display: inline-block;
		font-weight: bold;
		margin-top: 8px;
	}

	.f-detail-info__description {
		width: calc(100% - 8em);
		padding: 8px 0;
		font-size: 14px;
		display: flex;
		align-items: center;
	}
}

.f-detail-arrow__list {
	margin-top: 10px;
}

.f-detail-arrow__list--right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 20px;
}

.f-detail-arrow__item {
	margin-right: 5px;
	list-style: none;
}

.f-detail-arrow__item+.f-detail-arrow__item {
	margin-left: 20px;
}

.f-detail-arrow__link {
	color: var(--nta-link);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
}

.f-detail-arrow__link:hover {}

.f-detail-arrow__link::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1.2em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: 'wght'600;
	content: "\e5cc";
}

.f-detail__item {
	padding-left: 1.4em;
	font-size: 12px;
	list-style: none;
	line-height: 1.5;
	text-indent: -1.4em;
}

.f-detail-unit {
	margin-top: 24px;
}

.f-detail-unit__title {
	display: flex;
	align-items: center;
	height: 20px;
	margin-bottom: 15px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
}

.f-detail-unit__text {
	line-height: 1.5;
}

.f-detail-unit__text--small {
	font-size: 12px;
	line-height: 1.5;
}

.f-detail-table--large {
	margin-top: 35px;
}

.f-detail-table__head {
	padding: 14px 16px;
	font-weight: bold;
	background-color: #ededed;
	border-top: 1px solid #dedede;
}

.f-detail-table__list {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #dedede;
}

.f-detail-table__list+.f-detail-table__list {
	margin-top: 20px;
}

.f-detail-table__item {
	width: 200px;
	padding: 13px;
	font-weight: bold;
	font-size: 12px;
	line-height: 1.5;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-detail-table__item--simple {
	width: 136px;
	padding: 6px 16px;
	font-weight: bold;
	font-size: 13px;
	line-height: 1.5;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-detail-table__description {
	width: calc(100% - 200px);
	padding: 13px 25px;
	font-size: 13px;
	line-height: 1.5;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-detail-table__description--simple {
	width: calc(100% - 136px);
	padding: 6px 16px;
	font-size: 13px;
	line-height: 1.5;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-detail-table-table__text--small {
	font-weight: bold;
	font-size: 12px;
}

.f-detail-table-table__text--price {
	margin-left: 10px;
	margin-right: 20px;
	font-weight: bold;
	font-size: 22px;
}

.f-detail-notice {
	margin-bottom: 30px;
}

.f-detail-notice__text {
	color: #cc0d21;
	line-height: 1.5;
}

.f-detail-notice__text+.f-detail-notice__text {
	margin-top: 10px;
}

.f-detail-marserror {
	display: none;
	padding: 16px;
	margin: 16px 0;
	color: var(--nta-red1);
	font-size: 16px;
	line-height: 1.5;
	vertical-align: middle;
	border: 1px solid var(--nta-red1);
}

.f-detail-path__text {
	display: none;
	margin-bottom: 20px;
}

.f-detail-trains-headline {
	padding: 10px;
	margin-bottom: 10px;
	color: #20208c;
	border-radius: 4px;
	border: 1px solid #20208c;
}

.f-detail-searchbox__text {
	padding: 25px 15px 50px 15px;
}

.f-detail-limit-normal .f-radio+.f-radio__label {
	display: block;
	align-items: center;
	position: relative;
	padding-left: 32px;
	line-height: 1.5;
	cursor: pointer;
	text-align: center;
}

.f-detail-limit-normal .f-radio+.f-radio__label::before {
	left: 5px;
	background-color: transparent;
}

.f-detail-limit-normal .f-radio+.f-radio__label::after {
	left: 11px !important;
}

.f-detail-limit-normal .f-tab__text--small {
	display: inline-block;
	font-size: 11px;
	font-weight: bold;
	width: 100%;
}

.f-detail-genteiinfo {
	font-size: 12px;
	margin: 12px 0 12px 0;
	padding: 6px;
	line-height: 16px;
}

.f2-detail-date-head {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	font-size: 20px;
	font-weight: bold;
	color: var(--nta-black1);
	background-color: var(--nta-bg-blue1);
	box-sizing: border-box;
	border-radius: 4px;
	margin-bottom: 24px;
}

/* 第2希望以降の差額代金と旅行代金合計 */
.f-detail-difference {
	margin-top: 24px;
}

.f-detail-difference__title {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	font-size: 20px;
	font-weight: 700;
	color: var(--nta-black1);
	background-color: var(--nta-bg-blue2);
	box-sizing: border-box;
	border-radius: 4px;
	margin-bottom: 24px;
}

.f-detail-difference__text {
	line-height: 1.5;
	margin-bottom: 16px;
}

.f-detail-difference__list {
	display: flex;
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
}

.f-detail-difference__item {
	width: 180px;
	padding: 15px 12px;
	font-weight: 700;
	font-size: 13px;
}

.f-detail-difference__description {
	width: calc(100% - 180px);
	padding: 15px 12px;
	font-size: 13px;
}

@media screen and (max-width: 759px) {
	.f-detail-difference__title {
		padding: 9px 16px;
		font-size: 16px;
		margin-bottom: 16px;
	}

	.f-detail-difference__text {
		font-size: 12px;
	}
}

.f-table-line {
	width: 100%;
	margin-top: 16px;
	margin-bottom: 16px;
	border-top: 1px solid var(--nta-border-gray2);
	border-collapse: collapse;
}

.f-table-line__head {
	padding: 12px;
	font-size: 16px;
	font-weight: 700;
	text-align: left;
	border-right: 1px solid var(--nta-border-gray2);
	border-bottom: 1px solid var(--nta-border-gray2);
}

.f-table-line__data {
	vertical-align: middle;
	padding: 12px 0 12px 12px;
	font-size: 14px;
	border-bottom: 1px solid var(--nta-border-gray2);
}

.f-table-line__data-right {
	padding: 12px;
	font-size: 14px;
	text-align: right;
	line-height: 1.3;
	border-bottom: 1px solid var(--nta-border-gray2);
}

.f-table-line__text--strong {
	font-weight: 700;
	font-size: 16px;
	color: var(--nta-red1);
}

@media screen and (max-width: 759px) {
	.f-table-line__head {
		padding: 8px 12px;
		font-size: 14px;
	}

	.f-table-line__data {
		padding: 8px 0 8px 12px;
		font-size: 12px;
	}

	.f-table-line__data-right {
		padding: 8px 12px;
		font-size: 12px;
	}

	.f-table-line__text--strong {
		font-size: 14px;
	}
}

/* プラン詳細 タビサキMenu */
.f2-detail-tabisaki {
	padding-top: 4px;
	padding-left: 40px;
	position: relative;
}

.f2-detail-tabisaki+.f2-detail-tabisaki {
	margin-top: 32px;
}

.f2-detail-tabisaki::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e8b1";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 32px;
	color: var(--nta-blue1);
}

.f2-detail-tabisaki__ttl {
	font-size: 16px;
	line-height: 1.5;
	font-weight: 700;
	margin-bottom: 1em;
}

.f2-detail-tabisaki__txt {
	font-size: 16px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f2-detail-tabisaki {
		padding-left: 32px;
	}

	.f2-detail-tabisaki+.f2-detail-tabisaki {
		margin-top: 24px;
	}

	.f2-detail-tabisaki::before {
		font-size: 28px;
	}

	.f2-detail-tabisaki__ttl {
		font-size: 14px;
	}

	.f2-detail-tabisaki__txt {
		font-size: 14px;
	}
}

/*--------------------------------
1.15 note
--------------------------------*/
.f-note {
	margin-bottom: 16px;
}

.f-note__head {
	background: var(--nta-bg-blue2);
	padding: 12px 16px;
	margin: 0;
	font-weight: 700;
	text-align: left;
}

.f-note__title {
	font-size: 18px;
	font-weight: 700;
}

.f-note__body,
.f-note__body--exsmall {
	padding: 24px 0 40px;
}

.f-note__body.is-close,
.f-note__body--small.is-close,
.f-note__body--exsmall.is-close {
	display: none;
}

@media screen and (max-width: 759px) {
	.f-note__head {
		padding: 10px 12px;
	}

	.f-note__title {
		font-size: 14px;
	}

	.f-note__body,
	.f-note__body--exsmall {
		padding: 16px 0;
	}
}

.f-note__text {
	line-height: 1.7;
}

.f-note__text+.f-note__text {
	margin-top: 8px;
}

.f-note__attention {
	font-weight: bold;
	color: #cc0d21;
}

.f-note__list {
	margin-top: 10px;
	margin-bottom: 10px;
	padding-left: 0;
}

.f-note__item {
	padding-left: 20px;
	list-style: none;
	line-height: 1.7;
	position: relative;
}

.f-note__item::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

.f-note__link {
	color: var(--nta-link);
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}

.f-note__link:hover {
	opacity: 0.5;
	text-decoration: underline;
}

.f-note-info__list {}

.f-note-info__item,
.f-note-info__item--strong {
	position: relative;
	margin-bottom: 8px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {

	.f-note-info__item,
	.f-note-info__item--strong {
		font-size: 14px;
	}
}

.f-confirm-apply .f-note-info__item,
.f-confirm-apply .f-note-info__item--strong {
	padding-left: 1.8em;
}

.f-confirm-apply .f-note-info__item::before,
.f-confirm-apply .f-note-info__item--strong::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e88e";
	font-size: 1.5em;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.f-note-info__item::before {
	color: var(--nta-gray1);
}

.f-note-info__item--strong::before {
	color: var(--nta-red1);
}

.f-note-info__description {
	margin-bottom: 24px;
	line-height: 1.5;
}

.f-note-info__text--strong {
	margin-top: 5px;
	margin-bottom: 5px;
	font-weight: bold;
}

.f-note-caption__list {
	margin-top: 10px;
	margin-bottom: 10px;
}

.f-note-caption__item {
	padding-left: 1.4em;
	list-style: none;
	line-height: 1.5;
	text-indent: -1.4em;
}

.f-note-train {
	margin-bottom: 25px;
}

/*--------------------------------
1.16 ballon
--------------------------------*/
.f2-balloon-icon-help::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
}

.f-ballon {
	box-sizing: border-box;
}

.f-ballon__head {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.f-ballon__title {
	font-size: 16px;
	font-weight: 700;
	color: var(--nta-gray1);
}

.f-ballon__title .f2-title-open,
.f-ballon__title .f2-title-close {
	font-weight: 700;
}

.f-ballon.is-open .f-ballon__title .f2-title-open {
	display: none;
}

.f-ballon:not(.is-open) .f-ballon__title .f2-title-close {
	display: none;
}

.f-ballon__body {
	display: none;
}

.f-ballon.is-open .f-ballon__body {
	display: flex;
}

/* ツールチップ */
.f2-balloon-wrap {
	position: relative;
}

.f2-balloon-trigger {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	color: var(--nta-gray2);
}

.f2-balloon-icon-help {
	display: inline-flex;
	align-items: center;
}

.f2-balloon-icon-help::after {
	content: "\e887";
	font-size: 1.4em;
	color: var(--nta-gray1);
	font-variation-settings: 'FILL'1;
}

.f2-balloon {
	position: absolute;
	right: 0;
	bottom: calc(100% + 8px);
	background: var(--nta-black1);
	color: #fff;
	border-radius: 4px;
	padding: 10px;
	font-size: 12px;
	line-height: 1.4;
	text-align: left;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s;
	z-index: 10;
}

.f2-balloon::before {
	content: "";
	position: absolute;
	border-style: solid;
	border-width: 8px 8px 0;
	border-color: var(--nta-black1) transparent transparent;
	top: 100%;
	right: 20px
}

.f2-balloon.is-active {
	opacity: 1;
	visibility: visible;
}

.f2-balloon--bottom {
	bottom: auto;
	top: calc(100% + 8px);
}

.f2-balloon--bottom::before {
	border-width: 0 8px 8px;
	border-color: transparent transparent var(--nta-black1);
	top: auto;
	bottom: 100%;
}

/*--------------------------------
1.17 confirm
--------------------------------*/
.f-confirm__body {
	margin-bottom: 40px;
}

.f-confirm__inner {
	margin-bottom: 24px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f-confirm__body {
		margin-bottom: 24px;
	}

	.f-confirm__inner {
		margin-bottom: 16px;
		padding-bottom: 16px;
	}
}

.f-confirm__text {
	line-height: 1.7;
}

.f-confirm__text+.f-confirm__text {
	margin-top: 15px;
}

.f-confirm__text--important {
	font-weight: bold;
	color: #cc0d21;
}

.f-confirm__text--strong {
	margin-left: 10px;
	font-weight: bold;
}

@media screen and (max-width: 759px) {
	.f-confirm__text {
		font-size: 12px;
	}
}

.f-confirm-price-table {
	width: 100%;
	border-top: 1px solid #dedede;
	border-collapse: collapse;
}

.f-confirm-price-table__row-total {
	background-color: #fff9f0;
}

.f-confirm-price-table__row-total .f-confirm-price-table__data {
	padding: 20px 18px;
}

.f-confirm-price-table__head {
	width: 176px;
	padding-left: 20px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.7;
	text-align: left;
	vertical-align: middle;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-price-table__data {
	padding: 14px 18px;
	line-height: 1.5;
	vertical-align: middle;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-price-table__data:last-child {
	border-right: none;
}

.f-confirm-price-table__data .f-button-hint {
	margin-top: 1px;
}

.f-confirm-price-table__cell--small {
	width: 60px;
	padding: 14px 10px;
	font-weight: bold;
	background-color: #ededed;
	box-sizing: border-box;
}

.f-confirm-price_table__text {
	font-weight: normal;
}

.f-confirm-price-table__text--total {
	display: inline-block;
	width: 173px;
	font-weight: bold;
}

.f-confirm-price-table__text--small {
	font-weight: bold;
	font-size: 14px;
	color: #cc0d21;
}

.f-confirm-price-table__text--base {
	color: #333;
}

.f-confirm-price-table__text--price {
	margin-left: 10px;
	margin-right: 20px;
	font-weight: bold;
	font-size: 22px;
	color: #cc0d21;
}

.f-confirm-price-table__text--attention {
	color: #cc0d21;
}

.f-confirm-price-table__list {
	display: flex;
	justify-content: space-between;
}

.f-confirm-price-table__item {
	font-weight: bold;
}

.f-confirm-price-table__description {
	text-align: right;
}

.f-confirm-price__list+.f-confirm-price__list {
	margin-top: 15px;
}

.f-confirm-price__inner {
	margin-top: 15px;
	margin-bottom: 20px;
}

.f-confirm-plan {
	padding-left: 12px;
	padding-right: 12px;
	padding-bottom: 20px;
}

.f-confirm-schedule__list {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #dedede;
}

.f-confirm-schedule__list+.f-detail-table__list {
	margin-top: 20px;
}

.f-confirm-schedule__item {
	width: 177px;
	padding: 15px 12px;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.3;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-schedule__description {
	width: calc(100% - 177px);
	padding: 15px 20px;
	font-size: 14px;
	line-height: 1.3;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-schedule-table {
	width: 100%;
	margin-top: 15px;
	border-top: 1px solid #dedede;
	box-sizing: border-box;
	border-collapse: collapse;
}

.f-confirm-schedule-table__row .f-confirm-schedule-table__head:first-child,
.f-confirm-schedule-table__row .f-confirm-schedule-table__head-data {
	width: 177px;
}

.f-confirm-schedule-table__row .f-confirm-schedule-table__head:last-child,
.f-confirm-schedule-table__row .f-confirm-schedule-table__data:last-child {
	width: 190px;
}

.f-confirm-schedule-table__head {
	padding: 16px;
	font-weight: bold;
	text-align: left;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-schedule-table__head:last-child {
	border-right: none;
}

.f-confirm-schedule-table__head-data {
	padding: 18px;
	line-height: 1.5;
	vertical-align: top;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-schedule-table__data {
	padding: 18px;
	line-height: 1.5;
	vertical-align: top;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-schedule-table__data:last-child {
	border-right: none;
}

.f-confirm-schedule {
	border: 1px solid var(--nta-border-gray2);
	margin-bottom: 16px;
	border-radius: 4px;
	clear: both;
}

.f-confirm-schedule__head {
	background: var(--nta-bg-gray1);
	border-radius: 4px 4px 0 0;
	text-align: center;
	padding: 10px;
}

.f-confirm-schedule__date {
	font-size: 18px;
	font-weight: 700;
}

.f-confirm-schedule__body {
	padding: 16px;
}

@media screen and (max-width: 759px) {
	.f-confirm-schedule__head {
		padding: 8px;
	}

	.f-confirm-schedule__date {
		font-size: 14px;
	}

	.f-confirm-schedule__body {
		padding: 8px;
	}
}

.f-confirm-schedule__box-arrow {
	position: relative;
	padding: 32px 0;
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
	border-top: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f-confirm-schedule__box-arrow {
		padding: 16px 0;
		font-size: 12px;
		text-align: left;
	}
}

.f-confirm__button-top {
	margin-top: 60px;
	margin-bottom: 20px;
}

.f-confirm__button-inner {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}

/* 行程情報 プラン詳細バルーン */
.f-confirm-ballon {
	margin-top: 24px;
	border: 1px solid var(--nta-border-gray2);
}

.f-confirm-ballon .f-ballon__head {
	padding: 12px 16px;
	justify-content: flex-start;
	position: relative;
}

.f-confirm-ballon .f-ballon__head .f-accordion__button {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
}

.f-confirm-ballon .f-ballon__title {
	color: var(--nta-black1);
	font-size: 16px;
	line-height: 1;
}

.f-confirm-plan {
	padding: 8px 16px 16px;
	line-height: 1.5;
}

.f-confirm__button {
	margin: 10px 12px 40px;
}

.f-confirm__button-inner {
	margin-bottom: 20px;
}

@media screen and (max-width: 759px) {
	.f-confirm-ballon .f-ballon__head {
		padding: 8px 12px;
	}

	.f-confirm-ballon .f-ballon__title {
		font-size: 14px;
	}

	.f-confirm-plan {
		padding: 8px 12px 12px;
		font-size: 12px;
	}
}

/* /行程情報 プラン詳細バルーン */
.f-confirm-payment__list {
	list-style: none;
}

.f-confirm-payment__item {
	margin-top: 16px;
	font-size: 16px;
	display: flex;
	align-items: center;
	gap: 8px;
}

@media screen and (max-width: 759px) {
	.f-confirm-payment__item {
		font-size: 14px;
		gap: 4px;
	}
}

.f-confirm__text--important {
	margin-top: 15px;
	font-weight: normal;
	font-size: 12px;
	color: var(--nta-red1);
	line-height: 1.7;
}

.f-confirm-apply {}

.f-confirm-apply__text-important {
	margin-bottom: 25px;
	font-weight: bold;
	color: #cc0d21;
}

.f-confirm-store__list {
	line-height: 1.7;
}

.f-confirm-store__item {
	font-weight: 700;
	margin-top: 16px;
	margin-bottom: 8px;
}

.f-confirm-store__description {}

.f-confirm-store__text {
	margin-top: 16px;
	line-height: 1.7;
}

.f-confirm-store-plan__list {
	margin-top: 24px;
	line-height: 1.7;
}

.f-confirm-store-plan__item {
	margin-top: 24px;
	margin-bottom: 8px;
	font-weight: 700;
}

.f-confirm-store-plan__description {}

.f-confirm-store-bond {
	width: 206px;
	margin-top: 10px;
}

@media screen and (max-width: 759px) {
	.f-confirm-store__list {
		font-size: 12px;
		line-height: 1.5;
	}

	.f-confirm-store__text {
		font-size: 12px;
		line-height: 1.5;
	}

	.f-confirm-store-plan__list {
		margin-top: 8px;
		line-height: 1.5;
	}

	.f-confirm-store-plan__item {
		margin-top: 16px;
		font-size: 12px;
		line-height: 1.5;
	}

	.f-confirm-store-plan__description {
		font-size: 12px;
		line-height: 1.5;
	}

	.f-confirm-store-bond {
		width: 170px;
	}
}

.f-confirm-cancel__title {
	display: flex;
	align-items: center;
	height: 20px;
	margin-bottom: 15px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
}

.f-confirm-cancel-table {
	width: 100%;
	border-top: 1px solid #dedede;
	border-collapse: collapse;
}

.f-confirm-cancel-table__head {
	padding: 16px;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.3;
	text-align: left;
	vertical-align: top;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-cancel-table__head:last-child {
	border-right: none;
}

.f-confirm-cancel-table__row .f-confirm-cancel-table__data:first-child {
	width: 160px;
	text-align: left;
}

.f-confirm-cancel-table__row .f-confirm-cancel-table__data:nth-child(2) {
	width: 220px;
}

.f-confirm-cancel-table__row .f-confirm-cancel-table__data:nth-child(n +5):nth-last-child(n + 2) {
	width: 134px;
}

.f-confirm-cancel-table__row .f-confirm-cancel-table__data:last-child {
	width: 126px;
}

.f-confirm-cancel-table__data {
	padding: 18px;
	line-height: 1.3;
	vertical-align: middle;
	text-align: right;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-confirm-cancel-table__data:last-child {
	border-right: none;
}

.f-confirm-cancel__text--important {
	margin-bottom: 25px;
	padding-top: 18px;
	padding-bottom: 18px;
	font-weight: bold;
	font-size: 20px;
	border: 1px solid #cc0d21;
	text-align: center;
}

.f-confirm-cancel__text--attention {
	font-weight: bold;
	color: #cc0d21;
}

.f-confirm-cancel__text {
	margin-top: 18px;
	margin-bottom: 15px;
}

.f-confirm-cancel__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 16px;
}

.f-confirm-cancel__item {
	width: 180px;
	padding: 8px;
	font-size: 14px;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

.f-confirm-cancel__item:first-of-type,
.f-confirm-cancel__description:first-of-type {
	font-weight: 700;
}

.f-confirm-cancel__description {
	width: calc(100% - 180px);
	padding: 8px;
	font-size: 14px;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

@media screen and (max-width: 759px) {
	.f-confirm-cancel__item {
		padding: 8px 4px;
		font-size: 12px;
	}

	.f-confirm-cancel__description {
		padding: 8px 4px;
		font-size: 12px;
	}
}

/* ご旅行代金＞お支払い金額合計 */
.f-confirm-total {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.f-confirm-total__text {
	padding-top: 12px;
	padding-bottom: 12px;
	font-size: 16px;
}

.f-confirm-total__text--price {
	padding-top: 10px;
	padding-bottom: 10px;
	font-weight: 700;
	font-size: 24px;
	color: var(--nta-red1);
	text-align: right;
}

.f-confirm-total__text--small {
	margin-right: 10px;
	font-weight: 700;
	font-size: 14px;
}

@media screen and (max-width: 759px) {
	.f-confirm-total__text {
		padding-top: 10px;
		padding-bottom: 10px;
		font-size: 12px;
	}

	.f-confirm-total__text--price {
		font-size: 20px;
	}

	.f-confirm-total__text--small {
		font-size: 12px;
	}
}

.f-confirm-jr-message {
	margin-left: 8px;
	font-size: 14px;
	line-height: 1.5;
}

/*--------------------------------
1.18 plan
--------------------------------*/
.f2-link-hotel-detail {
	float: right;
	margin: 4px 0 8px 16px;
	font-size: 16px;
}

.f2-link-hotel-detail a {
	color: var(--nta-link);
	text-decoration: none;
	cursor: pointer;
	position: relative;
	padding-right: 1.1em;
}

.f2-link-hotel-detail a::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e89e";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -.5em;
}


@media screen and (max-width: 759px) {
	.f2-link-hotel-detail {
		font-size: 14px;
	}
}

.f-plan__head {
	margin-bottom: 32px;
}

.f-plan__title {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.4;
	color: var(--nta-black1);
}

.f-plan__subtitle {
	margin-top: 8px;
	font-size: 14px;
	color: var(--nta-gray1);
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f-plan__head {
		margin-bottom: 18px;
	}

	.f-plan__title {
		font-size: 16px;
	}

	.f-plan__subtitle {
		font-size: 12px;
	}
}

.f-plan__pr_label {
	margin: 12px 0 0;
	font-size: 12px;
}

.f-plan__pr_icon_01 {
	display: inline-block;
	border: 1px solid #e04c31;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
	font-weight: bold;
}

.f-plan__pr_icon_01_text {
	display: inline-block;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
}

.f-plan__pr_icon_02 {
	display: inline-block;
	border: 1px solid #069ad6;
	list-style: none;
	text-align: center;
	padding: 4px 8px;
	color: #069ad6;
	font-size: 12px;
	font-weight: 700;
}

.f-plan__list {
	display: flex;
	flex-wrap: wrap;
	margin-top: -20px;
}

.f-plan__item {
	width: 126px;
	padding-top: 28px;
	padding-bottom: 20px;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
}

.f-plan__item:nth-last-child(2) {
	border-bottom: none;
}

.f-plan__item-wda_aniversary {
	width: 150px;
	margin: auto 0;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
}

.f-plan__item-wda_aniversary:nth-last-child(2) {
	border-bottom: none;
}

.f-plan__hint {
	display: inline;
	position: relative;
	padding-right: 20px;
	font-weight: bold;
}

.f-plan__hint .f-button-hint {
	position: absolute;
	top: 1px;
	right: -3px;
	padding-top: 2px;
}

.f-plan__description {
	width: calc(100% - 126px);
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ededed;
}

.f-plan__description:last-child {
	border-bottom: none;
}

.f-plan__description-wda_aniversary {
	width: calc(100% - 150px);
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #ededed;
}

.f-plan__description-wda_aniversary:last-child {
	border-bottom: none;
}

.f-plan-info {
	margin-bottom: 32px;
}

.f-plan-info__head {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 16px;
}

.f-plan-info__body {
	display: flex;
	justify-content: space-between;
	gap: 0 16px;
}

.f-plan-info__carousel {
	width: 320px;
}

.f-plan-info__inner {
	flex: 1;
}

@media screen and (max-width: 759px) {
	.f-plan-info {
		margin-bottom: 16px;
	}

	.f-plan-info__head {
		font-size: 16px;
	}

	.f-plan-info__body {
		flex-direction: column-reverse;
		gap: 0;
	}

	.f-plan-info__carousel {
		width: auto;
	}
}

.f-plan-info__label {
	width: 100%;
	margin-bottom: 16px;
}

.f-plan-info__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	line-height: 1.2;
	margin-bottom: 24px;
}

.f-plan-info__item {
	width: 8em;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

.f-plan-info__description {
	width: calc(100% - 8em);
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 16px;
	font-size: 16px;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

@media screen and (max-width: 759px) {
	.f-plan-info__item {
		padding: 8px 8px 8px 0;
		font-size: 14px;
	}

	.f-plan-info__description {
		padding: 8px 0;
		font-size: 14px;
	}
}

@media print,
screen and (min-width: 760px) {
	.f-plan-info__flex {
		display: flex;
		justify-content: space-between;
	}
}

@media screen and (max-width: 759px) {
	.f-button-hint__wrap--top {
		margin-top: 8px;
		display: flex;
		justify-content: flex-end;
	}
}

.f-plan-info__banner {
	width: 60px;
	margin-right: 8px;
}

.f-plan-info__banner-image {
	width: 100%;
}

.f-plan-note {
	padding: 20px;
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
}

.f-plan-note__title {
	display: flex;
	align-items: center;
	height: 20px;
	margin-bottom: 15px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
	margin-bottom: 15px;
}

.f-plan-note__text {
	line-height: 1.5;
}

.f-plan-detail__head {}

.f-plan-detail__title {
	margin-bottom: 16px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
}

.f-plan-detail__body {
	display: flex;
	justify-content: space-between;
	margin-bottom: 35px;
}

.f-plan-detail__inner {}

.f-plan-detail__image {
	width: 200px;
}

.f-plan-detail__figure+.f-plan-detail__figure {
	margin-top: 30px;
}

.f-plan-detail__picture {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: 0 auto;
}

.f-plan-detail__caption {
	margin-top: 10px;
	font-size: 12px;
}

.f-plan-detail__text {
	align-items: center;
	width: 100%;
	padding: 20px;
	line-height: 1.5;
	background-color: #f8f8f8;
	border-radius: 6px;
	box-sizing: border-box;
}

.f-plan-confirm__basic {
	margin-top: 25px;
}

.f-plan-confirm__list {
	display: flex;
	border-top: 1px solid #ededed;
}

.f-plan-confirm__item {
	width: 126px;
	padding-top: 20px;
	padding-bottom: 20px;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
}

.f-plan-confirm__description {
	width: calc(100% - 126px);
	padding-top: 15px;
	padding-right: 24px;
	border-bottom: 1px solid #ededed;
}

.f-plan-confirm__inner {
	display: flex;
	align-items: center;
}

.f-plan-confirm__text-between {
	margin: 10px 20px;
}

.f-plan-confirm__container {
	margin-left: 5px;
	margin-right: 15px;
}

.f-plan-confirm__select .f-select {
	min-width: 90px;
}

.f-plan-confirm__text {
	min-width: 150px;
}

.f-plan-confirm__text--strong {
	font-weight: bold;
}

.f-plan-confirm__text--light {
	margin-right: 10px;
	font-size: 11px;
	color: #a0a0a0;
}

.f-plan-confirm__text--small {
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 12px;
}

.f-plan-confirm__text--right {
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 12px;
	text-align: right;
}

.f-plan-confirm__radio .f-radio__label {
	margin-bottom: 15px;
	padding-right: 35px;
	box-sizing: border-box;
}

.f-plan-requirement:last-child {
	margin-bottom: 45px;
}

.f-plan-requirement__text-capacity {
	margin-left: 20px;
}

.f-plan-requirement__text--attention {
	color: #cc0d21;
}

.f-plan-requirement__inner {
	display: flex;
	align-items: center;
	white-space: nowrap;
}

.f-plan-requirement__inner+.f-plan-requirement__inner {
	margin-top: 25px;
}

.f-plan-requirement__title {
	display: flex;
	align-items: center;
	height: 20px;
	margin-right: 25px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
}

.f-plan-requirement__icon {
	position: relative;
	top: 8px;
	width: 12px;
	margin-right: 2px;
}

.f-plan-requirement__list {
	display: flex;
	align-items: center;
}

.f-plan-requirement__item {
	font-weight: bold;
}

.f-plan-requirement__description {
	display: flex;
	align-items: center;
}

.f-plan-requirement__label {
	margin-right: 8px;
}

.f-plan-requirement__select {
	margin-left: 25px;
}

.f-plan-requirement__select .f-select {
	min-width: 90px;
}

.f-plan-requirement__text--strong {
	font-weight: bold;
}

.f-plan-requirement__background {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 362px;
	margin-right: 20px;
	padding: 15px 15px 15px 20px;
	background-color: #ededed;
	border-radius: 6px;
	box-sizing: border-box;
}

.f-plan-requirement__background .f-select__wrap {
	height: 30px;
}

.f-plan-requirement__background .f-select {
	min-width: 90px;
}

.f-plan-requirement__text--small {
	display: block;
	font-size: 10px;
}

.f-plan-requirement-caption__list {
	margin-top: 10px;
	margin-bottom: 10px;
	padding-left: 0;
}

.f-plan-requirement-caption__item {
	padding-left: 12px;
	font-size: 12px;
	list-style: none;
	line-height: 1.5;
	position: relative;
}

.f-plan-requirement-caption__item::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

.f-plan-requirement__text-caption {
	padding-top: 20px;
	padding-bottom: 20px;
	font-size: 12px;
	border-top: 1px solid #dedede;
}

.f-plan-requirement__select--long .f-select__wrap {
	width: 218px;
}

.f-plan__button-top {
	margin-bottom: 60px;
}

.f-plan__button-text {
	margin-top: 36px;
	font-weight: bold;
	text-align: center;
}

.f-plan__button-inner {
	margin-top: 20px;
	text-align: center;
}

.f-plan__button-flex {
	display: flex;
	justify-content: space-between;
	width: 950px;
	margin-left: auto;
	margin-right: auto;
}

.f-plan-schedule-table {
	width: 100%;
}

.f-plan-schedule__head {
	padding: 16px;
	font-weight: bold;
	text-align: left;
	background-color: #ededed;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-plan-schedule__head:first-child {
	width: 80px;
}

.f-plan-schedule__head:nth-child(3) {
	width: 288px;
	border-right: none;
}

.f-plan-schedule__data {
	padding: 16px;
	line-height: 1.5;
	border-right: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	box-sizing: border-box;
}

.f-plan-schedule__data:last-child {
	border-right: none;
}

.f-plan-schedule__text--strong {
	font-weight: bold;
	color: #20208c;
}

.f-plan-schedule__image {
	position: relative;
	top: 8px;
	width: 17px;
}

.f-plan-schedule__icon--train {
	position: relative;
	top: 4px;
	width: 11px;
	margin-right: 2px;
}

.f-plan-schedule__icon--facility {
	position: relative;
	top: 5px;
	width: 15px;
	margin-right: 2px;
}

.f-plan-schedule__list {
	margin-top: 16px;
}

.f-plan-schedule__item {
	font-size: 14px;
	list-style: none;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f-plan-schedule__item {
		font-size: 12px;
	}
}

.f-plan-note_body {
	height: 120px;
	padding: 20px 10px 20px;
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
}

.f-plan-note_remarks {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #dedede;
	line-height: 1.5;
}

.f-plan-company {}

.f-plan-company__title {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px;
	font-size: 20px;
	font-weight: 700;
	color: var(--nta-black1);
	background-color: var(--nta-bg-blue2);
	box-sizing: border-box;
	border-radius: 4px;
	margin-bottom: 24px;
}

@media screen and (max-width: 759px) {
	.f-plan-company__title {
		padding: 9px 16px;
		font-size: 16px;
		margin-bottom: 16px;
	}
}

.f-plan-company__text {
	line-height: 1.5;
	width: 96%;
	margin: auto;
}

.f-plan-company__text+.f-plan-company__text {
	margin-top: 24px;
}

.f-plan__button-bottom {
	margin-top: 50px;
	margin-bottom: 80px;
}

/*--------------------------------
1.19 carousel
--------------------------------*/
.f-carousel__wrap {
	position: relative;
	width: 100%;
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 4/3;
}

@media screen and (max-width: 759px) {
	.f-carousel__wrap {
		width: auto;
		border-radius: 0;
		margin: 16px -16px;
	}
}

.f-carousel__wrap-controls {
	position: relative;
	width: 100%;
}

.f-carousel__image {
	/*	height: 282px;*/
	margin: 0 auto;
	max-width: 100%;
	aspect-ratio: 4/3;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.f-carousel__inner {
	height: 100%;
	width: 100%;
}

.f-carousel__arrows .slick-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	width: 40px;
	height: 60px;
	background: transparent;
	border: none;
	padding: 0;
	color: transparent;
	outline: none;
	font-size: 0;
}

.f-carousel__arrows .slick-prev {
	left: 0;
}

.f-carousel__arrows .slick-next {
	right: 0;
}

.f-carousel__arrows .slick-prev.slick-disabled,
.f-carousel__arrows .slick-next.slick-disabled {
	opacity: .5;
	pointer-events: none;
}

.f-carousel__arrows .slick-prev::after,
.f-carousel__arrows .slick-next::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	color: #fff;
	font-size: 20px;
}

.f-carousel__arrows .slick-prev::after {
	content: "\e5e0";
}

.f-carousel__arrows .slick-next::after {
	content: "\e5e1";
}

.f-carousel__text {
	/*position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 12px;
	font-size: 12px;
	color: #fff;
	background-color: rgba(0, 0, 0, 0.7);
	box-sizing: border-box;*/
	display: none;
}

.f-carousel__thumbnail {
	/*	display: flex;
	justify-content: center;
	width: 100%;
	margin-top: 10px;
	padding-left: 5px;
	padding-right: 8px;
	vertical-align: middle;*/
	display: none !important;
}

/*
.f-carousel__thumbnail .slick-slide {
	margin-left: 5px;
	margin-right: 5px;
	overflow: hidden;
	white-space: nowrap;
}

.f-carousel__thumbnail .slick-current {
	position: relative;
	box-sizing: border-box;
}

.f-carousel__thumbnail .slick-current::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.5);
}

.f-carousel__thumbnail .slick-current::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #e61b61;
	box-sizing: border-box;
}

.f-carousel__thumbnail .slick-list {
	padding: 0 !important;
}

.f-carousel__thumbnail-image {
	width: 80px;
	box-sizing: border-box;
	vertical-align: middle;
}

.f-carousel__thumbnail-picture {
	height: 61px;
	margin: 0 auto;
}*/
.f-carousel__number {
	display: none;
}

/* ドットを追加 */
.f2-carousel__dot {
	position: absolute;
	bottom: 8px;
	left: 0;
	width: 100%;
	display: flex;
	justify-content: center;
	list-style: none;
	gap: 8px;
	font-size: 0;
	line-height: 1;
}

.f2-carousel__dot&gt;li {}

.f2-carousel__dot&gt;li button {
	background: transparent;
	border: none;
	padding: 0;
	font-size: 0;
	line-height: 1;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #BFC2C6;
}

.f2-carousel__dot&gt;li.slick-active button {
	background: var(--nta-orange1);
}

/* 写真ボタン */
.f2-btn-photo {
	background-color: rgba(255, 255, 255, 0.9);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none !important;
}

.f2-btn-photo::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"1, "wght"400;
	content: "\e412";
	font-size: 24px;
	color: var(--nta-black1);
	font-variation-settings: "FILL"1, "wght"400;
	padding-bottom: 2px
}

.f-carousel__wrap .f2-btn-photo-wrap {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 1;
}

/*--------------------------------
1.20 tooltip
--------------------------------*/
.f-tooltip {
	display: none;
	position: absolute;
	top: -82px;
	left: 0;
	width: 185px;
	height: 78px;
	padding-top: 7px;
	padding-left: 12px;
	padding-right: 12px;
	background-color: #fff;
	border: 1px solid #20208c;
	box-sizing: border-box;
}

.f-tooltip::before {
	content: "";
	position: absolute;
	bottom: -13px;
	left: 50%;
	width: 0;
	height: 0;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	border-top: 13px solid #20208c;
	transform: translateX(-50%);
	z-index: 1;
}

.f-tooltip::after {
	content: "";
	position: absolute;
	bottom: -11px;
	left: 50%;
	width: 0;
	height: 0;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
	border-top: 13px solid #fff;
	transform: translateX(-50%);
	z-index: 2;
}

.f-tooltip__title {
	margin-bottom: 5px;
	font-size: 10px;
	text-align: center;
}

.f-tooltip__list {
	display: flex;
	justify-content: space-between;
	padding-top: 3px;
	padding-bottom: 3px;
}

.f-tooltip__list+.f-tooltip__list {
	border-top: 1px dashed #ededed;
}

.f-tooltip__item {
	font-size: 11px;
}

.f-tooltip__description {
	font-size: 12px;
	font-weight: bold;
}

.f-plan-tool-tip-center__text {
	font-size: 11px;
	position: absolute;
	width: 100%;
	text-align: center;
	color: #000;
}

.f-plan-tool-tip-left__text {
	font-size: 11px;
	position: absolute;
	margin-bottom: 2px;
	padding-bottom: 2px;
	width: 89%;
	top: 26px;
	text-align: left;
	border-bottom: #000 dashed 1px;
}

.f-plan-tool-tip-right__text {
	font-size: 11px;
	font-weight: bold;
	color: #000;
	position: absolute;
	width: 85%;
	text-align: right;
}

.f-plan-tool-tip-B_left__text {
	font-size: 11px;
	position: absolute;
	margin-top: 5px;
	margin-bottom: 1px;
	width: 85%;
	top: 40px;
	text-align: left;
}

.f-plan-tool-tip-B_right__text {
	font-size: 11px;
	font-weight: bold;
	color: #000;
	position: absolute;
	width: 85%;
	text-align: right;
}

/*--------------------------------
1.21 modal
--------------------------------*/
.f-modal {
	position: relative;
	width: 380px;
	min-height: 180px;
	margin: 0 auto;
	padding: 20px 25px 90px;
	background-color: #fff;
	box-sizing: border-box;
	z-index: 150;
}

.f-modal__text {
	font-size: 14px;
	line-height: 1.5;
}

.f-modal__text+.f-modal__text {
	margin-top: 20px;
}

.f-modal__button {
	display: flex;
	justify-content: center;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 24px;
	width: 100%;
	box-sizing: border-box;
}

.f-modal__button .f-button-line--small {
	max-width: 240px;
}

@media screen and (max-width: 759px) {
	.f-modal__button .f-button-line--small {
		max-width: 180px;
	}
}

.f-error-modal {
	display: none;
	position: fixed;
	width: 380px;
	min-height: 180px;
	margin: 0 auto;
	padding: 20px 25px 80px;
	background-color: #fff;
	box-sizing: border-box;
	border-radius: 4px;
	z-index: 150;
}

@media screen and (max-width: 759px) {
	.f-error-modal {
		max-width: calc(100% - 48px);
		padding: 24px 24px 80px;
	}
}

.f-error-modal-close {
	color: #333;
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	opacity: 0.65;
	padding: 0 0 18px 10px;
	font-style: normal;
	font-size: 28px;
	font-family: Arial, Baskerville, monospace;
	user-select: none;
}

button.f-error-modal-close {
	overflow: visible;
	cursor: pointer;
	background: transparent;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	box-shadow: none;
	touch-action: manipulation;
}

.f-modal__overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 100;
}

.f-modal-hint {
	position: relative;
	width: 620px;
	margin: 0 auto;
	padding: 30px;
	background-color: #fff;
	box-sizing: border-box;
	z-index: 150;
}

.f-modal-hint .f-detail-unit__title {
	margin-bottom: 18px;
}

.f-modal__title {
	display: flex;
	align-items: center;
	height: 24px;
	margin-bottom: 15px;
	padding-left: 15px;
	font-weight: bold;
	font-size: 16px;
	border-left: 4px solid #20208C;
}

.f-modal__list {
	margin-top: 15px;
}

.f-modal__item {
	padding-left: 1.4em;
	font-size: 12px;
	list-style: none;
	line-height: 1.5;
	text-indent: -1.4em;
}

.f-modal-gallery {
	position: relative;
	width: 960px;
	margin: 50px auto;
	background-color: #fff;
	z-index: 150;
}

.f-modal-gallery .mfp-close {
	display: none;
}

.f-modal-gallery__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 50px;
	padding-left: 15px;
	padding-right: 15px;
	background-color: #20208c;
	box-sizing: border-box;
}

.f-modal-gallery__title {
	position: relative;
	padding-left: 30px;
	font-weight: bold;
	font-size: 20px;
	color: #fff;
}

.f-modal-gallery__title::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 5px;
	width: 17px;
	height: 15px;
	background: url("../images/icon/ico_photo01.png") no-repeat 0 0;
	background-size: 17px 15px;
}

.f-modal-gallery__icon {
	width: 26px;
}

.f-modal-gallery__body {
	padding: 30px 70px 60px 70px;
	background-color: #fff;
}

.f-modal-gallery__inner {
	margin-bottom: 30px;
}

.f-modal-gallery__inner-bottom {
	margin-bottom: 50px;
}

.f-modal-gallery__heading {
	display: flex;
	align-items: center;
	height: 20px;
	margin-bottom: 20px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
}

.f-modal-gallery__flex {
	display: flex;
}

.f-modal-gallery__detail {
	width: 375px;
}

.f-modal-gallery__detail:nth-child(even) {
	margin-left: 60px;
}

.f-modal-gallery__image {
	display: flex;
	align-items: center;
	width: 375px;
	height: 281px;
	background-color: #ededed;
}

.f-modal-gallery__picture {
	height: 282px;
	margin: 0 auto;
}

.f-modal-gallery__caption {
	margin: 5px 0 20px 0;
	font-size: 12px;
}

#shadow {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	background-color: gray;
	display: none;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 10;
}

/*add20191108　modal　.modal-hint01_brandname_popupmodal from NTA*/
.modal-hint01_brandname_popupmodal p.f-modal__title {
	margin: 0 0 10px 0;
	padding: 0 10px 0;
}

.modal-hint01_brandname_popupmodal p.f-modal__title img {
	margin-left: 10px;
}

.modal-hint01_brandname_popupmodal p.f-modal__text {
	margin-bottom: 30px;
	padding: 0;
}

.childNum a {
	text-decoration: none;
	padding-left: 10px;
}

.popupChild {
	border: 2px solid #20208c;
	position: absolute;
	width: 295px;
	background: #FFFFFF;
	z-index: 100;
}

.popupChild .inner {
	padding: 8px 10px;
}

.popupChild .inner table {
	margin: 0 auto;
}

.popupChild td {
	padding-bottom: 2px;
}

.popupChild th {
	font-weight: normal;
	text-align: left;
	padding-right: 5px;
}

.popupChild .attention {
	font-size: 85%;
	padding-top: 10px;
	padding-bottom: 10px;
	color: #FF0000;
	vertical-align: top;
}

.popupChild .close {
	text-align: center;
	clear: both;
	padding-top: 5px;
}

.popupChild .close a {
	text-decoration: none;
}

/*--------------------------------
1.23 search
--------------------------------*/
.f-search-attention {
	display: flex;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
	border: 1px solid #cc0d21;
}

.f-search-attention__head {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 90px;
	font-weight: bold;
	color: #fff;
	background-color: #cc0d21;
}

.f-search-attention__body {
	width: calc(100% - 90px);
	padding: 18px;
	color: #cc0d21;
	line-height: 1.5;
	box-sizing: border-box;
}

.f-search-attention__text--strong {
	margin-bottom: 1px;
	font-weight: bold;
}

.f-search {
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
	padding: 14px 20px 23px;
	border: 2px solid #ccc;
	border-radius: 6px;
	box-sizing: border-box;
}

.f-search__head {
	display: flex;
	align-items: flex-end;
	padding-bottom: 18px;
	border-bottom: 2px solid #20208c;
}

.f-search__title {
	width: calc(100% - 170px);
	padding-left: 170px;
	font-size: 20px;
	color: #20208c;
	text-align: center;
	box-sizing: border-box;
}

.f-search__icon {
	position: relative;
	padding-left: 30px;
	font-weight: bold;
}

.f-search__icon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 20px;
	height: 20px;
	background: url("../images/icon/ico_search01.png") no-repeat 0 0;
	background-size: 20px 20px;
	transform: translateY(-50%);
}

.f-search__picture {
	width: 100%;
}

.f-search__number {
	width: 170px;
	font-weight: bold;
	text-align: right;
}

.f-search__number-important {
	margin-left: 10px;
	margin-right: 5px;
	font-weight: bold;
	font-size: 26px;
	color: #cc0d21;
}

.f-search__body {
	margin-top: 15px;
}

.f-search__body input:disabled+span {
	color: #CCCCCC;
}

.f-search__body input:disabled+label {
	color: #CCCCCC;
}

.f-search__flex {
	display: flex;
}

.f-search__inner {
	width: calc(100% - 320px);
}

.f-search-nights__wrap {
	margin-bottom: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid #ededed;
}

.f-search-nights {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 5px;
	background-color: #f5f5f5;
	border-radius: 4px;
	box-sizing: border-box;
}

.f-search-nights__text {
	font-size: 13px;
}

.f-search-nights__text--strong {
	font-weight: bold;
}

.f-search-nights__text--small {
	margin-left: 25px;
	font-size: 11px;
}

.f-search-map-click {
	width: 320px;
	margin-left: 20px;
}

.f-search-map-click__text {
	margin-bottom: 10px;
	font-size: 13px;
}

.f-search-map-click__list {
	padding: 0px 5px;
	margin-bottom: 10px;
	font-size: 90%;
	line-height: normal;
}

.f-search-map-click__item {
	position: relative;
	font-weight: bold;
	list-style: none;
}

.f-search-map-click__item+.f-search-map-click__item {
	padding-left: 20px;
}

.f-search-map-click__item+.f-search-map-click__item::before {
	content: "&gt;";
	position: absolute;
	top: 1px;
	left: 7px;
	width: 5px;
	height: 5px;
	font-weight: bold;
	color: #333;
}

.f-search-map-click__label {
	margin-bottom: 11px;
	font-weight: bold;
}

.f-search-map-click__link {
	color: #0065d6;
	text-decoration: none;
}

.f-search-map-click__image {
	width: 320px;
}

.f-search-term {
	display: flex;
}

.f-seach-term__small {
	width: 280px;
	margin-right: 30px;
}

.f-seach-term__small .f-search__item:not(:last-child) {
	border-bottom: none;
}

.f-seach-term__small .f-search__descirption--short {
	border-bottom: none;
}

.f-search-term__large .f-select__wrap,
.f-search-term__large .f-select {
	width: 190px;
	padding-right: 0;
}

.f-search-term__list {
	display: flex;
	align-items: center;
}

.f-search-term__item {
	margin-right: 5px;
	font-weight: bold;
	white-space: nowrap;
}

.f-search-term__descirption {
	display: flex;
	align-items: center;
}

.f-search-term__text--small {
	margin-left: 8px;
	margin-right: 10px;
	font-size: 11px;
	color: #a0a0a0;
	white-space: nowrap;
}

.f-search__list {
	display: flex;
	flex-wrap: wrap;
	margin-top: -15px;
}

.f-search__list--long {
	display: flex;
	flex-wrap: wrap;
	margin-top: 15px;
	border-top: 1px solid #ededed;
}

.f-search__item {
	width: 78px;
	padding-top: 24px;
	font-weight: bold;
}

.f-search__item:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__item--short {
	width: 80px;
	padding-right: 30px;
	padding-top: 23px;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
	box-sizing: border-box;
}

.f-search__item--exshort {
	width: 80px;
	padding-left: 20px;
	padding-top: 23px;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
	box-sizing: border-box;
}

.f-search__item--long {
	width: 105px;
	padding-top: 21px;
	font-weight: bold;
	border-bottom: 1px solid #ededed;
}

.f-search__item-stay-nights {
	width: 65px;
	padding-top: 24px;
	padding-left: 15px;
	font-weight: bold;
}

.f-search__item-stay-nights:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption {
	width: calc(100% - 78px);
	padding-top: 15px;
	padding-bottom: 15px;
}

.f-search__descirption:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption .f-input-calendar__wrap {
	width: 200px;
}

.f-search__descirption-dp {
	width: 300px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-dp:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-dp .f-input-calendar__wrap {
	width: 214px;
}

.f-search__descirption-stay-nights {
	width: 100px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-stay-nights:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption--short {
	width: 200px;
	padding-top: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid #ededed;
}

.f-search__descirption--short .f-select {
	min-width: 200px;
}

.f-search__item--noline {
	width: 105px;
	padding-top: 24px;
	font-weight: bold;
}

.f-search__item--noline-long {
	width: 110px;
	padding-top: 24px;
	font-weight: bold;
}

.f-search__descirption--noline {
	width: 148px;
	padding-top: 18px;
}

.f-search__descirption--noline .f-select {
	min-width: 148px;
}

.f-search__descirption--noline-long {
	width: 195px;
	padding-top: 18px;
}

.f-search__descirption--noline-long .f-select {
	min-width: 148px;
}

.f-search__descirption--long {
	width: calc(100% - 105px);
	padding-top: 13px;
	padding-bottom: 8px;
	border-bottom: 1px solid #ededed;
}

.f-search__descirption--long:last-child {
	padding-bottom: 13px;
}

.f-search__descirption--long .f-checkbox__text {
	margin-bottom: 5px;
}

.f-search__descirption-pax {
	width: 250px;
	padding-top: 13px;
	padding-bottom: 13px;
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-number-of-rooms {
	width: calc(100% - 460px);
	padding-top: 13px;
	padding-bottom: 13px;
	border-bottom: 1px solid #ededed;
}

.f-search__item-keyword {
	width: 105px;
	margin-bottom: 30px;
	padding-top: 32px;
	font-weight: bold;
}

.f-search__descirption-keyword {
	width: calc(100% - 105px);
	margin-bottom: 30px;
	padding-top: 13px;
}

.f-search__list-plan {
	display: flex;
	flex-wrap: wrap;
	margin-top: -15px;
	margin-bottom: -15px;
}

.f-search__item-plan {
	width: 105px;
	padding-top: 25px;
	font-weight: bold;
}

.f-search__item-plan:not(:nth-last-child(4)) {
	border-bottom: 1px solid #ededed;
}

.f-search__item-plan--long {
	width: 96px;
	padding-top: 25px;
	padding-right: 25px;
	font-weight: bold;
	text-align: right;
	box-sizing: border-box;
}

.f-search__item-plan--long:not(:nth-last-child(2)) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-plan {
	width: 305px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-plan:not(:nth-last-child(3)) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-plan-pax {
	width: 250px;
	padding-top: 18px;
	padding-bottom: 18px;
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-plan--long {
	width: 400px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-plan--long:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-plan--long-dp {
	width: 190px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-plan--long-dp:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__descirption-plan--departure {
	width: 168px;
	padding-top: 18px;
	padding-bottom: 18px;
}

.f-search__descirption-plan--departure:not(:last-child) {
	border-bottom: 1px solid #ededed;
}

.f-search__select--long {
	width: 200px;
}

.f-search__select--long-dp {
	width: 125px;
}

.f-search__select {
	width: 148px;
}

.f-search__radio {
	display: inline-block;
	margin-right: 30px;
}

.f-search-accordion {
	border: 2px solid #20208c;
	border-radius: 6px;
	box-shadow: 0 2px 0 #d6d6d6;
}

.f-search-accordion__head {
	display: flex;
	justify-content: space-between;
	padding: 18px;
	cursor: pointer;
}

.f-search-accordion__title {
	width: calc(100% - 22px);
	padding-left: 22px;
	font-weight: bold;
	font-size: 20px;
	color: #20208c;
	text-align: center;
}

.f-search-accordion__body {
	display: none;
	padding: 20px 20px 10px;
	border-top: 2px solid #20208c;
}

.f-search-requirement__head {
	position: relative;
	padding: 16px 0;
	font-weight: 700;
	font-size: 16px;
	text-align: left;
	border-bottom: 1px solid var(--nta-border-gray2);
	cursor: pointer;
}

@media screen and (max-width: 759px) {
	.f-search-requirement__head {
		padding: 12px 0;
		font-size: 14px;
	}
}

.f-search-requirement__head::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	content: "\e145";
	color: var(--nta-gray1);
	font-size: 24px;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -.5em;
	transition: transform 0.3s;
}

.f-search-requirement__head.is-open::after {
	content: "\e15b";
	transform: rotate(180deg);
}

.f-search-requirement__body {
	padding: 16px 0 16px;
}

@media screen and (max-width: 759px) {
	.f-search-requirement__body {
		padding: 10px 0 16px;
	}
}

.f-search-requirement__body-short {
	padding: 8px 0 16px;
}

.f-search-requirement__box+.f-search-requirement__box {
	margin-top: 24px;
}

.f-search-requirement__label {
	display: flex;
	font-weight: 700;
	margin-top: 8px;
	margin-bottom: 8px;
}

.f-search-requirement__label .f-button-hint {
	position: relative;
	top: -3px;
}

.f-search-requirement_inner {
	margin-bottom: 10px;
	padding: 15px 20px;
	background-color: #eff5ff;
}

.f-search-requirement__title {
	padding-bottom: 15px;
	font-weight: bold;
	color: #20208c;
}

.f-search-requirement__list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 12px 15px;
	background-color: #fff;
}

.f-search-requirement__list+.f-search-requirement__list {
	margin-top: 10px;
}

.f-search-requirement__item {
	position: relative;
	width: 118px;
	font-weight: bold;
	font-size: 12px;
	color: #20208c;
	line-height: 1.5;
}

.f-search-requirement__description {
	width: calc(100% - 118px);
}

.f-search-requirement__flex {
	display: flex;
}

.f-search-requirement__half {
	width: 430px;
	margin-bottom: 10px;
	padding: 15px;
	background-color: #eff5ff;
}

.f-search-requirement__half:nth-child(odd) {
	margin-right: 10px;
}

.f-search-requirement__half .f-checkbox__text {
	min-width: 130px;
}

.f-search-window__list-choice {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 16px;
}

@media screen and (max-width: 759px) {
	.f-search-window__list-choice {
		gap: 0 16px;
	}
}

.f-search-window__list-choice&gt;li {
	list-style: none;
}

.f-search-window__item-choice {
	width: calc((100% - 16px) / 2);
	box-sizing: border-box;
}

.f-search-window__item-choice .f-radio__label,
.f-search-window__item-choice .f-detail-term__checkbox {
	width: 100%;
	font-size: 14px;
	padding-top: 8px;
	padding-bottom: 8px;
}

@media screen and (max-width: 759px) {

	.f-search-window__item-choice .f-radio__label,
	.f-search-window__item-choice .f-detail-term__checkbox {
		width: 100%;
		font-size: 12px;
	}
}

.f-search-window__item-choice .f-checkbox__text {
	padding-right: 0;
	display: inline-block;
	padding-top: 8px;
	padding-bottom: 8px;
}

.f-search-keywords__wrap {
	display: flex;
}

.f-search-keywords {
	margin-top: 24px;
	margin-bottom: 24px;
}

.f-search-keywords__head {
	font-weight: 700;
	margin-bottom: 8px;
}

.f-search-keywords__body {}

.f-search-keywords__flex {
	display: flex;
	align-items: center;
	gap: 0 16px;
}

.f-search-keywords__radio {
	width: 340px;
	margin-top: 12px;
	margin-left: 20px;
}

.f-search-keywords__radio .f-radio__label:not(:last-child) {
	margin-right: 20px;
}

.f-search-keywords__radio-dp {
	width: 340px;
	margin-top: -4px;
	margin-left: 20px;
}

.f-search-keywords__radio-dp .f-radio__label:first-of-type {
	margin-right: 62px;
}

.f-search-keywords__radio-dp .f-radio__label:last-of-type {
	margin-left: 20px;
}

/* 現在選択されている内容 */
.f-search-selected {
	padding: 24px;
	margin-bottom: 16px;
	background: var(--nta-bg-gray1);
}

.f-search-selected__head {
	padding: 0 0 16px;
	font-weight: 700;
	font-size: 16px;
	border-bottom: 1px solid var(--nta-border-gray1);
}

.f-search-selected__body {
	padding: 24px 0 0;
}

@media screen and (max-width: 759px) {
	.f-search-selected {
		padding: 8px;
	}

	.f-search-selected__head {
		padding: 8px 0;
		font-size: 12px;
	}

	.f-search-selected__body {
		padding: 16px 0;
	}
}

.f-search-selected__list {
	display: flex;
	flex-wrap: wrap;
}

.f-search-selected__item {
	align-self: flex-start;
	font-size: 12px;
	color: #fff;
	background: var(--nta-blue1);
	border-radius: 2px;
	padding: 4px 6px;
	width: 64px;
	box-sizing: border-box;
	text-align: center;
}

.f-search-selected__description {
	width: calc(100% - 64px);
	font-size: 14px;
	font-weight: 700;
	box-sizing: border-box;
	padding-left: 8px;
	margin-bottom: 24px;
}

.f-search-selected__description+.f-search-selected__description {
	width: 100%;
	padding-left: 72px;
}

.f-search-selected__description .f2-detail-txt {
	margin-top: 8px;
}

@media screen and (max-width: 759px) {
	.f-search-selected__list {
		flex-direction: column;
	}

	.f-search-selected__item {
		font-size: 11px;
		width: auto;
	}

	.f-search-selected__description {
		width: auto;
		padding-left: 0;
		margin: 8px 0 0;
	}

	.f-search-selected__description+.f-search-selected__item {
		margin-top: 16px;
	}

	.f-search-selected__description+.f-search-selected__description {
		margin-top: 8px;
		padding-left: 0;
	}

	.f-search-selected__description .f2-detail-txt {
		margin-top: 8px;
		margin-bottom: 4px;
	}
}

.f-search-selected__inner {
	display: flex;
	width: 100%;
	margin-top: 5px;
	padding-top: 12px;
	border-top: 1px dashed #ccc;
	box-sizing: border-box;
}

.f-search-selected__detail {
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 140px);
	margin-top: 3px;
	padding-right: 15px;
}

.f-search-selected__text {
	display: flex;
	margin-top: 5px;
	margin-bottom: 5px;
	margin-right: 30px;
	font-size: 13px;
	color: #20208c;
}

.f-search-selected__button {
	position: relative;
	top: -1px;
	width: 16px;
	margin-left: 5px;
	transition: opacity 0.2s ease-out;
}

.f-search-selected__button:hover {
	opacity: 0.6;
}

.f-search-selected__icon {
	width: 100%;
}

.f-search-selected .f-search__button {
	display: flex;
	max-width: 240px;
	margin-top: 24px;
	margin-left: auto;
	margin-right: auto;
}

.f-search__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	position: relative;
	width: 100%;
	height: 40px;
	font-size: 16px;
	color: var(--nta-blue1);
	background-color: #fff;
	border: 1px solid var(--nta-blue1);
	border-radius: 20px;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	box-sizing: border-box;
	cursor: pointer;
}

@media screen and (max-width: 759px) {
	.f-search__button {
		height: 30px;
		font-size: 14px;
	}
}

.f-search-tab__flex {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 20px;
}

.f-search-tab__text {
	font-size: 13px;
	line-height: 1.5;
}

/* ホテル一覧のタブ部分 */
.f-search-sort {
	clear: both;
}

.f-search-sort__description {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0 16px;
	border-bottom: 4px solid var(--nta-blue1);
	margin-bottom: 16px;
}

.f-search-sort_button {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	height: 48px;
	font-weight: 700;
	border-radius: 4px 4px 0 0;
	background: var(--nta-bg-gray1);
	color: var(--nta-gray1);
	cursor: pointer;
}

.f-search-sort_button.is-active {
	background: var(--nta-blue1);
	color: #fff;
	font-weight: 700;
	cursor: default;
	pointer-events: none;
}

@media screen and (max-width: 759px) {
	.f-search-sort__description {
		gap: 0 8px;
		border-bottom-width: 2px;
		margin-bottom: 16px;
	}

	.f-search-sort_button {
		font-size: 14px;
		height: 40px;
		font-weight: 500;
	}
}

/* 検索結果 */
.f-search-facility {
	margin-top: 32px;
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f-search-facility {
		clear: both;
		margin-top: 0;
		padding-bottom: 8px;
		margin-bottom: 24px;
		display: block;
	}
}

.f-search-facility *,
.f-search-facility *::before,
.f-search-facility *::after {
	box-sizing: border-box;
}

.f-search-facility__wrap {}

.f-search-facility__number {
	display: flex;
	align-items: flex-end;
	font-size: 16px;
	margin-bottom: 24px;
}

.f-search-facility__number-text {
	margin-right: .5em;
}

.f-search-facility__number--important {
	margin-right: .2em;
	font-weight: 700;
	font-size: 22px;
	color: var(--nta-red1);
}

@media screen and (max-width: 759px) {
	.f-search-facility__number {
		font-size: 14px;
		margin-bottom: 16px;
	}

	.f-search-facility__number--important {
		font-size: 18px;
	}
}

.f-search-facility__head {
	width: 320px;
	flex-shrink: 0;
	position: relative;
}

@media screen and (max-width: 759px) {
	.f-search-facility__head {
		width: auto;
	}
}

.f-search-facility__button {
	width: 108px;
}

.f-search-facility__title {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 16px;
}

@media screen and (max-width: 759px) {
	.f-search-facility__title {
		font-size: 16px;
		margin-bottom: 8px;
	}
}

.f-search-facility__subtitle {
	display: inline-block;
	margin-left: 20px;
	font-size: 12px;
	color: #333;
	line-height: 1.5;
}

.f-search-facility__link {
	color: var(--nta-black1);
	text-decoration: none;
	transition: opacity 0.2s ease-out;
}

@media print,
screen and (min-width: 760px) {
	.f-search-facility__link:hover {
		opacity: 0.8;
	}
}

.f-search-facility__lead {
	font-weight: bold;
	font-size: 20px;
	line-height: 1.5;
}

.f-search-facility__body {
	width: calc(100% - 320px);
	padding-left: 16px;
}

@media screen and (max-width: 759px) {
	.f-search-facility__body {
		width: auto;
		padding-left: 0;
		padding-top: 8px;
	}
}

.f-search-facility__flex {
	display: flex;
}

.f-search-facility__image {
	position: relative;
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 4/3;
}

.f-search-facility__picture,
.f-search-facility__picture-hotel {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.f-search-detail__title {
	margin-bottom: 12px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f-search-detail__title {
		margin-bottom: 8px;
		font-size: 16px;
	}
}

.f-search-facility__info {
	width: calc(100% - 310px);
	padding-left: 30px;
	box-sizing: border-box;
}

.f-search-facility__list {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 15px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.f-search-facility__item {
	width: 140px;
	padding-top: 8px;
	padding-bottom: 8px;
	font-weight: bold;
	line-height: 1.5;
}

.f-search-facility__item:not(:nth-last-child(2)) {
	border-bottom: 1px dashed #ccc;
}

.f-search-facility__description {
	width: calc(100% - 140px);
	padding-top: 8px;
	padding-bottom: 8px;
	line-height: 1.5;
}

.f-search-facility__description:not(:last-child) {
	border-bottom: 1px dashed #ccc;
}

.f-search-facility__place {
	font-size: 13px;
	line-height: 1.5;
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}

.f-search-facility__place::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	content: "\e0c8";
	font-size: 18px;
}

.f-search-access__wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
}

.f-search-access {
	font-size: 12px;
	line-height: 1.5;
}

.f-search-access__list {
	display: flex;
}

.f-search-access__item {
	width: 95px;
	margin-top: 3px;
	font-weight: bold;
	line-height: 1.5;
}

.f-search-access__description {
	width: calc(100% - 95px);
	line-height: 1.5;
}

.f-search-access__text--strong {
	margin-right: 40px;
	font-weight: bold;
}

.f-search-review {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
	padding-top: 10px;
	padding-bottom: 20px;
	border-bottom: 1px dashed #ccc;
}

.f-search-review__stars {
	font-weight: bold;
}

.f-search-review__stars .f-star--small {
	margin-left: 10px;
}

.f-search-review__text {
	margin-top: 2px;
	font-size: 12px;
}

.f-search-facility__text {
	line-height: 1.5;
}

.f-search-facility__text+.f-search-facility__text {
	margin-top: 15px;
}

.f-search-facility__text__hidden {
	line-height: 1.5;
	height: 4.5em;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.f-search-facility__label {
	margin-bottom: 12px;
}

.f-search-facility__label--large {
	margin-bottom: 12px;
}

.f-search-facility__label .f-label {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.f-search-facility__label .f-label-type {
	background: var(--nta-gray1);
}

.f-pr_label {
	margin: 6px 0;
	font-size: 13px;
}

.f-pr_icon_01 {
	display: inline-block;
	border: 1px solid #e04c31;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
	font-weight: bold;
}

.f-pr_icon_01_text {
	display: inline-block;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #e04c31;
}

.f-pr_icon_02 {
	display: inline-block;
	border: 1px solid #069ad6;
	list-style: none;
	text-align: center;
	padding: 6px 9px;
	color: #069ad6;
	font-weight: bold;
}

.f-search-plan {
	width: 100%;
	margin-top: 32px;
	margin-bottom: 32px;
	padding: 24px 16px;
	background: var(--nta-bg-gray1);
	border-radius: 4px;
}

@media screen and (max-width: 759px) {
	.f-search-plan {
		margin-top: 24px;
		margin-bottom: 16px;
		padding: 16px 8px 8px;
	}
}

.f-search-facility.is-plan-hide .f-search-plan__inner,
.f-search-facility.is-plan-hide .f-search-plan__detail {
	display: none;
}

.f-search-facility:not(.is-plan-hide) .f2-hotel-price {
	display: none;
}

.f-search-facility.is-plan-hide .f-search-plan {
	background: transparent;
	margin-top: 0;
	padding-top: 0;
	margin-bottom: 8px;
}

@media screen and (max-width: 759px) {
	.f-search-facility.is-plan-hide .f-search-plan {
		margin-bottom: 0;
	}
}

.f2-roomlist-container .f-search-facility:not(.is-plan-hide) .f-search-facility__body .f2-plan-price {
	display: none;
}

.f2-roomlist-container .f-search-facility:not(.is-plan-hide) .f2-search-plan__more-btn {}

.f-search-plan__head,
.f-search-plan__head--small {
	margin-bottom: 16px;
	text-align: center;
}

.f-search-plan__head-inner {
	margin-bottom: 12px;
}

.f-search-plan__title {
	font-size: 20px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {

	.f-search-plan__head,
	.f-search-plan__head--small {
		text-align: left;
	}

	.f-search-plan__head--small {
		margin-bottom: 12px;
	}

	.f-search-plan__title {
		font-size: 14px;
	}
}

.f-search-plan__title-noflex {
	display: flex;
	align-items: center;
	width: 136px;
	height: 24px;
	margin-right: 20px;
	padding-left: 10px;
	font-weight: bold;
	font-size: 16px;
	border-left: 4px solid #20208C;
	box-sizing: border-box;
}

.f-search-plan__text {
	width: 550px;
	margin-top: 5px;
	padding-left: 8.7em;
	text-indent: -8.7em;
	box-sizing: border-box;
}

.f-search-plan__text--strong {
	margin-right: 5px;
	font-weight: bold;
}

.f-search-plan__arrow {
	width: 230px;
	margin-top: 3px;
	padding-right: 5px;
	text-align: right;
	box-sizing: border-box;
}

.f-search-plan__detail {
	background: #fff;
	margin-bottom: 16px;
	padding: 16px;
	border-radius: 4px;
	box-shadow: 0 1px 6px 0 rgba(var(--nta-black1-rgb), .2);
	position: relative;
	min-height: 242px;
}

@media screen and (max-width: 759px) {
	.f-search-plan__detail {
		margin-bottom: 8px;
		padding: 8px 8px 12px;
		min-height: initial;
	}
}

.f-search-plan__link {}

.f-search-plan__link::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 24px;
	height: 100%;
	background-color: #20208c;
}

.f-search-plan__link::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 12px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg) translateY(-50%);
}

.f-search-plan__link:hover {
	opacity: 0.6;
}

.f-search-plan__label {
	display: flex;
	margin-top: -12px;
	margin-bottom: 10px;
}

.f-search-plan__flex {
	display: flex;
}

.f-search-plan__flex--large {
	width: 65%;
}

@media screen and (max-width: 759px) {
	.f-search-plan__image--large {
		width: auto;
	}
}

.f-search-plan__flex--small {
	width: 35%;
	text-align: right;
}

.f-search-plan__image {
	width: 280px;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 4/3;
}

@media screen and (max-width: 759px) {
	.f-search-plan__image {
		width: 100%;
		position: static;
	}
}

.f-search-plan__image--large {
	width: 320px;
	position: relative;
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 4/3;
}

.f-search-plan__image .f2-remaining-icon-wrap,
.f-search-plan__image--large .f2-remaining-icon-wrap {
	position: absolute;
	top: 4px;
	left: 4px;
}

.f-search-plan__picture {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.f-search-plan__info {
	position: relative;
	padding-left: 296px;
}

@media screen and (max-width: 759px) {
	.f-search-plan__info {
		padding-left: 0;
	}
}

.f-search-plan__lead {
	margin-bottom: 8px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f-search-plan__lead {
		margin-top: 8px;
		font-size: 14px;
	}
}

.f-search-plan__flex-banner {
	display: flex;
	justify-content: space-between;
	margin-top: 5px;
}

.f-search-plan__lead--large {
	width: 560px;
	min-height: 32px;
	margin-bottom: 18px;
	font-weight: bold;
	font-size: 16px;
	color: #20208c;
	line-height: 1.5;
}

.f-search-plan__banner {
	display: flex;
	width: 84px;
	justify-content: space-between;
}

.f-search-plan__banner .f-button-hint {
	margin-top: 3px;
}

.f-search-plan__flex-label {
	display: flex;
	flex-wrap: wrap;
}

.f-search-plan__flex-label .f-label {
	margin-right: 20px;
}

.f-search-plan__text--small {
	margin-bottom: 10px;
	font-size: 12px;
	color: #5c5c5c;
}

.f-search-plan__text-code {
	margin-bottom: 10px;
	font-size: 14px;
	color: #5c5c5c;
}

.f-search-plan__text-info {
	margin-top: 15px;
	font-size: 14px;
	color: #5c5c5c;
}

.f-search-plan__text--important {
	padding-top: 5px;
	font-weight: bold;
	font-size: 22px;
	color: #cc0d21;
}

.f-search-plan__favorite {
	position: absolute;
	top: 20px;
	right: 44px;
}

.f-search-plan__detail:hover .f-search-plan__favorite {
	opacity: 0.6;
}

.f-search-plan__button {
	display: flex;
	justify-content: center;
	margin-top: 24px;
}

@media screen and (max-width: 759px) {
	.f-search-plan__button {
		padding-bottom: 8px;
	}
}

.f-search-plan__button .f-button-line--small {
	max-width: 360px;
}

.f-search-map {
	margin-top: 20px;
	margin-left: 10px;
	margin-right: 10px;
}

.f-search-map__image {
	width: 100%;
	height: 630px;
	padding-top: 100px;
	padding-left: 240px;
	padding-right: 230px;
	background: url("../images/img_map01.png") no-repeat 0 0;
	background-size: 950px 630px;
	box-sizing: border-box;
}

/* map carousel */
.f-map-carousel {
	cursor: pointer;
}

.f-search-popup-container {
	cursor: auto;
	height: 0;
	position: absolute;
	/* The max width of the popup window. */
	width: 480px;
}

.f-search-popup-anchor {
	/* Position the div a fixed distance above the tip. */
	position: absolute;
	width: 100%;
	bottom: 15px;
	left: 0;
}

.f-search-popup-anchor::after {
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	width: 0;
	height: 0;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
	border-top: 15px solid #fff;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 2;
}

.f-search-balloon {
	position: relative;
	width: 100%;
	min-height: 350px;
	padding: 20px;
	background-color: #fff;
	border-radius: 6px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
	box-sizing: border-box;
}

.gm-style .f-search-balloon {
	font-family: 'Noto Sans JP', "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-seif;
	font-size: 14px;
	text-decoration: none;
}

.gm-style .f-search-balloon__detail-inner a {
	text-decoration: none;
}

.gm-style .f-star--medium:before,
.gm-style .f-star--medium:after {
	height: auto;
}

.f-search-balloon__button-close {
	width: 26px;
	cursor: pointer;
}

.f-search-balloon__flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.f-search-balloon__block {
	margin-top: 10px;
}

.f-search-balloon__image {
	width: 140px;
	height: 108px;
}

.f-search-balloon__detail {
	display: flex;
	align-items: center;
	width: calc(100% - 140px);
	padding-left: 20px;
	box-sizing: border-box;
}

.f-search-balloon__name {
	margin-top: -5px;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 18px;
	color: #20208c;
	line-height: 1.5;
}

.f-search-balloon__stars {
	font-weight: bold;
	font-size: 16px;
}

.f-search-balloon__stars .f-star--medium {
	margin-left: 15px;
}

.f-search-balloon__text {
	margin-top: 18px;
	padding-bottom: 18px;
	border-bottom: 1px dashed #ccc;
}

.f-search-balloon__text--strong {
	margin-right: 20px;
	font-weight: bold;
}

.f-search-balloon__list {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 15px;
	margin-bottom: 30px;
}

.f-search-balloon__item {
	font-size: 12px;
	color: #a0a0a0;
}

.f-search-balloon__description {
	font-weight: bold;
	font-size: 20px;
	color: #cc0d21;
}

.f-search-balloon__picture,
.f-search-map__icon {
	width: 100%;
}

.f-search-favorite {
	text-align: center;
}

.f-search-favorite__explain {
	width: 448px;
	margin: 20px auto;
	padding: 13px 15px 10px;
	border: 2px solid #ccc;
	box-sizing: border-box;
}

.f-search-favorite__text--zero {
	font-weight: bold;
	color: #a0a0a0;
}

.f-search-favorite__text--strong {
	margin-bottom: 12px;
	font-weight: bold;
	font-size: 16px;
	color: #ff8b17;
}

.f-search-favorite__text {
	font-size: 13px;
	line-height: 1.6;
}

.f-search-favorite__text--attention {
	color: #cc0d21;
}

.f-search-favorite__button {
	display: flex;
	justify-content: center;
}

.f-search-map-plan {
	margin-top: 35px;
	margin-left: 10px;
}

.f-search-map-plan__head {
	display: flex;
	align-items: center;
	height: 20px;
	margin-bottom: 15px;
	padding-left: 10px;
	font-weight: bold;
	border-left: 4px solid #20208C;
	font-size: 16px;
}

.f-search-map-plan__body {
	padding-top: 10px;
}

.f-search-card__list {
	margin-top: 24px;
	margin-bottom: 30px;
}

.f-search-special {
	margin-top: -5px;
	margin-bottom: 30px;
}

.f-search-special__image {
	width: 100%;
	margin-bottom: 15px;
}

.f-search-special__picture {
	width: 100%;
}

.f-search-special__detail {
	margin-left: 10px;
	margin-right: 10px;
	padding-bottom: 8px;
}

.f-search-special__text {
	line-height: 1.5;
}

.f-search-special__text+.f-search-special__text {
	margin-top: 15px;
}

.f-search-special__link {
	margin-top: 20px;
}

.f-search-none {
	width: 351px;
	height: 186px;
	margin: 80px auto 10px;
	padding-top: 24px;
	text-align: center;
	border: 1px solid #20208c;
	box-sizing: border-box;
}

.f-search-none__icon {
	width: 40px;
	margin-bottom: 23px;
}

.f-search-none__text--large {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 16px;
	color: #20208c;
}

.f-search-none__text {
	font-size: 12px;
	line-height: 1.5;
}

.f-search-map__overlay {
	position: relative;
}

.f-search-map__overlay::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
}

.f-search-map__attention__wrap {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	height: 140px;
	margin: auto;
}

.f-search-map__attention {
	position: relative;
	width: 280px;
	height: 140px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 34px;
	text-align: center;
	background-color: #fff;
	border-radius: 6px;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
	box-sizing: border-box;
	z-index: 5;
}

.f-search-map__attention-icon {
	width: 40px;
	margin-bottom: 16px;
}

.f-search-info__body {
	display: flex;
	justify-content: space-between;
	padding: 15px 10px 45px;
}

.f-search-info__carousel {
	width: 375px;
}

.f-search-info__inner {
	width: 540px;
}

.f-search-info__label {
	margin-top: 10px;
	margin-left: 10px;
	margin-right: 10px;
}

.f-search-info__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	line-height: 1.2;
	border-top: 1px solid var(--nta-border-gray2);
}

.f-search-info__item,
.f-search-info__item--long {
	flex-shrink: 0;
	width: 20%;
	background: var(--nta-bg-gray3);
	padding: 1em;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

.f-search-info__description,
.f-search-info__description--short {
	flex-shrink: 0;
	width: 80%;
	padding: 1em 0 1em 1.5em;
	font-size: 14px;
	line-height: 1.5;
	border-bottom: 1px solid var(--nta-border-gray2);
	box-sizing: border-box;
}

@media screen and (max-width: 759px) {
	.f-search-info__list {
		display: block;
		border-top: none;
	}

	.f-search-info__item,
	.f-search-info__item--long {
		width: auto;
		background: transparent;
		padding: 0 0 4px 0;
		font-size: 12px;
		border-bottom: none;
	}

	.f-search-info__description,
	.f-search-info__description--short {
		width: auto;
		padding: 0;
		font-size: 12px;
		border-bottom: none;
		margin-bottom: 1.5em;
	}
}

.f-search-info__flex {
	display: flex;
	justify-content: space-between;
}

.f-search-info__lead {
	margin-bottom: 45px;
}

.f-search-info__text {
	line-height: 1.5;
}

.f-search-info__text+.f-search-info__text {
	margin-top: 20px;
}

.f-search-info__banner {
	width: 60px;
	margin-right: 8px;
}

.f-search-info__banner-image {
	width: 100%;
}

.f-search-info__modal {
	text-align: right;
}

.f-search-info__link {
	display: inline-block;
	position: relative;
	margin-top: 20px;
	padding-left: 20px;
	text-align: right;
	text-decoration: none;
}

.f-search-info__link:visited {
	color: #0065d6;
}

.f-search-info__link::before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	width: 13px;
	height: 12px;
	background: url("../images/icon/ico_photo01.png") no-repeat 0 0;
	background-size: 13px 12px;
}

.f-search-info__button-map {
	margin-top: 2px;
}

.f-search-info__button {
	margin-top: 20px;
}

.f-search-room__list {
	display: flex;
	flex-wrap: wrap;
	width: 260px;
}

.f-search-room__item {
	width: 160px;
	line-height: 1.5;
}

.f-search-room__description {
	width: 100px;
	line-height: 1.5;
}

.f-search__shisetsu-list {
	text-align: center;
}

.f-search__loading-image {
	margin-top: 30px;
	width: 30px;
}

.f-search__hit-num-loading-image {
	width: 30px;
}

.f-search__map-overlay {
	background-color: #000000;
}

.f-search__map-loading {
	opacity: 0.7;
}

.f-search__map-loading-image {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 10;
}

/* 検索条件 */
.f2-input-icon--calendar::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
}

.f2-search-group {}

.f2-input-container {
	position: relative;
	display: flex;
	align-items: center;
}

.f2-input-label {
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	z-index: 2;
}

.f2-input-body .f-select {
	font-weight: 700;
}

.f2-input-body .f-select__wrap {
	width: 100%;
}

.f2-input-icon--calendar::after {
	content: "\e935";
	font-size: 24px;
	color: var(--nta-placeholder);
	position: absolute;
	top: 50%;
	margin-top: -.5em;
	left: 10px;
}

.f2-input-icon--calendar .f-select {
	padding-left: 40px;
	font-size: 16px;
}

@media screen and (max-width: 759px) {
	.f2-input-container {
		position: relative;
		display: block;
	}

	.f2-input-label {
		font-size: 10px;
		color: var(--nta-gray1);
		background: linear-gradient(180deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%);
		position: absolute;
		top: -5px;
		left: 10px;
	}

	.f2-input-icon--calendar .f-select {
		font-size: 14px;
	}
}

/* フロートボタン */
.f2-search-float {
	position: fixed;
	bottom: 80px;
	right: 0;
	z-index: 100;
}

.f2-search-float__btn {
	border: none;
	background: var(--nta-blue1);
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	border-radius: 4px 0 0 4px;
	padding: 4px;
	width: 80px;
	height: 80px;
	box-shadow: 0 1px 4px 0 rgba(var(--nta-black1-rgb), .16);
}

.f2-search-float__btn span {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
}

.f2-search-float__btn span::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	content: "\e8b6";
	font-size: 36px;
	letter-spacing: .05em;
	margin-bottom: 4px;
}

@media screen and (max-width: 759px) {
	.f2-search-float__btn {
		font-size: 10px;
		width: 56px;
		height: 56px;
	}

	.f2-search-float__btn span::before {
		font-size: 24px;
		letter-spacing: 0;
		margin-bottom: 0;
	}
}

/*--------------------------------
1.25 pagination
--------------------------------*/
.f-pagination__wrap {
	margin-top: 40px;
}

.f-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	position: relative;
}

.f-pagination__item {
	color: var(--nta-gray1);
	list-style: none;
}

.f-pagination__item.is-current .f-pagination__link {
	color: #fff;
	background-color: var(--nta-blue1);
	pointer-events: none;
}

.f-pagination__item .f-pagination__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 36px;
	height: 36px;
	background-color: #fff;
	box-shadow: 0 1px 4px 0 rgba(var(--nta-black1-rgb), 0.24);
	color: var(--nta-black1);
	font-size: 14px;
	font-weight: 700;
	border-radius: 3px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

@media print,
screen and (min-width: 760px) {
	.f-pagination__link:hover {
		opacity: 0.6;
	}
}

.f-pagination__between {
	width: 26px;
	height: 26px;
	margin-left: 3px;
	margin-right: 3px;
	font-family: Helvetica, sans-serif;
	font-size: 13px;
	text-align: center;
	list-style: none;
}

@media screen and (max-width: 759px) {
	.f-pagination {
		padding-left: 48px;
		padding-right: 48px;
	}

	.f-pagination__wrap {
		margin-top: 0;
	}

	.f-pagination__item .f-pagination__link {
		width: 32px;
		height: 32px;
		font-size: 12px;
	}
}

.f-pagination__prev,
.f-pagination__next {
	position: relative;
	list-style: none;
	box-sizing: border-box;
	cursor: pointer;
}

.f-pagination__prev {
	margin-right: 32px;
}

.f-pagination__next {
	margin-left: 32px;
}

.f-pagination__prev .f-pagination__link::before {
	content: "前へ";
}

.f-pagination__prev .f-pagination__link,
.f-pagination__next {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 36px;
	padding: 0 16px;
	background-color: #fff;
	box-shadow: 0 1px 4px 0 rgba(var(--nta-black1-rgb), 0.24);
	color: var(--nta-black1);
	font-size: 14px;
	font-weight: 700;
	border-radius: 3px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

.f-pagination__next::before {
	content: "次へ";
}

@media print,
screen and (min-width: 760px) {

	.f-pagination__prev:hover,
	.f-pagination__next:hover {
		opacity: 0.6;
	}
}

@media screen and (max-width: 759px) {
	.f-pagination__prev {
		position: absolute;
		top: 0;
		left: 0;
	}

	.f-pagination__next {
		position: absolute;
		top: 0;
		right: 0;
	}

	.f-pagination__prev .f-pagination__link,
	.f-pagination__next {
		height: 32px;
		padding: 0 8px;
		font-size: 12px;
	}
}

/*--------------------------------
1.27 attention
--------------------------------*/
.f-attention {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 80px;
	margin-bottom: 20px;
	padding-left: 10px;
	padding-right: 10px;
	background-color: #20208c;
	box-sizing: border-box;
}

.f-attention__text {
	font-weight: bold;
	font-size: 26px;
	color: #fff;
}

.f-attention__button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 145px;
	height: 40px;
	font-weight: bold;
	font-size: 13px;
	color: #fff;
	text-decoration: none;
	border: 1px solid #fff;
	border-radius: 4px;
	transition: opacity 0.2s ease-out;
}

.f-attention__button:hover {
	opacity: 0.5;
}

/*--------------------------------
1.28 slick
--------------------------------*/
/* 写真スライダー */
.slick-arrow,
.slick-slide {
	cursor: pointer;
}

/*-----------
1.30 information 緊急文言、年末年始文言など
-----------*/
#attention_message {
	border: 2px solid red;
	margin: 3px 0;
	padding: 6px;
	color: red;
	font-size: 13px;
	margin-bottom: 20px;
}

#attention_message span {
	font-weight: bold;
}

/*-----------
1.31 map
-----------*/
#Map,
#NTA_JR2_Map {
	position: relative;
	overflow: hidden;
	width: 300px;
	height: 211px;
	margin: 0;
	padding: 0;
}

#Map div.mapText div.box,
#NTA_JR2_Map div.mapText div.box {
	position: absolute;
	cursor: pointer;
	color: #333;
	border: 1px solid #229DE7;
	background-color: white;
	font-size: 10px;
	padding: 0px 3px 2px 3px;
	z-index: 2;
}

#Map div.mapText div.sel,
#NTA_JR2_Map div.mapText div.sel {
	color: red;
	border: 2px solid red;
}

#Map div.mapText div.over,
#NTA_JR2_Map div.mapText div.over {
	color: red;
}

#Map div.mapText div.na,
#NTA_JR2_Map div.mapText div.na {
	cursor: default;
	color: #999;
	background-color: #EEE;
	border: 1px solid transparent;
}

#Map div.mapLayer img,
#NTA_JR2_Map div.mapLayer img {
	position: absolute;
	z-index: -1;
	top: 0px;
	left: 0px;
}

/*--------------------------------
1.33 window
--------------------------------*/
.f-window {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100svh;
	z-index: 9510;
}

.f-window,
.f-window *,
.f-window *::before,
.f-window *::after {
	box-sizing: border-box;
}

.f2-window__overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100svh;
	background-color: rgba(var(--nta-black1-rgb), 0.7);
}

.f2-window__container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
	padding: 40px;
}

@media screen and (max-width: 759px) {
	.f2-window__container {
		padding: 24px;
	}
}

.f2-window__content {
	max-width: 864px;
	max-height: 100%;
	position: relative;
}

@media screen and (max-width: 759px) {
	.f2-window__content {
		width: 100%;
	}
}

.f-window .f-detail-roundtrip__list::after {
	border: none;
}

.f-window__inner {
	background: #fff;
	border-radius: 4px;
	width: 100%;
	max-height: 100%;
	overflow-y: auto;
	overscroll-behavior: contain;
	backface-visibility: hidden;
	position: relative;
}

.f-window__inner.is-hide {
	display: none !important;
}

.f-window__head--fixed {
	position: sticky;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 30;
	background: var(--nta-blue1);
	min-height: 45px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 0 32px;
}

@media screen and (max-width: 759px) {
	.f-window__head--fixed {
		min-height: 42px;
		padding: 0 16px;
	}
}

.f-window__inner .f-container {
	padding: 32px;
	width: auto;
}

@media screen and (max-width: 759px) {
	.f-window__inner .f-container {
		padding: 24px 16px;
	}
}

.f2-window__head-title {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
}

@media screen and (max-width: 759px) {
	.f2-window__head-title {
		font-size: 16px;
	}
}

.f2-window__close-btn {
	padding: 0;
	position: absolute;
	top: -20px;
	right: -20px;
	z-index: 31;
	background: #fff;
	border-radius: 50%;
	border: none;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1), .16);
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.f2-window__close-btn::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	content: "\e5cd";
	color: var(--nta-gray1);
	font-size: 24px;
	font-variation-settings: "wght"400;
}

@media screen and (max-width: 759px) {
	.f2-window__close-btn {
		top: -12px;
		right: -12px;
		width: 24px;
		height: 24px;
	}

	.f2-window__close-btn::before {
		font-size: 18px;
	}
}

.f2-window__tab+.f-window__inner,
.f2-window__tab+.f-window__inner+.f-window__inner {
	border-radius: 0 0 4px 4px;
	max-height: calc(100% - 42px);
}

.f2-window__tab-list {
	margin: 0;
	padding: 0;
	display: flex;
	gap: 0 2px;
	border-bottom: 4px solid var(--nta-blue1);
}

.f2-window__tab-list&gt;li {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 48px;
	font-size: 18px;
	font-weight: 700;
	border-radius: 4px 4px 0 0;
	background: var(--nta-bg-gray1);
	color: var(--nta-gray1);
	cursor: pointer;
}

.f2-window__tab-list&gt;li.is-active {
	background: var(--nta-blue1);
	color: #fff;
	font-weight: 700;
	cursor: default;
	pointer-events: none;
}

@media screen and (max-width: 759px) {
	.f2-window__tab-list {
		gap: 0 1px;
		border-bottom-width: 2px;
	}

	.f2-window__tab-list&gt;li {
		height: 40px;
		font-size: 14px;
	}
}

/* ヒントモーダル */
.f-window .f-hint-ttl {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 1em;
}

.f-window .f-hint-txt {
	font-size: 14px;
	line-height: 1.7;
}

.f-window .f-hint-txt+.f-hint-ttl {
	margin-top: 24px;
}

@media screen and (min-width: 760px) {
	.f-window-hint .f2-hint-close-btn {
		max-width: 240px;
	}
}

/*--------------------------------
1.34 train
--------------------------------*/
.f2-link::after,
.f2-window-open::after,
.f2-route-condition__station-item:not(:first-child)::before,
.f2-via-accordion--has-via .f2-via-accordion__head::before,
.f2-train-result-pager__btn-prev::before,
.f2-train-result-pager__btn-next::after,
.f2-route-condition__station-item:not(:first-child)::before,
.f2-train-card__clear-btn::before,
.f2-station-switch__item:not(:first-child)::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
}

.f2-link {
	background: transparent;
	border: none;
	color: var(--nta-link);
	padding: 0;
	display: inline-flex;
	align-items: center;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
}

.f2-link::after {
	content: "\e5e1";
	font-variation-settings: 'wght'500;
	margin-left: 4px;
}

.f2-window-open::after {
	content: "\e89e";
	margin-left: 4px;
	position: relative;
	top: 1px;
	font-size: 1.2em;
}

.f2-input {
	border: 1px solid var(--nta-border-gray1);
	border-radius: 4px;
	background: #fff;
	width: 100%;
	height: 38px;
	padding: 4px 16px;
	font-size: 16px;
	font-weight: 700;
	color: inherit;
	text-align: left;
	position: relative;
	box-sizing: border-box;
}

button.f2-input {
	cursor: pointer;
}

.f2-input.f2-window-open {
	padding-right: 24px;
}

.f2-input.f2-window-open::after {
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--nta-gray1);
	font-variation-settings: 'wght'300;
}

/*--------------------------------
1.35 plandetail
--------------------------------*/
.f2-plan-calendar-month-prev::before,
.f2-plan-calendar-month-next::before,
.f2-plan-calendar-remaining::before,
.f2-spin__decrease:before,
.f2-spin__increase:before,
.f2-related-plan-link::after,
.f2-select-accrodion__ttl::before,
.f2-select-accrodion__ttl::after,
.f2-plan-share-link-btn::after,
.f2-select-sub-accrodion__ttl::after,
.f2-icon-guest::before,
.f2-icon-breakfast::before,
.f2-icon-lunch::before,
.f2-icon-dinner::before,
.f2-icon-bathroom::before,
.f2-icon-toilet::before,
.f2-icon-smoking::before,
.f2-icon-nosmoking::before,
.f2-icon-other::before,
.f2-btn-favorite__label::before,
.f2-btn-more::after,
.f2-select-period-to::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
}

/* 上部プラン情報 */
.f-plan-info__inner .f2-plan-info-list {}

.f-plan-info__inner .f2-plan-share-link {
	float: right;
}

.f-plan-info__inner .f-label {
	padding-top: 16px;
	clear: both;
}

.f-plan-info__inner .f2-plan-price {
	clear: both;
	padding-top: 8px;
}

@media screen and (max-width: 759px) {
	.f-plan-info__inner .f2-plan-price {
		width: 100%;
	}
}

.f2-room-info {
	padding-top: 8px;
	clear: both;
}

.f2-room-info-list {
	display: flex;
	flex-wrap: wrap;
	font-size: 12px;
	line-height: 1.5;
	list-style: none;
	gap: 0 1em;
}

@media screen and (max-width: 759px) {
	.f2-room-info-list {
		font-size: 12px;
	}
}

.f2-plan-share-link {
	margin-left: auto;
	margin-top: -4px;
}

.f2-plan-share-link-btn {
	color: var(--nta-blue1);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	background: transparent;
	border: none;
	padding: 0;
	display: flex;
	align-items: flex-end;
}

.f2-plan-share-link-btn::after {
	content: "\e6b8";
	font-size: 24px;
}

@media screen and (max-width: 759px) {
	.f2-plan-share-link {
		margin-bottom: 8px;
	}

	.f2-plan-share-link-btn {
		font-size: 10px;
		line-height: 2;
	}
}

.f2-plan-info-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
}

@media screen and (max-width: 759px) {
	.f2-plan-info-list {
		gap: 2px 12px;
	}
}

.f2-plan-info-list&gt;li {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px;
}

.f2-plan-info-list&gt;li .f2-label {
	font-size: 12px;
}

.f2-icon-guest::before {
	content: "\e7fd";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-breakfast::before {
	content: "\e1c6";
	font-variation-settings: "FILL"1;
	font-size: 18px;
	color: var(--nta-yellow1);
}

.f2-icon-lunch::before {
	content: "\e518";
	font-variation-settings: "FILL"1;
	font-size: 18px;
	color: var(--nta-orange1);
}

.f2-icon-dinner::before {
	content: "\e51c";
	font-variation-settings: "FILL"1;
	font-size: 18px;
	color: var(--nta-yellow1);
}

.f2-icon-bathroom::before {
	content: "\ea41";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-toilet::before {
	content: "\e63d";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-smoking::before {
	content: "\eb4b";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-nosmoking::before {
	content: "\eb4a";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-other::before {
	content: "\efdf";
	color: var(--nta-gray1);
	font-size: 20px;
}

.f2-icon-disabled,
.f2-icon-disabled::before {
	color: var(--nta-txt-disabled);
}

.f2-favorite-btn-wrap {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 3;
}

.f2-btn-favorite__input {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.f2-btn-favorite__label {
	width: 40px;
	height: 40px;
	background: #fff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 2px;
	cursor: pointer;
	box-sizing: border-box;
}

.f2-btn-favorite__label::before {
	content: "\e87d";
	font-variation-settings: "wght"300;
	font-size: 28px;
	color: var(--nta-gray1);
}

.f2-btn-favorite__input:checked+.f2-btn-favorite__label::before {
	font-variation-settings: "FILL"1;
	color: var(--nta-pink1);
	animation: checkFavorite 0.4s 0s ease both;
}

/* 出発地エリア選択 */
.f2-select-content {
	width: 96%;
	margin: auto;
	margin-bottom: 16px;
}

.f2-select-content__head {
	background: #fff;
	border: 2px solid var(--nta-blue1);
	border-radius: 3px;
	cursor: pointer;
	position: relative;
	color: var(--nta-blue1);
}

.f2-select-content__ttl {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	padding: 11px 8px;
}

@media screen and (max-width: 759px) {
	.f2-select-content__ttl {
		font-size: 14px;
		padding: 10px 8px;
	}
}

.f2-select-content__body {
	padding: 16px 0;
}

.f2-select-area-list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	gap: 8px;
}

.f2-select-area-list__item {
	width: calc((100% - 16px) / 3);
}

.f2-select-area-list__item .f-radio__label {
	width: 100%;
	padding: 8px 12px 8px 36px;
	border: 1px solid var(--nta-border-gray2);
	border-radius: 4px;
	box-sizing: border-box;
	min-height: 52px;
	font-weight: 700;
}

.f2-select-area-list__item .f-radio__label::before {
	left: 8px;
}

.f2-select-area-list__item .f-radio:checked+.f-radio__label {
	background: var(--nta-bg-blue2);
}

@media screen and (max-width: 759px) {
	.f2-select-area-list__item {
		width: calc((100% - 8px) / 2);
	}

	.f2-select-area-list__item .f-radio__label {
		padding: 8px 8px 8px 30px;
		font-weight: 400;
	}

	.f2-select-area-list__item .f-radio__label::before {
		left: 6px;
	}
}

/* 日程・泊数 */
.f2-select-accrodion--date .f2-select-accrodion__content {
	padding-bottom: 0;
}

.f2-select-date-content {
	margin-top: 8px;
	margin-bottom: 32px;
}

.f2-select-group {
	display: flex;
	margin-bottom: 24px;
}

.f2-select-group__head {
	font-size: 16px;
	font-weight: 700;
	width: 150px;
	height: 40px;
	display: flex;
	align-items: center;
}

.f2-select-group__body {
	flex: 1;
}

.f2-select-group__row {
	display: flex;
}

@media screen and (max-width: 759px) {
	.f2-select-date-content {
		margin-bottom: 24px;
	}

	.f2-select-group {
		display: block;
	}

	.f2-select-group__head {
		font-size: 14px;
		width: auto;
		height: auto;
		margin-bottom: 8px;
	}
}

.f2-select-period-from,
.f2-select-period-to {
	position: relative;
	width: calc((100% - 48px) / 2);
}

.f2-select-period-from .f-select__wrap,
.f2-select-period-to .f-select__wrap {
	width: 100%;
}

.f2-select-period-from .f-select,
.f2-select-period-to .f-select {
	font-size: 16px;
	font-weight: 700;
}

.f2-select-period-to {
	margin-left: auto;
}

.f2-select-period-to::before {
	content: "\e5cc";
	font-variation-settings: 'wght'400;
	font-size: 28px;
	color: var(--nta-blue1);
	position: absolute;
	top: 50%;
	right: 100%;
	transform: translateY(-50%);
	margin-right: 10px;
}

@media screen and (max-width: 759px) {

	.f2-select-period-from,
	.f2-select-period-to {
		width: calc((100% - 24px) / 2);
	}

	.f2-select-period-from .f-select,
	.f2-select-period-to .f-select {
		font-size: 12px;
	}

	.f2-select-period-to::before {
		font-size: 24px;
		margin-right: 0;
	}
}

.f2-select-period-result {
	display: flex;
	align-items: center;
	border-bottom: 1px solid var(--nta-border-gray2);
	padding-bottom: 12px;
	margin-bottom: 20px;
}

.f2-select-period-result__days {
	font-size: 18px;
	font-weight: 700;
	width: 150px;
}

.f2-select-period-result__choice {
	flex: 1;
}

.f2-select-period-result__choice .f-checkbox__text {
	font-size: 16px;
}

.f2-select-group--stay-period .f2-select-group__body {
	flex: initial;
	margin-left: auto;
}

@media screen and (max-width: 759px) {
	.f2-select-period-result {
		padding-bottom: 8px;
		margin-bottom: 16px;
	}

	.f2-select-period-result__days {
		width: auto;
	}

	.f2-select-period-result__choice {
		margin-left: auto;
		padding-left: 16px;
		flex: initial;
	}

	.f2-select-period-result__choice .f-checkbox__text {
		font-size: 14px;
	}

	.f2-select-group--stay-period .f2-select-group__body {
		flex: initial;
		margin-left: auto;
	}
}

.f2-select-group__checkin {
	align-self: center;
	display: flex;
	flex-direction: column;
}

.f2-select-group__checkin .f2-checkin-label {
	margin-bottom: 8px;
}

.f2-select-group__checkin .f2-checkin-date {
	display: block;
	font-size: 16px;
	font-weight: 700;
}

.f2-select-group__night {
	padding-left: 24px;
}

.f2-select-group__night .f2-spin {
	width: 300px;
}

@media screen and (max-width: 759px) {
	.f2-select-group__checkin .f2-checkin-label {
		font-size: 12px;
	}

	.f2-select-group__checkin .f2-checkin-date {
		font-size: 14px;
	}

	.f2-select-group__night {
		flex: 1;
		padding-left: 16px;
	}

	.f2-select-group__night .f2-spin {
		width: auto;
	}
}

/* 〇名〇室選択 */
.f2-select-group--roomtype {
	margin-bottom: 16px;
}

.f2-select-group--roomtype .f-select__wrap {
	width: 200px;
}

.f2-select-group--roomtype .f-select {
	font-size: 16px;
	font-weight: 700;
}

.f2-select-group--roomtype .f2-roomtype-note {
	margin-left: auto;
	padding-left: 16px;
	align-self: flex-end;
	color: var(--nta-gray2);
	font-size: 12px;
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f2-select-group--roomtype .f-select__wrap {
		width: calc((100% - 24px) / 2);
	}

	.f2-select-group--roomtype .f-select {
		font-size: 14px;
		font-weight: 400;
	}
}

/* アコーディオン ブルー */
.f2-select-accrodion {
	width: 96%;
	margin: auto;
	margin-bottom: 16px;
}

.f2-select-accrodion *,
.f2-select-accrodion *::before,
.f2-select-accrodion *::after {
	box-sizing: border-box;
}

.f2-select-accrodion.f-is-active .f2-select-accrodion__trigger::after {
	content: "\e15b";
	transform: rotate(180deg);
}

.f2-select-accrodion__trigger {
	background: #fff;
	border: 2px solid var(--nta-blue1);
	border-radius: 3px;
	cursor: pointer;
	position: relative;
	color: var(--nta-blue1);
}

.f2-select-accrodion__ttl {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	padding: 11px 8px;
}

@media screen and (max-width: 759px) {
	.f2-select-accrodion__ttl {
		font-size: 14px;
		padding: 10px 8px;
	}
}

.f2-select-accrodion__ttl::before,
.f2-select-accrodion__ttl::after {
	position: absolute;
	top: 50%;
	margin-top: -.5em;
	font-size: 24px;
	font-variation-settings: "wght"400;
}

.f2-select-accrodion__ttl::before {
	left: 8px;
}

.f2-select-accrodion__ttl::after {
	content: "\e145";
	right: 8px;
	transform: rotate(0deg);
	transition: transform .4s;
}

.f2-select-accrodion__ttl.is-open::after {
	content: "\e15b";
	transform: rotate(180deg);
}

.f2-select-accrodion--date .f2-select-accrodion__ttl::before {
	content: "\e935";
}

.f2-select-accrodion--room .f2-select-accrodion__ttl::before {
	content: "\e7fd";
}

.f2-select-accrodion__content {
	padding: 16px 0 24px;
}

/* アコーディオン グレー */
.f2-select-sub-accrodion {
	margin-bottom: 24px;
}

.f2-select-sub-accrodion__trigger {
	background: var(--nta-bg-gray1);
	border-radius: 4px;
	position: relative;
	cursor: pointer;
}

.f2-select-sub-accrodion__ttl {
	text-align: center;
	padding: 16px;
	position: relative;
	font-size: 16px;
	font-weight: 700;
}

.f2-select-sub-accrodion__ttl::after {
	content: "\e145";
	font-variation-settings: "wght"400;
	position: absolute;
	right: 8px;
	top: 50%;
	margin-top: -.5em;
	font-size: 24px;
	color: var(--nta-gray1);
	transform: rotate(0deg);
	transition: transform .4s;
}

.f2-select-sub-accrodion__ttl.is-open::after {
	content: "\e15b";
	transform: rotate(180deg);
}

.f2-select-sub-accrodion__content {
	padding: 24px 0;
}

@media screen and (max-width: 759px) {
	.f2-select-sub-accrodion__ttl {
		font-size: 14px;
	}

	.f2-select-sub-accrodion__content {
		padding: 16px 0 24px;
	}
}

/* カレンダー */
.f2-plan-calendar-container {
	display: flex;
	gap: 0 16px;
}

.f2-plan-calendar-wrap {
	position: relative;
	border: 1px solid var(--nta-border-gray2);
	border-radius: 3px;
	padding: 16px 8px;
}

.f2-plan-calendar-month {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 8px;
	margin-bottom: 16px;
}

.f2-plan-calendar-month-num {
	font-size: 16px;
	font-weight: 700;
}

.f2-plan-calendar-month-prev,
.f2-plan-calendar-month-next {
	background: transparent;
	border: none;
	padding: 8px 16px;
	font-size: 24px;
}

.f2-plan-calendar-month-prev::before {
	content: "\e5e0";
}

.f2-plan-calendar-month-next::before {
	content: "\e5e1";
}

.f2-plan-calendar-month-prev:disabled,
.f2-plan-calendar-month-next:disabled {
	color: var(--nta-txt-disabled);
	cursor: default;
}

@media screen and (max-width: 759px) {
	.f2-plan-calendar-container {
		display: block;
	}

	.f2-plan-calendar-month {
		margin-top: 0;
	}

	.f2-plan-calendar-month-num {
		font-size: 14px;
	}

	.f2-plan-calendar-month-prev,
	.f2-plan-calendar-month-next {
		font-size: 14px;
	}

	.f2-plan-calendar-month-prev::before,
	.f2-plan-calendar-month-next::before {
		font-variation-settings: "wght"700;
	}
}

.f2-plan-calendar {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	font-size: 12px;
}

.f2-plan-calendar-ttl-wrap th {
	padding: 8px 0;
	font-size: 14px;
	font-weight: 700;
}

.f2-plan-calendar td {
	vertical-align: top;
	padding: 4px 0;
}

.f2-plan-calendar-date .f2-plan-calendar-day {
	color: var(--nta-black1);
}

.f2-plan-calendar-date-saturday .f2-plan-calendar-day {
	color: #2666D4;
}

.f2-plan-calendar-date-sunday .f2-plan-calendar-day {
	color: #E74444;
}

.f2-plan-calendar-date-inner {
	height: 100%;
	display: flex;
	flex-direction: column;
	text-align: center;
	border-radius: 6px;
	padding: 4px 2px;
	cursor: pointer;
}

.f2-plan-calendar-date-inner.f-is-active {
	background: var(--nta-blue1);
}

.f2-plan-calendar-date-inner:not(.f-is-active):hover {
	background: var(--nta-bg-blue2);
}

.f2-plan-calendar-date-inner.f-is-active&gt;* {
	color: #fff;
}

@media screen and (max-width: 759px) {
	.f2-plan-calendar-ttl-wrap th {
		padding: 4px 0;
	}
}

.f2-plan-calendar-day {
	text-align: center;
	font-size: 14px;
	line-height: 1.2;
}

.f2-plan-calendar-day .f2-plan-calendar-weekdays {
	display: none;
}

.f2-plan-calendar-remaining {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 20px;
}

.f2-plan-calendar-remaining::before {
	font-size: 16px;
}

.f2-plan-calendar-price {
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
}

.f2-plan-calendar-price-from {
	display: block;
	font-weight: 700;
}

.f2-plan-calendar-price-from::after {
	content: "円";
	font-size: 10px;
}

.f2-plan-calendar-price-to {
	display: block;
	font-weight: 700;
	position: relative;
}

.f2-plan-calendar-price-to::before {
	content: "～";
	display: block;
	line-height: 1;
}

.f2-plan-calendar-price-only {
	display: inline-block;
	padding-left: 10px;
}

@media screen and (max-width: 759px) {
	.f2-plan-calendar-price {
		font-size: 11px;
		font-weight: 400;
	}

	.f2-plan-calendar-price-from {
		font-weight: 400;
	}

	.f2-plan-calendar-price-from::after {
		display: block;
	}
}

.f2-plan-calendar .is-many {
	color: var(--nta-blue1);
}

.f2-plan-calendar .is-many .f2-plan-calendar-remaining::before {
	content: "\ef4a";
}

.f2-plan-calendar .is-empty {
	color: var(--nta-txt-disabled);
}

.f2-plan-calendar .is-empty .f2-plan-calendar-date-inner {
	cursor: default;
	pointer-events: none;
}

.f2-plan-calendar .is-empty .f2-plan-calendar-remaining::before {
	content: "\e5cd";
}

.f2-plan-calendar .is-few,
.f2-plan-calendar .is-last-one {
	color: var(--nta-blue1);
}

@media screen and (max-width: 759px) {

	.f2-plan-calendar .is-few,
	.f2-plan-calendar .is-last-one {
		font-size: 10px;
	}
}

.f2-plan-calendar .is-no-price .f2-plan-calendar-date-inner,
.f2-plan-calendar .is-hotel-empty .f2-plan-calendar-date-inner,
.f2-plan-calendar .is-no-setting .f2-plan-calendar-date-inner {
	cursor: default;
	pointer-events: none;
}

.f2-plan-calendar .is-no-price .f2-plan-calendar-date-inner .f2-plan-calendar-remaining::before,
.f2-plan-calendar .is-hotel-empty .f2-plan-calendar-date-inner .f2-plan-calendar-remaining::before,
.f2-plan-calendar .is-no-setting .f2-plan-calendar-date-inner .f2-plan-calendar-remaining::before {
	content: "\f108";
	color: var(--nta-txt-disabled);
}

.f2-plan-calendar .is-disabled {
	color: var(--nta-txt-disabled);
}

.f2-plan-calendar .is-disabled .f2-plan-calendar-date-inner {
	cursor: default;
	pointer-events: none;
}

.f2-plan-calendar .is-disabled .f2-plan-calendar-day {
	color: var(--nta-txt-disabled);
}

.f2-plan-calendar-note {
	margin-top: 8px;
	text-align: right;
	font-size: 12px;
	line-height: 1.5;
	color: var(--nta-gray2);
}

.f2-plandetail-note-list {
	list-style: none;
	margin: 8px 0 0;
	padding: 0;
	font-size: 14px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f2-plan-calendar-note {
		font-size: 10px;
	}

	.f2-plandetail-note-list {
		font-size: 12px;
	}
}

.f2-plan-calendar-timestamp {
	margin-top: 4px;
}

/* 人数・室数 */
.f2-plandetail-info {
	margin-bottom: 24px;
	margin-top: 8px;
}

.f2-plandetail-info__block {
	display: flex;
	line-height: 1.5;
	margin-bottom: 8px;
}

.f2-plandetail-info__block&gt;dt {
	font-weight: 700;
}

.f2-plandetail-info__block&gt;dt::after {
	content: "：";
}

.f2-plandetail-info__block&gt;dd {
	flex: 1;
}

.f2-plandetail-info__note {
	line-height: 1.5;
	margin-bottom: 8px;
}

@media screen and (max-width: 759px) {
	.f2-plandetail-info__block {
		font-size: 12px;
	}

	.f2-plandetail-info__note {
		font-size: 12px;
	}
}

/* ＋-ボタン選択 */
.f2-spin {
	display: flex;
	background: #fff;
	border: 1px solid var(--nta-border-gray1);
	border-radius: 4px;
	box-sizing: border-box;
}

.f2-spin.is-error {
	background: var(--nta-bg-red1);
}

.f2-spin__set {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 50%;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.f2-spin__decrease,
.f2-spin__increase {
	background: transparent;
	width: 38px;
	height: 38px;
	border: none;
	position: relative;
}

.f2-spin__decrease:before,
.f2-spin__increase:before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 24px;
	color: var(--nta-gray1);
}

.f2-spin__decrease.is-disabled,
.f2-spin__increase.is-disabled,
.f2-spin__decrease:disabled,
.f2-spin__increase:disabled {
	pointer-events: none;
	cursor: default;
}

.f2-spin__decrease.is-disabled:before,
.f2-spin__increase.is-disabled:before,
.f2-spin__decrease:disabled:before,
.f2-spin__increase:disabled:before {
	opacity: .2;
	cursor: default;
	pointer-events: none;
}

.f2-spin__decrease::before {
	content: "\e15b";
}

.f2-spin__increase::before {
	content: "\e145";
}

.f2-spin.is-disabled * {
	color: var(--nta-txt-disabled);
	cursor: default;
	pointer-events: none;
}

.f2-select-room-heading {
	background: var(--nta-bg-gray1);
	border-radius: 4px;
	text-align: center;
	padding: 11px 8px;
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 24px;
}

@media screen and (max-width: 759px) {
	.f2-select-room-heading {
		padding: 8px;
		font-size: 14px;
		margin-bottom: 16px;
	}
}

.f2-select-guest-wrap,
.f2-select-room-wrap {
	margin-bottom: 24px;
}

.f2-select-guest-wrap__ttl {
	font-size: 18px;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 16px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f2-select-guest-wrap__ttl {
		font-size: 14px;
		margin-bottom: 8px;
	}
}

.f2-select-room,
.f2-select-guest,
.f2-select-guest-total {
	display: flex;
	margin-bottom: 16px;
}

.f2-select-room__label,
.f2-select-guest__label,
.f2-select-guest-total__label {
	flex: 1;
	align-self: center;
	padding-right: 16px;
	display: flex;
	flex-direction: column;
}

.f2-select-room__label span,
.f2-select-guest-total__label span {
	font-size: 18px;
	font-weight: 700;
}

.f2-select-guest__label span:first-child {
	font-size: 16px;
}

.f2-select-guest__label span small {
	font-size: 14px;
}

.f2-select-guest__label .f2-guest-type {
	font-size: 12px;
	margin-top: 4px;
}

.f2-select-guest__data,
.f2-select-guest-total__data {
	padding: 0;
	margin: 0 0 0 auto;
	min-width: 200px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

@media screen and (max-width: 759px) {

	.f2-select-room__label,
	.f2-select-guest__label,
	.f2-select-guest-total__label {
		padding-right: 8px;
	}

	.f2-select-room__label span,
	.f2-select-guest-total__label span {
		font-size: 14px;
	}

	.f2-select-guest__label span:first-child {
		font-size: 14px;
	}

	.f2-select-guest__label span small {
		font-size: 10px;
	}

	.f2-select-guest__label .f2-guest-type {
		font-size: 10px;
	}

	.f2-select-guest__data,
	.f2-select-guest-total__data {
		min-width: 140px;
	}
}

.f2-select-guest__data .f2-price,
.f2-select-guest-total__data .f2-price {
	font-size: 16px;
	font-weight: 700;
	text-align: right;
	margin-right: 16px;
}

.f2-select-room__data .f2-spin,
.f2-select-guest__data .f2-spin,
.f2-select-guest-total__data .f2-spin {
	min-width: 200px;
}

.f2-select-attention-wrap {
	font-size: 14px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {

	.f2-select-guest__data .f2-price,
	.f2-select-guest-total__data .f2-price {
		font-size: 14px;
	}

	.f2-select-room__data .f2-spin,
	.f2-select-guest__data .f2-spin,
	.f2-select-guest-total__data .f2-spin {
		min-width: initial;
		width: 120px;
		flex-shrink: 0;
	}

	.f2-select-attention-wrap {
		font-size: 12px;
	}
}

/* 〇部屋目 */
.f2-room-assign-group {
	margin-bottom: 48px;
}

.f2-room-assign-group__ttl {
	font-size: 18px;
	line-height: 1.2;
	font-weight: 700;
	border-left: 4px solid var(--nta-border-gray1);
	margin: 0 0 32px 0;
	padding-left: 12px;
}

@media screen and (max-width: 759px) {
	.f2-room-assign-group {
		margin-bottom: 24px;
	}

	.f2-room-assign-group__ttl {
		font-size: 16px;
		margin: 0 0 24px 0;
		padding-left: 8px;
	}
}

/* おとな内訳 */
.f2-select-guest-breakdown {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 16px;
}

.f2-select-guest-breakdown__label {
	padding-top: 13px;
	padding-right: 8px;
	display: flex;
	flex-direction: column;
}

/* 宿泊条件の入力 */
.f2-question-item {
	padding: 16px 0;
	border-bottom: 1px solid var(--nta-border-gray2);
	font-size: 16px;
	line-height: 1.5;
}

.f2-question-item:first-child {
	padding-top: 0;
}

.f2-question-item .f2-question-txt {
	margin: 0 0 1em 0;
}

.f2-question-block {
	display: flex;
	margin: 0;
	gap: 0 16px;
}

.f2-question-block&gt;dt {
	margin: 0;
	flex: 1;
	align-self: center;
}

.f2-question-block&gt;dd {
	margin: 0;
	flex: 1;
}

.f2-question-block .f2-question-label {
	margin: 0;
	font-weight: 700;
}

.f2-question-block .f-select__wrap {
	width: 100%;
}

@media screen and (max-width: 759px) {
	.f2-question-item {
		font-size: 14px;
	}
}

/* 旅行代金エリア */
.f2-total-amount {
	background: var(--nta-bg-blue2);
	border-radius: 4px;
	padding: 24px;
	margin-bottom: 32px;
}

.f2-total-amount__price {
	background: #fff;
	border-radius: 4px;
	padding: 24px;
	text-align: right;
}

.f2-total-amount .f2-price-total {
	text-align: right;
	line-height: 1.2;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.f2-total-amount .f2-price-total__txt {
	margin: 0 8px 0 0;
	font-size: 14px;
}

.f2-total-amount .f2-price-total__num {
	display: inline-block;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	color: var(--nta-black1);
}

.f2-total-amount .f2-price-info {
	text-align: center;
	font-size: 14px;
	line-height: 1.2;
	margin-top: 16px;
}

@media screen and (max-width: 759px) {
	.f2-total-amount {
		padding: 16px;
	}

	.f2-total-amount__price {
		padding: 16px;
	}

	.f2-total-amount .f2-price-total {
		display: block;
	}

	.f2-total-amount .f2-price-total__txt {
		margin: 0 0 8px;
		font-size: 12px;
	}

	.f2-total-amount .f2-price-total__num {
		font-size: 22px;
	}

	.f2-total-amount .f2-price-info {
		text-align: right;
		font-size: 12px;
		margin-top: 12px;
	}
}

.f2-price-discount {
	margin-top: 16px;
	text-align: right;
	line-height: 1.2;
}

.f2-price-discount__txt {
	font-size: 14px;
}

.f2-price-discount__num {
	font-size: 16px;
	font-weight: 700;
	color: var(--nta-red1);
	margin-left: 4px;
}

@media screen and (max-width: 759px) {
	.f2-price-discount {
		margin-top: 12px;
	}

	.f2-price-discount__txt {
		font-size: 12px;
	}

	.f2-price-discount__num {
		font-size: 14px;
	}
}

.f2-total-amount__info {
	margin-top: 16px;
	font-size: 14px;
	line-height: 1.5;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
}

.f2-total-amount__info dl {
	display: flex;
}

.f2-total-amount__info dl&gt;dt {
	padding: 0 .5em 0 0;
	font-weight: 700;
}

.f2-total-amount__info dl&gt;dd {}

.f2-total-amount__note {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.5;
}

.f2-total-amount__action {
	margin-top: 24px;
	text-align: center;
}

@media screen and (max-width: 759px) {
	.f2-total-amount__info {
		margin-top: 12px;
		font-size: 12px;
	}

	.f2-total-amount__note {
		font-size: 12px;
	}
}

/* 旅行代金エリア＞宿泊追加用プラン詳細の場合 */
.f2-total-amount__ttl {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	padding: 8px 0;
	margin-bottom: 16px;
}

.f2-total-amount__additional .f2-price-total {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 0 8px;
}

.f2-total-amount__additional .f2-price-total__txt {
	margin-bottom: 0;
}

.f2-total-amount__breakdown {
	margin-top: 24px;
	background: #fff;
	border-radius: 4px;
	padding: 16px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.f2-total-amount__breakdown-ttl {
	width: 100%;
	font-size: 14px;
	text-align: center;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--nta-border-gray2);
	margin-bottom: 16px;
}

@media screen and (max-width: 759px) {
	.f2-total-amount__breakdown {
		display: block;
		margin-top: 16px;
	}

	.f2-total-amount__ttl {
		font-size: 16px;
	}

	.f2-total-amount__additional .f2-price-total {
		justify-content: flex-end;
	}

	.f2-total-amount__additional .f2-price-total__txt {}

	.f2-total-amount__breakdown-ttl {
		font-size: 12px;
		padding-bottom: 8px;
	}
}

.f2-breakdown-list {
	list-style: none;
}

.f2-breakdown-item {
	padding-top: 8px;
	padding-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	font-size: 14px;
	gap: 8px;
}

.f2-breakdown-item .f2-breakdown-label {}

.f2-breakdown-item .f2-breakdown-num {
	font-size: 18px;
	font-weight: 700;
	color: var(--nta-black1);
}

@media screen and (max-width: 759px) {
	.f2-breakdown-item {
		padding: 0;
		margin-top: 12px;
		font-size: 12px;
	}

	.f2-breakdown-item .f2-breakdown-num {
		font-size: 16px;
	}
}

/* /旅行代金エリア */
.f2-btn-cv {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--nta-orange1);
	border: none;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.142857142;
	text-align: center;
	text-decoration: none;
	width: 100%;
	min-height: 48px;
	padding: 10px;
	border-radius: 30px;
	box-shadow: 0 1px 2px 0 rgba(var(--nta-black1-rgb), .16);
}

.f2-btn-cv:disabled {
	background: var(--nta-bg-disabled);
	color: #fff;
}

@media screen and (max-width: 759px) {
	.f2-btn-cv {
		font-size: 14px;
		min-height: 40px;
	}
}

.f2-total-amount__action .f2-btn-cv {
	font-size: 16px;
	width: 240px;
}

/* 関連プラン */
.f2-related-plan-wrap {
	max-width: 400px;
	margin: 0 auto;
}

.f2-related-plan-price-txt {
	text-align: right;
	font-size: 12px;
}

.f2-related-plan-list {
	list-style: none;
}

.f2-related-plan-list&gt;li {
	margin: 8px 0 0;
}

.f2-related-plan-link {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding-right: 24px;
	line-height: 1.4;
	text-decoration: none;
}

.f2-related-plan-link::after {
	content: "\e5e1";
	font-variation-settings: "wght"400;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -.5em;
	color: var(--nta-blue1);
}

.f2-related-plan-label {
	color: var(--nta-black1);
	font-size: 16px;
	font-weight: 700;
	padding-right: 1em;
	flex: 1;
}

.f2-related-plan-price {
	color: var(--nta-blue1);
	font-size: 18px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f2-related-plan-label {
		font-size: 14px;
	}

	.f2-related-plan-price {
		font-size: 16px;
	}
}

/* もっとみる */
.f2-btn-more {
	background: transparent;
	border: none;
	padding: 8px 0;
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	color: var(--nta-gray1);
}

.f2-btn-more::after {
	content: "\e145";
	right: 8px;
	font-size: 20px;
	transform: rotate(0deg);
	transition: transform .4s;
}

@media screen and (max-width: 759px) {
	.f2-btn-more {
		font-size: 12px;
	}

	.f2-btn-more::after {
		font-size: 16px;
	}
}

.f2-accordion.is-open .f2-btn-more::after,
.f2-btn-more.is-open::after {
	content: "\e15b";
	transform: rotate(180deg);
}

.f2-txt-accordion {
	position: relative;
	padding-bottom: 40px;
}

.f2-txt-accordion.is-hide {
	padding-bottom: 16px;
}

@media screen and (max-width: 759px) {
	.f2-txt-accordion.is-hide {
		padding-bottom: 8px;
	}
}

.f2-txt-accordion__btn {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	text-align: center;
}

.f2-txt-accordion:not(.is-hide) .f2-btn-more:nth-child(1) {
	display: none;
}

.f2-txt-accordion.is-hide .f2-btn-more:nth-child(2) {
	display: none;
}

.f2-txt-accordion:not(.is-hide) .f2-btn-more::after {
	content: "\e15b";
}

.f2-txt-accordion.is-hide .f2-btn-more::after {
	content: "\e145";
}

.f2-txt-accordion__content {
	position: relative;
}

.f2-txt-accordion.is-hide .f2-txt-accordion__content {
	max-height: 180px;
	overflow: hidden;
}

.f2-txt-accordion.is-hide .f2-txt-accordion__content::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 60%);
	z-index: 1;
}

/* プランのお勧めポイント */
.f2-txt-accordion .f2-lead-txt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: .5em;
}

.f2-txt-accordion .f-detail__text {
	font-size: 16px;
	line-height: 1.7;
	margin-bottom: 32px;
}

@media screen and (max-width: 759px) {
	.f2-txt-accordion .f2-lead-txt {
		font-size: 14px;
	}

	.f2-txt-accordion .f-detail__text {
		font-size: 14px;
		margin-bottom: 24px;
	}
}

/* 代金・運賃について */
.f2-note-more-info {
	padding-bottom: 32px;
	position: relative;
}

.f2-note-more-info__head {
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

.f2-note-more-info__head .f2-btn-more:not(.is-open):nth-child(2) {
	display: none;
}

.f2-note-more-info__head .f2-btn-more.is-open:nth-child(1) {
	display: none;
}

.f2-note-more-info__body {
	display: none;
}

/* 旅程 */
.f2-table-itinerary {
	border-top: none;
}

.f2-table-itinerary thead {
	display: none;
}

.f2-table-itinerary .f-table__data {
	border-right: none;
	line-height: 1.5;
	padding-right: 0;
}

.f2-table-itinerary .f-table-train__cell--medium {
	padding-left: 0;
	font-weight: 700;
	text-align: left;
}

@media screen and (max-width: 759px) {
	.f2-table-itinerary .f-table-train__cell--medium {
		width: 50px;
		vertical-align: top;
	}
}

/* リンクをシェアモーダル ---------- */
@media print,
screen and (min-width: 760px) {
	.f2-window-share .f2-window__content {
		width: 400px;
	}
}

.f2-share-container {
	text-align: center;
	padding: 0 8px 8px;
}

.f2-share-link-copy {
	margin-bottom: 24px;
}

.f2-share-link-copy-btn {
	border: none;
	background: transparent;
	padding: 0;
	color: var(--nta-link);
	font-weight: 700;
	font-size: 14px;
}

.f2-share-sns-list {
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 24px;
}

.f2-share-sns-list&gt;li {
	margin: 0;
	padding: 0;
}

.f2-share-sns-list&gt;li img {
	width: 32px;
}

/* 施設詳細モーダル ---------- */
.f2-window-hoteldetail .f2-window__content {
	width: 100%;
	max-width: 864px;
}

.f2-window-hoteldetail .f-window__inner {
	overflow: hidden;
}

.f2-window-hoteldetail .f-window__inner .f-container {
	padding: 0;
}

.f2-window-hoteldetail .f2-hoteldetail-container {
	height: calc(100dvh - 88px);
}

.f2-window-hoteldetail iframe {
	border: none;
	width: 100%;
	height: 100%;
	overscroll-behavior: contain;
}

@media screen and (max-width: 759px) {

	/* SP：ハーフモーダルにする */
	.f2-window-hoteldetail .f2-window__container {
		padding: 48px 0 0;
	}

	.f2-window-hoteldetail .f2-window__content {
		width: 100%;
	}

	.f2-window-hoteldetail .f2-window__content,
	.f2-window-hoteldetail .f-window__inner,
	.f2-window-hoteldetail .f-window__inner .f-container,
	.f2-window-hoteldetail .f2-hoteldetail-container {
		height: 100%;
	}

	.f2-window-hoteldetail .f-window__inner {
		border-radius: 4px 4px 0 0;
	}

	.f2-window-hoteldetail .f2-window__close-btn {
		position: fixed;
		top: 12px;
		right: 12px;
	}
}

/*--------------------------------
1.36 facility list
--------------------------------*/
.f2-search-selected__accordion-ttl::before,
.f2-btn-map-search::before,
.f2-hotel-area-list::before,
.f2-review-stars span::before,
.f2-btn-pagetop::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
}

/* 選択されている内容、検索条件---------- */
.f2-search-selected--condition-change {
	margin-bottom: 40px;
}

@media screen and (max-width: 759px) {
	.f2-search-selected--condition-change {
		margin-bottom: 24px;
	}
}

.f2-search-selected__accordion-ttl {
	font-weight: 700;
	cursor: pointer;
	position: relative;
}

.f2-search-selected__accordion-ttl::before {
	color: var(--nta-gray1);
	font-size: 22px;
	transition: transform .2s;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -0.5em;
}

.f2-search-selected__accordion-ttl:not(.is-open)::before {
	content: "\e145";
}

.f2-search-selected__accordion-ttl.is-open::before {
	transform: rotate(-180deg);
	content: "\e15b";
}

.f2-search-selected__amount {
	padding-top: 24px;
}

.f2-search-selected__amount .f2-price-total {
	display: flex;
	align-items: center;
}

.f2-search-selected__amount .f2-price-total__txt {
	font-size: 12px;
	color: #fff;
	background: var(--nta-blue1);
	border-radius: 2px;
	padding: 6px 8px;
}

.f2-search-selected__amount .f2-price-total__num {
	margin-left: auto;
	display: flex;
	align-items: center;
	font-size: 24px;
	font-weight: 700;
	color: var(--nta-black1);
}

.f2-search-selected__amount .f2-price-total__tax {
	font-size: 12px;
	margin-right: 8px;
	color: var(--nta-black1);
}

@media screen and (max-width: 759px) {
	.f2-search-selected__amount {
		padding-top: 16px;
		padding-bottom: 12px;
	}

	.f2-search-selected__amount .f2-price-total__txt {
		font-size: 11px;
		padding: 4px 6px;
	}

	.f2-search-selected__amount .f2-price-total__num {
		font-size: 22px;
	}
}

.f2-search-selected__condition {
	display: flex;
	align-items: center;
	margin-bottom: 24px;
}

.f2-search-selected__condition&gt;dt {
	font-size: 14px;
	width: 120px;
}

.f2-search-selected__condition&gt;dd {
	font-weight: 700;
	font-size: 16px;
}

.f2-search-selected__night {
	margin-top: 8px;
	margin-left: 120px;
	font-size: 14px;
}

@media screen and (min-width: 760px) {
	.f-search-selected .f2-input-container .f2-input-label {
		font-size: 14px;
		font-weight: 400;
		width: 120px;
	}
}

@media screen and (max-width: 759px) {
	.f2-search-selected__condition {
		gap: 8px;
		margin-bottom: 16px;
	}

	.f2-search-selected__condition&gt;dt {
		font-size: 12px;
		width: auto;
	}

	.f2-search-selected__condition&gt;dd {
		font-size: 14px;
	}

	.f2-search-selected__night {
		margin-top: 12px;
		text-align: right;
		margin-left: 0;
		font-size: 12px;
		font-weight: 700;
	}
}

/* こだわり条件 */
.f2-selected-condition-list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
}

.f-search-selected .f2-selected-condition-list {
	width: 100%;
	margin-top: 24px;
}

@media screen and (max-width: 759px) {
	.f-search-selected .f2-selected-condition-list {
		margin-top: 16px;
	}
}

.f2-selected-condition-list&gt;li {
	display: flex;
	align-items: center;
	font-weight: 700;
}

.f2-selected-condition-list .f2-btn-delete {
	background: #fff;
	border-radius: 50%;
	border: none;
	padding: 0;
	box-shadow: 0 0 8px 0 rgba(var(--nta-black1-rgb), .16);
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 8px;
}

.f2-selected-condition-list .f2-btn-delete::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"1, "wght"400, "GRAD"0, "opsz"24;
	content: "\e5cd";
	color: var(--nta-gray1);
	font-size: 16px;
}

/* 地図から探す---------- */
.f2-search-facility__map {
	float: right;
	margin-bottom: 16px;
}

.f2-btn-map-search {
	padding: 0;
	border: none;
	background: transparent;
	display: inline-flex;
	align-items: center;
	color: var(--nta-blue1);
	font-size: 16px;
	font-weight: 700;
}

.f2-btn-map-search::before {
	content: "\e0c8";
	font-size: 24px;
	margin-right: 2px;
}

@media screen and (max-width: 759px) {
	.f2-btn-map-search {
		font-size: 14px;
	}

	.f2-btn-map-search::before {
		font-size: 20px;
	}
}

/* プランを表示---------- */
.f2-toggle-switch {
	margin-bottom: 16px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	clear: both;
}

.f2-toggle-switch__ttl {
	font-size: 16px;
	font-weight: 700;
	margin-right: 8px;
	cursor: pointer;
}

@media screen and (max-width: 759px) {
	.f2-toggle-switch__ttl {
		font-size: 14px;
	}
}

.f2-toggle-switch__input {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}

.f2-toggle-switch__label {
	display: block;
	background: var(--nta-bg-gray3);
	width: 52px;
	height: 28px;
	border-radius: 14px;
	border: 1px solid var(--nta-blue1);
	position: relative;
	box-sizing: border-box;
	cursor: pointer;
}

.f2-toggle-switch__label::before {
	content: "";
	display: block;
	border-radius: 50%;
	background: var(--nta-gray1);
	width: 24px;
	height: 24px;
	position: absolute;
	top: 1px;
	left: 1px;
	transition: left .2s;
}

.f2-toggle-switch__input:checked+.f2-toggle-switch__label {
	background: var(--nta-bg-blue1);
}

.f2-toggle-switch__input:checked+.f2-toggle-switch__label::before {
	background: var(--nta-blue1);
	left: auto;
	left: calc(100% - 25px);
}

/* 施設カセット内 エリア---------- */
.f2-hotel-area-list {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 8px;
}

.f2-hotel-area-list::before {
	content: "\e0c8";
	font-size: 18px;
}

.f2-hotel-area-list&gt;li:not(:last-child)::after {
	content: "/";
	margin: 0 5px;
}

/* 施設カセット内 レビュー---------- */
.f2-hotel-review-container {
	display: flex;
	gap: 8px;
}

.f2-hotel-review-block {
	background: #fff;
	border: 1px solid var(--nta-border-gray1);
	border-radius: 4px;
	width: calc((100% - 8px) / 2);
}

.f2-hotel-review-block__row {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px 4px;
}

.f2-hotel-review-block__row[data-target] {
	cursor: pointer;
}

.f2-hotel-review-block__label {
	font-size: 12px;
	font-weight: 700;
	margin-right: 4px;
}

.f2-hotel-review-block .f2-review-collecting {
	display: block;
	width: 103px;
	font-size: 12px;
	line-height: 20px;
	color: var(--nta-gray1);
	text-align: center;
}

@media screen and (max-width: 759px) {
	.f2-hotel-review-block__label {
		font-size: 10px;
	}

	.f2-hotel-review-block .f2-review-collecting {
		width: 80px;
		font-size: 10px;
		line-height: 14px;
	}
}

.f2-review-wrap {
	display: flex;
	align-items: center;
	gap: 4px;
}

.f2-review-score {
	font-weight: 700;
	line-height: 1;
}

.f2-review-stars {
	position: relative;
	font-size: 1.4em;
	width: 4em;
	height: 1em;
}

@media screen and (max-width: 759px) {
	.f2-review-stars {
		font-size: 1em;
	}
}

.f2-review-stars span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: .8em;
}

.f2-review-stars span::before {
	content: "\f0ec";
	font-variation-settings: "FILL"1;
}

.f2-review-stars__off,
.f2-review-stars__on {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
}

.f2-review-stars__off {
	color: var(--nta-txt-disabled);
}

.f2-review-stars__on {
	overflow: hidden;
	color: var(--nta-yellow1);
}

.f2-review-stars--00 .f2-review-stars__on {
	width: 0;
}

.f2-review-stars--05 .f2-review-stars__on {
	width: 10%;
}

.f2-review-stars--10 .f2-review-stars__on {
	width: 20%;
}

.f2-review-stars--15 .f2-review-stars__on {
	width: 30%;
}

.f2-review-stars--20 .f2-review-stars__on {
	width: 40%;
}

.f2-review-stars--25 .f2-review-stars__on {
	width: 50%;
}

.f2-review-stars--30 .f2-review-stars__on {
	width: 60%;
}

.f2-review-stars--35 .f2-review-stars__on {
	width: 70%;
}

.f2-review-stars--40 .f2-review-stars__on {
	width: 80%;
}

.f2-review-stars--45 .f2-review-stars__on {
	width: 90%;
}

.f2-review-stars--50 .f2-review-stars__on {
	width: 100%;
}

/* 施設カセット内 旅行代金---------- */
.f2-hotel-price {
	margin-top: 16px;
	text-align: right;
}

.f2-hotel-price .f2-price-total {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	text-align: right;
	gap: 4px;
}

.f2-hotel-price .f2-price-total__txt {
	color: #fff;
	background: var(--nta-blue1);
	border-radius: 2px;
	font-size: 12px;
	padding: 3px 8px;
	margin-right: 4px;
}

@media screen and (max-width: 759px) {
	.f2-hotel-price .f2-price-total__txt {
		font-size: 10px;
	}
}

.f2-hotel-price .f2-price-total__num {
	font-size: 24px;
	font-weight: 700;
	color: var(--nta-black1);
}

.f2-hotel-price .f2-price-total__tax {
	color: var(--nta-black1);
	font-size: 12px;
	margin-right: 4px;
}

.f2-hotel-price .f2-price-person {
	margin-top: 8px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	text-align: right;
	gap: 4px;
}

.f2-hotel-price .f2-price-person__txt {
	font-size: 12px;
}

.f2-hotel-price .f2-price-person__num {
	font-size: 16px;
	font-weight: 700;
	color: var(--nta-black1);
}

.f2-hotel-price .f2-price-total__tax {
	color: var(--nta-black1);
	font-size: 12px;
	margin-right: 4px;
}

.f2-hotel-price .f2-price-note {
	margin-top: 8px;
	font-size: 14px;
}

@media screen and (max-width: 759px) {
	.f2-hotel-price .f2-price-total__num {
		font-size: 22px;
	}

	.f2-hotel-price .f2-price-person__num {
		font-size: 13px;
	}

	.f2-hotel-price .f2-price-note {
		font-size: 12px;
	}
}

/* 施設カセット内 プランカセット---------- */
.f-search-plan__detail .f2-search-plan__data {
	padding-left: 296px;
}

.f-search-plan__detail .f2-plan-price {
	padding-left: 296px;
}

@media screen and (max-width: 759px) {
	.f-search-plan__detail .f2-search-plan__data {
		padding-left: 0;
	}

	.f-search-plan__detail .f2-plan-price {
		padding-left: 0;
	}
}

@media screen and (min-width: 760px) {
	.f-search-plan__detail .f2-plan-action-list {
		clear: both;
		width: 100%;
		padding-top: 24px;
	}
}

/* 施設カセット内 プランカセット---------- */
.f2-search-plan__data .f2-plan-info-meal,
.f2-search-plan__data .f2-plan-info-time,
.f2-search-plan__data .f2-plan-info-list {
	margin-top: 8px;
}

.f2-plan-info-meal {
	display: flex;
	align-items: center;
	font-size: 14px;
	gap: 0 8px;
}

.f2-plan-info-meal&gt;dt {
	min-width: 7em;
	font-weight: 700;
}

.f2-plan-info-meal&gt;dd {
	display: flex;
	align-items: center;
}

.f2-plan-info-meal&gt;dd .f2-label {
	margin-left: 12px;
}

.f2-plan-info-time {
	display: flex;
	align-items: center;
	font-size: 14px;
}

.f2-plan-info-time&gt;dt {
	min-width: 7em;
	padding-right: 1em;
	font-weight: 700;
	box-sizing: border-box;
}

.f2-plan-info-time&gt;dd+dt {
	margin-left: 2em;
}

@media screen and (max-width: 759px) {

	.f2-search-plan__data .f2-plan-info-meal,
	.f2-search-plan__data .f2-plan-info-time,
	.f2-search-plan__data .f2-plan-info-list {
		margin-top: 6px;
	}

	.f2-plan-info-meal {
		font-size: 12px;
	}

	.f2-plan-info-time {
		font-size: 12px;
	}
}

/* 料金 */
.f2-plan-price {
	margin-top: 16px;
	text-align: right;
}

.f2-plan-price .f2-price-total {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	text-align: right;
	gap: 4px;
}

.f2-plan-price .f2-price-total__txt {
	color: #fff;
	background: var(--nta-blue1);
	border-radius: 2px;
	font-size: 12px;
	padding: 3px 8px;
	margin-right: 4px;
}

@media screen and (max-width: 759px) {
	.f2-plan-price .f2-price-total__txt {
		font-size: 10px;
	}
}

.f2-plan-price .f2-price-total__num {
	font-size: 20px;
	font-weight: 700;
	color: var(--nta-black1);
}

@media screen and (max-width: 759px) {
	.f2-plan-price .f2-price-total__num {
		font-size: 18px;
	}
}

.f2-plan-price .f2-price-total__tax {
	color: var(--nta-black1);
	font-size: 12px;
	margin-right: 4px;
}

.f2-plan-price .f2-price-person {
	margin-top: 8px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	text-align: right;
	gap: 4px;
}

.f2-plan-price .f2-price-person__txt {
	font-size: 12px;
}

.f2-plan-price .f2-price-person__num {
	font-size: 16px;
	font-weight: 700;
	color: var(--nta-black1);
}

@media screen and (max-width: 759px) {
	.f2-plan-price .f2-price-person__num {
		font-size: 13px;
	}
}

.f2-plan-price .f2-price-total__tax {
	color: var(--nta-black1);
	font-size: 12px;
	margin-right: 4px;
}

.f2-plan-price .f2-price-note {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f2-plan-price .f2-price-note {
		font-size: 12px;
	}
}

.f2-plan-action-list {
	margin-top: 16px;
	list-style: none;
	display: flex;
	gap: 8px 16px;
	justify-content: center;
}

.f2-plan-action-list&gt;li {
	flex: 1;
	max-width: 240px;
}

.f2-plan-action-list .f2-btn-plandetail {
	background: var(--nta-orange1);
	color: #fff;
	border: none;
}

@media screen and (max-width: 759px) {
	.f2-plan-action-list {
		gap: 8px;
	}

	.f2-plan-action-list&gt;li {
		max-width: initial;
	}
}

/* おすすめポイントモーダル ---------- */
.f2-window-recommend-point .f2-window__content {
	width: 624px;
}

@media screen and (max-width: 759px) {

	/* SP：ハーフモーダルにする */
	.f2-window-recommend-point .f2-window__container {
		padding: 48px 0 0;
	}

	.f2-window-recommend-point .f2-window__content {
		width: 100%;
	}

	.f2-window-recommend-point .f2-window__content,
	.f2-window-recommend-point .f-window__inner {
		height: 100%;
	}

	.f2-window-recommend-point .f-window__inner {
		border-radius: 4px 4px 0 0;
	}

	.f2-window-recommend-point .f2-window__close-btn {
		position: fixed;
		top: 12px;
		right: 12px;
	}
}

.f2-recommend-point__head {
	display: flex;
	align-items: flex-start;
	padding-right: 48px;
	position: relative;
}

.f2-recommend-point__head .f2-plan-ttl {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 12px;
}

@media screen and (max-width: 759px) {
	.f2-recommend-point__head .f2-plan-ttl {
		font-size: 16px;
		margin-bottom: 8px;
	}
}

.f2-recommend-point__head .f2-favorite-btn-wrap {
	top: -8px;
	right: 0;
}

.f2-recommend-point__head .f-label {}

.f2-recommend-point .f2-price-container {
	margin-top: 16px;
	margin-bottom: 16px;
}

.f2-recommend-point .f2-price-total {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	text-align: right;
	gap: 4px;
}

.f2-recommend-point .f2-price-total__txt {
	color: #fff;
	background: var(--nta-blue1);
	border-radius: 2px;
	font-size: 12px;
	padding: 3px 8px;
	margin-right: 4px;
}

.f2-recommend-point .f2-price-total__num {
	font-size: 24px;
	font-weight: 700;
	color: var(--nta-black1);
}

.f2-recommend-point .f2-price-total__tax {
	color: var(--nta-black1);
	font-size: 12px;
	margin-right: 4px;
}

.f2-recommend-point .f2-price-discount {
	margin-top: 8px;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	text-align: right;
	line-height: 1.2;
	gap: 8px;
}

.f2-recommend-point .f2-price-discount__txt {
	display: inline-block;
	font-size: 14px;
}

.f2-recommend-point .f2-price-discount__num {
	display: inline-block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	color: var(--nta-red1);
}

@media screen and (max-width: 759px) {
	.f2-recommend-point .f2-price-total__txt {
		font-size: 10px;
	}

	.f2-recommend-point .f2-price-total__num {
		font-size: 22px;
	}

	.f2-recommend-point .f2-price-discount {
		gap: 4px;
	}

	.f2-recommend-point .f2-price-discount__txt {
		font-size: 12px;
	}

	.f2-recommend-point .f2-price-discount__num {
		font-size: 16px;
	}
}

.f2-recommend-point__col-img {
	margin-top: 16px;
	margin-bottom: 16px;
	position: relative;
}

@media screen and (max-width: 759px) {
	.f2-recommend-point__col-img .f2-favorite-btn-wrap {
		right: 0;
	}
}

.f2-recommend-point .f2-heading {
	background: var(--nta-bg-blue2);
	border-radius: 3px;
	padding: 8px 16px;
	margin-bottom: 16px;
}

.f2-recommend-point .f2-heading__ttl {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.f2-recommend-point .f2-lead-txt {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: .5em;
}

.f2-recommend-point .f-detail__text {
	font-size: 14px;
	line-height: 1.7;
	margin-bottom: 24px;
}

.f2-recommend-btn-fixed .f2-btn-cv {
	min-height: 40px;
	width: 240px;
	font-size: 16px;
}

@media screen and (max-width: 759px) {
	.f2-recommend-point .f2-heading__ttl {
		font-size: 16px;
	}

	.f2-recommend-point .f2-lead-txt {
		font-size: 14px;
	}

	.f2-recommend-point .f-detail__text {
		font-size: 14px;
	}

	.f2-recommend-btn-fixed .f2-btn-cv {
		min-height: 30px;
		width: 180px;
		font-size: 14px;
	}
}

/* 施設の評価モーダル */
.f2-window-review .f2-window__content {
	width: 480px;
}

@media screen and (max-width: 759px) {
	.f2-window-review .f2-window__content {
		width: 100%;
	}

	.f2-window-review .f-container {
		padding: 16px;
	}
}

.f2-window-review .f2-review-block {
	margin-bottom: 12px;
	line-height: 1.4;
}

.f2-window-review .f2-review-block__row {
	display: flex;
	align-items: center;
}

.f2-window-review .f2-review-block__label {
	font-size: 16px;
	font-weight: 700;
	margin-right: 4px;
}

.f2-window-review .f2-review-block__score {
	margin-left: auto;
}

.f2-window-review .f2-review-block__score .f2-review-score {
	margin-left: 8px;
}

.f2-window-review .f2-review-collecting {
	display: block;
	font-size: 14px;
	line-height: 27px;
	color: var(--nta-gray2);
	text-align: right;
}

.f2-window-review .f2-review-total {
	border-bottom: 1px solid var(--nta-border-gray2);
	margin-bottom: 12px;
}

.f2-window-review .f2-review-total .f2-review-wrap {
	font-size: 1.8em;
}

.f2-window-review .f2-review-each .f2-review-wrap {
	font-size: 1.4em;
}

@media screen and (max-width: 759px) {
	.f2-window-review .f2-review-block__label {
		font-size: 14px;
	}

	.f2-window-review .f2-review-total .f2-review-wrap {
		font-size: 1.4em;
	}

	.f2-window-review .f2-review-each .f2-review-wrap {
		font-size: 1.2em;
	}

	.f2-window-review .f2-review-collecting {
		font-size: 12px;
		line-height: 20px;
	}
}

.f2-window-review .f2-review-note-txt {
	margin-top: 16px;
	font-size: 12px;
	line-height: 1.4;
	text-align: right;
}

.f2-window-review .f2-review-note-accordion {
	font-size: 12px;
	text-align: right;
	margin-top: 16px;
}

/* ページ上部へ---------- */
.f2-pagetop-btn-container {
	margin-top: 36px;
	margin-bottom: 16px;
	text-align: center;
}

.f2-btn-pagetop {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 1px solid var(--nta-blue1);
	color: var(--nta-blue1);
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	min-width: 150px;
	min-height: 40px;
	padding: 6px 32px;
	border-radius: 30px;
	box-shadow: 0 1px 2px 0 rgba(var(--nta-black1-rgb), 0.16);
}

.f2-btn-pagetop::after {
	content: "\e5ce";
	font-size: 24px;
	line-height: 14px;
}

@media screen and (max-width: 759px) {
	.f2-btn-pagetop {
		font-size: 14px;
		padding: 6px 10px 6px 20px;
	}
}

/*--------------------------------
1.37 plan list
--------------------------------*/
.f2-search-plan__more-btn::after,
.f2-search-result-more__btn::after {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
}

.f2-planlist-content {
	padding-bottom: 0;
}

.f2-planlist-head {
	display: flex;
	margin-bottom: 32px;
}

.f2-planlist-head__img {
	width: 320px;
	flex-shrink: 0;
}

.f2-planlist-head__body {
	padding-left: 16px;
}

@media screen and (max-width: 759px) {
	.f2-planlist-head {
		display: block;
		margin-bottom: 16px;
	}

	.f2-planlist-head__img {
		width: auto;
	}

	.f2-planlist-head__img .f-carousel__wrap {
		margin-top: 0;
	}

	.f2-planlist-head__body {
		padding-left: 0;
	}
}

/* お気に入りボタン＋レビュー */
.f2-planlist-head-row {
	display: flex;
	align-items: center;
	gap: 16px;
}

.f2-planlist-head-row .f2-favorite-btn-wrap {
	position: static;
}

.f2-planlist-head-row .f2-btn-favorite__label {
	border: 1px solid var(--nta-border-gray2);
}

.f2-planlist-head-row .f2-hotel-review-container {
	flex: 1;
}

@media screen and (max-width: 759px) {
	.f2-planlist-head-row {
		gap: 8px;
	}

	.f2-planlist-head-row .f2-favorite-btn-wrap {
		order: 2;
		margin-left: auto;
	}
}

/* 施設説明文 */
.f2-hotel-txt-accordion {
	margin-top: 24px;
}

.f2-hotel-txt-accordion .f-detail__text {
	font-size: 14px;
}

.f2-hotel-txt-accordion.is-hide .f2-txt-accordion__content {
	max-height: 120px;
}

@media screen and (max-width: 759px) {
	.f2-hotel-txt-accordion {
		margin-top: 8px;
	}

	.f2-hotel-txt-accordion .f-detail__text {
		font-size: 12px;
	}

	.f2-hotel-txt-accordion.is-hide .f2-txt-accordion__content {
		max-height: 60px;
	}
}

/* 北陸応援割対象 */
.f2-hotel-discount {
	clear: both;
	padding-top: 12px;
	display: flex;
	color: var(--nta-red1);
	gap: 8px;
	line-height: 1.4;
}

.f2-hotel-discount__icon {
	align-self: flex-start;
	border: 1px solid var(--nta-red1);
	border-radius: 2px;
	font-weight: 700;
	font-size: 13px;
	line-height: 1;
	white-space: nowrap;
	padding: 6px 8px;
}

.f2-hotel-discount__txt {
	flex: 1;
	align-self: center;
	font-size: 13px;
}

@media screen and (max-width: 759px) {
	.f2-hotel-discount__icon {
		font-size: 12px;
	}

	.f2-hotel-discount__txt {
		font-size: 11px;
	}
}

/* 施設からのお知らせ */
.f2-hotel-info {
	margin-bottom: 32px;
	background: #fff;
	border: 1px solid var(--nta-orange1);
	border-radius: 4px;
	font-size: 14px;
}

.f2-hotel-info__head {
	display: flex;
	align-items: center;
	padding: 10px 12px;
	font-weight: 700;
	line-height: 1;
}

.f2-hotel-info__head::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
	content: "\e88e";
	font-size: 24px;
	margin-right: 4px;
	color: var(--nta-orange1);
}

.f2-hotel-info__body {
	padding: 0 16px 16px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f2-hotel-info {
		font-size: 12px;
		margin-bottom: 24px;
	}
}

/* 施設からのお知らせ 施設詳細モーダル内の調整 */
.f2-planlist-head .f2-hotel-info {
	margin-top: 16px;
	margin-bottom: 0;
}

@media screen and (max-width: 759px) {
	.f2-planlist-head .f2-hotel-info {
		margin-bottom: 24px;
	}
}

/* タブ調整 */
.f2-tab-hotel-detail {
	margin-bottom: 16px;
}

.f2-tab-planlist {
	margin-bottom: 16px;
}

/* プラン料金説明文 */
.f2-search-facility-txt-accordion {
	margin-top: 16px;
	margin-bottom: 32px;
}

.f2-search-facility-txt-accordion .f-detail__text {
	font-size: 14px;
}

.f2-search-facility-txt-accordion.is-hide .f2-txt-accordion__content {
	max-height: 75px;
}

@media screen and (max-width: 759px) {
	.f2-search-facility-txt-accordion {
		margin-bottom: 16px;
	}

	.f2-search-facility-txt-accordion .f-detail__text {
		font-size: 12px;
	}

	.f2-search-facility-txt-accordion.is-hide .f2-txt-accordion__content {
		max-height: 75px;
	}
}

/* 並び替え */
.f2-planlist-sort {
	float: right;
}

.f2-planlist-sort {
	height: 28px;
	margin-bottom: 16px;
}

.f2-planlist-sort::before {
	font-size: 24px;
}

.f2-planlist-sort .f-select {
	border: none;
	font-size: 16px;
	font-weight: 700;
	height: 28px;
	padding-right: 32px;
}

@media screen and (max-width: 759px) {
	.f2-planlist-sort {
		margin-top: -4px;
	}

	.f2-planlist-sort::before {
		font-size: 16px;
	}

	.f2-planlist-sort .f-select {
		font-size: 14px;
		padding: 0 20px 0 10px;
	}
}

/* 残り〇部屋 */
.f2-remaining-icon {
	background: var(--nta-red1);
	color: #fff;
	font-size: 12px;
	line-height: 1;
	display: inline-block;
	border-radius: 4px;
	padding: 6px 8px;
}

/* 部屋カセットの調整 */
.f2-roomlist-container .f-search-facility__body {
	display: flex;
	flex-direction: column;
}

.f2-roomlist-container .f-search-facility__body .f2-plan-price {
	margin-top: auto;
	padding-top: 16px;
}

@media screen and (min-width: 760px) {
	.f2-roomlist-container .f-search-facility.is-plan-hide .f-search-plan {
		padding-bottom: 16px;
	}
}

/* この部屋のプラン カセット */
.f2-search-plan__head {
	position: relative;
}

.f2-search-plan__head-image {
	width: 280px;
	float: left;
}

.f2-search-plan__head-image .f-search-plan__picture {
	aspect-ratio: 4/3;
	border-radius: 4px;
	overflow: hidden;
}

.f2-search-plan__head-txt {
	padding-left: 296px;
}

.f2-search-plan__head-txt .f2-search-plan__ttl {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 16px;
}

.f2-search-plan__head-txt .f2-favorite-btn-wrap {
	top: 8px;
	left: 232px;
	right: auto;
}

@media screen and (max-width: 759px) {
	.f2-search-plan__head {
		display: flex;
		align-items: flex-start;
		padding-top: 8px;
	}

	.f2-search-plan__head-image {
		width: 100px;
		flex-shrink: 0;
		float: none;
	}

	.f2-search-plan__head-txt {
		flex: 1;
		padding-left: 8px;
	}

	.f2-search-plan__head-txt .f2-search-plan__ttl {
		font-size: 14px;
		margin-bottom: 0;
	}

	.f2-search-plan__head-txt .f2-favorite-btn-wrap {
		position: static;
		display: flex;
		justify-content: flex-end;
	}
}

/* この部屋のプラン カセット＞関連プラン */
.f-search-plan__detail .f2-related-plan {
	margin-top: 24px;
	border: 1px solid var(--nta-border-gray2);
	background: #fff;
	border-radius: 4px;
	padding: 16px;
}

.f-search-plan__detail .f2-related-plan__head {
	border-bottom: 2px solid var(--nta-blue1);
	padding-bottom: 4px;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}

.f-search-plan__detail .f2-related-plan__ttl {
	font-weight: 700;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}

@media screen and (max-width: 759px) {
	.f-search-plan__detail .f2-related-plan__ttl {
		font-size: 14px;
	}
}

.f-search-plan__detail .f2-related-plan__body {
	padding-top: 8px;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}

/* この部屋のプランをすべて見る */
.f2-search-plan__more {
	text-align: center;
}

.f-search-facility.is-plan-hide .f2-search-plan__more-btn {
	margin-top: 24px;
}

@media screen and (max-width: 759px) {
	.f-search-facility.is-plan-hide .f2-search-plan__more-btn {
		margin-top: 16px;
	}
}

.f2-search-plan__more-btn {
	background: transparent;
	border: none;
	text-align: center;
	display: inline-flex;
	align-items: center;
	color: var(--nta-gray1);
	padding: 8px;
	font-size: 16px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f2-search-plan__more-btn {
		font-size: 12px;
	}
}

.f2-search-plan__more-btn::after {
	content: "\e145";
	font-size: 24px;
	transition: transform 0.3s;
	transform: rotate(180deg);
}

.f-search-facility:not(.is-plan-hide) .f2-search-plan__more-btn::after,
.f2-search-plan__more-btn.is-open::after {
	content: "\e15b";
	transform: rotate(0deg);
}

/* このホテルのプランをもっと見る */
.f2-search-result-more {
	text-align: center;
	margin-top: 32px;
}

.f2-search-result-more__btn {
	background: transparent;
	border: none;
	text-align: center;
	display: inline-flex;
	align-items: center;
	color: var(--nta-gray1);
	font-size: 20px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f2-search-result-more {
		margin-top: 0;
	}

	.f2-search-result-more__btn {
		font-size: 16px;
	}
}

.f2-search-result-more__btn::after {
	content: "\e145";
	font-size: 24px;
	transition: transform 0.3s;
	transform: rotate(180deg);
}

.f2-search-result-more__btn.is-open::after {
	content: "\e15b";
	transform: rotate(0deg);
}

/* このプランの部屋 カセット */
.f-search-plan__detail .f2-remaining-icon-wrap {
	margin-top: 8px;
	padding-left: 296px;
}

/* 写真 タブ---------- */
.f2-gallery-nav {
	margin: 16px 0;
	position: relative;
	position: sticky;
	top: 68px;
	left: 0;
}

.f2-gallery-nav__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	gap: 0 8px;
	white-space: nowrap;
	overflow-x: auto;
}

.f2-gallery-nav__item {
	margin: 0;
	padding: 8px 12px;
	display: inline-block;
	background: var(--nta-bg-gray1);
	border-radius: 3px;
	font-size: 14px;
	line-height: 1;
	color: var(--nta-gray1);
	text-align: center;
	font-weight: 500;
	cursor: pointer;
}

/*min-widthがきかないためスペース挿入*/
.f2-gallery-nav__item::before {
	content: "";
	display: block;
	width: 60px;
}

.f2-gallery-nav__item.is-active {
	background-color: var(--nta-blue1);
	color: #fff;
	font-weight: 700;
	pointer-events: none;
}

@media screen and (max-width: 759px) {
	.f2-gallery-nav {
		margin: 16px -16px;
	}

	.f2-gallery-nav__list {
		padding: 0 16px;
		gap: 0 2px;
	}

	.f2-gallery-nav__item {
		padding: 5px 8px;
		font-size: 11px;
		border-radius: 2px;
	}
}

.f2-gallery-contents {
	margin-top: 40px;
}

.f2-gallery-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.f2-gallery-item {
	width: calc((100% - 12px) / 4);
	cursor: pointer;
	margin-bottom: 24px;
}

.f2-gallery-item__img {
	aspect-ratio: 1/1;
}

.f2-gallery-item__img-picture {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.f2-gallery-item__caption {
	font-size: 13px;
	line-height: 1.4;
	padding: 6px 12px 0 0;
}

@media screen and (max-width: 759px) {
	.f2-gallery-contents {
		margin-top: 16px;
	}

	.f2-gallery-item {
		width: calc((100% - 8px) / 3);
		margin-bottom: 16px;
	}

	.f2-gallery-item__img {
		aspect-ratio: 1/1;
	}

	.f2-gallery-item__caption {
		font-size: 11px;
		padding: 4px 10px 0 0;
	}
}

/* 拡大表示モーダル */
.f2-window-photo .f2-window__content {
	max-width: 800px;
}

.f2-gallery-large {
	padding: 8px;
	text-align: center;
}

.f2-gallery-large__img img {
	aspect-ratio: 4 / 3;
	object-fit: contain;
	max-width: 100%;
	max-height: 588px;
}

.f2-gallery-large__container {
	overflow: hidden;
	padding-top: 16px;
	padding-bottom: 8px;
}

.f2-gallery-large__caption {
	text-align: center;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	font-size: 13px;
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f2-gallery-large__img img {
		aspect-ratio: 1 / 1;
		object-fit: cover;
	}

	.f2-gallery-large__caption {
		font-size: 12px;
	}
}

/* 注意テキスト */
.f2-contents-note-txt {
	font-size: 12px;
	margin-top: 24px;
}

/* 施設・アクセス タブ---------- */
.f2-hotel-access-map {
	background: var(--nta-bg-gray3);
	aspect-ratio: 3/2;
	position: relative;
	margin-bottom: 40px;
}

.f2-hotel-access-map__contents {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 759px) {
	.f2-hotel-access-map {
		margin-bottom: 24px;
	}
}

/*--------------------------------
1.38 search window
--------------------------------*/
/* 検索条件変更モーダル */
.f2-window-search .f2-window__content {
	width: 624px;
}

@media screen and (max-width: 759px) {
	.f2-window-search .f2-window__content {
		width: auto;
	}
}

@media screen and (max-width: 759px) {

	/* SP：ハーフモーダルにする */
	.f2-window-search .f2-window__container {
		padding: 48px 0 0;
	}

	.f2-window-search .f2-window__content {
		width: 100%;
	}

	.f2-window-search .f2-window__content,
	.f2-window-search .f-window__inner {
		height: 100%;
	}

	.f2-window-search .f-window__inner {
		border-radius: 0;
	}

	.f2-window-search .f2-window__close-btn {
		position: fixed;
		top: 12px;
		right: 12px;
	}
}

.f-search-window__head {
	padding: 16px 16px 0;
}

.f-search-window__title {
	position: relative;
	padding-left: 23px;
	font-weight: bold;
	font-size: 18px;
	color: #fff;
}

.f-search-window__button {
	margin-left: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 108px;
	min-height: 32px;
	font-weight: bold;
	font-size: 14px;
	color: var(--nta-blue1);
	text-align: center;
	border: 1px solid var(--nta-blue1);
	padding: 6px 10px;
	border-radius: 30px;
	box-shadow: 0 1px 2px 0 rgba(var(--nta-black1-rgb), 0.16);
}

.f-search-window__body {
	padding: 8px 24px 24px;
}

@media screen and (max-width: 759px) {
	.f-search-window__button {
		width: 80px;
		min-height: 30px;
		font-size: 12px;
	}

	.f-search-window__body {
		padding: 8px 16px 16px;
	}
}

/* 旅行代金---------- */
.f2-search-price-range {
	display: flex;
	align-items: center;
	gap: 0 24px;
}

.f2-search-price-range .f-select__wrap {
	min-width: initial;
}

.f2-search-price-range__min,
.f2-search-price-range__max {
	flex: 1;
}

.f2-search-price-range__max::after {
	content: "~";
	padding: 0 8px;
	color: var(--nta-gray1);
	font-size: 14px;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: 100%;
	margin-top: -0.5em;
}

/* モーダル内 目的地エリア選択---------- */
.f2-select-area {
	margin-top: 8px;
}

.f2-select-area__item:not(:last-child) {
	margin-bottom: 16px;
}

.f2-select-area__select {
	display: flex;
}

.f2-select-area__select&gt;dt {
	width: 6em;
	align-self: center;
}

.f2-select-area__select&gt;dd {
	flex: 1;
}

.f2-select-area__ttl {
	font-weight: 700;
}

.f2-select-area__select .f-select__wrap {
	width: 100%;
}

.f2-select-area__select .f-select {
	font-size: 16px;
	font-weight: 700;
}

/*--------------------------------
1.39 itinerary
--------------------------------*/
.f2-confirm-train-head::before,
.f2-confirm-facility-head::before,
.f2-confirm-other-head::before,
.f2-confirm-train-head__station .f2-station--arr::before,
.f2-icon-credit::before,
.f2-icon-bank::before {
	font-family: 'Material Symbols Rounded';
	font-weight: 300;
	font-style: normal;
	font-size: 1em;
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	font-variation-settings: "FILL"0, "wght"300, "GRAD"0, "opsz"24;
}

.f2-icon-credit,
.f2-icon-bank {
	display: flex;
}

.f2-icon-credit::before {
	content: "\e870";
	font-size: 20px;
	color: var(--nta-blue1);
	font-variation-settings: "wght"500;
}

.f2-icon-bank::before {
	content: "\e84f";
	font-size: 20px;
	color: var(--nta-blue1);
	font-variation-settings: "wght"500;
}

.f-confirm .f-detail__body .f-container,
.f-confirm .f-detail__body--large .f-container {
	width: auto;
	padding: 0;
}

/* 予約内容---------- */
.f2-detail-info__list+.f2-detail-info__list {
	margin-top: 24px;
}

.f2-detail-info__list {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

.f2-detail-info__item {
	width: 120px;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

.f2-detail-info__description {
	width: calc(100% - 120px);
	font-size: 16px;
	line-height: 24px;
}

@media print,
screen and (min-width: 760px) {
	.f2-detail-info__description+.f2-detail-info__description {
		margin-left: 120px;
	}
}

.f2-detail-info__help {
	text-align: left;
	margin-top: 8px;
	margin-bottom: 24px;
	margin-left: 120px;
	font-size: 14px;
}

.f2-detail-info__help .f2-button-hint {
	color: var(--nta-gray2);
}

@media screen and (max-width: 759px) {
	.f2-detail-info__list+.f2-detail-info__list {
		margin-top: 16px;
	}

	.f2-detail-info__list {
		display: block;
	}

	.f2-detail-info__item {
		width: auto;
		font-size: 14px;
		line-height: 1;
		margin-bottom: 8px;
	}

	.f2-detail-info__description {
		width: auto;
		font-size: 12px;
		line-height: 1.5;
	}

	.f2-detail-info__help {
		margin-bottom: 8px;
		margin-left: 0;
		font-size: 12px;
		text-align: right;
	}
}

/* 追加：行程情報---------- */
.f2-confirm-schedule-wrap {
	padding: 24px 0 24px 36px;
}

.f2-confirm-schedule-wrap:not(:first-child) {
	border-top: 1px solid var(--nta-border-gray2);
}

@media screen and (max-width: 759px) {
	.f2-confirm-schedule-wrap {
		padding: 20px 0 20px 28px;
	}
}

/* 販売素材コード,地区施設コード */
.f2-confirm-code-txt {
	margin-left: 4px;
	color: var(--nta-gray2);
	font-size: 12px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-code-txt {
		font-size: 11px;
	}
}

/* 往路・復路 列車情報 */
.f2-confirm-train-head {
	margin-bottom: 36px;
	position: relative;
}

.f2-confirm-train-head::before {
	content: "\e570";
	position: absolute;
	top: -5px;
	left: -40px;
	font-size: 32px;
	color: var(--nta-blue1);
}

.f2-confirm-train-head__ttl {
	font-size: 18px;
	font-weight: 700;
}

.f2-confirm-train-head__txt {
	font-size: 14px;
	margin-top: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-train-head {
		margin-bottom: 24px;
	}

	.f2-confirm-train-head::before {
		top: -7px;
		left: -32px;
		font-size: 28px;
	}

	.f2-confirm-train-head__ttl {
		font-size: 14px;
	}

	.f2-confirm-train-head__txt {
		font-size: 12px;
		margin-top: 12px;
	}
}

.f2-confirm-train-detail {
	display: flex;
	margin-bottom: 32px;
}

@media print,
screen and (min-width: 760px) {
	.f2-confirm-train-detail__col:first-child {
		width: 45%;
	}

	.f2-confirm-train-detail__col:nth-child(2) {
		width: 55%;
		align-self: flex-end;
	}
}

.f2-confirm-train-detail+.f2-confirm-train-detail {
	border-top: 1px solid var(--nta-border-gray2);
	padding-top: 32px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-train-detail {
		display: block;
		margin-bottom: 16px;
	}

	.f2-confirm-train-detail+.f2-confirm-train-detail {
		padding-top: 16px;
	}

	.f2-confirm-train-detail__col+.f2-confirm-train-detail__col {
		margin-top: 8px;
	}
}

.f2-confirm-train-detail__name {
	margin-bottom: 8px;
}

.f2-confirm-train-detail__name .f2-name {
	font-size: 18px;
	font-weight: 700;
}

.f2-confirm-train-detail__name .f2-number {
	margin-left: 8px;
	font-size: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-train-detail__name .f2-name {
		font-size: 14px;
	}

	.f2-confirm-train-detail__name .f2-number {
		margin-left: 4px;
		font-size: 12px;
	}
}

.f2-confirm-train-detail__time {
	display: inline-flex;
	flex-direction: column;
}

.f2-confirm-train-detail__time .f2-train-time-block {
	display: flex;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px solid var(--nta-border-gray2);
	font-size: 18px;
}

.f2-confirm-train-detail__time .f2-train-time-block&gt;dt {
	flex: 1;
	min-width: 200px;
	padding-right: 8px;
	box-sizing: border-box;
}

.f2-confirm-train-detail__time .f2-train-time-block&gt;dd {
	font-weight: 700;
}

.f2-confirm-train-detail__time .f2-train-time-block&gt;dd .f2-time {
	font-size: 24px;
	font-weight: 700;
	margin-right: 4px;
}

.f2-confirm-train-detail__info {}

.f2-confirm-train-detail__info-txt {
	margin-top: 8px;
	font-size: 16px;
	line-height: 1.4;
}

.f2-confirm-train-detail__info-txt .f2-icon-smoking,
.f2-confirm-train-detail__info-txt .f2-icon-nosmoking {
	margin-right: 4px;
}

.f2-confirm-train-detail__info-txt .f2-icon-smoking::before,
.f2-confirm-train-detail__info-txt .f2-icon-nosmoking::before {
	vertical-align: text-bottom;
}

@media screen and (max-width: 759px) {
	.f2-confirm-train-detail__time .f2-train-time-block {
		padding: 8px 0;
		font-size: 14px;
	}

	.f2-confirm-train-detail__time .f2-train-time-block&gt;dt {
		min-width: 120px;
	}

	.f2-confirm-train-detail__time .f2-train-time-block&gt;dd .f2-time {
		font-size: 18px;
	}

	.f2-confirm-train-detail__info-txt {
		margin-top: 4px;
		font-size: 12px;
	}

	.f2-confirm-train-detail__info-txt .f2-icon-smoking,
	.f2-confirm-train-detail__info-txt .f2-icon-nosmoking {
		margin-right: 4px;
	}

	.f2-confirm-train-detail__info-txt .f2-icon-smoking::before,
	.f2-confirm-train-detail__info-txt .f2-icon-nosmoking::before {
		font-size: 16px;
	}
}

/* JR発売前,リクエスト */
.f2-confirm-train-status {
	border: 1px solid var(--nta-red1);
	border-radius: 4px;
	padding: 16px;
	font-size: 16px;
}

.f2-confirm-train-status__ttl {
	color: var(--nta-red1);
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 8px;
}

.f2-confirm-train-status__txt {
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f2-confirm-train-status {
		padding: 10px;
		font-size: 12px;
	}

	.f2-confirm-train-status__ttl {
		font-size: 14px;
	}
}

/* 変更する,追加する */
.f2-confirm-schedule-wrap .f2-confirm-change {
	margin-top: 32px;
}

.f2-confirm-schedule-wrap .f2-confirm-change__list {
	list-style: none;
	text-align: right;
}

.f2-confirm-schedule-wrap .f2-confirm-change__list&gt;li {
	margin-top: 24px;
}

.f-confirm-schedule .f2-confirm-add {
	padding: 0 8px 8px;
	text-align: center;
}

.f-confirm-schedule .f2-confirm-add .f2-confirm-add-btn {
	width: 240px;
	height: 40px;
	font-size: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-schedule-wrap .f2-confirm-change {
		margin-top: 24px;
	}

	.f2-confirm-schedule-wrap .f2-confirm-change__list&gt;li {
		margin-top: 16px;
	}

	.f-confirm-schedule .f2-confirm-add .f2-confirm-add-btn {
		width: 200px;
		height: 30px;
		font-size: 14px;
	}
}

/* 現地移動はお客様負担 */
.f2-confirm-schedule__txt-self {
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 8px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-schedule__txt-self {
		font-size: 12px;
	}
}

/* 施設情報 */
.f2-confirm-facility-head {
	position: relative;
	margin-bottom: 24px;
}

@media print,
screen and (min-width: 760px) {
	.f2-confirm-schedule-wrap:has(.f2-confirm-facility-detail) .f2-confirm-facility-head {
		float: left;
		width: 45%;
		padding-right: 40px;
	}
}

.f2-confirm-facility-head::before {
	content: "\efdf";
	position: absolute;
	top: -5px;
	left: -40px;
	font-size: 32px;
	color: var(--nta-blue1);
}

.f2-confirm-facility-head__ttl {
	font-size: 18px;
	font-weight: 700;
}

.f2-confirm-facility-head__txt {
	font-size: 14px;
	margin-top: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-facility-head::before {
		top: -7px;
		left: -32px;
		font-size: 28px;
	}

	.f2-confirm-facility-head__ttl {
		font-size: 14px;
	}

	.f2-confirm-facility-head__txt {
		font-size: 12px;
		margin-top: 12px;
	}
}

/* 施設詳細 */
.f2-confirm-facility-detail {
	width: 55%;
	display: flex;
}

.f2-confirm-facility-detail .f2-plan-data__list {
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
	line-height: 1.4;
}

.f2-confirm-facility-detail .f2-plan-data__item {
	margin-top: 16px;
	font-weight: 700;
	width: 8em;
	flex-shrink: 0;
	padding-right: .5em;
	box-sizing: border-box;
}

.f2-confirm-facility-detail .f2-plan-data__description {
	margin-top: 16px;
	width: calc(100% - 8em);
}

.f2-confirm-facility-detail .f2-plan-data__item:first-of-type,
.f2-confirm-facility-detail .f2-plan-data__description:first-of-type {
	margin-top: 0;
}

.f2-confirm-facility-detail .f2-plan-data__description .f2-meal-info {
	display: flex;
	align-items: center;
	line-height: 1;
}

.f2-confirm-facility-detail .f2-plan-data__description .f2-meal-info .f2-label {
	margin-left: 8px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-facility-detail {
		width: auto;
		display: block;
	}

	.f2-confirm-facility-detail .f2-plan-data__list {
		font-size: 12px;
	}

	.f2-confirm-facility-detail .f2-plan-data__item {
		margin-top: 8px;
	}

	.f2-confirm-facility-detail .f2-plan-data__description {
		margin-top: 8px;
	}
}

/* 施設情報＞ホテル別途手配 */
.f2-confirm-facility-caution {
	border: 1px solid var(--nta-red1);
	border-radius: 4px;
	padding: 16px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--nta-red1);
}

.f2-confirm-schedule__note-txt {
	font-size: 14px;
	line-height: 1.5;
	margin-top: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-facility-caution {
		padding: 10px;
		font-size: 14px;
	}

	.f2-confirm-schedule__note-txt {
		font-size: 12px;
	}
}

/* その他情報 */
.f2-confirm-other-head {
	margin-bottom: 16px;
	position: relative;
}

.f2-confirm-other-head::before {
	content: "\e8b1";
	position: absolute;
	top: -5px;
	left: -40px;
	font-size: 32px;
	color: var(--nta-blue1);
}

.f2-confirm-other-head__ttl {
	font-size: 18px;
	font-weight: 700;
}

.f2-confirm-other-detail .f2-confirm-other-txt {
	margin-top: 8px;
	font-size: 16px;
	line-height: 1.4;
}

@media screen and (max-width: 759px) {
	.f2-confirm-other-head::before {
		top: -7px;
		left: -32px;
		font-size: 28px;
	}

	.f2-confirm-other-head__ttl {
		font-size: 14px;
	}

	.f2-confirm-other-detail .f2-confirm-other-txt {
		margin-top: 4px;
		font-size: 12px;
	}
}

/* ご希望の列車 */
.f2-request-train-head {
	display: flex;
	position: relative;
	margin-bottom: 24px;
}

.f2-request-train-head&gt;dt {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	font-size: 18px;
	text-align: center;
	width: 260px;
	min-height: 68px;
	color: #fff;
	background-color: var(--nta-blue1);
	border-radius: 4px 0 0 4px;
}

.f2-request-train-head&gt;dd {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 8px 16px;
	font-weight: 700;
	background-color: var(--nta-bg-blue2);
	border-radius: 0 4px 4px 0;
}

.f2-request-train-head__ttl {
	font-weight: 700;
}

.f2-confirm-train-head__date {
	font-size: 14px;
}

.f2-confirm-train-head__station {
	margin-top: 8px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	display: flex;
	gap: 0 24px;
}

.f2-confirm-train-head__station .f2-station--dep,
.f2-confirm-train-head__station .f2-station--arr {
	font-weight: 700;
	position: relative;
}

.f2-confirm-train-head__station .f2-station--arr::before {
	font-variation-settings: 'wght'600;
	content: "\e5cc";
	color: var(--nta-blue1);
	position: absolute;
	top: 50%;
	right: 100%;
	transform: translateY(-50%);
	margin-right: 4px;
}

@media screen and (max-width: 759px) {
	.f2-request-train-head&gt;dt {
		font-size: 16px;
		width: 6.5em;
		min-height: 60px;
	}

	.f2-request-train-head&gt;dd {
		align-items: flex-start;
	}

	.f2-request-train-head__ttl {
		font-weight: 700;
	}

	.f2-confirm-train-head__date {
		font-size: 12px;
	}

	.f2-confirm-train-head__station {
		font-size: 14px;
	}
}

/* ご希望の列車＞第〇希望 */
.f2-request-train-list {}

.f2-request-train-item {}

.f2-request-train-item__head {
	background: var(--nta-bg-gray1);
	text-align: center;
	font-weight: 700;
	font-size: 16px;
	padding: 8px;
}

.f2-request-train-item__body {
	padding: 24px 0;
}

@media screen and (max-width: 759px) {
	.f2-request-train-item__head {
		font-size: 12px;
	}

	.f2-request-train-item__body {
		padding: 16px 0;
	}
}

.f2-request-train-item .f2-train-time-wrap {
	display: flex;
	gap: 16px;
}

.f2-request-train-item .f2-train-time-wrap .f2-train-time {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0 8px;
	position: relative;
}

.f2-request-train-item .f2-train-time-wrap .f2-train-time__station {
	font-size: 16px;
}

.f2-request-train-item .f2-train-time-wrap .f2-train-time__time {
	font-size: 20px;
	font-weight: 700;
}

.f2-request-train-item .f2-train-time-wrap .f2-train-time--arr {
	padding-left: 34px;
}

.f2-request-train-item .f2-train-time-wrap .f2-train-time--arr::before {
	content: "→";
	position: absolute;
	font-size: 20px;
	font-weight: 500;
	left: 0;
	top: 50%;
	margin-top: -.5em;
}

.f2-request-train-item__row {
	margin-top: 12px;
	display: flex;
	justify-content: space-between;
}

.f2-request-train-item__row-left {
	padding-right: 16px;
}

.f2-request-train-item__row-right {
	align-self: flex-end;
}

.f2-request-train-item .f2-train-detail {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 4px 1em;
	font-size: 16px;
	line-height: 1.4;
}

.f2-request-train-item .f2-train-difference {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

@media screen and (max-width: 759px) {
	.f2-request-train-item .f2-train-time-wrap .f2-train-time__station {
		font-size: 12px;
	}

	.f2-request-train-item .f2-train-time-wrap .f2-train-time__time {
		font-size: 16px;
	}

	.f2-request-train-item .f2-train-detail {
		font-size: 12px;
	}

	.f2-request-train-item .f2-train-difference {
		font-size: 14px;
	}
}

/* ご旅行代金 */
@media print,
screen and (min-width: 760px) {
	.f2-confirm-price {
		padding: 24px;
		border: 1px solid var(--nta-border-gray2);
		border-radius: 4px;
	}

	.f2-confirm-price__inner {
		max-width: 420px;
		margin-left: auto;
		margin-right: auto;
	}

	.f2-confirm-price__ttl {
		margin-bottom: 16px;
		text-align: center;
		font-size: 16px;
		padding-bottom: 12px;
		border-bottom: 1px solid var(--nta-border-gray2);
	}
}

.f2-confirm-price__room-ttl {
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 8px;
	padding-top: 8px;
}

.f2-confirm-price__table+.f2-confirm-price__room-ttl {
	border-top: 1px solid var(--nta-border-gray2);
	margin-top: 12px;
	padding-top: 24px;
}

.f2-confirm-price__table {
	width: 100%;
}

.f2-confirm-price__table th {
	padding: 12px 0;
	vertical-align: middle;
	font-size: 16px;
	text-align: left;
}

.f2-confirm-price__table td {
	padding: 12px 0;
	font-size: 18px;
	font-weight: 700;
	vertical-align: middle;
	text-align: right;
}

.f2-confirm-price-note {
	margin-top: 16px;
	font-size: 16px;
	line-height: 1.5;
}

@media screen and (max-width: 759px) {
	.f2-confirm-price__ttl {
		padding-bottom: 16px;
	}

	.f2-confirm-price__room-ttl {
		font-size: 14px;
	}

	.f2-confirm-price__table+.f2-confirm-price__room-ttl {
		margin-top: 8px;
		padding-top: 16px;
	}

	.f2-confirm-price__table th {
		padding: 8px 0;
		font-size: 12px;
	}

	.f2-confirm-price__table td {
		padding: 8px 0;
		font-size: 14px;
	}

	.f2-confirm-price-note {
		font-size: 12px;
	}
}

/* 行程画面アコーディオン */
.f2-confirm-accordion {}

.f2-confirm-accordion__head {
	background: var(--nta-bg-gray1);
	position: relative;
	cursor: pointer;
}

.f2-confirm-accordion__head .f-accordion__button {
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
}

.f2-confirm-accordion__head-ttl {
	text-align: center;
	padding: 10px;
	position: relative;
	font-size: 18px;
	font-weight: 700;
}

@media screen and (max-width: 759px) {
	.f2-confirm-accordion__head-ttl {
		padding: 8px;
		font-size: 14px;
	}
}

.f2-confirm-accordion__body {
	display: none;
}

.f2-confirm-accordion__body .f-container {
	padding: 0;
	width: auto;
}

/* 取消料 */
.f2-confirm-cancel-charge {
	margin-top: 16px;
}

/* 取扱店舗 */
.f2-confirm-store-name {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--nta-border-gray2);
}

.f2-confirm-store-accordion.is-hide .f2-txt-accordion__content {
	max-height: 32px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-store-name {
		font-size: 14px;
	}
}

/* ご案内とご注意 */
.f2-comfirm-note-info__list .f-note-info__description {
	font-size: 16px;
}

.f2-comfirm-note-info__list .f-note-info__description:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 759px) {
	.f2-comfirm-note-info__list .f-note-info__description {
		font-size: 12px;
	}
}

/* ご案内とご注意＞お申し込みについてのご案内 */
.f2-confirm-apply-note {
	margin-top: 24px;
}

.f2-confirm-apply-note__title {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--nta-border-gray2);
	margin-bottom: 24px;
}

.f2-confirm-apply-note__lead-txt {
	font-weight: 700;
	color: var(--nta-red1);
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 24px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-apply-note__title {
		font-size: 14px;
		margin-bottom: 16px;
	}

	.f2-confirm-apply-note__lead-txt {
		font-size: 14px;
		margin-bottom: 16px;
	}
}

/* 固定ボタン */
.f2-confirm-btn-fixed {
	display: block;
	background: #fff;
}

.f2-confirm-btn-fixed .btn_reserve {
	width: 240px;
}

.f2-confirm-btn-fixed .f-button-back {
	flex-shrink: 0;
	width: 240px;
	margin-right: 16px;
	font-size: 16px;
}

@media screen and (max-width: 759px) {
	.f2-confirm-btn-fixed .f-button-back {
		width: 100px;
		font-size: 14px;
	}
}</pre></body></html>