/*PCSP共通設定*/
html {scroll-behavior: smooth;}/*smooth scroll*/
main img {
	width: 100%;
	height: auto;
}
.disnone{display:none;}

/*終了*/
#all_timesale > .inner,
#Recommended-hotels > .inner,
#Recommended-jr > .inner,
#Recommended-air > .inner {position: relative;}
.end_timesale_txt{
    opacity:1;
    transition-duration: 500ms;
    width: 100%;
    height: 100%;
    position: absolute;
    color: #FFF;
    top: 0;
    left: 0;
    display: grid;
    align-items: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.6);
    z-index: 2;
    font-size: 24px;
    border-radius: 5px;
    font-weight: bold;
    transition-duration: 500ms;
}
.disnone.disnone.end_timesale_txt{
    display: none;
    opacity:0
}

/*スクロールなし*/
.scrollbox_wraper.no_slider {
	margin-bottom: 15px;
	position: relative;
}
.scrollbox_wraper.no_slider .scroll_left_btn,
.scrollbox_wraper.no_slider .scroll_right_btn,
.scrollbox_wraper.no_slider .scrollbox::-webkit-scrollbar,
.scrollbox_wraper.no_slider .scrollbox::-webkit-scrollbar-track,
.scrollbox_wraper.no_slider .scrollbox::-webkit-scrollbar-thumb {display:none!important;}
.scrollbox_wraper.no_slider .scrollbox > ul{flex-wrap: wrap;}
.scrollbox_wraper.no_slider .scrollbox > ul li{margin-bottom: 10px !important;}

/*759px以下*/
@media screen and (max-width: 759.9px) {
#wrapper {line-height: 1.4;}
.spnone{display:none;}

/* CSS */
#dirPathBlock,
#anchorLinkBlock {margin: 1% 1% 0 1%;}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
	font-size: 12px;
	margin: 0 1% 1%;
}
h2 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 5%;
    padding: 10px 0;
    border-bottom: 2px dotted #000;
    border-top: 2px solid #000
}
h3 {
	font-size: 16px;
	font-weight: bold;
    text-align: center;
    margin-bottom: 3%
}
.inner{
    width: 96%;
    margin: 5% 2%;
    padding: 24px 5px;
    box-sizing: border-box;
    background: #FFF;
    box-shadow: 2px 2px 5px #555;
    border-radius: 10px;
}

/*title*/
.mv {
    background: #ffe71b;
    padding-bottom: 10px;
}
.mv > p:first-child {
    text-align: center;
    color: #FFF;
    font-size: 14px;
    padding: 3px 0 5px;
    background: #db2424
}
.mv,
figure#mainphoto img{width: 100%}
figure#mainphoto {
	margin: 0 0 5px;
	padding: 0
}
.notice {
    color: #db2424;
    margin: 0 auto 5px;
    font-size: 1.2em;
    font-weight: bold;
    text-align: center
}
#countdown {
    width: 90%;
    margin: 0 auto;
    padding: 5px 0;
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
    border-radius: 10px;
    line-height: 1.5;
    box-sizing: border-box;
    background: #FFF
}
#countdown > p {font-size: 0.75em}
#days,
#hours,
#minutes,
#seconds {color: #db2424}

/*エリア選択*/
.select_wrap {
    display: flex;
    border-bottom: 2px solid #db2424;
    margin-bottom: 3%
}
.select_wrap li {
    width: fit-content;
    margin: 0 1px;
    padding: 5px 8px;
    background: #eee;
    border-radius: 5px 5px 0 0;
    cursor: pointer;
}
.select_wrap li.select {
    background: #db2424;
    font-weight: bold;
    color: #FFF
}

/*HOTEL*/
.area_Recommendedhotels > li {
    width: 260px;
    margin: 5px;
    padding: 15px;
    box-shadow: 1px 1px 5px #999;
    box-sizing: border-box;
    position: relative
}
.area_Recommendedhotels > li img {margin-bottom: 5%;}
.area_Recommendedhotels > li dt hgroup p {
    text-align: right;
    margin-bottom: 5%
}
.area_Recommendedhotels > li dt hgroup h3 {
	font-weight: bold;
	font-size: 16px;
    text-align: left;
    align-content: center;
	margin-bottom: 2%
}
.area_Recommendedhotels > li .hotel_plan {font-size: 16px;}
.area_Recommendedhotels > li .hotel_plan li {
	margin-bottom: 3%;
	box-shadow: -2px -2px 4px #eee, 2px 2px 4px #bbb;
	border-radius: 8px;
	padding: 5px;
}
.area_Recommendedhotels > li .hotel_plan li a {
	color: #000;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.area_Recommendedhotels > li .hotel_plan li a:hover {color: #fa6464;}
.area_Recommendedhotels > li dd.price {
    margin-bottom: 5%;
    text-align: center
}
.area_Recommendedhotels > li dd.price b {
    color: #db2424;
    font-size: 1.75em;
    padding: 2% 5% 1%;
    display: inline-block;
    margin-bottom: 5%;
    background: #ffe71b
}
.area_Recommendedhotels > li dd.price small {
    width: 100%;
    display: inline-block;
}
.area_hotel_wrap li.no_plan {
    width: 100%;
    font-size: 16px;
    box-shadow: none
}

/*btn*/
.btn {margin-bottom: 10px}
.btn a {
    width: 98%;
    display: block;
    color: #FFF;
    background: #db2424;
    font-size: 1.4em;
    text-align: center;
    margin: 0 auto 5%;
    padding: 12px 0;
    box-shadow: 2px 2px 0px #FFF, 4px 4px 0px #db2424;
    border-radius: 3px;
    position: relative
}
.btn a.jrbtn {font-size: 1.2em;}
.btn a:before {
    content: "";
    width: 44px;
    height: 44px;
    position: absolute;
    top: 15%;
    left: 2%;
}
.btn a.yado:nth-of-type(1):before {
    background: url(../images/back01.png) no-repeat;
    background-size: contain;
}
.btn a.jr:nth-of-type(2):before {
    background: url(../images/back02.png) no-repeat;
    background-size: contain;
}
.btn a.air:nth-of-type(3):before {
    background: url(../images/back03.png) no-repeat;
    background-size: contain;
}
.btn a::after {
    content: "";
    position: absolute;
    top: 40%;
    right: 5%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #FFF;
}

/*------------------------------
scroll item
------------------------------*/
.scrollbox_wraper {
	margin-bottom: 15px;
	position: relative;
}
.scrollbox_wraper .scroll_left_btn,
.scrollbox_wraper .scroll_right_btn {
    width: 32px;
    height: 32px;
    position: absolute;
    top: calc(50% - 32px);
    display: block;
    z-index: 1;
    background: #FFF;
    border-radius: 50%;
    box-shadow: 0px 0px 6px #888;
}
.scrollbox_wraper .scroll_left_btn {left: 0;}
.scrollbox_wraper .scroll_right_btn {right: 0;}
.scrollbox_wraper .scroll_left_btn:after,
.scrollbox_wraper .scroll_right_btn:after,
.scrollbox_wraper .scroll_left_btn:before,
.scrollbox_wraper .scroll_right_btn:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
}
.scrollbox_wraper .scroll_left_btn:after {
	position: absolute;
	top: 16px;
	left: 11px;
    border-left: 2px solid;
    border-top: 10px solid;
	transform: rotate(-45deg);
	-webkit-transform-origin-y: top;
	transform-origin: top;
}
.scrollbox_wraper .scroll_right_btn:after {
	position: absolute;
	top: 16px;
	right: 11px;
	border-left: 2px solid;
	border-top: 10px solid;
	transform: rotate(45deg);
	-webkit-transform-origin-y: top;
	transform-origin: top;
}
.scrollbox_wraper .scroll_left_btn:before {
	position: absolute;
	top: 7px;
	left: 11px;
    border-left: 2px solid;
    border-top: 10px solid;
	transform: rotate(45deg);
	-webkit-transform-origin-y: bottom;
	transform-origin: bottom;
}
.scrollbox_wraper .scroll_right_btn:before {
	position: absolute;
	top: 7px;
	right: 11px;
	border-left: 2px solid;
	border-top: 10px solid;
	transform: rotate(-45deg);
	-webkit-transform-origin-y: bottom;
	transform-origin: bottom;
}
.scrollbox_wraper .scroll_left_btn.non_scloll,
.scrollbox_wraper .scroll_right_btn.non_scloll {
	transition: 0.1s;
	display:none!important;
}
.scrollbox_wraper .scrollbox {overflow-x: scroll!important;}
.scrollbox_wraper .scrollbox > ul {
    width: fit-content !important;
    display: flex !important;
    margin: 0 auto 15px !important;
	padding: 0 calc(calc(100% - calc(1040px / 4)) / 2);
}
.scrollbox_wraper .scrollbox::-webkit-scrollbar {height: 8px!important;}
.scrollbox_wraper .scrollbox::-webkit-scrollbar-track {
	margin: 0 5px !important;
	background: #eee !important;
	border-radius: 5px !important;
}
.scrollbox_wraper .scrollbox::-webkit-scrollbar-thumb {
	border-radius: 5px !important;
	background: #888 !important;
}

/*PR640*/
.pr_banner {
	width: 100%;
	margin: 25px auto;
}
.pr_banner a {
	width: 96%;
	display: block;
	margin: 0 auto 15px;
}

}

/*760px以上*/
@media screen and (min-width: 760px),print {
#wrapper {line-height: 1.231;}
.pcnone{display:none;}

/* CSS */
#dirPathBlock,
#anchorLinkBlock{
	width: 100%;
	max-width:1080px;
	min-width:760px;
	margin: auto;
}

/*panlist&back*/
#dirPathBlock,
#anchorLinkBlock {
	width: 100%;
	margin: 0 auto;
	display: block;
	font-size: 12px;
}
#dirPathBlock p,
#anchorLinkBlock a{font-size: 12px;}
h1 {
	font-size: 12px;
    width: 100%;
	max-width:1080px;
	min-width:760px;
    margin: 0 auto 5px;
}
h2 {
	font-size: 28px;
	font-weight: bold;
    text-align: center;
    margin-bottom: 3%;
    padding: 15px 0;
    border-bottom: 2px dotted #000;
    border-top: 3px solid #000
}
h3 {
	font-size: 24px;
	font-weight: bold;
    text-align: center;
    margin-bottom: 3%
}
.inner{
    width: 98%;
    max-width: 1080px;
    min-width: 760px;
    margin: 5% auto;
    padding: 50px 25px;
    display: block;
    background: #FFF;
    box-shadow: 2px 2px 5px #555;
    border-radius: 10px;
    box-sizing: border-box
}

/*title*/
.mv {
    background: #ffe71b;
    padding-bottom: 10px
}
.mv > p:first-child {
    text-align: center;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.7;
    background: #db2424
}
.mv,
figure#mainphoto img{width: 100%}
figure#mainphoto {
	margin: 0 0 12px;
	padding: 0
}
.notice {
    color: #db2424;
    width: 100%;
    max-width: 740px;
    margin: 0 auto 10px;
    font-size: 1.8em;
    font-weight: bold;
    text-align: center;
    border-radius: 10px;
    box-sizing: border-box;
}
#countdown {
    width: 100%;
    max-width: 500px; 
    margin: 0 auto;
    padding: 10px 0;
    font-size: 2em;
    font-weight: bold;
    text-align: center;
    border-radius: 10px;
    line-height: 1.5;
    box-sizing: border-box;
    background: #FFF
}
#countdown > p {font-size: 0.75em}
#days,
#hours,
#minutes,
#seconds {color: #db2424}

/*エリア選択*/
.select_wrap {
    display: flex;
    border-bottom: 3px solid #db2424;
    margin-bottom: 3%
}
.select_wrap li {
    width: fit-content;
    font-size: 1.8em;
    margin: 0 1px;
    padding: 12px 25px;
    background: #eee;
    border-radius: 10px 10px 0 0;
    cursor: pointer;
}
.select_wrap li:hover {opacity:0.8}
.select_wrap li.select {
    background: #db2424;
    font-weight: bold;
    color: #FFF
}

/*HOTEL*/
.area_Recommendedhotels > li {
    width: 260px;
    margin: 5px;
    padding: 15px;
    box-shadow: 1px 1px 5px #999;
    box-sizing: border-box;
    position: relative
}
.area_Recommendedhotels > li img {margin-bottom: 5%;}
.area_Recommendedhotels > li dt hgroup p {
    text-align: right;
    margin-bottom: 5%
}
.area_Recommendedhotels > li dt hgroup h3 {
	font-weight: bold;
	font-size: 16px;
    text-align: left;
    align-content: center;
	margin-bottom: 2%
}
.area_Recommendedhotels > li .hotel_plan {font-size: 16px;}
.area_Recommendedhotels > li .hotel_plan li {
	margin-bottom: 3%;
	box-shadow: -2px -2px 4px #eee, 2px 2px 4px #bbb;
	border-radius: 8px;
	padding: 5px;
}
.area_Recommendedhotels > li .hotel_plan li a {
	color: #000;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.area_Recommendedhotels > li .hotel_plan li a:hover {color: #fa6464;}
.area_Recommendedhotels > li dd.price {
    margin-bottom: 5%;
    text-align: center
}
.area_Recommendedhotels > li dd.price b {
    color: #db2424;
    font-size: 1.7em;
    padding: 2% 5% 1%;
    display: inline-block;
    margin-bottom: 5%;
    background: #ffe71b
}
.area_Recommendedhotels > li dd.price small {
    width: 100%;
    display: inline-block;
}
.area_hotel_wrap li.no_plan {
    width: 100%;
    font-size: 20px;
    box-shadow: none
}

/*btn*/
.btn {
    display: flex;
    gap: 2%;
    margin-bottom: 10px
}
#all_timesale .btn {/*width: 50%*/width: 65%;margin: auto;}/*調整*/	
.btn a {
    width: 100%;
    display: block;
    color: #FFF;
    background: #db2424;
    font-size: 1.5em;
    text-align: center;
    padding: 15px 0;
    box-shadow: 2px 2px 0px #FFF, 4px 4px 0px #db2424;
    border-radius: 3px;
    position: relative
}
#all_timesale .btn a{
    padding: 15px 50px;
	}	
.btn a.jrbtn {font-size: 1.2em;}
.btn a:before {
    content: "";
    width: 44px;
    height: 44px;
    position: absolute;
    top: 15%;
    left: 2%;
}
.btn a.yado:nth-of-type(1):before {
    background: url(../images/back01.png) no-repeat;
    background-size: contain;
}
.btn a.jr:nth-of-type(2):before {
    background: url(../images/back02.png) no-repeat;
    background-size: contain;
}
.btn a.air:nth-of-type(3):before {
    background: url(../images/back03.png) no-repeat;
    background-size: contain;
}
.btn a::after {
    content: "";
    position: absolute;
    top: 40%;
    right: 5%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    border-color: transparent transparent transparent #FFF;
}

/*------------------------------
scroll item
------------------------------*/
.scrollbox_wraper {
	margin-bottom: 25px;
	position: relative;
}
.scrollbox_wraper .scroll_left_btn,
.scrollbox_wraper .scroll_right_btn {
    width: 32px;
    height: 32px;
    position: absolute;
    top: calc(50% - 32px);
    display: block;
    z-index: 1;
    background: #FFF;
    border-radius: 50%;
    box-shadow: 0px 0px 6px #888;
}
.scrollbox_wraper .scroll_left_btn {left: -20px;}
.scrollbox_wraper .scroll_right_btn {right: -20px;}
@media (min-width: 760px) and (max-width: 1170px){
    .scrollbox_wraper .scroll_left_btn {left: 0;}
    .scrollbox_wraper .scroll_right_btn {right: 0;}
}
.scrollbox_wraper .scroll_left_btn:after,
.scrollbox_wraper .scroll_right_btn:after,
.scrollbox_wraper .scroll_left_btn:before,
.scrollbox_wraper .scroll_right_btn:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
}
.scrollbox_wraper .scroll_left_btn:after {
	position: absolute;
	top: 16px;
	left: 11px;
    border-left: 2px solid;
    border-top: 10px solid;
	transform: rotate(-45deg);
	-webkit-transform-origin-y: top;
	transform-origin: top;
}
.scrollbox_wraper .scroll_right_btn:after {
	position: absolute;
	top: 16px;
	right: 11px;
	border-left: 2px solid;
	border-top: 10px solid;
	transform: rotate(45deg);
	-webkit-transform-origin-y: top;
	transform-origin: top;
}
.scrollbox_wraper .scroll_left_btn:before {
	position: absolute;
	top: 7px;
	left: 11px;
    border-left: 2px solid;
    border-top: 10px solid;
	transform: rotate(45deg);
	-webkit-transform-origin-y: bottom;
	transform-origin: bottom;
}
.scrollbox_wraper .scroll_right_btn:before {
	position: absolute;
	top: 7px;
	right: 11px;
	border-left: 2px solid;
	border-top: 10px solid;
	transform: rotate(-45deg);
	-webkit-transform-origin-y: bottom;
	transform-origin: bottom;
}
.scrollbox_wraper .scroll_left_btn.non_scloll,
.scrollbox_wraper .scroll_right_btn.non_scloll {
	transition: 0.1s;
	display:none!important;
}
.scrollbox_wraper .scrollbox {overflow-x: scroll!important;}
.scrollbox_wraper .scrollbox > ul {
    width: fit-content !important;
    display: flex !important;
    margin: 0 auto 15px !important;
}
.scrollbox_wraper .scrollbox::-webkit-scrollbar {height: 10px!important;}
.scrollbox_wraper .scrollbox::-webkit-scrollbar-track {
	margin: 0 5px !important;
	background: #eee !important;
	border-radius: 5px !important;
}
.scrollbox_wraper .scrollbox::-webkit-scrollbar-thumb {
	border-radius: 5px !important;
	background: #888 !important;
}
@media (min-width: 760px) and (max-width: 900px){
	/*------------------------------
	for Tablet
	------------------------------*/
	.scrollbox_wraper .scrollbox {
		overflow-x: scroll!important;
		padding: 0;
	}
	.scrollbox_wraper .scrollbox::-webkit-scrollbar {height: 5px!important;}
	.scrollbox_wraper .scrollbox::-webkit-scrollbar-track {
		margin: 0 5px!important;
		background: #eee!important;
		border-radius: 5px!important;
	}
	.scrollbox_wraper .scrollbox::-webkit-scrollbar-thumb {
		border-radius: 5px!important;
		background: #888!important;
	}
}

/*PR640*/
.pr_banner {
	width: 100%;
	margin: 50px auto;
	display: flex;
	gap: 20px;
}
.pr_banner a {
	width: 50%;
	max-width: 640px;
	margin: auto;
}

}