@charset "UTF-8";
/* =====
 * 共通レイアウト
============================================================================= */
html {
	font-size: 14px;
}

html.large {
	font-size: 16px;
}

body {
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN",
		"游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic,
		"メイリオ", "Meiryo", sans-serif;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

/* -----
 * link setting
----------------------------------------------------------------------------- */
a {
	color: #00a0e9;
	outline: 0px none #000;
}

a img {
	vertical-align: bottom;
	-webkit-box-shadow: #000 0 0 0;
	box-shadow: #000 0 0 0;
}

a.inherit {
	color: inherit;
	text-decoration: none;
}

/* -----
 * tag setting
----------------------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 1.3em 0 1em;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	margin-top: 0;
}

p,
ul,
ol,
table {
	margin: 1em 0;
}

p:last-child,
ul:last-child,
ol:last-child,
table:last-child {
	margin-bottom: 0;
}

p:first-child,
ul:first-child,
ol:first-child,
table:first-child {
	margin-top: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

br.sp {
	display: none;
}

/* -----
 * 汎用モジュール
----------------------------------------------------------------------------- */
/* *** レスポンシブ用表示制御 *** */
.sp-show {
	display: none !important;
}

/* *** 文字色 *** */
.f-red {
	color: #f04c62;
}

.f-blue {
	color: #00a0e9;
}

.f-black {
	color: #333;
}

/* *** テキスト *** */
.indent {
	margin-left: 2em;
}
.text-indent {
	text-indent: -1em;
	margin-left: 1em;
}

/* *** 下線 *** */
.underline {
	text-decoration: underline wavy red;
}

_:-ms-lang(x)::backdrop,
.underline {
	/* Edge */
	display: inline;
	padding-bottom: 0.15em;
	background: radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0) 0.1em,
			red 0.1em,
			red 0.15em,
			rgba(255, 255, 255, 0) 0.15em
		),
		radial-gradient(
			circle at bottom,
			rgba(255, 255, 255, 0) 0.1em,
			red 0.1em,
			red 0.15em,
			rgba(255, 255, 255, 0) 0.15em
		);
	background-repeat: repeat;
	background-position: 0 1em, 0.25em 1.05em;
	background-size: 0.5em 1.15em;
}

_:lang(x)::-ms-backdrop,
.underline {
	/* IE11 */
	display: inline;
	padding-bottom: 0.15em;
	background: radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0) 0.1em,
			red 0.1em,
			red 0.15em,
			rgba(255, 255, 255, 0) 0.15em
		),
		radial-gradient(
			circle at bottom,
			rgba(255, 255, 255, 0) 0.1em,
			#8a65fe 0.1em,
			#8a65fe 0.15em,
			rgba(255, 255, 255, 0) 0.15em
		);
	background-repeat: repeat;
	background-position: 0 1em, 0.25em 1.05em;
	background-size: 0.5em 1.15em;
}

/* *** 下層コンテンツ用ラッパー *** */
.contents-wrapper {
	width: 980px;
	margin: 0 auto;
}

.contents-wrapper.large {
	width: 1180px;
}

.contents-parent-section {
	margin-bottom: 4em;
}

.contents-parent-section:last-child {
	margin-bottom: 0;
}

.contents-child-section {
	margin-bottom: 2em;
}

.contents-child-section:last-child {
	margin-bottom: 0;
}

/* *** 下層ページタイトル *** */
#PageTitle {
	position: relative;
	margin-bottom: 60px;
	padding: 45px 0;
	text-align: center;
	background-color: #e6f8ff;
}

#PageTitle > h2 {
	margin: 0;
	color: #00a0e9;
	font-size: 31.99px;
	font-size: 2.285rem;
	line-height: 1;
	letter-spacing: 0.05em;
}

#PageTitle:after {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	width: 80px;
	height: 2px;
	background-color: #00a0e9;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	content: "";
}

/* *** 見出しデザイン *** */
.headline-1 {
	position: relative;
	padding-bottom: 0.5em;
	color: #00a0e9;
	font-size: 28px;
	font-size: 2rem;
	border-bottom: 1px solid #e1e1e1;
}

.headline-1:after {
	position: absolute;
	bottom: -1px;
	left: 0;
	display: block;
	width: 80px;
	height: 2px;
	background-color: #00a0e9;
	content: "";
}

.headline-2 {
	position: relative;
	padding-left: 30px;
	color: #00a0e9;
	font-size: 17.99px;
	font-size: 1.285rem;
}

.headline-2:after {
	position: absolute;
	top: 0.875em;
	left: 0;
	display: block;
	width: 20px;
	height: 1px;
	background-color: #00a0e9;
	content: "";
}

.headline-3 {
	color: #005bab;
	font-size: 15.988px;
	font-size: 1.142rem;
}

.headline-3 + p {
	margin-top: -0.5em;
}

.headline-4 {
	font-size: 14.994px;
	font-size: 1.071rem;
}

.headline-4 + p {
	margin-top: -0.5em;
}

/* *** リスト *** */
.reset-list {
	padding: 0;
	list-style: none;
}

.reset-list li {
	margin-top: 1em;
}

.reset-list li:first-child {
	margin-top: 0;
}

.standard-list {
	padding-left: 1.5em;
}

.square-list {
	padding-left: 0;
	list-style: none;
}

.square-list li {
	padding-left: 20px;
	text-indent: -20px;
}

.square-list li:before {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-right: 10px;
	background-color: #00a0e9;
	content: "";
}

.circle-list {
	padding-left: 0;
	list-style: none;
}

.circle-list li {
	padding-left: 20px;
	text-indent: -20px;
}

.circle-list li:before {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin-right: 8px;
	background-color: #4cbcf0;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	content: "";
}

.border-list {
	padding-left: 0;
	list-style: none;
}

.border-list li {
	margin-top: 1em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #e1e1e1;
}

.border-list li:first-child {
	margin-top: 0;
}

.border-list.dotted li {
	border-bottom-style: dotted;
}

/* *** アコーディオンコンテンツ *** */
.accordion-section .accordion-label {
	cursor: pointer;
}

.accordion-section .accordion-target {
	display: none;
}

.accordion-section.show .accordion-target {
	display: block;
}

/* *** ボタン *** */
.standard-button {
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 300px;
	height: 55px;
	margin: 0 auto;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	line-height: 55px;
	text-align: center;
	text-decoration: none;
	background-color: #ff971c;
}

/* *** アイコン *** */
.icon-arrow:before {
	display: inline-block;
	width: 6px;
	height: 10px;
	margin-right: 0.5em;
	vertical-align: middle;
	background: transparent url(../images/common/allow-right-blue-w6.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	content: "";
}

.icon-blank:after {
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-left: 0.5em;
	vertical-align: baseline;
	background: transparent url(../images/common/icon-blank-blue-w13.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	content: "";
}

.icon-pdf:before {
	display: inline-block;
	width: 19px;
	height: 23px;
	margin-right: 0.5em;
	vertical-align: middle;
	background: transparent url(../images/common/icon-pdf-blue-w19.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	content: "";
}

/* -----
 * テーブル基本設定
----------------------------------------------------------------------------- */
.standard-table {
	width: 100%;
	border-collapse: collapse;
}

.standard-table th,
.standard-table td {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 15px 20px;
	vertical-align: middle;
	border: 1px solid #e1e1e1;
}

.standard-table th {
	font-weight: normal;
	text-align: left;
	background-color: #f7f5f3;
}

.standard-table.standard-table-size th {
	width: 200px;
}

/* -----
 * フォーム基本設定
----------------------------------------------------------------------------- */
.standard-form {
	font-size: 14px;
}

.standard-form select {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	height: 38px;
	padding: 0 37px 0 15px;
	font-size: inherit;
	text-overflow: "";
	background: #fff url(../images/common/form-select-arrow.png) 100% 50%
		no-repeat;
	-webkit-background-size: 27px 18px;
	background-size: 27px 18px;
	border: 0;
	border: 1px solid #e1e1e1;
	-webkit-border-radius: 0;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.standard-form select::-ms-expand {
	display: none;
}

.standard-form input[type="radio"] {
	display: none;
}

.standard-form input[type="radio"] + span {
	display: inline-block;
	min-height: 18px;
	padding-left: 26px;
	font-size: inherit;
	line-height: 1;
	line-height: 1.5;
	vertical-align: baseline;
	background: transparent url(../images/common/form-radio-off.png) 0 50%
		no-repeat;
	-webkit-background-size: 18px 18px;
	background-size: 18px 18px;
	cursor: pointer;
}

.standard-form input[type="radio"]:checked + span {
	background-image: url(../images/common/form-radio-on.png);
}

.standard-form button {
	max-width: 100%;
	border: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.standard-form button.submit {
	width: 300px;
	height: 55px;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-align: center;
	background-color: #ff971c;
}

.standard-form .select-fields label {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 30px;
	font-weight: bold;
	font-size: 18px;
	background-repeat: no-repeat;
	background-position: 0 50%;
	-webkit-background-size: 22px 24px;
	background-size: 22px 24px;
}

.standard-form .select-fields label.start {
	background-image: url(../images/common/form-icon-start.png);
}

.standard-form .select-fields label.stop {
	background-image: url(../images/common/form-icon-stop.png);
}

.standard-form .select-fields label.time {
	background-image: url(../images/common/form-icon-time.png);
}

/* -----
 * Wrapper
----------------------------------------------------------------------------- */
#Wrapper {
	min-width: 1280px;
	margin: 0 auto;
}

/* -----
 * Header
----------------------------------------------------------------------------- */
#Header {
	position: relative;
	background: #fff url(../images/common/header-bg01.png) 0 101px repeat-x;
}

#Header .header-top {
	position: relative;
	width: 1180px;
	height: 119px;
	margin: 0 auto;
}

#Header .header-top > h1 {
	width: 317px;
	padding-top: 19px;
}

#Header .header-top:before {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	width: 882px;
	height: 38px;
	background: transparent url(../images/common/header-bg02.png) 50% 100%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	content: "";
}

#Header .header-navi {
	position: relative;
	width: 100%;
	background-color: #4cbcf0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#Header .header-navi .navi-wrapper {
	position: relative;
	width: 1180px;
	margin: 0 auto;
	font-weight: bold;
	letter-spacing: 0.05em;
}

#Header .header-navi .global-navi li {
	display: table;
	float: left;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 20%;
	height: 50px;
	background-repeat: no-repeat;
	background-position: 20px 50%;
	-webkit-background-size: 26px 26px;
	background-size: 26px 26px;
	border-left: 1px solid #fff;
}

#Header .header-navi .global-navi li a {
	display: table-cell;
	padding-left: 20px;
	color: #000 !important;
	font-size: 20px;
	text-align: center;
	vertical-align: middle;
}

#Header .header-navi .global-navi li:last-child {
	border-right: 1px solid #fff;
}

#Header .header-navi .global-navi li:nth-child(1) {
	background-image: url(../images/common/gnavi-icon01.png);
}

#Header .header-navi .global-navi li:nth-child(2) {
	background-image: url(../images/common/gnavi-icon02.png);
}

#Header .header-navi .global-navi li:nth-child(3) {
	background-image: url(../images/common/gnavi-icon03.png);
}

#Header .header-navi .global-navi li:nth-child(4) {
	background-image: url(../images/common/gnavi-icon04.png);
}

#Header .header-navi .global-navi li:nth-child(5) {
	background-image: url(../images/common/gnavi-icon05.png);
}

#Header .header-navi .top-navi {
	position: absolute;
	top: -105px;
	right: 0;
	height: 38px;
	font-size: 14px;
}

#Header .header-navi .top-navi > ul {
	float: left;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-right: 100px;
}

#Header .header-navi .top-navi > ul li {
	margin-top: 10px;
	font-size: 15px;
}

#Header .header-navi .top-navi > ul li:first-child {
	margin-top: 0;
}

#Header .header-navi .top-navi > ul li a {
	padding-left: 13px;
	font-size: inherit;
	background: transparent url(../images/common/allow-right-blue-w6.png) 0 50%
		no-repeat;
	-webkit-background-size: 6px 10px;
	background-size: 6px 10px;
}

#Header .header-navi .top-navi .font-size {
	display: table;
	float: left;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 38px;
	margin: 0 10px 0 0;
	background-color: #e6f8ff;
	border-collapse: separate;
}

#Header .header-navi .top-navi .font-size dt,
#Header .header-navi .top-navi .font-size dd {
	display: table-cell;
	vertical-align: middle;
	border-color: #e6f8ff;
	border-style: solid;
}

#Header .header-navi .top-navi .font-size dt {
	padding: 10px 6px;
	font-size: 12px;
}

#Header .header-navi .top-navi .font-size dd {
	padding: 0 10px;
	font-size: inherit;
	background-color: #fff;
	border-width: 6px 6px 6px 0;
	cursor: pointer;
}

#Header .header-navi .top-navi .font-size dd:last-child {
	border-right-width: 10px;
}

#Header .header-navi .top-navi .font-size dd.active {
	color: #fff;
	background-color: #4cbcf0;
}

#Header .header-navi .top-navi .search-form {
	position: relative;
	float: left;
	width: 192px;
	margin-right: 10px;
}

#Header .header-navi .top-navi .search-form input[type="text"] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 38px;
	padding: 0 40px 0 5px;
	font-size: inherit;
	border: 1px solid #e1e1e1;
}

#Header .header-navi .top-navi .search-form .submit {
	position: absolute;
	top: 50%;
	right: 8px;
	width: 24px;
	height: 24px;
	overflow: hidden;
	text-indent: -9999em;
	background: transparent url(../images/common/icon-search-blue-w24.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	border: none;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

#Header .header-navi .top-navi .language-navi {
	position: relative;
	z-index: 9999;
	float: left;
	width: 126px;
	font-size: inherit;
}

#Header .header-navi .top-navi .language-navi .label {
	position: relative;
	height: 38px;
	padding-left: 10px;
	color: #fff;
	line-height: 38px;
	background-color: #4cbcf0;
	cursor: pointer;
}

#Header .header-navi .top-navi .language-navi .label:after {
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	width: 18px;
	height: 18px;
	background: transparent url(../images/common/arrow-bottom-white-bg-w18.png)
		50% 50% no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

#Header .header-navi .top-navi .language-navi > ul {
	display: none;
	font-weight: normal;
	background-color: #fff;
	border-color: #4cbcf0;
	border-style: solid;
	border-width: 0 1px;
}

#Header .header-navi .top-navi .language-navi > ul li {
	text-align: center;
	border-bottom: 1px solid #4cbcf0;
}

#Header .header-navi .top-navi .language-navi > ul li a {
	display: block;
	padding: 10px;
}

/* -----
 * Footer
----------------------------------------------------------------------------- */
#Footer {
	margin-top: 95px;
	font-size: 14px;
	line-height: 1.75;
	border-top: 1px solid #e1e1e1;
}

#Footer .footer-top {
	position: relative;
	width: 1180px;
	margin: 0 auto;
	padding: 30px 0 50px;
}

#Footer .footer-top .information {
	float: left;
	width: 300px;
}

#Footer .footer-top .information > h2 {
	width: 230px;
}

#Footer .footer-top .information address {
	margin-top: 1em;
}

#Footer .footer-top .information .contact {
	margin-top: 1em;
	font-size: 12px;
}

#Footer .footer-top .information .facebook {
	width: 30px;
	margin-top: 1em;
}

#Footer .footer-top .footer-navi {
	float: right;
	width: 880px;
	letter-spacing: 0.05em;
}

#Footer .footer-top .footer-navi .navi-set {
	display: inline-block;
	float: left;
	margin-right: 30px;
}

#Footer .footer-top .footer-navi .navi-set .label {
	margin-top: 0.5em;
}

#Footer .footer-top .footer-navi .navi-set .label:first-child {
	margin-top: 0;
}

#Footer .footer-top .footer-navi .navi-set .label a {
	padding-left: 25px;
	font-weight: bold;
	font-size: 16px;
	background: transparent url(../images/common/arrow-right-blue-bg-w16.png) 0
		50% no-repeat;
	-webkit-background-size: 16px 16px;
	background-size: 16px 16px;
}

#Footer .footer-top .footer-navi .navi-set .children {
	margin-top: 0.25em;
}

#Footer .footer-top .footer-navi .navi-set .children a {
	padding-left: 15px;
	background: transparent url(../images/common/allow-right-blue-w6.png) 0 50%
		no-repeat;
	-webkit-background-size: 6px 10px;
	background-size: 6px 10px;
}

#Footer .footer-top .footer-navi .navi-set .children p,
#Footer .footer-top .footer-navi .navi-set .children td {
	padding-left: 0.5em;
}

#Footer .footer-top .footer-navi .navi-set .children td:first-child {
	padding-right: 1em;
}

#Footer .footer-bottom {
	position: relative;
	padding: 20px 0;
	background-color: #a5ddf7;
}

#Footer .footer-bottom:after {
	position: absolute;
	top: -40px;
	left: 50%;
	display: block;
	width: 1180px;
	height: 110px;
	background: transparent url(../images/common/footer-mascot.png) 100% 0
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	content: "";
}

#Footer .footer-bottom ul {
	position: relative;
	z-index: 1;
	display: table;
	margin: 0 auto;
}

#Footer .footer-bottom ul li {
	display: table-cell;
	padding-right: 30px;
}

#Footer .footer-bottom ul li:last-child {
	padding-right: 0;
}

#Footer .footer-bottom ul li a {
	position: relative;
	display: block;
	padding: 15px 50px 15px 20px;
	font-weight: bold;
	background-color: #fff;
}

#Footer .footer-bottom ul li a:after {
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	background-repeat: no-repeat;
	background-position: 50%;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

#Footer .footer-bottom ul li a.pdf:after {
	width: 19px;
	height: 23px;
	background-image: url(../images/common/icon-pdf-blue-w19.png);
}

#Footer .footer-bottom ul li a.blank:after {
	width: 13px;
	height: 13px;
	background-image: url(../images/common/icon-blank-blue-w13.png);
}

#Footer .copyright {
	padding: 1em 0;
	font-size: 12px;
	text-align: center;
}

#scrollUp {
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 999 !important;
	display: block;
	width: 45px;
	height: 45px;
	background: transparent url(../images/common/icon-pagetop.png) 0 0 no-repeat;
	-webkit-background-size: 100% 100%;
	background-size: 100%;
}

/* -----
 * Sidebar
----------------------------------------------------------------------------- */
#Sidebar {
	float: left;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 270px;
	border: 2px solid #a8c5d3;
}

#Sidebar > h3 {
	margin: 0;
	color: #fff;
	font-size: 17.99px;
	font-size: 1.285rem;
	background-color: #00a0e9;
}

#Sidebar > h3 span,
#Sidebar > h3 a {
	position: relative;
	display: block;
	padding: 30px 10px 30px 20px;
	line-height: 1;
}

#Sidebar > h3 a {
	padding-left: 35px;
	color: inherit !important;
	text-decoration: none;
}

#Sidebar > h3 a:before {
	position: absolute;
	top: 50%;
	left: 20px;
	display: block;
	width: 6px;
	height: 10px;
	background: transparent url(../images/common/allow-right-white-w6.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

#Sidebar ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#Sidebar ul li {
	font-weight: bold;
	line-height: 1.5;
	border-top: 1px solid #a8c5d3;
}

#Sidebar ul li a {
	position: relative;
	display: block;
	padding: 17px 10px 17px 35px;
	text-decoration: none;
}

#Sidebar ul li a:before {
	position: absolute;
	top: 50%;
	left: 20px;
	display: block;
	width: 6px;
	height: 10px;
	background: transparent url(../images/common/allow-right-blue-w6.png) 50% 50%
		no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "";
}

#Sidebar ul li.current a {
	color: #015d86;
	background-color: #f7f5f3;
}

#Sidebar ul li.current a:before {
	background-image: url(../images/common/allow-right-darkblue-w6.png);
}

/* -----
 * RightColumn
----------------------------------------------------------------------------- */
#RightColumn {
	float: right;
	width: 876px;
}

/* -----
 * responsive
----------------------------------------------------------------------------- */
@media screen and (min-width: 944px) {
	/* PC */
	/* -----
   * link setting
  ----------------------------------------------------------------------------- */
	a:hover {
		color: #008ecf !important;
	}
	a img {
		-webkit-transition: opacity 0.1s ease-in;
		transition: opacity 0.1s ease-in;
	}
	a img:hover {
		opacity: 0.8;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
	}
	a.standard-button {
		color: #fff !important;
		-webkit-transition: opacity 0.1s ease-in;
		transition: opacity 0.1s ease-in;
	}
	a.standard-button:hover {
		opacity: 0.8;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
	}
	a.tel-link {
		color: inherit;
		text-decoration: none;
		cursor: default;
		pointer-events: none;
	}
	/* -----
   * リンク以外のhoverアクション
  ----------------------------------------------------------------------------- */
	.hover {
		-webkit-transition: opacity 0.1s ease-in;
		transition: opacity 0.1s ease-in;
	}
	.hover:hover {
		opacity: 0.8;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
	}
	/* -----
   * Wrapper
  ----------------------------------------------------------------------------- */
	#Wrapper.header-fixed {
		padding-top: 52px;
	}
	/* -----
   * Header
  ----------------------------------------------------------------------------- */
	#Header .header-navi.fixed {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
	}
	#Header .header-navi .global-navi li:hover {
		background-color: rgba(255, 255, 255, 0.2);
	}
}

@media screen and (min-width: 768px) and (max-width: 943px) {
	/* tablet */
	/* -----
   * link setting
  ----------------------------------------------------------------------------- */
	a.tel-link {
		color: inherit;
		text-decoration: none;
		cursor: default;
		pointer-events: none;
	}
}

@media screen and (max-width: 767px) {
	/* smart phone */
	body {
		width: 100%;
	}
	/* -----
   * link setting
  ----------------------------------------------------------------------------- */
	a.tel-link {
		text-decoration: underline;
		pointer-events: auto;
	}
	/* -----
   * tag setting
  ----------------------------------------------------------------------------- */
	br.sp {
		display: block;
	}
	br.pc {
		display: none;
	}
	/* -----
   * 汎用モジュール
  ----------------------------------------------------------------------------- */
	/* *** 表示制御 *** */
	.sp-show {
		display: block !important;
	}
	.sp-show.inline {
		display: inline !important;
	}
	.pc-show {
		display: none !important;
	}
	/* *** 下層コンテンツ用ラッパー *** */
	.contents-wrapper {
		width: auto !important;
		padding: 0 20px;
	}
	.contents-parent-section {
		margin-bottom: 3em;
	}
	.contents-child-section {
		margin-bottom: 1.5em;
	}
	/* *** 下層ページタイトル *** */
	#PageTitle {
		margin-bottom: 30px;
		padding: 20px 10px;
	}
	#PageTitle > h2 {
		font-size: 26px;
	}
	/* *** 見出しデザイン *** */
	.headline-1 {
		font-size: 24px;
	}
	.headline-1:after {
		width: 60px;
	}
	.headline-2 {
		font-size: 18px;
	}
	.headline-3 {
		font-size: 16px;
	}
	.headline-4 {
		font-size: 15px;
	}
	/* *** 横スクロールコンテンツ *** */
	.sp-overflow-x {
		padding-bottom: 15px;
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
	.sp-overflow-x::-webkit-scrollbar {
		height: 10px;
	}
	.sp-overflow-x::-webkit-scrollbar-track {
		background-color: #e1e1e1;
		-webkit-border-radius: 5px;
		border-radius: 5px;
	}
	.sp-overflow-x::-webkit-scrollbar-thumb {
		background-color: #bbb;
		-webkit-border-radius: 5px;
		border-radius: 5px;
	}
	/* *** ボタン *** */
	.standard-button {
		width: auto;
		max-width: 300px;
		height: auto;
		padding: 0.75em 1em;
		line-height: 1.5;
	}
	/* -----
   * テーブル基本設定
  ----------------------------------------------------------------------------- */
	.standard-table th,
	.standard-table td {
		padding: 10px;
	}
	.standard-table.standard-table-size th {
		width: 1%;
		white-space: nowrap;
	}
	/* -----
   * フォーム基本設定
  ----------------------------------------------------------------------------- */
	.standard-form {
		font-size: inherit;
	}
	.standard-form .select-fields label {
		font-size: 16px;
	}
	/* -----
   * Wrapper
  ----------------------------------------------------------------------------- */
	#Wrapper {
		min-width: initial;
		min-width: auto;
		padding-top: 61px;
	}
	#Wrapper.fixed {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		overflow: hidden;
	}
	/* -----
   * Header
  ----------------------------------------------------------------------------- */
	#Header {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		width: 100%;
		background-image: none;
	}
	#Header .header-top {
		width: auto;
		height: 60px;
		border-bottom: 1px solid #e1e1e1;
	}
	#Header .header-top > h1 {
		width: 180px;
		padding: 12px 0 0 10px;
	}
	#Header .header-top:before {
		display: none;
	}
	#Header .header-top .header-navi-toggle {
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
	}
	#Header .header-navi {
		position: fixed;
		top: 61px;
		right: 0;
		bottom: 0;
		left: 0;
		display: none;
		width: 100%;
		overflow: auto;
		background-color: #d3f3ff;
		border-top: none;
		border-bottom: none;
	}
	#Header .header-navi.show {
		display: block;
	}
	#Header .header-navi .global-navi li {
		display: block;
		float: none;
		width: auto;
		height: auto;
		background-image: none !important;
		border-right: none !important;
		border-left: none !important;
	}
	#Header .header-navi .global-navi li a {
		display: block;
		color: inherit !important;
	}
	#Header .header-navi .global-navi li:last-child {
		border-right: 1px solid #e1e1e1;
	}
	#Header .header-navi .top-navi {
		position: static;
		height: auto;
	}
	#Header .header-navi .top-navi > ul {
		display: block;
		float: none;
		height: auto;
		margin-right: 0;
	}
	#Header .header-navi .top-navi > ul li {
		display: block;
		margin-top: 0;
		padding-right: 0;
	}
	#Header .header-navi .top-navi > ul li a {
		padding-left: 0;
		background-image: none;
	}
	#Header .header-navi .top-navi .font-size {
		display: none;
	}
	#Header .header-navi .top-navi .search-form {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 15px;
		border-bottom: 1px solid #a5ddf7;
	}
	#Header .header-navi .top-navi .search-form input[type="text"] {
		height: 40px;
		padding: 0 40px 0 5px;
		font-size: 16px;
	}
	#Header .header-navi .top-navi .search-form .submit {
		right: 25px;
		width: 20px;
		height: 20px;
	}
	#Header .header-navi .top-navi .language-navi {
		float: none;
		width: auto;
		padding: 10px 15px;
		border-bottom: 1px solid #a5ddf7;
	}
	#Header .header-navi .top-navi .language-navi .label {
		position: relative;
		height: 40px;
		line-height: 40px;
	}
	#Header .header-navi .top-navi .language-navi > ul li {
		text-align: left;
	}
	#Header .header-navi .navi-wrapper {
		width: auto;
	}
	#Header .header-navi .navi-wrapper .standard-sp li {
		border-bottom: 1px solid #a5ddf7;
	}
	#Header .header-navi .navi-wrapper .standard-sp li a {
		position: relative;
		display: block;
		padding: 20px 15px;
		font-size: 16px;
		text-align: left;
	}
	#Header .header-navi .navi-wrapper .standard-sp li a:after {
		position: absolute;
		top: 50%;
		right: 15px;
		display: block;
		width: 12px;
		height: 20px;
		background: transparent url(../images/common/allow-right-blue-w12.png) 50%
			50% no-repeat;
		-webkit-background-size: contain;
		background-size: contain;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		content: "";
	}
	/* -----
   * Footer
  ----------------------------------------------------------------------------- */
	#Footer {
		margin-top: 60px;
		font-size: inherit;
	}
	#Footer .footer-top {
		width: auto;
		padding: 0;
	}
	#Footer .footer-top .information {
		position: relative;
		float: none;
		width: auto;
		padding: 20px 15px;
		font-size: 12px;
	}
	#Footer .footer-top .information > h2 {
		width: 180px;
	}
	#Footer .footer-top .information .facebook {
		position: absolute;
		top: 22px;
		right: 15px;
		margin: 0;
	}
	#Footer .footer-top .footer-navi {
		float: none;
		width: auto;
	}
	#Footer .footer-top .footer-navi .navi-set {
		display: block;
		float: none;
		margin: 0;
	}
	#Footer .footer-top .footer-navi .navi-set .label {
		margin: 0;
		border-top: 1px solid #e1e1e1;
	}
	#Footer .footer-top .footer-navi .navi-set .label a {
		display: block;
		padding: 20px 15px;
		padding-left: 45px;
		background-position: 15px 50%;
	}
	#Footer .footer-bottom {
		padding: 20px 15px;
		font-size: 16px;
	}
	#Footer .footer-bottom:after {
		position: static;
		width: 60px;
		height: 97px;
		margin: 26px auto 0;
		-webkit-transform: none;
		transform: none;
	}
	#Footer .footer-bottom ul {
		display: block;
	}
	#Footer .footer-bottom ul li {
		display: block;
		margin-bottom: 2px;
		padding: 0;
	}
	#Footer .footer-bottom ul li a {
		display: block;
		padding: 15px 20px;
	}
	#Footer .footer-bottom ul li a:after {
		position: static;
		display: inline-block;
		margin-left: 0.5em;
		vertical-align: middle;
		-webkit-transform: none;
		transform: none;
	}
	#Footer .copyright {
		font-size: 11px;
	}
	#scrollUp {
		display: none !important;
	}
	/* -----
   * Sidebar
  ----------------------------------------------------------------------------- */
	#Sidebar {
		float: none;
		width: auto;
		margin-top: 50px;
	}
	#Sidebar > h3 {
		font-size: 18px;
	}
	/* -----
   * RightColumn
  ----------------------------------------------------------------------------- */
	#RightColumn {
		float: none;
		width: auto;
	}
}

/* -----
 * 新着情報　画像レイアウト
----------------------------------------------------------------------------- */
#NewsPost .images {
	display: inline-block;
	width: 240px;
}
