﻿@charset "UTF-8";

/* menuitem PCのみの表示用 */

.menuitem {
	padding-top: 6px;
	border-bottom: 3px solid #e6e3df;
	background: #fff;
	width: 100%;
}
.menuitem.sticky {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #fff;
	z-index: 2;
}
.menuitem .inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: baseline;
	margin: 0 auto;
	width: 980px;
}
.menuitem #topUtility01 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex: .96;
	flex: .96;
	margin-bottom: -3px;
}

.menuitem #topUtility01 > li {
	background: #fff;
	overflow: hidden;
	flex-grow: 1;
	-webkit-flex-grow: 1;
}

.menuitem #topUtility01 > li > a,
.menuitem #topUtility01 > li > span {
	display: block !important;
	text-decoration: none;
	/*font-weight: bold;*/
	font-size: 15px;
	text-align: center;
	flex-grow: 1;
	-webkit-flex-grow: 1;
	position: relative;
	align-items: center;
	-webkit-align-items: center;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	cursor: pointer;
	padding: 12px 0 16px 0;
	border-bottom: 3px solid #e6e3df;
	height: 100%;
	box-sizing: border-box;
	z-index: 1;
	color: #333;
}

.menuitem #topUtility01 > li:nth-child(1) {
	-webkit-flex: 0 0 192px;
	flex: 0 0 192px;
}

.menuitem #topUtility01 > li > a:hover,
.menuitem #topUtility01 > li.current > a {
	color: #e8803f;
}
.menuitem #topUtility01 > li > a:hover:before,
.menuitem #topUtility01 > li.current > a:before,
.menuitem #topUtility01 > li.current > span:before {
	content: "";
	position: absolute;
	bottom: -3px;
	left: 0;
	width: 100%;
	border-bottom: 3px solid #e8803f;
	z-index: 2;
}

.menuitem #topUtility01 > li.megamenu:hover {
	background-color: #2e3036;
	border-radius: 7px 7px 0 0;
}

.menuitem #topUtility01 li.current > span,
.menuitem #topUtility01 li.current > a{
	color: #e8803f;
}

.menuitem #topUtility01 > li.megamenu:hover > a,
.menuitem #topUtility01 > li.megamenu:hover > span {
	color: #fff;
}
.menuitem #topUtility01 > li.megamenu:hover span:before {
	border-bottom: 3px solid #444;
}

.menuitem #topUtility01 > li > div {
	display: none;
	width: 100%;
	/* background-color: #373940; */
	background-color: #2e3036;
	padding: 45px 10px;
	position: absolute;
	z-index: 99;
	left: 0;
	margin: 0;
	margin-top: -3px;
	list-style: none;
	box-sizing: border-box;
}

.megamenuInner .rows {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	font-size: 13px;
}
.megamenuInner .rows .col {
	padding: 0 40px 0 30px;
	border-left: 1px solid #28292b;
	color: #fff;
}
.megamenuInner .rows .col:nth-child(1) {
	padding: 20px 0;
	display: -webkit-flex;
	display: flex;
	flex: 0 0 920px;
	align-content: center;
	justify-content: space-between;
	-webkit-align-content: center;
	-webkit-flex-wrap: wrap;
	row-gap: 25px;
	flex-wrap: wrap;
	text-align: center;
	border-left: none;
}
.megamenuInner .rows .col:nth-child(4) {
	-webkit-flex: 0 0 260px;
	flex: 0 0 260px;
}
.megamenuInner .rows .col:nth-child(5) {
	border-left: none;
}
.megamenuInner .rows .col:nth-child(1) > div {
	-webkit-flex: 0 0 100%;
	flex: 0 0 100%;
}
.megamenuInner .rows .col:nth-child(1) .midashi {
	margin-top: 30px;
}
.megamenuInner .rows .col:nth-child(1) a {
	color: #fff;
	text-decoration: none;
}
.megamenuInner .rows .col:nth-child(1) a:hover{
	text-decoration: underline;
}
.megamenuInner .rows .col .title {
	font-weight: bold;
	font-size: 112%;
	text-align: left;
}

.megamenuInner .rows .col.itMenu a {
	padding: 12px 0 0px 15px;
	display: block;
	position: relative;
	width: 33%;
	text-align: left;
	box-sizing: border-box;
	letter-spacing: 0.1em;
	font-weight: normal;
	font-size: 13px;
	background: url(/common2/images/com_ic010on.png) no-repeat 0 1.3em;
}
.megamenuInner .rows .col.pattern01 a:nth-child(3n-2),
.megamenuInner .rows .col.pattern01 a:nth-child(3n){
	width: 30%;
}
.megamenuInner .rows .col.pattern01 a:nth-child(3n-1){
	width: 40%;
}


.megamenuInner .rows .col ul {
	margin-top: 20px;
}
.megamenuInner .rows .col ul li {
	padding: 3px 0;
}
.megamenuInner .rows .col ul li a {
	color: #fff;
	text-decoration: none;
}
.megamenuInner .rows .col ul li a:hover {
	text-decoration: underline;
}
.megamenuInner .rows .col .series {
	margin-top: 25px;
}
.megamenuInner .rows .col .series a:hover {
	opacity: .8;
}
.menuitem #topUtility01 > li:nth-child(2) span:after {
	content: "▼";
	display: inline-block;
	margin-left: 5px;
	font-size: 15px;
}
.menuitem #topUtility01 > li:nth-child(5) > a:after {
	content: url(../images/icon_outlink.svg);
	display: inline-block;
	margin-left: 5px;
}

.menuitem .contactBtn a {
	padding: 6px 18px;
	text-align: center;
	line-height: 1.2;
	border-radius: 4px;
	background-color: #e8803f;
	/*font-weight: bold;*/
	font-size: 15px;
	color: #fff;
	text-decoration: none;
}
.menuitem .contactBtn a:hover {
	opacity: .8;
}

.menuitem .contactBtn a:nth-child(n+2){
	margin-left: 14px;
}

.inMenuBtn{
	flex: none !important;
}

/*header共通化調整用*/
#header{
	font-size: 62.5%;
	line-height: 1.8;
}

/* js表示からcss表示に megamenuからmegamenu2へ */

.menuitem #topUtility01 > li.megamenu2 > div.megamenuInner {
	display: block;
	-webkit-transition: all 0.15s;
	transition: all 0.15s;
	opacity: 0;
	z-index: -10;
}
.menuitem #topUtility01 > li.megamenu2:hover {
	background-color: #2e3036;
	border-radius: 7px 7px 0 0;
}
.menuitem #topUtility01 > li.megamenu2:hover a,
.menuitem #topUtility01 > li.megamenu2:hover span,
.menuitem #topUtility01 > li.megamenu2:hover a span {
	color: #FFF;
}
.menuitem #topUtility01 > li.megamenu2:hover > div.megamenuInner {
	display: block;
	opacity: 1;
	z-index: 10;
}
.menuitem.fixed #topUtility01 > li.megamenu2 > div.megamenuInner {
	display: none;
}
.menuitem.fixed #topUtility01 > li.megamenu2:hover > div.megamenuInner {
	display: block;
}