@charset "utf-8";
/* =========================================================
   共通スタイル
========================================================= */
body {
	color: #333;
	font-family: HiraKakuPro-W3,'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3',メイリオ,Meiryo,'ＭＳ Ｐゴシック',osaka,Arial,Helvetica,Verdana,sans-serif;
}

#tour_wrapper {
	position: relative;
	width: 980px;
	margin: 0 auto;
	margin-top: 15px;
}

#tour_wrapper.snowfes {
	width: 100%;
}

#tour_wrapper img {
	width: 100%;
	height: auto;
}

#breadCrumb {
	width: 980px;
	margin: 0 auto;
}

h1.pageHeading {
	width: 980px;
	margin: 0 0 20px;
	margin: 0 auto 20px;
	padding: 0 0 9px;
	border-bottom: 1px dotted #ccc;
	color: #333;
	font-size: 14px;
	font-weight: normal;
}

.totop {
	clear: both;
	width: 980px;
	margin: 8px auto 24px;
	font-size: 12px;
	text-align: right;
}

.w980 {
	width: 980px;
	margin: 0 auto;
}

.pl-guideLink img,
.pl-mainvisual__navigation__item img {
	opacity: 1 !important;
}

/* =========================================================
   mainvisual
========================================================= */
.pl-mainvisual {
	height: 660px;
	margin-bottom: 45px;
	background: url(/tour/common/images/special/001_hokkaido/snowfes/main_visual.jpg) no-repeat center 0;
}

.pl-mainvisual__inner {
	position: relative;
	width: 1168px;
	margin: 0 auto;
}

/* schedule
-------------------------------------------------- */
.pl-mainvisual__scheduleWrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	position: absolute;
	top: 190px;
	right: 0;
	left: -74px;
	width: 750px;
	margin: 0 auto;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-mainvisual__schedule {
	position: relative;
}

.pl-mainvisual__schedule__headline {
	position: absolute;
	top: -42px;
	left: -28px;
	width: 387px;
	height: 64px;
}

.pl-mainvisual__schedule__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 540px;
	min-height: 94px;
	padding: 20px;
	border-radius: 5px;
	color: #fff;
	background: #39f;
	font-size: 15px;
	line-height: 1.8;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-mainvisual__schedule__inner .place {
    width: 35%;
}

.pl-mainvisual__schedule__inner .period {
    width: 65%;
}

.pl-guideLink a:hover {
	display: block;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 0 2px #003894;
	        box-shadow: 0 0 0 2px #003894;
}

/* lead
-------------------------------------------------- */
.pl-mainvisual__leadWrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 920px;
	margin: 45px auto 0;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-mainvisual__lead__img {
	width: 210px;
	height: 168px;
}

.pl-mainvisual__lead {
	width: 700px;
}

.pl-mainvisual__lead__inner {
	text-shadow: #fff 1px 1px 0, #fff 1px -1px 0, #fff -1px 1px 0, #fff -1px -1px 0;
	font-size: 14px;
	line-height: 1.6;
}

.pl-mainvisual__lead__textLinkWrapper {
	margin-top: 10px;
	text-align: right;
}

a.pl-mainvisual__lead__textLink {
	color: #333;
	font-size: 15px;
	font-weight: bold;
	text-decoration: underline;
}

a.pl-mainvisual__lead__textLink:hover {
	text-decoration: none;
}

/* navigation
-------------------------------------------------- */
.pl-mainvisual__navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 920px;
	margin: 40px auto 0;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-mainvisual__navigation__item a:hover {
	display: block;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 0 2px #003894;
	        box-shadow: 0 0 0 2px #003894;
}

/* section
-------------------------------------------------- */
.pl-section+ .pl-section {
	margin-top: 60px;
}

.pl-section__headline {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	height: 50px;
	margin-bottom: 25px;
	padding: 0 15px;
	color: #fff;
	background: #003894;
	background: url(/tour/common/images/special/001_hokkaido/snowfes/bg_h2.png) left top no-repeat;
	font-size: 26px;
	line-height: 50px;
}

.pl-section__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 100%;
	margin: 0 auto;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-section__inner__img {
	width: 400px;
	height: 240px;
}

.pl-section__inner__leadWrapper {
	width: 550px;
}

#sec_03 .pl-section__inner__leadWrapper {
	width: 350px;
}

.pl-section__inner__lead {
	font-size: 15px;
	line-height: 1.7;
}

/* hotelList
-------------------------------------------------- */
.pl-hotelList.\--isColumnTwo {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 600px;
	padding: 10px;
	border-radius: 5px;
	background: #ececeb;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-hotelList.\--isColumnSix {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 900px;
	margin: 25px auto 60px;
	padding: 10px;
	border-radius: 5px;
	background: #ececeb;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-hotelList__item {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 285px;
	padding: 10px 10px 20px;
	border-radius: 5px;
	background: #fff;
}

.pl-hotelList.\--isColumnSix .pl-hotelList__item:nth-child(n+4) {
	margin-top: 15px;
}

.pl-hotelList__item__headline {
	height: 38px;
	margin-bottom: 10px;
	color: #003894;
	font-size: 16px;
	line-height: 38px;
	text-align: center;
}

.\--isBreak {
	font-size: 14px;
	line-height: 1.4;
}

.pl-hotelList__item__img {
	margin-bottom: 10px;
}

.pl-hotelList__item__text {
	color: #676464;
	font-size: 13px;
	line-height: 1.7;
}

/* =========================================================
   button
========================================================= */
.history+ .pl-buttonWrapper {
	width: 500px;
	margin: 0 auto 60px;
	border-top: none;
}

.pl-buttonWrapper {
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	height: 59px;
	margin-top: 17px;
	padding: 0 !important;
	border-top: 1px dashed #ccc;
}

a.pl-button {
	display: inline-block;
	position: relative;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	height: 45px;
	margin: 10px auto 3px;
	padding-left: 15px;
	border-radius: 3px;
	color: #fff;
	background: #f27b11;
	background: -webkit-linear-gradient(top, #f39c33 0%, #f08300 100%);
	background:         -webkit-gradient(linear, left top, left bottom, from(#f39c33), to(#f08300));
	background:         -o-linear-gradient(top, #f39c33 0%, #f08300 100%);
	background:         linear-gradient(to bottom, #f39c33 0%, #f08300 100%);
	-webkit-box-shadow: 0 3px 0 #da6c0b;
	        box-shadow: 0 3px 0 #da6c0b;
	font-size: 16px;
	font-weight: bold;
	line-height: 45px;
	text-align: left;
	vertical-align: middle;
	text-decoration: none;
	cursor: pointer;
}

a.pl-button::before {
	display: block;
	position: absolute;
	top: 50%;
	right: 15px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border-radius: 50%;
	background: #fff;
	content: '';
}

a.pl-button::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 15px;
	width: 0;
	height: 0;
	margin-top: -4px;
	border: 4px solid transparent;
	border-left: 7px solid #f27b11;
	content: '';
}

a.pl-button:hover {
	margin: 9px auto 4px;
	background: #f39c33;
	-webkit-box-shadow: 0 4px 0 #da6c0b;
	        box-shadow: 0 4px 0 #da6c0b;
}

a.pl-button:active {
	margin: 12px auto 1px;
	background: #e4710c;
	-webkit-box-shadow: 0 1px 0 #da6c0b;
	        box-shadow: 0 1px 0 #da6c0b;
}

a.pl-button:hover::after {
	border-left: 7px solid #f39c33;
}

a.pl-button:active::after {
	border-left: 7px solid #e4710c;
}

/* 白ボタン */
a.pl-Wbutton {
    display: block;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 500px;
    margin: 0 auto;
    padding: 15px 30px 15px 10px;
    border: 2px solid #003894;
    border-radius: 3px;
    color: #003894;
    background: #fff;
    -webkit-box-shadow: #d9d9d9 0 -3px 0 inset;
    box-shadow: #d9d9d9 0 -3px 0 inset;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    cursor: pointer;
}

a.pl-Wbutton::before {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border-radius: 50%;
	background: #003894;
	content: '';
}

a.pl-Wbutton::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 0;
	height: 0;
	margin-top: -4px;
	border: 4px solid transparent;
	border-left: 7px solid #fff;
	content: '';
}

a.pl-Wbutton:hover {
	padding: 14px 30px 17px 10px;
	border-top: 1px solid #003894;
	-webkit-box-shadow: rgba(160, 172, 186, .2) 0 0 3px, rgba(0, 0, 0, .15) 0 -4px 0 inset;
	        box-shadow: rgba(160, 172, 186, .2) 0 0 3px, rgba(0, 0, 0, .15) 0 -4px 0 inset;
}

a.pl-Wbutton:hover::before {
	margin-top: -10px;
}

a.pl-Wbutton:hover::after {
	margin-top: -5px;
}

a.pl-Wbutton:active {
	padding: 16px 30px 14px 10px;
	border-top: 2px solid #003894;
	-webkit-box-shadow: #d9d9d9 0 1px 0 inset;
	        box-shadow: #d9d9d9 0 1px 0 inset;
}

a.pl-Wbutton:active::before {
	margin-top: -7px;
}

a.pl-Wbutton:active::after {
	margin-top: -2px;
}

/* テキストリンク */
.pl-textLinkWrapper {
	display: block;
	width: 100%;
	height: 14px;
	margin-top: 17px;
}

a.pl-textLink {
	display: block;
	font-size: 14px;
	line-height: 1;
	text-align: right;
	text-decoration: underline;
}

a.pl-textLink:hover {
	text-decoration: none;
}

/* gmap
-------------------------------------------------- */
.pl-gmap {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 100%;
	margin: 0 auto;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-gmap__lead {
	/* width: 350px; */
	font-size: 16px;
	line-height: 1.6;
	padding: 0 40px;
}

.pl-gmap__lead span {
	display: block;
	/* margin-top: 10px; */
	font-size: 15px;
	line-height: 1.3;
}

.pl-guideWrapper {
	overflow: hidden;
	padding: 60px 0;
	background: #efefef;
}

.pl-guide {
	width: 980px;
	margin: 0 auto;
}

.pl-guide__headline {
	width: 532px;
	margin: 0 auto 40px;
}

.pl-guide__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 100%;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-guide__list__item {
	position: relative;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 980px;
	padding: 60px 30px;
	border: solid 2px #003894;
	border-radius: 5px;
	background: #fff;
}

.pl-guide__list__item+ .pl-guide__list__item {
	margin-top: 60px;
}

.pl-guide__list__item__headline {
	position: absolute;
	top: -20px;
	right: 0;
	left: 0;
	width: 387px;
	margin: 0 auto;
	color: #fff;
	background: url(/tour/common/images/special/001_hokkaido/snowfes/tit_ribbon_blue.png) center top no-repeat;
	font-size: 20px;
	line-height: 64px;
	text-align: center;
}

.pl-guide__list__item__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	width: 100%;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-guide__list__item:nth-child(1) .pl-guide__list__item__inner__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display:         flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	        justify-content: space-between;
	position: relative;
	width: 500px;

	-ms-flex-pack: justify;
	    -ms-flex-wrap: wrap;
}

.pl-guide__list__item:nth-child(1) .pl-guide__list__item__inner__img .pic:nth-child(1) {
	width: 168px;
}

.pl-guide__list__item:nth-child(1) .pl-guide__list__item__inner__img .pic:nth-child(2) {
	width: 320px;
}

.pl-guide__list__item:nth-child(1) .pl-guide__list__item__inner__text {
	width: 355px;
	font-size: 15px;
	line-height: 1.7;
}

.pl-guide__list__item:nth-child(2) .pl-guide__list__item__inner__text,
.pl-guide__list__item:nth-child(3) .pl-guide__list__item__inner__text {
	width: 535px;
	font-size: 15px;
	line-height: 1.7;
}

.pl-guide__list__item:nth-child(2) .pl-guide__list__item__inner__img,
.pl-guide__list__item:nth-child(3) .pl-guide__list__item__inner__img {
	position: relative;
	width: 320px;
}

.pl-guide__list__item:nth-child(2) .pl-guide__list__item__inner__img .pic,
.pl-guide__list__item:nth-child(3) .pl-guide__list__item__inner__img .pic {
	width: 320px;
}

.pl-guide__list__item .pl-guide__list__item__inner__img .map {
	position: absolute;
	right: -30px;
	bottom: -30px;
	width: 160px;
}

/* history
-------------------------------------------------- */
.pl-history {
	position: relative;
	width: 1240px;
	height: 600px;
	margin: 0 auto;
	background: url(/tour/common/images/special/001_hokkaido/snowfes/bg_history.png) center top no-repeat;
	background-size: contain;
}

.pl-history__headline {
	position: absolute;
	top: 100px;
	right: 0;
	left: 0;
	color: #003894;
	font-size: 36px;
	line-height: 36px;
	text-align: center;
}

.pl-history__text {
	position: absolute;
	top: 180px;
	right: 0;
	left: 0;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 920px;
	margin: 0 auto;
	padding: 20px;
	border-radius: 5px;
	background: rgba(255, 255, 255, .3);
	font-size: 16px;
	line-height: 1.7;
}

.pl-history .pl-buttonWrapper {
	position: absolute;
	/* display: table; */
	right: 0;
	bottom: 60px;
	left: 0;
	width: 500px;
	margin: 0 auto;
	border-top: none;
	/* margin-left: 30%; */
}

/* =========================================================
   end
========================================================= */