@charset "utf-8";

@import url(//fonts.googleapis.com/earlyaccess/notosansjp.css);

/* Reset
------------------------------------------------------------------------------------------------------------*/
html
{
	font-size: 10px;
	-webkit-text-size-adjust: 100%;
}

html, body
{
	margin: 0;
	padding: 0;
}


h1, h2, h3, h4, h5, h6, p, ul, li, img
{
	margin: 0;
	padding: 0;
	font-weight: normal;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section
{
	display: block;
	margin: 0;
	padding: 0;
}

hr
{
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

ul
{list-style: none;}

input,
select
{
	vertical-align: middle;
}

*:focus {
	outline: none;
}

.clearfix:after
{
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

/* Layout - base
------------------------------------------------------------------------------------------------------------*/

*,
*::before,
*::after
{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

img
{
	vertical-align: bottom;
	max-width: 100%;
}

body
{
	width: 100%;
	color: #595959;
	/*font-family: "Avenir Next", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 13px;
	line-height: 1;

}

a
{
	color: #595959;
	display: block;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, .3);
}

/* font */
.notosans
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.yumincho
{
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.avenirnext
{
	font-family: "Avenir Next", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.italic
{
	font-style: italic;
}

/* common */
div.viewMore
{
	text-align: right;
	padding-right: 3rem;
	position: relative;
	margin-top: 1rem;
	font-family: "Avenir Next", Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, sans-serif;
}

div.viewMore a
{
	display: inline;
	position: relative;
}

div.viewMore div.rightArrow
{
	right: -2rem;
}

div.rightArrow
{
	content: "";
	width: 1rem;
	height: 1rem;
	position: absolute;
	top: calc(50% - 0.9rem);
	transform: rotate(45deg) translateY(50%) scale(0.7);
}

div.rightArrow:before
{
	content: "";
	position: absolute;
	right: 0;
	width: 0.1rem;
	height: 1rem;
	background-color: #595959;
	display: block;
	border-radius: 0.7rem;
}

div.rightArrow:after
{
	content: "";
	position: absolute;
	width: 1rem;
	height: 0.1rem;
	background-color: #595959;
	display: block;
	border-radius: 0.7rem;
}

/* header
------------------------------------------------------------------------------------------------------------*/
/*グローバルメニュー表示時にコンテンツのスクロール処理を止めるためのスタイル設定 */
body.fixed
{
	position: fixed;
	width: 100%;
	height: 100%;
}

.gHeader
{
	background-color: #fff;
	position: fixed;
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	z-index: 1000;

	height: 5rem;
}

.gHeader .items
{
	width: 100%;
	height: 100%;

	display: flex;
	justify-content: space-between;
	align-items: center;
}

/*.gHeader .items .tt
{
	display: flex;
	flex-flow: column;
	align-items: center;
}*/

.gHeader .header
{
	text-align: center;
	line-height: 0;

	height: 5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.gHeader .header .markTest
{
	font-size: 1rem;
	margin-left: 2rem;
	position: absolute;
	right: -5rem;
}

.gHeader ._hbg
{
	padding-top: 0.2rem;
	padding-bottom: 0.2rem;
	margin-left: 3rem;
	margin-right: 1rem;
}

/* draw open menu button (draw 3 lines) */
.gHeader ._hbg .lines
{
	display: flex; /* default visible */
	flex-flow: column;
	justify-content: space-around;
	align-items: center;
	padding: 0.3rem 0;

	width: 3.5rem;
	height: 3rem;
}

.gHeader ._hbg .lines .line
{
	background-color: #595959;
	width: 2rem;
	height: 0.1rem;
}

/* global menu close button ******************************************************/
.gHeader ._hbg .cross
{
	display: none; /* default invisible */
	flex-flow: column;
	justify-content: center;
	width: 3.5rem;
	height: 3rem;
	text-align: center;
	transform: rotate(45deg);
}

/* グローバルメニュー非表示状態の設定 */
.gHeader ._hbg.close .cross
{
	display: flex;
}

/* グローバルメニュー表示状態の設定 */
.gHeader ._hbg.close .lines
{
	display: none;
}

/* draw close menu button (draw cross lines) */
.gHeader ._hbg .cross .crossLines
{
	background-color: #595959;
	margin: auto;
	width: 2.8rem;
	height: 0.1rem;
	position: relative;
}

.gHeader ._hbg .cross .crossLines:after
{
	content: "";
	display: block;
	width: 2.8rem;
	height: 0.1rem;
	transform: rotate(90deg);
	background-color: #595959;
}

/* 来店予約 ******************************************************/
.gHeader ._contactBtn
{
	/*position: absolute;
	left: 10px;
	top: 10px;*/
	width: 6.5rem;
	height: 2.8rem;
	line-height: 2.8rem;
	vertical-align: middle;
	text-align: center;
	border: #595959 solid 1px;
	color: #595959;
	font-size: 1rem;
	margin-left: 1rem;
}

.gHeader__nav
{
	position: fixed;
	width: 100%;
	max-height: calc(100% - 50px);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	background-color: white;
	color: #ec2365;
	font-size: 12px;
	opacity: 0;
	/* margin-top: -1em; */
	pointer-events: none;
	transition-property: opacity, left;
	transition-timing-function: ease-in-out;
	transition-duration: .3s;
	left: 100%;
	background-color: #808080;
}

.gHeader__nav.is-open
{
	opacity: 1;
	pointer-events: auto;
	left: 0;
	/* margin-top: 0; */
}

.gHeader__nav .heading
{
	display: none;
}

.gHeader__nav .guide_ring dt
{
	display: none;
}

.gHeader__nav ul.rings li
{
	border-top: 1px solid #808080;
	background-color: #fff;

	height: 4.7rem;
	display: flex;
	flex-flow: column;
	justify-content: center;
	background-repeat: no-repeat;
	background-size: 65px;
	background-position-x: 2rem;
	background-position-y: center;
	padding-left: 8.3rem;
}

.gHeader__nav ul.rings li.diamond_ring
{
	background-image: url('/img/nav/icon_navi_diamondring.png');
}

.gHeader__nav ul.rings li.color_stone_ring
{
	background-image: url('/img/nav/icon_navi_colorstonering.png');
}

.gHeader__nav ul.rings li.marriage_ring
{
	background-image: url('/img/nav/icon_navi_marriagering.png');
}

.gHeader__nav ul.rings li.eternity_ring
{
	background-image: url('/img/nav/icon_navi_eternityring.png');
}

.gHeader__nav ul.rings li .text .en
{
	display: none;
}

.gHeader__nav ul.rings li img
{
	display: none;
}


/*.gHeader__nav__column1
{
	border-top: 1px solid #808080;
	background-color: #fff;
}*/

/*.gHeader__nav__column1 li
{
	height: 4.7rem;
	border-bottom: 1px solid #808080;
	display: flex;
	flex-flow: column;
	justify-content: center;
	padding-left: 2rem;
}

.gHeader__nav__column1 a
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;

	display: flex;
	align-items: center;
	color: #595959;
}

.gHeader__nav__column1 img
{
	width: 65px;
	vertical-align: middle;
	margin-right: 8px;
}

.gHeader__nav__column1 .text
{
	margin-left: 1rem;
	padding: 0;
}*/

.gHeader .navs
{
	display: flex;
	flex-wrap: wrap;
	/*border-bottom: #fff solid 1px;*/
}

.gHeader .navs li
{
	width: 50%;
	height: 4.7rem;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	flex-flow: column;
	justify-content: center;
	line-height: 1.5em;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.gHeader .navs li:nth-last-child(n+3)
{
	border-bottom: #fff solid 0.1rem;
}

.gHeader .navs li:nth-child(odd)
{
	border-right: #fff solid 1px;
}

.gHeader .navs img
{
	display: none;
}

.gHeader .navs .text
{
	color: #fff;
}

.gHeader .navs .text .en
{
	display: none;
}

.gHeader .navs .text br, .gHeader .navs2 .text br
{
	display: block !important;
}

.gHeader .contact
{
	display: flex !important;
}

.gHeader .anniversary160th
{
	display: none;
}

/* breadcrumb
------------------------------------------------------------------------------------------------------------*/
#breadcrumb
{
	font-size: 10px;
	background: #e5e5e5;
	padding: 7px 14px;

}

#breadcrumb a
{
	display: inline;
	margin-right: 4px;
}


/* contents
------------------------------------------------------------------------------------------------------------*/

#contents
{
	padding-top: 5rem;
}


/* footer
------------------------------------------------------------------------------------------------------------*/
.gFooter
{
	background-color: #808080;
}

.gFooter .heading
{
	display: none;
}

.gFooter .guide_ring > dt
{
	display: none;
}

.gFooter ul.rings li a
{
	position: relative;
}

.gFooter ul.rings li .text
{
	position: absolute;
	top: calc(50% - 2.3rem);
	left: 10%;
	padding: 0;
	font-size: 1.7rem;
}

.gFooter ul.rings li .text > .ja
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1rem;
	margin-top: 0.4rem;
}

.gFooter .ringImage
{
	width: 100%;
}

.gFooter ul.navs
{
	display: flex;
	flex-wrap: wrap;
}

.gFooter ul.navs li
{
	width: 50%;
	position: relative;
}

.gFooter ul.navs li .text
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: 0;
	font-size: 1.6rem;
	color: #ffffff;
	text-align: center;
}

.gFooter ul.navs li .text > div
{
	font-family: "Avenir Next", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.3rem;
	margin-top: 0.4rem;
}

.gFooter ul.navs li .navImage
{
	width: 100%;
}

/* .lowerSide of top nav and footer  */
.lowerSide
{
	background-color: #808080;
}

.lowerSide a
{
	color: #fff;
}

.lowerSide li.border
{
	border-right: #fff solid 0.05rem;
}

/* .lowerSide .textNavs ******************************************************/
.lowerSide .textNavs
{
	display: flex;
	flex-wrap: wrap;
	border-bottom: #fff solid 1px;
}

.lowerSide .textNavs li
{
	width: 50%;
	height: 4.7rem;
	text-align: center;
	font-size: 1.2rem;
	display: flex;
	flex-flow: column;
	justify-content: center;
	line-height: 1.5em;
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.lowerSide .textNavs li:nth-last-child(n+3)
{
	border-bottom: #fff solid 0.1rem;
}

.lowerSide .textNavs li:nth-child(odd)
{
	border-right: #fff solid 1px;
}


/* .lowerSide .navs2 ******************************************************/
.lowerSide .navs2
{
	/*margin-top: 0.1rem;*/
	border-top: #fff solid 0.1rem;
	display: flex;
}

.lowerSide .navs2 li
{
	width: 100%;
	height: 14.05rem;
	text-align: center;
}

.lowerSide .navs2 a
{
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #ffffff;
}

.lowerSide .navs2 .icon
{
	margin-top: 2rem;
}

.lowerSide .navs2 .text
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-top: 1rem;
	line-height: 1.9em;
	font-size: 1.4rem;
	padding: 0;
}

.lowerSide .information
{
	border-top: #fff solid 1px;
	display: flex;
}

.lowerSide .information li
{
	height: 7.5rem;
	width: 66.6%;
}

.lowerSide .information .news
{
	width: 33.4%;
	padding-top: 0;
	margin-bottom: 0;
}

.lowerSide .information .news a
{
	height: 100%;
	color: #fff;
	text-align: center;
	display: flex;
	flex-flow: column;
	justify-content: center;
}

.lowerSide .information .sns
{
	display: flex;
}

.lowerSide .information .sns li
{
	width: 100%;
	text-align: center;
	display: flex;
	flex-flow: column;
	justify-content: center;
}

.lowerSide .contact
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-top: 0;
	border-top: #fff solid 1px;
	height: 15rem;
	color: #fff;
	text-align: center;
	display: flex;
	flex-flow: column;
	justify-content: center;
	font-size: 1.4rem;
	line-height: 1.9em;
	font-style: normal;
}

.lowerSide .contact a
{
	color: #fff;
}

.lowerSide .contact a.tel
{
	font-size: 2.3rem;
}

.lowerSide .contact a.e-mail
{
	font-family: "Avenir Next", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.about
{
	position: relative;
	border-top: #fff solid 1px;
	text-align: center;
	padding: 2rem 3rem 2rem 3rem;
}

.about ul
{
	display: flex;
	justify-content: space-around;
}

.about a
{
	font-family: "Noto Sans JP", "Noto Sans CJK JP", "Avenir Next", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #fff;
	font-size: 1.3rem;
}

.about .anniversary160th
{
	position: absolute;
	right: 3rem;
	bottom: 1.5rem;
}

.about .copyright
{
	display: block;
	color: #fff;
	margin-top: 3rem;
	font-size: 1.05rem
}

/* .btMoveTop ******************************************************/
.btMoveTop
{
	cursor: pointer;
	position: fixed;
	/*top:calc( 100% - 9.15rem );*/
	/*left:calc( 100% - 7.15rem );*/
	bottom: 2rem;
	right: 1.5rem;
	width: 5rem;
	height: 5rem;
	/*background-color: rgba(89, 89, 89, 0.45);*/
	background-color: #595959;
	opacity: 0;

	transition: opacity .5s; /*, bottom .3s;*/
}

.btMoveTop.show
{
	/*top:calc( 100% - 12.15rem );*/
	/*bottom:2rem;*/
	opacity: 0.4;
}

.btMoveTop .arrow
{
	position: relative;
	width: 5.15rem;
	height: 5.15rem;
}

.btMoveTop .arrow:after
{
	content: "";
	display: block;
	width: 1.33rem;
	height: 1.33rem;
	position: absolute;
	left: calc(50% - 0.66rem);
	top: calc(50% - 0.33rem);
	border-top: solid 1px;
	border-right: solid 1px;
	transform: rotate(-45deg);
	color: #fff;
}


/* m-heading
 ------------------------------------------------------*/
.m-heading
{
	text-align: center;
	line-height: 1.75;
	/* border-bottom: 1px solid #e5e5e5; */
	padding: 30px 0 24px;
}

.m-heading__main
{
	font-size: 19px;
	font-weight: 400;

}

.m-heading__sub
{
	font-size: 11px;
	/* margin-top: 13px; */
	font-weight: 400;

}


/* m-subheading ------------------------------------------------------*/

.m-subheading
{
	background: #e5e5e5;
	height: 30px;
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: 400;
	padding: 0 20px;
}

.m-subheading.mod-en
{
	font-size: 16px;
	font-family: "Avenir Next";
}

.m-subheading.mod-center
{
	text-align: center;
	justify-content: center;
}

.m-subheading img
{
	display: block;
}

/* m-banner ------------------------------------------------------*/

.m-banner a
{
	display: block;
	text-align: center;
}

.m-banner img
{
	width: 100%
}

.m-banner a:not(:last-child)
{
	margin-bottom: 5px
}

/* m-banner ------------------------------------------------------*/

.m-collectionBanner a
{
	display: block;
	text-align: center;
}

.m-collectionBanner img
{
	width: 100%
}


/* m-info ------------------------------------------------------*/

.m-info ul
{
	border-top: #e6e6e6 1px solid;
	border-bottom: #e6e6e6 1px solid;
}

.m-info li
{
	background: url('/sp/library/img/arrow_gray.png') no-repeat 96% 50%;
	background-size: 7px 10px;
	line-height: 1.6em;
}

.m-info li:not(:last-child)
{
	border-bottom: #e6e6e6 1px solid;
}

.m-info li a
{
	padding: 3% 10% 3% 6%;
}

/* テキストエリア ------------------------------------------------------*/
.text
{
	padding: 6% 20px;
	line-height: 1.46;
	font-size: 13px
}

small
{
	font-size: 11px
}

/* 補足情報テキスト ------------------------------------------------------*/
span.sup
{
	font-size: 10px;
}

/* スマホサイト */
@media screen and (max-width: 599px)
{
	.hide-sp
	{
		display: none !important;
	}

	.invisible-sp
	{
		visibility: hidden;
	}

	.topHeading
	{
		display: block !important;
	}
}

/* PCサイト */
@media screen and (min-width: 600px)
{
	.hide-pc
	{
		display: none !important;
	}

	.invisible-pc
	{
		visibility: hidden !important;
	}

	a
	{
		opacity: 1;
		transition: opacity .4s;
	}

	a:hover
	{
		opacity: 0.6;
	}

	#main-page
	{
	}

	.headerWrap
	{
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
	}

	.gHeader
	{
		min-width: 128rem;
		/*width: 128rem;*/
		height: 8rem;
		/*left: unset;*/
		right: unset;
	}

	.gHeader .items
	{
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
	}

	.gHeader ._contactBtn
	{
		width: 10rem;
		height: 3rem;
		font-size: 1.5rem;
		margin-left: 6rem;
	}

	.gHeader .logoImg
	{
		width: 14rem;
	}

	.gHeader ._hbg
	{
		margin-left: 6.5rem;
		margin-right: 6rem;
	}

	.gHeader ._hbg .lines
	{
		height: 4rem;
	}

	.gHeader ._hbg .lines .line
	{
		width: 3rem;
		height: 0.2rem;
	}

	.gHeader ._hbg .cross .crossLines
	{
		width: 3.3rem;
		height: 0.2rem;
	}

	.gHeader ._hbg .cross .crossLines:after
	{
		width: 3.3rem;
		height: 0.2rem;
	}

	/* header nav */
	.gHeader .centerWrap
	{
		width: 0;
		margin-left: auto;
		margin-right: auto;
		pointer-events: none;
	}

	.gHeader .centerWrap.is-open
	{
		width: 128rem;
	}


	.gHeader .navWrap
	{
		/*width: 100%;*/
		height: 5000px;
		overflow: hidden;
		position: relative;
		margin-left: calc(128rem - 42rem);
		width: 0;
	}

	.gHeader .navWrap.is-open
	{
		width: 42rem;
	}


	.gHeader__nav
	{
		width: 42rem;
		height: 100%;
		right: unset;
		left: unset;
		transition-property: opacity, margin-left;
		/*margin-left: 128rem;*/
		margin-left: 42rem;

		/*position: relative;
		max-height: unset;
		height: 100%;*/
		position: absolute;
		top: 0;
	}

	.gHeader__nav.is-open
	{
		right: unset;
		left: unset;
		/*margin-left: calc(128rem - 42rem);*/
		margin-left: 0;
	}

	.gHeader .whiteCoverNav
	{
		position: fixed;
		width: 42rem;
		height: 100%;
		right: unset;
		left: unset;
		margin-left: 128rem;
		background-color: #fff;
	}

	.carousel
	{
		width: 64rem;
		height: 64rem;
	}

	.carousel img
	{
		width: 64rem;
		height: 64rem;
		object-fit: cover;
	}

	#contents
	{
		padding-top: 8rem;
	}

	/* .topHeading ******************************************************/
	.topHeading
	{
		width: 128rem;
		margin-left: auto;
		margin-right: auto;
	}

	/*  footer ****************************************************** */
	.gFooter
	{
		width: 100%;
		min-width: 128rem;
	}

	.gFooter img
	{
		display: none;
	}

	.gFooter > .wrap
	{
		width: 88rem;
		margin-left: auto;
		margin-right: auto;
	}

	.gFooter .heading
	{
		display: block;
		text-align: center;
		padding: 4rem;
	}

	.gFooter .heading a
	{
		margin: auto;
		width: 15.35rem;
	}

	.gFooter .heading img
	{
		display: inline;
	}

	/* ring guide */
	.gFooter .guide_wrap
	{
		display: flex;
		justify-content: space-between;
	}

	.gFooter .guide_ring
	{
		width: 100%;
		padding-left: 2rem;
	}

	.gFooter .guide_ring > dt
	{
		color: #fff;
		display: block;
		font-size: 1.4rem;
		margin-bottom: 1em;
		padding-top: 0.3rem;
		padding-bottom: 0.2rem;
	}

	.gFooter .guide_ring > dd
	{
		margin-left: 1em;
		margin-bottom: 1em;
	}

	.gFooter ul.rings li
	{
		margin-bottom: 1em;
	}

	.gFooter ul.rings li.eternity_ring
	{
		margin-top: 3.5em;
	}

	.gFooter ul.rings li .text
	{
		color: #fff;
		position: unset;
	}

	.gFooter ul.rings li .text .ja
	{
		font-size: 1.4rem;
		margin-top: 0;
	}

	.gFooter ul.rings li .text .brand
	{
		display: none;
	}

	.gFooter ul.rings li .text .en
	{
		display: none;
	}

	/* navs */
	.gFooter ul.navs
	{
		display: block;
		flex-wrap: unset;
		width: 100%;
	}

	.gFooter ul.navs li
	{
		width: unset;
		position: unset;
		margin-bottom: 1.5em;
	}

	.gFooter ul.navs li .text
	{
		position: unset;
		left: unset;
		top: unset;
		transform: unset;
		text-align: left;
		font-size: 1.4rem;
		line-height: 1em;
	}

	.gFooter ul.navs li .text .en
	{
		display: none;
	}

	.gFooter .lowerSide
	{
		width: 100%;
		padding-left: 5rem;
	}

	/* .nav2 */
	.gFooter ul.navs2
	{
		display: block;
		border-top: none;
	}

	.gFooter ul.navs2 li
	{
		height: unset;
		padding-bottom: 1.5em;
	}

	.gFooter ul.navs2 li.border
	{
		border-right: none;
	}

	.gFooter ul.navs2 li .text
	{
		text-align: left;
		margin-top: 0;
		line-height: 1em;
	}

	/* .information */
	.gFooter .information
	{
		border-top: none;
		display: block;
	}

	.gFooter .information .news.border
	{
		border-right: none;
	}
	
	.gFooter .information li
	{
		width: 76.5%;
	}

	.gFooter .information li.news
	{
		height: unset;
		font-size: 1.4rem;
	}

	.gFooter .information li.news a
	{
		text-align: left;
	}

	.gFooter .information ul.sns
	{
		margin-top: 1em;
	}

	.gFooter .information ul.sns li
	{
		width: unset;
		margin-right: 1rem;
	}

	.gFooter .information ul.sns img
	{
		display: block;
	}

	.gFooter .information .anniversary160th
	{
		margin-top: 1em;
	}

	.gFooter .information .anniversary160th img
	{
		display: block;
	}

	/* .about */
	.gFooter .about
	{
		border-top: none;
		margin-top: 3rem;
	}

	.gFooter .about ul
	{
		width: 30.5rem;
		margin-left: auto;
		margin-right: auto;
	}

	.gFooter .about li
	{
		font-size: 1.3rem;
	}
}


/* ---------- margin ---------- */
.mb0
{
	margin-bottom: 0px !important;
}

.mt0
{
	margin-top: 0px !important;
}

.ml0
{
	margin-left: 0px !important;
}

.mr0
{
	margin-right: 0px !important;
}

.mb5
{
	margin-bottom: 5px !important;
}

.mt5
{
	margin-top: 5px !important;
}

.ml5
{
	margin-left: 5px !important;
}

.mr5
{
	margin-right: 5px !important;
}

.mb10
{
	margin-bottom: 10px !important;
}

.mt10
{
	margin-top: 10px !important;
}

.ml10
{
	margin-left: 10px !important;
}

.mr10
{
	margin-right: 10px !important;
}

.mb15
{
	margin-bottom: 15px !important;
}

.mt15
{
	margin-top: 15px !important;
}

.ml15
{
	margin-left: 15px !important;
}

.mr15
{
	margin-right: 15px !important;
}

.mb20
{
	margin-bottom: 20px !important;
}

.mt20
{
	margin-top: 20px !important;
}

.ml20
{
	margin-left: 20px !important;
}

.mr20
{
	margin-right: 20px !important;
}

.mb25
{
	margin-bottom: 25px !important;
}

.mt25
{
	margin-top: 25px !important;
}

.ml25
{
	margin-left: 25px !important;
}

.mr25
{
	margin-right: 25px !important;
}

.mb30
{
	margin-bottom: 30px !important;
}

.mt30
{
	margin-top: 30px !important;
}

.ml30
{
	margin-left: 30px !important;
}

.mr30
{
	margin-right: 30px !important;
}

.mb35
{
	margin-bottom: 35px !important;
}

.mt35
{
	margin-top: 35px !important;
}

.ml35
{
	margin-left: 35px !important;
}

.mr35
{
	margin-right: 35px !important;
}

.mb40
{
	margin-bottom: 40px !important;
}

.mt40
{
	margin-top: 40px !important;
}

.ml40
{
	margin-left: 40px !important;
}

.mr40
{
	margin-right: 40px !important;
}

.mb45
{
	margin-bottom: 45px !important;
}

.mt45
{
	margin-top: 45px !important;
}

.ml45
{
	margin-left: 45px !important;
}

.mr45
{
	margin-right: 45px !important;
}

.mb50
{
	margin-bottom: 50px !important;
}

.mt50
{
	margin-top: 50px !important;
}

.ml50
{
	margin-left: 50px !important;
}

.mr50
{
	margin-right: 50px !important;
}

.mb55
{
	margin-bottom: 55px !important;
}

.mt55
{
	margin-top: 55px !important;
}

.ml55
{
	margin-left: 55px !important;
}

.mr55
{
	margin-right: 55px !important;
}

.mb60
{
	margin-bottom: 60px !important;
}

.mt60
{
	margin-top: 60px !important;
}

.ml60
{
	margin-left: 60px !important;
}

.mr60
{
	margin-right: 60px !important;
}

.mb65
{
	margin-bottom: 65px !important;
}

.mt65
{
	margin-top: 65px !important;
}

.ml65
{
	margin-left: 65px !important;
}

.mr65
{
	margin-right: 65px !important;
}

.mb70
{
	margin-bottom: 70px !important;
}

.mt70
{
	margin-top: 70px !important;
}

.ml70
{
	margin-left: 70px !important;
}

.mr70
{
	margin-right: 70px !important;
}

.mb75
{
	margin-bottom: 75px !important;
}

.mt75
{
	margin-top: 75px !important;
}

.ml75
{
	margin-left: 75px !important;
}

.mr75
{
	margin-right: 75px !important;
}

.mb80
{
	margin-bottom: 80px !important;
}

.mt80
{
	margin-top: 80px !important;
}

.ml80
{
	margin-left: 80px !important;
}

.mr80
{
	margin-right: 80px !important;
}

.mb85
{
	margin-bottom: 85px !important;
}

.mt85
{
	margin-top: 85px !important;
}

.ml85
{
	margin-left: 85px !important;
}

.mr85
{
	margin-right: 85px !important;
}

.mb90
{
	margin-bottom: 90px !important;
}

.mt90
{
	margin-top: 90px !important;
}

.ml90
{
	margin-left: 90px !important;
}

.mr90
{
	margin-right: 90px !important;
}

.mb95
{
	margin-bottom: 95px !important;
}

.mt95
{
	margin-top: 95px !important;
}

.ml95
{
	margin-left: 95px !important;
}

.mr95
{
	margin-right: 95px !important;
}

.mb100
{
	margin-bottom: 100px !important;
}

.mt100
{
	margin-top: 100px !important;
}

.ml100
{
	margin-left: 100px !important;
}

.mr100
{
	margin-right: 100px !important;
}

.mb105
{
	margin-bottom: 105px !important;
}

.mt105
{
	margin-top: 105px !important;
}

.ml105
{
	margin-left: 105px !important;
}

.mr105
{
	margin-right: 105px !important;
}

.mb110
{
	margin-bottom: 110px !important;
}

.mt110
{
	margin-top: 110px !important;
}

.ml110
{
	margin-left: 110px !important;
}

.mr110
{
	margin-right: 110px !important;
}

.mb115
{
	margin-bottom: 115px !important;
}

.mt115
{
	margin-top: 115px !important;
}

.ml115
{
	margin-left: 115px !important;
}

.mr115
{
	margin-right: 115px !important;
}

.mb120
{
	margin-bottom: 120px !important;
}

.mt120
{
	margin-top: 120px !important;
}

.ml120
{
	margin-left: 120px !important;
}

.mr120
{
	margin-right: 120px !important;
}

.mb125
{
	margin-bottom: 125px !important;
}

.mt125
{
	margin-top: 125px !important;
}

.ml125
{
	margin-left: 125px !important;
}

.mr125
{
	margin-right: 125px !important;
}

.mb130
{
	margin-bottom: 130px !important;
}

.mt130
{
	margin-top: 130px !important;
}

.ml130
{
	margin-left: 130px !important;
}

.mr130
{
	margin-right: 130px !important;
}

.mb135
{
	margin-bottom: 135px !important;
}

.mt135
{
	margin-top: 135px !important;
}

.ml135
{
	margin-left: 135px !important;
}

.mr135
{
	margin-right: 135px !important;
}

.mb140
{
	margin-bottom: 140px !important;
}

.mt140
{
	margin-top: 140px !important;
}

.ml140
{
	margin-left: 140px !important;
}

.mr140
{
	margin-right: 140px !important;
}

.mb145
{
	margin-bottom: 145px !important;
}

.mt145
{
	margin-top: 145px !important;
}

.ml145
{
	margin-left: 145px !important;
}

.mr145
{
	margin-right: 145px !important;
}

.mb150
{
	margin-bottom: 150px !important;
}

.mt150
{
	margin-top: 150px !important;
}

.ml150
{
	margin-left: 150px !important;
}

.mr150
{
	margin-right: 150px !important;
}

.mb155
{
	margin-bottom: 155px !important;
}

.mt155
{
	margin-top: 155px !important;
}

.ml155
{
	margin-left: 155px !important;
}

.mr155
{
	margin-right: 155px !important;
}

.mb160
{
	margin-bottom: 160px !important;
}

.mt160
{
	margin-top: 160px !important;
}

.ml160
{
	margin-left: 160px !important;
}

.mr160
{
	margin-right: 160px !important;
}

.mb165
{
	margin-bottom: 165px !important;
}

.mt165
{
	margin-top: 165px !important;
}

.ml165
{
	margin-left: 165px !important;
}

.mr165
{
	margin-right: 165px !important;
}

.mb170
{
	margin-bottom: 170px !important;
}

.mt170
{
	margin-top: 170px !important;
}

.ml170
{
	margin-left: 170px !important;
}

.mr170
{
	margin-right: 170px !important;
}

.mb175
{
	margin-bottom: 175px !important;
}

.mt175
{
	margin-top: 175px !important;
}

.ml175
{
	margin-left: 175px !important;
}

.mr175
{
	margin-right: 175px !important;
}

.mb180
{
	margin-bottom: 180px !important;
}

.mt180
{
	margin-top: 180px !important;
}

.ml180
{
	margin-left: 180px !important;
}

.mr180
{
	margin-right: 180px !important;
}

.mb185
{
	margin-bottom: 185px !important;
}

.mt185
{
	margin-top: 185px !important;
}

.ml185
{
	margin-left: 185px !important;
}

.mr185
{
	margin-right: 185px !important;
}

.mb190
{
	margin-bottom: 190px !important;
}

.mt190
{
	margin-top: 190px !important;
}

.ml190
{
	margin-left: 190px !important;
}

.mr190
{
	margin-right: 190px !important;
}

.mb195
{
	margin-bottom: 195px !important;
}

.mt195
{
	margin-top: 195px !important;
}

.ml195
{
	margin-left: 195px !important;
}

.mr195
{
	margin-right: 195px !important;
}

.mb200
{
	margin-bottom: 200px !important;
}

.mt200
{
	margin-top: 200px !important;
}

.ml200
{
	margin-left: 200px !important;
}

.mr200
{
	margin-right: 200px !important;
}

.mb205
{
	margin-bottom: 205px !important;
}

.mt205
{
	margin-top: 205px !important;
}

.ml205
{
	margin-left: 205px !important;
}

.mr205
{
	margin-right: 205px !important;
}

.mb210
{
	margin-bottom: 210px !important;
}

.mt210
{
	margin-top: 210px !important;
}

.ml210
{
	margin-left: 210px !important;
}

.mr210
{
	margin-right: 210px !important;
}

.mb215
{
	margin-bottom: 215px !important;
}

.mt215
{
	margin-top: 215px !important;
}

.ml215
{
	margin-left: 215px !important;
}

.mr215
{
	margin-right: 215px !important;
}

.mb220
{
	margin-bottom: 220px !important;
}

.mt220
{
	margin-top: 220px !important;
}

.ml220
{
	margin-left: 220px !important;
}

.mr220
{
	margin-right: 220px !important;
}

.mb225
{
	margin-bottom: 225px !important;
}

.mt225
{
	margin-top: 225px !important;
}

.ml225
{
	margin-left: 225px !important;
}

.mr225
{
	margin-right: 225px !important;
}

.mb230
{
	margin-bottom: 230px !important;
}

.mt230
{
	margin-top: 230px !important;
}

.ml230
{
	margin-left: 230px !important;
}

.mr230
{
	margin-right: 230px !important;
}

.mb235
{
	margin-bottom: 235px !important;
}

.mt235
{
	margin-top: 235px !important;
}

.ml235
{
	margin-left: 235px !important;
}

.mr235
{
	margin-right: 235px !important;
}

.mb240
{
	margin-bottom: 240px !important;
}

.mt240
{
	margin-top: 240px !important;
}

.ml240
{
	margin-left: 240px !important;
}

.mr240
{
	margin-right: 240px !important;
}

.mb245
{
	margin-bottom: 245px !important;
}

.mt245
{
	margin-top: 245px !important;
}

.ml245
{
	margin-left: 245px !important;
}

.mr245
{
	margin-right: 245px !important;
}

.mb250
{
	margin-bottom: 250px !important;
}

.mt250
{
	margin-top: 250px !important;
}

.ml250
{
	margin-left: 250px !important;
}

.mr250
{
	margin-right: 250px !important;
}

.mb255
{
	margin-bottom: 255px !important;
}

.mt255
{
	margin-top: 255px !important;
}

.ml255
{
	margin-left: 255px !important;
}

.mr255
{
	margin-right: 255px !important;
}

.mb260
{
	margin-bottom: 260px !important;
}

.mt260
{
	margin-top: 260px !important;
}

.ml260
{
	margin-left: 260px !important;
}

.mr260
{
	margin-right: 260px !important;
}

.mb265
{
	margin-bottom: 265px !important;
}

.mt265
{
	margin-top: 265px !important;
}

.ml265
{
	margin-left: 265px !important;
}

.mr265
{
	margin-right: 265px !important;
}

.mb270
{
	margin-bottom: 270px !important;
}

.mt270
{
	margin-top: 270px !important;
}

.ml270
{
	margin-left: 270px !important;
}

.mr270
{
	margin-right: 270px !important;
}

.mb275
{
	margin-bottom: 275px !important;
}

.mt275
{
	margin-top: 275px !important;
}

.ml275
{
	margin-left: 275px !important;
}

.mr275
{
	margin-right: 275px !important;
}

.mb280
{
	margin-bottom: 280px !important;
}

.mt280
{
	margin-top: 280px !important;
}

.ml280
{
	margin-left: 280px !important;
}

.mr280
{
	margin-right: 280px !important;
}

.mb285
{
	margin-bottom: 285px !important;
}

.mt285
{
	margin-top: 285px !important;
}

.ml285
{
	margin-left: 285px !important;
}

.mr285
{
	margin-right: 285px !important;
}

.mb290
{
	margin-bottom: 290px !important;
}

.mt290
{
	margin-top: 290px !important;
}

.ml290
{
	margin-left: 290px !important;
}

.mr290
{
	margin-right: 290px !important;
}

.mb295
{
	margin-bottom: 295px !important;
}

.mt295
{
	margin-top: 295px !important;
}

.ml295
{
	margin-left: 295px !important;
}

.mr295
{
	margin-right: 295px !important;
}

.mb300
{
	margin-bottom: 300px !important;
}

.mt300
{
	margin-top: 300px !important;
}

.ml300
{
	margin-left: 300px !important;
}

.mr300
{
	margin-right: 300px !important;
}