﻿@charset "UTF-8";
/*

READ ME ============================================

- Font Weight
normal = 400
bold = 700

- zindex
9999 DrawerMenu > overlay

- Drawer Menu style
/sp/css/common/jquery.drawer.css

- CSS3 genarator
ex) border-radius, box-shadow, text-shadow...etc
http://css3generator.com

- gradient style
http://www.colorzilla.com/gradient-editor/

*/

/*

base ============================================

*/

/* set box-sizing */
div,p,table,th,td,ol,ul,li,dl,dt,dd {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
	background-color: #46A6CB;
}
html.no-footer {
	background-color: #FFFFFF;
}
body {
	font-size: 1.3rem;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	color: #333333;
	line-height: 1;
	width: 100%;
	min-width: 320px;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #0099CC;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
sup {
	color: #ff0000;
}
input {
	color: #333333;
	vertical-align: middle;
	outline: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
input:focus {
	outline: none;
}

input[type="checkbox"] {
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	margin-right: 10px;
	border-radius: 4px;
	border: 1px solid #BBBBBB;
	width: 20px;
	height: 20px;
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(206,206,206)), color-stop(100%, rgb(255, 255, 255)));
	background: -webkit-linear-gradient(top, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
	background: linear-gradient(to bottom, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
}
.firefox input[type="checkbox"] {
	border: none;
	margin-right: 3%;
	-webkit-transform: scale(1.4);
	-moz-transform: scale(1.4);
	transform: scale(1.4);
	background: none;
}
input[type="checkbox"]:checked {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(53, 53, 53)), color-stop(100%, rgb(143, 143, 143)));
	background: -webkit-linear-gradient(top, rgb(53, 53, 53) 0%, rgb(143, 143, 143) 100%);
	background: linear-gradient(to bottom, rgb(53, 53, 53) 0%, rgb(143, 143, 143) 100%);
}
.firefox input[type="checkbox"]:checked {
	background: none;
}
input[type="checkbox"]:checked::before {
	position: absolute;
	left: 3px;
	top: 12px;
	display: block;
	content: "";
	width: 6px;
	height: 2px;
	background: #FFFFFF;
	-webkit-transform-origin: right center;
	-moz-transform-origin: right center;
	transform-origin: right center;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}
input[type="checkbox"]:checked::after {
	display: block;
	position: absolute;
	left: 8px;
	top: 12px;
	content: "";
	width: 9px;
	height: 2px;
	background: #FFFFFF;
	-webkit-transform-origin: left center;
	-moz-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-53deg);
	-moz-transform: rotate(-53deg);
	transform: rotate(-53deg);
}
input[type="radio"] {
	-webkit-appearance: none;
	appearance: none;
	position: relative;
	margin-right: 10px;
	-webkit-border-radius: 11px;
	-moz-border-radius: 11px;
	border-radius: 11px;
	border: 1px solid #4c4c4c;
	width: 20px;
	height: 20px;
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(206,206,206)), color-stop(100%, rgb(255, 255, 255)));
	background: -webkit-linear-gradient(top, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
	background: linear-gradient(to bottom, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
	vertical-align: middle;
}
.firefox input[type="radio"] {
	border: none;
	right: 1%;
	transform: scale(1.4);
	-webkit-transform: scale(1.4);
	-moz-transform: scale(1.4);
	background: none;
}
input[type="radio"]:checked {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(53, 53, 53)), color-stop(100%, rgb(143, 143, 143)));
	background: -webkit-linear-gradient(top, rgb(53, 53, 53) 0%, rgb(143, 143, 143) 100%);
	background: linear-gradient(to bottom, rgb(53, 53, 53) 0%, rgb(143, 143, 143) 100%);
}
.firefox input[type="radio"]:checked {
	background: none;
}
input[type="radio"]:checked::before {
	position: absolute;
	left: 50%;
	top: 50%;
	display: block;
	margin: -5px 0 0 -5px;
	-webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
	-moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 1);
	content: "";
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	width: 10px;
	height: 10px;
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(206,206,206)), color-stop(100%, rgb(255, 255, 255)));
	background: -webkit-linear-gradient(top, rgb(206,206,206) 0%, rgb(255, 255, 255) 100);
	background: linear-gradient(to bottom, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
}

/*

wrapper ============================================

*/
#wrapper {
	background-color: #FFFFFF;
}

/*

header ============================================

*/

#header {
	width: 100%;
	background: #FFFFFF;
	-webkit-box-shadow: 0 2px 3px rgba(0,0,0,0.15);
	-moz-box-shadow: 0 2px 3px rgba(0,0,0,0.15);
	box-shadow: 0 2px 3px rgba(0,0,0,0.15);
	position: relative;
	z-index: 10;
}

/* module-head_unit --------------- */
#header .module-head_unit {
	border-top: 3px solid #46A6CC;
	padding-top: 9px;
	padding-bottom: 9px;
	width: 100%;
	position: relative;
}
#header .module-head_unit_under {
	padding-top: 9px;
	padding-bottom: 9px;
	width: 100%;
	position: relative;
}
	#header .module-head_unit .js-menu_btn {
		display: inline-block;
		vertical-align: top;
		padding-left: 2%;
	}
	#header .module-head_unit .js-menu_btn > a {
		background: url(../../images/common/header-btn-menu.gif) no-repeat left center;
		background-size: 25px 21px;
		text-indent: -9999px;
		width: 25px;
		height: 21px;
		display: block;
		z-index: 1000;
		-webkit-tap-highlight-color:rgba(0,0,0,0);
	}
	#header .module-head_unit .js-menu_btn img {
		width: 25px;
		height: 21px;
	}
	#header .module-head_unit .logo {
		width: 81px;
		padding-left: 20px;
		display: inline-block;
		vertical-align: top;
	}
	#header .module-head_unit .logo img {

	}
	#header .module-head_unit .tel {
		display: inline-block;
		padding-top: 8px;
		padding-left: 10px;
		padding-right: 2%;
		font-size: 1.6rem;
		font-weight: 700;
		color: #0099CC;
	}
	#header .module-head_unit .title 
	{
		margin-top: 9px;
		font-size: 1.8rem;
		font-weight: 700;
		text-align: center;
		width: 100%;
		padding: 0 3%;
		display: inline-block;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#header .module-head_unit .title::before {
		background: no-repeat left 0;
		width: 24px;
		height: 28px;
		display: inline-block;
		padding-right: 3px;
		vertical-align: middle;
	}
	#header .module-head_unit .title.flights::before {
		content: "";
		background-image: url(../../images/common/icn-category_flights.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.hotels::before {
		content: "";
		background-image: url(../../images/common/icn-category_hotels.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.packages::before {
		content: "";
		background-image: url(../../images/common/icn-category_packages.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.activities::before {
		content: "";
		background-image: url(../../images/common/icn-category_activities.png);
		background-position: 0 -2px;
		background-size: 24px;
	}
	#header .module-head_unit .title.railpass::before {
		content: "";
		background-image: url(../../images/common/icn-category_railpass.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.mypage::before {
		content: "";
		background-image: url(../../images/common/icn-profile_mypage.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.cart::before {
		content: "";
		background-image: url(../../images/common/icn-profile_cart.png);
		background-size: 24px;
	}
	#header .module-head_unit .title.flighthotel::before {
		width: 42px;
		height: 28px;
		content: "";
		background-image: url(../../images/common/header-icn-flighthotel.png);
		background-size: 42px 21px;
	}
	#header .module-head_unit .title.dynamicpackage::before {
		width: 42px;
		height: 28px;
		padding-right: 5px;
		content: "";
		background-image: url(../../images/common/header-icn-dynamicpackage.png);
		background-size: 42px 21px;
	}
	#header .module-head_unit .title .number {
		font-size: 2.1rem;
		color: #FF0033;
	}
	#header .module-head_unit .close {
		position: absolute;
		top: 0;
		right: 0;
		margin-top: 10px;
		margin-right: 2%;
		display: inline-block;
	}
	#header .module-head_unit .close > a {
		padding: 5px;
		display: inline-block;
	}
	#header .module-head_unit.ext-ttl_left {
		text-align: left;
	}
	#header .module-head_unit.ext-ttl_left .title {
		display: inline-block;
		text-align: left;
		width: 85%;
		margin-left: 3%;
	}


/*

contents ============================================

*/

#contents {
	min-height: 345px;
	padding-bottom: 15px;
	background: #FFFFFF;
}

/* Text --------------- */

#main p {
	line-height: 140%;
	font-size: 1.2rem;
}
.txt-notice {
	color: #F03;
}
.txt-notice.ext-rate {
	display: block;
	color: #F03;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.2;
}
.txt-before {
	display: block;
	color: #333 !important;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.2;
}
.txt-before s {
	text-decoration: line-through;
}
.txt-right {
	text-align: right;
}
.txt-center {
	text-align: center;
}

/* main table --------------- */

#main table {
	border-bottom: 1px solid #CCCCCC;
	width: 100%;
}
	#main table th,
	#main table td {
		border-top: 1px solid #CCCCCC;
		padding: 6px 3%;
		font-size: 1rem;
		line-height: 140%;
	}
	#main table th {
		font-weight: 700;
		background: #EEEEEE;
		vertical-align: middle;
		border-left: 1px solid #CCCCCC;
	}
	#main table td+th {
		border-left: none;
	}
	#main table td {
		background: #fff;
		border-left: none;
	}
	#main table td+td {
		border-left: 1px solid #CCCCCC;
	}
	.firefox #main table tr td {
		border-left: 1px solid #CCCCCC;
	}
	.firefox #main table tr th+td {
		border-left: none;
	}
	#main table th:first-child,
	#main table td:first-child {
		border-left: none;
	}
	#main table tr.ext-theader th {
		color: #fff;
		font-size: 1.1rem;
		text-align: center;
		background: #7FBACF;
		font-weight: 700;
		padding: 6px 3%;
		border-left: 1px solid #fff;
	}
	#main table tr.ext-theader th:first-child {
		border-left: none;
	}
	#main table tr.ext-theader+tr th,
	#main table tr.ext-theader+tr td {
		border-top: none;
	}

#main table.ext-distinguish {
	width: 100%;
	border-bottom: none;
}
	#main table.ext-distinguish th,
	#main table.ext-distinguish td {
		border-top: 1px dotted #999999;
		padding: 6px 0;
		font-size: 1.2rem;
		line-height: 140%;
	}
	#main table.ext-distinguish tr:first-of-type th,
	#main table.ext-distinguish tr:first-of-type td {
		border-top: none;
	}
	#main table.ext-distinguish th {
		font-weight: 700;
		background: #fff;
		border-left: none;

	}
	#main table.ext-distinguish td {
		background: #fff;
		padding-left: 6%;
		border-left: none;
	}
	#main table.ext-distinguish td+td {
		border-left: none;
	}
	.firefox #main table.ext-distinguish tr td {
		border-left: none;
	}

/* input.css copy module-form_list */
#main .module-form_list li.border_on {
	border-top: 1px dotted #999999;
}
#main .module-form_list .credit_card table {
    margin-top:0;
    border:0;
}
#main .module-form_list .credit_card table td {
    border:0;
}

/* title --------------- */
.ttl-border {
	font-size: 1.8rem;
	border-top: 2px solid #333;
	padding: 10px 3% 0;
	line-height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
	.ttl-border+* {
		margin-top: 12px;
	}
	.ttl-border.ext-cancel {
		border-top: 4px solid #EE2B28;
		color: #EE2B28;
	}

.ttl-belt {
	background: #7FBACF;
	color: #fff;
	padding: 8px 3%;
	font-size: 1.6rem;
	line-height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
	.ttl-belt.ext-alter {
		background: #EDEDED;
		color: #333;
	}
	.ttl-belt.ext-mini_size {
		padding-top: 5px;
		padding-bottom: 5px;
		font-size: 1.2rem;
	}
	.ttl-belt.ext-point {
		font-weight: 700;
	}
	.ttl-border.ext-side_obj {
		position: relative;
		padding-right: 8%;
	}
	.ttl-border.ext-side_obj::after {
		content: '';
		display: block;
		width: 24px;
		height: 25px;
		position: absolute;
		top: 0;
		right: 0;
		padding: 8px 2%;
		background: url(../../images/common/btn-section_detail.gif) no-repeat 50% 50%;
		background-size: 24px 25px;
	}
	.ttl-border.ext-side_obj.open::after {
		background: url(../../images/common/btn-section_detail_open.gif) no-repeat 50% 50%;
		background-size: 24px 25px;
	}

.ttl-point {
	color: #333333;
	padding: 10px 3%;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* button --------------- */

.btn-submit,
.btn-assist,
.btn-inline,
.btn-decline {
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
	text-shadow: -1px -1px 0 rgba(0,0,0,0.2);
	text-decoration: none;
	text-align: center;
	padding: 15px 8px;
	border: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display: inline-block;
	-webkit-box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);
	-moz-box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);
	box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);
	line-height: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/* button > btn-submit --------- */
.btn-submit {
	background: rgba(248, 119, 118, 1);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(248, 119, 118, 1)), color-stop(100%,rgba(246, 73, 114, 1)));
	background: -webkit-linear-gradient(top, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
	background: linear-gradient(to bottom, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
}
	.btn-submit.ext-disable {
		background: rgba(246, 73, 114, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(248, 119, 118, 0.5)), color-stop(100%,rgba(246, 73, 114, 0.5)));
		background: -webkit-linear-gradient(top, rgba(248, 119, 118, 0.5) 0%,rgba(246, 73, 114, 0.5) 100%);
		background: linear-gradient(to bottom, rgba(248, 119, 118, 0.5) 0%,rgba(246, 73, 114, 0.5) 100%);
	}

/* button > btn-assist --------- */
.btn-assist {
	background: rgba(8, 135, 183, 1);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(10, 159, 214, 1)), color-stop(100%,rgba(8, 135, 183, 1)));
	background: -webkit-linear-gradient(top, rgba(10, 159, 214, 1) 0%,rgba(8, 135, 183, 1) 100%);
	background: linear-gradient(to bottom,  rgba(10, 159, 214, 1) 0%,rgba(8, 135, 183, 1) 100%);
}
	.btn-assist.ext-disable {
		background: rgba(8, 135, 183, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(10, 159, 214, 0.5)), color-stop(100%,rgba(8, 135, 183, 0.5)));
		background: -webkit-linear-gradient(top, rgba(10, 159, 214, 0.5) 0%,rgba(8, 135, 183, 0.5) 100%);
		background: linear-gradient(to bottom,  rgba(10, 159, 214, 0.5) 0%,rgba(8, 135, 183, 0.5) 100%);
	}


/* button > btn-decline -------- */
.btn-decline {
	background: rgba(160, 160, 160, 1);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(160, 160, 160, 1)), color-stop(100%,rgba(118, 118, 118, 1)));
	background: -webkit-linear-gradient(top, rgba(160, 160, 160, 1) 0%,rgba(118, 118, 118, 1) 100%);
	background: linear-gradient(to bottom, rgba(160, 160, 160, 1) 0%,rgba(118, 118, 118, 1) 100%);
}
	.btn-decline.ext-disable {
		background: rgba(160, 160, 160, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(160, 160, 160, 0.5)), color-stop(100%,rgba(118, 118, 118, 0.5)));
		background: -webkit-linear-gradient(top, rgba(160, 160, 160, 0.5) 0%,rgba(118, 118, 118, 0.5) 100%);
		background: linear-gradient(to bottom, rgba(160, 160, 160, 0.5) 0%,rgba(118, 118, 118, 0.5) 100%);
	}

/* button >  btn-inline -------- */
.btn-inline {
	min-width: 70px;
	padding: 10px 8px;
	font-size: 1.3rem;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background: rgba(8, 135, 183, 1);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(10, 159, 214, 1)), color-stop(100%,rgba(8, 135, 183, 1)));
	background: -webkit-linear-gradient(top, rgba(10, 159, 214, 1) 0%,rgba(8, 135, 183, 1) 100%);
	background: linear-gradient(to bottom,  rgba(10, 159, 214, 1) 0%,rgba(8, 135, 183, 1) 100%);
}
	.btn-inline.ext-disable {
		background: rgba(8, 135, 183, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(10, 159, 214, 0.5)), color-stop(100%,rgba(8, 135, 183, 0.5)));
		background: -webkit-linear-gradient(top, rgba(10, 159, 214, 0.5) 0%,rgba(8, 135, 183, 0.5) 100%);
		background: linear-gradient(to bottom,  rgba(10, 159, 214, 0.5) 0%,rgba(8, 135, 183, 0.5) 100%);
	}
	.btn-inline.ext-submit {
		background: rgba(248, 119, 118, 1);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(248, 119, 118, 1)), color-stop(100%,rgba(246, 73, 114, 1)));
		background: -webkit-linear-gradient(top, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
		background: linear-gradient(to bottom, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
	}
	.btn-inline.ext-submit.ext-disable {
		background: rgba(248, 119, 118, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(248, 119, 118, 0.5)), color-stop(100%,rgba(246, 73, 114, 0.5)));
		background: -webkit-linear-gradient(top, rgba(248, 119, 118, 0.5) 0%,rgba(246, 73, 114, 0.5) 100%);
		background: linear-gradient(to bottom, rgba(248, 119, 118, 0.5) 0%,rgba(246, 73, 114, 0.5) 100%);
	}
	.btn-inline.ext-decline {
		background: rgba(160, 160, 160, 1);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(160, 160, 160, 1)), color-stop(100%,rgba(118, 118, 118, 1)));
		background: -webkit-linear-gradient(top, rgba(160, 160, 160, 1) 0%,rgba(118, 118, 118, 1) 100%);
		background: linear-gradient(to bottom, rgba(160, 160, 160, 1) 0%,rgba(118, 118, 118, 1) 100%);
	}
	.btn-inline.ext-decline.ext-disable {
		background: rgba(160, 160, 160, 0.5);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(160, 160, 160, 0.5)), color-stop(100%,rgba(118, 118, 118, 0.5)));
		background: -webkit-linear-gradient(top, rgba(160, 160, 160, 0.5) 0%,rgba(118, 118, 118, 0.5) 100%);
		background: linear-gradient(to bottom, rgba(160, 160, 160, 0.5) 0%,rgba(118, 118, 118, 0.5) 100%);
	}

/* button > btn-pager --------- */
.btn-next_page {
	font-size: 1.5rem;
	color: #333;
	text-decoration: none;
	text-align: center;
	padding: 15px 8px;
	border: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	display: inline-block;
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(80%,#efefef), color-stop(100%,#e5e5e5));
	background: -webkit-linear-gradient(top,  #ffffff 0%,#efefef 80%,#e5e5e5 100);
	background: linear-gradient(to bottom,  #ffffff 0%,#efefef 80%,#e5e5e5 100%);
	border: 1px solid #CECECE;
	border-radius: 4px;
	color:#333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/* button > btn-detail --------- */
.btn-detail {
	float: right;
	line-height: 35px;
	display: inline-block;
	text-decoration: underline;
}
	.btn-detail::before {
		content: "";
		display: inline-block;
		background: url(../../images/common/icn-circle_plus.png) no-repeat left center;
		background-size: 15px;
		width: 15px;
		height: 15px;
		padding-left: 5px;
		vertical-align: middle;
	}
	.btn-detail.active::before {
		content: "";
		background: url(../../images/common/icn-circle_minus.png) no-repeat left center;
		background-size: 15px;
	}
/* button > btn-delete --------- */
.btn-delete {
	line-height: 35px;
	display: inline-block;
	text-decoration: underline;
}
	.btn-delete::before {
		content: "";
		display: inline-block;
		background: url(../../images/common/icn-delete.png) no-repeat left center;
		background-size: 15px;
		width: 15px;
		height: 15px;
		padding-left: 5px;
		vertical-align: middle;
	}

/* module-layout_button -------- */
.module-layout_button {
	margin-top: 15px;
	text-align: center;
}
	.module-layout_button *[class*="btn-"] {
		width: 40%;
		min-width: 130px;
	}
	.module-layout_button .btn-submit,
	.module-layout_button .btn-next_page {
		width: 80%;
		min-width: 220px;
	}
	.module-layout_button.ext-column2 {
		margin-top: 15px;
		display: table;
		width: 100%;
	}
	.module-layout_button.ext-column2 > span {
		width: 50%;
		display: table-cell;
		vertical-align: top;
	}
	.module-layout_button.ext-column2 > span:nth-of-type(1) {
		text-align: right;
	}
	.module-layout_button.ext-column2 > span:nth-of-type(2) {
		text-align: left;
	}
	.module-layout_button.ext-column2 > span a {
		width: 81%;
		min-width: 130px;
	}
	.module-layout_button.ext-column2 > span:nth-of-type(1) a {
		margin-right: 3%;
	}
	.module-layout_button.ext-column2 > span:nth-of-type(2) a {
		margin-left: 3%;
	}
	.module-layout_button.ext-column3 {
		margin: 15px 3.5% 0;
		display: table;
		width: 93%;
	}
	.module-layout_button.ext-column3 > span {
		width: 27%;
		display: table-cell;
		vertical-align: top;
		padding-left: 2%;
		padding-right: 2%;
	}
	.module-layout_button.ext-column3 > span a {
		width: 100%;
		min-width: 90px;
	}

/* form parts --------------- */

input[type="text"].input-custom,
input[type="password"].input-custom,
input[type="email"].input-custom,
input[type="tel"].input-custom {
	border: 1px solid #CECEBF;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	background: #FEFFDF;
	-webkit-box-shadow: inset 1px 1px 0 0 #f1f2d4;
	box-shadow: inset 1px 1px 0 0 #f1f2d4;
	padding: 12px 2%;
	min-height:45px;
	line-height: 1;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.5rem;
	outline: none;
	overflow: hidden;
}

input[type="text"].input-custom.ext-full_size,
input[type="password"].input-custom.ext-full_size {
	width: 100%;
	display: block;
}
input[type="text"].input-bg_white {
	background-color: #fff;
}

.inner_icn {
	position: relative;
}
	.inner_icn input[type="text"].input-custom,
	.inner_icn input[type="password"].input-custom,
	.inner_icn input[type="tel"].input-custom,
	input[type="email"].input-custom {
		padding-right: 40px;
	}

/* select parts  ------------------------------*/

.select-custom {
	position: relative;
	/*overflow: hidden;*/
	display:inline-block;
	width: 100%;
	max-width: 100%;
	min-height: 45px;
	line-height: 45px;
	background: #efefef;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(80%,#efefef), color-stop(100%,#e5e5e5));
	background: -webkit-linear-gradient(top,  #ffffff 0%,#efefef 80%,#e5e5e5 100);
	background: linear-gradient(to bottom,  #ffffff 0%,#efefef 80%,#e5e5e5 100%);
	border: 1px solid #CECECE;
	border-radius: 4px;
	color:#333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
	.select-custom select {
		-webkit-appearance: none;
		appearance: none;
		width: 100%;
		font-size: 1.5rem;
		color: #333333;
		background: none;
		border: none;
		outline: none;
		background-color: rgba(255,255,255,0);
		padding: 0 25px 0 15px;
		margin: 0;
		z-index: 2;
	}

	.firefox .select-custom select {
		padding-right: 5px;
	}
	.select-custom input{
		-webkit-appearance: none;
		appearance: none;
		width: 100%;
		font-size: 1.5rem;
		color: #333333;
		background: none;
		border: none;
		outline: none;
		background-color: rgba(255,255,255,0);
		padding: 10px 25px 10px 15px;
		margin: 0;
		z-index: 2;
	}
	.select-custom::after {
		content: "";
		background: url(../../images/common/icn-select_arrow.png) no-repeat;
		background-size: 10px 5px;
		position: absolute;
		right: 9px;
		top: 50%;
		margin-top: -2.5px;
		width: 10px;
		height: 5px;
		z-index: 1;
	}
	.firefox label.select-custom::after {
		content: none;
		display: none;
	}

/* select parts > ext-from_city ------------------------*/
	label.select-custom.ext-from_city select {
		padding-left: 40px;
		color: #888888;
	}
	label.select-custom.ext-from_city::before {
		content: "";
		background: url(../../images/common/icn-from_city.png) no-repeat;
		background-size: 23px;
		position: absolute;
		display: block;
		top: 50%;
		left: 10px;
		margin-top: -11.5px;
		width: 23px;
		height:23px;
		z-index: 1;
	}

/* select parts > ext-calendar ------------------------*/
	label.select-custom.ext-calendar input {
		padding-left: 35px;
		vertical-align: middle;
		line-height: 1;
		min-height: 43px;
	}
	label.select-custom.ext-calendar::before {
		content: "";
		background: url(../../images/common/icn-calendar.png) no-repeat;
		background-size: 18px;
		position: absolute;
		display: block;
		top: 50%;
		left: 10px;
		margin-top: -9px;
		width: 18px;
		height:18px;
		z-index: 1;
	}
/* select parts > ext-night ------------------------*/
	label.select-custom.ext-night:before {
		position: absolute;
		top: 50%;
		left: 10px;
		z-index: 1;
		margin-top: -8px;
		width: 15px;
		height: 18px;
		background: url(../../images/common/icn-night.png) no-repeat left center;
		background-size: 15px;
		content: "";
	}
/* select parts > ext-room ------------------------*/
	label.select-custom.ext-room:before {
		position: absolute;
		top: 50%;
		left: 10px;
		z-index: 1;
		margin-top: -5px;
		width: 21px;
		height: 10px;
		background: url(../../images/common/icn-room.png) no-repeat left center;
		background-size: 21px;
		content: "";
	}
	label.select-custom.ext-night,
	label.select-custom.ext-room {
		padding-left: 20px;
	}
	label.select-custom.ext-night select,
	label.select-custom.ext-room select {
		color: #aaa;
	}
/* select parts > ext-class ------------------------*/
	label.select-custom.ext-class select {
		padding-left: 40px;
		color: #aaa;
	}
	label.select-custom.ext-class::before {
		content: "";
		background: url(../../images/common/icn-class.png) no-repeat;
		background-size: 17px;
		position: absolute;
		display: block;
		top: 50%;
		left: 10px;
		margin-top: -9px;
		width: 17px;
		height:17px;
		z-index: 1;
	}
/* select parts > ext-airline ------------------------*/
	label.select-custom.ext-airline select {
		padding-left: 40px;
		color: #aaa;
	}
	label.select-custom.ext-airline::before {
		content: "";
		background: url(../../images/common/icn-airline.png) no-repeat;
		background-size: 20px;
		position: absolute;
		display: block;
		top: 50%;
		left: 10px;
		margin-top: -10px;
		width: 20px;
		height:20px;
		z-index: 1;
	}
/* select parts > ext-alliance ------------------------*/
	label.select-custom.ext-alliance select {
		padding-left: 40px;
		color: #aaa;
	}
	label.select-custom.ext-alliance::before {
		content: "";
		background: url(../../images/common/icn-alliance.png) no-repeat;
		background-size: 17px;
		position: absolute;
		display: block;
		top: 50%;
		left: 10px;
		margin-top: -9px;
		width: 17px;
		height:17px;
		z-index: 1;
	}

/* module-date_select ------------------------------*/
.module-date_select {
}
	.module-date_select ul {
		width: 100%;
	}
	.module-date_select ul li {
		float: left;
	}
	.module-date_select ul li:nth-of-type(1) {
		width: 24%;
		margin-left : 1%;
	}
	.module-date_select ul li:nth-of-type(2) {
		width: 38%;
		margin-left : 3.5%;
	}
	.module-date_select ul li:nth-of-type(3) {
		width: 30%;
		margin-left : 3.5%;
	}
	.module-date_select label.select-custom {
		width: 100%;
		min-width: 90px;
		display: inline-block;
	}
	.module-date_select label.select-custom select {
		color: #888888;
		padding-left: 8px;
		padding-right: 6px;
	}
	.module-date_select label.select-custom::after {
		right: 8px;
	}
	.module-date_select ul li:nth-of-type(1) label.select-custom {
		min-width: 70px;
	}
	.module-date_select ul li:nth-of-type(2) label.select-custom {
		min-width: 110px;
	}
	.module-date_select ul li:nth-of-type(3) label.select-custom {
		min-width: 87.5px;
	}

/* module-tab_select ------------------------------*/
#main .module-tab_select {
}
	#main .module-tab_select > ul {
		display: table;
		width: 100%;
	}
	#main .module-tab_select > ul > li {
		display: table-cell;
		width: 50%;
		text-align: center;
		background: #ffffff;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(60%,#efefef), color-stop(100%,#e5e5e5));
		background: -webkit-linear-gradient(top, #ffffff 0%,#efefef 60%,#e5e5e5 100);
		background: linear-gradient(to bottom, #ffffff 0%,#efefef 60%,#e5e5e5 100%);
		border-left: 1px solid #FFFFFF;
	}
	#main .module-tab_select.ext-col3 > ul > li {
		width: 33%;
	}
	#main .module-tab_select > ul > li:first-child {
		border: none;
	}
	#main .module-tab_select > ul > li a {
		text-decoration: none;
		display: block;
		padding: 10px 5%;
		font-size: 1.4rem;
		color: #555555;
	}
	#main .module-tab_select > ul > li.select {
		background: #929292;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#929292), color-stop(60%,#747474), color-stop(100%,#676767));
		background: -webkit-linear-gradient(top, #929292 0%,#747474 60%,#676767 100);
		background: linear-gradient(to bottom, #929292 0%,#747474 60%,#676767 100%);
	}
	#main .module-tab_select > ul > li.select a {
		position: relative;
		font-size: 1.4rem;
		color: #FFFFFF;
	}
	#main .module-tab_select > ul > li.select a::after {
		content: "";
		background: url(../../images/common/icn-tab_arrow.png) no-repeat;
		background-size: 12px 5px;
		position: absolute;
		left: 50%;
		bottom: 0;
		margin-left: -6px;
		margin-bottom: -4px;
		width: 12px;
		height: 5px;
		z-index: 1;
	}
	#main .module-tab_select > ul > li a::before {
		content: "";
		display: inline-block;
		vertical-align: text-bottom;
		width: 15px;
		height: 15px;
		padding-right: 5px;
	}
	#main .module-tab_select > ul > li.info a::before {
		background: url(../../images/common/icn-tab_info.png) no-repeat;
		background-size: 15px;
	}
	#main .module-tab_select > ul > li.info.select a::before {
		background: url(../../images/common/icn-tab_info_select.png) no-repeat;
		background-size: 15px;
	}
	#main .module-tab_select > ul > li.map a::before {
		background: url(../../images/common/icn-tab_map.png) no-repeat;
		background-size: 15px;
	}
	#main .module-tab_select > ul > li.map.select a::before {
		background: url(../../images/common/icn-tab_map_select.png) no-repeat;
		background-size: 15px;
	}
	#main .module-tab_select > ul > li.share a::before {
		background: url(../../images/common/icn-tab_share.png) no-repeat;
		background-size: 15px;
	}
	#main .module-tab_select > ul > li.share.select a::before {
		background: url(../../images/common/icn-tab_share_select.png) no-repeat;
		background-size: 15px;
	}

/* module-head_select + module-foot_btn ------------*/

#main .module-head_select {
}
	#main .module-head_select ul {
		margin: 0 2px 6px;
		text-align: right;
	}
	#main .module-head_select ul li {
		display: inline-block;
		margin-top: 5px;
		position: relative;
	}
	#main .module-head_select .select-custom,
	#main .module-foot_btn .select-custom {
		width: auto;
		min-width: 70px;
		font-size: 1.4rem;
		line-height: 100%;
		vertical-align: middle;
		min-height: 35px;
		line-height: 35px;
	}
	
	#main .module-head_select label.select-custom select {
		padding: 10px 25px 0 15px;
		color: #333;
		font-size: 1.4rem;
	}
	.firefox #main .module-head_select label.select-custom select {
		padding-right: 5px;
	}
	#main .module-head_select .select-custom::after,
	#main .module-foot_btn .select-custom::after {
		background: url(../../images/common/icn-main_head_arrow.png) no-repeat;
		background-size: 10px 6.5px;
		right: 8px;
		margin-top: -3.25px;
		width: 10px;
		height: 6.5px;
	}
	#main .module-head_select a.select-custom,
	#main .module-foot_btn a.select-custom {
		display: inline-block;
		text-align: left;
		vertical-align: middle;
		color: #333;
		font-size: 1.4rem;
		min-height: 36px;
		line-height: 36px;
		padding: 0 25px 0 15px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		text-decoration: none;
	}
	#main .module-head_select a.select-custom.active,
	#main .module-foot_btn a.select-custom {
		background: #efefef;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgb(206,206,206)), color-stop(100%, rgb(255, 255, 255)));
		background: -webkit-linear-gradient(top, rgb(206,206,206) 0%, rgb(255, 255, 255) 100);
		background: linear-gradient(to bottom, rgb(206,206,206) 0%, rgb(255, 255, 255) 100%);
	}

	#main .module-foot_btn {
		text-align: right;
		width: 100%;
		padding: 20px 2px 0;
	}
	#main .module-foot_btn a.select-custom::after {
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		transform: rotate(180deg);
	}

/* module-filter_list -------------*/

#main .module-filter_list {
	margin-top: 10px;
	border-bottom: 1px solid #CCCCCC;
}
	#main .ttl-belt+.module-filter_list {
		margin-top: 0;
	}
	#main .module-filter_list > li {
		border-top: 1px solid #CCCCCC;
	}
	#main .module-filter_list li > a {
		color: #333333;
		text-decoration: none;
		padding: 15px;
		background: #EDEDED;
		display: block;
	}
	#main .module-filter_list > li > ul > li a {
		background: #FFFFFF;
	}
	#main .module-filter_list.ext-city > li > ul > li a {
		background: url(../../images/common/icn-item_select.png) no-repeat 98% center;
		-webkit-background-size: 18px 18px;
		background-size: 18px 18px;
	}
	#main .module-filter_list > li > ul > li {
		border-top: 1px dotted #CCCCCC;
	}
	#main .module-filter_list > li > ul > li:first-of-type {
		border-top: 1px solid #CCCCCC;
	}
	#main .module-filter_list > li > ul > li label {
		padding: 15px;
		padding-right: 10%;
		line-height: 1.3;
		display: block;
		position: relative;
		vertical-align: middle;
	}
	#main .module-filter_list > li > ul > li label.checked {
		background-color: rgba(191,225,237,1);
	}
	#main .module-filter_list > li > ul > li label input[type="checkbox"] {
		display: block;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -10px;
		margin-right: 2%;
	}
	#main .module-filter_list > li label.select-custom  {
		margin: 10px 2%;
		width: 96%;
	}
	#main .module-filter_list .scope {
		margin: 0 2%;
		width: 96%;
		display:table;
	}
	#contents #main .module-filter_list .scope > span {
		width: 47%;
		display:table-cell;
	}
	#contents #main .module-filter_list .scope > span:nth-of-type(2) {
		text-align: center;
		width: 6%;
		padding: 0 10px;
	}
	#main .module-filter_list .scope > span label.select-custom {
		margin: 10px 0;
		width: 100%;
	}


/* module-menu_list -------------------------------- */
#main .module-menu_list {
	width: 100%;
}
	#main .module-menu_list span {
		margin-left: 0.5em;
	}
	#main .module-menu_list ul {
		border-bottom: 1px solid #CCCCCC;
	}
	#main .module-menu_list ul li {
		border-top: 1px solid #CCCCCC;
	}
	#main .module-menu_list ul li a {
		position: relative;
		color: #333333;
		padding: 15px;
		background: #EDEDED;
		display: block;
		text-decoration: none;
	}	
	#main .module-menu_list ul li a::after{
		content: '';
		background: url(../../images/common/icn-common_arrow.png) no-repeat right center;
		background-size: 16px 11px;
		display: block;
		position: absolute;
		top: 50%;
		right: 2%;
		margin-top: -5.5px;
		margin-right: 2px;
		width: 16px;
		height: 11px;
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		transform: rotate(90deg);
	}

/* .module-add_icn --------*/
	#main .module-add_icn {
		margin-top: 10px;
		position: relative;
	}
	#main .module-add_icn {
		margin-left: 30px;
	}
	#main .module-add_icn a::before,
	#main .module-add_icn span::before {
		content: "";
		background: no-repeat left center;
		background-size: 20px;
		display: block;
		vertical-align: middle;
		position: absolute;
		top: -2px;
		left: 0;
		margin-top: 0;
		margin-left: -30px;
		margin-right: 8px;
		width: 20px;
		height: 20px;
		z-index: 1;
	}
	#main .module-add_icn .question::before {
		background-image: url(../../images/common/icn-question.png);
	}
	#main .module-add_icn .exclamation::before {
		background-image: url(../../images/common/icn-exclamation.png);
	}

/* .module-option_list --------*/
#main .module-option_list {
}
	#main .module-option_list li {
		margin-top: 10px;
		font-size: 1.2rem;
	}
	#main .module-option_list li label {
		color: #09C;
		text-decoration: underline;
		vertical-align: baseline;
	}
	#main .module-option_list li input[type="checkbox"] {
		margin-right: 10px;
	}
	.firefox #main .module-option_list li input[type="checkbox"] {
		margin-left: 3px;
	}
	#main .module-option_list .ext-emphasise {
		margin-top: 10px;
		margin-left: -2%;
		width: 100%;
		padding: 5px 2%;
		background-color: #FFE7E4;
	}
	#main .module-option_list .ext-emphasise label {
		text-decoration: none;
		color: #333333;
	}

/* input parts > .module-search_input --------*/
#main .module-search_input {
	display: table;
	width: 100%;
}
	#main .module-search_input + * {
		margin-top: 10px
	}
	#main .module-search_input span {
		display: table-cell;
		width: auto;
	}
	#main .module-search_input .btn {
		display: table-cell;
		text-align: center;
		width: 45px;
	}
	#main .module-search_input .btn a {
		display: inline-block;
		width: 43px;
		height: 43px;
		vertical-align: middle;
		line-height: 43px;
		border: 1px solid #CECECE;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		border-radius: 4px;
		background: #ffffff;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(80%,#efefef), color-stop(100%,#e5e5e5));
		background: -webkit-linear-gradient(top,  #ffffff 0%,#efefef 80%,#e5e5e5 100);
		background: linear-gradient(to bottom,  #ffffff 0%,#efefef 80%,#e5e5e5 100%);
	}
	#main .module-search_input .btn img {
		vertical-align: middle;
	}

	#main .module-search_input input[type="text"].input-custom {
		font-size: 1.5rem;
		width: 98%;
		margin-right: 2%;
	}

/* input parts > .module-search_form --------*/
#main .module-search_form {
}
	#main .module-search_form.ext-top_adjust {
		margin-top: 4px;
		border-top: 1px solid #CECECE;
	}
	#main .module-search_form > * {
		margin: 10px 2% 0;
		width: 96%;
	}
	#main .module-search_form > .txt-notice {
		margin-top: 5px;
	}
/* module-map -------------------------------*/
	#main .module-map .detail {
		margin-top: 10px;
		padding: 15px 3%;
		background: #FFF6B9;
	}
	#main .module-map .detail .title {
		font-size: 1.9rem;
	}
	#main .module-map .detail ul li {
		display: inline-block;
		margin-top: 7px;
		padding-right: 6px;
	}
	#main .module-map .detail ul li img {
		vertical-align: top;
	}
	#main .module-map .detail ul li span {
		display: inline-block;
		margin-top: 3px;
		margin-right: 3px;
		padding: 5px;
		background: #7FBACF;
		color: #fff;
		white-space: nowrap;
		font-size: 85%;
		line-height: 100%;
	}
	
/* module-share  ------------------------------*/
#main .module-share {
	margin-top: 10px;
	width: 100%;
	text-align: left;
}
	#main .module-share .broaden {
		width: 96%;
		padding: 0 2%;
		display: table;
	}
	#main .module-share .broaden .img {
		display: table-cell;
		width: 60px;
		vertical-align: middle;
	}
	#main .module-share .broaden .txt {
		display: table-cell;
		width: auto;
		font-size: 93.5%;
		font-weight: 700;
		padding: 10px 5%;
		line-height: 140%;
	}
	#main .module-share ul {
		margin-top: 10px;
		padding-top: 3px;
		border-top: 1px dashed #aaa;
	}
	#main .module-share ul li {
		width: 100%;
		border-bottom: 1px solid #aaa;
	}
	#main .module-share ul li a {
		display: block;
		padding: 15px 5%;
		color: #333;
		text-decoration: none;
	}
	#main .module-share ul li a img {
		vertical-align: middle;
		margin-right: 5px;
	}


/* module-data_list -------------------------*/
#main .module-data_list {
}
	#main .module-data_list li {
		padding: 4px 0;

	}
	#main .module-data_list li .data {
		display: table-cell;
		float: left;
		font-size: 1.2rem;
		font-weight: 700;
	}
	#main .module-data_list li .data span {
		color: #0099CC;
	}
	#main .module-data_list li .body {
		padding-left: 5px;
		display: table-cell;
		line-height: 1;
		background: #fff;
	}
	#main .module-data_list li p {
		padding-left: 5px;
		display: table-cell;
	}
	#main .module-data_list li p span {
		color: #0099CC;
	}
	#main .module-data_list li p:empty {
		height: 1.6rem;
	}
	#main .module-data_list.ext-bottom_line li {
		border-bottom: 1px dotted #999999;
	}


/* module-item_list -------------------------*/
#main .module-item_list {
}

/* module-item ------------------------------*/
#main .module-item {
	background: url(../../images/common/bg-item_shadow.jpg) no-repeat left bottom;
	background-size: 100% 3px;
	padding: 3px 0;
	margin-top: 12px;
}
	#main .module-item > a {
		color: #333;
		text-decoration: none;
	}
	#main .module-item .info dl {
		padding: 0 3%;
	}
	#main .plain_box {
		margin-top: 10px;
		width: 100%;
		padding: 0 3%;
		display: table;
	}
	#main .module-item .info .plain_box .img {
		display: table-cell;
		width: 20%;
		vertical-align: top;
	}
	#main .module-item .info .plain_box .img img {
		max-width: 180px;
		width: 100%;
		height: auto;
		margin-top: 3px; 
	}
	#main .module-item .info .plain_box .txt,
	#main .module-item .info .plain_box .data_list {
		display: table-cell;
		vertical-align: top;
		padding-left: 3%;
		width: 80%;
	}
	#main .module-item .info .plain_box .data_list li {
		padding: 2px 0 0;
	}
	#main .module-item .btn_unit {
		margin-top: 10px;
		padding: 5px 3% 7px;
		background: #EEEEEE;
	}
	#main .btn_unit a {
		margin-right:10px;
	}
	#main .btn_unit a:last-of-type {
		margin-right: 0;
	}
	#main .module-item .btn_unit .btn-detail {
		float: none;
	}
	#main .module-item .btn_unit .btn-detail:only-child {
		float: right;
	}
	#main .module-item .btn_unit .btn-inline.ext-submit:last-of-type {
		float: right;
	}

/* module-stepflow -------------------------------- */	
#main .module-stepflow {
	width: 100%;
	margin-bottom: 9px;
	padding: 0 3%;
}
	#main .module-stepflow + .ttl-belt {
		margin-top: 0;
	}
	#main .module-stepflow li {
		display: inline-block;
		width: 32%;
		text-align: center;
		vertical-align: middle;
		margin-right: 2%;
		position: relative;
		background: #CCCCCC;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		border-bottom:1px solid #B2B2B2;
	}
	#main .module-stepflow li:last-of-type {
		margin-right: 0;
	}
	#main .module-stepflow li span {
		position: relative;
		display: inline-block;
		vertical-align: middle;
		width: 100%;
		color: #999;
		line-height: 1.4;
		padding: 12px 12px 12px 3px;
		text-shadow: 1px 1px 0 #fff;
		font-size: 1.2rem;
		font-weight: 700;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		z-index:2;
	}
	#main .module-stepflow li.current {
		background: #2095C1;
	}
	#main .module-stepflow li.current span {
		color: #fff;
		text-shadow: -1px -1px 0 #666;
	}
	#main .module-stepflow li::after{
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		width: 19px;
		height: 100%;
		padding-bottom: 1px;
		background: #FFFFFF url(../../images/common/bg-stepflow_arrow.png) no-repeat right top;
		background-size: 19px 100%;
		z-index:1;
	}
	#main .module-stepflow li.current::after{
		content: '';
		background-image: url(../../images/common/bg-stepflow_arrow_current.png);
		background-size: 19px 100%;
	}
	#main .module-stepflow.ext-2step {
		width: 100%;
		margin: 0 auto 9px;
		text-align: center;
	}
	#main .module-stepflow.ext-2step li {
		width: 42%;
	}

/*

footer ============================================

*/

#footer {
}

/* module-foot_unit --------------- */
#footer .module-foot_unit {
}
	#footer .module-foot_unit .tel {
		padding: 5px 2%;
		font-weight: 700;
		font-size: 1.6rem;
		color: #666666;
		background: #E5E4E0;
		vertical-align: middle;
		text-align: center;
	}
	#footer .module-foot_unit .tel span {
		font-size: 2rem;
		color: #0099CC;
		margin-left: 10px;
	}
	#footer .module-foot_unit .tel + .utility {
		border-top: 1px solid #ffffff;
	}
	#footer .module-foot_unit .utility {
		display: table;
		margin: 0 auto;
		width: 100%;
		padding: 17.5px 0;
		background: #E5E4E0;
	}
	#footer .module-foot_unit .utility li {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
	}
	#footer .module-foot_unit .utility li.home, #footer .module-foot_unit .utility li.term {
		width: 33.6%;
	}
	#footer .module-foot_unit .utility li.home a::before {
		content: "";
		background: url(../../images/common/footer-icn-home.png) no-repeat left ;
		background-size: 18px;
		display: inline-block;
		vertical-align: middle;
		width: 18px;
		height: 18px;
		padding-right: 10px;
	}
	#footer .module-foot_unit .utility li.info, #footer .module-foot_unit .utility li.privacy {
		width: 39.5%;
	}
	#footer .module-foot_unit .utility li.info a::before {
		content: "";
		background: url(../../images/common/footer-icn-info.png) no-repeat;
		background-size: 18px;
		display: inline-block;
		vertical-align: middle;
		width: 18px;
		height: 18px;
		padding-right: 10px;
	}
	#footer .module-foot_unit .utility li.pc, #footer .module-foot_unit .utility li.global {
		width: 26.9%;
	}
	#footer .module-foot_unit .utility li.pc a::before {
		content: "";
		background: url(../../images/common/footer-icn-pc.png) no-repeat;
		background-size: 18px;
		display: inline-block;
		vertical-align: middle;
		width: 18px;
		height: 18px;
		padding-right: 10px;
	}
	#footer .module-foot_unit .utility li a {
		display: block;
		padding: 8px 5px;
		font-size: 1.4rem;
		color: #333333;
		text-decoration: none;
		border-left: 1px solid #BBBBBB;
		-webkit-tap-highlight-color:rgba(0,0,0,0);
	}
	#footer .module-foot_unit .utility li:first-child a {
		border-left: none;
	}
	#footer .module-foot_unit .under_bar {
		display: table;
		padding: 0 0;
		background: #46A6CB;
		width: 100%;
		min-height: 50px;
	}
	#footer .module-foot_unit .under_bar p {
		display: table-cell;
		padding: 1.5% 5px 1.5% 0;
		vertical-align: middle;
	}
	#footer .module-foot_unit .under_bar p.copyright {
		width: 82%;
		font-size: 0.9rem;
		color: #FFFFFF;
		text-align: right;
	}
	#footer .module-foot_unit .under_bar p.logo {
		width: 22%;
		min-width: 41px;
	}
	#footer .module-foot_unit .under_bar p.logo img {
		width: 82px;
	}

/* 

clearfix ============================================

*/

.clearfix {
}
	.clearfix::before,
	.clearfix::after {
		content: "";
		display: block;
		overflow: hidden;
	}
	.clearfix::after {
		clear: both;
	}
/*

common JS Plugin and CSS Animation Setting ===========================

*/

/* js-clear_val --------------- */
.js-clear_val {
	background: url(../../images/common/btn-clear.png) no-repeat center center;
	background-size: 15px;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -20px;
	width: 40px;
	height: 40px;
}

/* js-placeholder --------------- */
.js-placeholder 
{
	color: #999;
}

/* js-slidelist --------------- */
.js-slidelist {
	position: relative;
}
	.js-slidelist::after {
		content: '';
		background: url(../../images/common/icn-common_arrow.png) no-repeat right center;
		background-size: 16px 11px;
		display: block;
		position: absolute;
		top: 50%;
		right: 2%;
		margin-top: -5.5px;
		margin-right: 2px;
		width: 16px;
		height: 11px;
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		transform: rotate(180deg);
	}
	.js-slidelist.active::after {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}

/* js-filter --------------- */
.js-filter {
}
	.js-filter::after {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	.js-filter.active::after {
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		transform: rotate(180deg);
	}

/* js-overlay --------------- */
.js-overlay {
	position: fixed;
	width: 100%;
	min-width: 320px;
	height: 100%;
	left: 0;
	top: 0;
	z-index:10000;
	background: rgba(0,0,0,0.7);
}
	.js-modal_view {
		overflow-y: hidden; 
		z-index: 0;
	}
	/* .js-overlay_target----------------------------------- */
	.js-overlay_target {
		 display:none;
		 position: relative;
	}
	.js-overlay_target .ttl-default {
		font-size: 1.4rem;
	}
	.js-overlay_target .ttl-default.ext-point {
		font-size: 1.4rem;
	}
	.js-overlay_target .ttl-default + * {
	padding-top: 12px;
	}
	.js-overlay_target .txt {
		font-size: 1.2rem;
		line-height: 120%;
	}
	.js-overlay .window {
		position: absolute;
		top: 50%;
		left: 50%;
		z-index: 1200;
		margin-left: -48.5%;
		width: 97%;
		padding: 3% 2%;
		height: auto;
		overflow-x: hidden;
		border-radius: 2px;
		background: #FFF;
		-webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
		box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	}
	.js-overlay.ext-loading .window {
		position: fixed;
		top: 50%;
		margin-left: -48.5%;
		width: 97%;
		padding: 3% 2%;
		text-align: center;
		background: #fff;
		border: 1px solid #E0E0E0;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
	}
	.js-overlay .close {
		position: absolute;
		right: -3px;
		top:-5px;
		color: #fff;
	}
	.js-overlay .close a {
		color: #fff;
		display: block;
		padding: 5px;
	}
	.js-overlay.ext-loading .window .logo {
	}
	.js-overlay.ext-loading .window .txt {
		margin-top: 12px;
		color: #999;
		font-size: 2rem;
		line-height: 100%;
	}
	.js-overlay.ext-loading .window .progress {
		margin-top: 25px;
	}
	.js-overlay.ext-loading .window .image {
		margin-top: 29px;
		padding-bottom: 10px;
	}
	.js-overlay.ext-calendar .window {
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1200;
		margin-left: 1.5%;
		margin-right: 1.5%;
		width: 97%;
		padding: 0 0 15px 0;
		height: auto;
		overflow-x: hidden;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		border-radius: 4px;
		background: #FFF;
		-webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
		box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	}
	.js-overlay.ext-calendar .window .tab_select > ul {
		display: table;
		width: 100%;
		padding: 1px 1px 0 1px;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li {
		display: table-cell;
		table-layout: fixed;
		width: 50%;
		text-align: center;
		background: #efefef;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#efefef), color-stop(100%,#d6d6d6));
		background: -webkit-linear-gradient(top, #efefef 0%,#d6d6d6 100);
		background: linear-gradient(to bottom, #efefef 0%,#d6d6d6 100%);
		border-left: 1px solid #FFFFFF;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li:first-of-type {
		-webkit-border-radius: 2px 0 0 0;
		-moz-border-radius: 2px 0 0 0;
		border-radius: 2px 0 0 0;
		border: none;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li:last-of-type {
		-webkit-border-radius: 0 2px 0 0;
		-moz-border-radius: 0 2px 0 0;
		border-radius: 0 2px 0 0;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li a {
		text-decoration: none;
		display: block;
		padding: 15px 5%;
		font-size: 1.4rem;
		color: #555555;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li.select {
		background: #929292;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#929292), color-stop(60%,#747474), color-stop(100%,#676767));
		background: -webkit-linear-gradient(top, #929292 0%,#747474 60%,#676767 100);
		background: linear-gradient(to bottom, #929292 0%,#747474 60%,#676767 100%);
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li.select a {
		font-size: 1.4rem;
		color: #FFFFFF;
		position: relative;
	}
	.js-overlay.ext-calendar .window .tab_select > ul > li.select a::after {
		content: "";
		background: url(../../images/common/icn-tab_arrow.png) no-repeat;
		background-size: 12px 5px;
		position: absolute;
		left: 50%;
		bottom: 0;
		margin-left: -6px;
		margin-bottom: -4px;
		width: 12px;
		height: 5px;
		z-index: 1;
	}
	.js-overlay.ext-calendar .window .layout_button {
		margin-top: 10px;
		text-align: center;width: 100%;
	}
	.js-overlay.ext-calendar .window .layout_button [class^="btn-"] {
		width: 30%;
		min-width: 100px;
		margin-left: 2%;
		display: inline-block;
	}
	.js-overlay.ext-calendar .window .layout_button [class^="btn-"]:first-of-type {
		margin-left: 0;
	}
	.js-overlay.ext-calendar .window .layout_button .btn-modal_submit {
		padding: 10px 8px;
		color: #ffffff;
		font-size: 1.3rem;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		background: rgba(248, 119, 118, 1);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(248, 119, 118, 1)), color-stop(100%,rgba(246, 73, 114, 1)));
		background: -webkit-linear-gradient(top, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
		background: linear-gradient(to bottom, rgba(248, 119, 118, 1) 0%,rgba(246, 73, 114, 1) 100%);
	}
	.js-overlay.ext-calendar .window .layout_button .btn-modal_close {
		padding: 10px 8px;
		color: #333333;
		font-size: 1.3rem;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		background: #d6d6d6;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d6d6d6), color-stop(100%,#b8b8b8));
		background: -webkit-linear-gradient(top, #d6d6d6 0%,#b8b8b8 100);
		background: linear-gradient(to bottom, #d6d6d6 0%,#b8b8b8 100%);
	}
	.js-overlay.ext-calendar .window .js-modal_tab_target+.js-modal_tab_target{
		display: none;
	}

.js-scroll_table {
	position: relative;
	padding: 0 0 15px;
}
/* cookie agree check start */
div.browser-check 
{
	width:100%;
	background:#333;
	color:White;
	font-family:'Lato', sans-serif,'Primary-Regular',Arial,'Helvetica Neue', Helvetica;
}
div.browser-check div.cookie-check
{
	display:none;
	max-width:300px;
	overflow:hidden;
	padding:10px 0;
	margin-right:auto;
	margin-left:auto;
}
div.browser-check div.cookie-check div.cookie-use
{
	float:left;
	text-align:left;
	color:White;
	cursor:default;
	text-decoration:none;
}
div.browser-check div.cookie-check a.cookie-agree
{
	float:right;
	text-align:right;
	color:White;
	cursor:pointer;
	text-decoration:none;
}
div.browser-check div.cookie-check a.cookie-agree:hover
{
	color:Red;
}
div.browser-check div.cookie-check a.cookie-agree:after
{
	content:'';
	display:inline-block;
	width:16px;
	height:16px;
	margin-left:5px;
	vertical-align:middle;
	background:url('../../images/header/cookie_close.png') no-repeat;
}
div.browser-check div.cookie-check a.cookie-agree:hover:after
{
	background:url('../../images/header/cookie_close_hover.png') no-repeat;
}
/* cookie agree check end */
