/*----------------------
|- section
-----------------------*/
.block {
	padding: 160px 20px;
}
.package01 {
	background-color: #DFD9CA;
	background-image: url(/assets/img/bg_lower01.png);
	background-size: 100%;
}
.package02 {
	background-color: #DAD9D9;
	background-image: url(/assets/img/bg_lower02.png);
	background-size: 100%;
}
.package03 {
	background-color: #C0BEBD;
	background-image: url(/assets/img/bg_lower03.png);
	background-size: 100%;
}
.package04 {
	background-color: #F3F3F0;
	background-image: url(/assets/img/bg_lower04.png);
	background-size: 100%;
}
.package05 {
	background-color: #EEE1E0;
	background-image: url(/assets/img/bg_lower05.png);
	background-size: 100%;
}
.section {
	position: relative;
	max-width: 1500px;
	margin: 0 auto;
	padding: 120px 0 90px;
	border-radius: 15px;
}
.package01 .section {
	background: #EFEADF;
}
.package02 .section {
	background: #EBEBE8;
}
.package03 .section {
	background: #E5E4E0;
}
.package04 .section {
	background: #F7F7F7;
}
.package05 .section {
	background: #FAF2F2;
}
.content {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 20px;
}
.ttl-box {
	margin-bottom: 80px;
	display: grid;
	grid-template-columns: 180px 1fr;
	align-items: center;
	gap: 0 3%;
}
.package-name {
	font-size: 3.75rem;
	letter-spacing: .022rem;
	line-height: 1.5;
}
.package01 .package-name {
	color: #8F7844;
}
.package02 .package-name {
	color: #8B8A8A;
}
.package03 .package-name {
	color: #221816;
}
.package04 .package-name {
	color: #888;
}
.package05 .package-name {
	color: #CC8F8B;
}
.package-txt {
	margin-bottom: 50px;
	font-size: var(--fs36);
	font-weight: 700;
	line-height: 2;
}
.seat-box {
	margin-bottom: 60px;
	display: grid;
	grid-template-columns: 1fr 50%;
	align-items: flex-start;
	gap: 0 15px;
}
.seat-txt {
	font-size: var(--fs24);
	line-height: 2.3;
}
@media (hover: hover){}
@media screen and (max-width: 1121px){
	.ttl-box {
		grid-template-columns: 150px 1fr;
	}
	.package-name {
		font-size: 5vw;
	}
}
@media screen and (max-width: 836px){
	.ttl-box {
		grid-template-columns: 120px 1fr;
	}
	.package-name {
		font-size: 4.5vw;
	}
}
@media screen and (max-width: 767px){
	.block {
		padding: 60px 0;
	}
	.package01 {
		background-image: url(/assets/img/bg_lower01_sp.png);
	}
	.section {
		width: 90%;
		padding: 50px 0 60px;
		border-radius: 8px;
	}
	.section::before {
		top: -20px;
		width: 40px;
		height: 40px;
	}
	.content {
		width: 88%;
		padding: 0;
	}
	.ttl-box {
		margin-bottom: 40px;
		grid-template-columns: 60px 1fr;
		gap: 0 20px;
	}
	.package-name {
		font-size: var(--fs24);
	}
	.package-txt {
		margin-bottom: 20px;
		font-size: var(--fs17);
	}
	.seat-box {
		margin-bottom: 30px;
		grid-template-columns: 1fr;
		gap: 25px 0;
	}
	.seat-txt {
		font-size: var(--fs13);
		line-height: 2;
	}
}
/*----------------------
|- feature-box
-----------------------*/
.feature-box {
	max-width: 1120px;
	margin: 0 auto 110px;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 0 3%;
}
.feature-box div {
	position: relative;
	padding: 15px 15px 15px 0;
	background: rgb(255,255,255,.7);
	display: grid;
	grid-template-columns: 120px 1fr;
	gap: 0 7%;
	overflow: hidden;
}
.package04 .feature-box div {
	background: #EBEBE6;
}
.feature-box div::before {
	content: '';
	position: absolute;
	top: 50%;
	left: -70px;
	transform: translateY(-50%);
	width: 190px;
	height: 190px;
	border-radius: 50%;
	background: #fff;
}
.feature-ttl {
	position: relative;
	font-size: var(--fs22);
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.package01 .feature-ttl {
	color: #8F7842;
}
.package02 .feature-ttl {
	color: #8B8A8A;
}
.package03 .feature-ttl {
	color: #221816;
}
.package04 .feature-ttl {
	color: #888;
}
.package05 .feature-ttl {
	color: #CC8F8B;
}
.feature-txt {
	font-size: var(--fs22);
	line-height: 1.5;
	display: flex;
	align-items: center;
}
/* en */
.en .feature-box div {
	grid-template-columns: 150px 1fr;
	gap: 0 2%;
}
.en .feature-box div::before {
	left: -40px;
}
.en .feature-ttl {
	padding: 0 20px;
	text-align: left;
	line-height: 1.3;
}
.en .feature-ttl {
	font-size: var(--fs20);
}
.en .feature-txt {
	font-size: var(--fs18);
}
@media screen and (max-width: 767px){
	.feature-box {
		width: 87%;
		margin: 0 auto 50px;
		grid-template-columns: 1fr;
		gap: 15px 0;
	}
	.feature-box div {
		min-height: 50px;
		padding: 8px 10px 8px 0;
		grid-template-columns: 60px 1fr;
		gap: 0 20px;
	}
	.feature-box div::before {
		left: -28px;
		width: 90px;
		height: 90px;
	}
	.feature-ttl {
		font-size: var(--fs11);
	}
	.feature-txt {
		font-size: var(--fs11);
	}
	/* en */
	.en .feature-box div {
		grid-template-columns: 75px 1fr;
		gap: 0 2%;
	}
	.en .feature-box div::before {
		left: -16px;
	}
	.en .feature-ttl {
		padding: 0 10px;
		text-align: left;
		line-height: 1.3;
	}
	.en .feature-ttl {
		font-size: var(--fs11);
	}
	.en .feature-txt {
		font-size: var(--fs10);
	}
}
/*----------------------
|- flow
-----------------------*/
.flow > * + * {
	margin-top: 60px;
}
.flow__item {
	position: relative;
	padding-top: 30px;
	list-style: none;
}
.flow-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 240px;
	z-index: 1;
}
.flow-box {
	position: relative;
	width: 96%;
	max-width: 1150px;
	min-height: 240px;
	margin: 0 0 0 auto;
	padding: 60px 20px 60px 250px;
	border: 1px solid #000;
	display: flex;
	align-items: center;
}
.flow-no {
	position: absolute;
	top: -25px;
	left: 50%;
	transform: translateX(-50%);
	padding: 0 15px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1;
}
.package01 .flow-no {
	background: #EFEADF;
}
.package02 .flow-no {
	background: #EBEBE8;
}
.package03 .flow-no {
	background: #E5E4E0;
}
.package04 .flow-no {
	background: #F7F7F7;
}
.package05 .flow-no {
	background: #FAF2F2;
}
.flow-txt {
	font-size: var(--fs24);
	line-height: 2.2;
}
.flow-sub-txt {
	margin: 30px 0;
	font-size: var(--fs20);
	line-height: 2;
	text-align: right;
}
.flow-pdf {
	text-align: right;
}
.flow-pdf a {
	color: #1155CC;
	font-size: var(--fs24);
	text-decoration: underline;
}
@media (hover: hover){
	.flow-pdf a:hover {
		text-decoration: none;
	}
}
@media screen and (max-width: 767px){
	.flow > * + * {
		margin-top: 30px;
	}
	.flow__item {
		padding-top: 10px;
	}
	.flow-img {
		width: 90px;
	}
	.flow-box {
		width: 97%;
		min-height: 100px;
		padding: 25px 15px 25px 100px;
	}
	.flow-no {
		top: -15px;
		padding: 0 10px;
		font-size: var(--fs24);
	}
	.flow-txt {
		font-size: var(--fs13);
		line-height: 2;
	}
	.flow-sub-txt {
		margin: 20px 0;
		font-size: var(--fs10);
	}
	.flow-pdf a {
		font-size: var(--fs12);
		line-height: 2;
	}
}
/*----------------------
|- price-box
-----------------------*/
.price-box {
	margin-top: 70px;
}
.price-ttl {
	margin-bottom: 70px;
	font-size: var(--fs36);
	text-align: center;
}
.price-list {
	display: grid;
	grid-template-columns: 41% 59%;
	gap: 5px 0;
}
.price-list li {
	list-style: none;
}
.schedule {
	height: 100%;
	padding: 25px;
	display: grid;
	grid-template-columns: 47px 1fr 47px;
	align-items: center;
	gap: 0 5px;
}
.package01 .schedule {
	background: #8f7842;
}
.package02 .schedule {
	background: #8B8A8A;
}
.package03 .schedule {
	background: #221817;
}
.package04 .schedule {
	background: #EAEAE5;
}
.package05 .schedule {
	background: #CAA19D;
}
.schedule-txt {
	color: #fff;
	font-size: var(--fs22);
	font-weight: 500;
	text-align: center;
}
.package04 .schedule-txt {
	color: #000;
}
.price {
	height: 100%;
	padding: 25px 6%;
	background: #fff;
	display: grid;
	grid-template-columns: 1fr 340px;
	align-items: center;
	gap: 0 10px
}
.price-txt {
	padding-left: 15%;
	font-size: var(--fs28);
	font-weight: 700;
}
.application-btn__link {
	position: relative;
	width: 100%;
	padding: 11px 0 11px 17%;
	color: #fff;
	font-size: var(--fs22);
	font-weight: 500;
	letter-spacing: .1rem;
	text-indent: .1rem;
	background-image: linear-gradient(90deg, #006e3c, #00be64);
	border-radius: 50px;
	display: block;
	transition: .3s;
}
.application-btn__link::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 9%;
	transform: translateY(-50%);
	width: 26px;
	height: 19px;
	background: url(/assets/img/btn_arrow_white.svg) no-repeat;
	background-size: 100%;
	transition: .3s;
}
.price-btm-txt {
	margin-top: 40px;
	font-size: var(--fs20);
	font-weight: 400;
	text-align: right;
}
/* sold out */
.soldout .application-btn__link {
	min-height: 60px;
	padding: 0;
	text-align: center;
	background: #707070;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}
.soldout .application-btn__link::before {
	display: none;
}
/* en */
.en .application-btn__link {
	padding: 11px 0;
	font-size: var(--fs20);
	text-align: center;
}
@media (hover: hover){
	.application-btn__link:hover {
		opacity: .8;
	}
	.application-btn__link:hover::before {
		right: 7%;
	}
}
@media screen and (max-width: 1231px){
	.schedule {
		padding: 25px 10px;
		grid-template-columns: 40px 1fr 40px;
	}
	.schedule-txt {
		font-size: var(--fs18);
	}
	.price {
		grid-template-columns: 1fr 300px;
	}
	.price-txt {
		font-size: var(--fs24);
	}
	.application-btn__link {
		font-size: var(--fs18);
	}
	.en .application-btn__link {
		font-size: var(--fs16);
	}
}
@media screen and (max-width: 978px){
	.schedule {
		grid-template-columns: 37px 1fr 37px;
	}
	.schedule-txt {
		font-size: var(--fs14);
	}
	.price {
		padding: 20px 6%;
		grid-template-columns: 1fr 250px;
	}
	.price-txt {
		font-size: var(--fs18);
	}
	.application-btn__link {
		font-size: var(--fs16);
	}
	.application-btn__link::before {
		width: 20px;
		height: 15px;
	}
	.en .application-btn__link {
		font-size: var(--fs14);
	}
}
@media screen and (max-width: 831px){
	.price-list {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.schedule {
		padding: 25px;
		grid-template-columns: 47px 1fr 47px;
	}
	.schedule-txt {
		font-size: var(--fs22);
	}
	.price {
		padding: 30px 6%;
		grid-template-columns: 1fr 340px;
	}
	.price-txt {
		padding-left: 0;
		font-size: var(--fs28);
	}
	.application-btn__link {
		font-size: var(--fs22);
		font-weight: 500;
	}
	.application-btn__link::before {
		right: 9%;
		width: 26px;
		height: 19px;
	}
}
@media screen and (max-width: 767px){
	.price-box {
		margin-top: 40px;
	}
	.price-ttl {
		margin-bottom: 25px;
		font-size: var(--fs17);
	}
	.price-list__item {
		margin-top: 5px;
	}
	.schedule {
		padding: 11px 15px;
		grid-template-columns: 35px 1fr 35px;
	}
	.schedule-txt {
		font-size: var(--fs11);
	}
	.price {
		padding: 12px 15px 12px 25px;
		grid-template-columns: 1fr 170px;
	}
	.price-txt {
		font-size: var(--fs14);
	}
	.application-btn__link {
		padding: 7px 0 7px 14%;
		font-size: var(--fs11);
	}
	.application-btn__link::before {
		right: 9%;
		width: 13px;
		height: 10px;
	}
	.price-btm-txt {
		margin-top: 20px;
		font-size: var(--fs10);
	}
	/* sold out */
	.soldout .application-btn__link {
		min-height: 30px;
	}
	/* en */
	.en .price {
		grid-template-columns: 1fr 200px;
	}
	.en .application-btn__link {
		padding: 11px 0 11px 10%;
		font-size: var(--fs11);
		text-align: left;
	}
}
@media screen and (max-width: 421px){
	.price.none {
		grid-template-columns: 1fr 180px;
	}
}
@media screen and (max-width: 391px){
	.schedule {
		grid-template-columns: 30px 1fr 30px;
	}
	.schedule-txt {
		font-feature-settings: 'palt';
	}
	.price {
		padding: 12px 10px 12px 15px;
		grid-template-columns: 1fr 140px;
	}
	.application-btn__link {
		padding: 7px 0 7px 10%;
		font-size: var(--fs10);
	}
	.application-btn__link::before {
		width: 10px;
		height: 7px;
	}
	.none .application-btn__link {
		font-size: 9px;
	}
	/* en */
	.en .price {
		grid-template-columns: 1fr 155px;
	}
	.en .application-btn__link {
		padding: 7px 0 7px 10px;
		font-size: var(--fs10);
		text-align: left;
	}
	.en .application-btn__link::before {
		right: 5%;
	}
}
/*----------------------
|- section-btm
-----------------------*/
.section-btm {
	padding: 180px 0 160px;
	background: #ebebe4;
}
.section-btm-ttl {
	margin-bottom: 70px;
	font-size: var(--fs36);
	font-weight: 500;
	text-align: center;
}
.considerations-list {
	max-width: 1240px;
	margin: 0 auto 110px;
	padding: 0 20px;
}
.considerations-list__item {
	margin-left: 20px;
	font-size: var(--fs24);
	line-height: 2.2;
}
.considerations-list__item.caution {
	color: #d61f1f;
	font-weight: 500;
}
.considerations-list__item a {
	text-decoration: underline;
}
.considerations-list__item a:hover {
	text-decoration: none;
}
.link-list {
	width: 90%;
	max-width: 1500px;
	margin: 0 auto;
	padding: 40px 20px 25px;
	background: rgb(255,255,255,.5);
	border-radius: 15px;
	display: flex;
	justify-content: center;
	gap: 0 6%;
}
.link-list__item {
	position: relative;
	width: 30%;
	max-width: 175px;
	padding-bottom: 16px;
	list-style: none;
}
.link-list__item.current {
	pointer-events: none;
}
.link-list__item.current::before,
.link-list__item.active::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background: #ffc300;
	border-radius: 10px;
}
@media screen and (max-width: 767px){
	.section-btm {
		padding: 55px 0 60px;
	}
	.section-btm-ttl {
		margin-bottom: 25px;
		font-size: var(--fs17);
	}
	.considerations-list {
		width: 90%;
		margin: 0 auto 40px;
		padding: 0;
	}
	.considerations-list__item {
		margin-left: 20px;
		font-size: var(--fs13);
		line-height: 2;
	}
	.link-list {
		padding: 20px 10px 12px;
		border-radius: 8px;
		justify-content: space-around;
		gap: 0;
	}
	.link-list__item {
		width: 18%;
		padding-bottom: 8px;
	}
	.link-list__item.current::before,
	.link-list__item.active::before {
		height: 3px;
	}
}
/*----------------------
|- btm-area
-----------------------*/
.btm-area {
	padding: 120px 0;
}
.back-btn {
	width: 605px;
	margin: 0 auto 120px;
	border: 2px solid #002822;
	border-radius: 5px;
}
.back-btn a {
	position: relative;
	padding: 12px 0;
	color: #002822;
	font-size: var(--fs30);
	font-weight: 500;
	text-align: center;
	display: block;
	transition: .3s;
}
.back-btn a::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 8%;
	transform: translateY(-50%);
	width: 26px;
    height: 19px;
    background: url(/assets/img/btn_arrow_green.svg) no-repeat;
    background-size: 100%;
    transition: .3s;
}
.mail-magazine {
	padding: 0;
}
@media (hover: hover){
	.back-btn a:hover {
		opacity: .8;
	}
	.back-btn a:hover::before {
		left: 7%;
	}
}
@media screen and (max-width: 767px){
	.btm-area {
		padding: 60px 0;
	}
	.back-btn {
		width: 80%;
		max-width: 310px;
		margin: 0 auto 55px;
		border: 1px solid #002822;
		border-radius: 3px;
	}
	.back-btn a {
		padding: 17px 0;
		font-size: var(--fs17);
		font-weight: 400;
	}
	.back-btn a::before {
		width: 13px;
		height: 10px;
	}
}