@charset "UTF-8";

@font-face {
	font-family: UtsukushiMincho;
	src: url("../font/02UtsukushiMincho.ttf") format("truetype");
}

.utsukushi {
	font-family: UtsukushiMincho;
}

body {
	font-family: Hiragino;
	padding-top: 40px;
	padding-bottom: 80px;
}

.background_oedo {
	background-image: url(../images/common/background2.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

img {
	max-width: 100%;
}


video {
	max-width: 100%;
}

.loading_back {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	display: none;
	z-index: 900;
}


/*ヘッドメニュー*/
.head_menu {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 40px;
}

.head_menu div {
	height: inherit;
}

.head_menu div a {
	display: block;
	height: inherit;
	width: 100%;
	text-align: center;
	vertical-align: middle;
}

.head_menu div a img {
	display: block;
	height: 24px;
	margin: 10px auto;
	width: 120px;
}




/*フットメニュー*/
.foot_menu {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 50px;
	display: flex;
	flex-wrap: wrap;
	z-index: 999;
}

.foot_menu div {
	height: inherit;
	/* background-image:url(../images/common/footer_back@2x.png); */
	background-color: #fff;
	background-size: auto 100%;
	background-position: center;
	background-repeat: no-repeat;
	border-right: 2px solid #d5e8e7;
}

.foot_menu div:first-child {
	/* background-image:url(../images/common/footer_back@2x.png); */
	background-color: #fff;
	background-size: auto 100%;
	background-position: left;
	background-repeat: no-repeat;
}

.foot_menu div:last-child {
	/* background-image:url(../images/common/footer_back@2x.png); */
	background-color: #fff;
	background-size: auto 100%;
	background-position: right;
	background-repeat: no-repeat;
}

.foot_menu div a {
	display: block;
	height: inherit;
	width: 100%;
	text-align: center;
	vertical-align: middle;
}

.foot_menu div a img {
	display: block;
	height: 25px;
	margin: 15px auto;
}



/*article*/
article {
	position: relative;
	border-radius: 10px;
	background-color: #FFFFFF;
	margin: 15px 5%;
	padding: 15px 15px;
}

article .inner {
	border-radius: 10px;
	margin: 5% 5% 10%;
	padding: 15px;
}

article .inner .img_area img {
	width: 100%;
	height: auto;
}

article .inner .img_area video {
	width: 100%;
	height: auto;
}

article .inner01 {
	background-color: #FFDDD9;
	color: #222222;
}

article .inner02 {
	background-color: #DC6136;
	color: #ffffff;
}

article .inner03 {
	background-color: #6592C6;
	color: #ffffff;
}

article .inner04 {
	background-color: #E0E7AA;
	color: #ffffff;
}

article .inner04 a {
	color: #000000;
	text-decoration: none;
	background-color: transparent;
	font-size: 14px;
}

article .inner .maru {
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	line-height: 1.4em;
	margin: 0;
	padding: 0 0 0.5em;
	;
}

article .inner .maru img,
article .inner .batu img {
	width: 35px;
	margin-bottom: 5px;
}

article .inner .batu {
	font-size: 22px;
	text-align: center;
	font-weight: bold;
	line-height: 1.4em;
	margin: 0;
	padding: 0 0 0.5em;
	;
}

article .img_area img {
	width: 100%;
	height: min-intrinsic;
	margin: 10px 0;
}

article .video_area video {
	width: 100%;
	height: min-intrinsic;
	margin: 10px 0;

}

article h2 {
	font-size: 15px;
	font-family: UtsukushiMincho;
	text-align: center;
	margin: 0;
	padding: 1em 0;
}

article h3 {
	font-size: 14px;
	font-family: UtsukushiMincho;
	text-align: center;
	margin: 0;
	padding: 1em 0;
}

article h4 {
	font-size: 14px;
	font-family: UtsukushiMincho;
	text-align: center;
	margin: 0;
	padding: 1em 0;
}

article p {
	font-size: 14px;
	text-align: justify;
	margin: 0;
	padding: 0;
}

article p span {
	font-size: 14px;
	color: #6c6c6c;
}

article hr {
	width: 50%;
}

article .ancer {
	font-size: 15px;
	text-align: center;
	margin: 1em 0 0;
	padding: 0;
}

article .toi {
	display: block;
	font-size: 15px;
	font-family: UtsukushiMincho;
	width: 70px;
	text-align: center;
	margin: 0 auto;
}

article .toi:before {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-image: url(../images/common/background.png);
	background-size: cover;
	vertical-align: middle;
	margin-bottom: 10px;
}

article .toi:after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-image: url(../images/common/background.png);
	background-size: cover;
	vertical-align: middle;
	margin-top: 10px;
}



/*start_btn*/
.start_btn {
	display: block;
	background-size: cover;
	width: 115px;
	height: 30px;
	margin: 20px auto;
	color: #222222;
	font-family: UtsukushiMincho;
	line-height: 26px;
	font-size: 14px;
	background-image: url(../images/common/btn_back_start@2x.png);
	text-align: center;
}

/*wamoji_btn*/
.wamoji_btn {
	content: " ";
	display: block;
	background-size: cover;
	width: 150px;
	height: 35px;
	margin: 40px auto;
	color: #222222;
	font-family: UtsukushiMincho;
	line-height: 26px;
	font-size: 14px;
	background-image: url(../images/common/wamoji_btn.png);
	text-align: center;
}

/*back_btn*/
.back_btn {
	display: block;
	background-size: cover;
	width: 205px;
	height: 40px;
	margin: 8px auto;
	color: #222222;
	text-align: center;
	font-family: UtsukushiMincho;
	line-height: 36px;
	font-size: 14px;
}

.back_btn_01 {
	background-image: url(../images/common/back_btn_01@2x.png);
}

.back_btn_02 {
	background-image: url(../images/common/back_btn_02@2x.png);
}


/*next_btn*/
.next_btn {
	display: block;
	background-size: cover;
	width: 205px;
	height: 40px;
	margin: 8px auto;
	color: #222222;
	/* text-align: center; */
	font-family: UtsukushiMincho;
	line-height: 36px;
	font-size: 14px;
}

.next_btn_01 {
	background-image: url(../images/common/next_btn_01@2x.png);
	text-align: center;
}

.next_btn_02 {
	background-image: url(../images/common/next_btn_02@2x.png);
	text-align: center;
}

.next_btn_03 {
	background-image: url(../images/common/next_btn_03@2x.png);
}

/*見どころポイントボタン*/

.next_btn_04 {
	background-image: url(../images/common/next_btn_04@2x.png);
	width: 280px;
}


.btn-disabled {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}



/*tuduki_btn*/
.tuduki_btn {
	display: inline-block;
	background-color: #ffffff;
	color: #222222;
	border-radius: 50px;
	border: 1px solid #222222;
	margin: 8px 0;
	padding: 0.5em 1.5em;
	font-size: 12px;
	text-align: center;
}

.tuduki_btn img {
	display: inline-block;
	height: 11px;
	vertical-align: middle;
}

.tuduki_summary {
	display: inline;
}

.tuduki_details {
	display: none;
}

/*saisei_btn*/
.saisei_btn {
	display: inline-block;
	background-color: #ffffff;
	color: #222222;
	border-radius: 50px;
	border: 1px solid #222222;
	margin: 8px 0;
	padding: 0.5em 1.5em;
	font-size: 12px;
	text-align: center;
}

.saisei_btn img {
	display: inline-block;
	height: 11px;
	vertical-align: middle;
}



/*kirikae_ima_mukashi*/
.kirikae_ima_mukashi {
	text-align: center;
	margin-bottom: 1em;
}

.kirikae_ima_mukashi img {
	height: 25px;
}

.kirikae_ima_mukashi .ima,
.kirikae_ima_mukashi .mukashi {
	display: inline-block;
}

.kirikae_ima_mukashi .mukashi {
	display: none;
}




/*見出しの吹き出し*/
.balloon1 {
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -70px;
	display: block;
	padding: 4px 10px 2px;
	width: 140px;
	color: #222222;
	font-size: 12px;
	font-family: UtsukushiMincho;
	font-weight: bold;
	background: #ffffff;
	border-radius: 5px;
	text-align: center;
}

.balloon1:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -4px;
	border: 4px solid transparent;
	border-top: 8px solid #ffffff;
}

.balloon1 span {
	display: inline-block;
	width: 14px;
	height: 16px;
	background-image: url(../images/common/no_back_none@2x.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 7px;
}

.balloon1 p {
	margin: 0;
	padding: 0;
}

/*見出しの吹き出し*/
.balloon2 {
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: 80px;
	display: block;
	padding: 4px 10px 2px;
	min-width: 40px;
	max-width: 200px;
	color: #222222;
	font-size: 12px;
	font-family: UtsukushiMincho;
	font-weight: bold;
	background: #ffffff;
	border-radius: 5px;
	text-align: center;
}

.balloon2:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -4px;
	border: 4px solid transparent;
	border-top: 8px solid #ffffff;
}

.balloon2 span {
	display: inline-block;
	width: 14px;
	height: 16px;
	background-image: url(../images/common/no_back_none@2x.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 7px;
}

.balloon2 p {
	margin: 0;
	padding: 0;
}


.balloon1-right {
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -70px;
	display: block;
	padding: 4px 10px 2px;
	width: 140px;
	color: #222222;
	font-size: 12px;
	font-family: UtsukushiMincho;
	font-weight: bold;
	background: #ffffff;
	border-radius: 5px;
	text-align: center;
}

.balloon1-right:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -4px;
	border: 4px solid transparent;
	border-left: 8px solid #FFFFFF;
}

.balloon1-right p {
	margin: 0;
	padding: 0;
}








/*旗　白*/
.icon_hata_siro {
	display: inline-block;
	width: 14px;
	height: 16px;
	background-image: url(../images/common/no_back_none@2x.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 7px;
}

/*旗　色付き*/
.icon_hata_iro {
	display: inline-block;
	width: 21px;
	height: 20px;
	background-image: url(../images/common/icon_hata_iro@2x.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 7px;
	line-height: 18px;
	text-align: center;
}

/*ポイント　色なし*/
.icon_point_iro1 {
	display: inline-block;
	width: 14px;
	height: 16px;
	background-image: url(../images/common/select_no_back1@2x.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 7px;
	line-height: 14px;
}

/*ポイント　色付き*/
.icon_point_iro2 {
	display: inline-block;
	width: 30px;
	height: 27px;
	background-image: url(../images/common/select_no_back@2x.png);
	background-size: 21px 27px;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	font-size: 12px;
	line-height: 22px;
	text-align: center;
}

.icon_point_iro3 {
	display: inline-block;
	width: 14px;
	height: 16px;
	background-image: url(../images/common/select_no_back2@2x.png);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 5px;
	margin-right: 7px;
	font-size: 7px;
}

.icon_q {
	display: inline-block;
	width: 21px;
	height: 21px;
	background-image: url(../images/common/q@2x.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	vertical-align: middle;
}

.icon_top_center {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin-top: -10px;
	text-align: center;
}



/*表示タイトル*/
.h1_title {
	display: block;
	text-align: center;
}

.h1_title .icon {
	display: inline-block;
	width: 47px;
	vertical-align: bottom;
}

.h1_title .text {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
}

.h1_title .s1 {
	font-size: 19px;
	display: block;
	text-align: center;
	color: #13523C;
}

.h1_title .s2 {
	font-size: 33px;
	display: block;
	text-align: center;
	color: #DC6136;
}


.select_wid {
	display: block;
	width: 160px;
	margin: 20px auto;
}

/** Custom Select **/
.custom-select-wrapper {
	position: relative;
	display: block;
	user-select: none;
	text-align: center;
}

.custom-select-wrapper select {
	display: none;
}

.custom-select {
	position: relative;
	display: block;
	padding: 0;
}

.custom-select-trigger {
	position: relative;
	display: block;
	width: 100%;
	padding: 0 84px 0 22px;
	font-size: 14px;
	font-weight: 300;
	color: #222222;
	line-height: 35px;
	background: #ffffff;
	border: 1px solid #222222;
	border-radius: 4px;
	cursor: pointer;
}

.custom-select-trigger:after {
	position: absolute;
	display: block;
	content: '';
	width: 10px;
	height: 10px;
	top: 50%;
	right: 25px;
	margin-top: -3px;
	border-bottom: 1px solid #222222;
	border-right: 1px solid #222222;
	transform: rotate(45deg) translateY(-50%);
	transition: all .4s ease-in-out;
	transform-origin: 50% 0;
}

.custom-select.opened .custom-select-trigger:after {
	margin-top: 3px;
	transform: rotate(-135deg) translateY(-50%);
}

.custom-options {
	position: absolute;
	display: block;
	top: 100%;
	left: 0;
	right: 0;
	min-width: 100%;
	margin: 15px 0;
	border: 1px solid #222222;
	border-radius: 4px;
	box-sizing: border-box;
	box-shadow: 0 2px 1px rgba(0, 0, 0, .07);
	background: #fff;
	transition: all .4s ease-in-out;

	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-15px);
	z-index: 1000;
}

.custom-select.opened .custom-options {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
	transform: translateY(0);
}

.custom-options:before {
	position: absolute;
	display: block;
	content: '';
	bottom: 100%;
	right: 25px;
	width: 7px;
	height: 7px;
	margin-bottom: -4px;
	border-top: 1px solid #222222;
	border-left: 1px solid #222222;
	background: #fff;
	transform: rotate(45deg);
	transition: all .4s ease-in-out;
}

.option-hover:before {
	background: #f9f9f9;
}

.custom-option {
	position: relative;
	display: block;
	padding: 0 22px;
	border-bottom: 1px solid #b5b5b5;
	font-size: 14px;
	font-weight: 600;
	color: #222222;
	line-height: 35px;
	cursor: pointer;
	transition: all .4s ease-in-out;
}

.custom-option:first-of-type {
	border-radius: 4px 4px 0 0;
}

.custom-option:last-of-type {
	border-bottom: 0;
	border-radius: 0 0 4px 4px;
}

.custom-option:hover,
.custom-option.selection {
	background: #f9f9f9;
}


/*/切り替えボタン*/
.switch span {
	color: #DC6136;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 70%;
	vertical-align: super;
}

.switch_label {
	width: 33px;
	position: relative;
	display: inline-block;
}

.switch_content {
	display: block;
	cursor: pointer;
	position: relative;
	border-radius: 20px;
	height: 20px;
	overflow: hidden;
}

.switch_content:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 30px;
	background-color: #DC6136;
}

.switch_content:after {
	content: "";
	display: block;
	position: absolute;
	background-color: transparent;
	width: 0;
	height: 0;
	top: 50%;
	left: 50%;
	border-radius: 30px;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
}

.switch_input {
	display: none;
}

.switch_circle {
	display: block;
	top: 2px;
	left: 2px;
	position: absolute;
	-webkit-box-shadow: 0 2px 6px #999;
	box-shadow: 0 2px 6px #999;
	width: 16px;
	height: 16px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	background-color: #fff;
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-ms-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
}

.switch_input:checked~.switch_circle {
	left: 15px;
}

.switch_input:checked~.switch_content:after {
	background-color: #DC6136;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*guide_btn*/
.guide_btn {
	display: inline-block;
	background-color: #ffffff;
	color: #222222;
	border-radius: 10px;
	border: 1px solid #222222;
	margin: 8px 0;
	padding: 0.5em 1.5em;
	font-size: 12px;
	text-align: left;
	min-width: 200px;
}

.guide_btn img {
	display: inline-block;
	height: 11px;
	vertical-align: middle;
}

/* 追加分--------------------------------------------- */
/*guidelink_btn*/
.guidelink_btn {
	display: inline-block;
	background-color: #ffffff;
	color: #259794;
	border-radius: 10px;
	border: 1px solid #222222;
	margin: 8px 0;
	padding: 0.5em 1.5em;
	font-size: 12px;
	text-align: left;
	min-width: 100px;
	text-align: center;
}

.home {
	background-image: url(../images/common/background.png) !important;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}



.point_area .next_btn_04,
.t__select__bt .next_btn_02 {
	position: relative;
	width: 81vw;
	max-width: 400px;
	background-color: #FCD06E;
	background-image: none;
	border-radius: 10px;
	border: 1px solid #000;
	box-sizing: border-box;
	height: auto;
	line-height: 20px;
}

/*ポイント　色付き*/
.point_area .icon_point_iro2 {
	padding-left: 30px;
}


/*見どころポイント*/
.point_area .next_btn_04 {
	text-indent: -30px;
	padding: 2px 20px 2px 30px;
}

/*ツアーコース選択*/
.t__select__bt .next_btn_02 {
	padding-right: 2px;
	padding-left: 3px;
	text-align: left;
	padding-top: 5px;
	padding-bottom: 5px;

}

/*後ろ三角*/
.t__select__bt .next_btn_02::after,
.point_area .next_btn_04::after {
	content: "〉";
	position: absolute;
}

/*ツアーコース選択後ろ三角*/
.t__select__bt .next_btn_02::after {
	bottom: 9px;
	right: 10px;
}

/*見どころポイント後ろ三角*/
.point_area .next_btn_04::after {
	right: 0px;
	bottom: 5px;
	text-indent: 30px;
}



/*768px*/

@media print,
screen and (min-width: 667px) {



	/*左の画像*/
	.course__area .img_area img {
		max-width: 57vw;
	}


	/*display-flex*/
	.course__area {
		display: flex;
		width: 80vw;
		justify-content: space-between;
		margin-left: 3vw;
	}


	/*右側のエリア*/
	.point_area {
		width: 23vw;

	}

	/*ボタン本体*/
	.point_area .next_btn_04 {
		width: 23vw;
		max-width: 23vw;

	}


	/*ボタンエリア*/
	.point__btarea {
		height: 53vw;
		overflow-y: scroll;
		width: 25vw;
	}

	/*ボタンスクロールバーここから*/
	.point__btarea::-webkit-scrollbar {
		overflow: hidden;
		width: 5px;
		background: #eee;
		-webkit-border-radius: 3px;
		border-radius: 3px;
	}

	.point__btarea::-webkit-scrollbar:horizontal {
		height: 5px !important;
	}

	.point__btarea::-webkit-scrollbar-button {
		display: none !important;
	}

	.point__btarea::-webkit-scrollbar-piece {
		background: #eee !important;
	}

	.point__btarea::-webkit-scrollbar-piece:start {
		background: #eee !important;
	}

	.point__btarea::-webkit-scrollbar-thumb {
		overflow: hidden !important;
		-webkit-border-radius: 3px !important;
		border-radius: 3px !important;
		background: #333 !important;
	}

	.point__btarea::-webkit-scrollbar-corner {
		overflow: hidden !important;
		-webkit-border-radius: 3px !important;
		border-radius: 3px !important;
		background: #333 !important;
	}

}




.text-center a {
	transition: .3s;
}

.text-center a:hover {
	cursor: pointer;
	color: #007bff;
	color: burlywood;
}








.index__area {
	/* position: absolute; */
	top: 30%;
	/* margin-top: 22vh; */
	padding: 40px 15px;
	transform: translateY(-50%);
}

/*言語選択*/
.index__lang {
	margin-top: 10px;
}

/*言語選択英語部分*/
.index__lang p {
	margin-bottom: 5px;
}

/*スタートボタン*/
.index__start {
	padding-top: 25px;
	padding-bottom: 10px;
}

/*スタートボタン中身*/
.index__start a {
	padding: 10px 0px 10px 10px;
	background-color: #FCD06E;
	background-image: none;
	border-radius: 15px;
	border: 1px solid #000;
	box-sizing: border-box;
	height: auto;
	text-align: center;
	width: 200px;
}

/*操作ガイド*/
.index__guide {
	margin-top: 20px;
}