@charset "UTF-8";

body.english {
	letter-spacing: 0.06em; 
}

.english main {
	line-height: 2;
}


/* header --------------------------------------------- */

.page-header .ttl {
	display: flex;
	align-items: center;
	height: max-content;
}

.page-header .ttl .en {
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
	position: relative;
	width: 120px;
	text-align: center;
	font-size: 1.5rem;
	letter-spacing: .06em;
	padding-top: 40px;
}

.page-header .ttl .en:before {
	position: absolute;
	content: "";
	width: 120px;
	height: 1px;
	background: #000;
	top: 20px;
	right: 0;
	left: 0;
	margin: auto;
}

.g-navigation__inner {
	display: flex;
	flex-direction: column;
}

.g-header .g-nav {
	border-bottom: none;
}

.g-header .g-nav__item {
	letter-spacing: .1em;
}

.g-header .g-subnav {
	border-top: 1px solid rgba(153,153,153,1);
	margin-top: auto;
}

/* ie only */

.msie .g-navigation__inner {
	height: 100vh;
}


/* other --------------------------------------------- */

.page-header.side-block .ttl {
	letter-spacing: 0.06em;
}

.page-header .page-menu .ttl {
	letter-spacing: 0.04em;
}

.page-header .page-menu .local__nav {
	margin-top: 10px;
}

.page-header .page-menu .local__item + .local__item {
	margin-top: 10px;
}

.page-header .page-menu .local__item.current:after {
	right: auto;
	left: .5em;
}

.local__item .local__anchor {
	font-size: 1.3rem;
}


/* footer --------------------------------------------- */

.g-footer .g-nav__item {
	letter-spacing: .1em;
}

.g-footer .g-nav__item .g-nav__anchor {
	font-size: 1.6rem;
}

.g-footer .subnav__list .subnav__item {
	letter-spacing: .06em;
}

.g-footer .subnav__item .subnav__anchor {
	font-size: 1.4rem;
}


/* ============================================================================================== */
/* Media query                                                                                    */
/* ============================================================================================== */

/* ----------------------------------------------------------------------- */
/* SmartPhone */

@media screen and (min-width: 375px) {
}


@media screen and (min-width: 414px) {
}

@media screen and (orientation:landscape) {
}

/* over iphone 6 plus landscape */
@media screen and (orientation:landscape) and (min-width: 736px) {
}

@media screen and (min-width: 768px) {

	/* other --------------------------------------------- */

	.page-header .page-menu .local__nav {
		margin-top: 30px;
	}

	.page-header .page-menu .local__item + .local__item {
		margin-top: 30px;
	}
	
}


/* ----------------------------------------------------------------------- */
/* over ipad landscape */

@media screen and (orientation:landscape) and (min-width: 1024px) {
}


/* ----------------------------------------------------------------------- */
/* Desktop */

@media screen and (min-width: 1280px) {

	/* header --------------------------------------------- */

	.g-header .g-nav {
		-ms-grid-column: 3;
		-ms-grid-column-span: 3;
		grid-column: 3 / 6;
		-ms-grid-row-align: center;
		align-self: center;
		-ms-grid-column-align: start;
		justify-self: start;
		margin: 0;
	}

	.g-header .g-nav__list {
		flex-direction: column;
	}

	.g-header .g-nav__item {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

	.g-header .g-nav__item + .g-nav__item {
		margin: 45px 0 0;
	}

	.g-header .g-nav__item .g-nav__anchor {
		font-size: 2.4rem;
	}

	.g-navigation__inner {
		display: -ms-grid;
		display: grid;
	}

	.g-header .g-subnav {
		-ms-grid-column: 6;
		-ms-grid-column-span: 3;
		grid-column: 6 / 9;
		-ms-grid-row-align: center;
		align-self: center;
		border-top: none;
		margin: 0;
	}

	.g-header .subnav__list {
		flex-direction: column;
	}

	.g-header .subnav__item {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		line-height: 1;
	}

	.g-header .subnav__item + .subnav__item {
		margin-top: 30px;
	}

	.g-header .subnav__item .subnav__anchor {
		font-size: 1.8rem;
	}


	/* other --------------------------------------------- */

	.page-header .ttl .en {
		width: 160px;
		padding-top: 60px;
		font-size: 1.6rem;
	}

	.page-header .ttl .en:before {
		width: 160px;
		top: 30px;
	}

	.page-header.side-block {
		top: 50px;
		right: auto;
		left: 5%;
	}

	.page-header.side-block .ttl {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

	.page-header.side-block .ttl .current {
		font-size: 1.6rem;
	}

	.page-header .page-menu__inner {
		display: flex;
		align-items: center;
	}

	.page-header .page-menu {
		top: 50px;
		right: auto;
		left: 5%;
	}

	.page-header .page-menu .ttl {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		letter-spacing: 0.06em;
	}

	.page-header .page-menu .local__nav {
		margin: 0 0 0 80px;
	}

	.page-header .page-menu .local__list {
		flex-direction: row;
	}

	.page-header .page-menu .local__item {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

	.page-header .page-menu .local__item + .local__item {
			margin: 0 0 0 20px;
	}

	.page-header .page-menu .local__item.current:after {
		right: 0;
		left: 0;
		top: auto;
		bottom: .5em;
		width: 100%;
		height: 1px;
	}


	/* footer --------------------------------------------- */

	.g-footer .g-nav {
		-ms-grid-column: 7;
		-ms-grid-column-span: 1;
		grid-column: 7 / 9;
		-ms-grid-column-align: auto;
		justify-self: auto;
	}

	.g-footer .g-nav__list {
		display: block;
	}

	.g-footer .g-nav__item {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

	.g-footer .g-nav__item + .g-nav__item {
		margin: 30px 0 0;
	}

	.g-footer .g-nav__item .g-nav__anchor {
		font-size: 1.8rem;
	}

	.g-footer .g-subnav {
		-ms-grid-column: 9;
		-ms-grid-column-span: 2;
		grid-column: 9 / 11;
		margin: 0;
	}

	.g-footer .subnav__list {
		display: block;
	}

	.g-footer .subnav__item {
		-webkit-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
	}

	.g-footer .subnav__item + .subnav__item {
		margin-top: 20px;
	}

	.product .g-footer .g-nav__item .g-childnav__list {
		margin: 0 0 0 2em;
	}

	.g-footer .g-nav__item .g-childnav__item {
		margin: 20px 0 0;
	}

	.g-footer .g-nav__item .g-childnav__item .g-childnav__anchor {
		font-size: 1.4rem;
	}

	.g-footer .g-link {
		-ms-grid-row-align: start;
		align-self: start;
	}

}

@media screen and (min-width: 1440px) {
}