@charset "UTF-8";
/*
* chiyeya web site
* main.css
*
*/
/* ------------------------
	Foundation
------------------------ */
html,
body {
	height: 100%;
}

*,
*:after,
*:before {
	box-sizing: border-box;
}

* {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
}

pre,
textarea {
	overflow: auto;
}

[hidden],
audio:not([controls]),
template {
	display: none;
}

details,
main,
summary {
	display: block;
}

input[type=number] {
	width: auto;
}

input[type=search] {
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

progress {
	display: inline-block;
}

small {
	font-size: 75%;
}

sub,
sup {
	position: relative;
	vertical-align: baseline; 
	font-size: 75%;
	line-height: 0;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

textarea {
	resize: vertical;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

img {
	border: 0; 
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	min-height: 1.5em;
	color: inherit;
	font-family: inherit; 
	font-weight: inherit;
	font-style: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer; 

	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0; 
	border: 0;
}

input {
	line-height: normal;
}

code,
kbd,
pre,
samp {
	font-family: monospace,monospace;
}

ol,
ul {
	list-style: none;
}

select {
	   -moz-appearance: none;
	-webkit-appearance: none;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

fieldset {
	border: 0;
}

/* ------------------------
	Base Settings
------------------------ */
html {
	font-size: 62.5%;
}

body {
	background-color: #fff;
	word-wrap: break-word; 
	color: #1a1b19;
	font-family: "Noto Sans Japanese", YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
	line-height: 1.4;

	-webkit-font-smoothing: antialiased;
	        font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

a {
	text-decoration: none; 
	color: #1a1b19;
}
a:visited {
	color: #1a1b19;
}
a:hover {
	text-decoration: none; 
	color: #1a1b19;
}
a:active {
	text-decoration: none; 
	color: #1a1b19;
}
a[href^="tel:"] {
	cursor: text; 
	text-decoration: none;
}

::-moz-selection {
	background-color: #036eb8;
	color: #fff;
	text-shadow: none;
}

::selection {
	background-color: #036eb8;
	color: #fff;
	text-shadow: none;
}

/* ------------------------
	utilities Classes
------------------------ */
.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	overflow: hidden;
	clip: rect(0 0 0 0);
	position: absolute;
	margin: -1px;
	padding: 0;
	border: 0;
	width: 1px; 
	height: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	overflow: visible;
	clip: auto;
	position: static;
	margin: 0;
	width: auto; 
	height: auto;
}

.invisible {
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* ------------------------
	余白 調整用class
------------------------ */
.mt-0 {
	margin-top: 0px !important;
}

.mb-0 {
	margin-bottom: 0px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

/* ------------------------
	text-align 調整用class
------------------------ */
.align-center {
	text-align: center !important;
}

.align-left {
	text-align: left !important;
}

.align-right {
	text-align: right !important;
}

.imgReplace {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%; 
	font-size: 0;
}

.js-hide {
	opacity: 0;
	-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.4s cubic-bezier(0, 0, 0.58, 1); 
	-webkit-transform: translateY(-10px); 
	        transform: translateY(-10px);
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(2) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(3) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(4) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1);
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1);
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(5) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(6) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(7) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1);
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1);
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(8) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.2s;
	}
}
@media screen and (min-width: 1024px), print {
	.js-hide:nth-child(9) {
		-webkit-transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
		transition: all 0.4s cubic-bezier(0, 0, 0.58, 1) 0.4s;
	}
}
.js-hide.js-show {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
.flow .js-hide {
	-webkit-transition: all 0.6s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.6s cubic-bezier(0, 0, 0.58, 1);
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

/* --------------------------------
  mask
-------------------------------- */
.mask {
	display: none;
	opacity: 0.9;
	position: fixed;
	z-index: 3; 
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #201f21;
}

/* --------------------------------
  header
-------------------------------- */
.hdr {
	position: fixed;
	z-index: 2; 
	top: 0;
	left: 0;
	width: 100%;
	height: 49px;
	background: #fff;
}
@media screen and (min-width: 736px), print {
	.hdr {
		height: 60px;
	}
}
@media screen and (min-width: 1024px), print {
	.hdr {
		position: static;
		height: 140px;
	}
}

.hdr_inr {
	position: relative;
	width: 100%;
}
@media screen and (min-width: 1024px), print {
	.hdr_inr {
		margin: 0 auto;
		width: 1024px;
	}
}

.hdr_logo {
	position: absolute;
	z-index: 2; 
	top: 0;
	left: 0;
	width: 77px;
	height: 114px;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s, -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	background: url(/assets/img/common/logo_sp.png) no-repeat;
	background-size: 100% auto;
}
@media screen and (min-width: 736px), print {
	.hdr_logo {
		width: 96.25px;
		height: 142.5px;
	}
}
@media screen and (min-width: 1024px), print {
	.hdr_logo {
		width: 153px;
		height: 227px;
		background: url(/assets/img/common/logo_pc.png) no-repeat;
		background-size: 100% auto;
	}
}
.container-navChange .hdr_logo {
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s, -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s; 
	-webkit-transform: translateY(-100%); 
	        transform: translateY(-100%);
}
@media screen and (min-width: 1024px), print {
	.container-navChange .hdr_logo {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

.spHdr_logo {
	position: fixed;
	top: 0;
	left: 0;
	width: 110px;
	height: 49px;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s, -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0s; 
	-webkit-transform: translateY(-100%); 
	        transform: translateY(-100%);
	background: url(/assets/img/common/navlogo_sp.png) no-repeat;
	background-size: 100% auto;
}
@media screen and (min-width: 736px), print {
	.spHdr_logo {
		width: 137.5px;
		height: 61.25px;
	}
}
.container-navChange .spHdr_logo {
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s;
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s, -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1) 0.6s; 
	-webkit-transform: translateY(0); 
	        transform: translateY(0);
}
.spHdr_logo a {
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 1024px), print {
	.spHdr_logo {
		display: none;
	}
}

.hdr_forPc {
	display: none;
}
@media screen and (min-width: 1024px), print {
	.hdr_forPc {
		display: block;
	}
}

.hdr_top {
	width: 100%;
	height: 54px;
	background-image: url(/assets/img/common/hdr_bg_b.png);
}
.hdr_top .hdr_inr {
	padding-left: 187px;
}

.hdr_lead {
	color: #8f908d;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 54px;
}

.hdr_info {
	position: absolute;
	top: 0;
	right: 0;
	width: 372px;
	height: 100%;
	color: #fff;
	font-weight: bold;
}

.hdr_contact,
.hdr_tel {
	float: right;
	height: 100%;
	text-align: center;
	line-height: 54px;
}

.hdr_contact {
	width: 152px;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
}
.hdr_contact a {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: background 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: background 0.2s cubic-bezier(0, 0, 0.58, 1); 
	background-color: #628e34;
	color: #fff;
}
.no-touch .hdr_contact a:hover {
	opacity: 1;
	background-color: #446e1f;
}

.hdr_tel {
	width: 220px;
	background-image: url(/assets/img/common/hdr_bg_g.png);
	font-size: 20px;
	font-size: 2.0rem;
}
.hdr_tel span {
	position: relative;
	padding-left: 20px;
}
.hdr_tel span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 14px;
	height: 14px;
	background: url(/assets/img/common/icon_tel.svg) no-repeat;
	background-size: 100% auto;
}

.hdr_nav .hdr_inr {
	padding-left: 171px;
}

.hdr_navItem {
	float: left;
	height: 100%;
	text-align: center;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold; 
	line-height: 86px;
}
.hdr_navItem:nth-child(1) {
	width: 140px;
}
.hdr_navItem:nth-child(2) {
	width: 122px;
}
.hdr_navItem:nth-child(3) {
	width: 136px;
}
.hdr_navItem:nth-child(4) {
	width: 96px;
}
.hdr_navItem:nth-child(5) {
	width: 90px;
}
.hdr_navItem:nth-child(n+2) {
	position: relative;
}
.hdr_navItem:nth-child(n+2):before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -1px;
	margin: auto;
	width: 1px;
	height: 14px;
	background-color: #e3e3e3;
}
.hdr_navItem a {
	display: block;
	width: 100%;
	height: 100%;
}
.hdr_navItem a:hover {
	opacity: 1;
}
.no-touch .hdr_navItem a:hover span:before {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
.hdr_navItem span {
	position: relative;
}
.hdr_navItem span:before {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	top: auto;
	right: 0;
	bottom: -15px;
	left: 0;
	margin: auto;
	width: 100%;
	height: 2px;
	-webkit-transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
	-webkit-transform: translateY(10px);
	        transform: translateY(10px);
	background-color: #608f2d;

	-webkit-backface-visibility: hidden;

	        backface-visibility: hidden;
}

.hdr_navBtn {
	position: absolute;
	top: 0;
	right: 171px;
	bottom: 0;
	margin: auto;
	width: 96px;
	height: 34px;
	text-align: center;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold; 
	line-height: 32px;
}
.hdr_navBtn a {
	display: block;
	border: solid 1px #e3e3e3;
	width: 100%;
	height: 100%;
	-webkit-transition: background 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: background 0.2s cubic-bezier(0, 0, 0.58, 1); 
	color: #39632c;
}
.no-touch .hdr_navBtn a:hover {
	opacity: 1; 
	border: solid 1px #608f2d;
	background: #608f2d;
	color: #fff;
}
.no-touch .hdr_navBtn a:hover span:before {
	background: url(/assets/img/common/icon_dl_w.svg) no-repeat;
	background-size: 100% auto;
}
.hdr_navBtn span {
	position: relative;
	padding-right: 13px;
}
.hdr_navBtn span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 12px;
	background: url(/assets/img/common/icon_dl_g.svg) no-repeat;
	background-size: 100% auto;
}

.hdr_navBnr {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 152px;
	height: 55px;
}
.hdr_navBnr a {
	-webkit-transition: opacity 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: opacity 0.2s cubic-bezier(0, 0, 0.58, 1);
}
.no-touch .hdr_navBnr a:hover {
	opacity: 0.6;
}

.spNav {
	overflow-y: scroll;
	position: fixed;
	z-index: 4; 
	top: 0;
	left: 0;
	margin-top: 49px;
	padding-bottom: 49px;
	width: 100%;
	height: 100%;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
	transition: -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0, 0, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0, 0, 0.58, 1);
	-webkit-transform: translateX(100%);
	        transform: translateX(100%);
	background: #fff;

	-webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 736px), print {
	.spNav {
		margin-top: 60px;
	}
}
.container-navOpen .spNav {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}

.spNav_contact,
.spNav_tel {
	float: left;
	width: 50%;
	height: 50px;
	height: calc((100vh - 50px) * 0.1);
	text-align: center;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold; 
	line-height: 50px;
	line-height: calc((100vh - 50px) * 0.1);
}
@media screen and (min-width: 736px), print {
	.spNav_contact,
	.spNav_tel {
		height: 70px;
		font-size: 1.6rem;
		line-height: 70px;
	}
}
.spNav_contact a,
.spNav_tel a {
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
}

.spNav_contact {
	background-color: #628e34;
}

.spNav_tel {
	background-color: #1a1b19;
}
.spNav_tel span {
	position: relative;
	padding-left: 16px;
}
.spNav_tel span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 12px;
	height: 12px;
	background: url(/assets/img/common/icon_tel.svg) no-repeat;
	background-size: 100% auto;
}

.spNav_item {
	border-bottom: solid 1px #ceccc2;
	width: 100%;
	height: 50px;
	height: calc((100vh - 50px) * 0.1);
	background: #e6e4d8; 
	text-align: center;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 50px;
	line-height: calc((100vh - 50px) * 0.1);
}
@media screen and (min-width: 736px), print {
	.spNav_item {
		height: 70px;
		font-size: 1.6rem;
		line-height: 70px;
	}
}
.spNav_item a {
	display: block;
	width: 100%;
	height: 100%;
}

.spNav_subItem {
	float: left;
	border-bottom: solid 1px #e3e3e3; 
	width: 50%;
	height: 43px;
	height: calc((100vh - 50px) * 0.095);
	background-color: #f6f6f6;
	text-align: center;
	font-size: 11px;
	font-size: 1.1rem;
	line-height: 43px;
	line-height: calc((100vh - 50px) * 0.095);
}
@media screen and (min-width: 736px), print {
	.spNav_subItem {
		height: 60px;
		font-size: 1.4rem;
		line-height: 60px;
	}
}
.spNav_subItem:nth-child(2n) {
	border-left: solid 1px #e3e3e3;
}
.spNav_subItem-output a {
	color: #39632c;
	font-weight: bold;
}
.spNav_subItem a {
	display: block;
	width: 100%;
	height: 100%;
}
.spNav_subItem span {
	position: relative;
	padding-right: 15px;
}
.spNav_subItem span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 12px;
	background: url(/assets/img/common/icon_dl_g.svg) no-repeat;
	background-size: 100% auto;
}

.spNav_bnr {
	padding: 12px 0;
	padding: calc((100vh - 50px) * 0.05) 0;
}
@media screen and (min-width: 736px), print {
	.spNav_bnr {
		padding: 30px 0 0;
	}
}

.spNav_bnrItem {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 8px 33px 0 12px;
	border: solid 1px #e3e3e3;
	width: 278px;
	height: 58px;
	height: calc((100vh - 50px) * 0.1);
	min-height: 58px;
	text-align: center;
	letter-spacing: -1px; 
	font-size: 18px; 
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
}
@media screen and (min-width: 736px), print {
	.spNav_bnrItem {
		padding: 10px 33px 10px 12px;
		width: 50%;
		height: auto;
		font-size: 2.2rem;
	}
}
.spNav_bnrItem:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 20px;
	height: 100%;
	background-color: #628e34;
}
.spNav_bnrItem:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 7px;
	bottom: 0;
	margin: auto;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	width: 8px;
	height: 8px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.spNav_bnrItem span {
	display: block;
	position: relative;
	margin-top: 6px;
	padding: 3px 0;
	background: #fbe704;
	letter-spacing: normal; 
	color: #39632c;
	font-size: 12px;
	font-size: 1.2rem;
}
@media screen and (min-width: 736px), print {
	.spNav_bnrItem span {
		padding: 5px 0; 
		font-size: 1.4rem;
	}
}
.spNav_bnrItem span:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 12px;
	background: url(/assets/img/common/icon_dl_g.svg) no-repeat;
	background-size: 100% auto;
}

.pcNav {
	display: none;
}
@media screen and (min-width: 1024px), print {
	.pcNav {
		display: block;
		position: fixed;
		z-index: 2; 
		top: 0;
		left: 0;
		width: 100%;
		height: 80px;
		-webkit-transition: -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1);
		transition: -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1);
		transition: transform 0.2s cubic-bezier(0, 0, 0.58, 1);
		transition: transform 0.2s cubic-bezier(0, 0, 0.58, 1), -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1);
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
		background-color: #fff;
	}
	.container-navChange .pcNav {
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
.pcNav .hdr_inr {
	padding-left: 171px;
	height: 100%;
}
.pcNav .hdr_contact,
.pcNav .hdr_navItem {
	line-height: 80px;
}

.pcNav_logo {
	position: absolute;
	top: 0;
	left: 0;
	width: 153px;
	height: 80px;
	background: url(/assets/img/common/navlogo_pc.png) no-repeat;
	background-size: 100% auto;
}
.pcNav_logo a {
	display: block;
	width: 100%;
	height: 100%;
}
.pcNav_logo a:hover {
	opacity: 1;
}

.hdr_hamburger {
	position: fixed;
	z-index: 5; 
	top: 0;
	right: 0;
	width: 49px;
	height: 49px;
	background: #fff;
}
@media screen and (min-width: 736px), print {
	.hdr_hamburger {
		width: 60px;
		height: 60px;
	}
}
@media screen and (min-width: 1024px), print {
	.hdr_hamburger {
		display: none;
	}
}
.hdr_hamburger span {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 23px;
	height: 3px;
	background: #628e34;
}
@media screen and (min-width: 736px), print {
	.hdr_hamburger span {
		width: 28.75px;
		height: 3.75px;
	}
}
.hdr_hamburger span:nth-child(1) {
	-webkit-transform: translateY(-8px);
	        transform: translateY(-8px);
}
.container-navOpen .hdr_hamburger span:nth-child(1) {
	-webkit-animation: hamburgerLineOn01 0.4s ease-out forwards;
	        animation: hamburgerLineOn01 0.4s ease-out forwards;
}
.container-navClose .hdr_hamburger span:nth-child(1) {
	-webkit-animation: hamburgerLineOff01 0.4s ease-out forwards;
	        animation: hamburgerLineOff01 0.4s ease-out forwards;
}
.container-navOpen .hdr_hamburger span:nth-child(2) {
	-webkit-animation: hamburgerLineOn02 0.4s ease-out forwards;
	        animation: hamburgerLineOn02 0.4s ease-out forwards;
}
.container-navClose .hdr_hamburger span:nth-child(2) {
	-webkit-animation: hamburgerLineOff02 0.4s ease-out forwards;
	        animation: hamburgerLineOff02 0.4s ease-out forwards;
}
.hdr_hamburger span:nth-child(3) {
	-webkit-transform: translateY(8px);
	        transform: translateY(8px);
}
.container-navOpen .hdr_hamburger span:nth-child(3) {
	-webkit-animation: hamburgerLineOn03 0.4s ease-out forwards;
	        animation: hamburgerLineOn03 0.4s ease-out forwards;
}
.container-navClose .hdr_hamburger span:nth-child(3) {
	-webkit-animation: hamburgerLineOff03 0.4s ease-out forwards;
	        animation: hamburgerLineOff03 0.4s ease-out forwards;
}

@-webkit-keyframes hamburgerLineOn01 {
	0% {
		-webkit-transform: translateY(-8px);
		        transform: translateY(-8px);
	}
	40% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0) rotate(135deg);
		        transform: translateY(0) rotate(135deg);
	}
}

@keyframes hamburgerLineOn01 {
	0% {
		-webkit-transform: translateY(-8px);
		        transform: translateY(-8px);
	}
	40% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0) rotate(135deg);
		        transform: translateY(0) rotate(135deg);
	}
}

@-webkit-keyframes hamburgerLineOn02 {
	0% {
		opacity: 1;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@keyframes hamburgerLineOn02 {
	0% {
		opacity: 1;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes hamburgerLineOn03 {
	0% {
		-webkit-transform: translateY(8px);
		        transform: translateY(8px);
	}
	40% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0) rotate(-135deg);
		        transform: translateY(0) rotate(-135deg);
	}
}

@keyframes hamburgerLineOn03 {
	0% {
		-webkit-transform: translateY(8px);
		        transform: translateY(8px);
	}
	40% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(0) rotate(-135deg);
		        transform: translateY(0) rotate(-135deg);
	}
}

@-webkit-keyframes hamburgerLineOff01 {
	0% {
		-webkit-transform: translateY(0) rotate(135deg);
		        transform: translateY(0) rotate(135deg);
	}
	60% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-8px);
		        transform: translateY(-8px);
	}
}

@keyframes hamburgerLineOff01 {
	0% {
		-webkit-transform: translateY(0) rotate(135deg);
		        transform: translateY(0) rotate(135deg);
	}
	60% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(-8px);
		        transform: translateY(-8px);
	}
}

@-webkit-keyframes hamburgerLineOff02 {
	0% {
		opacity: 0;
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes hamburgerLineOff02 {
	0% {
		opacity: 0;
	}
	60% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes hamburgerLineOff03 {
	0% {
		-webkit-transform: translateY(0) rotate(-135deg);
		        transform: translateY(0) rotate(-135deg);
	}
	60% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(8px);
		        transform: translateY(8px);
	}
}

@keyframes hamburgerLineOff03 {
	0% {
		-webkit-transform: translateY(0) rotate(-135deg);
		        transform: translateY(0) rotate(-135deg);
	}
	60% {
		-webkit-transform: translateY(0) rotate(0deg);
		        transform: translateY(0) rotate(0deg);
	}
	100% {
		-webkit-transform: translateY(8px);
		        transform: translateY(8px);
	}
}

/* --------------------------------
  footer
-------------------------------- */
.ftr {
	height: 60px;
	background: #121312;
	font-size: 10px;
	font-size: 1.0rem; 
	line-height: 60px;
}
@media screen and (min-width: 736px), print {
	.ftr {
		height: 70px;
		line-height: 70px;
	}
}
@media screen and (min-width: 1024px), print {
	.ftr {
		height: 100px;
		line-height: 100px;
	}
}

.ftr_copyright {
	text-align: center;
	color: #7b7b7b;
}

.ftr_pageTop {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	z-index: 2; 
	right: 17px;
	bottom: 33px;
	width: 47px;
	height: 47px;
	-webkit-transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
}
.ftr_pageTop-show {
	visibility: visible; 
	opacity: 1;
}
@media screen and (min-width: 1024px), print {
	.ftr_pageTop {
		right: 40px;
		bottom: 40px;
		width: 76px;
		height: 76px;
	}
}
.ftr_pageTop a {
	display: block;
	outline: none;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: all 0.2s cubic-bezier(0, 0, 0.58, 1); 
	background: #628e34;
}
.ftr_pageTop a:before {
	content: "";
	display: block;
	position: absolute;
	top: 8px;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-top: solid 4px #fff;
	border-left: solid 4px #fff;
	width: 18px;
	height: 18px;
	-webkit-transition: -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: transform 0.2s cubic-bezier(0, 0, 0.58, 1);
	transition: transform 0.2s cubic-bezier(0, 0, 0.58, 1), -webkit-transform 0.2s cubic-bezier(0, 0, 0.58, 1); 
	-webkit-transform: rotate(45deg); 
	        transform: rotate(45deg);
}
@media screen and (min-width: 1024px), print {
	.ftr_pageTop a:before {
		top: 10px;
		width: 20px;
		height: 20px;
	}
}
@media screen and (min-width: 1024px), print {
	.no-touch .ftr_pageTop a:hover {
		opacity: 1;
		background-color: #446e1f;
	}
	.no-touch .ftr_pageTop a:hover:before {
		-webkit-transform: translate(0, -5px) rotate(45deg);
		        transform: translate(0, -5px) rotate(45deg);
	}
}

/* ------------------------
	Print Styles
------------------------ */
@media print {
	*,
	*:before,
	*:after {
		opacity: 1 !important; 
		box-shadow: none !important;
		text-shadow: none !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
	body {
		width: 1100px !important;
	}
	.cover {
		overflow: hidden;
		width: 1100px !important;
		height: 526px !important;
	}
	.cover_slide span {
		background-size: 1100px auto !important;
	}
	.pcNav,
	.ftr_pageTop,
	.str_obj_pc {
		display: none !important;
	}
	.access {
		padding-right: 0 !important;
		padding-left: 0 !important;
		width: 1100px !important;
	}
	.access_map {
		padding: 0;
		height: 480px !important;
	}
	.access_map img {
		max-width: none !important;
	}
	.access_detail-company {
		right: auto !important; 
		left: 0 !important;
	}
	.flow_bnrItem {
		overflow: visible !important;
	}
	.case_contItemWrap {
		height: 928px !important;
	}
	.overview_cont {
		height: 1280px !important;
	}
	.case_contCover:after {
		display: none !important;
	}
}