@charset "utf-8";

/* ---------------------------------------- 
 - html
---------------------------------------- */
html,
body {
	background:#dddeda;
	margin: 0;
	padding: 0;
}
html{
    font-size: 62.5%;
}
html.hamburger-active { /* ハンバーガーメニュー */
	height: 100%;
	overflow: hidden;
	touch-action: none;
}
@media screen and (max-width: 320px) {
	html{
		font-size: 52.5%;
	}
}

/* ---------------------------------------- 
 - img
---------------------------------------- */
img {
	width: 100%;
}

/* ---------------------------------------- 
 - body
---------------------------------------- */
body{
	font-family: 'YakuHanJP_Noto', 'Noto Sans JP', "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	font-size:15px;
	font-size:1.5em;
	font-weight: 300;
	color:#000;
	line-height:2.0;
	letter-spacing: 0.05em;
	text-size-adjust: 100%; /* 文字の拡大縮小を防ぐ */
}
html.hamburger-active body { /* ハンバーガーメニュー */
	/*padding-right: 17px;*/
}

/* font */
.ft-NotoSans {
	font-family: 'Noto Sans JP', sans-serif;
}
.ft-Montserrat {
	font-family: 'Montserrat', serif;
	/*letter-spacing: 0;*/
}
.ft-Inter {
	font-family: "Inter", serif;
	letter-spacing: 0.1em;
}

/* inview */
.inview {
    transition: 0.8s;
    opacity: 0;
    /*transform: translate(0,20px);*/
}
.inview.mv {
    opacity: 1.0;
    /*transform: translate(0,0);*/
}

/* telLink（スマホ用電話リンク） */
.telLink a {
	text-decoration: underline;
}

/* ---------------------------------------- 
 - #loading
---------------------------------------- */
#loading {
	position: fixed;
	z-index: 1000;
	background-color: #ffffff;
	width:100%;
	height: 100%;
	top:0;
	left: 0;
	animation: disappear 0.8s ease-in-out 0.8s both;
}
@keyframes disappear {
	0% {
		display: block;
		opacity: 1;
	}
	99% {
		display: block;
		opacity: 0;
	}
	100% {
		display: none;
		opacity: 0;
		visibility: hidden;
	}
}
html.onload body div#loading {
	animation-play-state: paused;
}
#loading .loader,
#loading .loader:after {
  border-radius: 50%;
  width: 50px;
  height: 50px;
}
#loading .loader {
	display:none;
	z-index: 1000;
	margin: auto;
	margin-top: -25px;
	margin-left: -25px;
	font-size: 5px;
	position: absolute;
	top:50%;
	left:50%;
	text-indent: -9999em;
	border-top: 2px solid rgba(204, 204, 204, 0.2);
	border-right: 2px solid rgba(204, 204, 204, 0.2);
	border-bottom: 2px solid rgba(204, 204, 204, 0.2);
	border-left: 2px solid #ccc;
	transform: translateZ(0);
	animation: load8 1.1s infinite linear;
}
@keyframes load8 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* ---------------------------------------- 
 - #container
---------------------------------------- */
#container {
	width:100%;
	margin:0 auto;
	position: relative;
    overflow: hidden;
}
@media screen and (min-width: 769px) {
	#container .sp {
		display:none !important;
	}
}
@media screen and (max-width: 768px) {
	#container .pc {
		display:none !important;
	}
}

/* ---------------------------------------- 
 - header
---------------------------------------- */
#header{
	text-align: center;
    position: relative;
	top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
	height: 90px;
}
html.hamburger-active #header { /* ハンバーガーメニュー */
	/*position: fixed;*/
}
/*#header.fixed{
	pointer-events: none;
}*/
#header a{
    transition: .3s;
	text-decoration: none;
}
#header a:hover{
	opacity: 0.6;
}
header #header_box{	
	width: 100%;
	height: 90px;
	text-align:center;
    transition: .3s;
	position: absolute;
	background: #dddeda;
}
#header.fixed #header_box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    /*box-shadow: 0 0 2px rgb(0 0 0 / 30%);*/
	height: 75px;
}
#header #header_box > .inner{
	width: 100%;	
	height: 100%;
	/*background: #fff;*/
    margin: 0 auto;
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}
#header .header_logo{	
	height: 26px;
	margin-left: 35px;
	position: relative;
	z-index: 110;
}
#header .header_logo a{
	text-decoration: none;
	display: flex;
    align-items: center;
	height: 100%;
}
#header .header_logo a img{
	display: inline-block;
	backface-visibility: hidden;
	width: auto;
	height: 100%;
}
#header ul.header_list{	
	margin-left: auto;
	margin-right: 25px;
	display: flex;
	font-size: 1.6rem;
	/*font-weight: 300;*/
	text-align: left;
}
#header ul.header_list > li{
	margin-left: 30px;
	backface-visibility: hidden;
}
#header ul.header_list > li > span{
	cursor: pointer;
}
#header ul.header_list > li > ul {
	display: none; 
	position: absolute;
    z-index: 10;
    white-space: nowrap;
    font-size: 1.4rem;
	background: #dddeda;
	padding: 0 10px 5px;
	margin-left: -10px;
}
#header .header_language{	
	margin-right: 25px;
	padding-left: 25px;
	font-size:1.5rem;
	text-decoration: none;
	position: relative;
}
#header .header_language::after {
    content: '';
    display: inline-block;
    background-image: url(/assets/images/common/ico_language.svg);
    background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    width: 17px;
    height: 17px;
    transform: translate(0, -50%);
}
#header .header_language a{
	text-decoration: none;
}
#header .header_language .ja{
	margin-right: 0.2em;
}
#header .header_language .en{
	margin-left: 0.2em;
}
:lang(ja) #header .header_language .ja {
    opacity: 0.6;
    pointer-events: none;
}
:lang(en) #header .header_language .en {
    opacity: 0.6;
	pointer-events: none;
}
#header .reservation {
	margin-right: 175px;
	width: 135px;
	height: 34px;
	font-size:1.5rem;
	line-height: 34px;
	/*padding: 22px 0;*/
}
#header .reservation a {
	display: block;
	width: 100%;
	height: 100%;
	border: solid 1px #111;
	border-radius: 50px;
    transition: opacity .3s;
}
#header .reservation a:hover {
	opacity: 0.6;
}
@media screen and (max-width: 1366px) {
	#header ul.header_list{	
		display: none;
	}
	#header .header_language {
		margin-left: auto;
	}
}
@media screen and (max-width: 768px) {
	#header{
		height: 60px;
	}	
	header #header_box{	
		height: 60px;
	}
	#header.fixed #header_box {
		height: 60px;
	}	
	#header .header_logo{
		margin-left: 4%;
		height: 18px;
	}
	#header .header_language{
		display: none;
	}
	#header .reservation {
		margin-right: calc(4% + 45px);
		width: 90px;
		height: 25px;
		font-size:1.1rem;
		line-height: 25px;
		/*padding: 22px 0;*/
	}
	#header .reservation a {
		display: block;
		width: 100%;
		height: 100%;
		border: solid 1px #111;
		border-radius: 50px;
		transition: opacity .3s;
	}
	#header .reservation a:hover {
		opacity: 0.6;
	}
}

/* hamburger */

/*.hamburger i {
	position: absolute;
    top: 0;
	left: 0;
    display: block;
    width: 30px;
    height: 2px;
    margin: 0 auto;
    background: #222;
}
.hamburger i::before,
.hamburger i::after{
	display: block;
    width: 30px;
    height: 2px;
    margin-top: 8px;
    content: '';
    transition: .3s;
    background: #222;
}
.hamburger i::before{
    margin-top: 10px;
}
.hamburger.active {
	position: fixed;
	top: 43px;
}
.hamburger.active i {
	margin-top: 10px;
    transform: rotate(-45deg);
	background: #222 !important;
}
.hamburger.active i::before {
	display: none;
}
.hamburger.active i::after {
	transform: rotate(90deg);
	margin-top: 0;
	background: #222 !important;
}
.hamburger:hover {
	opacity:0.6;
}
@media screen and (max-width: 768px) {
	
}*/



/* hamburger */
/*.hamburger {
	width: 30px;
	height: 24px;
	position: absolute;
    top: 50%;
    right: 35px;
	cursor: pointer;
	z-index: 1000;
    transform: translate(0,-50%);
}*/
.hamburger {
	width: 125px;
	height: 34px;
	position: absolute;
    top: 50%;
    right: 35px;
	cursor: pointer;
	z-index: 1000;
    transform: translate(0,-50%);
	/*padding: 22px 0;*/
	border: solid 1px #111;
	border-radius: 50px;
    transition: opacity .3s;
	cursor: pointer;
}
.hamburger i {
	position: absolute;
    top: 13px;
	left: 25px;
    display: block;
    width: 25px;
    height: 1px;
    margin: auto;
    background: #111;
	transition: .3s;
}
.hamburger i::after {
	display: block;
    width: 25px;
    height: 1px;
    margin-top: 7px;
    content: '';
    transition: .3s;
    background: #111;
}
.hamburger .hamburger_txt{
	line-height: 34px;
	font-size: 1.5rem;
	padding-left: 35px;
}
.hamburger .hamburger_txt .close{
	display: none;
}
/*.hamburger.active {
	z-index: 110;
}*/
.hamburger.active {
	position: fixed;
	top: 43px;
	border: none;
}
.hamburger.active i {
	margin-top: 4px;
    transform: rotate(-45deg);
}
.hamburger.active i::after {
	transform: rotate(90deg);
	margin-top: 0;
}
.hamburger.active .hamburger_txt .close{
	display: block;
}
.hamburger.active .hamburger_txt .menu{
	display: none;
}
.hamburger:hover {
	opacity:0.6;
}
@media screen and (max-width: 768px) {
	.hamburger {
		right: 4%;
		width: 30px;
        border: none;
	}
	.hamburger.active {
		top: 28px;
	}
	.hamburger i {
		top: 10px;
		left: 0;
		width: 30px;
	}
	.hamburger i::after {
		width: 30px;
	}
	.hamburger .hamburger_txt {
		line-height: 1;
		font-size: 1.0rem;
		padding-left: 0;
		position: absolute;
		left: 0;
		top: 24px;
	}
}
@media screen and (max-width: 480px) {
	/*.hamburger {
		width: 30px;
		top: 15px;
	}
	.hamburger .hamburger-menu__txt{
		display: none;
	}*/
}

/* ---------------------------------------- 
 - gnavi
---------------------------------------- */
#gnavi{
	background:#fff;
	margin:0 auto;
	position: fixed;
	top: 0;
	left: 0;	
	text-align:left;
	overflow: auto;
	width: 100%;
    height: 100%;
    transition: .8s;
	opacity: 0;
    z-index: 1;
    visibility: hidden;
	color:#657568;
}
#gnavi.active{
	opacity: 1;
    z-index: 100;
    visibility: visible;
}
#gnavi a{
    transition: .3s;
	text-decoration: none;
}
#gnavi a:hover{
	opacity: 0.6;
}
#gnavi > .inner{
	width: calc(100% - 70px);
	max-width: 1100px;
	margin:0 auto;
	padding:22vh 0 10vh;
}
/* gnavi_list */
#gnavi .gnavi_list{
    display: flex;
    justify-content: space-between;
}
#gnavi .gnavi_list .gnavi_list-box:nth-child(1){
	width: 30%;
}
#gnavi .gnavi_list .gnavi_list-box:nth-child(2){
	width: 36%;
}
#gnavi .gnavi_list .gnavi_list-box:nth-child(3){
	width: 34%;
}
#gnavi .gnavi_list ul.gnavi_nav > li{
	margin-bottom: 0.4em;
	font-size: 3.4rem;
	font-weight: 200;
	line-height: 1.6;
}
#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub{
	margin-top: 0.6em;
}
#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li{
	font-size: 2.2rem;
	font-weight: 300;
	line-height: 1.6;
	position: relative;
	padding-left: 35px;
	margin-bottom: 0.35em;	
	margin-left: 5px;
}
#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li::after {
    content: "";
    background-color: #92a395;
    width: 15px;
    height: 1px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
}
/* gnavi_reservation */
#gnavi .gnavi_reservation a {  
	position: relative;
	font-size: 2.2rem;
	font-weight: 200;
    line-height: 1.6;
    display: inline-block;
    text-decoration: none;
    box-sizing: border-box;
    background-color: #657568;
    border-radius: 50px;
    text-align: center;
    transition: .3s;
	min-width: 230px;
	padding: 5px 45px 5px 25px;
	color: #fff;
}
#gnavi .gnavi_reservation a::before {
    content: '';
    display: inline-block;
	width: 13px;
    height: 10px;
    position: absolute;
	top:0;
    bottom: 0;
	right: 20px;  
	margin: auto;
    background-image: url(/assets/images/common/ico_arw_next_wht.svg);
	background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
}
#gnavi .gnavi_list ul.gnavi_links{
	font-size: 1.7rem;
	margin: 40px 0 40px 10px;
}
#gnavi .gnavi_list ul.gnavi_links li{
	margin-bottom: 0.6em;
}
/* gnavi_sns */
#gnavi .gnavi_sns {
	display: flex;
    align-items: center;
    margin: 35px 0 0 10px;
}
#gnavi .gnavi_sns .ttl {
	font-size:1.4rem;
	position: relative;
	padding-right: 20px;
}
#gnavi .gnavi_sns .ttl::after {
    content: '';
    display: inline-block;
    background-color: #92a395;
    position: absolute;
    top: 0;
	bottom: 0;
    right: 0;
    width: 1px;
    height: 16px;
	margin: auto;
}
#gnavi .gnavi_sns ul.list {
	display: flex;
    align-items: center;
}
#gnavi .gnavi_sns ul.list li {
	width:21px;
	margin-left: 22px;
}
/* language */
#gnavi .language{
	font-size:1.6rem;
	margin: 15px 0 0 10px;
	padding-left: 30px;
	text-decoration: none;
	position: relative;
}
#gnavi .language::after {
    content: '';
    display: inline-block;
    background-image: url(/assets/images/common/ico_language_grn.svg);
    background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    width: 17px;
    height: 17px;
    transform: translate(0, -50%);
}
#gnavi .language a{
	text-decoration: none;
}
#gnavi .language .ja{
	margin-right: 0.2em;
}
#gnavi .language .en{
	margin-left: 0.2em;
}
:lang(ja) #gnavi .language .ja {
    opacity: 0.6;
    pointer-events: none;
}
:lang(en) #gnavi .language .en {
    opacity: 0.6;
	pointer-events: none;
}
@media screen and (max-width: 1300px) and (min-width: 769px) {
	#gnavi .gnavi_list ul.gnavi_nav > li{
		font-size: 3.0vw;
		font-size: clamp(1rem, 3.0vw, 3.4rem);
	}
	#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li{
		font-size: 2.0vw;
		font-size: clamp(1rem, 2.0vw, 2.2rem);
	}
	#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li::after {
		width: 10px;
	}
	/* gnavi_reservation */
	#gnavi .gnavi_reservation a { 
		font-size: 2.2vw;
		font-size: clamp(1rem, 2.2vw, 2.2rem);
		min-width: 100%;
	}
	#gnavi .gnavi_list ul.gnavi_links{
		font-size: 1.5vw;
		font-size: clamp(1rem, 1.5vw, 1.7rem);
		margin-top: 25px;
		margin-bottom: 25px;
	}
	/* gnavi_sns */
	#gnavi .gnavi_sns .ttl {
		font-size:1.4vw;
		font-size: clamp(1rem, 1.4vw, 1.4rem);
		padding-right: 10px;
	}
	#gnavi .gnavi_sns ul.list li {
		margin-left: 16px;
	}
	/* language */
	#gnavi .language{
		font-size:1.8vw;
		font-size: clamp(1rem, 1.8vw, 1.6rem);
	}	
}
@media screen and (max-width: 768px) {
	#gnavi > .inner{
		width: calc(100% - 8%);
		padding:100px 0 35px;
	}
	/* gnavi_list */
	#gnavi .gnavi_list{
		display: block;
	}
	#gnavi .gnavi_list .gnavi_list-box:nth-child(1),
	#gnavi .gnavi_list .gnavi_list-box:nth-child(2),
	#gnavi .gnavi_list .gnavi_list-box:nth-child(3){
		width: 100%;
	}
	#gnavi .gnavi_list .gnavi_list-box:nth-child(2),
	#gnavi .gnavi_list .gnavi_list-box:nth-child(3){
		margin-top: 1.6em;
	}
	#gnavi .gnavi_list ul.gnavi_nav > li{
		font-size: 2.7rem;
	}
	#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub{
		margin-top: 0.3em;
		margin-bottom: 0.3em;
	}
	#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li{
		font-size: 2rem;
		padding-left: 25px;
	}
	#gnavi .gnavi_list ul.gnavi_nav > li > ul.sub li::after {
		width: 10px;
	}
	/* gnavi_reservation */
	#gnavi .gnavi_reservation a {
		width: 100%;
	}
	#gnavi .gnavi_list ul.gnavi_links{
		font-size: 1.5rem;
	}
	#gnavi .gnavi_list ul.gnavi_links li{
		margin-bottom: 0.6em;
	}
}

/*#gnavi .gnavi_list{
    display: flex;
    justify-content: space-between;
	font-size: 2.8rem;
	line-height: 1.6;
}*/
/* list_menu */
/*#gnavi .gnavi_list .list_menu {
	width:36%;
	padding-bottom: 50px;
}
#gnavi .gnavi_list .list_menu > .menu {
	margin-bottom: 1.8em;
}*/	
/* list_story */
/*#gnavi .gnavi_list .list_story {
	width:28%;
	padding-bottom: 50px;
}	
#gnavi .gnavi_list .list_story > ul.list {
	font-size: 1.6rem;
	margin-top: 1.2em;
}
#gnavi .gnavi_list .list_story > ul.list li {
	margin-bottom: 1.2em;
}*/
/* list_location */
/*#gnavi .gnavi_list .list_location {
	width:40%;
}	
#gnavi .gnavi_list .list_location dl {
	font-size: 1.6rem;
	margin-top: 1.2em;
}
#gnavi .gnavi_list .list_location dl dt {
    position: relative;
    cursor: pointer;
	padding-left: 30px;
}
#gnavi .gnavi_list .list_location dl dt .btn {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: block;
    width: 30px;
    height: 30px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
#gnavi .gnavi_list .list_location dl dt .btn::before,
#gnavi .gnavi_list .list_location dl dt .btn::after {
    display: block;
    content: '';
    background-color: #222;
    position: absolute;
    width: 15px;
    height: 1px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(180deg);
    transition: all .4s;
}	
#gnavi .gnavi_list .list_location dl dt .btn::before {
    transform: translate(-50%, -50%) rotate(90deg);
}
#gnavi .gnavi_list .list_location dl dt.active .btn::before,
#gnavi .gnavi_list .list_location dl.is-open dt.active .btn::before{
    transform: translate(-50%, -50%) rotate(180deg);
}	
#gnavi .gnavi_list .list_location dl > dd {
    display: none;
    padding-left: 30px;
}
#gnavi .gnavi_list .list_location dl.is-open > dd {
    display: block;
}
#gnavi .gnavi_list .list_location dl > dd > ul.list {
    display: flex;
	flex-wrap: wrap;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
}
#gnavi .gnavi_list .list_location dl > dd > ul.list li {
    width:35%;
	margin-top: 1.0em;
}
#gnavi .gnavi_list .list_location dl > dd > ul.list li:nth-child(3n+2) {
    width:28%;
}
#gnavi .gnavi_list .list_location dl > dd > ul.list li:nth-child(3n) {
    width:37%;
}*/
/* gnavi_other */
/*#gnavi .gnavi_other {
	display: flex;
	align-items: center;
}	
#gnavi .gnavi_other .member a {
	display:block;
	min-width:180px;
	height: 40px;
	line-height: 40px;
	border: solid 1px #7c7c7c;
	position: relative;
	letter-spacing: 0.05em;
	font-style: italic;
	padding: 0 35px 0 30px;
}	
#gnavi .gnavi_other .member a::before {
    content: '';
	display: block;
	width: 15px;
	height:15px;
 	background-image: url(/assets/images/common/ico_blank.svg);
  	background-size: contain;
  	vertical-align: text-bottom;
	background-position: left center;
	background-repeat: no-repeat;
	position: absolute;
	right:20px;
	top:0;
	bottom:0;
	margin: auto;
}		
#gnavi .gnavi_other ul.privacy {
	display: flex;
	margin-left: 40px;
}	
#gnavi .gnavi_other ul.privacy li {
	margin-right: 30px;
}	
#gnavi .gnavi_other .language {
	margin-left: auto;
	position: relative;
	padding-left: 40px;
}	
#gnavi .gnavi_other .language::before {
    content: '';
	display: block;
	width: 20px;
	height:20px;
 	background-image: url(/assets/images/common/ico_language.svg);
  	background-size: contain;
  	vertical-align: text-bottom;
	background-position: left center;
	background-repeat: no-repeat;
	position: absolute;
	left:0;
	top:0;
	bottom: 0;
	margin: auto;
}
:lang(ja) #gnavi .gnavi_other .language .ja {
    opacity: 0.6;
    pointer-events: none;
}
:lang(en) #gnavi .gnavi_other .language .en {
    opacity: 0.6;
    pointer-events: none;
}*/
@media screen and (max-width: 1000px) and (min-width: 769px) {
	/*#gnavi .gnavi_list{
		font-size: 2.8vw;
	}*/
	/* list_story */
	/*#gnavi .gnavi_list .list_story > ul.list {
		font-size: 1.6vw;
	}*/
	/* list_location */
	/*#gnavi .gnavi_list .list_location dl {
		font-size: 1.6vw;
	}
	#gnavi .gnavi_list .list_location dl dt .btn {
		width: 20px;
		height: 20px;
	}
	#gnavi .gnavi_list .list_location dl dt .btn::before,
	#gnavi .gnavi_list .list_location dl dt .btn::after {
		width: 12px;
	}	
	#gnavi .gnavi_list .list_location dl > dd > ul.list {
		font-size: 1.4vw;
	}*/
	/* gnavi_other */
	/*#gnavi .gnavi_other {
		font-size: 1.6vw;
	}*/
}
@media screen and (max-width: 768px) {
	/*#gnavi > .inner{
		padding:12vh 0 5vh;
	}	
	#gnavi .gnavi_list{
		display: block;
		font-size: 1.8rem;
	}*/
	/* list_menu */
	/*#gnavi .gnavi_list .list_menu {
		width:100%;
		padding-bottom: 1.0em;
	}
	#gnavi .gnavi_list .list_menu > .menu {
		margin-bottom: 1.0em;
	}*/	
	/* list_story */
	/*#gnavi .gnavi_list .list_story {
		width:100%;
		padding-top: 2.0em;
		padding-bottom: 1.0em;
		border-top: solid 1px #7c7c7c;
	}	
	#gnavi .gnavi_list .list_story > ul.list {
		font-size: 1.4rem;
		margin-top: 1.0em;
	}
	#gnavi .gnavi_list .list_story > ul.list li {
		margin-bottom: 1.2em;
	}*/
	/* list_location */
	/*#gnavi .gnavi_list .list_location {
		width:100%;
		padding-top: 2.0em;
		padding-bottom: 1.0em;
		border-top: solid 1px #7c7c7c;
	}	
	#gnavi .gnavi_list .list_location dl {
		font-size: 1.4rem;
		margin-top: 1.2em;
	}
	#gnavi .gnavi_list .list_location dl > dd {
		padding-left: 10px;
	}
	#gnavi .gnavi_list .list_location dl > dd > ul.list {
		font-size: 1.3rem;
	}*/
	/* gnavi_other */
	/*#gnavi .gnavi_other {
		display: block;
		margin-top: 1.0em;
	}
	#gnavi .gnavi_other ul.privacy {
		margin: 2em 0;
		font-size: 1.3rem;
	}	
	#gnavi .gnavi_other .language {
		padding-left: 30px;
	}*/
}

/* ---------------------------------------- 
 - #follow_member
---------------------------------------- */
/*#follow_member {
	position: fixed;
	top:90px;
	right:35px;
	z-index: 1;	
	transition: .3s;
}
#follow_member.fixed {
	top:20px;
}
#follow_member a {
	display:block;
	min-width:180px;
	height: 40px;
	line-height: 40px;
	border: solid 1px #7c7c7c;
	position: relative;
	letter-spacing: 0.05em;
	font-style: italic;
	padding: 0 35px 0 30px;
	text-decoration: none;
	background: #fff;
}	
#follow_member a::before {
    content: '';
	display: block;
	width: 15px;
	height:15px;
 	background-image: url(/assets/images/common/ico_blank.svg);
  	background-size: contain;
  	vertical-align: text-bottom;
	background-position: left center;
	background-repeat: no-repeat;
	position: absolute;
	right:20px;
	top:0;
	bottom:0;
	margin: auto;
}
@media screen and (max-width: 768px) {
	#follow_member {
		top:60px;
		right:4%;
	}
	#follow_member a {
		min-width:160px;
		padding: 0 25px 0 20px;
	}	
	#follow_member a::before {
		right:10px;
	}
}*/

/* ---------------------------------------- 
 - #cookie_content
---------------------------------------- */
#cookie_content{
	position: fixed;
	bottom: 15px;
	left:0;
	right: 0;
	width: 96%;
	max-width: 1200px;	
	background: rgba(17,17,17,0.95);
	margin: 0 auto;
	padding: 20px 40px 20px 30px;
	box-sizing: border-box;
	font-size: 1.4rem;
	line-height: 1.8;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	z-index: 1000;
	color:#fff;
	border: solid 1px #dddeda;
}
#cookie_content.is-fade{
	opacity: 1;
	visibility: visible;
}
#cookie_content.is-close{
	opacity: 0;
	visibility: hidden;
	animation:none;
}
.cookie_close{
	position: absolute;
	top: 10px;
	right: 10px;
	width: 30px;
	height: 30px;
	cursor: pointer;
}
.cookie_close::before,
.cookie_close::after {
    display: block;
    width: 30px;
    height: 2px;
    content: '';
    transition: .3s;
    background: #fff;
	margin-top: 14px;
}
.cookie_close::before {
    transform: rotate(-45deg);
}
.cookie_close::after {
    transform: rotate(45deg);
    margin-top: -2px;
    background: #fff !important;
}
.cookie_txt {
	margin-bottom: 0.2em;
}
.cookie_btn {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.cookie_btn .privacy {
	position: relative;
	padding-right: 20px;
}
.cookie_btn .privacy::before {
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background-image: url(/assets/images/common/ico_blank_wht.svg);
    background-size: contain;
    vertical-align: text-bottom;
    background-position: left center;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.cookie_btn .privacy:hover{
	text-decoration: none;
}
.cookie_btn .agree{
	display: block;
	font-size: 1.6rem;
	width: 160px;
	height: 50px;
	line-height: 50px;
	padding: 0 35px;
	transition: .3s;
	text-decoration: none;
	text-align: center;
	border:solid 1px #fff;
	color: #fff;
}
.cookie_btn .agree:hover{
	opacity: 0.6;
}
@media screen and (max-width: 768px) {
	#cookie_content{
		font-size: 1.4rem;
		padding: 20px 40px 20px 20px;
	}
	.cookie_close{
		top: 10px;
		right: 20px;
		width: 20px;
		height: 20px;
	}
	.cookie_txt {
		margin-bottom: 0.5em;
	}
	.cookie_btn .privacy {
		letter-spacing: 0;
	}
	.cookie_btn .agree{
		font-size: 1.5rem;
		width: 110px;
		height: 40px;
		line-height: 40px;
		padding: 0 2%;
	}
}

/* ---------------------------------------- 
 - #contents
---------------------------------------- */
#contents {
	display: block;
    position: relative;
    overflow: hidden;
}

/* ---------------------------------------- 
 - contents（maintitle）メインタイトル
---------------------------------------- */
#maintitle {
	margin: 80px auto;
	text-align: center;
}
#maintitle .ttl {
	width: 90%;
	font-size: 6.0rem;
	font-weight: 100;
	line-height: 1.2;
	color: #657568;
	margin: 0 auto 0.6em;
}
#maintitle .catch {
	width: 90%;
	font-size: 3.2rem;
	font-weight: 200;
	line-height: 1.6;
	margin: 0 auto 0.8em;
}
#maintitle .lead {
	width: 90%;
	max-width: 800px;
	font-size: 1.6rem;
	margin: 0 auto;
}
#maintitle .lead a:hover {
	text-decoration: none;
}
#maintitle ul.notice {
	width: 90%;
	max-width: 800px;
	margin: 1.0em auto 0;
}
#maintitle ul.notice li {
	text-indent: -1.0em;
	margin-left: 1.0em;
	margin-bottom: 0.3em;
}
#maintitle ul.notice li:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 768px) {
	#maintitle {
		margin-top: 25px;
		margin-bottom: 40px;
	}
	#maintitle .ttl {
		font-size: 3.2rem;
		font-weight: 200;
	}
	#maintitle .catch {
		font-size: 2.0rem;
		font-weight: 300;
	}
	#maintitle .lead {
		font-size: 1.5rem;
	}
	#maintitle ul.notice {
		font-size: 1.4rem;
	}
}

/* visual（画像有） */
#maintitle.is-visual {
	margin-top: 0;
}
#maintitle.is-visual .visual {
	width: 100%;
	max-height: 500px;
	height: 45vw;
	margin-bottom: 70px;
	overflow: hidden;
}
#maintitle.is-visual .visual picture,
#maintitle.is-visual .visual img{
	width: 100%;
	height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover';
}
@media screen and (min-width: 1367px) {
	#maintitle.is-visual .visual {
		max-height: 600px;
	}
}
@media screen and (max-width: 768px) {
	/*#maintitle.is-visual .ttl {
		font-size: 4.5rem;
	}*/
	#maintitle.is-visual .visual {
		height: 55vw;
		margin-bottom: 35px;
	}
}

/* kiyaku（タイトル日本号表記） */
/*#maintitle.kiyaku .ttl .en {
	font-size: 1.5rem;
}
#maintitle.kiyaku .ttl .jp {
	font-size: 3.8rem;
	line-height: 1.6;
	margin-bottom: 0.2em;
}
#maintitle.kiyaku .lead.ta_l {
    text-align: left;
}*/
/*@media screen and (max-width: 768px) {
	#maintitle.kiyaku .ttl .en {
		font-size: 1.2rem;
	}
	#maintitle.kiyaku .ttl .jp {
		font-size: 2.4rem;
	}
}*/

/* ---------------------------------------- 
 - contents（btn_more,section_btn）共通ボタン
---------------------------------------- */
/* link_text */
.link_text a,
.link_text > span {
    position: relative;
    line-height: 1.6;
    display: inline-block;
	text-decoration: none;
	text-align:left;
	box-sizing: border-box;
	padding-left: 20px;
	font-style: italic;
}
.link_text a::after,
.link_text > span::after{
    content: '';
    display: inline-block;	
    background-image: url(/assets/images/common/ico_arw_next.svg);
    background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
	width: 9px;
    height: 10px;
    transform: translate(0, -50%);
}
.link_text a span,
.link_text > span span{
    border-bottom: solid 1px #222;
}
.link_text a:hover span,
a:hover .link_text span{
    border: none;
}
.link_text.blank a,
.link_text.blank > span { /* blank */
	padding-left: 0;
	padding-right: 20px;
}
.link_text.blank a::after,
.link_text.blank > span::after{ /* blank */
	left: auto;
	right: 0;
    width: 15px;
    height: 15px;
    background-image: url(/assets/images/common/ico_blank.svg);
}
@media screen and (max-width: 768px) {
	.link_text {
		font-size: 1.4rem;
	}
}

/* link_btn */
.link_btn a {
    position: relative;
    line-height: 1.6;
    display: inline-block;
	text-decoration: none;
	text-align:left;
	box-sizing: border-box;
	border: solid 1px #657568;
	border-radius: 50px;
	min-width: 225px;
	text-align: center;
	padding: 10px 50px 10px 45px;
	color: #657568;
	transition: .3s;
	font-weight: 400;
}
.link_btn a::after {
    content: '';
    display: inline-block;	
    background-image: url(/assets/images/common/ico_arw_next_grn.svg);
    background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 20px;
	width: 13px;
    height: 10px;
    transform: translate(0, -50%);
}
.link_btn.blank a::after { /* blank */
    width: 14px;
    height: 14px;
    background-image: url(/assets/images/common/ico_blank_grn.svg);
}
.link_btn.modal a::after { /* modal */
    width: 14px;
    height: 13px;
    background-image: url(/assets/images/common/ico_modal_grn.svg);
}
.link_btn.prev a { /* prev */
	padding: 10px 45px 10px 50px;
}
.link_btn.prev a::after { /* prev */
	right: auto;
    left: 20px;
    background-image: url(/assets/images/common/ico_arw_prev_grn.svg);
}
.link_btn a:hover {
    opacity: 0.6;
}
@media screen and (max-width: 768px) {
	.link_btn a {
		font-size: 1.4rem;
		padding: 7px 35px 7px 30px;
		min-width: 200px;
	}
	.link_btn a::after {
		right: 13px;
	}
	.link_btn.prev a { /* prev */
		padding: 7px 30px 7px 35px;
	}
	.link_btn.prev a::after {
		left: 13px;
	}
}

/* ---------------------------------------- 
 - swiper（スライ所ショー共通ボタン）
---------------------------------------- */
.swiper {
	position: relative;
}
.swiper .swiper-pagination { /* swiper */
    bottom: -35px !important;
    text-align: right;
}
.swiper .swiper-pagination-bullet { /* swiper */
    margin: 0 7px !important;
}
.swiper .swiper-pagination-bullet { /* swiper */
	border: solid 1px #657568;
    background: #dddeda;
	opacity: 1;
}
.swiper .swiper-pagination-bullet-active { /* swiper */
    background: #657568;
}

/* ---------------------------------------- 
 - contents（breadcrumb）パンくずリスト
---------------------------------------- */
/*#breadcrumb {
	width: 100%;
	margin:0 auto;
	text-align:left;
}
#breadcrumb ul.breadcrumb_list {
	display: flex;
	flex-wrap: wrap;
	padding: 25px 35px;
}
#breadcrumb ul.breadcrumb_list li {
	font-size:1.3rem;
	position:relative;
	padding-left: 15px;
	margin-left: 8px;
	line-height: 0.8;
}
#breadcrumb ul.breadcrumb_list li:first-child {
	padding-left: 0;
	margin-left:0;
}
#breadcrumb ul.breadcrumb_list li a {
	font-weight:normal;
	display:inline-block;
	transition: 0.5s;
	text-decoration: none;
}
#breadcrumb ul.breadcrumb_list li::before{
	content: "/";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
}
#breadcrumb ul.breadcrumb_list li:first-child::before {
	display: none;
}
#breadcrumb ul.breadcrumb_list li a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	#breadcrumb ul.breadcrumb_list {
		padding: 15px 5%;
	}
	#breadcrumb ul.breadcrumb_list li {
		font-size:1.1rem;
	}
}*/

/* ---------------------------------------- 
 - #contact_common
---------------------------------------- */
/*#contact_common{
	width: 100%;
	height: 50vw;
	max-height: 550px;
	overflow: hidden;
	position: relative;
}
#contact_common .visual{	
	width: 100%;
	margin-top: -15%;
}
#contact_common .visual img,
#contact_common .visual picture {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover';
}
#contact_common .txt_box {
    position: absolute;
	left: 50%;
    top: 50%;	
    width: 94%;
    max-width: 1200px;
	transform: translate(-50%,-50%); 
	z-index: 1;
	color:#fff;
	text-align: center;
}
#contact_common .txt_box .inner {
	width: 90%;
    max-width: 550px;
	margin-left: auto;
}
#contact_common .txt_box .ttl {
	font-size: 5.4rem;
	line-height: 1.6;
}
#contact_common .txt_box .txt {
	margin-bottom: 0.7em;
}
#contact_common .txt_box a::after {
	background-image: url(/assets/images/common/ico_arw_next_wht.svg);
}
#contact_common .txt_box a span {
	border-color: #fff;
}
@media screen and (min-width: 1360px) {
	#contact_common .visual{
		margin-top: -25%;
	}
}
@media screen and (max-width: 768px) {
	#contact_common{
		height: 480px;
	}
	#contact_common .visual{
		margin-top: -25%;
	}
	#contact_common .txt_box .inner {
		margin: 0 auto;
	}
	#contact_common .txt_box .ttl {
		font-size: 3.6rem;
	}
}
@media screen and (max-width: 480px) {
	#contact_common{
		height: 400px;
	}
}*/

/* ---------------------------------------- 
 - modaal
---------------------------------------- */
/* ✕ボタンの位置調整 */
.modaal-close {	
	background: none !important;
}  
/* ✕ボタンの色 */
.modaal-close:after, 
.modaal-close:before {
	width: 2px !important;
    height: 40px !important;
	background:#fff !important;  
}  
/* ホバーしたときの✕ボタンの色 */
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
	background: #fff !important;
	opacity: 0.6;
}
/* 画像拡大 */
@media screen and (min-width: 769px) {
	.modaal-gallery-item img {
		max-height: 80vh;
	}
}

/* ---------------------------------------- 
 - footer
---------------------------------------- */
#footer {
	position: relative;
	width:100%;
	background:#111;
	color:#fff;
}
#footer a {
    transition: .3s;
	text-decoration: none;
}
#footer a:hover {
	opacity: 0.6;
}
/* footer_access */
.footer_access{
	width:90%;
	max-width: 1000px;
	padding: 100px 0 90px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
}
.footer_access .map{
	width:42%;
	max-width: 215px;
	margin-left: auto;
	margin-right: 8%;
	margin-top: 2%;
}
.footer_access .access_box{
	width:50%;
	font-size:1.5rem;
}
.footer_access .access_box .logo{
	height: 21px;
	margin-bottom: 20px;
	margin-top: 5px;
}
.footer_access .access_box .logo img{
	display: inline-block;
    backface-visibility: hidden;
    height: 100%;
	width: auto;
}
.footer_access .access_box .tel span,
.footer_access .access_box .fax span,
.footer_access .access_box .mail a{
	margin-left: 0.6em;
}
.footer_access .access_box .guest {
	font-size:1.3rem;
	margin-top: 1.0em;
}
.footer_access .access_box .guest .txt span {
	font-size:1.5rem;
}
.footer_access .access_box ul.link_list {  
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 20px;
}
.footer_access .access_box ul.link_list li {  
	margin-right: 40px;
	margin-bottom: 15px;
}
.footer_access .access_box ul.link_list li:last-child {  
	margin-right: 0;
}
.footer_access .access_box ul.link_list li a {  
	display: flex;
	align-items: center;
}
.footer_access .access_box ul.link_list li .arw {  
	display: inline-block;
    width: 27px;
    height: 27px;
    position: relative;
	border: solid 1px #fff;
	border-radius: 50%;
	margin-right: 15px;
}
.footer_access .access_box ul.link_list li .arw::before {
    content: '';
    display: inline-block;
	width: 11px;
    height: 8px;
    position: absolute;
	top:0;
    bottom: 0;
	left: 0;
	right: 0;   
	margin: auto;
    background-image: url(/assets/images/common/ico_arw_next_wht.svg);
	background-size: contain;
    vertical-align: text-bottom;
    background-position: left top;
    background-repeat: no-repeat;
}
.footer_access .access_box ul.link_list li.link_btn.blank a {
	font-size:1.4rem;
	border-color: #fff;
	border-radius: 40px;
	min-width: 170px;
	padding: 5px 45px 5px 25px;
	color:#fff;
}
.footer_access .access_box ul.link_list li.link_btn.blank a::after {
    background-image: url(/assets/images/common/ico_blank_wht.svg);
}
.footer_access .access_box .sns_box {
	display: flex;
    align-items: center;
}
.footer_access .access_box .sns_box .ttl {
	font-size:1.4rem;
	position: relative;
	padding-right: 20px;
}
.footer_access .access_box .sns_box .ttl::after {
    content: '';
    display: inline-block;
    background-color: #949494;
    position: absolute;
    top: 0;
	bottom: 0;
    right: 0;
    width: 1px;
    height: 16px;
	margin: auto;
}
.footer_access .access_box .sns_box ul.list {
	display: flex;
    align-items: center;
}
.footer_access .access_box .sns_box ul.list li {
	width:21px;
	margin-left: 22px;
}

/* footer_menu */
.footer_menu{
	width: 94%;
	margin: 0 auto 50px;
	font-size: 1.4rem;
	line-height: 1.6;
}
.footer_menu ul.list{
    display: flex;
    justify-content: center;
	flex-wrap: wrap;
}
.footer_menu ul.list li{
	margin: 0 20px;
}
/* footer_corporate */
#footer_corporate{
	width:100%;
	padding:50px 5%;
	box-sizing: border-box;
	color: #fff;
	border-top: solid 1px #50514f;
}
#footer_corporate .corporate_logo {
	margin:0 auto 20px;
	width: 35%;
	max-width: 150px;
}
#footer_corporate ul.corporate_links {
	font-size: 1.2rem;
	display: flex;
	justify-content: center;
	color: #a1a1a1;
}
#footer_corporate ul.corporate_links li {
	margin: 0 20px;
}
#footer_corporate .copy {
	font-size: 1.2rem;
	color: #a1a1a1;
	text-align: center;
	margin-top: 50px;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
	/* footer_menu */
	.footer_menu{
		font-size: 1.5vw;
	}
	.footer_menu ul.list li{
		margin: 0 1.5%;
	}
}
@media screen and (max-width: 768px) {
	/* footer_access */
	.footer_access{
		padding: 50px 0 45px;
	}
	.footer_access .map{
		display: none;
	}
	.footer_access .access_box{
		width:100%;
		font-size:1.4rem;
	}
	.footer_access .access_box .guest .txt span {
		font-size:1.4rem;
	}
	.footer_access .access_box .logo{
		height: 18px;
		margin-bottom: 20px;
		margin-top: 0;
	}
	.footer_access .access_box ul.link_list {
		margin-top: 20px;
	}
	.footer_access .access_box ul.link_list li {  
		margin-right: 5%;
		font-size:1.3rem;
	}
	.footer_access .access_box ul.link_list li a {  
		display: flex;
		align-items: center;
	}
	.footer_access .access_box ul.link_list li .arw { 
		width: 20px;
		height: 20px;
		margin-right: 10px;
	}
	.footer_access .access_box ul.link_list li .arw::before {
		width: 9px;
		height: 6px;
	}
	.footer_access .access_box ul.link_list li.link_btn.blank a {
		font-size:1.1rem;
		min-width: 120px;
		padding: 5px 30px 5px 15px;
	}
	.footer_access .access_box ul.link_list li.link_btn.blank a::after {
		background-image: url(/assets/images/common/ico_blank_wht.svg);
		right: 15px;
	}
	.footer_access .access_box .sns_box {
		margin-top: 15px;
	}
	.footer_access .access_box .sns_box .ttl {
		font-size:1.3rem;
	}
	/* footer_menu */
	.footer_menu{
		width: 94%;
		margin-bottom: 20px;
		font-size: 1.3rem;
	}
	.footer_menu ul.list{
		display: flex;
		justify-content:space-between;
		flex-wrap: wrap;
	}
	.footer_menu ul.list li{
		margin: 0 auto 20px;
		width: 48%;
		letter-spacing: 0;
	}
	/* footer_corporate */
	#footer_corporate{
		padding:30px 4%;
	}
	#footer_corporate .corporate_logo {
		margin-bottom: 25px;
	}
	#footer_corporate ul.corporate_links {
		font-size: 1.1rem;
		flex-wrap: wrap;
	}
	#footer_corporate ul.corporate_links li {
		margin: 0 auto 15px;
	}
	#footer_corporate .copy {
		font-size: 1.1rem;
		letter-spacing: 0;
		margin-top: 30px;
	}
}

/* ---------------------------------------- 
 - padding / margin
---------------------------------------- */
.pdB5 { padding-bottom:5px !important; }
.pdB10 { padding-bottom:10px !important; }
.pdB20 { padding-bottom:20px !important; }
.pdB30 { padding-bottom:30px !important; }
.pdB35 { padding-bottom:35px !important; }
.pdB45 { padding-bottom:45px !important; }
.pdB80 { padding-bottom:80px !important; }
.pdB100 { padding-bottom:100px !important; }
.pdB120 { padding-bottom:120px !important; }
.pdB140 { padding-bottom:140px !important; }
.pdB160 { padding-bottom:160px !important; }

.pdT5 { padding-top:5px !important; }
.pdT10 { padding-top:10px !important; }
.pdT15 { padding-top:15px !important; }
.pdT20 { padding-top:20px !important; }
.pdT25 { padding-top:25px !important; }
.pdT30 { padding-top:30px !important; }
.pdT35 { padding-top:35px !important; }
.pdT40 { padding-top:40px !important; }
.pdT45 { padding-top:45px !important; }
.pdT50 { padding-top:50px !important; }
.pdT55 { padding-top:55px !important; }
.pdT60 { padding-top:60px !important; }
.pdT65 { padding-top:65px !important; }
.pdT70 { padding-top:70px !important; }
.pdT75 { padding-top:75px !important; }
.pdT80 { padding-top:80px !important; }
.pdT85 { padding-top:85px !important; }
.pdT100 { padding-top:100px !important; }
.pdT110 { padding-top:110px !important; }
.pdT115 { padding-top:115px !important; }

.pdT0_1em { padding-top:0.1em !important; }
.pdT1em { padding-top:1em !important; }
.pdT1_5em { padding-top:1.5em !important; }
.pdT2em { padding-top:2em !important; }
.pdT2_5em { padding-top:2.5em !important; }
.pdT3em { padding-top:3em !important; }

.pdR5 { padding-right:5px !important; }
.pdR10 { padding-right:10px !important; }
.pdR25 { padding-right:25px !important; }
.pdR50 { padding-right:50px !important; }

.pdL5 { padding-left:5px !important; }
.pdL10 { padding-left:10px !important; }
.pdL20 { padding-left:20px !important; }
.pdL25 { padding-left:25px !important; }
.pdL35 { padding-left:35px !important; }
.pdL40 { padding-left:40px !important; }
.pdL50 { padding-left:50px !important; }
.pdL70 { padding-left:70px !important; }
.pdL90 { padding-left:90px !important; }
.pdL95 { padding-left:95px !important; }
.pdL100 { padding-left:100px !important; }
.pdL1em { padding-left:1em !important; }
.pdL2em { padding-left:2em !important; }

.mgB10 { margin-bottom:10px !important; }
.mgB20 { margin-bottom:20px !important; }
.mgB25 { margin-bottom:25px !important; }

.mgT10 { margin-top:10px !important; }
.mgT15 { margin-top:15px !important; }
.mgT20 { margin-top:20px !important; }
.mgT30 { margin-top:30px !important; }
.mgT35 { margin-top:35px !important; }
.mgT40 { margin-top:40px !important; }
.mgT45 { margin-top:45px !important; }
.mgT60 { margin-top:60px !important; }
.mgT80 { margin-top:80px !important; }

.mgT0_1em { margin-top:0.1em !important; }
.mgT1em { margin-top:1em !important; }
.mgT1_5em { margin-top:1.5em !important; }
.mgT2em { margin-top:2em !important; }
.mgT3em { margin-top:3em !important; }

.mgL5 { margin-left:5px !important; }
.mgL10 { margin-left:10px !important; }
.mgL15 { margin-left:15px !important; }
.mgL20 { margin-left:20px !important; }
.mgL30 { margin-left:30px !important; }
.mgL35 { margin-left:35px !important; }
.mgL40 { margin-left:40px !important; }
.mgL45 { margin-left:45px !important; }

.mgR5 { margin-right:5px !important; }
.mgR10 { margin-right:10px !important; }
.mgR15 { margin-right:15px !important; }
.mgR20 { margin-right:20px !important; }
.mgR30 { margin-right:30px !important; }
.mgR35 { margin-right:35px !important; }
.mgR40 { margin-right:40px !important; }
.mgR45 { margin-right:45px !important; }