@charset "utf-8";

@import url("https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css");

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:500|Noto+Sans+TC&display=swap');

@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,500,600&display=swap');

@import url('https://fonts.googleapis.com/css?family=Fjalla+One|Noto+Sans+JP|Noto+Serif+JP:600|Poppins:300,400,600');

@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');


.Noto_Sans_JP{
	font-family: 'Noto Sans JP',"游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
}
.mincho,
.Noto_Serif_JP{
	font-family:'Noto Serif JP', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.kosugimaru{
font-family: 'Kosugi Maru', sans-serif;}




/*-----------------------------------------------
スマホサイト
-----------------------------------------------*/
@media only screen and (max-width: 768px) {

/* ハンバーガーボタン */
/*メニュー周りの高さ調整は親CSS側で設定すること。*/
.btn_hamburger {
	margin: 0 auto 2em !important;
	position:absolute;
	top:30px;
	right:10px;
	border-radius:4px;
	padding:5px 8px;
	background:#a7a7a7;
	border: none;
}
.btn_hamburger a {
	position: relative;
	display: block;
	width: 26px;
	height: 20px;
	-webkit-transition: all .4s;
	transition: all .4s;
	box-sizing: border-box;
	margin:5px auto;
}
.btn_hamburger span {
	position: absolute;
	display: inline-block;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 2px;
	-webkit-transition: all .4s;
	transition: all .4s;
	box-sizing: border-box;
}
.btn_hamburger span:nth-of-type(1) {
	top: 0;
}
.btn_hamburger span:nth-of-type(2) {
	top: 8px;
}
.btn_hamburger span:nth-of-type(3) {
	bottom: 0;
}
.btn_hamburger span:nth-of-type(2)::after {
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 4px;
	background-color: #fff;
	border-radius: 2px;
	-webkit-transition: all .4s;
	transition: all .4s;
}
.btn_hamburger .active span:nth-of-type(2) {
	-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
					transform: rotate(-45deg);
}
.btn_hamburger .active span:nth-of-type(2)::after {
	-webkit-transform: rotate(90deg);
			-ms-transform: rotate(90deg);
					transform: rotate(90deg);
}
.btn_hamburger .active span:nth-of-type(1) {
	-webkit-transform: translateY(20px) scale(0);
			-ms-transform: translateY(20px) scale(0);
					transform: translateY(20px) scale(0);
}
.btn_hamburger .active span:nth-of-type(3) {
	-webkit-transform: translateY(-20px) scale(0);
			-ms-transform: translateY(-20px) scale(0);
					transform: translateY(-20px) scale(0);
}
.smp_whole{
	margin: 0 0 2.5em;
	max-width: 640px;
}

.gnav {display: none;}

.smp_whole> ul > li {
	list-style-type:none;
}
.smp_whole> ul > li a{
	display:block;
	width:100%;
	height:50px;
	line-height:50px;
	background:#eee;
	background: #bbb;
	background: -webkit-linear-gradient(top, #F5F7F6, #E6E7EB);
	background:         linear-gradient(top, #F5F7F6, #E6E7EB);
	border-bottom:1px solid #aaa;
	color:#333;
	font-size:15px;
	text-indent:20px;
	position:relative;
}
.smp_whole> ul > li a:after {
    content: '';
    margin-top: -4px;
    top: 50%;
    right: 15px;
    width: 8px;
    height: 8px;
    color: #888;
    font-size: 1em;
    font-weight: bold;
    line-height: 1.2em;
    display: block;
    position: absolute;
    border-top: 2px solid #b0b0b0;
    border-right: 2px solid #b0b0b0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.smp_whole> ul > li a:link{color:#333;text-decoration:none;}
.smp_whole> ul > li a:visited{color:#333;text-decoration:none;}
.smp_whole> ul > li a:hover{color:#333;text-decoration:none;}
.smp_whole> ul > li a:active{color:#333;text-decoration:none;}

.smp_whole> ul > li a.trigger:after {/*下階層ある時のボタン。下向き矢印*/
    content: '';
    margin-top: -4px;
    top: 50%;
    right: 15px;
    width: 8px;
    height: 8px;
    color: #888;
    font-size: 1em;
    font-weight: bold;
    line-height: 1.2em;
    display: block;
    position: absolute;
    border-top: 2px solid #777;
    border-right: 2px solid #777;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.smp_whole .trigger.active{/*下階層ボタンがアクティブの時の親ボタンの背景。*/
	/*background:#d9d9d9;*/
	opacity:0.5;
}
.smp_whole> ul > li a.trigger.active:after {/*下階層ボタンがアクティブの時の上向き矢印*/
    content: '';
    margin-top: -2px;
    top: 50%;
    right: 15px;
    width: 8px;
    height: 8px;
    color: #888;
    font-size: 1em;
    font-weight: bold;
    line-height: 1.2em;
    display: block;
    position: absolute;
    border-top: 2px solid #777;
    border-right: 2px solid #777;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.smp_whole ul.target.sub{
	display:none;
	margin-bottom: 0;
}
.smp_whole ul.target.sub li{
	list-style-type:none;
}
.smp_whole ul.target.sub li a{/*下階層展開時の背景*/
	background:#eee;
}


}/*↑スマホサイト*/

/*-----------------------------------------------
PCサイト
-----------------------------------------------*/
@media only screen and (min-width: 768px) {

.gnav {
	width: 100%;
	height: 42px;
	margin:0 auto;
	background:var(--main-bg);
	/*background: linear-gradient(to bottom, #ffffff, #F0F0EE);*/
	border-bottom:2px solid #eee;
	font-family: 'Noto Sans JP',"游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
}
ul.dropmenu{
	position: relative;
	max-width: 1000px;
	height: 42px;
	margin:0 auto;
	border-left:1px dotted #fff;
}
ul.dropmenu li{
	float: left;
	max-width: 142.8px;
	width: 14.28%;
}
ul.dropmenu .forsmp{
	display:none;
}
ul.dropmenu li a{
	display: inline-block;
	max-width:142.8px;
	width: 100%;
	height:42px;
	line-height:42px;
	font-size:14px;
	text-align:center;
	border-right:1px dotted #fff;
	box-sizing: border-box;
	position:relative;
}
ul.dropmenu li a:after{
	content: '';
	border-right: 4px solid transparent;
	border-bottom: 4px solid #eee;
	border-left: 4px solid transparent;
	position: absolute;
	bottom: 0;
	left: 48%;
	margin-top: -4px;
}
ul.dropmenu li a.kaigyo{
	line-height:1.4;
}
ul.dropmenu li a.w_short{
	width:143px;
}
ul.dropmenu li a.w_home{
	/*width:170px;*/
}
ul.dropmenu li a.w_mid{
	width:124px;
}
ul.dropmenu li a:link{color:#fff; text-decoration:none;}
ul.dropmenu li a:visited{color:#fff;text-decoration:none;}
ul.dropmenu li a:hover{color:#fff;text-decoration:none;opacity: 0.5;background: #666;}
ul.dropmenu li a:active{color:#fff;text-decoration:none;}

ul.dropmenu li ul{/*プルダウンul（メガメニューのため横めいいっぱい）*/
	width:245px;/*メニュー数少ないので幅は上と同じ*/
	max-width: 245px;
	position: absolute;
	top: 42px;
	left: 0;
	margin: 0 0 0 0;
	padding: 0;
	z-index:9999;
}
		ul.dropmenu li:nth-child(2n) ul{/*プルダウン真下に。あってもなくても記述する*/
			left: 14.28%;
		}
		ul.dropmenu li:nth-child(3n) ul{
			left: 28.56%;
		}
		ul.dropmenu li:nth-child(4n) ul{
			left: 42.84%;
		}
		ul.dropmenu li:nth-child(5n) ul{
			left: 57.12%;
		}
		ul.dropmenu li:nth-child(6n) ul{
			left: 71.4%;
		}
		ul.dropmenu li:nth-child(7n) ul{/*右端のため調整*/
			left: 678px;
		}
		ul.dropmenu li:nth-child(8n) ul{/*右端のため調整*/
			left: 785px;
		}
		ul.dropmenu li:nth-child(9n) ul{/*右端のため調整*/
			left: 892px;
		}
ul.dropmenu li ul li{/*プルダウンli（メガメニューのため横めいいっぱい）*/
	width:100%;
	height: 0;
	overflow: hidden;
}
ul.dropmenu li:hover ul li{/*ホバー時のプルダウン各行*/
	overflow: visible;
	height: 50px;
	line-height:50px;
	background:#eee;
	border-bottom:1px dotted #fff;
	width: 100%;
	max-width: 100%;
}
ul.dropmenu li:hover ul li a{/*プルダウン共通。親の指定を打ち消してる*/
	display:block;
	width:100%;
	max-width: 100%;
	height:50px;
	line-height:50px;
	position: relative;
	text-align:left;
	text-indent:40px;
}
ul.dropmenu li:hover ul li a:link{text-decoration:none;color:#333;}
ul.dropmenu li:hover ul li a:visited{text-decoration:none;color:#333;}
ul.dropmenu li:hover ul li a:hover{text-decoration:none;color:#fff;background:#bbb!important;}
ul.dropmenu li:hover ul li a:active{text-decoration:none;color:#333;}

ul.dropmenu li:hover ul li a::before{/*矢印*/
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 1px #333;
	border-right: solid 1px #333;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 21px;
	left: 20px;
}
ul.dropmenu li ul li a:after{
	content: '';
	/*border-right: 4px solid transparent;*/
	/*border-bottom: 4px solid #10569C;*/
	/*border-left: 4px solid transparent;*/
	border:none;
	position: absolute;
	bottom: 0;
	left: 48%;
	margin-top: -4px;
}
ul.dropmenu li:hover ul li:first-child{/*最初の行はピンクボーダー*/
	border-top:2px solid var(--main-bg);
}
ul.dropmenu li:hover ul li:last-child{/*最後の行はグレー*/
	border-bottom:1px solid #ccc;
}
.gnav .active{
	background:#666;
	color:#fff!important;
	opacity: 0.5;
}

}/*↑PCサイト*/

.imgcen{
display: block;
text-align: center;
margin-left: auto; margin-right: auto;
}

/* ===============================
   header LINE追加用（ここに追記）
   =============================== */

.header_info{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.h_tel{
  margin-bottom: 4px;
}

.h_line{
  margin: 6px 0;
}

.h_line_btn{
  height: 28px;
}

.h_time{
  font-size: 12px;
  color: #666;
}