@charset "utf-8";
/* CSS Document */
/* --------------------------------------------------

reset

-------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	box-sizing: border-box;
	word-break: break-all;
}
html {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
img, a {
	vertical-align: top;
	max-width: 100%;
}
img[src$=".svg"] {
	width: 100%;
	height: auto;
}
a {
	cursor: pointer;
}
a img {
	border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
	display: block;
}
strong {
	font-weight: bold;
}
h3, h4, h5, h6 {
	letter-spacing: .1rem;
}
/* --------------------------------------------------
fonts
-------------------------------------------------- */
/* --------------------------------------------------
link
-------------------------------------------------- */
a:link {
	color: #2d2d2d;
	text-decoration: none;
}
a:visited {
	color: #2d2d2d;
	text-decoration: none;
}
a:hover {
	color: #2d2d2d;
	text-decoration: none;
}
a:active {
	color: #2d2d2d;
	text-decoration: none;
}
/* --------------------------------------------------
html
-------------------------------------------------- */
html {
	font-size: 62.5%;
	height: 100%;
}
@media screen and (max-width: 1200px) {
	html {
		font-size: 58.12%;
		/* 1.5rem */
	}
}
@media screen and (max-width: 600px) {
	html {
		font-size: 53.75%;
		/* 1.4rem */
	}
}
@media screen and (max-width: 400px) {
	html {
		font-size: 50%;
		/* 1.3rem */
	}
}
/* --------------------------------------------------
fontSize
-------------------------------------------------- */
.is-fs-m {
	font-size: 75%;
}
.is-fs-l {
	font-size: 87.5%;
}
.is-fs-xl {
	font-size: 100%;
}
.is-fs-xxl {
	font-size: 112.5%;
}
.is-fs-xxxl {
	font-size: 125%;
}
/* --------------------------------------------------
body
-------------------------------------------------- */
body {
	font-family: "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "helvetica", "arial", sans-serif;
	font-size: 1.6rem;
	line-height: 1.8;
	font-weight: 400;
	color: #2d2d2d;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	overflow-x: hidden;
	background: #F0F0F0;
	min-width: 1200px;
	position: relative;
}
body.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
@media screen and (max-width: 800px) {
	body {
		min-width: inherit;
	}
}
/* --------------------------------------------------

form

-------------------------------------------------- */
button, fieldset, form, input, label, legend, select, textarea {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
fieldset {
	border: none;
	display: block;
}
legend {
	display: none;
}
label {
	cursor: pointer;
	display: none;
}
textarea {
	overflow: auto;
	vertical-align: middle;
	width: 100%;
	border: 1px solid #D1D1D1;
	padding: 5px 10px;
	font-size: 1.6rem;
	line-height: 1.8;
	margin: 10px 0;
	box-sizing: border-box;
}
input::-webkit-input-placeholder {
	color: #747484;
}
input:-ms-input-placeholder {
	color: #747484;
}
input::-moz-placeholder {
	color: #747484;
}
select {
	padding: 8px;
	border: 1px solid #D1D1D1;
}
input[type="checkbox"], input[type="radio"] {
	margin-right: .5rem;
}
input[type="checkbox"] + label, input[type="radio"] + label {
	display: inline-block;
	margin-right: 1rem;
}
input[type="text"], input[type="tel"], input[type="email"] {
	vertical-align: middle;
	border: none;
	border: 1px solid #D1D1D1;
	padding: 5px 10px;
	font-size: 1.5rem;
	line-height: 1.8;
	box-sizing: border-box;
	min-height: 38px;
}
input[type="file"] {
	padding: 5px 0;
}
select.text-ss {
	padding: 5px;
	background: #FFF;
}
input, textarea {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-appearance: none;
	max-width: 100%;
}
.label-name {
	margin: 0px 7px 0 0;
	display: inline-block;
}
.text-ss {
	width: 10%;
	margin: 10px 7px 10px 0;
}
.text-s, .text-s-sp-harf {
	width: 30%;
	margin: 10px 7px 10px 0;
}
.text-m {
	width: 58%;
	margin: 10px 7px 10px 0;
}
.text-l {
	width: 100%;
	margin: 10px 0;
}
@media screen and (max-width: 600px) {
	.text-ss {
		width: 100%;
	}
	.text-s, .text-s-sp-harf {
		width: 100%;
	}
	.text-m {
		width: 100%;
	}
	input[type="checkbox"] + label, input[type="radio"] + label {
		margin-bottom: 0.5rem;
	}
}
/* form-content */
.form-content {
	background: #FFF;
	padding: 3%;
	max-width: 1000px;
	margin: 5% auto;
	position: relative;
}
/* table-form */
.table-form {
	width: 100%;
	margin: 15px 0 30px;
	border-collapse: collapse;
	border-top: 1px solid #E7E7E7;
}
.table-form th {
	width: 260px;
	display: table-cell;
	font-weight: bold;
	padding: 2em 1em;
	border-bottom: 1px solid #E7E7E7;
}
.table-form td {
	width: auto;
	padding: 2em 1em;
	border-bottom: 1px solid #E7E7E7;
	word-break: break-all;
	word-wrap: break-word;
}
.table-form td a {
	vertical-align: middle;
}
@media screen and (max-width: 800px) {
	.table-form th {
		width: 20%;
	}
}
@media screen and (max-width: 600px) {
	.table-form th {
		display: block;
		width: 100%;
		border-bottom: none;
		padding: 2em 1em 0 1em;
	}
	.table-form td {
		display: block;
		width: 100%;
		padding: 0 1em 2em 1em;
	}
}
/* essential */
.essential {
	display: inline-block;
	color: #F00;
	margin-left: 10px;
	font-weight: normal;
}
/* form-description */
.form-description {
	line-height: 1.4;
}
/* error-message */
.error-message {
	color: #f00;
	line-height: 1.2;
	margin-bottom: .5em;
}
/* form-caption */
.form-caption {
	font-size: 1.3rem;
	line-height: 1.4;
}
/* sp-block */
.form-group .sp-block {
	display: inline;
}
/* form-list */
.form-list {
	margin: 5px 0;
}
.form-list li {
	display: inline-block;
	margin: 5px 15px 5px 0;
}
/* --------------------------------------------------
contact-form
-------------------------------------------------- */
.contact-form {
	display: block;
	padding: 70px;
	background-color: #fff;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
.contact-form table {
	border: none;
}
.contact-form tr {
	border-bottom: 2px #BCBCBC solid;
}
.contact-form tr:first-child {
	border-top: 2px #BCBCBC solid;
}
.contact-form th {
	padding: 20px;
	background-color: #E0EFFC;
	border: none;
	font-weight: bold;
	width: 25%;
}
.contact-form th .ico_hissu {
	float: right;
	margin-left: 10px;
	padding: 2px 10px;
	font-size: 1.0rem;
	color: #fff;
	background-color: #CC0000;
	font-weight: normal;
}
.contact-form td {
	padding: 30px 20px;
	border: none;
	font-weight: bold;
}
.contact-form td .form-day .selectbox {
	margin-left: 20px;
}
.contact-form td .form-col {
	margin-bottom: 15px;
	display: flex;
	align-items: center;
}
.contact-form td .form-col:last-child {
	margin-bottom: 0;
}
.contact-form td .form-col .day-ttl {
	display: inline-block;
	padding: 15px 1em;
	background-color: #F0F0F0;
	width: 15.5rem;
	text-align: center;
}
.contact-form td .form-col .port-ttl {
	display: inline-block;
	padding: 15px 1em;
	background-color: #F0F0F0;
	width: 25rem;
	text-align: center;
}
.contact-form td .form-col label {
	display: inline-block;
}
.contact-form td .form-col > p {
	min-width: 40%;
}
.contact-form td .selectbox {
	display: inline-block;
	position: relative;
	margin: 0 5px 0 0;
	align-items: center;
	cursor: pointer;
}
.contact-form td .selectbox:after {
	font-family: 'icoairport';
	content: "\e908";
	color: #005CAD;
	position: absolute;
	right: 1.2em;
	top: 1.5em;
	font-size: 80%;
	pointer-events: none;
}
.contact-form td select {
	display: block;
	padding: 1.3rem 2.5em 1.0em 1em;
	font-weight: bold;
	min-width: 8em;
	cursor: pointer;
	background-color: #fff;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.contact-form td select option.demo {
	display: none;
	color: #BABABA;
}
.contact-form td .form-col .radio-col {
	display: inline-block;
	width: 11em;
}
.contact-form td input::placeholder {
	color: #BBBBBB;
}
.contact-form td input::-ms-input-placeholder {
	color: #BBBBBB;
}
.contact-form td input:-ms-input-placeholder {
	color: #BBBBBB;
}
.contact-form td input[type="radio"], .contact-form td input[type="checkbox"] {
	display: none;
}
.contact-form td label.radio {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 15px;
	padding: 10px 20px;
	border-radius: 2px;
}
.contact-form td label.radio:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #fff;
	border: 1px #BCBCBC solid;
	border-radius: 50%;
}
.contact-form td input[type="radio"]:checked + label.radio:after {
	position: absolute;
	content: "";
	top: 50%;
	left: -5px;
	width: 13px;
	height: 13px;
	margin-top: -5px;
	border-radius: 50%;
	background: #323333;
}
.contact-form td label.checkbox {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 15px;
	padding: 10px 20px;
	border-radius: 2px;
}
.contact-form td label.checkbox:before {
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #fff;
	border: 1px #BCBCBC solid;
}
.contact-form td input[type="checkbox"]:checked + label.checkbox:after {
	position: absolute;
	content: "";
	top: 25%;
	left: -10px;
	margin: 5px 8px;
	width: 6px;
	height: 9px;
	border: 2px solid #000;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.contact-form td input[type="text"], .contact-form td input[type="email"], .contact-form td input[type="tel"] {
	display: inline-block;
	padding: 1.3rem 1em;
	font-weight: bold;
	min-width: 60%;
	cursor: pointer;
	background-color: #fff;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 10px 0;
}
.contact-form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.contact-form select::-ms-expand {
	display: none;
}
.contact-form td textarea {
	display: block;
	padding: 1.3rem 1em;
	background-color: #fff;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.contact-complete-area {
	display: block;
	margin-bottom: 60px;
	padding: 70px;
	font-weight: bold;
	background-color: #fff;
	text-align: center;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}
@media screen and (max-width: 800px) {
	.btn-contact a, .btn-link a {
		padding: 20px;
	}
	.contact-top-area, .contact-form {
		padding: 25px;
	}
	.btn-contact {
		width: 100%;
	}
	.contact-form th {
		display: block;
		padding: 20px;
		width: 100%;
		background: #E0EFFC;
	}
	.contact-form td {
		display: block;
		padding: 20px 0;
	}
	.contact-form td .form-col {
		display: block;
		margin-bottom: 5px;
	}
	.contact-form td .form-col .day-ttl {
		display: block;
		padding: 10px;
		margin-bottom: 10px;
		font-size: 90%;
	}
	.contact-form td .form-col .port-ttl {
		display: block;
		padding: 10px;
		margin-bottom: 10px;
		font-size: 90%;
	}
	.contact-form td .selectbox {
		margin: 0 5px 10px 0;
		width: 100%;
	}
	.contact-form td .form-day .selectbox {
		margin-left: 0;
	}
	.contact-form td select {
		min-width: 100%;
		font-size: 2rem;
	}
	.contact-form td input[type="text"], .contact-form td input[type="email"], .contact-form td input[type="tel"] {
		display: block;
		width: 100%;
		font-size: 2rem;
	}
	.contact-form td textarea {
		font-size: 2rem;
	}
	.contact-form td p {
		margin: 0 20px;
	}
	.contact-complete-area {
		margin-bottom: 40px;
		padding: 25px;
		text-align: left;
	}
}
/* --------------------------------------------------
table
-------------------------------------------------- */
table {
	margin: 1em 0 2em;
	border-collapse: collapse;
	border: 1px solid #DDD;
	width: 100%;
	border-spacing: 0;
}
table caption {
	text-align: center;
	margin-bottom: 0.5em;
}
table th {
	background: #F0F0F0;
	padding: 1.5em;
	border: 1px solid #DDD;
	width: 25%;
	font-weight: bold;
	text-align: center;
}
table th.bg01 {
	background: #444444;
	color: #fff;
}
table td {
	background: #FFFFFF;
	padding: 1.5em;
	border: 1px solid #DDD;
	word-break: break-all;
	word-wrap: break-word;
	width: auto;
}
table td a[href] {
	text-decoration: underline;
}
.color-link {
	color: #005BAD !important;
	transition: .3s;
}
.color-link:hover {
	color: #009ECD !important;
    text-decoration: underline !important;
}

.table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	margin: 1em 0 2em;
	max-width: none;
}
.table-scroll::-webkit-scrollbar {
	height: 5px;
}
.table-scroll::-webkit-scrollbar-track {
	border-radius: 5px;
	background: #eee;
}
.table-scroll::-webkit-scrollbar-thumb {
	border-radius: 5px;
	background: #CCC;
}
.table-scroll table {
	margin: 0;
	max-width: none;
}
.table-scroll table caption {
	text-align: left;
}
@media screen and (max-width: 800px) {
	.table-scroll table {
		width: 800px;
	}
	.table-scroll table th, .table-scroll table td {
		display: table-cell;
		width: auto;
		border: 1px solid #DDD;
	}
	table {
		width: 100%;
	}
	table th, table td {
		display: block;
		width: 100%;
		border-top: none;
		border-right: none;
		border-left: none;
		text-align: left;
	}
	table tr:last-child td {
		border-bottom: none;
	}
}
@media screen and (max-width: 800px) {
	.psfc-table thead {
		display: none;
	}
	.psfc-table th p::before {
		content: "区分:";
	}
	.psfc-table td::before {
		content: "料金（消費税込）:";
	}
	/* en */
	.psfc-table th p:lang(en)::before {
		content: "Division:";
	}
	.psfc-table td:lang(en)::before {
		content: "Charge (with tax):";
	}
	/* ko */
	.psfc-table th p:lang(ko)::before {
		content: "구분:";
	}
	.psfc-table td:lang(ko)::before {
		content: "요금(소비세 포함):";
	}
	/* zh */
	.psfc-table th p:lang(zh)::before {
		content: "区分:";
	}
	.psfc-table td:lang(zh)::before {
		content: "费用（含税）:";
	}
	/* tw */
	.psfc-table th p:lang(zh-tw)::before {
		content: "區分:";
	}
	.psfc-table td:lang(zh-tw)::before {
		content: "費用（含稅）:";
	}
}

@media screen and (min-width: 800px) {
	.psfc-table.psfc-int-table .sp-only {
		display: none;
	}
}

@media screen and (max-width: 800px) {

	.psfc-table.psfc-int-table  thead {
		display: inline;
	}

	.psfc-table.psfc-int-table  thead tr{
		display: inline;
	}

	.psfc-table.psfc-int-table .sp-none {
		display: none;
	}
	.psfc-table.psfc-int-table .sp-only {
		display: block;
	}

    /* .psfc-table.psfc-int-table tr:first-child td:nth-child(2):before,
    .psfc-table.psfc-int-table tr:nth-child(2) td:nth-child(1):before,
    .psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(2):before,
    .psfc-table.psfc-int-table tr:nth-child(4) td:nth-child(1):before {
        content: "大人:"!important;
    } */

	.psfc-table.psfc-int-table td::before {
		content: "";
	}

	.psfc-table.psfc-int-table tr:first-child td:before,
	.psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(3):before {
		content: "大人:"!important;
	}

	.psfc-table.psfc-int-table tr:nth-child(2) td:before,
	.psfc-table.psfc-int-table tr:nth-child(4) td:before {
		content: "小人:"!important;
	}


	/* en */
	.psfc-table.psfc-int-table tr:first-child td:lang(en):before,
	.psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(3):lang(en):before {
		content: "Adults:"!important;
	}

	.psfc-table.psfc-int-table tr:nth-child(2) td:lang(en):before,
	.psfc-table.psfc-int-table tr:nth-child(4) td:lang(en):before {
		content: "Children:"!important;
	}


	/* ko */
	.psfc-table.psfc-int-table tr:first-child td:lang(ko):before,
	.psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(3):lang(ko):before {
		content: "성인:"!important;
	}

	.psfc-table.psfc-int-table tr:nth-child(2) td:lang(ko):before,
	.psfc-table.psfc-int-table tr:nth-child(4) td:lang(ko):before {
		content: "소아:"!important;
	}



	/* zh */
	.psfc-table.psfc-int-table tr:first-child td:lang(zh):before,
	.psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(3):lang(zh):before {
		content: "成人:"!important;
	}

	.psfc-table.psfc-int-table tr:nth-child(2) td:lang(zh):before,
	.psfc-table.psfc-int-table tr:nth-child(4) td:lang(zh):before {
		content: "儿童:"!important;
	}



	/* tw */
	.psfc-table.psfc-int-table tr:first-child td:lang(tw):before,
	.psfc-table.psfc-int-table tr:nth-child(3) td:nth-child(3):lang(tw):before {
		content: "大人:"!important;
	}

	.psfc-table.psfc-int-table tr:nth-child(2) td:lang(tw):before,
	.psfc-table.psfc-int-table tr:nth-child(4) td:lang(tw):before {
		content: "兒童:"!important;
	}


	.psfc-table.psfc-int-table tr:last-child td{
		border-bottom: 1px solid #DDD;
	}

	.psfc-table.psfc-int-table tr:last-child td:last-child{
		border-bottom: none;
	}
}
/* --------------------------------------------------
fonts
-------------------------------------------------- */
@font-face {
	font-family: 'icoairport';
	src: url('../fonts/icoairport.eot?4ftlru');
	src: url('../fonts/icoairport.eot?4ftlru#iefix') format('embedded-opentype'), url('../fonts/icoairport.ttf?4ftlru') format('truetype'), url('../fonts/icoairport.woff?4ftlru') format('woff'), url('../fonts/icoairport.svg?4ftlru#icoairport') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
[class^="icon-"], [class*=" icon-"] {
	/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'icoairport' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-language:before {
	content: "\e931";
}
.icon-caution:before {
	content: "\e92b";
	color: #00afd6;
}
.icon-calendar:before {
	content: "\e92c";
	color: #00afd6;
}
.icon-change:before {
	content: "\e92d";
	color: #00afd6;
}
.icon-parking:before {
	content: "\e92e";
	color: #005aac;
}
.icon-root:before {
	content: "\e92f";
	color: #00afd6;
}
.icon-traffic:before {
	content: "\e930";
	color: #005aac;
}
.icon-arrow_circle_down:before {
	content: "\e900";
}
.icon-arrow_circle_left:before {
	content: "\e901";
}
.icon-arrow_circle_right:before {
	content: "\e902";
}
.icon-arrow_circle_up:before {
	content: "\e903";
}
.icon-arrow_circle02_down:before {
	content: "\e904";
	color: #00afd6;
}
.icon-arrow_circle02_left:before {
	content: "\e905";
	color: #00afd6;
}
.icon-arrow_circle02_right:before {
	content: "\e906";
	color: #00afd6;
}
.icon-arrow_circle02_up:before {
	content: "\e907";
	color: #00afd6;
}
.icon-arrow_down:before {
	content: "\e908";
}
.icon-arrow_left:before {
	content: "\e909";
}
.icon-arrow_right:before {
	content: "\e90a";
}
.icon-arrow_thin_down:before {
	content: "\e90b";
}
.icon-arrow_thin_left:before {
	content: "\e90c";
}
.icon-arrow_thin_right:before {
	content: "\e90d";
}
.icon-arrow_thin_up:before {
	content: "\e90e";
}
.icon-arrow_up:before {
	content: "\e90f";
}
.icon-bm_off:before {
	content: "\e910";
}
.icon-bm_on:before {
	content: "\e911";
}
.icon-clock:before {
	content: "\e912";
}
.icon-file:before {
	content: "\e913";
}
.icon-info:before {
	content: "\e914";
}
.icon-link:before {
	content: "\e915";
}
.icon-map:before {
	content: "\e916";
}
.icon-minus:before {
	content: "\e917";
	color: #005cad;
}
.icon-nav00:before {
	content: "\e918";
}
.icon-nav01:before {
	content: "\e919";
}
.icon-nav02:before {
	content: "\e91a";
}
.icon-nav03:before {
	content: "\e91b";
}
.icon-nav04:before {
	content: "\e91c";
}
.icon-nav05:before {
	content: "\e91d";
}
.icon-people:before {
	content: "\e91e";
}
.icon-people_n:before {
	content: "\e91f";
}
.icon-phone:before {
	content: "\e920";
}
.icon-plus:before {
	content: "\e921";
	color: #005cad;
}
.icon-search:before {
	content: "\e922";
}
.icon-search_w:before {
	content: "\e923";
}
.icon-tnav01:before {
	content: "\e924";
}
.icon-tnav02:before {
	content: "\e925";
}
.icon-tnav03:before {
	content: "\e926";
}
.icon-ttl_food:before {
	content: "\e927";
}
.icon-voice01:before {
	content: "\e928";
	color: #999;
}
.icon-voice02:before {
	content: "\e929";
	color: #999;
}
.icon-voice03:before {
	content: "\e92a";
	color: #999;
}
/* --------------------------------------------------
header
-------------------------------------------------- */
#header {
	background: #fff;
	position: absolute;
	display: flex;
	justify-content: space-between;
	border-radius: 0 0 0 320px / 0 0 0 220px;
	padding-left: 10%;
	z-index: 110;
	top: auto;
	width: 100%;
	min-width: 1200px;
}
#header.up-hide {
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	position: fixed;
	top: -180px;
	opacity: 0;
	transition: .25s;
}
#header.down-show {
	top: 0;
	transition: .25s;
	opacity: 1;
}
#header .h-logo {
	display: block;
	align-self: center;
	margin-right: 2em;
	width: 200px;
	transition: .25s;
}
#header.up-hide .h-logo {
	width: 140px;
	margin-top: 5px;
}
#header .h-logo img {
	width: 100%;
	padding: 0 10px 10px 10px;
}
#header .h-logo img {
	transition-duration: 0.3s;
}
#header .h-logo a:hover img {
	opacity: 0.6;
	transition-duration: 0.3s;
}
/* h-menu */
.h-menu {
	width: 75%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: flex-end;
}
.h-wrap {
	display: flex;
}
.up-hide .h-wrap {
	display: none;
}
/* h-link */
.h-link {
	display: flex;
	flex-wrap: wrap;
	background: #323335;
	align-items: center;
	border-radius: 0 0 0 5px;
}
.h-link li a {
	padding: 1.5rem 1rem;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.h-link li:first-child a {
	padding: 1.5rem 1.5rem 1.5rem 4rem;
	border-radius: 0 0 0 5px;
}
.h-link li a:hover {
	background: #494A4C;
}
.h-link li:last-child a {
	padding: 0;
}
.h-link li a, .h-link li dl.lang {
	color: #fff;
	font-size: 1.3rem;
	display: flex;
	align-items: center;
}
.h-link li a span, .h-link li dl.lang img {
	margin-right: 1rem;
	display: inline-block;
}
.h-link .icon-tnav01 {
	font-size: 1.5rem;
}
.h-link .icon-tnav02 {
	font-size: 1.5rem;
}
.h-link .icon-tnav03 {
	font-size: 1.5rem;
}
.h-link li dl.lang img {
	width: 10px;
}
/* h-serch */
.h-serch {
	padding: 0 1.5rem;
	background: #00AFD6;
	display: flex;
	align-items: center;
}
.h-serch form {
	position: relative;
}
.h-serch input {
	background: #FFF;
	display: inline-block;
	border-radius: 5px;
	padding-right: 30px;
	padding: 2px 10px;
	min-height: 0;
	width: 100%;
	border: none;
}
.h-serch button {
	position: absolute;
	padding: 0 1rem;
	right: 0;
	top: 0;
	background: none;
	border: none;
	height: 100%;
	cursor: pointer;
	color: #7A7E88;
}
/* lang */
#header .lang {
	position: relative;
}
#header .lang dt {
	cursor: pointer;
	position: relative;
	display: flex;
	align-items: center;
	padding: 1.5rem;
}
#header .lang dt:before {
	font-family: 'icoairport';
	content: "\e908";
	display: inline-block;
	vertical-align: middle;
	margin-right: 1rem;
}
#header .lang dt.active:before {
	content: "\e90f";
}
/*#header .lang dt.active img {
	transform: rotateZ(180deg);
}*/
#header .lang dd {
	width: 100%;
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 10;
	box-shadow: 0px 3px 4px 0px rgba(0, 0, 0, 0.2);
}
#header .lang dd a {
	width: 100%;
	display: block;
	padding: 10px;
	color: #FFF;
	background: #323335;
	text-align: center;
	border-bottom: #000 solid 1px;
}
#header .lang dd a:hover {
	background: #494A4C;
}
#header .lang dd a:last-of-type {
	border-bottom: none;
}
@media screen and (max-width: 1500px) {
	#header {
		padding-left: 2%;
		border-radius: 0 0 0 120px / 0 0 0 100px;
	}
	#header .h-logo {
		display: block;
		align-self: center;
		margin: 0 0 0 50px;
		max-width: 200px;
	}
	.h-link li a, .h-link li dl.lang {
		font-size: 1.3rem;
	}
	.h-link li a {
		padding: 1.5rem;
	}
	.h-link li:first-child a {
		padding: 1.5rem 1.5rem 1.5rem 3rem;
	}
	#header .lang dt {
		padding: 1.5rem;
	}
}
@media screen and (max-width: 800px) {
	#header {
		display: none !important;
	}
}
/* --------------------------------------------------
#gnav
-------------------------------------------------- */
#gnav {
	font-weight: bold;
	width: 100%;
	/*max-width: 1400px;*/
	margin-top: 1em;
}
.up-hide #gnav {
	margin-top: 0;
}
/* mega-menu */
.mega-menu {
	text-align: center;
	overflow: hidden;
	display: flex;
	justify-content: flex-end;
}
.mega-menu.active {
	overflow: visible;
}
.mega-menu > li {
	cursor: pointer;
	z-index: 1;
	flex-grow: 1;
	position: relative;
}
.mega-menu > li > a > span {
	height: 27px;
	margin: 0 2rem 0 0;
}
.mega-menu > li > a > span img {
	height: 100%;
	width: auto;
}
.mega-menu > li > a {
	position: relative;
	display: flex;
	align-items: center;
	padding: 1em 0 1.7em;
	justify-content: center;
}
.up-hide .mega-menu > li > a {
	padding: 1em 0;
}
.mega-menu > li > a::after {
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.mega-menu > li > a::after, .mega-menu > li.current > a::after {
	content: "";
	position: absolute;
	height: 5px;
	width: 0;
	left: 0;
	bottom: 0;
	background: -moz-linear-gradient(left, #8AD3E6, #03B2F6);
	background: -webkit-linear-gradient(left, #8AD3E6, #03B2F6);
	background: linear-gradient(to right, #8AD3E6, #03B2F6);
	transform: skewX(30deg);
}
.mega-menu > li > a:hover::after, .mega-menu > li.current > a::after {
	width: 100%;
}
/* mega-menu-list */
.mega-menu-list {
	top: 100%;
	width: 100%;
	position: absolute;
	background: #323335;
	font-size: 1.4rem;
	min-height: 42em;
	border-right: #03B2F6 1px solid;
	display: none;
	z-index: 110;
}
.mega-menu > li:nth-of-type(1) {
	width: 16%;
}
.mega-menu-list li a {
	padding: .6em 1em;
	text-align: left;
	color: #fff;
	display: block;
	font-weight: normal;
}
.mega-menu-list li a:hover {
	background: #494A4C;
}
@media screen and (max-width: 1600px) {
	.mega-menu > li > a {
		font-size: 1.4rem;
	}
	.mega-menu-list {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 1380px) {
	.mega-menu-list {
		min-height: 40em;
	}
	.mega-menu > li:last-child .mega-menu-list li a {
		padding: .5em .5em .5em 1em;
	}
}
@media screen and (max-width: 800px) {
	.mega-menu-inner {
		display: none;
	}
}
/* --------------------------------------------------
spnav
-------------------------------------------------- */
#spnav {
	display: none;
	position: relative;
}
@media screen and (max-width: 800px) {
	#spnav {
		display: block;
		width: 100%;
		position: absolute;
		z-index: 100;
	}
	#spnav.up-hide {
		top: 0;
		position: fixed;
		/* top: -100px; */
		transform: translateY(-100%);
		opacity: 0;
		/* transition: .25s; */
	}
	#spnav.down-show {
		/* top: 0; */
		transform: translateY(0);
		transition: .25s;
		opacity: 1;
	}
	.spnav-wrap {
		background: #fff;
		position: relative;
		display: flex;
		justify-content: space-between;
		border-radius: 0 0 0 60px / 0 0 0 60px;
		z-index: 100;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	}
	#spnav .h-logo {
		width: 170px;
	}
	#spnav .h-logo a {
		display: block;
		padding: 15px 0 15px 50px;
	}
	#spnav .h-logo img {
		height: 100%;
	}
	#spnav .sp-menu-btn {
		background: #0061AF;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		z-index: 99;
	}
	#spnav .txt-menu {
		display: block;
		padding-top: .5rem;
		font-size: .9rem;
		color: #fff;
		letter-spacing: .1rem;
	}
	.spnav-btn {
		display: flex;
		position: absolute;
		right: 0;
		height: 100%;
	}
	#spnav .lang {
		align-self: center;
		margin-right: 1.5em;
		cursor: pointer;
		z-index: 99;
		background: #323335;
		color: #fff;
		border-radius: 3em;
		padding: .6em 1em;
		font-size: 1.2rem;
	}
	#spnav .lang-list {
		display: none;
		position: absolute;
		top: 100%;
		width: 100%;
		background: #323335;
		z-index: 97;
		right: 0;
	}
	#spnav .lang-list a {
		display: block;
		color: #fff;
		padding: 1.2em;
		text-align: center;
		border-bottom: 1px solid #ccc;
	}
	#spnav .h-serch {
		padding: 1em;
		display: block;
	}
	#spnav .h-serch input {
		width: 100%;
		font-size: 2rem;
	}
	#spnav .sp-link {
		display: flex;
		background: #fff;
		flex-wrap: wrap;
		font-weight: bold;
	}
	#spnav .sp-link li {
		width: 50%;
	}
	#spnav .sp-link li a {
		padding: 1em;
		border-bottom: 1px solid #DDDDDD;
		display: block;
		height: 100%;
	}
	#spnav .sp-link li:nth-child(5) a, #spnav .sp-link li:last-child a {
		border-bottom: none;
	}
	#spnav .sp-link li:nth-child(2n+1) {
		border-right: 1px solid #DDDDDD;
	}
}
@media screen and (max-width: 480px) {
	#spnav .h-logo {
		width: 140px;
	}
	#spnav .h-logo a {
		padding: 10px 0 10px 40px;
	}
	#spnav .lang {
		margin-right: 1em;
	}
}
@media screen and (max-width: 320px) {
	#spnav .h-logo {
		width: 130px;
	}
	#spnav .h-logo a {
		padding: 10px 0 10px 35px;
	}
	#spnav .lang {
		margin-right: .5em;
	}
}
/* --------------------------------------------------
animation for btn
-------------------------------------------------- */
.menu-trigger, .menu-trigger p span {
	display: inline-block;
	transition: all .5s;
	box-sizing: border-box;
}
.menu-trigger {
	padding: .8rem 2.5rem 0;
}
.menu-trigger p {
	position: relative;
	width: 28px;
	height: 16px;
}
.menu-trigger p span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #fff;
}
.menu-trigger p span:nth-of-type(1) {
	top: 0;
}
.menu-trigger p span:nth-of-type(2) {
	top: 8px;
	width: 100%;
}
.menu-trigger p span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active p span:nth-of-type(1) {
	-webkit-transform: translateY(3px) rotate(-45deg);
	transform: translateY(3px) rotate(-45deg);
}
.menu-trigger.active p span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active p span:nth-of-type(3) {
	-webkit-transform: translateY(-12px) rotate(45deg);
	transform: translateY(-12px) rotate(45deg);
}
/* --------------------------------------------------
site-menu
-------------------------------------------------- */
.site-menu {
	/*background: rgba(0, 92, 173, 0.95);*/
	z-index: 97;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 0;
	margin-top: -100vh;
	display: block;
}
.fixed .site-menu {
	height: 100%;
	background: rgba(0, 92, 173, 0.95);
}
/* site-menu-content */
.site-menu-content {
	top: 100%;
	position: relative;
}
.fixed .site-menu-inner {
	position: fixed;
	overflow-y: scroll;
	visibility: visible;
}
.site-menu-inner {
	height: 100%;
	width: 100%;
	visibility: hidden;
	background: rgba(0, 92, 173, 0.95);
}
.site-menu .h-link {
	background: none;
	padding: 1em;
	justify-content: space-between;
}
.site-menu .h-link li {
	padding: 0;
	width: 49.5%;
}
.site-menu .h-link li a {
	background: #323335;
	padding: 1.5em;
	border-radius: 5px;
	text-align: center;
	justify-content: center;
}
.site-menu .h-link li:first-child {
	width: 100%;
	padding: 0;
	margin-bottom: 1%;
}
/* --------------------------------------------------
side-menu
-------------------------------------------------- */
.side-menu {
	position: fixed;
	right: 20px;
	bottom: 4%;
	z-index: 10;
	display: none;
	opacity: 0;
	transition: .25s;
}
.side-menu.fade-show {
	opacity: 1;
	transition: .25s;
	z-index: 200;
	display: block;
}
/* side-menu-list */
.side-menu-list {
	background: #323335;
	border: 1px solid #666;
	border-radius: 10px;
	padding: 5px 10px;
	position: relative;
	box-shadow: 0 0 8px rgba(0, 0, 0, .5);
}
.side-menu-list > li {
	margin: 10px 0;
}
.side-menu-list > li > a {
	padding: 10px;
	display: block;
	width: 40px;
	height: 40px;
	transition: .25s;
	border-radius: 50%;
}
.side-menu-list > li > a:hover, .side-menu-list > li > a.active {
	background: #00AFD6;
}
.side-menu-list > li.site-search {
	position: relative;
}
.side-menu-list > li ul, .side-menu-list > li div {
	display: none;
}
.side-menu-list > li ul {
	background: #0061AF;
	color: #FFF;
	position: absolute;
	top: 0;
	right: 95%;
	height: 100% !important;
	width: 0;
	opacity: 0;
	z-index: -1;
}
.side-menu-list > li ul.show {
	display: block;
	opacity: 10;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: .2s;
	-ms-animation-duration: .2s;
	animation-duration: .2s;
	-webkit-animation-name: lang-show;
	animation-name: lang-show;
}
@-webkit-keyframes lang-show {
	0% {
		width: 0;
		opacity: 0;
	}
	100% {
		width: 10em;
		opacity: 1;
	}
}
@keyframes lang-show {
	0% {
		width: 0;
		opacity: 0;
	}
	100% {
		width: 10em;
		opacity: 1;
	}
}
.side-menu-list > li ul li {
	height: 20%;
	border-bottom: 1px solid #1B74BA;
}
.side-menu-list > li ul li:last-child {
	border-bottom: none;
}
.side-menu-list > li ul li a {
	color: #FFF;
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 1em;
}
.side-menu-list > li ul li.active a, .side-menu-list > li ul li a:hover {
	background: #1575cb;
}
.side-menu-list > li div {
	background: #05A2C6;
	color: #FFF;
	position: absolute;
	top: 0;
	right: 110%;
	/* height: 150% !important; */
	margin-top: -25%;
	width: 0;
	opacity: 0;
	z-index: -1;
	padding: 1rem 2rem;
}
.side-menu-list > li div.show {
	display: block;
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: .2s;
	-ms-animation-duration: .2s;
	animation-duration: .2s;
	-webkit-animation-name: search-show;
	animation-name: search-show;
}
@-webkit-keyframes search-show {
	0% {
		width: 0;
		opacity: 0;
	}
	100% {
		width: 260px;
		opacity: 1;
	}
}
@keyframes search-show {
	0% {
		width: 0;
		opacity: 0;
	}
	100% {
		width: 260px;
		opacity: 1;
	}
}
/* pagetop */
.pagetop {
	position: relative;
	margin: 30px 5px;
}
.pagetop a {
	display: block;
	position: relative;
	width: 50px;
	height: 50px;
	background: #00AFD5;
	border-radius: 50%;
	-webkit-filter: drop-shadow(0px 3px 4px rgba(0, 0, 0, .25));
	filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, .25));
	transition: .3s;
}
.pagetop a:hover {
	background: #005BAC;
}
.pagetop a img {
	width: 100%;
	max-width: 18px;
	position: absolute;
	top: 50%;
	right: 50%;
	transform: translate(50%, -50%);
}
@media screen and (max-width: 800px) {
	.side-menu {
		bottom: 50px;
		right: 0;
	}
	.side-menu-list {
		display: none;
	}
}
/* --------------------------------------------------
footer
-------------------------------------------------- */
.f-sp {
	display: none;
}
.f-wrap {
	display: flex;
	background: #323335;
}
.f-logo {
	width: 28%;
	background: #00AFD5;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 0 120px 0 0;
}
.f-logo .logo {
	width: 180px;
}
.f-logo .share {
	display: flex;
	margin: 2em auto;
	justify-content: center;
}
.f-logo .share li {
	padding: .5rem 1rem;
	text-align: center;
}
.f-logo .share li a {
	color: #fff;
	font-size: 2.8rem;
	line-height: 1;
	vertical-align: middle;
}
.f-logo .share li a img {
	width: 30px;
}
.f-menu {
	width: 70%;
	display: flex;
	justify-content: space-between;
	background: #323335;
	padding: 2em 3em;
}
.f-menu a {
	color: #fff;
	font-weight: bold;
}
.f-menu > li > p {
	display: flex;
	align-items: center;
	font-size: 1.6rem;
	margin-bottom: 1em;
	color: #fff;
	font-weight: bold;
}
.f-menu > li {
	padding-right: 1em;
	max-width: 23%;
}
.f-menu > li > p > span {
	height: 18px;
	margin: 0 1rem 0 0;
}
.f-menu > li > p > span img {
	height: 100%;
	width: auto;
}
.f-menu > li > ul > li a {
	font-size: 1.2rem;
	padding: .2em 0;
	display: block;
	font-weight: normal;
}
.f-menu > li > ul > li a:hover {
	text-decoration: underline;
}
.f-b-wrap {
	display: flex;
	background: #fff;
	padding: 1.5em;
	justify-content: space-between;
	align-items: center;
	position: relative;
}
.f-b-wrap .f-link {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	margin-left: auto;
}
.f-b-wrap .f-link li {
	margin-left: 2em;
}
.f-b-wrap .f-link li a {
	font-size: 1.2rem;
}
.f-b-wrap .f-link li a span {
	display: inline-block;
	height: auto;
	width: 82px;
	margin-right: 10px;
}
.f-b-wrap .f-link li a[target="_blank"]:after {
	font-family: 'icoairport';
	content: "\e915";
	margin-left: 1em;
	display: inline-block;
}
.f-b-wrap .f-link li a {
	position: relative;
}
.f-b-wrap .f-link li a:before {
	font-family: 'icoairport';
	content: "\e90a";
	display: inline-block;
	margin-right: 1em;
	font-size: 0.8rem;
	overflow-y: hidden;
	position: absolute;
	left: -1.5rem;
	top: 50%;
	transform: translateY(-50%);
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.f-b-wrap .f-link li a:before {
		margin-top: -0.6em;
	}
}
.f-b-wrap .f-link li a:hover {
	text-decoration: underline;
}
.copy {
	font-size: 1rem;
	padding: 1em 0;
	color: #FFF;
}
/*f-sp*/
.menu-sp {
	background: #323335;
}
.menu-sp a {
	color: #fff;
	padding: 1em;
	display: block;
	border-bottom: 1px solid #fff;
}
.menu-sp > li a {}
.menu-sp > li > a {
	position: relative;
	font-weight: bold;
	padding: 1em 2em 1em 1em;
}
.menu-sp ul a:after, .menu-sp > li > a:after {
	font-family: 'icoairport';
	content: "\e908";
	font-size: 1.0rem;
	display: inline-block;
	right: 1.5em;
	position: absolute;
	top: 50%;
	margin-top: -3px;
}

.menu-sp > li > a.active:after {
	content: "\e90f";
}

.menu-sp .yaji-right a:after {
	font-family: 'icoairport';
    content: "\e90a";
    font-size: 1.0rem;
    display: inline-block;
    right: 1.5em;
    position: absolute;
    top: 50%;
    margin-top: -3px;
}

.menu-sp ul {
	display: none;
}
.menu-sp ul a {
	background: #494A4C;
	position: relative;
}
.menu-sp ul a:after {
	content: "\e90a";
}
.f-sp .f-link {
	display: flex;
	background: #fff;
	flex-wrap: wrap;
	font-weight: bold;
}
.f-sp .f-link li {
	width: 50%;
}
.f-sp .f-link li a {
	padding: 1em;
	border-bottom: 1px solid #DDDDDD;
	display: block;
	line-height: 1.4;
	height: 100%;
}
.f-sp .f-link li a[target="_blank"]:after {
	font-family: 'icoairport';
	content: "\e915";
	margin-left: 1em;
	display: inline-block;
}
.f-sp .f-link li:nth-child(5) a, .f-sp .f-link li:last-child a {
	border-bottom: none;
}
.f-sp .f-link li:nth-child(2n+1) {
	border-right: 1px solid #DDDDDD;
}
.f-sp .f-logo {
	width: 100%;
	padding: 2.5em 0 5.5em;
	border-radius: 0;
}
.f-sp .f-logo .logo {
	width: 120px;
}

.f-sp .f-logo .share {
    width: 100%;
    max-width: 90%;
    margin: 1em auto;
    flex-wrap: wrap;
	justify-content: center;
}

.f-sp .f-logo .share li {
    width: auto;
}
.f-sp .f-logo .share li a img{
    width: 25px;
}

.f-sp .copy {
	color: #fff;
	padding: 0 1rem;
	text-align: center;
}
.f-btn {
	background: #005CAD;
	display: flex;
	justify-content: space-around;
	padding: .75em 0 .5em;
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 15;
}
.f-btn li {
	min-width: 15%;
}
.f-btn a {
	color: #fff;
	display: block;
	text-align: center;
	font-size: 1.2em;
}
.f-btn a span {
	display: block;
	height: 20px;
	text-align: center;
	margin-bottom: .5em;
}
.f-btn a span img {
	height: 100%;
}
@media screen and (max-width: 1640px) {
	.f-b-wrap {
		flex-direction: column-reverse;
	}
	.copy {
		padding: 2em 0 0;
	}
}
@media screen and (max-width: 1500px) {
	.f-menu > li > p {
		font-size: 1.4rem;
	}
	.f-menu > li > ul > li a {
		font-size: 1.2rem;
	}
	.f-menu > li > p > span {
		height: 20px;
	}
	.f-logo {
		width: 25%;
	}
	.f-logo .logo {
		width: 250px;
		max-width: 60%;
	}
	.f-logo .share {
		width: 250px;
		max-width: 60%;
		margin: 2em auto;
		flex-wrap: wrap;
	}
	.f-logo .share li {
		width: 20%;
	}
	.f-logo .share li a {
		font-size: 2.4rem;
	}
	.f-menu {
		width: 75%;
		padding: 4% 3%;
	}
	.f-menu > li > a br {
		display: block;
	}
	.copy {
		padding: 2em 3em;
		width: 100%;
	}
}
@media screen and (max-width: 800px) {
	.f-pc {
		display: none;
	}
	.f-sp {
		display: block;
	}
}
@media screen and (max-width: 600px) {
	.f-btn a span {
		height: 20px;
	}
	.f-btn a {
		font-size: 1.1rem;
	}
}
@media screen and (max-width: 400px) {
	.f-btn li {
		min-width: 3.5em;
	}
}
/* @media screen and (max-width: 340px) {
	.f-btn li {
		min-width: 3.5em;
	}
} */
/* --------------------------------------------------

contents

-------------------------------------------------- */
#contents {
	position: relative;
	min-height: calc(100vh - 15%);
	padding-top: 135px;
	/*	padding-bottom: 5%;*/
}
.main {
	padding: 5% 0;
	overflow-x: hidden;
}
@media screen and (max-width: 800px) {
	#contents {
		padding-top: 80px;
		overflow: hidden;
	}
	.main {
		padding: 4rem 0;
	}
}
@media screen and (max-width: 480px) {
	#contents {
		padding-top: 80px;
	}
	.main {
		padding: 2rem 0;
	}
}
/* --------------------------------------------------

layout

-------------------------------------------------- */
/* --------------------------------------------------
wrapper
-------------------------------------------------- */
.wrapper {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
}
@media screen and (max-width: 1480px) {
	.wrapper {
		padding: 0 3%;
	}
}
/* --------------------------------------------------
inner
-------------------------------------------------- */
.inner {
	max-width: 1080px;
	margin: 0 auto;
}
@media screen and (max-width: 1500px) {
	.inner {
		width: 100%;
		padding: 0 4%;
		max-width: none;
	}
}
/* --------------------------------------------------
section
-------------------------------------------------- */
section {
	margin-bottom: 5%;
}
.c-box section:last-of-type {
	margin-bottom: 0;
}
/* --------------------------------------------------
box
-------------------------------------------------- */
.c-box {
	position: relative;
	background: #fff;
	padding: 2rem;
	margin-bottom: 4rem;
	border-radius: 10px;
	z-index: 1;
}
.c-box.wide {
	padding: 4rem;
}
.bg-c-box:before {
	content: "";
	position: absolute;
	width: 100vw;
	height: 100%;
	right: -3%;
	top: 0;
	background: #fff;
	z-index: -1;
	border-radius: 30px;
}
.c-box-inner {
	padding: 4rem 0;
}
.c-box-inner.center {
	text-align: center;
}
@media screen and (max-width: 800px) {
	.c-box.wide {
		padding: 2rem;
	}
	.c-box.bg-c-box {
		padding: 2rem 2rem 2rem 0;
	}
	.c-box-inner {
		padding: 1rem 0;
	}
	.bg-c-box:before {
		right: 0;
	}
}
@media screen and (max-width: 420px) {
	.c-box {
		/*border-radius: 5px 30px 30px 5px;*/
		border-radius: 5px;
	}
	.c-box.map-container::after, .c-box.map-container::before {
		content: "";
		width: 30px;
		height: 30px;
		background-color: #fff;
		right: 0;
		top: 0;
		position: absolute;
		border-radius: 5px;
	}
	.c-box.map-container::after {
		right: 0;
		bottom: 0;
		top: auto;
	}
	.bg-c-box::before {
		width: 110vw;
	}
	.c-box.bg-c-box {
		padding: 2rem 3rem 2rem 1.5rem;
	}
	.c-box.wide {
		border-radius: 10px;
	}
}
/* --------------------------------------------------
block
-------------------------------------------------- */
.block-row {
	max-width: 1400px;
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	z-index: 2;
	flex-wrap: wrap;
	position: relative;
}
.block-main {
	width: 70%;
	order: 2;
}
.block-side {
	width: 30%;
}
.block-half {
	width: calc(50% - 2em);
	margin-right: 1em;
	margin-bottom: 2em;
}
.block-half:nth-child(even) {
	margin-left: 1em;
}
.block-pht-l {
	text-align: left;
	margin-right: 3rem;
	margin-bottom: 3rem;
	flex: 1;
}
.block-pht-l.own, .block-pht-r.own {
	flex: unset;
}
.block-pht-r {
	text-align: right;
	order: 2;
	margin-left: 3rem;
	margin-bottom: 3rem;
	flex: 1;
}
.block-txt {
	flex: 2;
	margin-bottom: 3rem;
}
@media screen and (max-width: 1280px) {
	.block-row {
		margin: 0 auto;
	}
}
@media screen and (max-width: 800px) {
	.block-row {
		width: 100%;
		/* flex-direction: column; */
		display: block;
	}
	.block-main {
		width: 100%;
		order: 1;
	}
	.block-side {
		order: 2;
		width: auto;
	}
	.block-half {
		width: auto;
		margin: 0 0 1em;
	}
	.block-half:nth-child(even) {
		margin: 0 0 1em;
	}
	.block-pht-l {
		text-align: center;
		order: 1;
		margin-right: 0;
		margin-bottom: 2rem;
	}
	.block-pht-r {
		text-align: center;
		order: 1;
		margin-left: 0;
		margin-bottom: 2rem;
	}
	.block-txt {
		order: 2;
	}
}
/* --------------------------------------------------

element

-------------------------------------------------- */
/* --------------------------------------------------
page-ttl
-------------------------------------------------- */
.page-ttl {
	position: relative;
	color: #FFF;
	padding: 4% 0;
}
.page-ttl:before {
	content: "";
	width: 100%;
	height: 100%;
	height: calc(100% + 180px);
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -10;
	background: -moz-linear-gradient(left, #005AAC, #00AFD5);
	background: -webkit-linear-gradient(left, #005AAC, #00AFD5);
	background: linear-gradient(to right, #005AAC, #00AFD5);
}
.page-ttl.ttl-foodtimes:after, .page-ttl.ttl-ramen:after, .page-ttl.ttl-sweetshall:after, .page-ttl.ttl-car:after {
	content: "";
	display: block;
	position: absolute;
	background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
	width: 100%;
	height: calc(100% + 180px);
	right: 0;
	bottom: 0;
}
.page-ttl.ttl-flight:before {
	background: url("../img/common/bg_ttl_flight.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-shops:before {
	background: url("../img/common/bg_ttl_shops.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-ramen:before {
	background: url("../img/common/bg_ttl_ramen.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-foodtimes:before {
	background: url("../img/common/bg_ttl_foodtimes.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-sweetshall:before {
	background: url("../img/common/bg_ttl_sweetshall.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-service:before {
	background: url("../img/common/bg_ttl_service.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-access:before {
	background: url("../access/img/bg_ttl_bus.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl.ttl-map:before {
	background: url("../img/common/bg_ttl_map.jpg") right top no-repeat;
	background-size: cover;
}
.page-ttl .inner {
	display: flex;
	justify-content: center;
	flex-direction: column;
	min-height: 260px;
	position: relative;
	z-index: 1;
}
.page-ttl h2 {
	display: block;
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.2;
	letter-spacing: .05em;
	width: 100%;
}
.page-ttl.ttl-flight h2 {
	text-shadow: 0px 0px 10px #214361;
}
.page-ttl.ttl-flight .read {
	text-shadow: 0px 0px 7px #214361;
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.page-ttl {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		min-height: calc(260px + 8%);
	}
	.page-ttl .inner {
		display: block;
		width: 100%;
		max-width: 1080px;
		min-height: 0;
		padding: 4rem 0;
	}
}
@media screen and (max-width: 800px) and (-ms-high-contrast: none) {
	.page-ttl .inner {
		height: auto;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.page-ttl .inner {
		padding: 0 4%;
	}
	.page-ttl .inner p {
		word-break: break-all;
		max-width: 88rem;
		width: 100%;
	}
}
.page-ttl h2 {
	text-shadow: 0px 0px 10px #214361;
}
.page-ttl .read {
	text-shadow: 0px 0px 7px #214361;
}
.page-ttl h2 img, .page-ttl h2 img[src$=".svg"] {
	height: 100%;
	width: auto;
	padding: 5px 0;
}
.page-ttl h2 span {
	font-size: 4.0rem;
}
.page-ttl .read {
	margin-top: 2em;
	font-size: 1.5rem;
	display: block;
	max-width: 45em;
	font-weight: bold;
}
.page-ttl .pct-icon {
	align-self: flex-start;
	margin-bottom: 40px;
}
.page-ttl .pct-icon img {
	max-height: 40px;
	width: auto;
}
.page-ttl p {
	display: flex;
	align-items: center;
}
.page-ttl .txt-floor {
	align-self: flex-start;
	margin: 20px 20px 20px 0;
}
.page-ttl .btn-bookmark {
	display: inline-block;
}
.page-ttl .btn-bookmark a {
	padding: 10px;
	display: inline-block;
	width: 40px;
	height: 40px;
	transition: .25s;
	border-radius: 50%;
	background: #FFF;
}
.page-ttl .btn-bookmark a.active {
	background: #00AFD6;
	color: #FFF;
}
@media screen and (min-width: 801px) {
	.page-ttl .btn-bookmark a:hover {
		background: #00AFD6;
		color: #FFF;
	}
}
.page-ttl .cate-area {
	margin-top: 4rem;
}
.page-ttl .cate-area span {
	margin-bottom: 1em;
}
.page-ttl .cate-area .ico-cate01 {
	color: #005CAD;
	border: 1px solid #FFF;
	background: #FFF;
	border-radius: 3px;
}
.page-ttl .cate-area .ico-cate02 {
	color: #FFF;
	border: 1px solid #FFF;
	border-radius: 3px;
}
@media screen and (max-width: 800px) {
	.page-ttl {
		text-align: center;
		padding: 40px 0;
	}
	.page-ttl .inner {
		min-height: inherit;
		align-items: flex-start;
	}
	.page-ttl:before {
		height: calc(100% + 95px);
	}
	.page-ttl h2 {
		font-size: 3.6rem;
		text-align: left;
	}
	.page-ttl h2 span {
		font-size: 2.7rem;
	}
	.page-ttl .read {
		margin-top: 1em;
		text-align: left;
	}
	.page-ttl .pct-icon {
		margin-bottom: 20px;
	}
	.page-ttl .pct-icon img {
		max-height: 20px;
	}
	.page-ttl .txt-floor {
		align-self: center;
	}
	.page-ttl .cate-area {
		margin-top: 3rem;
		text-align: left;
	}
	.page-ttl .cate-area span {
		margin-bottom: 10px;
	}
	.page-ttl .btn-bookmark a {
		padding: 6px;
		width: 36px;
		height: 36px;
	}
	.page-ttl.ttl-shops:after, .page-ttl.ttl-foodtimes:after, .page-ttl.ttl-ramen:after, .page-ttl.ttl-sweetshall:after, .page-ttl.ttl-service:after {
		background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2));
	}
	.page-ttl.ttl-target:after, .page-ttl.ttl-access:after, .page-ttl.ttl-subway:after, .page-ttl.ttl-bus:after, .page-ttl.ttl-car:after, .page-ttl.ttl-taxi:after, .page-ttl.ttl-rent:after {
		content: "";
		display: block;
		position: absolute;
		background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.2));
		width: 100%;
		height: calc(100% + 180px);
		right: 0;
		bottom: 0;
	}
}
@media screen and (max-width: 600px) {
	.page-ttl {
		text-align: center;
		padding: 20px 0 50px;
	}
	.page-ttl h2 {
		font-size: 2.4rem;
	}
}
/* --------------------------------------------------
ttl
-------------------------------------------------- */
.sttl span {
	letter-spacing: .2rem;
	font-size: 2.4rem;
	padding: 1rem 0;
	margin-bottom: 5rem;
	position: relative;
	font-weight: bold;
	display: inline-block;
}
.sttl span:before {
	transform: skewX(30deg);
	content: "";
	width: 70%;
	height: 5px;
	background: #005AAC;
	position: absolute;
	bottom: -5px;
	left: 0;
}
.sttl span:after {
	content: "";
	width: calc(30% - 6px);
	height: 5px;
	background: #00AFD5;
	position: absolute;
	bottom: -5px;
	right: 0;
	transform: skewX(30deg);
}
.sttl.ttl-emergency span:before {
	background: #D12E2E;
}
.sttl.ttl-emergency span:after {
	background: #FF8000;
}
.ssttl {
	letter-spacing: .3rem;
	font-size: 2.4rem;
	padding: 1rem 1rem 1.5rem 1rem;
	margin-bottom: 3rem;
	position: relative;
	font-weight: bold;
	line-height: 1.2;
}
.ssttl:before {
	content: "";
	width: 30%;
	height: 4px;
	background: #00AFD5;
	position: absolute;
	bottom: -5px;
	left: 0;
}
.ssttl:after {
	position: absolute;
	content: '';
	left: 30%;
	bottom: -5px;
	border: none;
	border-left: solid 4px #00AFD5;
	border-top: solid 4px transparent;
}
.ssttl span:before {
	content: "";
	width: calc(70% - 11px);
	height: 4px;
	background: #005AAC;
	position: absolute;
	bottom: -5px;
	right: 0;
}
.ssttl span:after {
	position: absolute;
	content: '';
	right: calc(70% - 11px);
	bottom: -5px;
	border: none;
	border-right: solid 4px #005AAC;
	border-bottom: solid 4px transparent;
}
.ttl-b, .ttl-lb {
	letter-spacing: .2rem;
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 1em;
	line-height: 1.4;
}
.ttl-lb {
	color: #0059AC;
}
.ttl-food {
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 4rem;
}
.ttl-food:before {
	font-weight: normal;
	margin-right: 1.5rem;
}
.ttl-block {
	display: flex;
	align-items: center;
	margin-bottom: 2rem;
	flex-wrap: wrap;
}
.ttl-block .ttl-b, .ttl-block .ttl-lb {
	margin: 0 1em 0 0;
}
.ttl-sec {
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 1em;
	border-left: 5px solid #00AFD6;
	padding-left: 1em;
	line-height: 1.2;
}
.ttl-b img {
	width: 1.4em;
	margin-right: .5em;
}
@media screen and (max-width: 800px) {
	.ssttl, .sttl span {
		font-size: 2.2rem;
		padding: 1rem 0 1rem 0;
		margin-bottom: 3rem;
		letter-spacing: .1rem;
	}
	.ttl-b, .ttl-lb {
		font-size: 2.2rem;
		margin-bottom: 2rem;
		letter-spacing: .1rem;
	}
}
@media screen and (max-width: 420px) {
	.ttl-sec {
		font-size: 2rem;
	}
	.ttl-b, .ttl-lb {
		font-size: 2rem;
		margin-bottom: 1rem;
	}
}
.ttl-info {
	font-size: 2.7rem;
	font-weight: bold;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #F0F0F0;
}
.sttl-info {
	font-size: 2.5rem;
	font-weight: bold;
	padding-bottom: 1.5rem;
	margin-bottom: 2rem;
	display: flex;
}
.sttl-info:before {
	content: "";
	background: url("../help/img/icon_q.svg") no-repeat;
	background-size: contain;
	width: 30px;
	height: 30px;
	display: inline-block;
	padding-right: .5em;
	margin-top: 5px;
}
.col-ttl-area {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}
@media screen and (max-width: 800px) {
	.col-ttl-area {
		display: block;
		justify-content: space-between;
		align-items: baseline;
	}
	.col-ttl-area .now {
		text-align: right;
		margin-bottom: 2rem;
		margin-top: -.5rem;
	}
	.sttl-info:before {
		width: 20px;
		height: 20px;
	}
}
/* --------------------------------------------------
ico
-------------------------------------------------- */
.ico-cate01, .ico-cate02, .ico-terminal, .ico-gate, .ico-area, .ico-area-pass {
	box-sizing: border-box;
	min-width: 120px;
	display: inline-block;
	font-size: 1.4rem;
	text-align: center;
	padding: .5rem;
	margin-right: 1em;
}
.ico-cate01, .ico-terminal, .ico-terminal-s {
	background: #005CAD;
	color: #fff;
}
.ico-cate02, .ico-gate, .ico-condition {
	border: 1px solid #005CAD;
	color: #005CAD;
}
.ico-area {
	background: #00AFD5;
	color: #fff;
	border-radius: 3px;
}
.ico-area-pass {
	background: #E97F7F;
	color: #fff;
	border-radius: 3px;
}
.ico-terminal-s, .ico-condition {
	box-sizing: border-box;
	width: 5em;
	display: inline-block;
	font-size: 1.4rem;
	text-align: center;
	padding: .2rem 0;
}
.ico-q, .ico-a {
	font-size: 2.4rem;
	display: inline-block;
	width: 44px;
	height: 44px;
	line-height: 44px;
	text-align: center;
	border-radius: 22px;
	color: #FFF;
	font-weight: bold;
}
.ico-q {
	background: #00AFD6;
}
.ico-a {
	background: #005AAC;
}
@media screen and (max-width: 800px) {
	.ico-q, .ico-a {
		font-size: 2.0rem;
		display: inline-block;
		width: 30px;
		height: 30px;
		line-height: 30px;
	}
	.ico-area, .ico-area-pass {
		margin-top: 1rem;
	}
}
.ico-mapnum-food, .ico-mapnum-sweets, .ico-mapnum-cafe {
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border-radius: 20px;
	color: #FFF;
	font-weight: bold;
}
.ico-mapnum-food {
	background: #333;
}
.ico-mapnum-sweets {
	background: #9B4450;
}
.ico-mapnum-cafe {
	background: #1A9630;
}
/* --------------------------------------------------
txt
-------------------------------------------------- */
.txt-gray {
	font-size: 1.5rem;
	color: #666666;
}
.txt-gray span {
	margin-left: 1em;
}
.txt-b {
	font-weight: bold;
}
.txt-shop dt, .txt-shop dd {
	font-weight: bold;
}
.txt-shop dt {
	font-size: 1.0rem;
}
.txt-shop dd {
	font-size: 1.4rem;
}
.txt-floor {
	font-weight: bold;
	background: #323333;
	color: #fff;
	padding: .2rem 1em;
	display: inline-block;
	border-radius: 3em;
}
.txt-open {
	font-size: 1.3rem;
}
.txt-open:before {
	font-family: 'icoairport';
	content: "\e912";
	margin-right: .5rem;
}
.txt p {
	margin-bottom: 1em;
}
.txt p:last-of-type {
	margin-bottom: 0;
}
/* --------------------------------------------------
pht
-------------------------------------------------- */
.pht-cover, .pht-contain, .pht-square, .pht-circle {
	text-align: center;
	margin: 0 auto;
	position: relative;
	max-width: 800px;
}
.pht-cover .frame img, .pht-square .frame img, .pht-circle .frame img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	max-height: 150%;
	max-width: 150%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.pht-contain .frame img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-height: 100%;
	max-width: 150%;
}
a .pht-cover .frame img, a .pht-square .frame img, a .pht-contain .frame img, a .pht-circle .frame img {
	transition: all .5s;
}
a:hover .pht-cover .frame img, a:hover .pht-square .frame img, a:hover .pht-contain .frame img, a:hover .pht-circle .frame img {
	transform: translate(-50%, -50%) scale(1.1);
}
.pht-cover.round {
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
	transition: .3s ease-in;
}
a:hover .pht-cover.round {
	box-shadow: 0 3px 15px 0 rgba(0, 0, 0, 0.2);
}
/* pht-cover */
.pht-cover.round {
	border-radius: 10px;
	background: #FFF;
	overflow: hidden;
}
.pht-cover .frame {
	position: relative;
	width: 100%;
	padding-top: 60%;
	overflow: hidden;
	/*background: #fff;*/
	border-radius: 10px 10px 0 0;
}
.pht-cover.cap01 figcaption {
	display: block;
	font-size: 1.9rem;
	font-weight: bold;
	padding: 1em;
	line-height: 1.3;
}
@media screen and (max-width: 600px) {
	.pht-cover.cap01 figcaption {
		font-size: 1.5rem;
	}
}
.pht-cover.cap02 figcaption {
	display: block;
	width: 80%;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: .5em 1em;
	font-size: 1.8rem;
	background: #fff;
	font-weight: bold;
	border-top: 5px solid #00AFD5;
	text-align: left;
}
.intro-pht .pht-cover.round {
	overflow: unset;
}
.pht-cover.cap03 {
	text-align: right;
	background: #FFF;
}
.pht-cover.cap03 figcaption {
	display: inline-block;
	/* border-radius: 0 0 10px 0; */
	padding: .5em;
	text-align: right;
	font-size: 1.4rem;
	line-height: 1.3;
	background: #333;
	color: #fff;
	font-weight: bold;
	z-index: 2;
}
.pht-cover.cap03 .item-caption {
	display: inline-block;
	/* border-radius: 0 0 10px 0; */
	padding: .5em;
	text-align: right;
	font-size: 1.4rem;
	line-height: 1.3;
	background: #333;
	color: #fff;
	font-weight: bold;
	z-index: 2;
}
/* pht-contain */
.pht-contain.round {
	border-radius: 10px;
	background: #FFF;
	overflow: hidden;
}
.pht-contain .frame {
	position: relative;
	width: 100%;
	padding-top: 70%;
	overflow: hidden;
	background: #fff;
}
.pht-contain.cap01 figcaption {
	display: block;
	font-size: 2.1rem;
	font-weight: bold;
	padding: 1em 0;
}
.pht-contain.cap02 figcaption {
	display: block;
	width: 80%;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: .5em 1em;
	font-size: 2.5rem;
	background: #fff;
	font-weight: bold;
	border-top: 5px solid #00AFD5;
	text-align: left;
}
.pht-contain.cap03 figcaption {
	display: inline-block;
	position: absolute;
	bottom: 0;
	right: 0;
	padding: .5em;
	text-align: right;
	font-size: 1.4rem;
	line-height: 1.3;
	background: #333;
	color: #fff;
	font-weight: bold;
}
/* pht-square */
.pht-square.round {
	border-radius: 10px;
	background: #FFF;
	overflow: hidden;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .1);
}
.pht-square .frame {
	position: relative;
	width: 100%;
	padding-top: 80%;
	overflow: hidden;
	background: #fff;
}
.pht-square.cap01 figcaption {
	display: block;
	font-size: 2.1rem;
	font-weight: bold;
	padding: 1em 0;
}
.pht-square.cap02 figcaption {
	display: block;
	width: 80%;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: .5em 1em;
	font-size: 1.8rem;
	background: #fff;
	font-weight: bold;
	border-top: 3px solid #00AFD5;
	text-align: left;
}
.cap03 .item-description {
	padding: 2em 2em .5em;
	font-size: 1.6rem;
	text-align: left;
}
.cap03 .item-price {
	padding: 0 1em 1.5em;
	font-size: 2.4rem;
	line-height: 1.3;
	text-align: right;
	font-weight: bold;
}
.pht-square.cap03 figcaption {
	display: inline-block;
	position: absolute;
	bottom: 0;
	right: 0;
	padding: .5em;
	text-align: right;
	font-size: 1.4rem;
	line-height: 1.3;
	background: #333;
	color: #fff;
	font-weight: bold;
}
/* pht-circle */
.pht-circle {
	/*	width:100%;*/
	display: flex;
	align-items: center;
}
.pht-circle .frame {
	position: relative;
	width: 100px;
	padding-top: 100px;
	overflow: hidden;
	z-index: 1;
	border-radius: 50%;
}
.pht-circle figcaption {
	padding-left: 1rem;
	text-align: left;
}
/* shop-list */
.shop-list > ul > li > a {
	display: block;
	height: 100%;
}
.shop-list > ul > li > a .pht-cover.round {
	display: block;
	height: 100%;
	position: relative;
	padding-bottom: 40px;
}
.shop-list .floor.flight02, .shop-list .floor.flight01 {
	position: absolute;
	bottom: 0;
	width: 100%;
}
.shop-list .txt-info {
	padding: 1rem 1.5rem;
	text-align: left;
	position: relative;
}
.shop-list .txt-info .genre {
	font-size: 1.0rem;
}
.shop-list .txt-info .ttl-shop {
	font-weight: bold;
	letter-spacing: normal;
}
.shop-list .floor {
	color: #fff;
	padding: 1rem 2rem;
	font-size: 1.4rem;
	font-weight: bold;
}
.shop-list .floor.flight01 {
	background: #00AFD6;
}
.shop-list .floor.flight02 {
	background: #005BAC;
}
.shop-list .ico-mapnum-food, .shop-list .ico-mapnum-sweets, .shop-list .ico-mapnum-cafe {
	position: absolute;
	right: 1rem;
	top: -4rem;
}

/* social-frame  */

.social-frame {
	margin: 0 auto 5rem;
}

@media screen and (max-width: 1500px) {

	.social-frame {
		width: 80%;
		max-width: 1080px;
	}

}
@media screen and (max-width: 800px) {

	.social-frame {
		width: 100%;
	}

}

/* --------------------------------------------------
btn
-------------------------------------------------- */
/* btn-area  */
.btn-area {
	width: 100%;
	margin: 1em auto;
	text-align: center;
}
.btn-area > p {
	margin: 0 auto;
}
.btn-area-l {
	width: 100%;
	margin: 1em auto;
}
.btn-area-l > p {
	margin-right: auto;
}
.btn-area-r {
	width: 100%;
	text-align: center;
	margin: 1em auto;
}
.btn-area-r > p {
	margin-left: auto;
}
.btn-area-horizontal {
	width: 100%;
	margin: 1em auto;
	display: flex;
}

.btn-area-horizontal {
	width: 100%;
	margin: 1em auto;
	display: flex;
}
.btn-area-horizontal > p {
	margin-right: 1em;
}
/* btn-socialindex */
@media screen and (max-width: 800px) {
	.btn-socialindex.btn-socialindex {
		display: block;
	}
	.btn-socialindex.btn-socialindex .btn-link-lb {
		margin-bottom: 1em;
		margin-right: 0;
	}
}
/* btn-area-col2  */
.btn-area-col2 {
	width: 80%;
	margin: 4rem auto;
	padding: 20px 0;
	text-align: center;
	display: flex;
	justify-content: center;
}
.btn-area-col2 > p:first-of-type {
	padding-right: .5em;
}
.btn-area-col2 > p:last-of-type {
	padding-left: .5em;
}
/* btn-area-form  */
.btn-area-form {
	width: 80%;
	margin: 4rem auto;
	padding: 20px 0;
	text-align: center;
	display: flex;
	justify-content: center;
}
.btn-area-form > p:first-of-type {
	order: 2;
	padding-left: .5em;
}
.btn-area-form > p:last-of-type {
	order: 1;
	padding-right: .5em;
}
/* btn-area-col3  */
.btn-area-col3 {
	width: 100%;
	padding: 20px 0;
	text-align: center;
	display: flex;
	justify-content: center;
}
.btn-area-col3 > p:first-of-type {
	padding-right: .5em;
}
.btn-area-col3 > p:nth-of-type(2) {
	padding-left: .5em;
	padding-right: .5em;
}
.btn-area-col3 > p:last-of-type {
	padding-left: .5em;
}
@media screen and (max-width: 800px) {
	/* btn-area  */
	.btn-area > p, .btn-area-l > p, .btn-area-r > p {
		max-width: 90%;
	}
	/* btn-area-col2  */
	.btn-area-col2, .btn-area-form {
		display: block;
		width: 90%;
		margin: 0 auto;
	}
	.btn-area-col2 > p:first-of-type, .btn-area-col2 > p:last-of-type, .btn-area-form > p:first-of-type, .btn-area-form > p:last-of-type {
		display: block;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 1em;
	}
	/* btn-area-col3  */
	.btn-area-col3 {
		display: block;
		width: 90%;
		margin: 0 auto;
	}
	.btn-area-col3 > p:first-of-type, .btn-area-col3 > p:nth-of-type(2), .btn-area-col3 > p:last-of-type {
		display: block;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 1em;
	}
}
/* btn-link-lb  */
.btn-link-lb {
	width: 470px;
}
.btn-link-lb.full {
	width: 100%;
}
.btn-link-lb.small {
	width: auto;
}
/*.btn-link-lb a{
	display: block;
	color: #fff;
	background: #00AFD6;
	box-shadow: 0 1px 4px 0 rgba(0,0,0,.2);
	padding: 1em 1.5em;
	text-align: center;
	border-radius: 5px;
	position: relative;
	transition: box-shadow .15s ease-out, -webkit-box-shadow .15s ease-out;
}
.btn-link-lb a:hover{
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.15);
}*/
.btn-link-lb a {
	display: block;
	color: #fff;
	background-size: 100% 200%;
	transition: background-position ease 0.25s, box-shadow .15s ease-out, -webkit-box-shadow .15s ease-out;
	background-image: linear-gradient(to top, #1361A7 0%, #1361A7 50%, #00AFD6 50%, #00AFD6 100%);
	background-position: 0 0;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
	padding: 1em 1.5em;
	text-align: center;
	border-radius: 5px;
	position: relative;
}
.btn-link-lb a:hover {
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.3);
	background-position: 0 100%;
}
.btn-link-lb.own {
	width: auto;
}
.btn-link-lb.own a {
	display: inline-block;
}
.btn-link-lb.small a {
	font-size: 1.6rem;
	display: inline-block;
	min-width: 250px;
}
.btn-link-lb.inactive a {
	background: #fff;
	color: #333;
	box-shadow: none;
}
.btn-link-lb.clear a {
	background: #E2E2E2;
	color: #7C7C7E;
}
.btn-link-lb.black a {
	background: #333;
}
.btn-link-lb.arrow a {
	padding: 1em 2em 1em 1.5em;
}
.btn-link-lb.arrow a:after {
	font-family: 'icoairport';
	content: "\e90a";
	display: inline-block;
	vertical-align: middle;
	right: 1em;
	top: 50%;
	margin-top: -.8em;
	position: absolute;
}
.btn-link-lb.download a:before {
	font-family: 'icoairport';
	content: "\e913";
	display: inline-block;
	vertical-align: middle;
	margin-right: 1em;
}
.btn-link-lb.link a:after {
	font-family: 'icoairport';
	content: "\e915";
	display: inline-block;
	vertical-align: middle;
	margin-left: 1em;
}
.btn-link-lb.link-row .icon-link {
	margin-left: 2rem;
	display: inline-block;
	font-weight: bold;
}
.btn-link-lb.link-row .txt-link {
	display: block;
	font-size: 85%;
	margin-top: .5rem;
}
.btn-link-lb.link-row a {
	padding: .8em 1em;
}
.btn-link-lb.map a:before {
	font-family: 'icoairport';
	content: "\e916";
	display: inline-block;
	vertical-align: middle;
	margin-right: 1em;
	font-weight: normal;
}
@media screen and (max-width: 800px) {
	.btn-link-lb {
		width: auto;
		max-width: 100%;
		margin: 0 auto;
	}
	.btn-link-lb.small a {
		min-width: 0;
	}
}
.btn-flight .btn-link-lb img {
	display: inline-block;
	width: 40px;
	margin-right: 4rem;
	vertical-align: middle;
}
/* btn-more btn-back  */
.btn-more, .btn-back {
	width: 370px;
}
.btn-more a, .btn-back a {
	display: block;
	padding: 1.5em 1.5em 1.5em 2.5em;
	border: 3px solid #323335;
	position: relative;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: center;
	color: #000;
	border-radius: 5px;
	transition: 0.4s;
	line-height: 1.4;
}
.btn-more.white a, .btn-back.white a {
	display: block;
	border: 3px solid #fff;
	color: #fff;
}
.btn-more a:before, .btn-back a:before {
	font-family: 'icoairport';
	content: "\e902";
	font-size: 2.2rem;
	position: absolute;
	left: 2rem;
	line-height: 1;
	top: 50%;
	margin-top: -.5em;
}
.btn-more a:hover, .btn-back a:hover {
	background: #323335;
	color: #FFF;
}
.btn-back a:before {
	content: "\e901";
}
.btn-more.center a {
	display: flex;
	align-items: center;
	justify-content: center;
}
.btn-more.center a:before {
	margin-right: 2rem;
	position: relative;
	left: auto;
	display: inline-block;
	margin-top: 0;
}
@media screen and (max-width: 800px) {
	.btn-more, .btn-back {
		max-width: 100%;
		margin: 0 auto;
	}
}
/* btn-sort  */
.btn-sort {
	position: relative;
}
.btn-sort dt {
	background: #fff;
	display: flex;
	align-items: center;
	border-radius: 5px;
	padding: 1.3rem 4.5rem 1.3rem 1em;
	font-size: 1.7rem;
	font-weight: bold;
	position: relative;
	min-width: 10em;
	cursor: pointer;
}
.btn-sort dt:after {
	font-family: 'icoairport';
	content: "\e908";
	color: #005CAD;
	position: absolute;
	right: 1.2em;
	font-size: 80%;
}
.btn-sort dt.active:after {
	content: "\e90f";
}
.btn-sort dd {
	background: #fff;
	position: absolute;
	top: calc(100% + 6px);
	width: 100%;
	z-index: 2;
	box-shadow: 0px 0px 8px 0px rgba(45, 79, 105, 0.2), 0px 4px 16px 0px rgba(45, 79, 105, 0.08);
	display: none;
	border-radius: 5px;
}
.btn-sort dd a {
	display: block;
	padding: 1rem;
	text-align: center;
	border-top: 1px solid #f0f0f0;
}
.btn-sort dd a:hover {
	background: #fafbfb;
}
@media screen and (max-width: 800px) {
	.btn-sort dt {
		max-width: 220px;
	}
}
/* --------------------------------------------------
btn-link-right
-------------------------------------------------- */
.btn-link-right a {
	padding: 1em 3.0em 1em 1.5em;
	background: #fff;
	position: relative;
	font-weight: bold;
	display: flex;
	align-items: center;
	border-radius: 5px;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
}
.btn-link-right a:before {
	font-family: 'icoairport';
	content: "\e90a";
	position: absolute;
	right: 2.2rem;
	line-height: 1;
	color: #005CAD;
	transition: .3s ease-in;
	top: 50%;
	transform: translateY(-50%);
}
.btn-link-right a:hover {
	box-shadow: 0 3px 12px 0 rgba(0, 0, 0, 0.2);
}
.btn-link-right a:hover:before {
	right: 1.7rem;
}
@media screen and (max-width: 800px) {
	.btn-link-right a {
		padding: 1em 3.0em 1em 1em;
	}
	.btn-link-right a:before {
		right: 1.6rem;
	}
}
/* --------------------------------------------------
btn-link-right
-------------------------------------------------- */
.btn-link-select {
	padding: 1em;
	background: #fff;
	font-size: 2.4rem;
	position: relative;
	font-weight: bold;
	display: flex;
	align-items: center;
	border-radius: 5px;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
}
.btn-link-select .btn-area-col2 {
	margin: 0;
	width: auto;
	padding: 0;
	margin-left: auto;
}
/* --------------------------------------------------
btn-p-link
-------------------------------------------------- */
.btn-p-link li {
	display: inline-block;
}
.btn-p-link a {
	background: #fff;
	display: inline-block;
	border-radius: 5px;
	padding: 1.5rem 1.5em;
	font-weight: bold;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
}
.btn-p-link a:before {
	font-family: 'icoairport';
	content: "\e908";
	display: inline-block;
	margin-right: 2rem;
	color: #005CAD;
}
/* --------------------------------------------------
btn-select
-------------------------------------------------- */
.btn-select {
	margin-bottom: 3rem;
	display: flex;
	flex-wrap: wrap;
}
.btn-select li {
	margin-right: 1em;
	margin-bottom: 1em;
}
.btn-select li:last-child {
	margin-right: 0;
}
.btn-select a {
	display: block;
	padding: .8em 2.5em;
	background: #FFF;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
	border-radius: 5px;
}
.btn-select a.select {
	background: #005BAC;
	color: #fff;
	box-shadow: none;
}
@media screen and (max-width: 800px) {
	.btn-select li {
		margin: 0 .5em .5em;
	}
	.btn-select li:last-child {
		margin-right: .5em;
	}
}
/* --------------------------------------------------

module

-------------------------------------------------- */
/* --------------------------------------------------
skip-nav
-------------------------------------------------- */
.skip-nav {
	margin: 0;
}
.skip-link {
	position: absolute;
	top: -3em;
	left: 10px;
	height: 1px;
	padding: 2px 10px;
	text-align: left;
	overflow: hidden;
	color: #FFF !important;
	text-decoration: none;
	background: #323335;
	transition: top .3s ease;
	z-index: 9999;
	vertical-align: middle;
	display: table;
	border-radius: 0 0 5px 5px;
}
.skip-link:focus {
	left: 10px;
	top: 0;
	width: auto;
	height: 20px;
	overflow: visible;
}
/* --------------------------------------------------
emergency
-------------------------------------------------- */
.emergency {
	position: relative;
	z-index: 120;
}
.emergency dl {
	display: flex;
}
.emergency dt {
	background: #005AAC;
	width: 10%;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 4.4rem;
	color: #fff;
}
.emergency dd {
	padding: 1.5em 60px 1.5em 2em;
	background: #fff;
	flex-grow: 1;
	border-bottom: #C6C6C6 1px solid;
	position: relative;
}
.emergency li {
	margin-bottom: .5em;
	position: relative;
}
.emergency li:last-child {
	margin-bottom: 0;
}
.emergency li a {
	color: #003B71;
	text-decoration: underline;
	padding-left: 1.1em;
	display: block;
}
.emergency li a:hover {
	text-decoration: none;
}
.emergency li:before {
	font-family: 'icoairport';
	content: "\e90d";
	position: absolute;
	top: 0;
	left: 0;
}
.emergency .more-link {
	text-align: right;
	margin-right: -2em;
}
.emergency .more-link a {
	color: #005AAC;
}
/* -- more-link -- */
.more-link a {
	transition-duration: 0.3s;
}
.more-link a:before, .more-link span:before {
	content: "\e902";
	font-family: 'icoairport';
	display: inline-block;
	margin-right: .5em;
}
.more-link span:before {
	color: #005AAC;
}
.more-link a:hover {
	opacity: .7;
}
.btn-close {
	position: absolute;
	top: 20px;
	right: 20px;
}
.btn-close a {
	display: block;
	width: 28px;
	height: 28px;
}
.btn-close a:hover {
	opacity: .7;
}
/*.btn-close a span:before {
    content: "";
    display: block;
    background: #003E75;
    height: 100%;
    width: 2px;
    position: absolute;
    left: 50%;
    top: 0;
    transform: rotate(45deg);
    transform-origin: center;
}

.btn-close a span:after {
    content: "";
    display: block;
    background: #003E75;
    height: 100%;
    width: 2px;
    position: absolute;
    left: 50%;
    top: 0;
    transform: rotate(-45deg);
    transform-origin: center;
}*/
@media screen and (max-width: 1500px) {
	.emergency dt {
		width: 200px;
	}
}
@media screen and (max-width: 800px) {

	.emergency dt {
		font-size: 2rem;
		width: 4rem;
		min-width: 4rem;
	}
	.emergency dd {
		padding: .5em 45px .5em 1em;
		width: calc(100% - 6rem);
	}
	.emergency ul {
		margin-bottom: 5px;
		
	}
	.emergency li {
		width: 100%;
		
	}
	.emergency li a {
		font-size: 1.6rem;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.btn-close {
		position: absolute;
		top: 12px;
		right: 12px;
	}
	
	.btn-close a {
		width: 24px;
		height: 24px;
	}
}
/* --------------------------------------------------
breadCrumbs
-------------------------------------------------- */
.breadCrumbs {
	width: 100%;
	background: #E2E2E2;
	padding: 1.5em 50px 1.5em 0;
}
.breadCrumbs ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.breadCrumbs li {
	font-size: 1.4rem;
	display: flex;
	align-items: center;
	padding: .5rem;
}
.breadCrumbs li:after {
	font-family: 'icoairport';
	content: "\e90a";
	display: block;
	;
	margin: 0 2em;
	vertical-align: middle;
	color: #00AED6;
}
.breadCrumbs li:last-of-type:after {
	display: none;
}
.breadCrumbs a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 800px) {
	.breadCrumbs {
		padding: 1em 0;
	}
	.breadCrumbs li:after {
		margin: 0 1.5em;
	}
}
/* --------------------------------------------------
btn-tab
-------------------------------------------------- */
.btn-tab {
	display: flex;
	border-radius: 5px;
	line-height: 1.2;
	border: 1px solid #009ACB;
	background: #009ACB;
	justify-content: center;
	box-sizing: border-box;
	overflow: hidden;
	margin-bottom: 3em;
}
.btn-tab li {
	flex: 1;
}
.btn-tab li:first-child a {
	border-radius: 5px 0 0 5px;
}
.btn-tab li:last-child a {
	border-radius: 0 5px 5px 0;
}
.btn-tab a {
	display: block;
	font-weight: bold;
	padding: 1em 4em;
	text-align: center;
	background: #fff;
	transition: all .3s;
	font-size: 1.8rem;
}
.btn-tab a.select {
	background: #009ACB;
	color: #fff;
}
@media screen and (max-width: 800px) {
	.btn-tab {
		margin-bottom: 2em;
	}
}
@media screen and (max-width: 480px) {
	.btn-tab {
		margin-bottom: 1em;
	}
}
/* --------------------------------------------------
tab-arrow
-------------------------------------------------- */
.btn-tab.tab-arrow li {
	margin-right: 2px;
	flex: 1;
}
.btn-tab.tab-arrow li:last-of-type {
	margin-right: 0;
}
.btn-tab.tab-arrow {
	border: none;
	overflow: visible;
	background: none;
	justify-content: space-between;
}
.btn-tab.tab-arrow a {
	background: #E2E2E2;
	color: #7C7C7E;
	position: relative;
	font-weight: bold;
	padding: 1.5em .3em;
	text-align: center;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .3s;
}
.btn-tab.tab-arrow a.select {
	background: #fff;
	color: #00AED6;
	box-shadow: 0 0 5px rgba(0, 0, 0, .15);
}
.btn-tab.tab-arrow a:after {
	content: '';
	width: 0;
	height: 0;
	transform: rotate(45deg);
	position: absolute;
	bottom: -9px;
	left: 50%;
	margin-left: -10px;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.05);
	border-top: 10px solid transparent;
	border-right: 10px solid #FFF;
	border-bottom: 10px solid #FFF;
	border-left: 10px solid transparent;
	opacity: 0;
	transition: all .3s;
}
.btn-tab.tab-arrow a.select:after {
	opacity: 1;
}
.btn-tab a:hover {
	background: #00AED6;
	color: #FFF;
}
.tab-block {
	margin-bottom: 5%;
}
.tab-block > li > div {
	margin-bottom: 10rem;
}
.tab-block > li > div.c-box {
	margin-bottom: 4rem;
}
.tab-block > li > div:last-of-type {
	margin-bottom: 0;
}
.tab-block > li {
	display: none;
}
.tab-block > li.active {
	display: block;
}
@media screen and (max-width: 800px) {
	.tab-block > li > div {
		margin-bottom: 10%;
	}
	.tab-block > li > div.c-box {
		margin-bottom: 2rem;
	}
	.btn-tab.tab-arrow a {
		font-size: 1.6rem;
	}
	.btn-tab.tab-arrow a.select:after {
		content: none;
	}
}
/* --------------------------------------------------
sp-2col-tab
-------------------------------------------------- */
@media screen and (max-width: 800px) {
	.sp-2col-tab {
		flex-wrap: wrap;
	}
	.btn-tab.tab-arrow.sp-2col-tab li {
		margin-right: 0;
		flex: auto;
		width: 50%;
	}
	.sp-2col-tab li:first-child a {
		border-radius: 5px 0 0 0;
		border-bottom: 1px solid #F0F0F0;
		border-right: 1px solid #F0F0F0;
	}
	.sp-2col-tab li:nth-child(2) a {
		border-radius: 0 5px 0 0;
		border-bottom: 1px solid #F0F0F0;
	}
	.sp-2col-tab li:nth-child(3) a {
		border-right: 1px solid #F0F0F0;
	}
	.sp-2col-tab li:last-child a {
		border-radius: 0 0 5px 5px;
		border-top: 1px solid #F0F0F0;
	}
	.sp-2col-tab .tab-arrow a {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 480px) {
	.sp-2col-tab a {
		font-size: 1.4rem;
	}
}
/*-----------------------------------------------
stepBar
-------------------------------------------------- */
.stepbar {
	display: flex;
	width: 100%;
	margin: 0 0 60px 0;
	padding: 0;
	list-style: none;
	position: relative;
}
.stepbar li {
	box-sizing: border-box;
	position: relative;
	width: calc(33% - 16px);
	height: 130px;
	margin: 0;
	padding: 1px 0;
	background: #f0f0f0;
	text-align: center;
}
.stepbar.step-col4 li {
	width: calc(25% - 16px);
}
.stepbar.step-col5 li {
	width: calc(20% - 16px);
}
.stepbar li:nth-child(1) {
	z-index: 3;
}
.stepbar li:nth-child(2) {
	z-index: 2;
}
.stepbar li:nth-child(3) {
	z-index: 1;
}
.stepbar.step-col4 li:nth-child(1) {
	z-index: 4;
}
.stepbar.step-col4 li:nth-child(2) {
	z-index: 3;
}
.stepbar.step-col4 li:nth-child(3) {
	z-index: 2;
}
.stepbar.step-col4 li:nth-child(4) {
	z-index: 1;
}
.stepbar.step-col5 li:nth-child(1) {
	z-index: 5;
}
.stepbar.step-col5 li:nth-child(2) {
	z-index: 4;
}
.stepbar.step-col5 li:nth-child(3) {
	z-index: 3;
}
.stepbar.step-col5 li:nth-child(4) {
	z-index: 2;
}
.stepbar.step-col5 li:nth-child(5) {
	z-index: 1;
}
.stepbar li:first-child {
	margin-left: 0;
}
.stepbar li:last-child {
	margin-right: 0;
}
.stepbar li::before {
	position: absolute;
	content: "";
	top: 0;
	left: 1px;
	width: 0;
	height: 0;
	border-top: 65px solid transparent;
	border-right: 0;
	border-bottom: 65px solid transparent;
	border-left: 60px solid #f0f0f0;
}
.stepbar li::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-top: 65px solid transparent;
	border-right: 0;
	border-bottom: 65px solid transparent;
	border-left: 60px solid #F0F0F0;
}
.stepbar li .stepbar_item {
	display: inline-block;
	padding: 30px 0 30px 60px;
	width: 100%;
	height: 100%;
	background: #E2E2E2;
	font-weight: bold;
}
.stepbar li .stepbar_item::before {
	position: absolute;
	content: "";
	top: 0;
	left: 100%;
	width: 0;
	height: 0;
	border-top: 65px solid transparent;
	border-right: 0;
	border-bottom: 65px solid transparent;
	border-left: 60px solid #F0F0F0;
}
.stepbar li .stepbar_item::after {
	position: absolute;
	content: "";
	top: 0;
	left: calc(100% - 1px);
	width: 0;
	height: 0;
	border-top: 65px solid transparent;
	border-right: 0;
	border-bottom: 65px solid transparent;
	border-left: 60px solid #E2E2E2;
}
.stepbar li span {
	display: block;
	margin-top: 5px;
	font-size: 105%;
}
.stepbar li span a {
	color: #fff;
	text-decoration: underline;
}
.stepbar li span a br {
	display: none;
}
.stepbar li .step1 {
	background: #00AFD6;
	color: #ffffff;
}
.stepbar li .step1::after, .stepbar li .step2::after, .stepbar li .step3::after, .stepbar li .step4::after, .stepbar li .step5::after {
	display: none;
}
.stepbar li .step1::before {
	border-left: 60px solid #00AFD6;
}
.stepbar li .step2 {
	background: #0086C2;
	color: #ffffff;
}
.stepbar li .step2::before {
	border-left: 60px solid #0086C2;
}
.stepbar li .step3 {
	background: #005CAD;
	color: #ffffff;
}
.stepbar li .step3::before {
	border-left: 60px solid #005CAD;
}
.stepbar li .step4, .stepbar li .step5 {
	color: #fff;
}
.step-col4 li .step3, .step-col5 li .step3 {
	background: #007ACC;
}
.stepbar.step-col4 li .step3:before, .stepbar.step-col5 li .step3:before {
	border-left: 60px solid #007ACC;
}
.stepbar.step-col4 li .step4, .stepbar.step-col5 li .step4 {
	background: #005CAD;
}
.stepbar.step-col4 li .step4:before, .stepbar.step-col5 li .step4:before {
	border-left: 60px solid #005CAD;
}
.step-col5 li .step5 {
	background: #00427D;
}
.stepbar.step-col5 li .step5:before {
	border-left: 60px solid #00427D;
}
@media screen and (max-width: 800px) {
	.stepbar {
		margin-bottom: 3rem;
		flex-wrap: wrap;
		width: calc(100% - 35px);
	}
	.stepbar li {
		width: 64%;
		height: 70px;
	}
	.stepbar.step-col4 li {
		width: 64%;
	}
	.stepbar.step-col5 li {
		width: 64%;
	}
	.stepbar li::before {
		border-top: 35px solid transparent;
		border-bottom: 35px solid transparent;
		border-left: 35px solid #fff;
	}
	.stepbar li::after {
		border-top: 35px solid transparent;
		border-bottom: 35px solid transparent;
		border-left: 35px solid #F0F0F0;
	}
	.stepbar li .stepbar_item {
		padding: 0 0 0 35px;
		font-size: 90%;
		display: flex;
		justify-content: center;
		flex-direction: column;
		line-height: 1.5;
	}
	.stepbar li .stepbar_item::before {
		border-top: 35px solid transparent;
		border-bottom: 35px solid transparent;
		border-left: 35px solid #fff;
	}
	.stepbar li .stepbar_item::after {
		border-top: 35px solid transparent;
		border-bottom: 35px solid transparent;
		border-left: 35px solid #E2E2E2;
	}
	.stepbar li .step1::before {
		border-left: 35px solid #00AFD6;
	}
	.stepbar li .step2::before {
		border-left: 35px solid #0086C2;
	}
	.stepbar li .step3::before {
		border-left: 35px solid #005CAD;
	}
	.stepbar.step-col4 li .step3:before, .stepbar.step-col5 li .step3:before {
		border-left: 35px solid #007ACC;
	}
	.stepbar.step-col4 li .step4:before, .stepbar.step-col5 li .step4:before {
		border-left: 35px solid #005CAD;
	}
	.stepbar.step-col5 li .step5:before {
		border-left: 35px solid #00427D;
	}
	.stepbar li span {
		margin-top: .2rem;
	}
	.stepbar li span a br {
		display: block;
	}
	.stepbar li:nth-child(2) {
		margin: 10px auto;
	}
	.stepbar.step-col4 li:nth-child(2) {
		margin: 15px 0 0 12.5%;
	}
	.stepbar.step-col4 li:nth-child(3) {
		margin: 15px 0 15px 25%;
	}
	.stepbar.step-col5 li:nth-child(2) {
		margin: 15px 0 0 10%;
	}
	.stepbar.step-col5 li:nth-child(3) {
		margin: 15px 0 0 20%;
	}
	.stepbar.step-col5 li:nth-child(4) {
		margin: 15px 0 15px 30%;
	}
	.stepbar li:last-child {
		margin-left: auto;
	}
}
@media screen and (max-width: 400px) {
	.stepbar {
		margin-bottom: 1.5rem;
	}
	.stepbar li, .stepbar.step-col4 li, .stepbar.step-col5 li {
		width: 80%;
	}
	.stepbar li:nth-child(2) {
		margin: 5px auto;
	}
	.stepbar.step-col4 li:nth-child(2) {
		margin: 5px 0 0 6%;
	}
	.stepbar.step-col4 li:nth-child(3) {
		margin: 5px 0 5px 12%;
	}
	.stepbar.step-col5 li:nth-child(2) {
		margin: 5px 0 0 5%;
	}
	.stepbar.step-col5 li:nth-child(3) {
		margin: 5px 0 0 10%;
	}
	.stepbar.step-col5 li:nth-child(4) {
		margin: 5px 0 5px 15%;
	}
}
/* --------------------------------------------------
paging
-------------------------------------------------- */
.paging-wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.paging-wrap .paging-result {
	margin-right: 2em;
}
.paging {
	padding: 20px 0;
	position: relative;
	overflow: hidden;
	margin: 2% 0;
	font-size: 1.7rem;
	text-align: right;
}
.paging > span {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: .5rem;
}
.paging a {
	line-height: 1;
	letter-spacing: normal;
	display: inline-block;
	padding: 1.2rem 1.5rem;
	text-decoration: none;
	color: #272727;
	background: #fff;
	border-radius: 3px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
.paging a:hover {
	opacity: 1;
	background: #E2E2E2;
	color: #000;
}
.paging .current a {
	color: #FFF;
	background: #323335;
}
.paging .prev a, .paging .next a {
	padding: 1.2rem;
}
.paging .prev a:before {
	font-family: 'icoairport';
	content: "\e909";
	display: block;
}
.paging .next a:before {
	font-family: 'icoairport';
	content: "\e90a";
	display: block;
}
.paging .prev a:hover:before, .paging .next a:hover:before {
	color: #000;
}
.paging .prev img, .paging .next img {
	width: 10px;
}
.paging .prev img {
	transform: rotateZ(180deg);
}
.paging .prev a:hover .cls-1 {
	fill: #fff
}
.conditions, .paging-sort {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 4rem;
}
.conditions {
	align-items: baseline;
}
.conditions dl {
	display: flex;
	font-size: 1.7rem;
	font-weight: bold;
}
.conditions dt {
	margin-right: 1rem;
	min-width: 9rem;
}
.conditions dd a {
	background: #fff;
	padding: .2rem 1rem;
	border-radius: 5px;
	display: inline-block;
	margin-right: .5rem;
	margin-bottom: .5rem;
}
.conditions .txt-result {
	min-width: 12em;
	font-weight: bold;
	font-size: 1.7rem;
}
.conditions .txt-result span {
	font-size: 4.0rem;
	margin-right: 1rem;
	display: inline-block;
}
/* .paging-display {
    margin-left: auto;
} */
@media screen and (max-width: 800px) {
	.conditions, .paging-sort {
		display: block;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 4rem;
	}
	.conditions .txt-result {
		width: 100%;
		text-align: right;
	}
	.paging-display ul {
		justify-content: flex-end;
		margin-top: 1rem;
	}
}
.paging-display ul {
	display: flex;
	align-items: center;
}
.paging-display ul li {
	margin-left: 1rem;
}
.paging-sort .paging-result {
	font-size: 1.7rem;
	font-weight: bold;
}
.paging-sort .paging-result span {
	font-size: 3.8rem;
	color: #0059AC;
	display: inline-block;
	margin-right: .5rem;
}
@media screen and (max-width: 600px) {
	.paging-wrap {
		display: block;
	}
	.paging-wrap .paging-result {
		margin: 1em 0 0;
	}
	.paging {
		padding: 0 0 20px;
		margin: 2% 0;
	}
}
/* --------------------------------------------------

block

-------------------------------------------------- */
/* --------------------------------------------------
.col2-block
-------------------------------------------------- */
.col2-block {
	display: flex;
	justify-content: space-around;
	margin-bottom: 5rem;
	padding-bottom: 5rem;
	border-bottom: 1px solid #D8D8D8;
}
.col2-block:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
.col2-block .btn-link-lb {
	width: 100%;
}
.col2-block .block-l {
	flex: 1;
	margin-right: 1.5em;
}
.col2-block .block-r {
	flex: 1;
	margin-left: 1.5em;
}
.col2-block .txt-box {
	margin-top: 0;
}
@media screen and (max-width: 800px) {
	.col2-block {
		display: block;
		justify-content: space-around;
		margin-bottom: 4%;
		padding-bottom: 4%;
	}
	.col2-block .block-l {
		margin-right: 0;
		margin-bottom: 2rem;
	}
	.col2-block .block-r {
		margin-left: 0;
	}
}
/* --------------------------------------------------
.voice-block
-------------------------------------------------- */
.voice-block {
	display: flex;
	align-items: flex-start;
}
.voice-block:before {
	font-family: 'icoairport';
	display: block;
	color: #999;
	font-weight: normal;
	line-height: 1;
	margin-right: 2rem;
	font-size: 4rem;
}
.voice-block.voice01:before {
	content: "\e928";
}
.voice-block.voice02:before {
	content: "\e929";
}
.voice-block.voice03:before {
	content: "\e92a";
}
.voice-block .tag {
	margin-top: .6rem;
}
.voice-block .tag span {
	margin-right: .5rem;
}
.voice-block .tag .txt-date {
	margin-right: 2rem;
}
.voice-detail .voice-block {
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid #F0F0F0;
	align-items: flex-start;
}
.voice-detail .voice-block .txt-b {
	font-size: 2.9rem;
	margin-top: 2rem;
}
.voice-detail .answer {
	display: flex;
	align-items: flex-start;
}
.voice-detail .answer .pht-circle .frame {
	width: 65px;
	padding-top: 65px;
	margin-right: 4rem;
}
.voice-detail .answer .pht-circle .frame {
	width: 38px;
	padding-top: 38px;
	margin-right: 2rem;
}
.voice-detail .voice-block .txt-b {
	font-size: 2.4rem;
}
/* --------------------------------------------------
.request-block
-------------------------------------------------- */
.request-block {
	background: #fff;
	padding: 6% 4%;
	text-align: center;
}
.request-block .btn-area > p {
	margin: 4rem auto 0;
}
/* --------------------------------------------------
.ac-block
-------------------------------------------------- */
.ac-block > dt {
	position: relative;
	font-size: 2.3rem;
	font-weight: bold;
	padding-right: 4rem;
	cursor: pointer;
	line-height: 1.4;
}
.ac-block > dt:before {
	font-family: 'icoairport';
	content: "\e921";
	color: #005CAD;
	display: inline-block;
	position: absolute;
	right: 0;
	font-size: 4.0rem;
	font-weight: normal;
	line-height: 1;
}
.ac-block > dt.open:before {
	content: "\e917";
}
.ac-block > dd {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid #F0F0F0;
}
.ac-block.ac-nb > dd {
	padding-top: 0;
	border-top: none;
}
.ac-block > dd {
	display: none;
}
.ac-block .qa-block {
	background: #F0F0F0;
	padding: 2rem;
	border-radius: 10px;
	position: relative;
}
.ac-block .qa-block > dt:before {
	font-family: 'icoairport';
	content: "\e908";
	color: #005CAD;
	display: inline-block;
	position: absolute;
	right: 1.5em;
	font-weight: normal;
	line-height: 1;
}
.ac-block .qa-block > dt.open:before {
	content: "\e90f";
}
.ac-block .qa-block > dd {
	border-top: 1px solid #fff;
	display: none;
}
.ac-block .qa-block dd figure {
	margin: 4rem auto;
}
.ac-block .qa-block dd > p, .ac-block .qa-block dd .a-wrap > div {
	margin-right: 6rem;
}
.ac-block .qa-block dd .a-wrap > div .wysiwyg {
	margin: 0;
}
@media screen and (max-width: 800px) {
	.ac-block > dt {
		font-size: 2.4rem;
	}
	.ac-block > dt {
		padding-right: 4rem;
	}
	.ac-block > dt:before {
		font-size: 3.4rem;
	}
	.ac-block .qa-block dd > p, .ac-block .qa-block dd .a-wrap > div {
		margin-right: 0;
	}
	.ac-block .qa-block dd figure {
		margin: 2rem auto;
	}
}
/* --------------------------------------------------
.qa-block
-------------------------------------------------- */
.qa-block dt, .qa-block dd, .qa-block .a-wrap {
	display: flex;
	align-items: flex-start;
}
.qa-block > dt {
	display: flex;
	font-size: 1.7rem;
	font-weight: bold;
	flex: 1;
	align-items: center;
}
.ac-block .qa-block > dt {
	padding-right: 1.5em;
	cursor: pointer;
}
.qa-block dt > p, .qa-block dd > p, .qa-block dd .a-wrap > div {
	flex: 1;
	margin-left: 3rem;
}
.qa-block > dd {
	display: flex;
	font-size: 1.7rem;
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid #F0F0F0;
}
.qa-block > dd .qa-a {
	flex: 1;
}
.qa-block .related-file a, .qa-block .related-link a {
	background: #fff;
}
@media screen and (max-width: 800px) {
	.qa-block dt > p, .qa-block dd > p, .qa-block dd .a-wrap > div {
		margin-left: 2rem;
	}
}
/* --------------------------------------------------
.pick-box
-------------------------------------------------- */
.pick-box {
	width: 110vw;
	position: relative;
	background-size: cover;
	margin-bottom: 6rem;
	border-radius: 20px;
	z-index: 1;
	left: -3vw;
	overflow: hidden;
}
.pick-box::after {
	content: "";
	background-color: rgba(0, 0, 0, .5);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 20px;
}
.pick-box .pick-inner {
	max-width: 1080px;
	color: #FFF;
	line-height: 1.8;
	position: relative;
	z-index: 2;
	padding: 1.5em 0 1em 0;
	margin-left: 3vw;
}
.pick-box .pick-inner .sttl {
	padding: 0 6em;
}
.pick-inner .shop-list .floor.flight02, .pick-inner .shop-list .floor.flight01 {
	position: static;
}
@media screen and (max-width: 1500px) {
	.pick-box .pick-inner {
		width: calc(100% - 13vw);
	}
}
@media screen and (max-width: 1280px) {
	.pick-box {
		margin-bottom: 3rem;
		left: 0;
	}
	.pick-box .pick-inner {
		padding: 1em;
	}
	.pick-box .pick-inner ul {
		max-width: 84%;
	}
}
@media screen and (max-width: 800px) {
	.pick-box .pick-inner .sttl {
		padding: 0;
	}
}
.pick-box.restaurant {
	background: url("../img/common/bg_pick_restaurant.jpg") no-repeat;
	background-size: cover;
}
.pick-box.shop {
	background: url("../img/common/bg_pick_shop.jpg") no-repeat;
	background-size: cover;
}
.pick-box.taxfree {
	background: url("../img/common/bg_pick_taxfree.jpg") no-repeat;
}
/* --------------------------------------------------
.sp-only .pc-only
-------------------------------------------------- */
.sp-only {
	display: none;
}
@media screen and (max-width: 800px) {
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
}
/* --------------------------------------------------
.contact-box
-------------------------------------------------- */
.contact-box {
	width: 100vw;
	position: relative;
	background: url("../img/common/bg_contact01.jpg") no-repeat;
	background-size: cover;
	margin-bottom: 6rem;
	border-radius: 20px;
	z-index: 1;
	left: -3vw;
}
.contact-box::after {
	content: "";
	background-color: rgba(0, 0, 0, .5);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 20px;
}
.contact-box .contact-inner {
	max-width: 1080px;
	color: #FFF;
	text-align: center;
	line-height: 1.8;
	position: relative;
	z-index: 2;
	padding: 5em;
	margin-left: 3vw;
}
.contact-box .ttl-contact {
	margin: 0;
	padding: .2em;
	font-size: 3.0rem;
	font-weight: bold;
}
.contact-box .contact-tel {
	position: relative;
	margin-bottom: 1em;
	padding: .2em;
	text-align: center;
}
.contact-tel .ttl-b {
	margin-bottom: 0;
	margin-top: 0.5em;
}
.contact-box .contact-tel:before, .contact-box .contact-tel:after {
	content: "";
	display: block;
	position: absolute;
	width: 40%;
	height: 1px;
	background: #fff;
	left: 50%;
	transform: translateX(-50%);
}
.contact-box .contact-tel:before {
	top: 0;
}
.contact-box .contact-box .contact-tel:after {
	bottom: 0;
}
.contact-box .ttl-b span {
	margin-right: 1rem;
}
@media screen and (max-width: 1280px) {
	.contact-box {
		left: 0;
	}
	.contact-box .contact-inner {
		width: 80vw;
		margin-left: 5vw;
	}
	.contact-box .contact-tel::before, .contact-box .contact-tel::after {
		width: 80%;
	}
}
@media screen and (max-width: 800px) {
	.contact-box .contact-inner {
		padding: 2em 1em;
	}
	.contact-box .ttl-contact {
		font-size: 2rem;
	}
}
@media screen and (max-width: 600px) {
	.contact-box .contact-inner {
		width: 80vw;
	}
	.contact-box .ttl-contact {
		font-size: 1.9rem;
	}
}

@media screen and (max-width: 800px) {
	.contact-box .contact-inner p {
		text-align: center;
	}
}
/* --------------------------------------------------
.cv-box
-------------------------------------------------- */
.cv-box {
	width: 100vw;
	position: relative;
	background: url("../img/common/bg_cv_box.jpg") no-repeat;
	background-size: cover;
	margin-bottom: 6rem;
	border-radius: 20px;
	z-index: 1;
	left: -3vw;
}
.cv-box::after {
	content: "";
	background-color: rgba(0, 0, 0, .5);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 20px;
}
.cv-box .cv-inner {
	max-width: 1080px;
	color: #FFF;
	text-align: center;
	line-height: 1.8;
	position: relative;
	z-index: 2;
	padding: 5em;
	margin-left: 3vw;
}
.cv-box .ttl-map-dl {
	margin: 0;
	padding: .2em;
	font-size: 3.0rem;
	font-weight: bold;
}
@media screen and (max-width: 1280px) {
	.cv-box {
		left: 0;
	}
	.cv-box .cv-inner {
		width: 80vw;
		margin-left: 5vw;
	}
}
@media screen and (max-width: 800px) {
	.cv-box .cv-inner {
		padding: 2em 1em;
	}
}
/* --------------------------------------------------
list
-------------------------------------------------- */
.link-p-list {
	display: flex;
	flex-wrap: wrap;
	margin: 1em 0;
}
.link-p-list li {
	margin: 0 1rem 1rem 0;
}
.list-circle > li {
	list-style: none;
	position: relative;
	margin-bottom: 1em;
	padding-left: 1.5em;
}
.list-circle > li:before {
	content: "";
	width: 8px;
	height: 8px;
	display: block;
	background: #00AFD6;
	border-radius: 50%;
	position: absolute;
	left: 0;
	margin-top: 8px;
}
.list-circle > li a {
	text-decoration: underline;
}
.link-q-list > li {
	margin-bottom: 2rem;
}
.link-q-list > li:last-child {
	margin-bottom: 0;
}
.link-q-list a {
	background: #F0F0F0;
	border-radius: 5px;
	padding: 1em;
	display: block;
	display: flex;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	position: relative;
}
.link-q-list .wysiwyg a {
	display: inline-block;
	padding: 0;
}
.link-q-list > li > a:before {
	font-family: 'icoairport';
	content: "\e90a";
	position: absolute;
	right: 2rem;
	line-height: 1;
	color: #005CAD;
}
.link-q-list > li > a > p {
	flex: 1;
	margin-left: 3rem;
}
/* --------------------------------------------------

list

-------------------------------------------------- */
/* --------------------------------------------------
list-2col
-------------------------------------------------- */
/* list-2col */
.list-2col {
	overflow: hidden;
	margin-bottom: 5%;
}
section .list-2col {
	margin-bottom: 0;
}
.list-2col > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-right: -2%;
}
.list-2col > ul > li {
	width: calc(100% / 2 - 2%);
	margin-right: 2%;
	padding-bottom: 2%;
}
.list-2col.wide > ul {
	margin-right: -3%;
}
.list-2col.wide > ul > li {
	width: calc(100% / 2 - 3%);
	margin-right: 3%;
	padding-bottom: 2%;
}
.list-2col.spot-info {
	margin-top: 2rem;
}
@media screen and (max-width: 800px) {
	.list-2col > ul > li {
		width: calc(100%);
	}
	.list-2col.spot-info {
		margin-top: 0;
		margin-bottom: 3rem;
	}
	.list-2col.spot-info .btn-area {
		margin-bottom: 0;
	}
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.list-2col > ul > li {
		margin-right: 1.8%;
	}
}
/* --------------------------------------------------
list-3col
-------------------------------------------------- */
.list-3col {
	overflow: hidden;
	margin-bottom: 5%;
}
.list-3col > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-right: -2%;
}
.list-3col > ul > li {
	width: calc(99% / 3 - 2%);
	margin-right: 2%;
	padding-bottom: 2%;
}
@media screen and (max-width: 800px) {
	.list-3col > ul > li {
		width: calc(100% / 2 - 2%);
	}
}
@media screen and (max-width: 320px) {
	.list-3col > ul > li {
		width: calc(100%);
		padding-bottom: 4%;
	}
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.list-3col > ul > li {
		margin-right: 1.8%;
	}
}
/* --------------------------------------------------
list-4col
-------------------------------------------------- */
.list-4col {
	overflow: hidden;
	margin-bottom: 5%;
}
.list-4col > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-right: -2%;
}
.list-4col > ul > li {
	width: calc(100% / 4 - 2%);
	margin-right: 2%;
	padding-bottom: 2%;
}
@media screen and (max-width: 800px) {
	.list-4col > ul > li {
		width: calc(100% / 3 - 2%);
	}
}
@media screen and (max-width: 600px) {
	.list-4col > ul {
		margin-right: -2%;
	}
	.list-4col > ul > li {
		width: calc(100% / 2 - 3%);
		margin-right: 3%;
		margin-bottom: 2%;
	}
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.list-4col > ul > li {
		margin-right: 1.8%;
	}
}
/* --------------------------------------------------
list-5col
-------------------------------------------------- */
/* list-5col */
.list-5col {
	overflow: hidden;
	margin-bottom: 5%;
}
.list-5col > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-right: -2%;
}
.list-5col > ul > li {
	width: calc(100% / 5 - 2%);
	margin-right: 2%;
	padding-bottom: 2%;
}
@media screen and (max-width: 800px) {
	.list-5col > ul > li {
		width: calc(100% / 3 - 2%);
	}
}
@media screen and (max-width: 600px) {
	.list-5col > ul {
		margin-right: -2%;
	}
	.list-5col > ul > li {
		width: calc(100% / 2 - 2%);
	}
}
/* IEのみに適用 */
@media all and (-ms-high-contrast: none) {
	.list-5col > ul > li {
		margin-right: 1.8%;
	}
}
/* --------------------------------------------------
link-p-list
-------------------------------------------------- */
.link-p-list {
	display: flex;
	flex-wrap: wrap;
}
.link-p-list li {
	margin: 0 1rem 1rem 0;
}
/* --------------------------------------------------
link-q-list
-------------------------------------------------- */
.link-q-list > li {
	margin-bottom: 2rem;
}
.link-q-list > li:last-child {
	margin-bottom: 0;
}
.link-q-list a {
	background: #F0F0F0;
	border-radius: 5px;
	padding: 1em;
	display: block;
	display: flex;
	align-items: center;
	font-size: 1.7rem;
	font-weight: bold;
	position: relative;
}
.link-q-list > li > a:before {
	font-family: 'icoairport';
	content: "\e90a";
	position: absolute;
	right: 2rem;
	line-height: 1;
	color: #005CAD;
}
.link-q-list > li > a > p {
	flex: 1;
	margin-left: 3rem;
}
/* --------------------------------------------------
link-p-circle
-------------------------------------------------- */
.list-circle > li {
	list-style: none;
	position: relative;
	margin-bottom: 1em;
	padding-left: 1.25em;
}
.list-circle > li:before {
	content: "";
	width: 10px;
	height: 10px;
	display: block;
	background: #00AFD6;
	margin-right: 1em;
	border-radius: 50%;
	position: absolute;
	left: 0;
	/*	top: 50%;*/
	margin-top: 8px;
}
.list-circle > li a {
	text-decoration: underline;
}
/*.list-circle>li:last-child {
    margin-bottom: 0;
}
*/
.list-circle > li.list-file:before {
	font-family: 'icoairport';
	content: "\e913";
	margin-right: 2rem;
	display: block;
	color: #00AFD6;
	border-radius: 50%;
	position: absolute;
	left: 0;
	margin-top: 0;
	background: none;
}
/* --------------------------------------------------
info-list
-------------------------------------------------- */
.info-list li a {
	padding: 0 3em 2em 0;
	border-bottom: 1px solid #B9B9B9;
	position: relative;
}
.tab-block .info-list li a {
	margin-bottom: 2.5rem;
}
.info-list li a:after {
	font-family: 'icoairport';
	content: "\e90a";
	display: block;
	position: absolute;
	width: 12px;
	height: 20px;
	margin: auto;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
	left: auto;
	z-index: 0;
	color: #005CAD;
	transition: .3s;
	margin-top: -1.1em;
}
.info-list li a:hover:after {
	right: .5em;
}
.info-list a {
	display: flex;
	align-items: center;
}
.info-list a .info-date {
	color: #525252;
	font-size: 1.4rem;
	min-width: 10em;
}
@media screen and (max-width: 800px) {
	.info-list a {
		display: block;
	}
	.info-list a .info-date {
		margin-bottom: .4em;
		min-width: inherit;
	}
	.info-list a .info-ttl {
		overflow: hidden;
	}
}
@media screen and (max-width: 480px) {
	.info-list {
		margin-top: 2em;
	}
}
/* --------------------------------------------------
list-box
-------------------------------------------------- */
.list-box {
	margin-bottom: 5%;
}
.list-box .box {
	display: flex;
	justify-content: space-between;
	background: #FFF;
	position: relative;
	border-radius: 5px;
	overflow: hidden;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
}
.list-box .box:before {
	font-family: 'icoairport';
	content: "\e90a";
	position: absolute;
	top: 50%;
	margin-top: -1.2rem;
	right: 2rem;
	line-height: 1;
	font-size: 2.4rem;
	color: #005CAD;
}
.list-box .box-inner:last-of-type {
	display: flex;
	flex-flow: column;
	justify-content: center;
}
.list-box .box-inner:first-child {
	width: 344px;
}
.list-box .box-inner figure {
	text-align: center;
}
.list-box .box-inner:last-child {
	padding: 2em 3em;
	width: calc(100% - 344px);
}
.list-box .box-inner p {
	font-size: 1.7rem;
}
.list-box .box-inner p.list-ttl {
	font-size: 2.5rem;
	margin-bottom: 1em;
}
@media screen and (max-width: 800px) {
	.list-box .box {
		display: block;
		max-height: none;
	}
	.list-box .box:before {
		content: none;
	}
	.list-box .box-inner:first-child {
		width: 100%;
	}
	.list-box .box-inner:last-child {
		padding: 2em 3em 2em 1em;
		width: 100%;
		position: relative;
	}
	.list-box .box-inner:last-child:after {
		font-family: 'icoairport';
		content: "\e90a";
		position: absolute;
		top: 50%;
		margin-top: -1.2rem;
		right: 2rem;
		line-height: 1;
		font-size: 2.4rem;
		color: #005CAD;
	}
	.list-box .box-inner figure img {
		width: 100%;
	}
	.list-box .box-inner p {
		font-size: 1.4rem;
	}
	.list-box .box-inner p.list-ttl {
		font-size: 2rem;
		margin-bottom: .5em;
		text-align: center;
	}
}
.list-box > li {
	margin-bottom: 2em;
}
.list-box > li:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 800px) {
	.list-box > li {
		margin-bottom: 1em;
	}
}
/* --------------------------------------------------
pht-info-area
-------------------------------------------------- */
.pht-info-area {
	display: flex;
	justify-content: center;
	margin-bottom: 5%;
	align-items: flex-start;
}
.pht-info-area.shop {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 5%;
}
.pht-info-area .intro-pht {
	width: 80%;
	padding: 5% 5% 2.5% 8%;
	background: #323335;
	border-radius: 0 40px 0 0;
}
@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop, .pht-info-area .intro-pht {
		width: 50%;
		min-width: 490px;
	} /* IE11 */
}
@media screen and (max-width: 800px) and (-ms-high-contrast:none) {
	*::-ms-backdrop, .pht-info-area .intro-pht {
		min-width: inherit;
	} /* IE11 */
}
.pht-info-area .intro-pht figure {
	margin-bottom: 4rem;
}
.pht-info-area .intro-pht figure.pht-cover .frame img {
	position: absolute;
	top: -200%;
	bottom: -200%;
	left: -200%;
	right: -200%;
	margin: auto;
	width: auto;
	height: auto;
	max-height: 100%;
	max-width: 100%;
	transform: translate(0, 0);
}
.pht-info-area .intro-info {
	max-width: 1080px;
	margin: 0 4%;
	background: #FFF;
	border-radius: 40px;
	padding: 3% 6%;
	flex: 1;
	flex-basis: auto;
	width: 100%;
}
.pht-info-area .intro-info .info-txt {
	padding: 0 5% 0;
	max-width: 720px;
	font-weight: bold;
}
.pht-info-area p:not(.intro-txt) a {
	color: #00AFD6;
	text-decoration: underline;
}
.pht-info-area p.btn-link-lb a {
	color: #fff;
	text-decoration: none;
}
.pht-info-area p:not(.intro-txt), .pht-info-area p:not(:last-child) {
	margin-bottom: 1em;
}
.pht-info-area p:last-child {
	margin-bottom: 0;
}
.pht-info-area .intro-info .info-chart {
	padding: 40px 0;
	/*padding: 40px 5%;*/
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	/* max-width: 720px; */
}
.pht-info-area .intro-info .info-chart dt {
	width: 8em;
	padding: 1.2em;
	font-weight: bold;
	line-height: 2.4rem;
	border-bottom: 1px solid #606060;
}
.pht-info-area .intro-info .info-chart dd {
	width: calc(100% - 8em);
	padding: 1.2em;
	line-height: 2.4rem;
	border-bottom: 1px solid #606060;
}
.pht-info-area .intro-info .info-chart dd a {
	color: #0059AC;
	text-decoration: underline;
}
.pht-info-area .intro-info .info-chart dd span:not([data-action]) {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.3;
}
.pht-info-area .intro-info .info-chart dd .payment {
	border-bottom: 1px solid #606060;
	padding-bottom: 1em;
	margin-bottom: 1em;
}
.pht-info-area .intro-info .info-chart dd p.payment:last-of-type {
	border-bottom: none;
	padding-bottom: .5em;
	margin-bottom: 0;
}
.pht-info-area .intro-info .info-chart dd ul {
	display: flex;
	flex-wrap: wrap;
}
.pht-info-area .intro-info .info-chart dd ul li {
	width: 64px;
	margin-bottom: 5px;
	margin-left: 5px;
}
.pht-info-area .intro-info .info-chart dd .related-link a {
	color: #FFF;
	text-decoration: none;
}
.pht-info-area .intro-info .info-chart dd .wysiwyg span {
	font-size: 100%;
	font-weight: normal;
}
.pht-info-area .intro-info .info-chart dd .wysiwyg ul {
	display: block;
}
.pht-info-area .intro-info .info-chart dd .wysiwyg ul li {
	width: auto;
	margin-left: 0;
}
@media screen and (max-width: 800px) {
	.pht-info-area {
		display: block;
	}
	.pht-info-area .intro-pht {
		width: 96%;
		padding: 5%;
		margin: 0 auto 40px;
		margin-right: 4%;
		padding-left: 6%;
		border-radius: 0 20px 0 0;
	}
	.pht-info-area .intro-info {
		width: 96%;
		text-align: left;
		padding: 10% 5%;
		margin: 0 auto 20px;
		border-radius: 20px;
	}
	.pht-info-area .intro-info .info-chart {
		padding: 20px 0;
	}
	.pht-info-area .intro-info .info-chart dt {
		text-align: left;
	}
	.pht-info-area .intro-info .info-chart dd {
		text-align: left;
	}
	.pht-info-area .intro-info .info-chart dd ul li {
		width: 48px;
	}
	.pht-info-area .intro-info .info-chart dd .wysiwyg ul li {
		width: auto;
	}
}
@media screen and (max-width: 420px) {
	.pht-info-area .intro-pht {
		margin-bottom: 20px;
	}
	.pht-info-area .intro-pht figure {
		margin-bottom: 0;
	}
	.pht-info-area .intro-pht figure:nth-child(2) {
		margin-top: 4rem;
	}
	.pht-info-area .intro-info {
		padding: 5% 5% 10% 5%;
	}
	.pht-info-area .intro-info .info-chart dt {
		width: 7em;
		padding: 1.2em 0;
	}
	.pht-info-area .intro-info .info-chart dd {
		width: calc(100% - 7em);
		padding: 1.2em 0;
	}
}
/* --------------------------------------------------

post-content

-------------------------------------------------- */
/* post-content */
.post-content {
	margin: 0 auto 3em;
	position: relative;
	padding: 5% 10%;
	font-size: 1.7rem;
	line-height: 1.8;
	background: #fff;
	border-radius: 10px;
}
@media screen and (max-width: 800px) {
	.post-content {
		padding: 5%;
	}
}
/* post-date */
.post-date {
	font-weight: bold;
	margin-bottom: 1em;
}
@media screen and (max-width: 800px) {
	.post-date {
		font-size: 1.3rem;
		;
	}
}
.post-sttl-large {
	font-size: 2.2rem;
	font-weight: bold;
	margin-bottom: 1em;
	border-left: 5px solid #00AFD6;
	padding-left: 1em;
	line-height: 1.2;
}
.post-sttl-small {
	letter-spacing: .2rem;
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 1em;
	line-height: 1.4;
	color: #0059AC;
}
@media screen and (max-width: 800px) {
	.post-sttl-large {
		font-size: 2rem;
		border-left: 3px solid #00AFD6;
	}
	.post-sttl-small {
		font-size: 1.7rem;
		margin-bottom: 2em;
		letter-spacing: .1rem;
	}
}
@media screen and (max-width: 420px) {
	.post-sttl-large {
		font-size: 1.8rem;
	}
	.post-sttl-small {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
}
/* --------------------------------------------------
wysiwyg
-------------------------------------------------- */
.wysiwyg {
	word-wrap: break-word;
	overflow-wrap: break-word;
	margin: 2em 0;
	text-align: left !important;
}
/* 見出し1 <h1> */
.wysiwyg h1 {
	letter-spacing: .3rem;
	font-size: 2.6rem;
	padding: 1rem 1rem 1.5rem 1rem;
	margin-bottom: 3rem;
	position: relative;
	font-weight: bold;
	line-height: 1.2;
}
.wysiwyg h1::before {
	transform: skewX(30deg);
	content: "";
	width: 30%;
	height: 5px;
	background: #00AFD5;
	position: absolute;
	bottom: -5px;
	left: 0;
  }
  .wysiwyg h1::after {
	content: "";
	width: calc(70% - 11px);
	height: 5px;
	background: #005AAC;
	position: absolute;
	bottom: -5px;
	right: 0;
	transform: skewX(30deg);
  }
/* 見出し2 <h2> */
.wysiwyg h2 {
	letter-spacing: .2rem;
	font-size: 2.4rem;
	padding: 1rem 0;
	margin-bottom: 5rem;
	position: relative;
	font-weight: bold;
}
.wysiwyg h2::after {
	content: "";
	width: 100%;
	height: 3px;
	background: #005AAC;
	position: absolute;
	bottom: -5px;
	right: 0;
  }
/* 見出し3 <h3> */
.wysiwyg h3 {
	font-size: 2.2rem;
font-weight: bold;
margin-bottom: 1em;
border-left: 5px solid #00AFD6;
padding-left: 1em;
line-height: 1.2;
}
/* 見出し4 <h4> */
.wysiwyg h4 {
	font-size: 2.0rem;
	font-weight: bold;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #F0F0F0;
}
/* 見出し5 <h5> */
.wysiwyg h5 {
	letter-spacing: .2rem;
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 1em;
line-height: 1.4;
color: #0059AC;
}
/* 見出し6 <h6> */
.wysiwyg h6 {
	letter-spacing: .2rem;
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 1em;
line-height: 1.4;
}
/* 段落 <p> */
.wysiwyg p {
	margin-bottom: 1em;
}
/* 太字 <strong> */
.wysiwyg strong {
	font-weight: bold;
}
/* 斜体 <em> */
.wysiwyg em {
	font-style: italic;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* 斜体 <em> */
.wysiwyg em {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* 下線 <u> */
.wysiwyg u {
	text-decoration: underline;
}
/* 打ち消し線 <s> */
.wysiwyg del {
	text-decoration: line-through;
}
/* 下付き <sub> */
.wysiwyg sub {
	font-size: 0.8rem;
}
/* 上付き <sup> */
.wysiwyg sup {
	font-size: 0.8rem;
}
/* 順序のないリスト <ol> */
.wysiwyg ol {
	margin: 0.5em 0 1em;
	padding: 0 1.5em;
	list-style: none;
	counter-reset: ol_li;
}
.wysiwyg ol li:before {
	margin-right: .5em;
	counter-increment: ol_li;
	content: counter(ol_li);
	color: #00AFD6;
	font-weight: bold;
}
.wysiwyg ol > li {
	text-indent: -1.25em;
	list-style: none;
	position: relative;
	margin-bottom: .5em;
}
/*順序のないリスト <ul> */
.wysiwyg ul {
	margin: 0.5em 0 1em;
	padding: 0 0.5em;
}
.wysiwyg ul > li {
	padding-left: 1em;
	text-indent: -1em;
	list-style: none;
	position: relative;
}
.wysiwyg ul > li:before {
	content: "";
	width: 5px;
	height: 5px;
	display: inline-block;
	background: #00AFD6;
	margin-right: .8em;
	border-radius: 50%;
	vertical-align: middle;
	line-height: 1;
}
/* インデント <p class="txt-indent"> */
.wysiwyg .txt-indent {
	text-indent: 1em;
}
/* ブロック引用文 <blockquote> */
.wysiwyg blockquote {
	position: relative;
	padding: 1em 2em;
	box-sizing: border-box;
	font-style: italic;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: #FBFBFB;
	margin: 0.5em 1em;
}
/* 中央揃え <p class="txt-center"> */
.wysiwyg .txt-center {
	text-align: center;
}
/* 右揃え <p class="txt-right"> */
.wysiwyg .txt-right {
	text-align: right;
}
/* 両端揃え <p class="txt-justify"> */
.wysiwyg .txt-justify {
	text-align: justify;
}
/* ハイパーリンク <a href=""> */
.wysiwyg a[href] {
	text-decoration: underline;
	color: #005BAD;
	transition: .3s;
	text-indent: 0;
}
.wysiwyg a[href]:hover {
	color: #009ECD;
	text-decoration: underline;
}
/* アンカー挿入 <a id="" name=""> */
.wysiwyg a {
	text-decoration: none;
	color: inherit;
}
/* hr */
.wysiwyg hr {
	margin: 1em 0;
	height: 1px;
}
/* テーブル <table> */
.wysiwyg table {
	width: auto;
	margin: 1em 0 2em;
	border-collapse: collapse;
	border: 1px solid #DDD;
	max-width: 100%;
	min-width: 80%;
	border-spacing: 0;
	display: table;
}
.wysiwyg table caption {
	text-align: center;
	margin-bottom: 0.5em;
}
.wysiwyg table th {
	background: #F0F0F0;
	padding: 1.5em;
	border: 1px solid #DDD;
	display: table-cell;
	width: auto;
}
.wysiwyg table td {
	background: #FFFFFF;
	padding: 1.5em;
	border: 1px solid #DDD;
	word-break: break-all;
	word-wrap: break-word;
	display: table-cell;
	width: auto;
}
.wysiwyg table .txt-justify {
	-moz-text-align-last: justify;
	text-align-last: justify;
}
@media screen and (max-width: 420px) {
	.wysiwyg table th {
		padding: 1em .5em;
	}
	.wysiwyg table td {
		padding: 1em .5em;
	}
}
/* フォントサイズ小 <span class="font-size-small"> */
.wysiwyg .font-size-small {
	font-size: 1.1rem;
}
/* フォントサイズ大 <span class="font-size-large"> */
.wysiwyg .font-size-large {
	font-size: 2.2rem;
}
/* 文字の間隔0.5em <span class="font-space-small"> */
.wysiwyg .font-space-small {
	letter-spacing: 0.5em;
}
/* 文字の間隔1.0em <span class="font-space-medium"> */
.wysiwyg .font-space-medium {
	letter-spacing: 1.0em;
}
/* 文字の間隔1.5em <span class="font-space-large"> */
.wysiwyg .font-space-large {
	letter-spacing: 1.5em;
}
/* 文字の間隔2.0em <span class="font-space-xlarge"> */
.wysiwyg .font-space-xlarge {
	letter-spacing: 2.0em;
}
/* 画像 */
.wysiwyg img {
	width: auto;
	height: auto;
	max-width: 100%;
}
/* --------------------------------------------------
iframe-area
-------------------------------------------------- */
.iframe-area {
	display: block;
	position: relative;
	height: 0;
	width: 100%;
	padding-top: 56.25%;
	margin: 0 auto 2em;
}
.iframe-area iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
.post-content div {
	margin-bottom: 2em;
	text-align: center;
}
.post-content div iframe {
	width: 100% !important;
}
/* --------------------------------------------------
post-pht
-------------------------------------------------- */
/* post-pht */
.post-pht {
	margin-bottom: 2em;
	position: relative;
}
.post-pht div {
	width: 100%;
	height: auto;
	/*max-height: 600px;*/
	text-align: center;
}
.post-pht img {
	height: auto;
	/* max-height: 600px;*/
	max-width: 100%;
	width: auto;
}
.post-pht figcaption {
	display: block;
	padding: 10px 0;
	line-height: 1.4;
	text-align: center;
	font-size: 1.4rem;
}
@media screen and (max-width: 420px) {
	.post-pht div {
		max-height: 300px;
	}
	.post-pht img {
		max-height: 300px;
	}
}
/* --------------------------------------------------
hr
-------------------------------------------------- */
hr {
	margin: 2em 0;
	height: 2px;
	background: #000;
	border: none;
}
/* --------------------------------------------------
post-pht-txt
-------------------------------------------------- */
.post-pht-txt {
	margin-bottom: 2em;
}
.post-pht-txt:after {
	content: "";
	display: block;
	clear: both;
}
.post-pht-txt .post-pht {
	float: right;
	width: 49%;
	margin-left: 2%;
	font-size: 1.6rem;
	vertical-align: top;
	margin-bottom: 2em;
}
/* --------------------------------------------------
related-file,related-link
-------------------------------------------------- */
.related-file, .related-link {
	margin-bottom: 2em;
}
.related-file a, .related-link a {
	/*    text-decoration: none;
    color: #2D3751;
    line-height: 1.2;
    padding: 1.7em;
    background: #eef0f1;
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    border-radius: 5px;
    text-indent: -1em;
    padding-left: 3em;*/
	display: block;
	color: #fff;
	background-size: 100% 200%;
	transition: background-position ease 0.25s, box-shadow .15s ease-out, -webkit-box-shadow .15s ease-out;
	background-image: linear-gradient(to top, #1361A7 0%, #1361A7 50%, #00AFD6 50%, #00AFD6 100%);
	background-position: 0 0;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
	padding: 1em 1.5em 1em 2.5em;
	border-radius: 5px;
	position: relative;
	text-indent: -.75em;
}
.related-file a:before {
	font-family: 'icoairport';
	content: "\e913";
	margin-right: .5em;
	display: inline-block;
}
/* related-link */
.related-link a:before {
	font-family: 'icoairport';
	content: "\e915";
	margin-right: .5em;
	display: inline-block;
}
/* --------------------------------------------------
search-menu
-------------------------------------------------- */
.search-menu {
	max-width: 1000px;
	margin: 3% auto;
	position: relative;
}
.ttl-search {
	font-size: 2rem;
	line-height: 1.2;
	margin-bottom: 1em;
	color: #FFFFFF;
	font-weight: bold;
}
@media screen and (max-width: 800px) {
	.ttl-search {
		margin-bottom: 2%;
	}
}
@media screen and (max-width: 600px) {
	.ttl-search {
		margin-bottom: 6%;
		font-size: 1.7rem;
	}
}
.search-header {
	max-width: 600px;
	width: 92%;
	margin: 0 auto;
	background: #323335;
	padding: 5% 5% 5%;
	border-radius: 10px;
	z-index: 14;
	position: relative;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
}
.search-menu h4 {
	font-weight: bold;
}
.search-costom {
	background: #dbdbdb;
	padding: 5% 5% 3%;
	margin-top: -2em;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	position: relative;
	z-index: 10;
}
@media screen and (max-width: 800px) {
	.search-menu .search-costom {
		flex-flow: column;
		padding-top: 40px;
		margin: 10px;
	}
}
.btn-costom {
	position: absolute;
	bottom: 0;
	left: 50%;
	text-align: center;
	width: 40%;
	margin-left: -20%;
}
.btn-costom a {
	color: #fff;
	background: #666;
	display: block;
	padding: 1rem;
	border-radius: 5px 5px 0 0;
}
.btn-costom a:before {
	content: "\f055";
	font-family: fontawesome;
	display: inline-block;
	margin: 0 10px;
	position: relative;
}
@media screen and (max-width: 480px) {
	.btn-costom {
		position: relative;
		bottom: 0;
		left: 0;
		text-align: center;
		width: 100%;
		margin-left: 0;
	}
	.btn-costom a {
		border-radius: 5px;
	}
}
/* floor genre */
.search-menu .floor, .search-menu .genre {
	flex: 1 0 auto;
	position: relative;
	margin-bottom: 1em;
}
.search-menu .floor h4, .search-menu .genre h4 {
	margin-right: 2em;
	min-width: 9rem;
}
.search-menu .floor dt, .search-menu .genre dt {
	display: flex;
	align-items: center;
}
.search-menu .floor dt a, .search-menu .genre dt a {
	flex: 1 0 auto;
	padding: 1rem;
	cursor: pointer;
	display: block;
	transition: border .3s ease;
	background: #fff;
	border-radius: 5px;
	border: #fff solid 1px;
	text-align: center;
	position: relative;
	margin-right: 2em;
	box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .2);
}
.search-menu .floor dt a:hover, .search-menu .genre dt a:hover {
	border: #00AFD6 solid 1px;
}
.search-menu .floor dt a:after, .search-menu .genre dt a:after {
	content: "\f107";
	font-family: fontawesome;
	color: #00AFD6;
	float: left;
	margin-left: 1em;
}
.search-menu .floor dd {
	position: absolute;
	width: 93%;
	top: 100%;
	left: 0;
	padding: 15px;
	display: flex;
	z-index: 10;
	background: #fff;
	background: #323333;
	border-radius: 0 0 5px 5px;
}
.search-menu .genre dd {
	position: absolute;
	width: 93%;
	top: 100%;
	left: 0;
	padding: 15px;
	display: flex;
	z-index: 10;
	background: #fff;
	background: #323333;
	border-radius: 0 0 5px 5px;
}
/* floor-search */
.floor-search {
	width: 100%;
	color: #fff;
	display: flex;
}
.floor-search > div {
	flex: 1;
	margin: 5px;
}
.floor-search > div p {
	font-weight: bold;
}
.floor-search a {
	display: block;
	padding: 10px;
	color: #fff;
	border-bottom: #fff solid 1px;
}
/*.floor-search a:hover {
    background: #333;
}*/
.floor-search .active, .floor-search a.active:hover {
	background: #00AFD6;
}
/* genre-search */
.genre-search {
	width: 100%;
	color: #fff;
	display: flex;
}
.genre-search > div {
	flex: 1;
	margin: 5px;
}
.genre-search > div p {
	font-weight: bold;
}
.genre-search p a {
	padding: 10px;
}
.genre-search a {
	display: block;
	padding: 10px 10px 10px 20px;
	color: #fff;
	border-bottom: #fff solid 1px;
}
.genre-search a:hover {
	background: #333;
}
.genre-search .active, .genre-search a.active:hover {
	background: #00AFD6;
}
/* keyword */
.search-menu .keyword {
	width: 100%;
}
.search-menu .keyword input {
	border-color: #fff;
	padding: .85rem;
	width: 100%;
	background: #fff;
	border-radius: 5px;
	position: relative;
	transition: border .3s ease;
	min-height: 46px;
	margin-bottom: 10px;
}
.search-menu .keyword:hover input {
	border: #00AFD6 solid 1px;
}
.search-menu .keyword {
	position: relative;
}
.search-menu .keyword a {
	font-size: 2rem;
	width: 40px;
	text-align: center;
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -1.1em;
	height: 2.2em;
	line-height: 2;
}
@media screen and (max-width: 800px) {
	.search-menu {
		display: block;
	}
	.search-menu .floor {
		width: 100%;
		margin-bottom: 10px;
	}
	.search-menu .floor dd {
		width: 100%;
	}
	.search-menu .genre {
		width: 100%;
		margin-bottom: 15px;
	}
	.search-menu .keyword {
		width: 100%;
		margin-bottom: 10px;
	}
	.search-menu .keyword input {
		font-size: 2rem;
	}
	.search-menu .floor h4, .search-menu .genre h4 {
		display: none;
	}
	.search-menu .floor dt a {
		margin-right: 0;
	}
	.search-menu .genre dt a {
		margin-right: 0;
	}
	.search-menu .genre dd {
		width: 100%;
	}
}
/* search-select */
.search-select {
	display: flex;
	align-items: center;
	width: 100%;
	margin-bottom: 1em;
}
.search-select h4 {
	flex: 1;
}
.search-select ul {
	flex: 4;
}
.search-select .btn-select {
	margin-bottom: 0;
}
.search-select .btn-select a {
	padding: .5em 1em;
}
@media screen and (max-width: 800px) {
	.search-select {
		flex-flow: column;
		align-items: flex-start;
	}
	.search-select .btn-select {
		flex-wrap: wrap;
	}
	.search-select .btn-select a {
		margin-bottom: .5em;
	}
	.search-select h4 {
		margin-bottom: 1rem;
	}
}
/* --------------------------------------------------
search-menu js
-------------------------------------------------- */
.search-menu .search-costom {
	display: none;
	opacity: 0;
}
.search-menu .search-costom.is-active {
	display: flex;
	flex-wrap: wrap;
	margin-top: -2em;
	opacity: 1;
	animation: fadeOverlay2 .5s ease 0s 1 normal forwards;
	-webkit-animation: fadeOverlay2 .5s ease 0s 1 normal forwards;
}
@keyframes fadeOverlay2 {
	0% {
		opacity: 0;
		margin-top: -2.5em;
	}
	100% {
		opacity: 1;
		margin-top: -2em;
	}
}
@-webkit-keyframes fadeOverlay2 {
	0% {
		opacity: 0;
		margin-top: -2.5em;
	}
	100% {
		opacity: 1;
		margin-top: -2em;
	}
}
.btn-costom.is-active a:before {
	content: "\f056";
}
.btn-costom.is-active a {
	background: #00AFD6;
}
.search-menu .floor dt a.is-active:after, .search-menu .genre dt a.is-active:after {
	content: "\f106";
	font-family: fontawesome;
	float: left;
}
.search-menu .floor dt a.is-active:before, .search-menu .genre dt a.is-active:before {
	display: block;
	opacity: 1;
}
.search-menu .floor dd {
	display: none;
	opacity: 0;
}
.search-menu .floor dd.is-active {
	display: block;
	opacity: 1;
	animation: fadeOverlay .5s ease 0s 1 normal forwards;
	-webkit-animation: fadeOverlay .5s ease 0s 1 normal forwards;
}
.search-menu .genre dd {
	display: none;
	opacity: 0;
}
.search-menu .genre dd.is-active {
	display: block;
	opacity: 1;
	animation: fadeOverlay .5s ease 0s 1 normal forwards;
	-webkit-animation: fadeOverlay .5s ease 0s 1 normal forwards;
}
@keyframes fadeOverlay {
	0% {
		opacity: 0;
		margin-top: -10px;
	}
	100% {
		opacity: 1;
		margin-top: 0;
	}
}
@-webkit-keyframes fadeOverlay {
	0% {
		opacity: 0;
		margin-top: -10px;
	}
	100% {
		opacity: 1;
		margin-top: 0;
	}
}
/* --------------------------------------------------
.slide-list
-------------------------------------------------- */
.slide-list {
	margin: 40px 80px;
}
.slide-list li {
	margin: 1em;
}
@media screen and (max-width: 800px) {
	.slide-list {
		margin: 50px;
	}
	.pick-box .slide-list {
		margin: 0
	}
}
@media screen and (max-width: 600px) {
	.slide-list {
		margin: 0;
		overflow: hidden;
	}
}
/* --------------------------------------------------
.shops-slider
-------------------------------------------------- */
.shops-slider {
	max-width: 1400px;
	margin: 0 auto 5%;
	padding: 0 20px;
}
.top-slider .slick-dots {
	bottom: -30px !important;
	right: 30px;
	display: block !important;
	width: auto !important;
	background: #FFF;
	border-radius: 40px;
	padding: .75em 3em .75em 1em;
}
.top-slider .slick-dots li {
	width: 8px;
	height: 8px;
	margin: 0 4px;
	position: relative;
}
.top-slider .slick-dots li button::before {
	border-radius: 50%;
	width: 8px;
	height: 8px;
}
.top-slider .slick-dots li.slick-active button::before {
	background: #005BAC !important;
	opacity: 1 !important;
}
.top-slider #play-btn {
	display: inline-block !important;
	background: none;
	border: none;
	color: #005BAC;
	width: 2em;
	position: absolute;
	bottom: -1.8em !important;
	right: 3em;
	padding: 1em;
}
.top-slider #play-btn #start-btn:before {
	content: "\f04b";
	font-family: fontawesome;
	display: block;
	font-size: 1.4rem;
	line-height: 1;
}
.top-slider #play-btn #stopBtn:before {
	content: "\f04c";
	font-family: fontawesome;
	display: block;
	font-size: 1.4rem;
	line-height: 1;
}
@media screen and (max-width: 800px) {
	.shops-slider {
		margin-bottom: 5rem;
	}
	.top-slider #play-btn {
		bottom: -2em !important;
	}
}
/* --------------------------------------------------

animate

-------------------------------------------------- */
.fadeIn {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 2s;
	-ms-animation-duration: 2s;
	animation-duration: 2s;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
	visibility: visible !important;
}
@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.fadeInDown {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}
@keyframes fadeInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		-ms-transform: translateY(-20px);
		transform: translateY(-20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}
.fadeInUp {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
	visibility: visible !important;
}
@-webkit-keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}
@keyframes fadeInUp {
	0% {
		opacity: 0;
		-webkit-transform: translateY(20px);
		-ms-transform: translateY(20px);
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}
.fadeInLeft {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInLeft;
	animation-name: fadeInLeft;
	visibility: visible !important;
}
@-webkit-keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translateX(50px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}
@keyframes fadeInLeft {
	0% {
		opacity: 0;
		-webkit-transform: translateX(50px);
		-ms-transform: translateX(50px);
		transform: translateX(50px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}
.fadeInRight {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight;
	visibility: visible !important;
}
@-webkit-keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
	}
}
@keyframes fadeInRight {
	0% {
		opacity: 0;
		-webkit-transform: translateX(-20px);
		-ms-transform: translateX(-20px);
		transform: translateX(-20px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}
.fx-swing {
	-moz-animation: swing linear 2s infinite;
	-moz-transform-origin: center -5px 0;
	-webkit-animation: swing linear 2s infinite;
	-webkit-transform-origin: center -5px 0;
	-ms-animation: swing linear 2s infinite;
	-ms-transform-origin: center -5px 0;
	-o-animation: swing linear 2s infinite;
	-o-transform-origin: center -5px 0;
	animation: swing linear 2s infinite;
	transform-origin: center 70% 0;
}
@-moz-keyframes swing {
	0% {
		-moz-transform: rotate(0deg)
	}
	25% {
		-moz-transform: rotate(2deg);
	}
	50% {
		-moz-transform: rotate(0deg);
	}
	75% {
		-moz-transform: rotate(-2deg);
	}
	100% {
		-moz-transform: rotate(0deg);
	}
}
@-webkit-keyframes swing {
	0% {
		-webkit-transform: rotate(0deg);
	}
	25% {
		-webkit-transform: rotate(2deg);
	}
	50% {
		-webkit-transform: rotate(0deg);
	}
	75% {
		-webkit-transform: rotate(-2deg);
	}
	100% {
		-webkit-transform: rotate(0deg);
	}
}
@-o-keyframes swing {
	0% {
		-o-transform: rotate(0deg);
	}
	25% {
		-o-transform: rotate(2deg);
	}
	50% {
		-o-transform: rotate(0deg);
	}
	75% {
		-o-transform: rotate(-2deg);
	}
	100% {
		-o-transform: rotate(0deg);
	}
}
@-ms-keyframes swing {
	0% {
		-ms-transform: rotate(0deg);
	}
	25% {
		-ms-transform: rotate(2deg);
	}
	50% {
		-ms-transform: rotate(0deg);
	}
	75% {
		-ms-transform: rotate(-2deg);
	}
	100% {
		-ms-transform: rotate(0deg);
	}
}
@keyframes swing {
	0% {
		transform: rotate(0deg);
	}
	25% {
		transform: rotate(2deg);
	}
	50% {
		transform: rotate(0deg);
	}
	75% {
		transform: rotate(-2deg);
	}
	100% {
		transform: rotate(0deg);
	}
}
/* --------------------------------------------------
fadePanelRight
-------------------------------------------------- */
.fadePanelRight::before {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadePanelRight;
	animation-name: fadePanelRight;
	visibility: visible !important;
}
@-webkit-keyframes fadePanelRight {
	0% {
		left: -1000px;
	}
	100% {
		left: 0;
	}
}
@keyframes fadePanelRight {
	0% {
		left: -1000px;
	}
	100% {
		left: 0;
	}
}
/* --------------------------------------------------
fadePanelLeft
-------------------------------------------------- */
.fadePanelLeft::before {
	-webkit-animation-fill-mode: both;
	-ms-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-duration: 1s;
	-ms-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-name: fadePanelLeft;
	animation-name: fadePanelLeft;
	visibility: visible !important;
}
@-webkit-keyframes fadePanelLeft {
	0% {
		left: 1000px;
	}
	100% {
		left: 0;
	}
}
@keyframes fadePanelLeft {
	0% {
		left: 1000px;
	}
	100% {
		left: 0;
	}
}
/* --------------------------------------------------
page-traffic-list
-------------------------------------------------- */
.page-situation-block {
	display: flex;
	justify-content: space-between;
	letter-spacing: .1em;
	align-items: center;
}
.page-situation-block dt {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	border-left: 5px solid #00AFD6;
	padding-left: 1em;
}
.page-situation-block dt span {
	font-size: 1.3rem;
	font-weight: normal;
	display: block;
}
.page-situation-block dd {
	display: flex;
	align-items: center;
	justify-content: center;
}
.page-situation-block dd div {
	width: 40px;
	min-width: 40px;
	height: 40px;
	margin-right: 10%;
}
.page-situation-block dd p {
	background: #D1D1D1;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	padding: 0 .5em;
	min-width: 9em;
	margin-bottom: 1rem;
	letter-spacing: 0;
}
.page-situation-block dd p.caution {
	background: #F9DEDE;
}
.page-situation-block dd p.maintenance {
	background: #BDEBFF;
	letter-spacing: 0;
}
.page-traffic-list li {
	padding-bottom: 2rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #DEDEDE;
}
.page-traffic-list li:nth-child(3n) {
	border-right: none;
	margin-right: 0;
	padding-right: 0;
}
.page-traffic-list li .situation-block {
	justify-content: space-between;
}
.page-traffic-list .situation-block dt {
	width: auto;
}
.page-traffic-list .situation-block dt br {
	display: none;
}
.page-traffic-list li .situation-block dd {
	width: calc(100% - 10em);
}
/* --------------------------------------------------
error-txt
-------------------------------------------------- */
.error-txt .error-ttl {
	text-align: center;
	margin-bottom: 4em;
}
.error-txt ul, .error-txt .btn-link-lb {
	margin: 1em 0;
}
@media screen and (max-width: 800px) {
	.error-txt {
		padding-top: 4em;
	}
	.error-txt .error-ttl {
		text-align: left;
		margin-bottom: 2em;
	}
	.error-txt .block-half {
		margin: 2em 0;
	}
}
/* --------------------------------------------------
privacy
-------------------------------------------------- */
#personalInfo p:last-child, #cookie p:last-child, #analytics p:last-child, #localstorage p:last-child, #accessibility p:last-child, #recommended-browser p:last-child, #disclaimer p:last-child {
	margin-bottom: 6rem;
}
#personalInfo li p:last-child {
	margin-bottom: 0;
}
#analytics a[target="_blank"], #accessibility a {
	color: #0059AC;
	text-decoration: underline;
	position: relative;
}
#analytics a[target="_blank"]::after {
	font-family: 'icoairport';
	content: "\e915";
	display: inline-block;
	vertical-align: middle;
	margin-left: .5em;
}
/* --------------------------------------------------
loading:
-------------------------------------------------- */
.ico_loading {
	display: block;
	padding: 20px;
	margin: 0 auto;
	width: 100px;
}
.refreshing-loader:not(:required) {
	-moz-animation: refreshing-loader 1.5s infinite linear;
	-webkit-animation: refreshing-loader 1.5s infinite linear;
	animation: refreshing-loader 1.5s infinite linear;
	display: inline-block;
	color: #ffffff;
	font-size: 10px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	position: relative;
	text-indent: 100%;
	border: 0.2em solid #00AFD6;
	border-left-color: transparent;
}
.refreshing-loader:not(:required):after {
	display: block;
	background: url(../img/common/ico_loding.svg) left center no-repeat;
	background-size: 100%;
	transform: rotate(-90deg);
	content: '';
	width: 30px;
	height: 50px;
	overflow: hidden;
	margin-left: -1.5em;
}
@-moz-keyframes refreshing-loader {
	0% {
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-moz-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@-webkit-keyframes refreshing-loader {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes refreshing-loader {
	0% {
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-moz-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
/* --------------------------------------------------
NAVITIME search
-------------------------------------------------- */
.search-form-area {
	color: #FFF;
}
/* datepicker-area */
.arrival-departure-area {
	display: flex;
	justify-content: center;
	align-items: center;
}
.arrival-departure-area dt {
	width: 3em;
	min-width: 3em;
	text-align: right;
}
.arrival-departure-area input {
	background: #FFF;
	display: inline-block;
	border-radius: 4px;
	border: 0;
	padding: .5em 1em;
	cursor: pointer;
	margin: 1em;
}
.arrival-departure-area .input-box {
	width: 30%;
	text-align: center;
}
.arrival-departure-area .input-box input {
	width: calc(100% - .5em);
}
.only-text {
	background: #FFF;
	display: block;
	border-radius: 4px;
	border: 0;
	padding: .5em 1em;
	cursor: pointer;
	margin: 1em;
	color: #333;
	width: calc(100% - 2em);
	line-height: 1.8;
	overflow: hidden;
	font-size: 1.5rem;
	text-align: left;
}
.arrival-departure-area button {
	margin: 0 .5em 0 0;
	width: 3em;
	text-align: center;
	background: none;
	border: 0;
	display: inline-block;
	cursor: pointer;
}
.arrival-departure-area button span {
	font-size: 1.6em;
}
@media screen and (max-width: 1350px) {
	.arrival-departure-area dt {
		width: 10%;
		text-align: right;
	}
	.arrival-departure-area button {
		margin: 0 0 0 1em;
	}
}
@media screen and (max-width: 800px) {
	.arrival-departure-area {
		display: block;
		text-align: center;
	}
	.arrival-departure-area dt {
		display: none;
	}
	.arrival-departure-area .input-box {
		max-width: 38rem;
		width: 100%;
		margin: 0 auto;
	}
	.arrival-departure-area .input-box input {
		width: 100%;
	}
	.arrival-departure-area button {
		width: 2.0em;
		margin: 0 .5em;
		transform: rotate(90deg);
	}
	.arrival-departure-area button span {
		font-size: 1.4em;
	}
	.only-text {
		font-size: 2rem;
		width: 100%;
		margin: .8em 0;
	}
}
/* datepicker-area */
.datepicker-area {
	display: flex;
	align-items: center;
	justify-content: center;
}
.datepicker-area dt {
	margin-right: 1%;
}
.datepicker-area dd {
	width: 70%;
}
.datepicker-area dd input {
	width: calc(100% - 2em);
}
@media screen and (max-width: 800px) {
	.datepicker-area dd {
		width: calc(100% - 4em);
	}
	.datepicker-area dt {
		margin-right: 3%;
	}
}
/* time-area */
.time-area {}
.time-area .input-title {
	text-align: right;
}
.time-area .input-title input {
	display: none;
}
.time-area .input-title a {
	/*    background: #00AFD6;
	display: inline-block;
	border-radius: 4px;
	border: 0;
	padding: .5em 1em;*/
	color: #FFF;
	cursor: pointer;
	margin: .5em .5em 0;
	text-align: center;
	margin-right: 13%;
	text-decoration: underline;
	position: relative;
}
.time-area .input-title a:hover {
	text-decoration: none;
}
.time-area .input-title a::before {
	font-family: 'icoairport';
	content: "\e90a";
	display: inline-block;
	margin-right: .5em;
	color: #00AFD6;
	overflow-y: hidden;
	line-height: 1;
}
.time-area .input-box {
	width: 100%;
	text-align: center;
}
.time-area .input-box select {
	background: #FFF;
	display: inline-block;
	border-radius: 4px;
	border: 0;
	padding: .5em 1em;
	cursor: pointer;
	margin: .7em .5em;
	width: 29%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
@media screen and (max-width: 800px) {
	.time-area .input-title a {
		margin-right: 2.5em;
	}
	.time-area .input-box select {
		width: 40%;
	}
}
/* search-time-type-area */
.search-time-type-area {
	display: block;
	padding: 10px 0 25px;
	width: 100%;
}
.search-time-type-area input[type="radio"] {
	display: none;
}
.search-time-type-area input[type="radio"]:checked + label:before {
	border-color: #FFF;
	animation: ripple 0.2s linear forwards;
}
.search-time-type-area input[type="radio"]:checked + label:after {
	transform: scale(1);
}
.search-time-type-area label {
	display: inline-block;
	min-height: 20px;
	position: relative;
	padding: 0 20px 0 40px;
	margin-bottom: 0;
	cursor: pointer;
	vertical-align: bottom;
}
.search-time-type-area label:before, .search-time-type-area label:after {
	position: absolute;
	content: '';
	border-radius: 50%;
	transition: all .3s ease;
	transition-property: transform, border-color;
}
.search-time-type-area label:before {
	left: 0;
	top: 0;
	width: 24px;
	height: 24px;
	border: 2px solid rgba(255, 255, 255, 0.54);
}
.search-time-type-area label:after {
	top: 8px;
	left: 8px;
	width: 12px;
	height: 12px;
	transform: scale(0);
	background: #FFF;
}
@media screen and (max-width: 800px) {
	.search-time-type-area label {
		padding: 0 10px 0 25px;
	}
	.search-time-type-area label:before {
		left: 0;
		top: 0;
		width: 16px;
		height: 16px;
		border: 2px solid rgba(255, 255, 255, 0.54);
	}
	.search-time-type-area label:after {
		top: 6px;
		left: 6px;
		width: 8px;
		height: 8px;
	}
}
/* submit-button */
.root-search .submit-button {
	background: #00AFD6;
	width: 80%;
	color: #FFF;
	max-width: 360px;
	border-radius: 4px;
	border: 0;
	padding: 1em 1.5em;
	margin: 0 auto;
	display: block;
	font-size: 1.8rem;
	cursor: pointer;
}
.dummy-submit-button {
	display: none;
}
/* autocomplete-modal-container */
body #autocomplete-modal-container {
	max-width: 524px;
	width: 96%;
	height: 40vh;
	position: absolute;
	top: 0 !important;
	left: 50% !important;
	right: auto !important;
	bottom: auto !important;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 300;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	background: #fff;
	border-radius: 10px;
	padding: 2em;
	box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-webkit-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-moz-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	margin: 0 auto;
}
#autocomplete-modal-container .calendar-box__close {
	position: absolute;
	right: 0;
	top: -77px;
	color: #424f61;
	font-size: 30px;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #fff;
	line-height: 64px;
	text-align: center;
	cursor: pointer;
	box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-webkit-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-moz-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	display: table;
}
#autocomplete-modal-container .calendar-box__close .fa-times {
	display: table-cell;
	vertical-align: middle;
}
#autocomplete-modal-container .header-section {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 60px;
	min-height: 60px;
	top: 0;
	left: 0;
	right: 0;
	background-color: #00AFD6 !important;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding-right: 16px;
	position: relative;
}
#autocomplete-modal-container .header-section #icon-back {
	padding: 16px;
}
#autocomplete-modal-container .header-section #icon-search {
	position: absolute;
	left: 64px;
	top: 22px;
}
#autocomplete-modal-container .header-section .input-options-container {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	height: 20px;
	padding-right: 12px;
	position: absolute;
	right: 12px;
	top: 20px;
}
#autocomplete-modal-container .header-section .input-options-container .autocomplete-clear-container .autocomplete-clear, #autocomplete-modal-container .header-section .input-options-container .autocomplete-loading-container .autocomplete-loading {
	height: 20px;
	line-height: 1;
	vertical-align: middle;
}
#autocomplete-modal-container .header-section #am-spot-search-form {
	width: 100%;
}
#autocomplete-modal-container .header-section #am-spot-search-form #autocomplete-form {
	height: 40px;
	width: 100%;
	padding: 0 15px 0 35px;
	margin: 0;
	font-family: HiraKakuPro-W3;
	font-size: 14px;
	color: #333;
	border: none;
	outline: 0;
	-webkit-appearance: none;
	border-radius: 0;
	line-height: 1;
}
#autocomplete-modal-container .contents-section {
	background-color: #fff;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	width: 100%;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
#autocomplete-modal-container .contents-section .autocomplete-items .ui-autocomplete-category {
	background: #F0F0F0;
	padding: .5em;
	border: 1px solid #ebebeb;
	text-align: center;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item {
	border: 1px solid #ebebeb;
}
#autocomplete-modal-container .contents-section .autocomplete-items .ui-autocomplete-category dl {
	margin-top: 0;
	margin-bottom: 1em;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item a {
	position: relative;
	display: block;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item a:hover {
	background: #E2E2E2;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item a::before {
	font-family: 'icoairport';
	content: "\e90a";
	position: absolute;
	right: 2rem;
	top: 50%;
	line-height: 1;
	color: #005CAD;
	transition: .3s ease-in;
	margin-top: -.5em;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item a:hover::before {
	right: 1rem;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item dl dt {
	padding: 1em 1em 0;
	font-weight: bold;
}
#autocomplete-modal-container .contents-section .autocomplete-items .route-comparison-suggest-item dl dd {
	padding: 0 1.25em 1em;
	font-size: 1.3rem;
	line-height: 1.2;
}
#introduction-text {
	color: #fff;
	text-align: center;
	margin-bottom: 3%;
}
#autocomplete-modal-container .calendar-box__close {
	position: absolute;
	right: 10px;
	top: -30px;
	color: #424f61;
	font-size: 40px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #fff;
	line-height: 56px;
	text-align: center;
	cursor: pointer;
	box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-webkit-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	-moz-box-shadow: 0px 3px 8px 0px rgba(33, 65, 88, 0.24);
	display: table;
}
#autocomplete-modal-container .calendar-box__close .fa-times {
	display: none !important;
}
#autocomplete-modal-container .calendar-box__close::before {
	content: "";
	display: block;
	background: #323335;
	height: 70%;
	width: 3px;
	position: absolute;
	left: 50%;
	top: 15%;
	transform: rotate(45deg);
	transform-origin: center;
}
#autocomplete-modal-container .calendar-box__close::after {
	content: "";
	display: block;
	background: #323335;
	height: 70%;
	width: 3px;
	position: absolute;
	left: 50%;
	top: 15%;
	transform: rotate(-45deg);
	transform-origin: center;
}
@media screen and (max-width: 800px) {
	body #autocomplete-modal-container {
		padding: 2em 1em;
	}
	#autocomplete-modal-container .header-section #am-spot-search-form #autocomplete-form {
		font-size: 20px;
		line-height: 40px;
	}
}
/* --------------------------------------------------
mapplic
-------------------------------------------------- */
text,tspan {
	font-family: "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "helvetica", "arial", sans-serif;
}

.c-box .c-box.map-container, .inner-s .c-box.map-container, .inner-wrap .c-box.map-container {
	padding: 2rem 0;
}
.c-box.map-container {
	margin-bottom: 0;
}
.mapplic-element {
	background: #F7F7F7;
}
/* --------------------------------------------------
印刷
-------------------------------------------------- */
@media print {
	body {
		zoom: 90%;
	}
	#emergency-area {
		display: none;
	}
	#header {
		display: none;
	}
	.side-menu {
		display: none;
	}
	#contents {
		padding-top: 0 !important;
	}
	.page-ttl {
		padding: 0 !important;
	}
	#footer {
		display: none;
	}
	.map-container {
		page-break-inside: avoid;
	}
}
/* --------------------------------------------------
GDPR cookie-area
-------------------------------------------------- */

/* --------   gdpr  --------  */


body.gdpr {
	padding-bottom: 100px;
}

@media screen and (max-width: 1200px) {
	body.gdpr {
		padding-bottom: 96px;
	}
}

@media screen and (max-width: 800px) {
	body.gdpr {
		padding-bottom: 120px;
	}
}

@media screen and (max-width: 600px) {
	body.gdpr {
		padding-bottom: 100px;
	}
}

/* --------   cookie-area  --------  */

.cookie-area {
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
	background: rgba(0,0,0,0.85);
	z-index: 100;
}
.cookie-inner {
	height: auto;
	max-width: 1400px;
	margin: 0 auto;
	padding: 2em 5em 2em 2em;
	color: #fff;
	position: relative;
	word-break: normal;
}

.cookie-inner p.pc-only{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.cookie-inner span:first-child {
	margin-right: 1em;
	line-height: 1.2;
}

.cookie-inner a,
.cookie-inner a:visited {
	color: #fff;
	border-bottom: 1px solid #fff;
}



.link-cookie {
	display: inline-block;
	margin-right: 1em;
}

.link-cookie a {
	text-decoration: underline;
	display: inline-block;
	color: #FFF;
	position: relative;
	
}

.link-cookie a:before {
    font-family: 'icoairport';
    content: "\e90a";
    display: inline-block;
    margin-right: 1em;
    font-size: 0.8rem;
	transform: translateY(-0.1rem);
}

.btn-accept {
	text-align: center;
	display: inline-block;
}
.btn-accept a {
	display: inline-block;
	padding: .15em 1.5em;
	background: #00AFD6;
	color: #fff;
	width: 120px;
	text-align: center;
	font-size: .9em;
	border-bottom:none;
}


@media screen and (max-width: 800px) {
	

	.cookie-area {
		position: fixed;
		bottom: 80px;
		height: auto;
		font-size: 1.3rem;
	}
	
	.cookie-inner {
		display: block;
		padding: 1em 6em 1em 1em;
	}
	
	.cookie-inner a,
	.cookie-inner a:visited {
		border-bottom:none;
	}
	
	.cookie-inner span:first-child {
		margin-right: .5em;
	}
	
	.cookie-inner p.pc-only{
		display: none;
	}
	
	.cookie-area .sp-only {
		display: inline-block;
	}
	
	.btn-accept a {
		width: 80px;
	}

}
@media screen and (max-width: 600px) {
	.cookie-area {
		bottom: 55px;
	}
}

@media screen and (max-width: 360px) {
	.btn-accept a {
		width: auto;
	}
}
/* --------------------------------------------------
privacy
-------------------------------------------------- */
.privac-list li:not(:last-child) {
	margin-bottom: 3em;
}



/* --------------------------------------------------
国際線ターミナル増改築テキスト表示
-------------------------------------------------- */

.terminal-note {
	margin-bottom: 3rem!important;
}