/*==========================================================================

   mixin

===========================================================================*/
/*--------------------------------------------------------------------------
   overwrite
---------------------------------------------------------------------------*/
.g-header .gnav__item--company a {
	background-color: rgba(255, 255, 255, .5);
}

/*--------------------------------------------------------------------------
   common
---------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
   #sec-contents
---------------------------------------------------------------------------*/
.sec-contents {
	margin-top: 55px;
}

@media only screen and (max-width: 767px) {
	.sec-contents {
		margin-top: 35px;
	}
}

.sec-contents__hdg {
	text-align: center;
	font-size: 16px;
}

@media only screen and (max-width: 767px) {
	.sec-contents__hdg {
		font-size: 13px;
	}
}

.sec-contents__txt {
	margin-top: 30px;
	line-height: 2.4;
}

@media only screen and (max-width: 767px) {
	.sec-contents__txt {
		margin-top: 20px;
		font-size: 11px;
		line-height: 2.5;
	}
}

.sec-contents__txt + .sec-contents__hdg {
	margin-top: 90px;
}

@media only screen and (max-width: 767px) {
	.sec-contents__txt + .sec-contents__hdg {
		margin-top: 40px;
	}
}

.sec-contents__table {
	display: -ms-flexbox;
	display: flex;
	margin-top: 20px;

	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table {
		display: block;
		margin-top: 0;
		font-size: 11px;
	}
}

.sec-contents__table + .sec-contents__hdg {
	margin-top: 100px;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table + .sec-contents__hdg {
		margin-top: 60px;
	}
}

.sec-contents__table-hdg {
	width: 270px;
	padding: 25px 0;
	border-bottom: 1px solid #6f6a64;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-hdg {
		width: auto;
		padding: 20px 0 0;
		border-bottom: 0;
	}
}

.sec-contents__table-txt {
	width: calc(100% - 270px);
	padding: 25px 0;
	border-bottom: 1px solid #6f6a64;
	line-height: 2.1;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-txt {
		width: auto;
		padding: 10px 0 20px;
	}
}

.sec-contents__table-txt .address {
	display: -ms-flexbox;
	display: flex;

	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.sec-contents__table-txt .address__hdg {
	width: 60px;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-txt .address__hdg:not(:first-of-type) {
		margin-top: 10px;
	}
}

.sec-contents__table-txt .address__body {
	display: -ms-flexbox;
	display: flex;
	width: calc(100% - 60px);
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-txt .address__body {
		display: block;
	}
	.sec-contents__table-txt .address__body:not(:first-of-type) {
		margin-top: 10px;
	}
}

.sec-contents__table-txt .address__zip {
	width: 100px;
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-txt .address__zip {
		display: block;
		width: auto;
	}
}

.sec-contents__table-txt .address__txt {
	width: calc(100% - 100px);
}

@media only screen and (max-width: 767px) {
	.sec-contents__table-txt .address__txt {
		display: block;
		width: auto;
		line-height: 1.7;
	}
}

.mode-pc .sec-contents__table-txt a:hover {
	text-decoration: underline;
}

.sec-contents__table-txt a[href*='tel:'] {
	text-decoration: none;
	cursor: text;
}

.mode-pc .sec-contents__table-txt a[href*='tel:']:hover {
	text-decoration: none;
}

.sec-contents__map {
	margin-top: 30px;
}

/*--------------------------------------------------------------------------
   #sec-access
---------------------------------------------------------------------------*/
.sec-access {
	margin-top: 55px;
}

@media only screen and (max-width: 767px) {
	.sec-access {
		margin-top: 35px;
	}
}

.sec-access__hdg {
	text-align: center;
	font-size: 16px;
}

@media only screen and (max-width: 767px) {
	.sec-access__hdg {
		font-size: 13px;
	}
}

.sec-access__txt {
	margin-top: 30px;
	line-height: 2.4;
}

@media only screen and (max-width: 767px) {
	.sec-access__txt {
		margin-top: 20px;
		font-size: 11px;
		line-height: 2.5;
	}
}

.sec-access__map {
	margin-top: 30px;
}

.sec-access__map iframe {
	        filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feColorMatrix type="matrix" color-interpolation-filters="sRGB" values="0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0" /></filter></svg>#filter');
	-webkit-filter: grayscale(100%);
	        filter: grayscale(100%);
}

.sec-access__map iframe {
	width: 100%;
}

@media only screen and (max-width: 767px) {
	.sec-access__map iframe {
		height: 300px;
	}
}
