
/*MV---------------------*/
#top_img img{
	text-align: center;
	width: 100%;
	display: block;
	margin: 0 auto;
}
#blk01{
	position: relative;
}
#blk01 p.text{
	margin:0;
	display: inline-block;
	font-size: 3.0rem;
	text-align: left;
	font-weight: bold;
	line-height: 1.4;
}
#blk01 .main_txt_03 span{
	display: inline;
	background-color: #010e7e;
	color: #fff;
	padding: 0.2rem 0.5rem;
	font-size: 1.4rem;
}
#blk01 p.text span.fm{
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
	font-size: 4.3rem;
	margin-bottom: 0.5rem;
}

@media (max-width: 736px) {
	#top_img p{
		width: 100%;
		margin: 0 auto;
	}
	#blk01 p.text{
		font-size: 1.5rem;
		
	}
	#blk01 p.text .main_txt_03 span{
		display: inline-block;
		font-size: 1.1rem;
		margin: 0.7rem 0 0.5rem;
	}
}


/*MV下---------------------*/
#main_txt{
	text-align: left;
	margin: 3rem auto 0;
	max-width: 1100px;
	color: #010e7e;
	padding: 0 20px;
}
#main_txt .main_txt_01 {
	font-size: 2.0rem;
	/*font-weight: bold;*/
	margin: 2rem 0;
	line-height: 1.5
}
#main_txt .main_txt_03 {
	font-size: 1.6rem;
}
#main_txt .main_txt_03 {
	font-size: 1.6rem;
	font-weight: normal;
	line-height: 1.2;
	margin-bottom: 0.5rem;
}
#main_txt dl {
	margin-top: 0.5rem;
}
.main_txt_fk {
    display: flex;
}

@media (min-width: 737px) {
	#main_txt dd,
	#main_txt dt {
		font-size: 1.4rem;
		display: inline-block;
	}
}

@media (max-width: 736px) {
	#main_txt{
		margin-top: 3rem;
		text-align: center;
	}
	#main_txt .text {
		text-align: center;
	}
	#main_txt .main_txt_01 {
		font-size: 1.3rem;
		line-height: 2.1rem;
		margin: 1rem 0;
		text-align: left;
	}
	#main_txt .main_txt_03 {
		font-size: 1.2rem;
		margin-top: 0.5rem;
		line-height: 1.5rem;
	}
	#blk01 p.text span.fm {
		font-size: 2.3rem;
	}
	#main_txt dl{
		text-align: left;
		margin-top: 2rem;
	}
	#main_txt dt{
		text-align: left;
		margin-top: 1rem;
	}
	#main_txt dd{
		font-size: 1.2rem;

	}
	#blk01 .main_txt_03 span {
		font-size: 1.2rem;
	}

}

/* DPボタン調整 */
.st2-api__list--link + .st2-api__list--link {
    position: relative;
    margin-top: 2rem;
    padding-top: 6rem;
    border-top: 1px dotted #d3d3d3;
}
    .st2-api__list--link {
        margin-bottom: 0;
        margin-top: 1rem;
}

.st2-api__list--link + .st2-api__list--link::before {
    content: "交通付きプランはこちらから";
    position: absolute;
    top: 1.4rem;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
	font-size: 1.3rem;
}

.st2-api__list--link + .st2-api__list--link::after {
    content: "出発地と宿泊地は次のページで選択してください";
    position: absolute;
    top: 3.5rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 1rem;
    white-space: nowrap;
}
@media (max-width: 736px) {
	.st2-api__list--link__holder {
		display: flex;
		flex-wrap: wrap;
		flex-direction: column;
	  }
	.st2-api__list--link + .st2-api__list--link::before {
        top: 2rem;
	    font-size: 1.2rem;
	  }
	.st2-api__list--link + .st2-api__list--link::after {
		top: 4rem;
	}
	.st2-api__list--link + .st2-api__list--link {
		border-top: none;
		margin-top: -2rem;
	  }
}
/* 金額表示 */
.st2-api__price__prefix span::after {
    content: "（宿泊商品の場合）";
    font-size: 1.2rem;
    color: #ab110a;
}
/* モーダル全体 */
.plan h5 {
    margin-bottom: 1.5rem;
}
.modal {
    display: none;
    position: fixed;
    z-index: 280;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
}

.plan .st2-btn-list[data-direction=horizontal] .st2-btn-list__holder .st2-btn-list__item {
    width: 48%;
    display: initial;
}
.plan .st2-btn .st2-icon-right-arrow, .st2-btn .st2-icon-newwin, .st2-btn .st2-icon-pdf {
    right: 2rem;
}

.plan .st2-btn-list[data-direction=horizontal] .st2-btn-list__holder:has(>:nth-child(2)) .st2-btn-list__item {
    width: 42%;
}
.st2-btn[data-color="11"] .st2-icon-right-arrow, .st2-btn[data-color="11"] .st2-icon-newwin, .st2-btn[data-color="11"] .st2-icon-pdf {
    fill: #221275;
}
.modal-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .7);
}
.st2-btn-list__item {
    display: block;
}
@media (max-width: 736px) {
		.plan .st2-btn-list[data-direction=horizontal] .st2-btn-list__holder:has(>:nth-child(2)) .st2-btn-list__item {
			width: 92%;
		}
		.plan .st2-btn-list,
	    .hightclass .st2-btn-list {
			width: 92%;
			margin: 0 auto;
		}
	.st2-api__price__prefix span::after {
			font-size: 1.1rem;
		}
}
/* モーダル本体 */
.modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 40px);
    max-width: 30%;
    max-height: 80vh;
    padding: 1rem 2rem 4rem;
    background: #fff;
    overflow-y: auto;
    box-sizing: border-box;
}

.indent_modal_area {
    margin-top: 1rem;
	padding-left: 6rem;
    font-size: 1.6rem;
}


/* 閉じるボタン */
.closebtnArea {
    text-align: right;
}
.closebtnArea a {
    color: #333;
    font-size: 3rem;
    line-height: 1;
}
@media (max-width: 736px) {
	.closebtnArea a {
		font-size: 2rem;
	}
	.modal-content {
		padding: 1.5rem 2rem 3rem;
	}	
}
/* タイトル */
.modal-content h4 {
    margin: 0 0 1rem;
    text-align: center;
    font-size: 2rem;
}
/* 注意書き */
.indent_modal .dp_title  { 
    font-size: 1.6rem;
}

.indent_modal {
    font-size: 1.2rem;
	text-align: center;
	padding-top: 1.5rem;
    margin-top: 1rem;
	border-top: 1px solid #d3d3d3;
}
/* ボタン一覧 */
.btn_area ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 12px;
}
.btn_area li a,
.acc_content a {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.st2-icon-right-arrow {
    width: 14px;
    height: 14px;
    fill: currentColor;
    flex-shrink: 0;
}
/* モーダル内ボタン */
.btn_area li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 20px;
    border-radius: 999px;
    text-decoration: none;
    color: #ffffff;
    background: #f4526a;
	max-width: 70%;
    margin: 0 auto;
}
.modal .dp_btn a {
    background: #f39800;
    border-color: #f39800;
    color: #fff;
}
.modal .dp_btn .st2-icon-right-arrow {
    fill: #fff;
}
@media (max-width: 736px) {
    .modal-content {
        max-width: 100%;
    }
	.modal-content h4 {
        font-size: 1.6rem;
    }
	.indent_modal .dp_title  {
	    font-size: 1.2rem;
    }
	.indent_modal {
    font-size: 1rem;
    }
	.btn_area li a {
    max-width: 100%;
    }
	.indent_modal_area {
		margin-top: 0.5rem;
		padding-top: 1rem;
		padding-left: 1rem;
		font-size: 1.2rem;
	}	
.btn_area ul {
    gap: 10px;
	}	
}

.yado_bk::before {
    background-color: #fffacb;
}
#yado .plan h3 {
    background-color: #010e7e;
}
/* ボタン色変更 */
.st2-btn[data-color="11"] .st2-btn__container {
    border: 2px solid #1c1178;
    background: #ffffff;
    color: #1c1178;
}
/* バナー */
#plan2-paragraph {
    margin-bottom: 0;
	color: #13107b;
}
.all_bk {
    top: -60px;
}
.natsuuri_bnr {
    margin: 5rem 0 2rem 0;
}
/* 追従 */
.fix.tabbottomArea a {
    width: 32%;
}

.st2-paragraph {
    margin-bottom: 0;
	color: #221275;
}



@media screen and (max-width: 736px) {
    .fix.tabbottomArea {
        width: 100%;
    }
	.fix.tabbottomArea ul li {
		width: 97%;
		padding: 0.5rem 0 0.5rem 0;
    }
	.fix.tabbottomArea a {
		width: 28%;
	}
	.st2-paragraph p {
		font-size: 1.2rem;
    }
	.natsuuri_bnr {
        margin: 2rem 0 2rem 0;
    }
	.natsuuri_bnr .st2-pic-block[data-align=center] {
        padding: 0 2.8205128205%;
		
    }
	.main_txt_fk {
        display: block;
    }
	.all_bk {
        top: -75px;
    }
}



