@charset "utf-8";

/* notoSansfont
---------------------------------------------------- */
@font-face {
  font-family: "notoSans";
  font-style: normal;
  font-weight: 300;
  src: url("/fonts/noto-jp-light.woff") format("woff");
}
@font-face {
  font-family: "notoSans";
  font-style: normal;
  font-weight: 400;
  src: url("/fonts/noto-jp-regular.woff") format("woff");
}
@font-face {
  font-family: "notoSans";
  font-style: normal;
  font-weight: 700;
  src: url("/fonts/noto-jp-bold.woff") format("woff");
}

/* iconfont
---------------------------------------------------- */
@font-face {
	font-family: 'iconfont';
	src:  url('/fonts/iconfont.eot?2dyapf');
	src:  url('/fonts/iconfont.eot?2dyapf#iefix') format('embedded-opentype'),
	url('/fonts/iconfont.ttf?2dyapf') format('truetype'),
	url('/fonts/iconfont.woff?2dyapf') format('woff'),
	url('/fonts/iconfont.svg?2dyapf#iconfont') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="fa-"], [class*=" fa-"] {
/* use !important to prevent issues with browser extensions that change fonts */
	font-family: 'iconfont' !important;
	display: inline-block;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	text-rendering: auto;
	line-height: 1;

/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.fa-3x {font-size: 3em; }
.fa-phone:before {content: "\f095";}
.fa-wrench:before {content: "\f0ad";}
.fa-table:before {content: "\f0ce";}
.fa-external-link-alt:before {content: "\f35d";}
.fa-map-marker-alt:before {content: "\f3c5";}
.fa-clipboard-list:before {content: "\f46d";}
.fa-building:before {content: "\f1ad";}

/* common
---------------------------------------------------- */
html{
    font-size: 62.5%;
    background: #fff;
}
body {
	margin: 0;
	padding: 0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-weight: 500;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #333;
	background: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}
a img {border: none;}
a:link,
a:visited{
	color:#333;
	text-decoration:none;
}
a:active,
a:hover{
	color:#333;
	text-decoration:none;
}
a:hover,
a:hover img {
	opacity:0.6;
	filter:alpha(opacity=60);
	-ms-filter:"alpha( opacity=60 )";
}

/* ページの枠組み
---------------------------------------------------- */
header,
nav.gnav,
nav.gnav-pc,
section,
div.mainV,
div.hdg_01_01,
footer{
	margin:0 auto;
	padding:0;
	width:100%;
}

main{
	margin-bottom: 75px;
}
header .inner,
nav.gnav .inner,
nav.gnav-pc .inner,
main .inner,
div.hdg_01_01 .inner,
section .localNav01,
footer .inner{
	max-width:980px;
	margin: 0 auto;
	padding: 0 20px;
}

header .inner,
.localNav01 {padding: 0;}

.Box01-01 img,
.imgBox01 img,
.imgBox02 img,
p picture img{width: 100%;}

/*---------------------------------------------------- 
 SP View 
---------------------------------------------------- */

/* header
---------------------------------------------------- */
header .inner{
	position:relative;
	min-height:60px;
	border-bottom: 5px solid #00479d;
}
header .logo{
	position: absolute;
	top: 10px;
	left: 20px;
}
header .logo img{
	width: 42px;
	height: 40px;
}
header .name{
	position: absolute;
	top: 15px;
	left: 70px;
	line-height: 1;
	letter-spacing: 0.1em;
	font-size: 1.8rem;
	font-weight: bold;
}
header .name span{
	font-size: 0.9rem;
	font-weight: 500;
}

/* mainV
---------------------------------------------------- */
div.mainV .inner{
	position: relative;
	padding-top: 100%;
	margin-bottom: 40px;
	background: url(/img/bg_main_v_sp.jpg) no-repeat;
	background-size: 100%;
}
div.mainV h1{
	position: absolute;
	top: 15.333333333333333%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 335px;
	font-size: 3.6rem;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	color: #fff;
	text-shadow: 0px 1px 7px rgba(0,0,0,0.72);
}
div.mainV h1 span{
	display: block;
	padding-top: 30px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
}

/* footer
---------------------------------------------------- */
footer {
    position: relative;
    margin: 0 auto;
	height: 100%;
	color: #fff;
	background-color: #535353;
}
nav.fnav{
	display: flex;
	padding: 55px 0 45px;
}
nav.fnav ul.fnav01 li a,
nav.fnav ul.fnav02 li a{
	display: block;
	padding: 3px 0 3px 0;
	font-size: 1.2rem;
	color: #fff;
}
nav.fnav ul.fnav01 li.active a{text-decoration: underline;}
nav.fnav ul.fnav01 li.active .fnav02 li a{text-decoration: none!important;}
nav.fnav ul.fnav01{width: 66.666666666666667%;}
nav.fnav ul.fnav01.last{width: 33.333333333333333%;}
nav.fnav ul.fnav01 li{font-weight: bold;}
nav.fnav ul.fnav02 li{font-weight: 500;}
nav.fnav ul.fnav02 li a{
	padding-left: 25px;
	color: #fff;
}
.fBox01{
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	padding: 9px 0px 12px;
	border-top: 1px solid #fff;
}
.fBox01 h4,
.fBox01 p{
	max-width: 980px;
	margin: 0 auto;
	padding: 0 20px;
	font-size: 0.9rem;
}
.fBox01 h4{font-weight: bold;}
.fBox01 p{line-height: 1.2;}
.fBox01 p a{color: #fff;}
p.copy{
	margin: 0 auto;
    padding: 0 0 10px 0;
	text-align: center;
	font-size: 0.6rem;
    line-height: 1;
}

/* module
---------------------------------------------------- */
/*-- hdg_01_01 -- */
.hdg_01_01 h1{
	margin: 25px 0;
	padding: 2px 5px 0 7px;
	border-left: 6px solid #00479d;
	background-color: #e4ecf6;
	font-size: 2.2rem;
	font-weight: bold;
}
.hdg_01_01 h1 span{
		font-family: "notoSans";
    font-size: 1.6rem;
	font-weight: 400;
}
.hdg_01_01 h1.hdg_01_test{font-size: 1.9rem;}

/*-- hdg_02_01 -- */
h2.hdg_02_01{
	margin-bottom: 18px;
	padding-left: 12px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.2;
	background:-webkit-linear-gradient(transparent 56%, #e4ecf6 0%);
	background:-o-linear-gradient(transparent 56%, #e4ecf6 0%);
	background:linear-gradient(transparent 56%, #e4ecf6 0%);
}
h2.hdg_02_01 span{
	font-family: "notoSans";
    font-size: 1.2rem;
	font-weight: 400;
}

/*-- hdg_03_01 -- */
h3.hdg_03_01{
	margin-bottom: 5px;
	padding-left: 6px;
	font-weight: bold;
	border-left: 6px solid #00479d;
	line-height: 1;
}
h3.hdg_03_01 span{
	font-family: "notoSans";
	font-size: 1.2rem;
	font-weight: 400;
}

/*-- hdg_03_404 -- */
h3.hdg_03_404{
	font-size: 1.4rem;
	line-height: 1.4;
}
h3.hdg_03_404 .url_specified{font-weight: bold;}

/*-- h4 -- */
h4{margin-bottom: 0.5em;}

/*-- listStyle01 --*/
ul.listStyle01 {margin-bottom: 1em;}
ul.listStyle01 li{
	margin-bottom: 5px;
	padding-left: 12px;
	background: url(/img/icon_liststyle01.png) left 0.6em no-repeat;
	background-size: 6px 3px;
}
ul.listStyle01 li:last-child{ margin-bottom: 0;}

/*-- listStyle02 --*/
ul.listStyle02 {margin-bottom: 1em;}
ul.listStyle02 li{
	position: relative;
	margin-bottom: 5px;
	padding-left: 14px;
}
ul.listStyle02 li span{
	position: absolute;
	top: 0;
	left: 0;
}
ul.listStyle02 li:last-child{ margin-bottom: 0;}

/*-- listStyle03 --*/
ul.listStyle03 {margin-bottom: 1em;}
ul.listStyle03 li{
	position: relative;
	margin-bottom: 5px;
	padding-left: 14px;
	font-size: 1.1rem;
}
ul.listStyle03 li span{
	position: absolute;
	top: 0;
	left: 0;
}
ul.listStyle02 li:last-child{ margin-bottom: 0;}

/*-- linkList01 -- */
ul.linkList01{
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	margin-bottom: 30px;
}
ul.linkList01 li{
	padding-top: 15px;
	padding-bottom: 15px;
	background-color: #e4ecf6;
}
ul.linkList01 li a{
	display: block;
	margin: 0px 10.666666666666667%;
	padding: 8px 0;
	text-align: center;
	border: 1px solid #9b9b9b;
	border-radius: 7px;
	background-color: #fff;
}

/*-- ページtopへ戻る-- */
p.top{
	position: relative;
	margin-bottom: 0;
	text-align: center;
}
p.top a{
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	z-index: 9999;
}

/*-- p -- */
p {margin:0 0 1em 0;}
p.read{margin-bottom: 40px;}
p picture span{
	display: block;
	text-align: center;
	font-size: 1rem;
}

/*-- strong-- */
strong{font-weight: bold;}

/*-- word-wrap-- */
.WW {
	word-wrap: break-word;
	overflow-wrap: break-word;
}

/*-- italic-- */
.italic{font-style:italic;}

/*-- align-- */
.Left{text-align: left!important;}
.Center{text-align: center!important;}

/*-- nav.gnav-- */
nav.gnav p.dropmenu{
	*zoom: 1;
	position: absolute;
    top: 0px;
    right: 0;
	margin-bottom: 0;
    padding-top: 11px;
    width: 56px;
    height: 49px;
    text-align: center;
}
nav.gnav p.dropmenu a{
	font-family: "notoSans";
	font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: 0.1em;
	color: #333;
}
nav.gnav div.nav_inner{
	position:absolute;
	top: 60px;
	left: 0px;
	z-index: 9999;
	margin: 0;
	padding: 0;
	width: 100%;
	background-color:#00479d;
}
nav.gnav nav.nav_inner02,
nav.gnav ul.close{
	position:relative;
	width: 100%;
	background-color:#00479d;
}
nav.gnav nav.nav_inner02 ul{
	margin: 45px 20px 0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
nav.gnav nav.nav_inner02 ul li a{
	position: relative;
	display: block;
    margin: 0 25px 0 0;
	padding:  8px 10px;
	line-height: 1.2;
    font-size: 1.8rem;
	color: #fff;
	font-weight:bold;
	text-decoration:none;
    border-bottom: 1px solid #fff;
}
nav.gnav nav.nav_inner02 ul li.last a{border-bottom: 0px solid #fff;}
nav.gnav nav.nav_inner02 ul li a span{
	font-family: "notoSans";
	font-size: 1.2rem;
	font-weight: 400;
}
nav.gnav nav.nav_inner02 ul li a i{
	position: absolute;
	top: 21px;
	right: 0px;
	font-size: 1.4rem;
	font-weight: 500;
}
nav.gnav nav.nav_inner02 ul li ul{
	margin: 0;
	border-top: 0px solid #fff;
	border-bottom: 0px solid #fff;
}
nav.gnav nav.nav_inner02 ul li ul li a{
	padding-left: 30px;
	font-size: 1.4rem;
}
nav.gnav nav.nav_inner02 ul li ul li a i{top: 15px;}

nav.gnav ul.close {
	margin:0;
	z-index: 9999;
}
nav.gnav ul.close li{min-height: 43px;}
nav.gnav ul.close li a{
	display:block;
	padding: 15px 45px 15px 15px;
	text-align:right;
	color: #fff;
	font-family: "notoSans";
    font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 0.1em;
    line-height: 1.2;
	text-decoration:none;
}
nav.gnav nav.nav_inner02 li a:hover,
nav.gnav ul.close li a:hover,
nav.gnav nav.nav_inner02 li a:active,
nav.gnav ul.close li a:active,
nav.gnav nav.nav_inner02 li.on a{
	color: #00479d;
	background-color:#fff;
}
nav.gnav #normal div.nav_inner,
nav.gnav #normal div ul.close li:hover{
	display: none;
}
nav.gnav #normal .dropmenu:hover,
nav.gnav #normal:hover div.nav_inner{
	display: block;
}
nav.gnav nav.nav_inner02 li.active a{
	color: #00479d;
	background-color: #fff;
}
nav.gnav nav.nav_inner02 li.active ul li a{
	color: #fff;
	background-color:#00479d;
}

/*-- localNav01-- */
nav.localNav01 ul{
	display: flex;
	margin-bottom: 75px;
}
nav.localNav01 ul li{
	width: 33.3333333333%;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
}
nav.localNav01 ul li:last-child{width: 33.3333333334%;}
nav.localNav01 ul li a{display: block;}
nav.localNav01 ul li i{
	display: block;
	margin-bottom: 10px;
	color: #00479d;
}
nav.localNav01 ul li span{
	display: block;
	margin-top: 3px;
	font-family: "notoSans";
	font-size: 1.2rem;
	font-weight: 400;
}

/*-- contentBox02-- */
div.contentBox02{
	margin: 0 calc(50% - 50vw);
	padding: 25px 0;
	width: 100vw;
	margin-bottom: 30px;
	background-color: #dcdcdc;
}
div.contentBox02-01{
	margin: 0 20px;
	background-color: #fff;

}
div.contentBox02-01 h2{
	position: relative;
	padding: 20px 5% 20px 22.835820895522388% ;
	font-weight: bold;
}
div.contentBox02-01 h2 i{
	display: block;
	position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	margin-left:  6.567164179104478%;
	font-size: 36px;
}
div.contentBox02-01 .listStyle02{
	margin: 0 10px 1em;;
}
div.contentBox02-01 p{
	margin: 0 10px 0;
	padding-bottom: 12px;
	text-align: right;
}

/*-- contentBox-year -- */
section.contentBox-year_01{position: relative;}
section.contentBox-year_01::before {
	content: "";
	position: absolute;
	top: 0px;
	left: 10px;
	height: 100%;
	width: 2px;
	background-color: #e4ecf6;
}
.contentBox-year_02{
	position: relative;
	margin-bottom: 15px;
}
.contentBox-year_02 h3{
	position: relative;
	margin-bottom: 5px;
	margin-left: 20px;
	margin-right: 5.970149253731343%;
	font-weight: bold;
}
.contentBox-year_02 h3::before {
	content: "";
	position: absolute;
	top: 4px;
	left: -15px;
	height: 12px;
	width: 12px;
	background: url(/img/icon_contentbox-year.png) center center no-repeat;
	background-size: 12px 12px;
}

.contentBox-year_02 div,
.contentBox-year_02 p{
	margin-left: 33px;
	margin-right: 8.358208955223881%;
	margin-bottom: 0;
}
.contentBox-year_02 div p{margin-left: 0;}

/*-- contactBox01-- */
div.contactBox01{background-color: #dcdcdc;}
div.contactBox01 h3{
	padding: 10px 0 10px 0;
	text-align: center;
	font-size: 1.2rem;
}
div.contactBox01 ul{
	margin-left: 5.333333333333333%;
	margin-right: 5.333333333333333%;
	padding-bottom: 35px;
}
div.contactBox01 ul li{
	position: relative;
	padding-bottom: 10px;
}
div.contactBox01 ul li:last-child{padding-bottom: 0;}
div.contactBox01 ul li a{
	display: block;
	padding: 7px 0;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	background-color: #fff;
}
div.contactBox01 ul li.tel a{
	letter-spacing: 0.05em;
	font-family: "notoSans";
	font-weight: 700;
}
div.contactBox01 ul li a i{
	display: block;
	position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	margin-left:  15.522388059701493%;
	font-size: 25px;
}
div.contactBox01 ul li.tel a i{
    top: 45%;
    left: 0%;
    transform: translateY(-65%);
    -webkit-transform: translateY(-65%);
    -ms-transform: translateY(-65%);
}

/*-- imgBox01 -- */
ul.imgBox01{
	display: flex;
	justify-content: space-between;
	margin-bottom: 1em;
	width: 100%;
}
ul.imgBox01 li{flex-grow: 2;margin-right: 10px;}
ul.imgBox01 li:last-child{margin-right: 0;}
ul.imgBox01 li span{
	display: block;
	text-align: center;
	font-size: 1rem;
}
ul.imgBox01 li img{
flex-shrink: 0;
}

/*-- imgBox02 -- */
ul.imgBox02{
	display: flex;
	justify-content: space-between;
	margin-bottom: 1em;
	width: 100%;
}
ul.imgBox02 li{
	flex-grow: 2;
	margin-right: 10px;
}
ul.imgBox02 li:last-child{
	margin-right: 0;
}
ul.imgBox02 li img{
flex-shrink: 0;
}
/*-- layoutTable01 -- */
.layoutTable01{
    position: relative;
    padding: 0 0 15px 0;
}
.layoutTable01 table{
	padding:0;
	margin:0;
	width:100%;
	border: 1px solid #fff;
	border-right: 0px solid #fff;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}
.layoutTable01 table thead th,
.layoutTable01 table tbody th,
.layoutTable01 table tbody td {
	padding:6px 8px;
	border-bottom: 1px solid #fff;
	vertical-align:middle;
    text-align: left;
    background-color: #f6f7f8;
}
.layoutTable01 table thead th,
.layoutTable01 table tbody th{font-weight: bold;}
.layoutTable01 table thead th {
	text-align: center;
	background-color: #00479d;
}
.layoutTable01 table thead th.table-W{width: 105px;}
.layoutTable01 table tbody th {background-color: #e4ecf6;}
.layoutTable01 table tbody th.table-W{width: 85px;}
.layoutTable01 table.th_C tbody th{text-align: center;}
.layoutTable01 table thead th + th,
.layoutTable01 table tbody th,
.layoutTable01 table tbody td {
	font-size: 1.3rem;
	border-right: 1px solid #fff;
}
.layoutTable01 table thead th{
	border-right: 1px solid #fff;
	color: #fff;
}
.layoutTable01 table tbody tr:last-child th,
.layoutTable01 table tbody tr:last-child td {border-bottom: none;}
.layoutTable01 table tbody td a {
	font-size: 1.2rem;
	color: #00479d;
	text-decoration: underline;	
}
.layoutTable01 table tbody td a:hover{text-decoration: none;}

/*-- layoutTable02 -- */
.layoutTable02{
    position: relative;
    padding: 0 0 15px 0;
}
.layoutTable02 table{
	padding:0;
	margin:0;
	width:100%;
	border: 1px solid #fff;
	border-right: 0px solid #fff;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
}
.layoutTable02 table thead th,
.layoutTable02 table tbody th,
.layoutTable02 table tbody td {
	padding:6px 8px;
	border-bottom: 1px solid #fff;
	vertical-align:middle;
    text-align: left;
    background-color: #eeeeee;
}
.layoutTable02 table thead th,
.layoutTable02 table tbody th{font-weight: bold;}
.layoutTable02 table thead th {
	text-align: center;
	background-color: #00479d;
}
.layoutTable02 table thead th.table-W{width: 105px;}
.layoutTable02 table tbody th {
	color: #fff;
	background-color: #535353;
}
.layoutTable02 table tbody th.table-W{width: 85px;}
.layoutTable02 table.th_C tbody th{text-align: center;}
.layoutTable02 table thead th + th,
.layoutTable02 table tbody th,
.layoutTable02 table tbody td {
	font-size: 1.3rem;
	border-right: 1px solid #fff;
}
.layoutTable02 table thead th{
	border-right: 1px solid #fff;
	color: #fff;
}
.layoutTable02 table tbody tr:last-child th,
.layoutTable02 table tbody tr:last-child td {border-bottom: none;}
.layoutTable02 table tbody td a {
	font-size: 1.2rem;
	color: #00479d;
	text-decoration: underline;	
}
.layoutTable02i table tbody td a:hover{text-decoration: none;}

/*-- map-- */
div.map {
    margin-bottom: 30px;
    height: 0;
    overflow: hidden;
    padding-bottom: 75%;
    position: relative;
}
div.map iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.MB30 {margin-bottom: 30px!important;}

/* mail_form
---------------------------------------------------- */
form#mail_form{
	margin: 0!important;
	padding: 0!important;
	font-size: 1.6rem!important;
	border: 0!important;
}

form#mail_form dl {width: 100%!important;}
form#mail_form dl dt{
	font-size: 1.4rem!important;
	font-weight: 500!important;
	line-height: 1.2!important;

}
form#mail_form dl dt span.required {
	background: #ff0000!important;
	border: 1px solid #ff0000!important;
	color: #fff!important;
}
form#mail_form dl dt span {
    font-size: 1.2rem!important;
    color: #7d7d7d!important;
}
form#mail_form dl dt span.optional {
    background: #7d7d7d!important;
    border: 1px solid #7d7d7d!important;
    color: #fff!important;
    font-weight: bold;
}
form#mail_form p#form_submit {
    width: 100%!important;
}

form#mail_form input[type="button"] {
    border: 1px solid #00479d!important;
    background: #00479d!important;
}

/* 　slider
---------------------------------------------------- */
.slider{
	width:100%;
	margin:0 auto 0!important;
}
.slider img{width:100%;}
.slick-slide{height:auto!important;}
.slick-next{right:0!important;}
.slick-prev{left:0!important;}
.slick-arrow{z-index:2!important;}

/* 　darkbox
---------------------------------------------------- */
#darkbox_close:after {
    top: 5px!important;
    font-size: 4.2em!important;
    line-height: 0!important;
}
/* display none
---------------------------------------------------- */
.lead-head,
.address,
.gnav-pc,
div.contactBox01 h3 br,
div.contactBox01 ul li.tel-nolink{display: none!important;}


/*---------------------------------------------------- 
 PC View 
---------------------------------------------------- */

@media ( min-width : 768px ) {
	
/* display block
---------------------------------------------------- */
.lead-head,
.address,
.gnav-pc,
div.contactBox01 h3 br,
div.contactBox01 ul li.tel-nolink{display: block!important}

/* display none
---------------------------------------------------- */
.gnav,
div.contactBox01 ul li.tel,
.layoutTable01 table tbody th br{display: none!important;}

/* common
---------------------------------------------------- */
body {font-size: 1.2rem;}

/* ページの枠組み
---------------------------------------------------- */
/*-- Content01 --*/
.Content01{
	display: flex;
	margin: 0 auto;
	max-width: 1020px;
}
.Content01 main{width: 71.764705882352941%;}
.Content01 .side-nav{
	margin: 0 0 30px 0;
	width: 28.137254901960784%;
}
.Content01 main .inner{
	max-width: 700px;
	margin: 0;
	padding: 0 12px 0 20px;
}
.Content01 .side-nav .inner{
	padding-right: 20px;
	max-width: 268px;
}

/*-- main --*/
main {margin-bottom: 95px;}

/* header
---------------------------------------------------- */
header {border-bottom: 1px solid #e0e0e0;}
header .inner {
	min-height: 91px;
	border-bottom: none;
}
.lead-head{
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	background-color: #000;
	color: #fff;
}
.lead-head p{
	margin: 0 auto;
	padding: 4px 0;
	max-width: 980px;
	min-height: 18px;
	text-align: right;
	font-size: 1rem;
	font-weight: bold;
}
header .logo {
	top: 36px;
	left: 14px;
}
header .name {
	top: 40px;
	left: 66px
}
header .address {
	position: absolute;
	top: 40px;
	right: 12px;
	text-align: right;
	font-weight: bold;
}

/* mainV
---------------------------------------------------- */
div.mainV{
	max-height:340px; 
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(234,234,234,1) 98%);
	margin-bottom: 0px;
	overflow: hidden;
}
div.mainV .inner {
	margin: 0 auto;
	max-width: 980px;
	height: 0;
	padding-top: 34.693877551020408%;
	background: url(/img/bg_main_v_pc.jpg) no-repeat;
	background-size: 100%;
}
div.mainV h1 span {
	font-weight: bold;
}

/* module
---------------------------------------------------- */
/*-- lhdg_01_01 --*/
div.hdg_01_01{
	min-height:98px; 
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(234,234,234,1) 98%);
	margin-bottom: 0px;
	overflow: hidden;
}
.hdg_01_01 h1.hdg_01_test{font-size: 2.2rem;}

/*-- lhdg_02 --*/
h2.hdg_02_thanks,
h2.hdg_02_map{margin-top: 30px;}

/*-- lhdg_03 --*/
h3.hdg_03_404{margin-top: 30px;}

/*-- linkList01 --*/
ul.linkList01 {
    margin: 0;
	padding: 0 5% 0 0;
    width: 95%;
    margin-bottom: 15px;
}
ul.linkList01 li {
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #fff;
}

ul.linkList01 li a {
    margin: 0;
    padding: 3px 0;
	width: 60%;
}

/*-- img_company --*/
p.img_company{
	margin: 30px auto 1em;
	width: 400px;
}

/*-- gnav-pc --*/
.gnav-pc{min-height: 69px;}
.gnav-pc ul{
	display: flex;
	padding-top: 24px;
	padding-left: 10px;
}
.gnav-pc ul li {margin-right: 32px;}
.gnav-pc ul li a{
	display: block;
	padding: 0 10px 4px 10px;
	font-size: 1.1rem;
	font-weight: bold;
	border-bottom: 3px solid #585858;
	opacity:1;
	filter:alpha(opacity=100);
	-ms-filter:"alpha( opacity=100 )";
}
.gnav-pc ul li.active a,
.gnav-pc ul li a:hover{border-bottom-color: #288bd7;}
.gnav-pc ul > li.first {position: relative;}
li.first ul.second {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
	display: block;
	position: absolute;
	top: 24px;
	padding-top: 0;
	padding-left: 0;
	width: 200%;
	border-bottom: 0;
	border-left: 3px solid #288bd7;
	background: #f0f0f0;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}
li.first ul.second li{margin-right: 5px;}
li.first ul.second li a{
	padding: 15px;
	border-bottom: 0;
}
li.first:hover ul.second {
	top: 24px;
	visibility: visible;
	opacity: 1;
}
li.first ul.second li.active a,
li.first ul.second li a:hover{color: #288bd7;}

/*-- localNav01 --*/
section .localNav01{
    margin: 0;
    padding: 0;
}
section .localNav01 ul{
	display: block;
	margin: 30px 0 15px 0;
}
section .localNav01 ul li{
	margin-bottom: 7px;
	width: 100%;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.4;
	color:#717171;
}
nav.localNav01 ul li:last-child {
	width: 100%;
}
section .localNav01 ul li a{
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 46px;
	border: 1px solid #dedede;
	border-radius:3px;
	background: rgb(242,242,242);
	background: linear-gradient(0deg, rgba(242,242,242,1) 0%, rgba(255,255,255,1) 98%);
}
section .localNav01 ul li a i{
	margin: 0 15px 0 0;
	padding: 10px 10px;
	min-width: 27px;
	max-height: 26px;
	text-align: center;
	font-size: 28px;
	color: #717171;
	background: url(/img/bg_localnav01_icon.png) repeat-y top right;
}
section .localNav01 ul li a span{
	display: inline;
	margin: 0;
	padding-left: 10px;
}

/*-- read --*/
p.read {
	margin-bottom: 0px;
	padding: 30px 10px;
	min-height: 72px;
}

/*-- contentBox01 --*/
.contentBox01{
	display: flex;
}
.contentBox01 .Box01-01{
	margin-bottom: 30px;
	width: 180px;
}
.contentBox01 .Box01-01 img{
	width: 150px;
	padding: 0 15px;
}
.contentBox01 .Box01-02{
	width: 74.285714285714286%;
}

/*-- contentBox02 --*/
div.contentBox02 {
    margin: 0 auto;
    width: 420px;
}

/*-- contentBox-year --*/
.contentBox-year_02{display: flex;}
.contentBox-year_02 h3{
	margin-bottom: 5px;
	margin-left: 20px;
	margin-right: 0;
	width: 12.857142857142857%;
	font-weight: bold;
}
.contentBox-year_02 div,
.contentBox-year_02 p {
	margin-left: 0;
	margin-right: 10px;
	margin-bottom: 0;
	width: 87.142857142857143%;
}
/*-- contactBox01 --*/
div.contactBox01 h3 {
	padding: 10px 15px;
	text-align: center;
	font-size: 1.2rem;
}
div.contactBox01 ul li a,
div.contactBox01 ul li.tel-nolink{font-size: 1.6rem;}
div.contactBox01 ul li a i {
    margin-left: 15px;
    font-size: 20px;
}
div.contactBox01 ul li.tel-nolink{
	margin-bottom: 10px;
	padding: 7px 0;
	text-align: center;
	font-weight: bold;
	background-color: #fff;
	letter-spacing: 0.05em;
}
div.contactBox01 ul li.tel-nolink i{
	display: block;
	position: absolute;
	top: 50%;
	left: 0%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	margin-left: 15px;
	font-size: 20px;
}

/*-- imgBox01 -- */
ul.imgBox01 li span strong{
	font-size: 1.2rem;
	font-weight: normal!important;
}

/*-- Table -- */
.layoutTable01 table thead th.table-W{width: 150px;}
.layoutTable01 table tbody th.table-W{width: 130px;}
.layoutTable01 table tbody td {font-size: 1.2rem;}

/*-- slider --*/
.slider {
	margin: 0 0 0 20px!important;
	max-width: 700px;
}

}/*--- @media ( min-width : 768px ) ---*/

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

nav.gnav nav.nav_inner02 ul li a {font-size: 1.5rem;}
div.mainV h1 {
	width: 320px;
	font-size: 3rem;
}

header .inner .logo img{
    max-width: 186px;
    max-height: 40px;
}

nav.fnav ul.fnav01 li a,
nav.fnav ul.fnav02 li a {padding: 4px 10px 4px 0;}
nav.fnav ul.fnav01 {width: 50%;}

div.contactBox01 ul li a {font-size: 1.2rem;}


}/*--- @media ( max-width: 320px ) ---*/