/************************************************************************************
RESET
*************************************************************************************/
html, body, address, blockquote, div, dl, form, h1, h2, h3, h4, h5, h6, ol, p, pre, table, ul,
dd, dt, li, tbody, td, tfoot, th, thead, tr, button, del, ins, map, object,
a, abbr, acronym, b, bdo, big, br, cite, code, dfn, em, i, img, kbd, q, samp, small, span,
strong, sub, sup, tt, var, legend, fieldset {
	margin: 0;
	padding: 0;
}

img, fieldset {
	border: 0;
}

/* set image max width to 100% */
img {
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}

/* set html5 elements to block */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { 
    display: block;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}


/************************************************************************************
CLEARFIX
*************************************************************************************/
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clearfix { display: inline-block; }
.clearfix { display: block; zoom: 1; }


/************************************************************************************
GENERAL STYLING
*************************************************************************************/
html, body {
	font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Helvetica Neue","Helvetica","Arial",sans-serif;
	font-size:14px;
	line-height:24px;
	text-align:left;
}

a {
	color: #000;
	text-decoration: none;
	outline: none;
}
a:hover {
	text-decoration: underline;
}
a:hover img.link {
	filter: alpha(opacity=80);
	-webkit-opacity:0.8;
	-moz-opacity:0.8;
	-o-opacity:0.8;
	-ms-opacity:0.8;
	opacity:0.8;
}

p a, p a:hover {
	color:#f58eba;
}
p.text_r {
	text-align:right;
}


/************************************************************************************
wrapper
*************************************************************************************/
.wrapper {
	width:980px;
	margin:0 auto;
	overflow:hidden;
}


/************************************************************************************
background
*************************************************************************************/
.back_band {
	background-color:#023f73;
	width:100%;
	margin:0;
}


/************************************************************************************
h
*************************************************************************************/
h1.logo {
	margin:10px 0;
	padding:0;
	text-align:left;
}

h2.title {
	margin:0;
	padding:20px 0;
	text-align:center;
	color:#fff;
	font-size:22px;
}

h3.title {
	margin:0;
	padding:20px 0;
	text-align:center;
	color:#fff;
	font-size:22px;
}

h6.title {
	margin:0;
	padding:0 0 10px 0;
	text-align:left;
	color:#fff;
	font-size:18px;
}


/************************************************************************************
header
*************************************************************************************/
#header_left {
	float:left;
}
#header_right {
	float:right;
	margin:10px 0;
}

#tel_left {
	float:left;
	width:40px;
	margin-right:20px;
}
#tel_right {
	margin-left:60px;
	font-size:28px;
	font-weight:bold;
	padding-top:15px;
}


/************************************************************************************
note
*************************************************************************************/
#note_left {
	float:left;
	width:460px;
	margin-right:60px;
}
#note_right {
	margin-left:520px;
}


/************************************************************************************
inquiry
*************************************************************************************/
#inquiry_left {
	float:left;
	width:460px;
	margin-right:60px;
}
#inquiry_right {
	margin-left:520px;
}


/************************************************************************************
navi
*************************************************************************************/
/* 矢印つきリスト2 */
ul.list li a {
	position: relative;
	display: block;
	padding: 15px 25px 15px 10px;
	border-bottom: 1px solid #ccc;
	color:#fff;
}
ul.list li a::after {
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


/************************************************************************************
hr
*************************************************************************************/
.hr01 {
	color:#f58eba;
	display:flex;
	align-items:center;
	font-size:18px;
	font-weight:bold;
}
.hr01:before, .hr01:after {
	content: "";
	flex-grow:1;
	height:3px;
	background:#f58eba;
	display:block;
}
.hr01:before {
	margin-right:20px;
}
.hr01:after {
	margin-left:20px;
}


/************************************************************************************
footer
*************************************************************************************/
footer {
	clear:both;
	width:100%;
	padding:20px 0;
	background-color:#023f73;
	color:#fff;
}
footer a {
	color:#fff;
}

table.footer_table {
	border:0;
	border-collapse:collapse;
}
table.footer_table th {
	padding:0 10px 0 0;
	text-align:left;
}
table.footer_table td {
	padding:0 10px 0 0;
}
table.footer_table td:last-child {
	padding:0;
}

.notel {
	pointer-events:none;
	color:#fff;
}

#copyright {
	font-size:10px;
	color:#fff;
	text-align:center;
	font-weight:bold;
	padding:20px 0 0 0;
}


/************************************************************************************
effect
*************************************************************************************/
.shine span.mask {
	position: relative;/*キラッの基点となる位置を定義*/
	display: block;
	line-height: 0;/*行の高さを0にする*/
	overflow: hidden;/*拡大してはみ出る要素を隠す*/
}

.shine span.mask::before {
	position: absolute;
	content:"";
	width: 50%;/*キラッの横幅*/
	height: 100%;/*キラッの縦幅*/
	top: 0;/*.shine span.maskのトップ0を基点*/
	left: -75%;/*画面の見えていない左から右へ移動するスタート地点*/
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	transform: skewX(-25deg);/*背景白透過を斜めに*/
}

.shine span.mask:hover::before {/*hoverした時の変化*/
	animation: shine 0.7s;/*アニメーションの名前と速度を定義*/
}

@keyframes shine {
	100% {
		left: 125%;/*画面の見えていない左から右へ移動する終了地点*/
	}
}


/************************************************************************************
google map
*************************************************************************************/
.google-maps {
	position: relative;
	padding-bottom: 300px; /*高さは250pxで固定*/ 
	height: 0;
	overflow: hidden;
}
.google-maps iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}


/************************************************************************************
padding
*************************************************************************************/
.pd10 {
	padding:10px;
}
.pd20 {
	padding:20px;
}
.pd20_service_flow {
	padding:20px;
}

.pd_tb10 {
	padding:10px 0;
}
.pd_tb20 {
	padding:20px 0;
}
.pd_tb30 {
	padding:30px 0;
}


/************************************************************************************
height
*************************************************************************************/
.height10 {
	height:10px;
}
.height20 {
	height:20px;
}
.height30 {
	height:30px;
}
.height40 {
	height:40px;
}
.height50 {
	height:50px;
}