@charset "UTF-8";

/* ---------------------------------------------------------
	CSS Document Common
--------------------------------------------------------- */

html, body {
	margin: 0;
	padding: 0;
	background: #fff;
	-webkit-text-size-adjust: none;
	-ms-text-size-adjust: none;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
	line-height: 1.7;
	word-wrap: break-word;
	word-break: break-all;
	color: #222;
}

h1, h2, h3, h4, h5, div, p, ul, ol, li, dl, dt, dd, a, span, img, figure {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	list-style: none;
}

input, textarea {
	outline: 0;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	color: #222;
}

input[type='submit'] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}

::-webkit-input-placeholder {
	color: #b7b7b7;
}

::-moz-placeholder {
	opacity: 1;
	color: #b7b7b7;
}

:-ms-input-placeholder {
	color: #b7b7b7;
}

.find {
	cursor: pointer;
}

.pc {
	display: none;
}

.right {
	text-align: right;
}

address, em {
	font-style: normal;
}

img {
	max-width: 100%;
	height: auto;
	border: 0;
	vertical-align: top;
}

a {
	outline: none;
	color: #057dcd;
}

a.tel {
	text-decoration: none;
	color: #222;
}

#container {
	width: 100%;
	overflow: hidden;
}

/* ---------------------------------------------------------
	CSS Document header
--------------------------------------------------------- */

#header {
	padding-top: 60px;
}

#header .container {
	width: 100%;
	height: 60px;
	background: #fff;
	line-height: 60px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 4;
}

#header h1 {
	padding-left: 10px;
	text-align: left;
	overflow: hidden;
	font-size: 0;
}

#header h1 img {
	vertical-align: middle;
	width: 160px;
}

#header .h_swicth {
	width: 60px;
	height: 60px;
	overflow: hidden;
	background: #3cc2e8 url(../images/h_swicth.png) no-repeat center 15px;
	background: #057dcd url(../images/h_swicth.png) no-repeat center 15px;
	background-size: 22px auto;
	padding-top: 14px;
	text-align: center;
	font-size: 11px;
	line-height: 60px;
	color: #fff;
	position: absolute;
	top: 0;
	right: 0;
}

#header .h_swicth.active {
	background-position: center -34px;
}

#header .h_tel {
	font-size: 0;
	position: absolute;
	top: -60px;
	right: 70px;
}

#header .h_tel .tel {
	display: inline-block;
	vertical-align: middle;
	width: 60px;
	height: 60px;
	background: url(../images/h_tel.png) no-repeat center / 35px auto;
}

#header .h_tel .line {
	display: inline-block;
	vertical-align: middle;
	width: 50px;
	height: 60px;
	background: url(../images/h_line.png) no-repeat center / 40px auto;
}

#header ul {
	display: none;
	width: 100%;
	max-height: calc(100vh - 80px);
	overflow: auto;
	background: rgba(60, 194, 232,0.95);
	background: rgba(67,176,241,0.95);
}

#header li {
	border-bottom: solid 1px rgba(255,255,255,0.4);
}

#header li a {
	display: block;
	height: 50px;
	padding-left: 20px;
	text-align: left;
	text-decoration: none;
	font-size: 15px;
	line-height: 50px;
	color: #fff;
	position: relative;
}

#header li a:after {
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -5px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 20px;
}

#header li.this a {
	color: #ffde00;
}

#header li.this a:after {
	border-top: solid 2px #ffde00;
	border-right: solid 2px #ffde00;
}

/* ---------------------------------------------------------
	CSS Document wrapper
--------------------------------------------------------- */

#wrapper {
	overflow: hidden;
	background: url(../images/h_bg.png) no-repeat top / auto 80px;
}

/* ---------------------------------------------------------
	CSS Document footer
--------------------------------------------------------- */

#footer {
	margin-top: 50px;
	background: #1e3d58;
	color: #e8eef1;
}

#footer ul {
	height: 50px;
	background: #057dcd;
	font-size: 0;
	line-height: 50px;
}

#footer ul li {
	display: inline-block;
	vertical-align: top;
	margin: 0 10px;
	font-size: 12px;
	position: relative;
}

#footer ul li:not(:last-of-type):after {
	content: '';
	width: 1px;
	height: 10px;
	background: #e8eef1;
	position: absolute;
	top: 21px;
	right: -10px;
}

#footer a {
	text-decoration: none;
	color: #e8eef1;
}

#footer .container {
	padding: 20px;
}

#footer .f_left {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 20px;
}

#footer .f_left p {
	display: inline-block;
	vertical-align: middle;
	width: 60px;
	margin-right: 5px;
}

#footer .f_left dl {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	font-size: 13px;
	line-height: 1.6;
}

@media only screen and (max-width: 350px) {
	#footer .f_left dl {
		max-width: calc(100% - 70px);
	}
}

#footer .f_right {
	display: inline-block;
	vertical-align: top;
	padding: 13px;
	background: #00b900;
	text-align: left;
	font-size: 11px;
	line-height: 1.2;
	color: #fff;
}

#footer .f_right p {
	display: inline-block;
	vertical-align: middle;
	width: 74px;
	margin-right: 10px;
	padding: 5px;
	background: #fff;
}

#footer .f_right dl {
	display: inline-block;
	vertical-align: middle;
}

#footer .f_right dt {
	margin-bottom: 5px;
	font-size: 15px;
	line-height: 1.4;
}

#footer .f_right dt img {
	width: 75px;
}

#footer .f_right dd a {
	display: block;
}

#footer address {
	border-top: solid 1px #466077;
	font-size: 12px;
	line-height: 35px;
	color: rgba(232, 238, 241, 0.4);
}

/* ---------------------------------------------------------
	CSS Document footer > pagetop
--------------------------------------------------------- */

#pagetop {
	display: none;
	width: 38px;
	height: 38px;
	overflow: hidden;
	-webkit-border-radius: 38px;
	border-radius: 38px;
	background: rgba(5, 125, 205, 0.9);
	font-size: 0;
	position: fixed;
	bottom: 15px;
	right: 10px;
	z-index: 9;
	cursor: pointer;
}

#pagetop span {
	width: 14px;
	height: 14px;
	border-top: solid 3px #fff;
	border-left: solid 3px #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 14px;
	left: 12px;
}
