@charset "utf-8";




/* ------------------------------------------------------------------------------------------------
 * RESPONSIVE
 * ------------------------------------------------------------------------------------------------ */
@media screen and (max-width:1199px) {
	
	
	
	
	.g-header-logo {
		margin: 0;
		left: 0;
	}
	
	
	
	
} /* END RESPONSIVE 979px */




@media screen and (max-width:959px) {
} /* END RESPONSIVE 979px */




@media screen and (max-width:767px) {

	html {
		overflow: auto;
	}
	
	html.is-open {
		height: auto;
		overflow: hidden;
	}
	
	.g-body {
		color: #222;
		min-width: 0;
	}
	
	.g-body:before,
	.g-body:after {
	}

	.u-show-media {
		display: inline-block !important;
	}

	.u-hide-media {
		display: none !important;
	}

	.u-sp-zoom {
		color: rgba(0,0,0,.5);
		font-size: 1rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0;
		text-align: center;
		width: 100%;
		margin: 15px 0 0;
		padding: 7px 10px;
		display: block;
		background: rgba(100,100,100,.2);
		border-radius: 50px;
	}
	
	.js-zoom-link:hover {
		opacity:1;
	}
	
	.u-into-scroll {
		width: 100%;
		margin-bottom: 30px;
		padding-top: 25px;
		overflow: auto;
		position: relative;
		-webkit-overflow-scrolling: touch;
	}
	
	.u-into-scroll:before {
		content: '※表は横スクロールで見れます｡';
		font-size: 1.2rem;
		font-weight: 400;
		letter-spacing: .05em;
		display: block;
		margin: 0 0 10px;
		position: absolute;
		top: 0;
	}
	
	.u-into-scroll::-webkit-scrollbar{
		height: 5px;
	}
	.u-into-scroll::-webkit-scrollbar-track{
		background: #F1F1F1;
	}
	.u-into-scroll::-webkit-scrollbar-thumb {
		background: #BCBCBC;
	}
	
	.u-into-scroll .u-table {
		width:700px;
		margin-bottom: 10px;
	}
	
	.u-text_set-iamge,
	.u-text_set.is-photo-right .u-text_set-iamge {
		width: 100%;
		padding: 0 0 30px;
		position: relative;
	}
	
	.u-text_set-iamge:after {
		content: '';
		display: block;
		clear: both;
	}
	
	.u-text_set-iamge .u-text_set-img {
		width: 50%;
		display: inline-block;
	}
	
	.u-text_set-caption {
		vertical-align: bottom;
		display: inline-block;
		padding: 0 0 0 20px;
	}
	
	.u-text_set .u-text-read,
	.u-text_set.is-photo-right .u-text-read{
		padding: 0;
	}
	
	.g-container {
		padding: 60px 0 30px;
	}
	
	
	
	
/* ----------------------------------------------------------------------
 * GLOBAL - UTILITY
 * ---------------------------------------------------------------------- */
	.u-content {
		padding: 40px 0 0;
	}
	
	.u-inner {
		width: 100%;
		max-width: none;
		padding-right: 15px;
		padding-left: 15px;
	}
	
	.u-corner_title-high {
		font-size: 2rem;
		background: url(/en/assets/img/global/title-01@media.png) repeat-x left bottom / auto 3px;
	}
	
	.u-corner_title-high:after {
		width: 100px;
	}
	
	.u-corner_title-high .e-note {
		font-size: 1.3rem;
		margin: 0;
		display: block;
	}
	
	.u-corner_title-middle {
		font-size: 1.6rem;
		margin: 0 0 15px;
		padding: 12.5px 12.5px 15.5px 35px;
		background-size: 6px auto;
	}
	
	
	
	
	
	
	
	
	
	
	.u-table {
		border-top: 0;
	}
	
	.u-table-title {
		width: 100%;
		padding: 12.5px;
		display: block;
	}
	
	.u-table-item {
		line-height: 1.5;
		border-top: 0;
		width: 100%;
		padding: 12.5px;
		border-bottom: 0;
		display: block;
	}
	
	.g-breadcrumb {
		display: none;
	}
	
	.u-into-scroll .u-table-title {
		width: auto;
		min-width: 100px;
		display: table-cell;
	}
	
	.u-into-scroll .u-table-item {
		white-space: nowrap;
		width: auto;
		display: table-cell;
	}
	
	/* content title */
	.u-content-title {
		height: 150px;
	}
	
	.u-content-title .e-main {
		font-size: 2.6rem;
	}
	
	.u-content-title .e-sub {
		font-size: 1.4rem;
		bottom: 10px;
	}
	
	
	
	
	
	
	
	
	
	
	
/* ------------------------------------------------------------------------------------------------
 * Header
 * ------------------------------------------------------------------------------------------------ */
	.g-header {
		width: 100%;
		min-width: 0;
		height: 60px;
		position: fixed;
		z-index: 1000;
		top: 0;
		left: 0;
	}
	
	.g-header-logo {
		width: 215px;
		margin: 0;
		top: 15px;
		left: 15px;
	}
	
	.g-header-menu {
		width: 100%;
		height: auto;
		padding: 0;
		background: #fff;
		position: absolute;
		top: 60px;
		left: 0;
		visibility: hidden;
		opacity: 0;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
	}
	
	.is-open .g-header-menu {
		height: -webkit-calc(100vh - 60px);
		height: calc(100vh - 60px);
		visibility: visible;
		opacity: 1;
	}
	
	.g-header-menu-inner {
		width: 100%;
		height: 100%;
		padding: 0 25px 25px;
		border-top: 1px solid #ddd;
		overflow-y: scroll;
	}
	
	.g-header-menu_list {
		width: 100%;
		padding: 0 0 25px;
	}
	
	.g-header-menu_wrap {
		width: 100%;
	}
	
	.g-header-menu_item {
		width: 100% !important;
		border-bottom: 1px solid #ddd;
		position: relative;
	}
	
	.g-header-menu_item > .e-link,
	:lang(en) .g-header-menu_item > .e-link {
		font-size: 1.6rem;
		text-align: left;
		height: auto;
		padding: 15px 0;
	}
	
	.g-header-menu_item.js-menu_btn:after {
		content: '';
		width: 24px;
		height: 24px;
		background: #888;
		border-radius: 50%;
		position: absolute;
		top: 10px;
		right: 0;
	}
	
	.g-header-menu_item.js-menu_btn > .e-link:before {
		content: '';
		width: 12px;
		height: 2px;
		display: inline-block;
		background: #fff;
		position: absolute;
		top: 21px;
		right: 6px;
		z-index: 10;
	}
	
	
	.g-header-menu_item.js-menu_btn > .e-link:after {
		content: '';
		width: 2px;
		height: 12px;
		display: inline-block;
		background: #fff;
		position: absolute;
		top: 16px;
		right: 11px;
		z-index: 10;
	}

	.g-header-menu_item.js-menu_btn.is-on > .e-link:after {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	
	.g-header-menu_item .e-button {
		font-weight: 700;
		height: auto;
		padding: 0;
	}
	
	/* Child */
	.g-header-menu-child {
		min-width: 0;
		border: 0;
		position: relative;
		top: auto;
		left: auto;
	}
	
	.g-header-menu-child .e-image-inner {
		display: none;
	}
	
	.g-header-menu-child-wrap {
		margin: 0;
		padding: 0 0 15px !important;
	}
	
	.g-header-menu-child .e-item {
		width: 100% !important;
		margin: 0;
		padding: 7px 0;
		display: block;
	}
	
	.g-header-menu-child .e-item:nth-child(1) {
		padding-top: 5px;
	}
	
	.g-header-menu-child .e-link {
		color: #666;
	}
	
	.g-header-menu-child .e-link .e-main {
		font-weight: 400;
		padding: 0 0 0 30px;
	}
	
	.g-header-menu-child .e-link .e-main:before {
		left: 15px;
	}
	
	.g-header-menu-child .e-link .e-sub {
		padding: 0 0 0 10px;
		display: inline-block;
	}
	
	.g-header-menu_item.is-contact,
	:lang(en) .g-header-menu_item.is-contact {
		width: 50% !important;
		padding: 25px 0 0;
		border: 0;
	}
	
	.g-header-menu_item:nth-child(7) > .e-link {
		text-align: center;
		width: 100%;
	}
	
	.g-header-menu_item.is-en,
	:lang(en) .g-header-menu_item.is-jp {
		width: 50% !important;
		padding: 25px 0 0;
		border: 0;
	}
	
	.g-header-menu_item:nth-child(8) > .e-link {
		text-align: center;
		width: 100%;
	}
	
	.g-header-menu-inner .e-button_close {
		color: #888;
		font-size: 1.6rem;
		text-align: center;
		width: 100%;
		padding: 15px 0;
		border: 1px solid #ddd;
		display: inline-block;
	}
	
	/* Smartphone Nav Button */
	.g-header-nav_button {
		width:60px;
		height:60px;
		display:inline-block;
		position:absolute;
		top:0;
		right:0;
	}
	
	.g-header-nav_button:after {
		content: '';
		width: 92px;
		height: 60px;
		display: inline-block;
		background: #76b414;
		-webkit-transform-origin: left top;
		transform-origin: left top;
		-webkit-transform: skew(-35deg) translateX(10px);
		transform: skew(-35deg) translateX(10px);
	}
	
	.g-header-nav_button .line {
		display: block;
		width: 30px;
		height: 3px;
		background: #fff;
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		z-index: 10;
	}

	.g-header-nav_button .line.is-top {
		margin-top: -10px;
	}

	.g-header-nav_button .line.is-bottom {
		margin-top: 10px;
	}

	.is-open .g-header-nav_button .line.is-top {
		margin-top: auto;
		-webkit-transform: translate(-50%,-50%) rotate(-135deg);
		transform: translate(-50%,-50%) rotate(-135deg);
	}

	.is-open .g-header-nav_button .line.is-center {
		width: 0;
		height: 0;
		opacity: 0;
	}

	.is-open .g-header-nav_button .line.is-bottom {
		margin-top: auto;
		-webkit-transform: translate(-50%,-50%) rotate(135deg);
		transform: translate(-50%,-50%) rotate(135deg);
	}
	
	
	/* ------------------------------------------------------------------------------------------------
 * Content Current
 * ------------------------------------------------------------------------------------------------ */
	.is-company .g-header-menu_item.is-company .e-link .e-button:after,
	.is-field .g-header-menu_item.is-field .e-link .e-button:after,
	.is-product .g-header-menu_item.is-product .e-link .e-button:after,
	.is-activity .g-header-menu_item.is-activity .e-link .e-button:after,
	.is-faq .g-header-menu_item.is-faq .e-link .e-button:after,
	.is-recruit .g-header-menu_item.is-recruit .e-link .e-button:after {
		display: none;
	}
	
	
	
	
/* ------------------------------------------------------------------------------------------------
 * Footer
 * ------------------------------------------------------------------------------------------------ */
	.g-footer {
	}
	
	.g-footer-title {
		padding: 30px 0;
	}
	
	.g-footer-title .e-title {
		margin: 0 0 10px;
	}
	
	.g-footer-title .e-mark {
		text-align: center;
		position: relative;
		top: auto;
		right: auto;
	}
	
	.g-footer-title .e-mark .e-img {
		width: 140px;
	}
	
	.g-footer-title:after {
		display: none;
	}
	
	.g-footer-sitemap {
		display: none;
	}
	
	.g-footer-bottom {
		padding: 0 0 50px;
	}
	
	.g-footer-bottom .e-wrap {
		margin: 0 -15px 50px;
		float: none;
	}
	
	.g-footer-bottom .e-wrap .e-item {
		font-size: 1.4rem;
		border-bottom: 1px solid #ddd;
	}
	
	.g-footer-bottom .e-link {
		text-align: center;
		padding: 15px 0;
		display: block;
	}
	
	.g-footer-copyright {
		font-size: 1.4rem;
		text-align: center;
		float: none;
	}
	
	.c-page_top .e-link {
		width: 40px;
		height: 40px;
		background-size: 15px auto;
		background-position: center 16px;
	}
	
	.c-page_top {
		top: -40px;
		right: 0;
	}
	
	
	:lang(en) .g-header-logo {
		width: 250px;
	}
	
	:lang(en) .g-header-menu_item:nth-of-type(6) {
		margin: 0 0 0;
		border-bottom: 0;
	}
	
	:lang(en) .g-header-menu_item:nth-child(6) > .e-link {
		text-align: center;
		width: 100%;
		padding-right: 0;
	}
	
	:lang(en) .g-header-menu-child .e-link .e-main {
		min-height: 0;
		margin: 0 0 5px;
		display: block;
	}
	
	:lang(en) .g-header-menu-child .e-link .e-sub {
		margin: 0;
		padding: 0 0 0 30px;
	}
	
	:lang(en) .u-table-title {
		width: 100%;
	}
	
	:lang(en) .g-footer-bottom {
		padding: 20px 0;
	}
	
	:lang(en) .g-header-menu_item:nth-child(7) > .e-link {
		width: 100%;
	}
	
	
} /* END RESPONSIVE 767px */




/* ------------------------------------------------------------------------------------------------
 * RESPONSIVE
 * ------------------------------------------------------------------------------------------------ */
@media screen and (max-width:374px) {
	:lang(en) :lang(en) .g-header-logo {
		width: 200px;
		top: 17px;
	}
	
	
	
} /* END RESPONSIVE 320px */




@media print {
	
	
	
	
	html {
		margin: 0;
		padding: 0;
	}

	.g-body {
		transform-origin: top center;
		-webkit-transform: scale(.9, .9);
		transform: scale(.9, .9);
	}
	
	
	
	
} /* END PRINT */