@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&display=swap');

/* CSS Document */

* {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
}
body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", YuGothic, "游ゴシック体", "Yu Gothic Medium", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
    font-weight: normal;
    font-size: 1.5rem;
    line-height: 1.8;
    color: #000;
    text-align: center;
}
#container {
    background: #fff;
    max-width: 1750px;
    margin: 0 auto;
}
.ro {
    transition: all 0.25s ease-out;
}
.ro:hover {
    transition: all 0.25s ease-out;
    opacity: .7;
    cursor: pointer;
}
.innerWrap {
    margin: 0 auto;
}
.pcCont {
    display: block;
}
img.pcCont{
	display: inline-block;
}
.spCont {
    display: none;
}

@media only screen and (max-width: 767px) {
    .pcCont,
	img.pcCont{
        display: none;
    }
    .spCont {
        display: block;
    }
	img.spCont{
		display: inline-block;
	}
}

.eg {
    font-family: 'Barlow Condensed', sans-serif;
}
#breadcrumbs {
    color:#333;
    text-align: left;
    margin: 0 auto;
    padding: 12px 0 12px 30px;
    font-size: 12px;
    background-color:#f2f2f2;
}
#breadcrumbs a{
    color:#4e4e4e;
    text-decoration: none;
}
#breadcrumbs ul{
    display: flex;
}
#breadcrumbs li{
    margin-right:15px;
}
#breadcrumbs li:not(:first-child):before {
    content: ">";
    margin-right: 8px;
}
@media screen and (max-width:767px) {
    #breadcrumbs {
        max-width:auto;
        margin: 0 auto;
        padding: 9px 15px;
 
        overflow-x: scroll;
        word-break: keep-all;
        white-space: nowrap;
         -webkit-overflow-scrolling: touch;
    }
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■header
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

header {
    display: flex;
    align-items: center;
    background-color: #cc0000;
    padding:0 30px;
    height:80px;
    position:relative;
}

header img {
    width: 103px;
    height: 23px;
}

header h1 {
    position:absolute;
    right:30px;
    width:calc(100% - 60px - 500px);
    font-size: 1.4rem;
    color: #fff;
    text-align:right;
}

header h2{
    margin: 0 40px 0 64px;
    padding: 0;
    color:#fff;
    font-size: 15px;
    font-weight: bold;
    display: flex;
    align-items: center;
}
header h2 big{
    font-size: 24px;
    margin-right: 24px;
}
header select {
    width: auto;
    height: 44px;
    appearance: none;
    padding-right: 20px;
    background: url(../../../wp-content/themes/jumbotours/assets/img/header_select_white.svg) no-repeat right 16px center #000;
    background-size: 10px 12px;
    color: #fff;
    border: 0;
    border-radius: 36px;
    box-sizing: border-box;
    padding: 0 36px 0 24px;
    margin: 0;
    box-shadow: none;
    font-size: 18px;
    font-weight: normal;
    outline: none;
}

@media screen and (max-width:767px) {
    header {
        padding: 0;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        background: #DBDBDB;
        height: auto;
    }
    header .logo {
        position: relative;
        right:auto;
        order: 2;
        width: 100%;
        height: 56px;
        margin: 0;
        padding: 0 0 0 16px;
        background: #BF0101;
        text-align: left;
        display: flex;
        align-items: center;
    }
    header img {
        width: 70px;
        height: auto;
    }
    header h1{
        font-size:1.3rem;
        width:auto;
        top:10px;
        right:16px;
		line-height: 1.5;
    }
    header h2 {
        order: 3;
        margin: 0;
        padding: 0 15px;
        font-size: 12px;
        font-weight: bold;
        display: flex;
        align-items: center;
        color:#333;
    }
    header h2 big{
        font-size: 17px;
        margin-right: 0;
    }
    header .departure {
        order: 4;
        flex: 1;
        margin: 0;
        padding: 8px 0;
        text-align: left;
        /*color:#333;*/
    }
    header select{
        width: auto;
        height: 38px;
        padding-right: 20px;
        /*background: url(../../../wp-content/themes/jumbotours/assets/img/header_select_black.svg) no-repeat right 16px center #fff;*/
		background-position: right 16px center;
        background-size: 10px 12px;
        /*color: #000;*/
        border: 0;
        padding: 0 36px 0 24px;
        margin: 0;
        box-shadow: 0;
        font-size: 16px;
        font-weight: bold;
    
    }
}


/*/////////////////////////////　フッター　////////////////////////////*/

footer {
    text-align: left;
    position: relative;
    /*padding: 100px 0 0 0;*/
}

footer ul {
    margin: 0 auto;
    padding: 0;
    font-size: 12px;
    line-height: 1.4;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    bottom: 11px;
    right: 40px;
}

footer li {
    margin: 0 0 0 24px;
    padding: 0;
}

footer .copyright {
    background: #ececec;
    padding: 24px 40px;
    text-align: left;
    margin: 0 auto;
    font-size: 1rem;
}

footer .copyright a {
    color: inherit !important;
    text-decoration: none;
}

footer div {
    color: #fff;
    background: #445289;
    padding: 40px calc(50% - 450px);
    padding: 40px -webkit-calc(50% - 450px);
    display: flex;
    flex-wrap: wrap;
}

footer dl {
    margin: 0 0 0px 0;
    padding: 0;
    display: flex;
    align-items: center;
    width: 100%;
}

footer dd {
    font-size: 13px;
    margin: 0 12px 0 0;
    padding: 0;
}

footer dt {
    margin: 0 16px 0 0;
    padding: 0;
    font-size: 15px;
    font-weight: bold;
}

footer dd a {
    color: #fff !important;
    font-size: 100%;
    vertical-align: baseline;
    text-decoration: none;
    margin: 0;
    padding: 0;
}

footer dd a:hover {
    text-decoration: underline;
}

@media only screen and (max-width: 767px) {
    footer {
        /*padding: 60px 0 0 0;*/
    }
    footer ul {
        text-align: center;
        display: block;
        position: static;
    }
    footer li {
        margin: 0;
        padding: 0 15px;
    }
    footer .copyright {
        padding: 15px 20px;
    }
    footer div {
        display: block;
        padding: 20px;
        margin-top: 20px;
		padding-bottom: 70px;
    }
    footer dl {
        margin: 0;
        flex-wrap: wrap;
    }
    footer dt {
        width: 100%;
        margin: 0 0 12px 0;
    }
}


/* ページトップ */
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 15px;
    z-index: 100;
}

#page-top a {
    background: #AB1436;
    text-decoration: none;
    color: #fff;
    width: 100px;
    padding: 30px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
}

#page-top a:hover {
    text-decoration: none;
    background: #333;
}
@media screen and (max-width: 767px) {
	#page-top{
		display: none !important;
	}
}
@media screen and (max-width: 560px) {
    #page-top {
        position: fixed;
        bottom: 20px;
        right: 10px;
        font-size: 13px;
    }
    #page-top a {
        background: #AB1436;
        text-decoration: none;
        color: #fff;
        width: 100px;
        padding: 20px 0;
        text-align: center;
        display: block;
        border-radius: 5px;
    }
    #page-top a:hover {
        text-decoration: none;
        background: #333;
    }
}



/*/////////////////////////////　2023年度メインコンテンツ　////////////////////////////*/
.ofi{
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}
img{
	image-rendering: -webkit-optimize-contrast;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_contents
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#main_contents{
	overflow: hidden;
	min-width: 1280px;
	font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", YuGothic, "游ゴシック体", "Yu Gothic Medium", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", Meiryo, sans-serif;
	font-weight: 700;
	color: #000;
	font-size: 1.6rem;
	line-height: 1.5;
}
#main_contents a{
	color: inherit;
	text-decoration: none;
}
@media screen and (max-width: 767px) {
	#main_contents{
		min-width: inherit;
	}
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■parts
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.hd01{
	text-align: center;
	line-height: 1.3;
	font-size: 2.6rem;
	margin-bottom: 20px;
}
.hd01 .in{
	display: inline-block;
	padding: 0 33px 0 40px;
	background: url(../img/ttl_bg_l.png) no-repeat left top 10px,url(../img/ttl_bg_r.png) no-repeat right top 10px;
	-webkit-background-size: 22px auto;
	background-size: 22px auto;
}
.hd01 .big{
	font-size: 140%;
}
.hd01 .middle{
	font-size: 120%;
}
.hd01 .small{
	font-size: 80%;
}
.hd01 strong{
	font-weight: 700;
}
@media screen and (max-width: 767px) {
	.hd01{
		font-size: 1.7rem;
		line-height: 1.2;
		margin-bottom: 13px;
	}
	.hd01 .in{
		padding: 0 32px 3px 32px;
		-webkit-background-size: 25px auto;
		background-size: 25px auto;
		background-position: left bottom,right bottom;
	}
	.hd01 br.spCont{
		display: inline-block;
	}
}
@media only screen and (max-width: 365px) {
	.hd01{
		font-size: 1.6rem;
	}
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■main_vs
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#main_vs{
	background: url(../img/main_bg.jpg) no-repeat center top;
	height: 830px;
	text-align: center;
	position: relative;
}
#main_vs h1{
	position: absolute;
	top: 48px;
	left: 50%;
	margin-left: -440px;
}
#main_vs .txt_area{
	color: #fff;
	top: 26px;
	position: absolute;
	width: 100%;
	top: 722px;
}
#main_vs .hd01{
	font-size: 2.4rem;
	margin-bottom: 5px;
}
#main_vs .hd01 .in{
	padding: 0 36px;
	background-position: left top 1px,right top 1px;
}
#main_vs .txt{
	font-size: 1.7rem;
	font-weight: 500;
}
@media only screen and (max-width: 767px) {
	#main_vs{
		height: auto;
		background: #d50011;
	}
	#main_vs img{
		width: 100%;
		height: auto;
	}
	#main_vs h1{
		position: static;
		margin: 0;
	}
	#main_vs .txt_area{
		position: static;
		padding: 13px 4px 12px;
	}
	#main_vs .hd01{
		font-size: 1.9rem;
		margin-bottom: 5px;
	}
	#main_vs .hd01 .in{
		padding: 0 17px 0 20px;
		-webkit-background-size: 15px auto;
		background-size: 15px auto;
		background-position: left top 1px,right top 1px;
	}
	#main_vs .txt{
		font-size: 1.5rem;
	}
}
@media only screen and (max-width: 365px) {
	#main_vs .hd01{
		font-size: 1.7rem;
	}
	#main_vs .txt{
		font-size: 1.4rem;
	}
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■intro_sec
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#intro_sec {
	background: #ba000f;
	padding: 40px 20px 42px;
	color: #fff;
	text-align: center;
	position: relative;
	z-index: 0;
}
#intro_sec:before,
#intro_sec:after{
	content: "";
	display: block;
	width: 273px;
	height: 273px;
	background: url(../img/main_bg.png) no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	z-index: -1;
	position: absolute;
	left: 50%;
}
#intro_sec:before{
	top: 110px;
	margin-left: -670px;
}
#intro_sec:after{
	top: 220px;
	margin-left: 420px;
}
#intro_sec .innerWrap{
	max-width: 1100px;
}
#intro_sec .ponit{
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	margin-bottom: 13px;
}
#intro_sec .ponit li:nth-of-type(1){
	padding-right: 7px;
}
#intro_sec .ponit li:nth-of-type(2){
	padding-left: 15px;
}

#intro_sec .txt{
	font-size: 2.4rem;
	font-feature-settings: "palt";
}
#intro_sec .txt .middle{
	font-size: 120%;
}
#intro_sec .txt .big{
	font-size: 140%;
}
#intro_sec .txt .line{
	background:linear-gradient(transparent 60%, #7f000a 60%);
}
#intro_sec .catch{
	padding-right: 20px;
}
#intro_sec .anchor{
	display: flex;
	justify-content: space-between;
	position: relative;
	top: -12px;
}
#intro_sec .anchor li a{
	display: block;
	position: relative;
}
@media only screen and (max-width: 767px) {
	#intro_sec {
		padding: 15px 0 0;
		overflow: hidden;
	}
	#intro_sec:before,
	#intro_sec:after{
		left: 50%;
	}
	#intro_sec:before{
		top: 110px;
		margin-left: -215px;
	}
	#intro_sec:after{
		width: 201px;
		height: 201px;
		top: auto;
		left: auto;
		bottom: -40px;
		right: -40px;
		margin-left: 0;
	}
	#intro_sec .ponit{
		display: block;
		padding: 0 7px 0 8px;
		text-align: center;
		margin-bottom: 10px;
	}
	#intro_sec .ponit li:nth-of-type(1){
		padding-right: 0;
		margin-bottom: 6px;
	}
	#intro_sec .ponit li:nth-of-type(2){
		padding-left: 0;
	}
	#intro_sec .ponit img{
		max-width: 100%;
		height: auto;
	}

	#intro_sec .txt{
		font-size: 1.7rem;
		line-height: 1.6;
		margin-bottom: 8px;
	}
	#intro_sec .txt .start{
		display: block;
		margin-bottom: -8px;
	}
	#intro_sec .catch{
		padding-right: 0;
	}
	#intro_sec .catch img{
		width: 100%;
		height: auto;
	}
	#intro_sec .anchor{
		flex-wrap: wrap;
		justify-content: space-between;
		top: -17px;
		padding: 0 10px;
	}
	#intro_sec .anchor li{
		width: calc(50% - 3px);
		margin-bottom: 7px;
	}
	#intro_sec .anchor li img{
		width: 100%;
		height: auto;
	}
}
@media only screen and (max-width: 365px) {
	#intro_sec .anchor{
		top: -10px;
	}
}
/*ツアーなし制御*/
#kan_from #intro_sec .anchor li:nth-child(4) a,
#tho_from #intro_sec .anchor li:nth-child(1) a,
#chu_from #intro_sec .anchor li:nth-child(1) a,
#shi_from #intro_sec .anchor li:nth-child(1) a{
	pointer-events: none;
}
#kan_from #intro_sec .anchor li:nth-child(4) a:after,
#tho_from #intro_sec .anchor li:nth-child(1) a:after,
#chu_from #intro_sec .anchor li:nth-child(1) a:after,
#shi_from #intro_sec .anchor li:nth-child(1) a:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.5;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
■plan_block
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.plan_block{
	background: #ffe8e8;
	padding: 50px 15px 40px;
}
.plan_block .innerWrap{
	max-width: 1150px;
}
.plan_block .ttl_area{
	margin-bottom: 30px;
}
.plan_block .ttl_area .hd01{
	color: #fb0014;
}
.plan_block .ttl_area .hd01 .in{
	background-image: url(../img/ttl_bg_75_l.png),url(../img/ttl_bg_75_r.png);
}
.plan_block .ttl_area .ttl{
	text-align: center;
}
.plan_block .ttl_area .ttl img{
	max-width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
	.plan_block{
		padding: 30px 10px 45px;
	}
	.plan_block .ttl_area{
		margin-bottom: 13px;
	}
	.plan_block .ttl_area .ttl{
		margin-left: -3px;
		margin-right: -3px;
	}
}

/* plan_listn */
.plan_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: -9px;
	margin-right: -9px;
}
.plan_list:after{
	content: "";
	display: block;
	width: 366px;
}
.plan_list > li{
	width: 366px;
	margin-bottom: 25px;
}
.plan_list li a{
	display: block;
	background: url(../img/box_bg.png) no-repeat right bottom #fff;
	-webkit-background-size: 220px auto;
	background-size: 220px auto;
	position: relative;
	height: 100%;
	border-radius: 0 0 4px 4px;
	border: 3px solid #fff;
	box-shadow: 7px 6px 0 rgba(0,0,0,0.2);
	z-index: 0;
}
.plan_list .area{
	line-height: 1;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
	z-index: 2;
}
.plan_list .area span{
	position: relative;
	display: inline-block;
	min-width: 100px;
	height: 27px;
	background: #000;
	padding: 6px;
}
.plan_list .area span::after{
	content: "";
	width: 14px;
	height: 27px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 27px 14px 0 0;
	border-color: #000 transparent transparent transparent;
	position: absolute;
	right: -14px;
	top: 0;
}

.plan_list .img{
	line-height: 1;
}
.plan_list .img img{
	width: 100%;
	height: auto;
}
.plan_list .ttl{
	font-size: 2rem;
	color: #fff;
	padding: 7px;
}
.plan_list .txt_area{
	padding: 14px 17px 15px;
}
.plan_list .point li{
	text-align: left;
	background: url(../img/ico_check.png) no-repeat left top;
	-webkit-background-size: 25px auto;
	background-size: 25px auto;
	padding-left: 29px;
	margin-bottom: 6px;
}
.plan_list .point li:last-of-type{
	margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
	.plan_list{
		display: block;
		margin-left: 0;
		margin-right: 0;
	}
	.plan_list:after{
		content: none;
	}
	.plan_list > li{
		width: 100%;
		margin-bottom: 20px;
	}
	.plan_list > li:last-of-type{
		margin-bottom: 0;
	}
	.plan_list li a{
		-webkit-background-size: 211px auto;
		background-size: 211px auto;
		border-radius: 0 0 2px 2px;
		border-width: 2px;
		box-shadow: 4px 3px 0 rgba(0,0,0,0.2);
	}
	
	.plan_list .ttl{
		font-size: 1.9rem;
	}
	.plan_list .txt_area{
		padding: 12px 14px 13px;
	}
}


/*割引色定義*/
#sakiwai60{
	background: #def0ff;
}
#sakiwai60 .ttl_area .hd01{
	color: #0058a2;
}
#sakiwai60 .ttl_area .hd01 .in{
	background-image: url(../img/ttl_bg_60_l.png),url(../img/ttl_bg_60_r.png);
}

#sakiwai45{
	background: #fff;
}
#sakiwai45 .ttl_area .hd01{
	color: #252525;
}
#sakiwai45 .ttl_area .hd01 .in{
	background-image: url(../img/ttl_bg_45_l.png),url(../img/ttl_bg_45_r.png);
}

#sakiwai30{
	background: #e7fff1;
}
#sakiwai30 .ttl_area .hd01{
	color: #006d32;
}
#sakiwai30 .ttl_area .hd01 .in{
	background-image: url(../img/ttl_bg_30_l.png),url(../img/ttl_bg_30_r.png);
}


/*エリア色定義*/
.plan_list .oki .ttl,
.plan_list .oki .area span{
	background: #c32525;
}
.plan_list .oki .area span::after{
	border-color: #c32525 transparent transparent transparent;
}
.plan_list .rit .ttl,
.plan_list .rit .area span{
	background: #359bd6;
}
.plan_list .rit .area span::after{
	border-color: #359bd6 transparent transparent transparent;
}
.plan_list .hok .ttl,
.plan_list .hok .area span{
	background: #408e36;
}
.plan_list .hok .area span::after{
	border-color: #408e36 transparent transparent transparent;
}
.plan_list .tou .ttl,
.plan_list .tou .area span{
	background: #0d4fad;
}
.plan_list .tou .area span::after{
	border-color: #0d4fad transparent transparent transparent;
}
.plan_list .tyo .ttl,
.plan_list .tyo .area span{
	background: #6142bb;
}
.plan_list .tyo .area span::after{
	border-color: #6142bb transparent transparent transparent;
}
.plan_list .kyu .ttl,
.plan_list .kyu .area span{
	background: #cb8d21;
}
.plan_list .kyu .area span::after{
	border-color: #cb8d21 transparent transparent transparent;
}
.plan_list .osa .ttl,
.plan_list .osa .area span{
	background: #c2094f;
}
.plan_list .osa .area span::after{
	border-color: #c2094f transparent transparent transparent;
}
.plan_list .chu .ttl,
.plan_list .chu .area span{
	background: #d1337b;
}
.plan_list .chu .area span::after{
	border-color: #d1337b transparent transparent transparent;
}
