@charset "Shift_JIS";

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&subset=japanese');

/* ---------------------------------------------------------------------------------------------------------
 all
--------------------------------------------------------------------------------------------------------- */
* {margin:0px; padding:0px;}
html {
	overflow-y: scroll;
	font-size: 62.5%;
}
body {
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'メイリオ', 'Osaka', 'MS PGothic', 'helvetica', 'arial', sans-serif;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 180%;
	text-size-adjust: 100%;
	color:#333;
	background: #fff;
/*  letter-spacing: .08em;*/
}
.noto {
  font-family: 'Noto Sans JP', sans-serif;
}

/* ---------------------------------------------------------------------------------------------------------
 reset
--------------------------------------------------------------------------------------------------------- */
/* 見出しタグ*/
h1, h2, h3, h4, h5, h6 { margin-top: 0px; margin-bottom: 0px;}
/* ボーダーを余白にふくめる */
html {
  box-sizing: border-box;
  -ms-overflow-style: scrollbar;
}
*,
*::before,
*::after {
  box-sizing: inherit;
}
/* テキスト */
p,
li,
dl,
table { line-break: strict; word-break: break-strict; word-wrap: break-word; margin-top: 0px; margin-bottom: 0px; }
/* テーブルの中での改行 */
tr { word-break: break-all; }
/* 折り返し禁止 */
.nw { white-space: nowrap;}
/* 画像のあいだの余白を消す */
img { vertical-align: bottom;}
/* ドラッグして選択したときの文字色と文字の背景色*/
::selection { background: #0165ab; color: #ffffff; }
::-moz-selection { background: #0165ab; color: #ffffff;}
/* フォーム */
textarea { overflow: auto; vertical-align: top; resize: vertical;}
select option { padding: 0px 5px;}
form label { cursor: pointer;}
input:placeholder { color: #999;}
input:-ms-input-placeholder { color: #999;}
/* テーブル */
table { border-collapse: collapse; border-spacing: 0;}
/* リストタグ */
ul, ol { margin: 0px; padding: 0px; list-style-type: none;}
dd { margin-left: 0;}
/* clearfix */
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}
/* link */
a:link,
a:visited {
	color:#fff;
	text-decoration:none;
}
a:hover {
	color:#E5814A;
	text-decoration:none;
}
a:focus{ outline:none;}
a{outline:none;}

div { transition: width 1s ease-in-out 0.01s;}
main { display: block;}

iframe { vertical-align:bottom;}


/* ---------------------------------------------------------------------------------------------------------
 layout
--------------------------------------------------------------------------------------------------------- */
.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
.d-none {
	display: none !important;
}
.d-block {
	display: block !important;
}
.container img {
	max-width: 100%;
	height: auto;
}

@media only screen and (min-width: 576px) { /* SP */
  .container {
    max-width: 540px;
  }
}
@media print, screen and (min-width: 768px) { /* Tablet1 */
  .container {
    max-width: 720px;
  }
  .d-md-none {
    display: none !important;
  }
  .d-md-block {
    display: block !important;
  }
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
  .container {
    max-width: 960px;
  }
  .d-lg-none {
    display: none !important;
  }
  .d-lg-block {
    display: block !important;
  }
}
@media print, screen and (min-width: 1200px) { /* PC */
  .container {
    max-width: 1170px;
  }
  .d-xl-none {
    display: none !important;
	}
  .d-xl-block {
    display: block !important;
	}
}
.order-1 {
  -ms-flex-order: 1;
  order: 1;
}
.order-2 {
  -ms-flex-order: 2;
  order: 2;
}
.order-3 {
  -ms-flex-order: 3;
  order: 3;
}

@media print, screen and (min-width: 768px) { /* Tablet1 */
	.order-md-1 {
		-ms-flex-order: 1;
		order: 1;
	}
	.order-md-2 {
		-ms-flex-order: 2;
		order: 2;
	}
	.order-md-3 {
		-ms-flex-order: 3;
		order: 3;
	}
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
	.order-lg-1 {
		-ms-flex-order: 1;
		order: 1;
	}
	.order-lg-2 {
		-ms-flex-order: 2;
		order: 2;
	}
	.order-lg-3 {
		-ms-flex-order: 3;
		order: 3;
	}
}
@media print, screen and (min-width: 1200px) { /* PC */
	.order-xl-1 {
		-ms-flex-order: 1;
		order: 1;
	}
	.order-xl-2 {
		-ms-flex-order: 2;
		order: 2;
	}
	.order-xl-3 {
		-ms-flex-order: 3;
		order: 3;
	}
}

.grid-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}
.grid-row-no-garter {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-1 {
	-ms-flex: 0 0 8.333333%;
	flex: 0 0 8.333333%;
	max-width: 8.333333%;
}
.col-2 {
	-ms-flex: 0 0 16.666667%;
	flex: 0 0 16.666667%;
	max-width: 16.666667%;
}
.col-3 {
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	max-width: 25%;
}
.col-4 {
	-ms-flex: 0 0 33.333333%;
	flex: 0 0 33.333333%;
	max-width: 33.333333%;
}
.col-5 {
	-ms-flex: 0 0 41.666667%;
	flex: 0 0 41.666667%;
	max-width: 41.666667%;
}
.col-6 {
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}
.col-7 {
	-ms-flex: 0 0 58.333333%;
	flex: 0 0 58.333333%;
	max-width: 58.333333%;
}
.col-8 {
	-ms-flex: 0 0 66.666667%;
	flex: 0 0 66.666667%;
	max-width: 66.666667%;
}
.col-9 {
	-ms-flex: 0 0 75%;
	flex: 0 0 75%;
	max-width: 75%;
}
.col-10 {
	-ms-flex: 0 0 83.333333%;
	flex: 0 0 83.333333%;
	max-width: 83.333333%;
}
.col-11 {
	-ms-flex: 0 0 91.666667%;
	flex: 0 0 91.666667%;
	max-width: 91.666667%;
}
.col-12 {
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

@media print, screen and (min-width: 768px) { /* Tablet1 */
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media print, screen and (min-width: 992px) { /* Tablet2 */
  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-2-5 {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}


@media print, screen and (min-width: 1200px) { /* PC */
  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}


/* ---------------------------------------------------------------------------------------------------------
 extension
--------------------------------------------------------------------------------------------------------- */
.link-filter a:hover,
a.link-filter:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-moz-transition: opacity 1s ease-out;
	transition: opacity 1s ease-out;
}

.pb40 { padding-bottom: 40px;}
.ptb_box {
  padding-top: 40px;
  padding-bottom: 40px;
}
.pb_box {
  padding-bottom: 40px;
}

.pt_1 { padding-top: 1em;}
.mt_15 { margin-top: 15px;}
.mt_30 { margin-top: 30px;}

.pb_0 { padding-bottom: 0;}
.pb_15 { padding-bottom: 15px;}
.mb_0 { margin-bottom: 0;}
.mb_15 { margin-bottom: 15px;}
.mb_30 { margin-bottom: 30px;}
.mb_50 { margin-bottom: 50px;}
.mb_80 { margin-bottom: 80px;}

.p_pb1 { padding-bottom: 1.4em;}
@media print, screen and (min-width: 768px) { /* Tablet1 */
  .mb_md_0 { margin-bottom: 0;}
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
  .ptb_box {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .pb_box {
    padding-bottom: 80px;
  }
  .mt_lg_15 { margin-top: 15px;}
  .mt_lg_30 { margin-top: 30px;}
  .mb_lg_0 { margin-bottom: 0;}
}
@media print, screen and (min-width: 1200px) { /* PC */
  .mb_xl_0 { margin-bottom: 0;}
}

.align-l { text-align: left;}
.align-c { text-align: center;}
.align-r { text-align: right;}

.font_s { font-size: 12px; font-size: 1.2rem; line-height: 1.2em;}
.font_l { font-size: 18px; font-size: 1.8rem; line-height: 140%;}
.font_ll { font-size: 22px; font-size: 2.2rem; line-height: 140%;}

.color_red { color: #db1600;}
.color_blue { color: #0c419a;}
.color_light-blue { color: #0084ec;}

.marker{
  background: linear-gradient(transparent 60%, #ffff00 0%);
  display: inline;
  padding: 0 2px 4px;
}
.img_radius {
  border-radius: 5px;
}

/* indent 二行目以降を1字下げる*/
.att {
  padding-left: 1em;
  text-indent: -1em;
}

ol.counter {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}
ol.counter li {
  text-indent: -1.3em;
  padding-left: 1.3em;
}
ol.counter li:before {
  counter-increment: item;
  content: counter(item)'.';
  padding-right: .5em;
}

/*
ul.list-disc {
	list-style: none;
	padding:0;
	margin:0;
}
ul.list-disc li { 
	padding-left: 1em; 
	text-indent: -.7em;
}
ul.list-disc li:before {
	content: "● ";
	color: #c15f2a;
}
*/
ul.list-disc li {
	position: relative;
  padding-left: 1em;
}
ul.list-disc li::after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: 0em;
	width: 6px;
	height: 6px;
	background-color: #0084ec;
	border-radius: 100%;
}

/* dl_table
----------------------------------------------------------*/
dl.dl_table,
	.dl_table dt,
	.dl_table dd {
	box-sizing: border-box;
	text-align: left;
}
.dl_table dt,
.dl_table dd {
	padding: 15px;
	border-top: 1px solid #ccc;
}
.dl_table dt {
	background: #eee;
	font-weight: bold;
}
.dl_table dd {
	padding-bottom: 15px;
}
.dl_table dd span {
	font-weight:bold;
}

.dl_table dd:after {
	content: '';
	display: block;
	clear: both;
}
@media print, screen and (min-width: 992px) { /* Tablet PC */
	dl.dl_table {
		background: #eee;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		border-left: 1px solid #ccc;
	}
	.dl_table dt,
	.dl_table dd {
		padding: 15px 15px 0 15px;
	}
	.dl_table dt {
		width: 25%;
		float: left;
	}
	.dl_table dd {
		background: #fff;
		padding-bottom: 15px;
		margin-left: 25%;
		border-left: 1px solid #ccc;
	}
}

/* table
----------------------------------------------------------*/
.tbl01 {
  width: 100%;
}
.tbl01 th {
  background: #eee;
  border: solid 1px #ccc;
  padding: 10px;
  width: 25%;
}
.tbl01 td {
  border: solid 1px #ccc;
  padding: 10px;
}
.tbl01 td.map {
  width: 20%;
}
.tbl01 thead .w5 {
  width: 5em !important;
}
.tbl01 thead .w7 {
  width: 7em !important;
}
.tbl01 thead .w10 {
  width: 10em !important;
}
.tbl01 thead .w14 {
  width: 14em !important;
}
@media screen and (max-width: 640px) {
  .tbl01 tr td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .tbl01 th,
  .tbl01 td,
  .tbl01 .map,
  .tbl01 .w3,
  .tbl01 .w10,
  .tbl01 .w14 {
    border-bottom: none;
    display: block;
    width: 100%;
  }
}

/* background color
----------------------------------------------------------*/
.bg_navy { background: #000080;}
.bg_lblue { background: #e9eef4;}
.bg_lorange { background: #fffaf0;}

.none {
  background: #f7f5f0;
  padding: 2em;
}

.point_note {
	position: relative;
	padding: 25px 20px 10px 20px;
	border: 2px solid #000082;
	border-radius: 8px;
	background: #e9eef4;
}
.point_note::before {
	position: absolute;
	top: -1em;
	left: 1em;
	content: attr(title);
	padding: .4em 1em;
	font-weight: bold;
	color: #fff;
	height: 37px;
	background: #000082;
	border-radius: 4px;
}

[data-tel] {
  color: #333;
}
.footer [data-tel] {
  color: #333;
}

.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}




.img_circle {
  border-radius: 50%;
}
.img_rounded_5 {
  border-radius: 5px;
}
.img_rounded_50 {
  border-radius: 50px;
}

.btn {
  display: block;
  text-align: center;
  padding: 10px 0 10px 10px;
}
.btn span {
  position: relative;
}
.btn span::before {
  position: absolute;
  left: -10px;
  font-family:'FontAwesome';
  content: '\f0da'
}

.btn_red {
  background: #db1600;
  color: #fff !important;
  width: 100%;
}
.btn_blue {
  background: #000080;
  color: #fff !important;
  width: 100%;
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
  .btn_red {
    width: 200px;
    margin-left: auto;
    margin-right: auto;
  }
  .btn_blue {
    width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* header 
---------------------------------------------------- */
header {
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
  background: #fff;
	height: 60px;
  position: fixed;
}
.header .h_inner {
  position: relative;
  height: 60px;
}
.header h1 {
  position: absolute;
  top: 7px;
  width: 230px;
  z-index: 20;
}
@media print, screen and (min-width: 1200px) { /* PC */
  header {
    height: 175px;
  }
  .header .h_inner {
    height: 115px;
  }
  .header h1 {
    width: 471px;
    height: 96px;
    top: 10px;
  }
}

.header .h_contact {
  position: absolute;
  top: 20px;
  right: 0;
  text-align: center;
}
.header .h_contact li:first-child a {
  display: block;
  background: #db1600;
  color: #fff !important;
  text-align: center;
  width: 300px;
  padding: 5px;
}
.header .h_contact li:last-child {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 30px;
  font-size: 3.0rem;
  font-weight: bold;
  margin-top: 10px;
}



/* nav
---------------------------------------------------- */
.gnav .menu {
  position: relative;
  width: 100%;
  height: 60px;
  margin: 0 auto;
}
.gnav .menu > li {
  float: left;
/*  width: calc(100% / 7);width: calc(100% / 7);*/
  width: 14.2857%; /* グローバルナビ4つの場合 */
  height: 60px;
  line-height: 60px;
  background: #000080;
}
.gnav .menu > li a {
  display: block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
}
.gnav .menu > li a:hover {
  color: #fff;
}
ul.menu__second-level {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}
.menu > li.current,
.menu > li:hover {
  background: #072A24;
  -webkit-transition: all .5s;
  transition: all .5s;
}
.menu__second-level li {
  border-top: 1px solid #111;
}
.menu__second-level li a:hover {
    background: #111;
}
/* 下矢印 */
.init-bottom::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 0 5px 10px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* floatクリア */
.gnav .menu:before,
.gnav .menu:after {
  content: " ";
  display: table;
}
.gnav .menu:after {
  clear: both;
}
.gnav .menu {
    *zoom: 1;
}
.menu > li.menu__single {
  position: relative;
}
li.menu__single ul.menu__second-level {
    position: absolute;
    top: 50px;
    width: 100%;
    background: #072A24;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
li.menu__single:hover ul.menu__second-level {
    top: 60px;
    visibility: visible;
    opacity: 1;
}



/* スマホ用メニューボタン */
.sp_nav {
	position: absolute;
	top: 10px;
	right: 0;
	width: 100%;
	z-index: 10;
}
header .navOpen {
	width: 36px;
	height: 40px;
	float: right;
	margin-right: 10px;
	margin-bottom: 10px;
	cursor: pointer;
	background:url(../images/menu.png) no-repeat 0 0;
	background-size: 72px;
}
/*スマホ用メニュー閉じるボタン*/
header .navClose {
	background-position: -36px 0;
}
header .menu-sp {
	clear: both;
}
header .menu-sp div {
	width: 100%;
	z-index: 100;
}
header .menu-sp ul.g_menu {
	background: #353743;
	background: #0084ec;
	z-index: 100;
  
  display: table;
  border-bottom: #fff solid 1px;
}
header .menu-sp ul.g_menu li {
	line-height: 1.4;
  border-bottom: #fff solid 1px;
  
  width: 50%;
  float: left;
  border-right: #fff solid 1px;
}
header .menu-sp ul.g_menu li:last-child {
  border-bottom: none;
}
header .menu-sp ul.g_menu a {
	color: #fff;
	padding-left: 5%;
	padding-right: 5%;
	padding-top: 15px;
	padding-bottom: 15px;
	display: block;
	text-decoration: none;
  text-align: center;
}
header .menu-sp ul.g_menu a span {
  display: block;
  font-size: 10px;
  font-size: 1.0rem;
}


/* footer
----------------------------------------------------------*/
.footer {
  border-top: #000082 solid 30px;
  padding-top: 30px;
}
.f_logo {
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
.f_info dt {
  font-weight: bold;
  padding-top: 30px;
  font-size: 6.25vw;
}
.f_info li:first-child {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 10.625vw;
  font-weight: bold;
  margin-top: 20px;
  margin-bottom: 10px;
}
.f_info li:last-child a {
  display: block;
  background: #db1600;
  color: #fff !important;
  text-align: center;
  width: 100%;
  padding:10px;
  font-size: 20px;
  font-size: 2.0rem;
}
@media print, screen and (min-width: 768px) { /* Tablet1 */
  .f_info dt {
    font-size: 20px;
    font-size: 2.0rem;
  }
  .f_info li:first-child {
    font-size: 30px;
    font-size: 3.0rem;
  }
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
  .f_logo {
    width: 190px;
    height: 190px;
  }
}
@media print, screen and (min-width: 1200px) { /* PC */
  .f_info dt {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .f_info li:first-child {
    font-size: 38px;
    font-size: 3.8rem;
  }
}

.f_pr_owner {
  padding-bottom: 20px;
}
.f_pr_owner dt {
  color: #db1600;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  padding-bottom: 15px;
}
.f_pr_owner dd p {
  padding-bottom: 10px;
}
.f_pr_point p {
  color: #000082;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
}
.f_pr_point ul {
  display: inline-block;
}
.f_pr_point ul li {
  position: relative;
  display: inline-block;
  margin-right: 10px;
  padding-left: 20px;
  font-weight: bold;
}
.f_pr_point ul li::before {
  font-family:'FontAwesome';
  content: '\f00c';
  color: #db1600;
  position: absolute;
  left: 0;
}

.sitemap {
  padding-top: 20px;
  line-height: 1.4em;
}
.sitemap li {
  display: inline-block;
  position: relative;
  margin-right: 20px;
  padding-left: 10px;
}
.sitemap li a {
  color: #333 !important;
  font-size: 14px;
  font-size: 1.4rem;
}
.sitemap li::before {
  font-family:'FontAwesome';
  content: '\f105';
  position: absolute;
  left: 0;
}

.btn_recruit {
  text-align: right;
  margin-top: 15px;
}
.btn_recruit a {
  position: relative;
  color: #333;
  background: #ffc600;
  display: inline-block;
  text-align: center;
  padding:10px;
  width:100%;
  font-size: 20px;
  font-size: 2.0rem;
}
.btn_recruit a::after {
  font-family:'FontAwesome';
  content: '\f138';
  position: absolute;
  right: 10px;
}

.btn_recruit a {
  animation: furufuru 2.72s ease infinite;
  transform-origin: 50% 50%;
}
@keyframes furufuru {
  0% { transform:translate(0,0) }
  4.41177% { transform:translate(5px,0) }
  8.82353% { transform:translate(0,0) }
  13.23529% { transform:translate(5px,0) }
  17.64706% { transform:translate(0,0) }
  22.05882% { transform:translate(5px,0) }
  26.47059% { transform:translate(0,0) }
  100% { transform:translate(0,0) }
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
  .btn_recruit a {
    position: relative;
    color: #333;
    background: #ffc600;
    display: inline-block;
    text-align: center;
    padding:10px;
    width: 360px;
    font-size: 20px;
    font-size: 2.0rem;
  }
}

.copyright {
  background: #333;
  color: #fff;
  margin-top: 30px;
}
.copyright p {
  text-align: center;
  color: #fff;
  font-size: 12px;
  font-size: 1.2rem;
}

/* pagetop
----------------------------------------------------------*/
#pagetop {
	position: fixed;
	bottom: 50px;
	right: 20px;
}


/* ---------------------------------------------------------------------------------------------------------
 print
--------------------------------------------------------------------------------------------------------- */

	@page {
		margin: 8mm;
/*		margin: 10mm 8mm 10mm 8mm;*/
    margin: 0.5cm;
	}
	
	
@media print {

	* {
		-webkit-print-color-adjust: exact !important;
		background-attachment: initial !important;
		overflow-y: visible !important;
	}
	html {
		overflow: visible !important;
		zoom: 0.6 !important;
	}
	body {
		min-width: 1000px !important;
		padding-top: 0px !important;
		padding-bottom: 0px !important;
	}
	.header {
		position: static;
	}
  .container {
		min-width: 1000px !important;
	}
	.grid-row {
		margin-left: -15px !important;
		margin-right: -15px !important;
	}
  .aos-init {
    opacity: 1 !important;
    transform: none !important;
  }
  
/*
  .pc_nav {
    display: none;
    visibility: hidden;
  }
  .title_default {
    overflow:hidden!important; 
  }
*/
	
	.page-break-before {page-break-before:always}
}



/* ---------------------------------------------------------------------------------------------------------
ブレイクポイント
--------------------------------------------------------------------------------------------------------- */
@media only screen and (min-width: 576px) { /* SP */
}
@media print, screen and (min-width: 768px) { /* Tablet1 */
}
@media print, screen and (min-width: 992px) { /* Tablet2 */
}
@media print, screen and (min-width: 1200px) { /* PC */
}




/* #fnav */
#fnav{display: none;}
  @media only screen and (max-width:768px)  {#fnav{padding: 10px 0;display: block;}}
  @media only screen and (max-width:575px)  {#fnav{width: 100%;}}

.fnav-btn{position:fixed;left:0;right:0;bottom:0;z-index:999;display:none;}
  @media only screen and (max-width:991px)  {.fnav-btn{display:table;width:100%;table-layout:fixed;margin:0;padding:1px;background:#fff;border-top:1px solid #ddd;}}


.fnav-item{}
  @media only screen and (max-width:1199px) {.fnav-item{}}
  @media only screen and (max-width:991px)  {.fnav-item{display:table-cell;vertical-align:middle;padding:1px;text-align:center;height: auto;}}

.fnav-item + .fnav-item{border-left: 1px solid #fff;}
  @media only screen and (max-width:991px)  {.fnav-item + .fnav-item{margin: 0;border-left: none;}}

.fnav-link,.fnav-link:hover,.fnav-link:active,.fnav-link:focus{font-size: 13px;opacity:1;white-space:nowrap;line-height: 1;color:#fff;padding: 2px .5em;margin: -2px .5em;height: 40px;}
  @media only screen and (max-width:991px)  {.fnav-link,.fnav-link:hover,.fnav-link:active,.fnav-link:focus{display:block;background:#074d92;color:#fff;font-size:10px;line-height:10px;
    padding:5px 2px 3px;position:relative;text-decoration:none;margin: 0;}}

.fnav-link:hover,.fnav-link:active,.fnav-link:focus{opacity:1;background: #fff;color:#074d92;border-radius: 2px;}
  @media only screen and (max-width:991px)  {.fnav-link:hover,.fnav-link:active,.fnav-link:focus{background:#074d92;color:#fff;opacity:.75;text-decoration: none;}}

.fnav-link:before{content: "\f054";font-family: 'FontAwesome';width: 1em;display: inline-block;display: none;}
  @media only screen and (max-width:991px)  {.fnav-link:before{font-family: 'FontAwesome';font-size:16px;line-height: 1;margin: 1px auto 2px;width: 1em;display:block;text-align: center;font-weight: bold;}}

.fnav-link.home:before    {content: "\f015";}
.fnav-link.mail:before    {content: "\f0e0";}
.fnav-link.tel:before   {content: "\f095";}
.fnav-link.ptop:before    {content: "\f077";}

.fnav-item > strong     {display:inline-block;font-weight:normal;margin-right:.5em;}
.fnav-item > strong a   {color:#333;}
.fnav-item > strong a:hover,.fnav-item > strong a:active,.fnav-item > strong a:focus  {color:#fff;opacity:1;}
.fnav-item > span     {display:block;}
.fnav-item > span:before  {content:"-";width:1.5em;display:inline-block;padding-left:.75em;}
.fnav-item > span:after   {content:"";display:none;}
.fnav-item > span + span  {}
.fnav-item > span > a   {color:#fff;display:inline-block;vertical-align:middle;}
.fnav-item > span > a:hover,.fnav-item > span > a:active,.fnav-item > span > a:focus  {color:#fff;opacity:1;text-decoration:underline;}

#side_tel{
	position:fixed;
	top:240px;
	right:0;
	z-index:1000;
}



/*レスポンシブデザインの場合下記も追記*/
/*非表示*/
@media screen and (max-width: 767px) {
#side_tel{
	display:none;
}



/*マウスオーバーのアクション*/
/*下に30px下がる*/
#side_tel:hover{
	transform: translateY(30px);
	transition:0.6s;
}

.imgfilter a:hover img
{
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
	zoom:1;
}

