@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=EB+Garamond:400,500,600,700&display=swap");



/* CSS Document */
*{
	box-sizing: border-box!important;
}
#wrapper{
	position: relative;
	animation: fadein 3s forwards;
}

#vimeo-record-extension{
	display: none;
}

@keyframes fadein {
	0% {opacity: 0}
	100% {opacity: 1}
}

.kodomo{
	
	font-weight: 400;
	font-style: normal;
}

.gnav-box a{
	
	font-weight: 400;
	font-style: normal;
}


.subp #wrapper {
    background-image: url(../img/common/sub-bk.jpg);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
}
header #panel-btn .close {
    background: transparent;
	}
	header #panel-btn .close:before,
	header #panel-btn .close:after {
    margin-top: -1px;
	}
	header #panel-btn .close:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
	}
header #panel-btn .close:after {
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
	}
.tel-area .txt02 span {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif;
}
html{
	font-size: 62.5%;	
}

body {
	/*font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;*/
	/*font-family: "times new roman", "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro","HG明朝E", "ＭＳ 明朝","Sawarabi Mincho", sans-serif;*/
	/*font-family: 'Noto Serif JP', serif;*/
	/*font-family: "游明朝", YuMincho, 'Yu Mincho', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", "MS 明朝", serif;*/
	
	
	color: #354245;

	line-height: 1.8;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  -webkit-print-color-adjust: exact;

	background-color: #fff;
	
	font-family: "montserrat",'Noto Sans JP', sans-serif;
	font-weight: 400;
}

.montserrat-l{
font-family: montserrat, sans-serif;
font-style: normal;
font-weight: 300;

}

.montserrat-r{
font-family: montserrat, sans-serif;
font-style: normal;
font-weight: 400;

}

.montserrat-m{
font-family: montserrat, sans-serif;
font-style: normal;
font-weight: 500;

}

.montserrat-b{
font-family: montserrat, sans-serif;
font-style: normal;
font-weight: 700;

}

img { width:100%; height:auto; display:block;-webkit-backface-visibility: hidden;}
a   { 
	text-decoration:none; color:#354245;
	
}
ul  { list-style:none;}
.gothic   { font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif" }
.garamond { font-family: 'EB Garamond', serif; }
.pc { display: block;}
.sp { display: none;}
.cf:after,
.cf::after {
	content: "";
	display: table;
	clear: both;
}
.cf > .left  { float: left;margin-top: 20px;}
.cf > .right  { float: right;margin-right: 20px;
    margin-top: 20px;
max-width: calc(100% - 220px);

}
.mw960     { width: 90%;  max-width:  960px; margin: 0 auto;}
.mw1200    { width: 90%;  max-width: 1200px; margin: 0 auto;}
.mw1600    { width: 90%;  max-width: 1600px; margin: 0 auto;}
.hov08 {
  transition: 0.4s;
}
#anchor_top {height: 0;} 

/* --------------------------------------------------------------------------------------------------------------------- header */
header .wrap {
	width: 100%;
  
	position: fixed;
	z-index: 9999;
}
header .inner {
	box-sizing: border-box;
}

.gnav-box{
	display: flex;
	justify-content: space-between;
	background: #ccc;
    border-radius: 50px;
    padding: 0px 10px;
	background: linear-gradient(to right, #CCE6E1, #EAF2F4);
}




.gnav-box-g{
	display: flex;
	justify-content: space-around;
	align-items: center;
	
}




/*! CSS Used keyframes */

@-webkit-keyframes btnAnime02 {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -6px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}

@-moz-keyframes btnAnime02 {
  0% {
    -moz-transform: translate(0, 0);
  }
  50% {
    -moz-transform: translate(0, -6px);
  }
  100% {
    -moz-transform: translate(0, 0);
  }
}


/*
header #gNav ul li:nth-child(1) a:nth-child(1) {
	margin-top: 0.6em;
}
header #gNav ul li:nth-child(1) a:nth-child(2) {
}
header #gNav ul li:nth-child(1) a:before {
	display: inline-block;
	content: '';
	width: 0.5em;
	height: 0.5em;
	margin-right: 0.75em;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(-45deg);
	transform-origin: top;
}
*/
/*
header #gNav ul li:nth-child(3) a span {
	opacity: 0.4;
}
*/




header #gNav02 {
	padding: 1.25em 0 1.0em;
}
header #gNav02 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
	text-align: center;
	letter-spacing: -0.4em;
  width: 96%;
}
header #gNav02 ul li {
	display: inline-block;
  width: 12.5%;
}
header #gNav02 ul li:nth-last-child(1) {
}
header #gNav02 ul li a {
  display: inline-block;
	font-size: 75%;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	letter-spacing: normal;
	padding: 0.25em 0;
  width: 100%;
	box-sizing: border-box;
	border-right: 1px solid #d3d2d2;
	position: relative;
}
header #gNav02 ul li:first-child a {
	border-left: 1px solid #d3d2d2;
}
header #gNav02 ul li a:after {
	display: inline-block;
	content: '';
	width: 0;
	height: 2px;
	margin: auto;
	background: #000;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
	transition: 0.4s;
	width: 0%;
}
body.top header #gNav02 ul li:nth-child(1) a {
  color: #000;
}
body.top header #gNav02 ul li:nth-child(1) a:after {
	width: 100%;
}
header #gNav02 ul li a:before {
  display: block;
  content: '';
  white-space: nowrap;
  margin: auto;
  position: absolute;
  top: 0.25em;
  left: 0;
  right: 0;
  z-index: 100;
  opacity: 0;
  transition: 0.4s;
}
/*header #gNav02 ul li:nth-child(8) a:before { content: '会社案内'; }
header #gNav02 ul li:nth-child(7) a:before { content: 'モデルルーム'; }
header #gNav02 ul li:nth-child(6) a:before { content: '設備･仕様'; }
header #gNav02 ul li:nth-child(5) a:before { content: '間取り'; }
header #gNav02 ul li:nth-child(4) a:before { content: 'デザイン'; }
header #gNav02 ul li:nth-child(3) a:before { content: '周辺環境'; }
header #gNav02 ul li:nth-child(2) a:before { content: '資産性'; }
header #gNav02 ul li:nth-child(1) a:before { content: 'トップ'; }*/





/*header #gNav02 ul li:nth-child(3) a {
	pointer-events: none;
  z-index: -1;
}

header #gNav02 ul li:nth-child(3) a {
	opacity: 0.3;
}*/



header #fNav {
	background: #1a1a1a;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
}
header #fNav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/*border-top: 1px solid #aaa;*/
}
header #fNav ul li {
	text-align: center;
	box-sizing: border-box;
	width: 20%;
}
header #fNav ul li:nth-child(1) {
	width: 80%;
}
header #fNav ul li:nth-child(2) {
	
}
header #fNav ul li:nth-child(3) {
	
}
header #fNav ul li:nth-child(1) {
	/*border-right: 1px solid #aaa;*/
}
header #fNav ul li a {
	display: block;
	color: #fff;
	font-size: 137.5%;
	font-weight: bold;
	line-height: 3;
	background: #000;
	border-right: #fff solid 1px;
}
header #fNav ul li:nth-child(1) a {
}
header #fNav ul li:nth-child(2) a {
}
header #fNav ul li:nth-child(3) a {
}
header #fNav ul li:nth-child(4) a {
	
}

  .inner02{
		display: none;

	}


@media only screen and (max-width: 768px) {
  .inner02{
		display: block;
		position: relative;
	opacity: 1;
    padding: 20px 5px;
	transition: all 0.4s ease-out 0s;
	}


header .wrap.js_active .inner02{
		display: block;
		position: relative;
	opacity: 1;
    padding: 5px;
	}
	
	  
}


/* --------------------------------------------------------------------------------------------------------------------- header END */
/* --------------------------------------------------------------------------------------------------------------------- billboard */

h2.st{
	text-align: center;
	margin-bottom: 2em;
	
}
h2.st img{
	height: 1.2em;
	
}
.entry-btn{
	display: block;
	background: #B59A5A;
	color: #fff;
	padding: 1em;
	max-width: 300px;
	margin: 0em auto 7em;
	text-align: center;
}



.caption-sec{
	background: #000;
	color: #fff;
	font-size: 80%;
	padding: 4em 0px;
}

.cv-sec{
	padding: 4em 0px;
	background: #F4F0E6;
}
.cv-sec-inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
}


.tel-area{
	width: 50%;
	
}
.logo-area{
	max-width: 200px;
}

.free{
	max-width: 36px;
	display: inline-block;
	margin-right: 10px;
}
.tel-area .txt02{
	font-size: 300%;
	line-height: 1.2;
}

.tel-area .txt03{
	font-size: 80%;
}




@media only screen and (max-width: 767px) {
	.cv-sec-inner{
	display: block;
	justify-content: space-between;
	align-items: center;
}


.tel-area{
	width: 100%;
	text-align: center;
}
.logo-area{
	max-width: 200px;
}

	
	
	.logo-area{
	max-width: 200px;
		margin: 1em auto;
}
	
	
}

.second-h2{
	font-size: 150%;
	text-align: center;
	margin-bottom: 1em;
	margin-top: 2em;
}

#billboard {
	
	/*overflow: hidden;*/
}
#billboard.page {
}
#billboard.page .inner01 {
	padding: 13em 0 12.75em;
	
	position: relative;
	z-index: 100;
}

#billboard.page .inner01 h2.ttl01 {
	color: #fff;
	font-size: 200%;
	font-weight: 300;
	line-height: 1;
	text-align: center;
}
#billboard.page .inner01 h2.ttl01:after {
	display: none;
	content: '';
	width: 0;
	height: 1px;
	margin: -0.18em auto 0;
  background: #000;
}


/* --------------------------------------------------------------------------------------------------------------------- billboard END */
/* --------------------------------------------------------------------------------------------------------------------- contents */
#contents {
	overflow: hidden;

}
@media only screen and (max-width: 767px) {
	#contents {
	
}
}
/* --------------------------------------------------------------------------------------------------------------------- contents END */
/* --------------------------------------------------------------------------------------------------------------------- footer */
footer {
position: relative;
}
@media only screen and (max-width: 767px) {
	footer {

}
}


.spate{
	
}
@media only screen and (max-width: 767px) {
	.spate{
	
}
}
/*
/* --------------------------------------------------------------------------------------------------------------------- footer END */
@media only screen and (max-width: 1200px) {
	.mw1200 { width: 90%; }
	header .inner {
		width: 100%;
    padding-left: 2%;
	}
	header .left a img {
    width: 100%;
    height: auto;
	}
  header #gNav02 {
    padding: 0.75em 0 0.5em;
  }
	header #gNav02 ul li a {
		font-size: 81.25%;
    padding: 0.15em 0;
	}	
	#billboard {
    margin-top: 0px;
	}
	
}
@media only screen and (max-width: 960px) {
  header #gNav02 ul {
    justify-content: flex-start;
  }
  header #gNav02 ul li {
    width: 25%;
    margin-top: 0.5em;
  }
  #billboard {
    margin-top: 0px;
  }
	
}

#fadeLayer {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		opacity: 0.8;
		display: none;
		z-index: 9997;
	}
@media (min-width: 768px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
  .hov08:hover { opacity: 0.3; transition: 1.0s; }
	header #gNav02 ul li a:hover {
		transition: 0.4s;
	}
	header #gNav02 ul li a:hover {
    background: #f9f7f0;
	}
	header #gNav02 ul li a:hover:after {
		width: 80%;
		transition: 0.4s;
	}
  header #gNav02 ul li a:hover:before {
    opacity: 1;
    transition: 0.4s;
  }
  header #gNav02 ul li a:hover span {
    opacity: 0.8;
    transition: 0.4s;
  }

}
@media only screen and (max-width: 767px) {
	
	
	.pc   { display: none;}
	.sp   { display: block;}
	br.sp { line-height: 0;}
	body {
		font-size: 16px;
		width: 100vw;
	}
	
	#billboard {
    margin-top: 0px;
	}
  #billboard.page .inner01 {
    padding: 8em 0 7.75em;
  }
	#billboard.page .inner01 h2.ttl01 {
		font-size: 200%;
	}
	#contents {
	}
	
	
	
}
@media only screen and (max-width: 767px) and (orientation: landscape) {
  body {
    font-size: 2.2vw;
  }
  header #gNav02 ul li a {
    line-height: 2.5;
  }
}

@media (min-width: 768px) {
	.pc{display: block;}
	.sp{display: none!important;}
}

@media (max-width: 767px) {
	.pc{display: none;}
	.sp{display: block;}
	
}
@media (max-width: 599px) {
.tab-pc{
	display: none;
}
}
@media (min-width: 600px) {
.tab-pc{
	display: block;
}
}
/*header*/
header .inner {
		width: 100%;
    height: 60px;
    padding: 0px 0 0;
    box-sizing: border-box;
	}
	header .left {
		padding: 20px;
		display: flex;
		align-items: center;
		transition: all 0.4s;
	}

	
header .left .g-logo {
	display: block;
	width: 180px;
	transition: all 0.4s;
	
}
header .left .ggst {
	display: block;
	font-size: 0.8rem;
	color: #fff;
	transition: all 0.4s;
	font-weight: normal;
	letter-spacing: 2px;
	margin-left: 10px;
}

	header #btnNavView {
    display: block;
    
		position: absolute;
		top: 0;
		right: 0;
		z-index: 9999;
	}
	header #btnNavView a {
    position: relative;
    display: block;
    width: 54px;
    height: 54px;
    padding: 0.1em 0.3em;
		box-sizing: border-box;
	}
  header #btnNavView a:after {
    display: block;
   
    color: #fff;
    font-size: 75%;
    text-align: center;
		position: absolute;
		top: calc(58% + 1em);
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
    z-index: 100;
  }
	header #gNav02 {
    display: none;
    width: 100%;
    margin: auto;
		padding: 0;
    
    position: fixed;
    top: 54px;
    left: 0;
    right: 0;
		z-index: 9998;
	}
	header #gNav02 ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		border-top: 1px solid #d3d2d2;
		width: 100%;
		margin-top: 40vh;
		
	}
	header #gNav02 ul li {
    display: block;
    text-align: center;
    margin: 0;
		width: 50%;
		position: relative;
		background: #fff;
	}
	header #gNav02 ul li:nth-last-child(1) {
	}
	header #gNav02 ul li:after {
    content: 'NEW';
    color: #fff;
		font-size: 75%;
    line-height: 1.5;
    letter-spacing: 0.1em;
    padding: 0 0.5em;
    position: absolute;
    top: 0;
    right: 0;
    background: #931a07;
	}
header #gNav02 ul li:nth-child(5){
	width: 100%;
}
header #gNav02 ul li:nth-child(5):after,
	header #gNav02 ul li:nth-child(4):after,
	header #gNav02 ul li:nth-child(1):after,
	header #gNav02 ul li:nth-child(2):after,
	header #gNav02 ul li:nth-child(3):after {
		display: none;
	}
	header #gNav02 ul li a {
		display: block;
    font-size: 112.5%;
    line-height: 3;
		padding: 0;
		box-sizing: border-box;
    border-left: none !important;
		border-bottom: 1px solid #d3d2d2;
	}
  body.top header #gNav02 ul li:nth-child(1) a {
    font-weight: 500;
    background: #ddd;
  }
	header #gNav02 ul li:nth-child(odd) a {
		border-right: 1px solid #d3d2d2;
	}
	header #gNav02 ul li a:after {
		
	}
	header #panel-btn-icon {
    pointer-events: all;
    position: absolute;
    display: block;
    top: 37%;
    left: 0;
    right: 0;
    width: 31px;
    height: 4px;
    margin: -1px auto;
    background: #ccc;
    transition: .2s;
	}
	header #panel-btn-icon:before,
	header #panel-btn-icon:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    width: 31px;
    height: 4px;
    background: #ccc;
    transition: .3s;
	}
	header #panel-btn-icon:before {
    margin-top: -10px;
	}
	header #panel-btn-icon:after {
    margin-top: 6px;
	}
	header #fNav ul li {
	
		height: 65px;
	}
	header #fNav ul li a {
    color: #fff !important;
    font-size: 100%;
    font-weight: bold;
    letter-spacing: 0;
    padding: 1em 0 0.25em;
    height: 100%;
    box-sizing: border-box;
	}
header #fNav ul li:nth-child(1) a {
    background: #B59A5A;
	}



	header #fNav ul li a img {
    width: auto;
    height: 47%;
    margin: 0 auto;
	}	
	header #fNav ul li a span.txt01 {
		display: block;
    line-height: 1;
    margin-top: 0.7em;
    font-size: 120%;
		letter-spacing: 5px;
	}


@media (max-width: 767px) {
	
	header .left .g-logo {
    display: block;
    width: 130px;
    transition: all 0.4s;
}
}






/*========= スクロール固定可変ナビのためのCSS ===============*/

header .wrap {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 9999;
    height: 0px;
	transition: all 0.7s ease-out 0.1s;/*アニメーション速度*/
	background-color: rgba(0, 0, 0, 0.0);
	
}
header .wrap.js_active {
    position: fixed;
    top: 0px;
    left: 0px;
    right: 0px;
    z-index: 9999;
    height: 60px;
	backdrop-filter: blur(3px);
	background-color: rgba(255, 255, 255, 0.03);
	
}

header .wrap .left {
		
		transition: all 0.4s;
	}
header .wrap.js_active .left {
		padding: 10px 10px;
		
	}

header .wrap.js_active .left .g-logo {
	display: block;
	width: 160px;
	
}
header .wrap.js_active .left .ggst {
	display: block;
	font-size: 0.7rem;
	color: #fff;
}



header .wrap .cv-menu-pc {
    opacity: 1;
    padding: 20px 5px;
    transition: all 0.4s ease-out 0s;
	width: 100%;
    display: flex;
}

header .wrap.js_active .cv-menu-pc {
    
    opacity: 1;
    padding: 5px;

}

header .wrap .cv-menu-pc a {
    display: block;
    color: #42AA84;
    padding: 10px;
font-size: 1.5rem;
    margin: 5px 10px 0em;
    text-align: center;
	line-height: 1.8;
	vertical-align: baseline; /* または middle、top など調整 */
}


header.second .wrap .cv-menu-pc .dropdown__lists a {

    color: #42AA84;

}


header.second .wrap.js_active .cv-menu-pc a {

    color: #42AA84;

}

.js_active a.gnav-btn{
	color: #686868!important;
}
@media all and (max-width: 1230px) {
    /*SP*/
/*header #fNav {
	opacity: 0;
	transition: all 0.4s ease-out 0s;
	transition-delay: 0.25s;
	}
	header #fNav.fn_active {
	opacity: 1;
	}*/
	header .wrap.js_active {

    height: 60px;

	
}

	header .wrap .gnav-box {
    display: none;
    color: #fff;
    padding: 10px;

    margin: 0em auto 0em;
    text-align: center;
	
}
}


.gnavi__list {
    position: relative;
    transition: all .3s;
	
}
.gnavi__list:hover {
    /*backdrop-filter: blur(3px);*/
	
}

.gnavi__list:hover .gnav-text {
    color: #fff;
}
.dropdown__lists {
    transform: scaleY(0);/*デフォルトでは非表示の状態にしておく*/
    transform-origin: center top;/*変形を適応する基準をtopとする*/
    transition: all .3s;/*表示の変化を0.3秒に指定*/
    width: 900px;
    position: absolute;
    top: 55px;
    right: 0;
   
	
	background-color:rgba(255,255,255,0.9);
	backdrop-filter: blur(3px);
	padding: 15px;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around;
	z-index: 100;
}


.gnavi__list:hover .dropdown__lists {
    transform: scaleY(1);/*Gナビメニューにホバーしたら表示*/
}

.sc-link{
	display: flex!important;
	justify-content: space-between;
	align-items: center;
}

.sc-link span{
	margin-right: 15px;
}







/*スクロールモーション*/

.fadein {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1s;
	-ms-filter: blur(6px);
    filter: blur(6px);
}




@media all and (min-width: 1201px) {
    /*PC*/
    /*トップ、共通*/
	.fadeinleft {
		opacity: 0;
		transform: translateX(-50px);
		transition: all 1s;
			ms-filter: blur(6px);
		filter: blur(6px);
	}

	.fadeinright {
		opacity: 0;
		transform: translateX(50px);
		transition: all 1s;
		transition-delay: 0.3s;
		ms-filter: blur(6px);
		filter: blur(6px);
	}
}


@media all and (min-width: 768px) and (max-width: 1200px) {
    /*TABLET*/
    /*トップ、共通*/
	.fadeinleft {
		opacity: 0;
		transform: translateY(20px);
		transition: all 1s;
			ms-filter: blur(6px);
		filter: blur(6px);
	}

	.fadeinright {
		opacity: 0;
		transform: translateY(20px);
		transition: all 1s;
		ms-filter: blur(6px);
		filter: blur(6px);
	}
}

@media all and (max-width: 767px) {
    /*SP*/
    /*トップ、共通*/
	.fadeinleft {
		opacity: 0;
		transform: translateY(0px)!important;
		transition: all 1s;
			ms-filter: blur(6px);
		filter: blur(6px);
	}

	.fadeinright {
		opacity: 0;
		transform: translateY(0px)!important;
		transition: all 1s;
		ms-filter: blur(6px);
		filter: blur(6px);
	}
}



/*========= ナビゲーション改のためのCSS ===============*/

.cover{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: -1;
    /*ナビのスタート位置と形状*/
	top:0;
    right: 0;
	width:100%;
    height: 100vh;/*ナビの高さ*/
	/*background: rgba(0, 0, 0, 0.7);*/
    /*動き*/
	transition: all 1.0s;
	opacity: 0;
	
}
.g-nav .g-nav-list{
    
    position: fixed;
    z-index: 999;
    width: 100%;
   z-index: -2;
	
	top: 0px;
    height: calc(100%);
    overflow: auto;
	background: #354245;

	opacity: 0;
	transition: all 1.0s;

    
}

/*アクティブクラスがついたら位置を0に*/
.cover.panelactive{
    opacity: 1;
	z-index: 998;
}

/*ナビゲーションの横スクロール*/
.g-nav.panelactive .g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 100%;
	right: 0px;
   transition: all 1.0s;
	top: 0px;
    height: calc(100%);
    overflow: auto;
	opacity: 0.9;
    -webkit-overflow-scrolling: touch;
	display: block;
	background: #354245;
}
.g-nav.panelactive .g-nav-list .gnav-box {
	position: relative;
    display: block;
    width: 100%;
    padding-top: 80px;
}
/*ナビゲーション*/
.g-nav ul {
    /*ナビゲーション天地中央揃え*/
    width: 80%;
	margin: 80px auto;
}

/*リストのレイアウト設定*/

.g-nav li{
	list-style: none;
    text-align: center;
	border-top: 1px solid #fff;
}

.g-nav li a{
	color: #fff;
	text-decoration: none;
	padding: 17px 0px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}


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

.g-nav li .sc-link-menu a{
	color: #fff;
	text-decoration: none;
	padding: 10px 0px;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: normal;
	font-size: 1.3rem;
	border-top: 1px dotted #fff;
	opacity: 0.8;
}
	.g-nav li a.p-roundButton{
		width: 100%;
		margin-top: 20px;
		padding: 0px!important;
		
	}
	.g-nav li .p-roundButton--small .p-roundButton__label {
    font-size: 1.5rem!important;
		padding-left: 0px!important;
		padding-top: 13px;
    display: block;
}

}



/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:relative;
    z-index: 9999;/*ボタンを最前面に*/
	top:0px;
	right: 5px;
	cursor: pointer;
    width: 50px;
    height:50px;
}
@media all and (max-width: 767px) {
    /*SP*/
    /*トップ、共通*/
.openbtn{
	position:relative;
    z-index: 9999;
		top:0px;
	
	right: 15px;
	cursor: pointer;
    width: 50px;
    height:50px;
}

	.openbtn span{
    
	background-color: #fff;
  	
  }
}

@media all and (max-width: 599px) {
    /*SP*/
    /*トップ、共通*/
.openbtn{
	position:relative;
    z-index: 9999;
		top:auto;
	top:5px;
	right: 15px;
	cursor: pointer;
    width: 50px;
    height:50px;
}

	.openbtn span{
    
	background-color: #fff;
  	
  }
}


/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 14px;
    height: 1px;
    border-radius: 2px;
	background-color: #1EC3BC;
  	width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top:15px;	
}

.openbtn span:nth-of-type(2) {
	top:23px;
}

.openbtn span:nth-of-type(3) {
	top:31px;
}

.openbtn.active span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
	background-color: #fff;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
	background-color: #fff;
}

.openbtn.active span:nth-of-type(3){
    top: 30px;
    left: 18px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
	background-color: #fff;
}
/*========= メニューホバーのためのCSS ===============*/
.Item{
  text-decoration: none;
  
}
.Item-Text{
  position: relative;
  z-index: 1;
	display: block;
	font-size: 90%;
}
.Item-Text:after{
  content: '';
  position: absolute;
  left: 0;
  bottom: -10px;/*テキストからの距離*/
  width: 0%;/*初期状態では下線非表示*/
  height: 1px;/*下線の高さ*/
  background-color: rgba(255, 255, 255, 0.25);/*下線の色*/
  z-index: -1;
	transition: all 0.4s ease-out 0s;/*アニメーション速度*/
 
}

.top .nav-top.Item-Text:after,.map .nav-map.Item-Text:after,.brand .nav-brand.Item-Text:after
{
	/*ナビカレント表示*/
  content: '';
  position: absolute;
  left: 0;
  bottom: -10px;/*テキストからの距離*/
  width: 100%;/*初期状態では下線非表示*/
  height: 1px;/*下線の高さ*/
  background-color: rgba(255, 255, 255, 0.25);/*下線の色*/
  z-index: -1;
	transition: all 0.4s ease-out 0s;/*アニメーション速度*/
 
}

.Item-Text:before{
  content: '';
  position: absolute;
  left: 0;
  bottom: -10px;/*テキストからの距離*/
  width: 100%;/*初期状態では下線非表示*/
  height: 1px;/*下線の高さ*/
  background-color: rgba(255, 255, 255, 0.15);/*下線の色*/
  z-index: -1;
  
}

.Item:hover .Item-Text:after{
  width: 100%;/*hover時に表示*/
}





/*========= コンテンツエリア共通パーツ ===============*/


.h2-title{
	position: relative;
	margin-bottom: 5rem;
}
.t-logo{
	position: absolute;
	left: -10rem;
	top:0;
	width: 8.5rem;
	display: block;
}
.h2-jp{
	display: block;
	color: #354245;
	font-size: 4.8rem;
	
}

.h2-en{
	display: block;
	color: #27B6BA;
	font-size: 2.4rem;
	font-weight: 400;
}



@media only screen and (max-width: 767px) {
.t-logo{
	position: absolute;
	left: 0rem;
	top:-4rem;
	width: 5rem;
	display: block;
}
.h2-jp{
	display: block;
	color: #354245;
	font-size: 2.4rem;
	
}

.h2-en{
	display: block;
	color: #27B6BA;
	font-size: 1.5rem;
	font-weight: 400;
}

}



/*! CVボタン*/


a.p-roundButton {
  margin: 0;
  padding: 0;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  vertical-align: baseline;
  background: transparent;
	color: #364246;
  cursor: pointer;
  text-decoration: inherit;
}

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


span {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;

  vertical-align: baseline;
  background: transparent;
  -webkit-overflow-scrolling: touch;
	letter-spacing: 0.06rem;
  word-wrap: break-word;
  word-break: break-word;
}




a.p-roundButton:active, a.p-roundButton:focus {
  outline: none;
}


.p-roundButton {
  pointer-events: auto;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
  display: inline-flex;
  width: 210px;
  height: 60px;
}

.p-roundButton:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  border-radius: 40px;
}

.p-roundButton__label {
  z-index: 2;
  position: relative;
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 20px;
  text-decoration: underline;
	    
	right: 10px;
}
.cv-menu-pc .p-roundButton__label {
  bottom: 2px;
}


.p-roundButton__arw {
  z-index: 2;
  position: absolute;
  right: 15px;
  top: 50%;
  width: 27px;
  height: 27px;
  margin-top: -13.5px;
  border-radius: 50%;
  border: 1px solid #cdd4d4;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.p-roundButton__arw:after {
  content: '';
  display: block;
  width: 15px;
  height: 5px;
  background-image: url("../img/common/gr-arrow.svg");
  background-repeat: no-repeat;
  background-position: left top;
}

.p-roundButton--small {
  width: 150px;
  height: 40px;
}

.p-roundButton--small .p-roundButton__label {
  font-size: 1.2rem;
  line-height: 15px;
  text-decoration: none;
}

.p-roundButton--small .p-roundButton__arw {
  right: 6px;
}

.p-roundButton--black:before {
  background-color: #1EC3BC;
}

.p-roundButton--black .p-roundButton__label {
  color: #ffffff;
}

.p-roundButton--black .p-roundButton__arw {
  border-color: #fff;
}

.p-roundButton--black .p-roundButton__arw:after {
  background-image: url("../img/common/wt-arrow.svg");
  background-repeat: no-repeat;
  background-position: left top;
}

@media (min-width: 60em) {
  .p-roundButton__line {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
  .p-roundButton__line rect {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    transform: translate(1px, 1px);
    fill: none;
    stroke: #1EC3BC;
    stroke-width: 1;
    stroke-dasharray: 0, 100;
    stroke-dashoffset: 100;
    transition-property: all;
    transition-duration: 1s;
    transition-timing-function: cubic-bezier(0, 0.7, 0, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-roundButton:hover .p-roundButton__label {
    color: #1EC3BC;
    text-decoration: none;
  }
  .p-roundButton:hover .p-roundButton__arw:after {
    background-image: url("../img/common/gr-arrow.svg");
    background-repeat: no-repeat;
    background-position: left top;
  }
  .p-roundButton:hover .p-roundButton__line rect {
    stroke-width: 2;
    stroke-dasharray: 100, 0;
    stroke-dashoffset: 0;
  }
  .p-roundButton:hover .p-roundButton__arw {
    border-color: #1EC3BC;
  }
  .p-roundButton:before {
    transition-property: opacity;
    transition-duration: 0.8s;
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-delay: 0.2s;
  }
  .p-roundButton:hover:before {
    opacity: 0;
    transition-duration: 0.2s;
    transition-delay: 0s;
  }
}

@media (max-width: 59.99em) {
  .p-roundButton {
    display: flex;
    margin: 0 auto;
  }
  .p-roundButton__label {
    padding-left: 5px;
  }
  .p-roundButton__line {
    display: none;
  }
}

:root .p-roundButton rect {
  stroke-width: 0;
}

@media all and (-ms-high-contrast: none) {
  .p-roundButton:hover {
    border: 1px solid #1EC3BC;
    border-radius: 210px;
  }
}



/*フッター*/


/*! CSS Used from: https://www.opexpark.co.jp/assets/css/style.css?v=1 */


.l-footer {
  position: relative;
  width: 100%;
  background-color: #ffffff;
  border-top: 1px solid #e2e9e9;
}

.l-footer__menu {
  z-index: 2;
  position: relative;
  padding-top: 120px;
  padding-bottom: 120px;
}

.l-footer__bottom {
  z-index: 2;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
  padding-bottom: 40px;
}

.l-footer__bottom__l {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.l-footer__bottom__l__item {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.l-footer__logo {
  width: 96px;
  line-height: 0;
}

.l-footer__logo img {
  width: 100%;
}

.l-footer__copyright {
  padding-left: 45px;
  font-family: 'Manrope', sans-serif;
  letter-spacing: 0;
  font-weight: 600;
  font-size: 1rem;
  line-height: 12px;
  color: #93aab0;
}

@media (max-width: 59.99em) {
  .l-footer__menu {
    padding-top: 50px;
    padding-bottom: 40px;
  }
  .l-footer__bottom {
    display: block;
    padding-bottom: 35px;
  }
  .l-footer__bottom__l {
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
  }
  .l-footer__bottom__l__item {
    width: 100%;
    padding-top: 0;
  }
  .l-footer__bottom__l__item:not(:last-child) {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    align-content: stretch;
    padding-top: 40px;
  }
  .l-footer__bottom__r {
    position: absolute;
    right: 0;
    bottom: 200px;
  }
  .l-footer__logo {
    width: 65px;
  }
  .l-footer__copyright {
    padding-left: 0;
    font-size: 0.9rem;
    transform: scale(0.9);
    transform-origin: 100% 50%;
    line-height: 13px;
    letter-spacing: 0px;
    text-align: right;
  }
}

.c-grid {
  display: block;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-left: 20px;
  padding-right: 50px;
}

.c-grid__row {
  position: relative;
  left: 30px;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 1850px;
}

.c-grid__col {
  width: 100%;
}

.c-grid__col img {
  width: 100%;
}

@media (min-width: 80em) {
  .c-grid__col {
    
  }
  .c-grid__col.lg-1 {
    width: 4.1666666667%;
  }
  .c-grid__col.lg-4 {
    width: 16.6666666667%;
	  
  }
  .c-grid__col.lg-18 {
    width: 75%;
  }
}

@media (min-width: 60em) and (max-width: 79.99em) {
  .c-grid__col {
    padding-right: 5%;
  }
  .c-grid__col.md-1 {
    width: 8.3333333333%;
  }
  .c-grid__col.md-2 {
    width: 16.6666666667%;
  }
  .c-grid__col.md-9 {
    width: 75%;
  }
  .c-grid__col.md-0 {
    display: none!important;
  }
}

@media (max-width: 59.99em) {
  .c-grid {
    padding-left: 40px;
    max-width: 100%;
    margin: 0;
    padding-left: 15px;
    padding-right: 15px;
  }
  .c-grid__row {
    left: 10px;
  }
  .c-grid__col {
    padding-left: 5px;
    padding-right: 5px;
  }
  .c-grid__col.xs-0 {
    display: none!important;
  }
  .c-grid__row {
    left: auto;
    min-width: 100%;
  }
}

.p-pagetop {
  cursor: pointer;
  position: relative;
}

.p-pagetop--cr {
  position: relative;
  right: -10px;
  display: block;
  width: 100%;
  height: 45px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.p-pagetop--cr .p-pagetop__label {
  display: block;
  position: relative;
  padding-right: 40px;
  font-family: 'Manrope', sans-serif;
  letter-spacing: 0;
  font-weight: 600;
  font-size: 1.4rem;
  line-height: 16px;
	color: #27B6BA;
}

.p-pagetop--cr .p-pagetop__slider {
  position: absolute;
  right: 10px;
  bottom: 0;
}

.p-pagetop--cr .p-pagetop__slider__rail {
  z-index: 1;
  position: relative;
  display: block;
  width: 1px;
  height: 45px;
  background-color: #27B6BA;
}

.p-pagetop--cr .p-pagetop__slider:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  border-radius: 50%;
  z-index: 3;
  right: -5px;
  width: 11px;
  height: 11px;
  background-color: #27B6BA;
  -webkit-animation: pagetop_slider_after_anim 3.5s cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
  animation: pagetop_slider_after_anim 3.5s cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
}

@media (min-width: 60em) {
  .p-pagetop--cr:hover .p-pagetop__label {
    color: #27B6BA;
	  opacity: 0.7;
  }
  .p-pagetop--cr:hover .p-pagetop__slider:after {
    background-color: #27B6BA;
	  opacity: 0.7;
  }
}

@media (max-width: 59.99em) {
  .p-pagetop--cr {
    right: -10px;
  }
  .p-pagetop--cr .p-pagetop__label {
    padding-right: 30px;
    font-size: 1rem;
    line-height: 12px;
  }
}

.p-langNav {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.p-langNav li {
  font-family: 'Manrope', sans-serif;
  letter-spacing: 0;
  font-weight: 600;
  font-size: 1.3rem;
  line-height: 15px;
}

.p-langNav li span {
  display: inline-block;
  padding: 10px 5px;
  color: #93aab0;
}

.p-langNav li:after {
  content: '/';
  display: inline-block;
  color: #364246;
}

.p-langNav li:last-child:after {
  display: none;
}

.p-langNav li a {
  display: inline-block;
  pointer-events: auto;
}

.p-langNav li a span {
  color: #364246;
  text-decoration: underline;
}

@media (min-width: 60em) {
  .p-langNav li a:hover span {
    color: #27B6BA;
    text-decoration: none;
  }
}

@media (max-width: 59.99em) {
  .p-langNav li {
    font-size: 1.5rem;
    line-height: 17px;
  }
}

.p-footerNav {
  position: relative;
}

.p-footerNav__horizontal {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.p-footerNav__label--lv1 {
  font-family: 'Manrope', sans-serif;
  letter-spacing: 0;
  font-weight: 200;
  font-size: 1.625vw;
  line-height: 2.4375vw;
}

@media (min-width: 100em) {
  .p-footerNav__label--lv1 {
    font-size: 26px;
    line-height: 39px;
  }
}

.p-footerNav__label--lv1 a:not(.p-footerNav__global__blank) {
  position: relative;
  display: block;
}

.p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):before, .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):after {
  content: "";
  display: block;
  position: absolute;
  right: -24px;
  bottom: 0.5vw;
  width: 15px;
  height: 7px;
  background-size: contain;
}

.p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):before {
  background-image: url("https://www.opexpark.co.jp/assets/img/icon/arw-thin--grey.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 1;
}

.p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):after {
  background-image: url("https://www.opexpark.co.jp/assets/img/icon/arw-thin--blue3.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 0;
}

.p-footerNav__label--lv2 {
  padding-top: 40px;
}

.p-footerNav__label--lv2 a {
  position: relative;
  display: block;
}

.p-footerNav__label--lv2 a:before, .p-footerNav__label--lv2 a:after {
  content: "";
  display: block;
  position: absolute;
  left: 3.75vw;
  top: 50%;
  width: 15px;
  height: 7px;
  margin-top: -0.125vw;
  background-size: contain;
}

.p-footerNav__label--lv2 a:before {
  background-image: url("../img/common/arrow-lg.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 1;
}

.p-footerNav__label--lv2 a:after {
  background-image: url("../img/common/arrow-lg.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 0;
}

.p-footerNav__label--lv2 a.blank:before, .p-footerNav__label--lv2 a.blank:after {
  transform: rotate(0.0001deg) rotateZ(-45deg);
}

.p-footerNav__label--lv2 span {
  position: relative;
  left: -10px;
  display: inline-block;
  padding: 10px;
  font-family: 'Manrope', sans-serif;
  letter-spacing: 0;
  font-weight: 300;
  font-size: 0.875vw;
  line-height: 1.3125vw;
}

@media (min-width: 100em) {
  .p-footerNav__label--lv2 span {
    font-size: 14px;
    line-height: 21px;
  }
}

.p-footerNav__label--lv2.-privacy {
  flex-shrink: 0;
  padding-top: 0;
  padding-left: 25.9375vw;
}

.p-footerNav__global li:nth-child(2) .p-footerNav__label--lv2 a:before, .p-footerNav__global li:nth-child(2) .p-footerNav__label--lv2 a:after {
  left: 4.375vw;
}

.p-footerNav__global {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
}

.p-footerNav__global>li {
  padding-right: 4.375vw;
}

.p-footerNav__global>li:last-child {
  padding-right: 0;
}

.p-footerNav__global__blank {
  position: relative;
}

.p-footerNav__global__blank:before, .p-footerNav__global__blank:after {
  content: "";
  display: block;
  position: absolute;
  right: -25px;
  bottom: 3px;
  width: 15px;
  height: 15px;
  transform: rotate(0.0001deg) rotateZ(-45deg);
  background-size: contain;
}

.p-footerNav__global__blank:before {
  background-image: url("https://www.opexpark.co.jp/assets/img/icon/arw-thin--grey.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 1;
}

.p-footerNav__global__blank:after {
  background-image: url("https://www.opexpark.co.jp/assets/img/icon/arw-thin--blue3.svg");
  background-repeat: no-repeat;
  background-position: left top;
  opacity: 0;
}

.p-footerNav__lang {
  position: relative;
  top: -3px;
  padding-left: 7.5vw;
}

.p-footerNav__line {
  position: relative;
  width: 1px;
  height: 100%;
  background-color: #e2e9e9;
}


  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):before, .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):after {
    bottom: 10px;
  }
  .p-footerNav__label--lv2 a:before, .p-footerNav__label--lv2 a:after {
    left: 100px;
    margin-top: -3px;
  }
  .footer-inner li:nth-child(2) .p-footerNav__label--lv2 a:before, .footer-inner li:nth-child(2) .p-footerNav__label--lv2 a:after {
    left: 130px;
  }
	.footer-inner li:nth-child(3) .p-footerNav__label--lv2 a:before, .footer-inner li:nth-child(3) .p-footerNav__label--lv2 a:after {
    left: 90px;
  }
	.footer-inner li:nth-child(4) .p-footerNav__label--lv2 a:before, .footer-inner li:nth-child(4) .p-footerNav__label--lv2 a:after {
    left: 130px;
  }
	.footer-inner li:nth-child(5) .p-footerNav__label--lv2 a:before, .footer-inner li:nth-child(5) .p-footerNav__label--lv2 a:after {
    left: 120px;
  }
  .p-footerNav__global>li {
    padding-right: 75px;
  }
  .p-footerNav__lang {
    padding-left: 145px;
  }


@media (min-width: 60em) {
  .p-footerNav a:hover {
    color: #27B6BA;
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):before, .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):after {
    transition-property: transform;
    transition-duration: 1s;
    transition-timing-function: cubic-bezier(0, 0.7, 0, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):hover:before, .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):hover:after {
    transform: rotate(0.0001deg) translateX(5px);
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):hover:before {
    opacity: 0;
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):hover:after {
    opacity: 1;
  }
  .p-footerNav__label--lv2 a:before, .p-footerNav__label--lv2 a:after {
    transition-property: transform;
    transition-duration: 1s;
    transition-timing-function: cubic-bezier(0, 0.7, 0, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-footerNav__label--lv2 a:hover:before, .p-footerNav__label--lv2 a:hover:after {
    transform: rotate(0.0001deg) translateX(5px);
  }
  .p-footerNav__label--lv2 a:hover:before {
    opacity: 0;
  }
  .p-footerNav__label--lv2 a:hover:after {
    opacity: 1;
  }
  .p-footerNav__label--lv2 a:hover.blank:before, .p-footerNav__label--lv2 a:hover.blank:after {
    transform: rotate(0.0001deg) rotateZ(-45deg) translateX(4px);
  }
  .p-footerNav__label--lv2.-privacy {
    padding-left: 40px;
    display: flex;
  }
  .p-footerNav__label--lv2.-privacy li:not(:last-child) {
    margin-right: 2.625vw;
  }
  .p-footerNav__label--lv2.-privacy a:before, .p-footerNav__label--lv2.-privacy a:after {
    right: -0.75vw;
    left: auto;
  }
  .p-footerNav__global__blank:before, .p-footerNav__global__blank:after {
    transition-property: transform;
    transition-duration: 1s;
    transition-timing-function: cubic-bezier(0, 0.7, 0, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-footerNav__global__blank:hover:before, .p-footerNav__global__blank:hover:after {
    transform: rotate(0.0001deg) rotateZ(-45deg) translateX(7px);
  }
  .p-footerNav__global__blank:hover:before {
    opacity: 0;
  }
  .p-footerNav__global__blank:hover:after {
    opacity: 1;
  }
}

@media (max-width: 79.99em) {
  .p-footerNav__label--lv2.-privacy {
    padding-left: 10vw;
  }
  .p-footerNav__label--lv2.-privacy a:before, .p-footerNav__label--lv2.-privacy a:after {
    right: -0.5vw;
    left: auto;
  }
}

@media (max-width: 59.99em) {
  .p-footerNav {
    border-bottom: 1px solid #e2e9e9;
  }
  .p-footerNav__horizontal {
    display: block;
    padding-bottom: 40px;
  }
  .p-footerNav__label--lv1 {
    padding-top: 30px;
    font-size: 2.5rem;
    line-height: 27px;
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank) {
    display: inline-block;
  }
  .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):before, .p-footerNav__label--lv1 a:not(.p-footerNav__global__blank):after {
    bottom: 4px;
  }
/*  .p-footerNav__label--lv2 {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: nowrap;
    flex-direction: row;
    align-content: stretch;
    padding-top: 12px;
  }*/
  .p-footerNav__label--lv2 a {
    padding-right: 25px;
  }
  /*.p-footerNav__label--lv2 a:before, .p-footerNav__label--lv2 a:after {
    left: auto;
    right: 22px;
    margin-top: -3px;
  }*/
  .p-footerNav__label--lv2 span {
    font-size: 1.5rem;
    line-height: 17px;
  }
  .p-footerNav__label--lv2.-service {
    flex-wrap: wrap;
    padding-right: 18.115942029vw;
  }
  .p-footerNav__label--lv2.-service li {
    width: 112px;
    height: 26px;
  }
  .p-footerNav__label--lv2.-service a {
    display: inline-block;
  }
  .p-footerNav__label--lv2.-service span {
    padding: 0 10px;
    line-height: 25px;
  }
  .p-footerNav__label--lv2.-privacy {
    padding-left: 0;
    display: block;
  }
  .p-footerNav__label--lv2.-privacy a {
    padding-right: 0;
  }
  /*.p-footerNav__label--lv2.-privacy a:before, .p-footerNav__label--lv2.-privacy a:after {
    left: 100px;
  }*/
  .p-footerNav__label--lv2.-privacy a.-specified:before, .p-footerNav__label--lv2.-privacy a.-specified:after {
    left: 160px;
  }
  .p-footerNav__label--lv2.-privacy a.-information:before, .p-footerNav__label--lv2.-privacy a.-information:after {
    left: 150px;
  }
  .p-footerNav__global li:nth-child(2) .p-footerNav__label--lv2 a:before, .p-footerNav__global li:nth-child(2) .p-footerNav__label--lv2 a:after {
    left: auto;
  }
  .p-footerNav__global {
    display: block;
  }
  .p-footerNav__global>li {
    padding-right: 0;
  }
  .p-footerNav__global__blank:before, .p-footerNav__global__blank:after {
    right: -25px;
    bottom: 3px;
    width: 15px;
    height: 15px;
  }
  .p-footerNav__lang {
    left: -5px;
    top: auto;
    padding: 30px 0 0;
  }
  .p-footerNav__customer {
    padding: 10px 0 30px;
    border-top: 1px solid #e2e9e9;
  }
}

.u-no-event {
  pointer-events: none;
}


/*! CSS Used keyframes */

@-webkit-keyframes pagetop_slider_after_anim {
  0% {
    transform: scale(0.4) translateY(10px);
  }
  25% {
    transform: scale(1) translateY(-35px);
  }
  50% {
    transform: scale(1) translateY(-35px);
  }
  75% {
    transform: scale(0.4) translateY(10px);
  }
  100% {
    transform: scale(0.4) translateY(10px);
  }
}

@keyframes pagetop_slider_after_anim {
  0% {
    transform: scale(0.4) translateY(10px);
  }
  25% {
    transform: scale(1) translateY(-35px);
  }
  50% {
    transform: scale(1) translateY(-35px);
  }
  75% {
    transform: scale(0.4) translateY(10px);
  }
  100% {
    transform: scale(0.4) translateY(10px);
  }
}

@-webkit-keyframes pagetop_slider_after_anim {
  0% {
    transform: scale(0.4) translateY(10px);
  }
  25% {
    transform: scale(0.8) translateY(-45px);
  }
  50% {
    transform: scale(0.8) translateY(-45px);
  }
  75% {
    transform: scale(0.4) translateY(10px);
  }
  100% {
    transform: scale(0.4) translateY(10px);
  }
}

@keyframes pagetop_slider_after_anim {
  0% {
    transform: scale(0.4) translateY(10px);
  }
  25% {
    transform: scale(0.8) translateY(-45px);
  }
  50% {
    transform: scale(0.8) translateY(-45px);
  }
  75% {
    transform: scale(0.4) translateY(10px);
  }
  100% {
    transform: scale(0.4) translateY(10px);
  }
}



.footer-inner{
	
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;

}
.footer-inner li.footer-inner-list{
	width: 30%;
	border-top: 1px solid #E2E9E9;
	padding-top: 50px;
	padding-bottom: 80px;

}
.p-footerNav__label{
	position: relative;
}

.u-no-event{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
}
.u-no-event-en{
	font-size: 1.5rem;
	line-height: 1.5;
}
.link-arrow-area{
	position: absolute;
	right: 0px;
	top:0px;
	display: flex;
	align-items: center;
	height: 100%;
}

.footer-logo{
	margin-right: 8%;
}
@media only screen and (max-width: 767px) {
.footer-logo{
	margin-right: 0%;
}
.footer-logo img{
	display: block;
	margin: 50px auto;
	width: 50%!important;
	
}
.footer-inner{
	
	display: block;
	flex-flow: row wrap;
	justify-content: space-between;

}
.footer-inner li.footer-inner-list{
	width: 100%;
	border-top: 1px solid #E2E9E9;
	padding-top: 50px;
	padding-bottom: 80px;

}
}

.mb200{
	margin-bottom: 200px;
}


/*pagetopボタンまわり */


button {
  cursor: pointer;
  background-color: transparent;
  background: none;
  border: none;
  outline: none;
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button {
  color: #364246;
  font-family: "Noto Sans JP", Hiragino Kaku Gothic ProN, Hiragino Sans, BIZ UDPGothic, Meiryo, Arial, sans-serif;
  font-weight: 500;
  letter-spacing: 0.06rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 1.6rem;
  line-height: 40px;
}

@media (max-width: 59.99em) {
  button {
    font-size: 1.5rem;
    line-height: 30px;
  }
}

button {
  line-height: 0;
}

span {
  letter-spacing: 0.06rem;
  word-wrap: break-word;
  word-break: break-word;
}





/*! アイコンまわり */



.p-svgArw {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
  width: 122px;
  height: 122px;
}

.p-svgArw:before, .p-svgArw:after {
  content: '';
  display: block;
}

.p-svgArw:before {
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #e2e7e8;
  transform: rotate(0.0001deg) scale(0.8);
}

.p-svgArw:after {
  z-index: 2;
  position: relative;
  width: 33px;
  height: 9px;
  background-image: url("../img/common/gr-l-arrow.svg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}

.p-svgArw svg {
  display: none;
}

@media (min-width: 60em) {
  .p-svgArw:before {
    transition-property: transform opacity;
    transition-duration: 1.5s;
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-svgArw svg {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 122px;
    height: 122px;
    transition-property: transform opacity;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: scale(0.8);
    opacity: 0;
  }
  .p-svgArw svg circle {
    fill: transparent;
    stroke: #27B6BA;
    stroke-width: 2px;
    stroke-dasharray: 376.991118431;
    stroke-dashoffset: 376.991118431px;
    transition-property: stroke-dashoffset;
    transition-duration: 0.7s;
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
}

@media (max-width: 79.99em) {
  .p-svgArw {
    transform: rotate(0.0001deg) scale(0.8);
  }
}

@media (max-width: 59.99em) {
  .p-svgArw {
    width: 75px;
    height: 75px;
    transform: rotate(0.0001deg) scale(1);
  }
  .p-svgArw:before {
    transform: rotate(0.0001deg) scale(1);
  }
  .p-svgArw:after {
    left: 1px;
  }
}

@media (min-width: 60em) {
  a:hover .p-svgArw:before {
    transform: rotate(0.0001deg) scale(1);
    opacity: 0;
  }
  a:hover .p-svgArw svg {
    transform: scale(1);
    opacity: 1;
  }
  a:hover .p-svgArw svg circle {
    stroke-dashoffset: 0px;
  }
}

div {
  letter-spacing: 0.06rem;
  word-wrap: break-word;
  word-break: break-word;
}


.p-svgArw {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  align-content: stretch;
  width: 122px;
  height: 122px;
}

.p-svgArw:before, .p-svgArw:after {
  content: '';
  display: block;
}

.p-svgArw:before {
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #e2e7e8;
  transform: rotate(0.0001deg) scale(0.8);
}

.p-svgArw:after {
  z-index: 2;
  position: relative;
  width: 33px;
  height: 9px;
  background-image: url("../img/common/gr-l-arrow.svg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}

.p-svgArw svg {
  display: none;
}

.p-svgArw--small {
  width: 62px;
  height: 62px;
}

.p-svgArw--small:after {
  width: 15px;
  height: 7px;
  background-image: url("../img/common/gr-arrow.svg");
  background-repeat: no-repeat;
  background-position: left top;
}

@media (min-width: 60em) {
  .p-svgArw:before {
    transition-property: transform opacity;
    transition-duration: 1.5s;
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-svgArw svg {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 122px;
    height: 122px;
    transition-property: transform opacity;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: scale(0.8);
    opacity: 0;
  }
  .p-svgArw svg circle {
    fill: transparent;
    stroke: #27B6BA;
    stroke-width: 2px;
    stroke-dasharray: 376.991118431;
    stroke-dashoffset: 376.991118431px;
    transition-property: stroke-dashoffset;
    transition-duration: 0.7s;
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .p-svgArw--small svg {
    width: 62px;
    height: 62px;
  }
  .p-svgArw--small svg circle {
    stroke-dasharray: 188.495559215;
    stroke-dashoffset: 188.495559215px;
  }
}

@media (max-width: 79.99em) {
  .p-svgArw {
    transform: rotate(0.0001deg) scale(0.8);
  }
}

@media (max-width: 59.99em) {
  .p-svgArw {
    width: 75px;
    height: 75px;
    transform: rotate(0.0001deg) scale(1);
  }
  .p-svgArw:before {
    transform: rotate(0.0001deg) scale(1);
  }
  .p-svgArw:after {
    left: 1px;
  }
  .p-svgArw--small {
    width: 40px;
    height: 40px;
  }
}

@media (min-width: 60em) {
  a:hover .p-svgArw:before {
    transform: rotate(0.0001deg) scale(1);
    opacity: 0;
  }
  a:hover .p-svgArw svg {
    transform: scale(1);
    opacity: 1;
  }
  a:hover .p-svgArw svg circle {
    stroke-dashoffset: 0px;
  }
}



@media (min-width: 60em) {
  a:hover .p-svgArw:before {
    transform: rotate(0.0001deg) scale(1);
    opacity: 0;
  }
  a:hover .p-svgArw svg {
    transform: scale(1);
    opacity: 1;
  }
  a:hover .p-svgArw svg circle {
    stroke-dashoffset: 0px;
  }
}



/*ページフォーマットセカンド*/


#section01,#section02,#section03 {
  padding: 7em 0px 10em;
  position: relative;
}

.section-inner {
  margin-top: 6rem;
  margin-bottom: 10rem;
}

@media only screen and (max-width: 767px) {
  .section-inner {
    margin-top: 3rem;
    margin-bottom: 5rem;
  }
	#section01,#section02,#section03 {
  padding: 4em 0px 6em;
  position: relative;
}
}







/*! パンくず */

.st-Breadcrumb a {
  color: #49565e;
  text-decoration: none!important;
  cursor: pointer;
  -webkit-transition: all 0.3s ease, -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s ease, -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s ease, transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.3s ease, transform 0.8s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}

.st-Breadcrumb a:hover {
  opacity: 0.3;
}


.st-Breadcrumb_Item {
  margin-right: 12px;
}

.st-Breadcrumb_Item::after {
  margin-left: 12px;
  content: '';
  display: inline-block;
  width: 16px;
  height: 6px;
  background-image: url("../img/common/gr-arrow.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;

  margin-bottom: 3px;
}

@media (max-width: 991px) {
  .st-Breadcrumb_Item::after {
    width: 13px;
    height: 5px;
    margin-bottom: 2.5px;
  }
}

.st-Breadcrumb_Item:last-child::after {
  content: none;
}

.st-Breadcrumb_Link {
  text-decoration: none;
  text-transform: uppercase;
}

a:hover {
	transition: all 0.4s ease-out 0s;
    color: #27B6BA;
}
p{
	color: #354245;
}