@charset "utf-8";
/* ---------------------------
ヘッダータイプ：ナビ中央：横並び用CSS
---------------------------*/

/* ---------------------------

　　　　　ヘッダー

---------------------------*/
header {margin-bottom: 50px;}

@media screen and ( min-width: 768px) {
	.align-vertical.navi_position3 .icon-hamburger,
	.navi_position1 .icon-hamburger,
	.navi_position2 .icon-hamburger {display: none;}
}
@media screen and ( min-width: 1101px) {
	.align-horizontal.navi_position3 .icon-hamburger {display: none;}
}
/* ---------------------------

　　　　　グローバルナビ

---------------------------*/
/* ナビゲーション位置 メイン画像上・メイン画像下 /　横書きナビ */
.globalNav-upper,
.globalNav-bottom
 {
	display: flex;
	max-width: 1100px;
	margin: 0 auto;
	text-align: center;
}
.globalNav-upper > li,
.globalNav-bottom > li {
	flex: 1;
	position: relative;
}
.globalNav-upper > li + li,
.globalNav-bottom > li + li {
	border-left: 1px solid #dfdfdf;
}

.globalNav-upper a,
.globalNav-bottom a {
	padding: 15px 20px;
}

.globalNav-upper .sub-menu,
.globalNav-bottom .sub-menu {
	position: absolute;
	text-align: center;
	width: 100%;
}
.globalNav-upper .menu-has-children li,
.globalNav-bottom .menu-has-children li {
	height: 0;
	overflow: hidden;
	transition: 0.5s;
}
.globalNav-upper .menu-has-children:hover li,
.globalNav-bottom .menu-has-children:hover li {
	height: 55px;
	overflow: hidden;
}

/* 電話番号・お問い合わせ画像と置き換え /　横書きナビ */
.align-writing.globalNav {padding: 5px;}
.align-writing.globalNav .globalNav-tel {
	display: flex;
	text-align: center;
}
/*.align-writing.globalNav .menu-has-children {position: relative;}*/
.align-writing.globalNav a {
	padding: 15px 10px;
	min-width: 100px;
}
.align-writing.globalNav .sub-menu {
	position: absolute;
	/*z-index: 999;
	display: none;*/
}
.align-writing.globalNav .sub-menu li:not(:first-child) {margin-top: 1px;}
.align-writing.globalNav .sub-menu a {padding: 7px 0;}

.align-writing.globalNav .globalNav-tel > li {margin-left: 1px;}
.align-writing.globalNav .globalNav-tel > li >  a {
	position: relative;
}
.align-writing.globalNav .globalNav-tel > li > a:after {
	content: '';
	display: block;
	background: #777;
	height: 3px;
	width: 0;
	position: absolute;
	bottom: 0;
	transition: 0.6s;
    left: 0;
}
.align-writing.globalNav .globalNav-tel > li:hover > a:after{width: 100%;}

/* 電話番号・お問い合わせ画像と置き換え /　縦書きナビ */
.vertical-writing.globalNav { /* IE */
	display: flex;
	justify-content: right;
}

.vertical-writing .globalNav-tel li {
	letter-spacing: 0.2em;
	font-size: 1.6rem;
}
.vertical-writing .globalNav-tel a {padding: 15px 15px 20px;}
.vertical-writing .globalNav-tel a:hover {opacity: 0.7;}

.vertical-writing .globalNav-tel .sub-menu li {
	width: 0;
	position: relative;
}
.vertical-writing .globalNav-tel .sub-menu li:before {
	content: '-';
	display: inline-block;
	position: absolute;
	right: 10px;
	top: 25px;
}
.vertical-writing .globalNav-tel li:hover .sub-menu li {width: 48px;}
.vertical-writing .globalNav-tel li .sub-menu li a {padding: 35px 10px 20px;}

@media screen and ( max-width: 1100px) {
	.globalNav.align-writing {display: none;}
}
@media screen and ( max-width: 767px) {
	.globalNav.vertical-writing {display: none;}
}

/* ---------------------------
			main
---------------------------*/
.single-main .content-wrapper {
	max-width: 1100px;
	margin: 0 auto;		
}