@charset "utf-8";
/*
 * CSS for PC
 * @date     2017.03.21
 * @author   Sungjoon Park
 */

/* ------------------------------------------

------------------------------------------ */
#widewrapper {
	width: 100%;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	color: #502b0a;
}
#widewrapper * {
	box-sizing: border-box;
}
#contentsArea {
	position: relative;
}

.mincho {
	font-family: "Yu Mincho Medium", "游明朝 Medium", YuMincho, "游明朝体", "ヒラギノ明朝 Pro W3", "MS P明朝", serif;
}

.pc {
	display: inline-block;
}
.sp {
	display: none !important;
}

a *,
a::Before,a::after {
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

a:hover img {
	opacity: 0.8;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

.page_term {
	font-size: 13px;
	line-height: 1.5;
	width: 950px;
	margin: auto auto 30px auto;
	text-align: center;
}

/* ----- keyVisual -----*/
.pr_absolute::before {
  background-color: rgba(0, 0, 0, .5);
  z-index: 2;
}
#keyVisual {
	width: 100%;
	max-width: 1600px;
	margin: 0 auto;
}
#keyVisual img {
	width: 100%;
	display: block;
}
#keyVisual h1 {
	position: absolute;
	width: 60%;
	height: auto;
	max-width: 784px;
	text-align: left;
	top: 50%;
  left: 0;
  transform: translateY(-40%);
	z-index: 1;
}

.slider_fade {
	position: relative;
	overflow: hidden;
	width: 88%;
	height: auto;
	/*padding-top: 79.4%;*/
	aspect-ratio: 1599 / 1073;
	margin-left: 12%;
}
.slider_fade li {
	position: absolute;
	top: 0;
	list-style: none;
	visibility: hidden;
	animation: anime_slider_fade 15s linear infinite;
	width: 100%;
}
.slider_fade li:nth-of-type(2) {
	animation-delay: 5s;
}
.slider_fade li:nth-of-type(3) {
	animation-delay: 10s;
}
.slider_fade li img {
	width: 100%;
	height: auto;
}

@keyframes anime_slider_fade {
	0% {
		visibility: visible;
		opacity: 0;
	}
	15% {
		opacity: 1;
	}
	33.3% {
		opacity: 1;
	}
	48.3% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}


/* ----- nav -----*/
#pageTab {
	width: 970px;
	background: #f6f6f6;
	padding: 10px;
	margin: auto;
}
#pageTab ul {
	width: 950px;
	margin: 0 auto;
	z-index: 99;
	text-align: center;
}
#pageTab ul.tab5 li {
	width: calc(100% / 5);
	margin-left: 0;
}
#pageTab ul.tab5 li + li {
	border-left: #989795 1px solid;
}
#pageTab ul li a {
	display: block;
	text-align: center;
	height: 120px;
}
#pageTab ul li a span {
	display: block;
	color: #502b0a;
	line-height: 3;
}
#pageTab ul li:nth-child(5) a span {
	line-height: 1.2;
}
#pageTab ul li a img {
	display: block;
	height: auto;
	width: 58%;
	margin: 0 auto;
}
#contentsArea #pageTab ul li.is-current a {
	border-bottom: #502b0a 4px solid;
	background: rgba(255,255,255,0.6);
}
#contentsArea #pageTab ul li a:hover {
	opacity: 0.7;
	text-decoration: none;
}
#contentsArea #pageTab .alwaysFix {
	background: rgba(255,255,255,0.6);
	/*margin: 0 auto;*/
}
#contentsArea #pageTab .alwaysFix ul {
}
#contentsArea #pageTab .alwaysFix li a {
	height: 100px;
}
#contentsArea #pageTab .alwaysFix li a img {
	width: 70px;
	margin: 0 auto 5px;
}


/* ----- contents -----*/

#contents .column1 {
    width: 950px;
    padding: 0;
    margin: auto;
    background: #fff;
}
.page_cpn .cpn_box {
    width: 450px;
    float: left;
    margin-left: 50px;
}
.page_cpn .cpn_box:nth-child(2n-1) {
    margin-left: 0;
}
.page_cpn .cpn_box img {
    display: block;
}
.page_cpn .cpn_box a:hover img {
    opacity: 0.8;
}
.char {
  display: block;
  line-height: 1.7;
  font-size: 13px;
}
.cpCal,.cpUser,.cpPoint,.cpTogether {
  padding-left: 16px;
  padding-right: 4px;
  background-size: auto;
  background-repeat: no-repeat;
}
.cpCal {
  background-image: url(https://img.travel.rakuten.co.jp/special/sales/coupon/images/cpCal.svg);
}
.cpUser {
  background-image: url(https://img.travel.rakuten.co.jp/special/sales/coupon/images/cpUser.svg);
}
.cpPoint {
  background-image: url(https://img.travel.rakuten.co.jp/special/sales/coupon/images/cpPoint.svg);
}
.cpTogether {
  background-image: url(https://img.travel.rakuten.co.jp/special/sales/coupon/images/cpTogether.svg);
  background-position: left 2px;
}
.cpVol {
  font-weight: bold;
}
#contentsArea .jdsColorBoxHtml {
    display: block;
    font-size: 13px;
    text-decoration: underline;
    text-align: center;
    margin-top: 10px;
}
#colorbox {
    width: 800px !important;
    height: 100% !important;
    position: fixed !important;
    top: 5vh!important;
    left: 50% !important;
    margin-left: -400px !important;
}
.tableholder {
  max-height: 90vh!important;
}
#cboxWrapper {
    height: auto !important;
    overflow: auto !important;
    width: 800px !important;
}
#cboxContent {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    height: 100% !important;
}
#cboxMiddleLeft {
    height: 100% !important;
}
#cboxOverlay {
    background-color: rgba(0,0,0,0.5) !important;
    height: 100% !important;
}
#cboxLoadedContent {
    background: #fff !important;
    border: none !important;
    box-sizing: border-box;
    height: auto !important;
    width: 100% !important;
    overflow: hidden
}
#inline_content1, #inline_content2 {
    list-style: none !important;
    font-size: 13px;
}
.page_cpn {
    margin-bottom: 40px;
}
.coupon_img {
    width: 100%;
    height: auto;
}
.cpn_box_txtbox {
    padding: 20px 20px 0 20px;
    background: #fff;
    color: #333
}
.cpn_box_txtbox dt {
    font-size: 14px;
}
.cpn_box_txtbox dd {
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 8px;
}
.cpn_box_txtbox dd em {
    font-style: normal;
    font-size: 120%;
    display: block;
    font-weight: bold;
}
#cboxClose {
    background: url(../images/close.jpg) top right no-repeat !important;
    background-position-x: center;
    background-position-y: top;
    width: 25px !important;
    height: 25px !important;
}
.tableholder {
    position: relative;
}
.tableholder table {
    background-color: #fff;
    border-left: 1px solid #b4b4b4;
    border-top: 1px solid #b4b4b4;
    font-size: 13px;
    line-height: 1.4;
    display: block;
}
.tableholder table td {
    border-right: 1px solid #b4b4b4;
    padding: 8px;
    border-bottom: 1px solid #b4b4b4;
}
.tableholder table tr:first-child {
    color: #fff;
}
.tableholder table tr:first-child td {
    text-align: center!important;
    background-color: #1ba81b!important;
}
.tableholder table tr:last-child td {
    font-size: 11px;
}
.tableholder table tr td:first-child {
    background-color: #e1e1e1;
    text-align: right;
    width: 200px;
    font-weight: bold;
}
.coupon-guide {
  max-width: 912px;
  margin: 0 auto 1.75em;
  font-size: 13px;
  text-align: right;
}
.coupon-guide a {
  display: inline-block;
  padding: .25em .5em .5em .9em;
  border-radius: 4px;
  background-color: #e1e1e1;
}
.coupon-guide a::after {
  display: inline-block;
  content: "";
  background-image: url(https://img.travel.rakuten.co.jp//special/sales/template/html/images/Linkwindow.svg);
  width: 16px;
  height: 16px;
  position: relative;
  right: -2px;
}
/* -----  -----*/

.page_h2 {
    background: #777;
    color: #fff;
    text-align: center;
    padding: 12px 0;
    margin-bottom: 25px;
    font-size: 25px;
}
.page_box_sty1 {
    width: 950px;
    margin: auto auto 45px auto;
}
.page_box1 {
    width: 430px;
    float: left;
    margin-left: 30px;
    margin-bottom: 30px;
}
.box1img img {
    display: block;
    width: 100%
}
.page_box1 h3 {
    font-size: 18px;
    margin: 15px 0 12px;
}
.txtfont13 {
    font-size: 14px;
    line-height: 1.4;
}
.page_box1 .ss-center .cp__acordion {
    clear: both;
}
.page_box1 .cp__acordion .cp__trigger:hover {
    background-color: #bababa;
    color: #ffffff;
}
.page_box1 .cp__acordion .cp__trigger {
    font-size: 13px;
    display: block;
    position: relative;
    padding: 10px;
    cursor: pointer;
}
.page_box1 .cp__acordion .cp__trigger::after {
    display: inline-block;
    content: " ";
    position: absolute;
    top: 50%;
    right: 10px;
    width: 10px;
    height: 7px;
    margin-top: -3.5px;
    background-repeat: no-repeat;
}
.page_box1 .cp__acordion li .cp__trigger {
    background: #e1e1e1;
}
.page_box1 .cp__liststyle-dot > * {
    margin-left: 1em;
    text-indent: -1em;
    margin-bottom: 8px;
    font-size: 12px;
    line-height: 1.4;
}
.page_box1 .cp__acordion ul.submenu {
    background-color: #f0f0f0;
    padding: 8px 10px 10px 10px;
    line-height: 1.4;
}
.page_box1 .cp__acordion .cp__trigger::after {
    background-image: url(../images/icon_1.png) !important;
    background-size: 22px 22px;
    width: 22px;
    height: 22px;
    margin-top: -11px;
    right: 6px;
}
.page_box1 .cp__acordion .cp__trigger.active-submenu::after {
    background-image: url(../images/icon_2.png) !important;
    background-size: 22px 22px;
    width: 22px;
    height: 22px;
    margin-top: -11px;
    right: 6px;
}
.holder {
    margin-top: 12px;
}
.cp_right {
    display: none;
}
.fixBnr2 {
    position: fixed;
    display: block;
    right: 10px;
    bottom: 40px;
}
#contents .pagetop_btn {
    width: 90px;
    z-index: 999;
}
.pagetop_btn li {
    margin-bottom: 1px;
}
.pagetop_btn li a {
    background: #dedede;
    width: 90px;
    display: block;
    text-align: center;
    padding: 10px 0;
}
#contentsArea .pagetop_btn li a:hover {
    text-decoration: none;
    opacity: 0.8;
}
/* ----- Access -----*/

.accessBox {
    border: none;
    margin-bottom: 45px;
}
.column1 .accessBox .map {
    width: 600px;
    margin: auto;
    float: none;
    height: 450px;
    margin-bottom: 10px;
}
.column1 .accessBox .map iframe {
    width: 100%;
    display: block;
    height: 450px;
}
.column1 .accessBox .route {
    width: 600px;
    float: none;
    margin: auto;
}
#search-box h1 {
    display: none;
}
.column1 #search-box {
    margin: auto;
}
.disclaimer {
  margin: 20px auto 40px;
  font-size: 13px;
  text-align: center;
  padding: 1em 0;
  background-color: #efefef;
  border-radius: 30px;
}
#newetiquette {
    width: 900px;
    text-align: center;
    margin: 60px auto;
    background: #eee;
    padding: 15px 0;
}
#newetiquette a {
  color: #0059B2!important;
}
#pageInquiry .inquiryTable {
  width: 900px;
  margin: 60px auto 20px;
  font-size: 14px;
  border-collapse: collapse;
}
#pageInquiry th,
#pageInquiry td {
  border: solid 1px #aaa;
  padding: 22px;
}
#pageInquiry th {
  background-color: #efefef;
}
#pageInquiry .inquiryTable a {
  color: #0059B2;
}
.page_footer {
    background: #f7f7f7;
    padding: 10px 12px;
    border-top: 1px solid #c2c2c2;
    border-bottom: 1px solid #c2c2c2;
    margin: 0 10px 12px 10px;
}
.page_footer ul {
    width: 950px;
    margin: auto
}
.page_footer ul li {
    margin-bottom: 6px;
}
.page_footer a {
    color: #777;
    font-size: 13px;
    line-height: 1.6;
    text-decoration: none;
}
.page_footer a:hover {
    text-decoration: underline;
}
.page_footer p {
    width: 950px;
    margin: auto;
}
.page_footer p span {
    display: inline-block;
    margin-right: 12px;
}
#contentsArea .cpn_box .btn {
    width: 220px;
    margin: 20px auto auto auto;
}
#contentsArea .cpn_box .btn .main {
    border: 2px solid #7bb33e;
    border-radius: 5px;
    background-color: #fff;
    color: #7bb33e;
    text-align: center;
    display: block;
    margin: 0px auto;
    font-weight: bold;
    padding: 10px 0;
    position: relative;
    font-size: 16px;
}
#contentsArea .cpn_box .btn .main:after {
    position: absolute;
    content: '';
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAMCAYAAABfnvydAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpDNkQ4N0ZGMzJGQzRFNzExODg5RkM1RTg2NEE3ODZENyIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpDNzczMUIzN0M1QjcxMUU3ODhGNEZFQzVFMjgxMEUyOSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpDNzczMUIzNkM1QjcxMUU3ODhGNEZFQzVFMjgxMEUyOSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOjNCMjI2MTI1MUFDNUU3MTE5RkIzOUM4RTk0QkM0M0U5IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkM2RDg3RkYzMkZDNEU3MTE4ODlGQzVFODY0QTc4NkQ3Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+xa2QmQAAAM5JREFUeNpc0L8LAWEcx/HnZLiBQcmk/AVKdu4fMCr5D1hJEqV0GSwkshoNYmCVTPwZwmAxUSTnvO96Tg9Pvfo+d9/P8+NOqy/SdyGEjgoGZmbzEMrwYQ0LTRQbS0P/DxQwQQAt51kNabZtC15EmXeQxw0NjDju6QacQShGMZGToTZW34AMRShDZPHCzid+RxghOb/g7FdWJyg9GNijiq13SafZRwpHlLjg1P1MmklqVzZPKGPm7ewcMUYcB9mcs/qt/qggrqjJpqXe+iPAAHnLRIHtZQkmAAAAAElFTkSuQmCC) 0 0 no-repeat;
    height: 12px;
    width: 8px;
    right: 12px;
    top: 50%;
    margin-top: -6px;
    display: block;
}
#contentsArea .cpn_box .btn .main:hover {
    opacity: 0.8;
}
.page_foot_box {
    width: 950px;
    margin: 50px auto;
}
.page_foot_box .swiper-slide {
    width: 180px !important;
    font-size: 14px;
}
#contentsArea .gototop_btn {
    margin-top: 20px;
}
#contentsArea .gototop_btn a {
    background: #333;
    color: #fff;
}
#contentsArea .gototop_btn a:hover {
    color: #fff;
}

/* ------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------ */
#contents {
	position: relative;
	background-color: #ffffff;
	padding-top: 8%;
}
#contents * {
	box-sizing: border-box;
}

#contents .column1 {
	width: 950px;
	padding: 0;
	margin: auto;
	background: none;
}
#contents h2 {
	text-align: center;
	margin: 0 auto 3em;
}
#contents h2 span {
	display: block;
	padding-bottom: 20px;
}
#contents h3 {
	text-align: left;
	font-size: 162.5%;
	margin: 0 auto 1em;
}
#contents h4 {
	text-align: left;
	font-size: 162.5%;
	letter-spacing: 0.06em;
	margin: 0 auto 0.5em;
}
#contents p {
	font-size: 112.5%;
	line-height: 1.9;
}
#contents p + p {
	margin-top: 1em;
}
#contents #sec01 p,
#contents #sec02 p,
#contents #sec03 p {
	/*color: #611718;*/
}

#page_intro {
	position: relative;
	padding: 2% 0 5%;
}
#page_intro .column1 {
	width: 950px;
	margin: auto;
}
#page_intro::before {
	content: "";
	display: block;
	width: 397px;
	height: 469px;
	background: url("../images/intro_map.png") no-repeat;
	background-size: cover;
	position: absolute;
	z-index: -1;
	top: -18%;
	left: 55%;
}
#page_intro .intro {
	position: relative;
	text-align: center;
	margin-bottom: 12%;
}
#page_intro p {
	letter-spacing: 0.1em;
	line-height: 2.1;
	font-size: 125%;
}
#page_intro p + p {
	margin-top: 2em;
}
#page_intro .flip {
	position: absolute;
}
#page_intro .flip.img1 {
	bottom: 90%;
	right: 90%;
}
#page_intro .flip.img2 {
	top: 15%;
	right: 96%;
}
#page_intro .flip.img3 {
	bottom: -8%;
	left: -5%;
}
#page_intro .flip.img4 {
	bottom: -16%;
	right: -2%;
}
#page_intro .flip.img5 {
	top: 28%;
	right: -21%;
}


.btnwrap {
	text-align: center;
}
.btn {
	border-radius: 2em;
	background-color: #fff;
	color: #000;
	text-align: center;
	display: inline-block;
	margin: 0px auto;
	padding: 1em;
	position: relative;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1;
	box-sizing: border-box;
	text-decoration: none !important;
}
.btn.main {
	background: #d85b5b;
	width: 100%;
	max-width: 840px;
	color: #fff !important;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding: 1.5em 1.5em;
	border-radius: 12px;
}
.btn.main::before {
	content: "";
	position: absolute;
	display: block;
	height: 100%;
	width: 100%;
	border: #d85b5b 3px solid;
	border-radius: 12px;
	box-sizing: border-box;
	left: 6px;
	top: 6px;
}
.btn.main::after {
	content: "";
	position: absolute;
	display: block;
	height: 8px;
	width: 8px;
	border-top: #fff 3px solid;
	border-right: #fff 3px solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 30px;
	top: 50%;
	margin-top: -5px;
}
.btn.more {
	width: 96%;
	max-width: 840px;
	color: #14808d !important;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding: 1em 1.5em;
	border: #14808d 2px solid;
	border-radius: 6px;
	box-shadow: #fff 3px 5px 0 0, #14808d 3px 5px 0 2px;
}
.btn.more::after {
	content: "";
	position: absolute;
	display: block;
	height: 8px;
	width: 8px;
	border-top: #14808d 2px solid;
	border-right: #14808d 2px solid;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 30px;
	top: 50%;
	margin-top: -5px;
}
.btn.more small {
	font-size: 65%;
	letter-spacing: 0;
}
.btn:hover {
	/*opacity: 0.7;*/
}
.btn:hover::after {
	right: 20px;
}


#sec01 {
	background: url("../images/sec01_bg.jpg") top center repeat;
	padding: 8% 0 0;
}
#sec02 {
	background: url("../images/sec02_bg.jpg") top center repeat;
	padding: 8% 0 0;
}
#sec03 {
	background: url("../images/sec03_bg.jpg") top center repeat;
	padding: 8% 0 5%;
}
#event {
	padding: 8% 0 2%;
}
#recommend {
	background: url("../images/reco_bg.jpg") top center repeat;
	padding: 8% 0 6%;
}
#contents .arrow {
	margin: auto;
	text-align: center;
	transform: translateY(40%);
}

#contents .swiper-wrapper {
  padding-bottom: 30px;
}
#contents .swiper-pagination {
	text-align: center;
}
#contents .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
	opacity: 1;
	background: none;
	border: #a7a7a7 1px solid;
	border-radius: 10px;
}
#contents .swiper-pagination-bullet-active {
  background: #a7a7a7;
	border: #a7a7a7 1px solid;
}


#sec01 .spotwrap {
	margin-top: 5%;
}
#sec01 .spotwrap .spot {
	position: relative;
	display: flex;
	justify-content: space-between;
	text-align: left;
	z-index: 1;
}
#sec01 .spotwrap .spot:nth-child(1),
#sec01 .spotwrap .spot:nth-child(5),
#sec01 .spotwrap .spot:nth-child(9) {
	flex-direction: row-reverse;
	justify-content: space-between;
}
#sec01 .spotwrap .spot:nth-child(1) .slidewrap {
	width: 53.15%;
}
#sec01 .spotwrap .spot:nth-child(1) .txtwrap {
	width: 43.9%;
}
#sec01 .spotwrap .spot:nth-child(3) .slidewrap {
	width: 56%;
}
#sec01 .spotwrap .spot:nth-child(3) .txtwrap {
	width: 42%;
}
#sec01 .spotwrap .spot:nth-child(5) .slidewrap {
	width: 59.36%;
}
#sec01 .spotwrap .spot:nth-child(5) .txtwrap {
	width: 39%;
}
#sec01 .spotwrap .spot:nth-child(7) .slidewrap {
	width: 51.68%;
}
#sec01 .spotwrap .spot:nth-child(7) .txtwrap {
	width: 46%;
}
#sec01 .spotwrap .spot:nth-child(9) .slidewrap {
	width: 59.36%;
}
#sec01 .spotwrap .spot:nth-child(9) .txtwrap {
	width: 39%;
}
#sec01 .spotwrap .line {
	position: relative;
	z-index: 0;
	margin: auto;
}
#sec01 .spotwrap .line.sec1_2 {
	left: 32%;
	margin-top: -20%;
}
#sec01 .spotwrap .spot:nth-child(3) {
	margin-top: -15%;
}
#sec01 .spotwrap .line.sec2_3 {
	left: 38%;
	margin-top: -30%;
}
#sec01 .spotwrap .spot:nth-child(5) {
	margin-top: -6%;
}
#sec01 .spotwrap .line.sec3_4 {
	left: 20%;
	margin-top: -26%;
}
#sec01 .spotwrap .spot:nth-child(7) {
	margin-top: -20%;
}
#sec01 .spotwrap .line.sec4_5 {
	left: 35%;
	margin-top: -26%;
}
#sec01 .spotwrap .spot:nth-child(9) {
	margin-top: -10%;
}

#sec01 .spotwrap h3 {
	font-size: 162.5%;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 0.5em;
}
#sec01 .spotwrap p {
	font-size: 106.25%;
	line-height: 1.8;
}
#sec01 .spotwrap p.linehead {
	font-size: 87.5%;
}
#sec01 .fuki1 {
	position: absolute;
	right: 100%;
	bottom: 0;
}
#sec01 .fuki2 {
	position: absolute;
	right: 50%;
	bottom: 30px;
}


#sec02 .spotwrap .spot {
	display: flex;
	justify-content: space-between;
	text-align: left;
	z-index: 1;
}
#sec02 .spotwrap .spot:nth-child(3) {
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-top: 5%;
}
#sec02 .spotwrap .spot:nth-child(2) .slidewrap {
	width: 54%;
}
#sec02 .spotwrap .spot:nth-child(2) .txtwrap {
	width: 44%;
}
#sec02 .spotwrap .spot:nth-child(3) .slidewrap {
	width: 59.37%;
}
#sec02 .spotwrap .spot:nth-child(3) .txtwrap {
	width: 39%;
}
#sec02 .spotwrap .spot:nth-child(4) .slidewrap {
	width: 56%;
}
#sec02 .spotwrap .spot:nth-child(4) .txtwrap {
	width: 43%;
}
#sec02 .spotwrap h3 {
	font-size: 162.5%;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 0.5em;
}
#sec02 .spotwrap p {
	font-size: 106.25%;
	line-height: 1.8;
}


#sec03 .spotwrap .spot {
	text-align: left;
	margin-bottom: 14%;
}
#sec03 .spotwrap .spot .flex {
	display: flex;
	justify-content: space-between;
}
#sec03 .spotwrap .spot .flex div {
	width: 48.9%
}
#sec03 .spotwrap .spot h3 {
	text-align: center;
	font-size: 150%;
	padding-top: 0.5em;
}
#sec03 .spotwrap .spot .lead {
	max-width: 750px;
	margin: auto;
	font-size: 106.25%;
}

#souvenir {
	margin-top: -140px;
	padding-top: 140px;
}
.kakomi {
	display: block;
	background: url("../images/sec03_kakomi_bg.png") no-repeat top center;
	background-size: cover;
	margin-right: -30px;
}
.kakomi .inner {
	padding: 0 60px 30px 30px;
}
.kakomi h4 {
	text-align: center !important;
	margin-bottom: 0 !important;
	transform: translateY(-34px);
	padding-right: 26px;
	position: relative;
}
.kakomi h4 .fuki3 {
	position: absolute;
	bottom: 20px;
	right: 20px;
}
.kakomi h5 {
	text-align: center;
	padding-top: 0.5em;
	margin-bottom: 1em;
}
.kakomi .flex {
	display: flex;
	justify-content: space-between;
	align-items: top;
	margin-top: -5%;
}
.kakomi .flex li {
	width: 30%;
}
.kakomi .flex li:nth-child(2) {
	margin-top: 10%;
}
.kakomi .slide {
	text-align: center;
}
#sec03 .kakomi p {
	font-size: 106.25%;
	line-height: 1.8;
}
#sec03 .kakomi p.lead {
	text-align: center;
}

#sec03 .attention {
	background: #f9f7f1;
	padding: 1.5em 2em;
}
#sec03 .attention .note {
	padding-top: 0;
	font-size: 100%;
}



#event .spotwrap .spot {
	margin-bottom: 8%;
}
#event .spotwrap .spot .mv {
	position: relative;
}
#event .spotwrap .spot:nth-child(1) .mv .txt {
	position: absolute;
	top: 35px;
	left: 35px;
}
#event .spotwrap .spot:nth-child(2) .mv .txt {
	position: absolute;
	top: 35px;
	right: 35px;
}
#event .spotwrap .spot h3 {
	text-align: center;
	margin-top: 5%;
}
#contents #event .linehead {
	padding-left: 2em;
	margin-top: 2em;
}
#contents #event .spot:nth-child(1) .linehead span {
	display: inline-block;
	width: 4.3em;
}
#contents #event .spot:nth-child(2) .linehead span {
	display: inline-block;
	width: 6.4em;
}
#event .spotwrap .spot .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#event .spotwrap .spot .flex .linehead {
	width: 65%;
}
#event .spotwrap .spot .flex .btnwrap {
	width: 30%;
	text-align: left;
}



#recommend .spotwrap .spot {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	text-align: left;
	margin-bottom: 8%;
}
#recommend .spotwrap .midasi {
	width: 100%;
	text-align: center;
	font-size: 250%;
	font-weight: 900;
  letter-spacing: 0.03em;
	position: relative;
	margin-bottom: 1.5em;
	line-height: 1;
}
#recommend .spotwrap .midasi::before,
#recommend .spotwrap .midasi::after {
	content: "";
	display: block;
	width: 12%;
	height: 4px;
	background: #dd7785;
	position: absolute;
	top: 49%;
	margin-top: -2px;
}
#recommend .spotwrap .spot:nth-child(2) .midasi::before,
#recommend .spotwrap .spot:nth-child(2) .midasi::after {
	background: #314682;
}
#recommend .spotwrap .spot:nth-child(3) .midasi::before,
#recommend .spotwrap .spot:nth-child(3) .midasi::after {
	background: #9567ac;
}
#recommend .spotwrap .midasi span {
	position: relative;
	display: inline-block;
	width: 76%;
	margin: auto;
	line-height: 1;
	color: #dd7785;
}
#recommend .spotwrap .spot:nth-child(2) .midasi span {
	color: #314682;
}
#recommend .spotwrap .spot:nth-child(3) .midasi span {
	color: #9567ac;
}
#recommend .spotwrap .midasi span::before,
#recommend .spotwrap .midasi span::after {
	content: "";
	display: block;
	width: 10px;
	height: 100%;
	border-top: #dd7785 4px solid;
	border-bottom: #dd7785 4px solid;
	box-sizing: border-box;
	position: absolute;
	top: 0;
}
#recommend .spotwrap .midasi span::before {
	border-left: #dd7785 4px solid;
	left: 0;
}
#recommend .spotwrap .midasi span::after {
	border-right: #dd7785 4px solid;
	right: 0;
}
#recommend .spotwrap .spot:nth-child(2) .midasi span::before,
#recommend .spotwrap .spot:nth-child(2) .midasi span::after {
	border-top: #314682 4px solid;
	border-bottom: #314682 4px solid;
}
#recommend .spotwrap .spot:nth-child(2) .midasi span::before {
	border-left: #314682 4px solid;
	left: 0;
}
#recommend .spotwrap .spot:nth-child(2) .midasi span::after {
	border-right: #314682 4px solid;
	right: 0;
}
#recommend .spotwrap .spot:nth-child(3) .midasi span::before,
#recommend .spotwrap .spot:nth-child(3) .midasi span::after {
	border-top: #9567ac 4px solid;
	border-bottom: #9567ac 4px solid;
}
#recommend .spotwrap .spot:nth-child(3) .midasi span::before {
	border-left: #9567ac 4px solid;
	left: 0;
}
#recommend .spotwrap .spot:nth-child(3) .midasi span::after {
	border-right: #9567ac 4px solid;
	right: 0;
}
#recommend .spotwrap .midasi::before {
	left: 0;
}
#recommend .spotwrap .midasi::after {
	right: 0;
}

#recommend .spotwrap .spot .slidewrap {
	width: 55.68%;
}
#recommend .spotwrap .spot .txtwrap {
	width: 40%;
	padding-bottom: 2em;
}
#recommend .spotwrap .spot:nth-child(2) {
	flex-direction: row-reverse;
	justify-content: space-between;
}
#recommend .spotwrap .btnwrap {
	text-align: left;
	padding-top: 2em;
}



#contents .linehead {
	position: relative;
	padding-left: 1em;
	font-size: 100%;
}
#contents .linehead::before {
	content: "";
	display: block;
	width: 2px;
	height: 100%;
	background: #502b0a;
	transform: rotate(6deg);
	transform-origin: 0% 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.disclaimer {
	margin: 5% auto 0;
	max-width: 840px;
	font-size: 1rem;
	line-height: 1.6;
	text-align: left;
	padding: 0;
	background: none;
	border-radius: 0;
}


#access {
	padding: 12% 0 10%;
}
#access h2 {
	max-width: 100%;
	font-size: 2rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-align: center;
	position: relative;
	margin-bottom: 1em;
}
#access h2::before,
#access h2::after {
	content: "";
	display: block;
	background: #502b0a;
	height: 4px;
	width: 230px;
	position: absolute;
	top: 50%;
}
#access h2::before {
	left: 0;
}
#access h2::after {
	right: 0;
}

#access .accessBox {
	width: 100%;
}
#access .map {
	width: 100%;
	float: none;
	margin: 0 0 10px;
}
#access .route {
	width: 100%;
}
#access .route {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	float: none;
	margin: 0 0 10px;
}
#access .route dl {
	width: 48%;
	text-align: left;
	padding: 3% 0;
}
#access .route dl dt {
	padding-bottom: 1em;
}
#access .route dl dd {
	font-size: 100%;
}
#access .route dl dd + .head {
	margin-top: 1em;
}

#search h2 {
	max-width: 100%;
	font-size: 2rem;
	font-weight: 900;
	letter-spacing: 0.1em;
	text-align: center;
	position: relative;
	margin-bottom: 1em;
}
#search h2::before,
#search h2::after {
	content: "";
	display: block;
	background: #502b0a;
	height: 4px;
	width: 230px;
	position: absolute;
	top: 50%;
}
#search h2::before {
	left: 0;
}
#search h2::after {
	right: 0;
}
.column1 #search-box {
  width: 100%;
	margin-bottom: 10%;
}


#inquiry {
	padding: 5% 0;
	background: #f2f2f2;
}
#newetiquette {
	width: 950px;
	margin: 0 auto 60px;
	background: #fff;
	border: #611717 1px solid;
	padding: 15px 0;
	color: #611717;
}
#newetiquette a {
  color: #0059B2!important;
}
#pageInquiry .inquiryTable {
	width: 820px;
	margin: 60px auto 0;
}
#pageInquiry th,
#pageInquiry td {
	color: #101010;
}
#pageInquiry th {
	background: #d7d7d7;
}
#pageInquiry td {
	background: #ffffff;
}






