.sp_only {
	display: block;
}
.pc_only {
	display: none;
}

@media screen and (min-width: 768px) {
	.sp_only {
		display: none;
	}
	.pc_only {
		display: block;
	}
}




/* -----------------------------------------

 header

----------------------------------------- */
/*
 header__bg
----------------- */
.header__bg {
	opacity: 0;
	-webkit-transition: all .7s;
	transition: all .7s
}
.is-scroll .header__bg {
	opacity: 1
}
.header__logo {
	opacity: 0
}
.is-scroll .header__logo {
	opacity: 1
}
.header__logo__top {
	opacity: 1;
	position: absolute;
	display: block
}
.is-scroll .header__logo__top {
	opacity: 0
}
.ham__item {
	background: #fff
}
.is-hamactive .ham__item,
.is-scroll .ham__item {
	background: #656565
}


/*
 header__nav
----------------- */
.gnav__item {
	color: #fff
}
.is-hamactive .gnav__item,
.is-scroll .gnav__item {
	color: #656565
}
.is-scroll .gnav__item:hover {
	color: #333
}



/* -----------------------------------------

 main

----------------------------------------- */
@media screen and (min-width: 768px) {
	.main {
		padding-top: 100vh
	}
}

@media screen and (max-width: 767px) {
	.main {
		padding-top: 135.33333vw;
	}
}


.open__heading {
	margin: 0 auto
}

@media screen and (min-width: 768px) {
.open .open__heading {
	width: 50rem
}
}

@media screen and (max-width: 767px) {
.open .open__heading {
	width: 54.13333%
}
}



/*
 topmv
----------------- */
.topmv {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	text-align: center
}

@media screen and (min-width: 768px) {
	.topmv {
		height: 100vh;
		background: url(../images/teaser/mv.jpg) no-repeat center/cover;
		padding-top: 22vh;
	}
}

@media screen and (max-width: 767px) {
	.topmv {
		height: 140.33333vw;
		background: url(../images/teaser/mv_sp.jpg) no-repeat center/cover;
		padding-top: 27%;
	}
}

.topmv__subheading {
	color: #fff
}

.topmv__subheading span {
	letter-spacing: 1.5px;
    padding-right: 0.3rem;
}

@media screen and (min-width: 1400px) {
	.topmv__subheading {
		margin-bottom: 2.9285vw;
		font-size: 1.5vw;
		letter-spacing: 4px;
	}
	.topmv__subheading span {
		letter-spacing: 1.5px;
	    padding-right: 0.3rem;
	}
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
	.topmv__subheading {
		margin-bottom: 4.5rem;
		font-size: 2.5rem;
		letter-spacing: 4px;
	}
	.topmv__subheading span {
		letter-spacing: 1.5px;
	    padding-right: 0.3rem;
	}
}

@media screen and (max-width: 767px) {
	.topmv__subheading {
		margin-bottom: 1.5rem;
		font-size: 1.3rem;
		letter-spacing: 3px;
	}
	.topmv__subheading span {
		letter-spacing: 1.5px;
	    padding-right: 0.3rem;
	}
}

@media screen and (min-width: 1400px) {
	.topmv__heading {
		width: 14.8vw;
	}
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
	.topmv__heading {
		width: 23.5rem
	}
}

@media screen and (max-width: 767px) {
	.topmv__heading {
		width: 30%;
	}
}


.topmv__ginza {
	margin: 0 auto
}

@media screen and (min-width: 1400px) {
	.topmv__ginza {
		margin-top: 1vw;
		width: 32.2vw
	}
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
	.topmv__ginza {
		margin-top: 2rem;
		width: 620px
	}
}

@media screen and (max-width: 767px) {
	.topmv__ginza {
		width: 80%;
		margin-top: 0.8rem;
	}
}

.topmv__scroll {
	position: absolute;
	color: #333;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	padding: 0 0 2.5rem;
	letter-spacing: .2em
}
.topmv__scroll:after {
	content: '';
	position: absolute;
	bottom: 5%;
	left: 50%;
	-webkit-transform: translateX(-50%) rotate(45deg);
	transform: translateX(-50%) rotate(45deg);
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
	-webkit-animation: arrow 2s infinite;
	animation: arrow 2s infinite;
}

@media screen and (min-width: 768px) {
	.topmv__scroll {
		font-size: 1.2rem;
		bottom: 2rem;
	}
	.topmv__scroll:after {
		width: 1.5rem;
		height: 1.5rem;	
	}
}

@media screen and (max-width: 767px) {
	.topmv__scroll {
		font-size: .8rem;
		bottom: 3%;
	}
	.topmv__scroll:after {
		width: 1rem;
		height: 1rem;
	}
}

@media screen and (min-width: 768px) {
	@-webkit-keyframes arrow {
		0% {
		bottom:0;
		opacity:0
		}
		20% {
		opacity:1
		}
		70% {
		bottom:-1rem;
		opacity:0
		}
		100% {
		bottom:0;
		opacity:0
		}
	}
	@keyframes arrow {
		0% {
		bottom:0;
		opacity:0
		}
		20% {
		opacity:1
		}
		70% {
		bottom:-1rem;
		opacity:0
		}
		100% {
		bottom:0;
		opacity:0
		}
	}
}

@media screen and (max-width: 767px) {
	@-webkit-keyframes arrow {
		0% {
		bottom:1.5rem;
		opacity:0
		}
		20% {
		opacity:1
		}
		70% {
		bottom:0.5rem;
		opacity:0
		}
		100% {
		bottom:1.5rem;
		opacity:0
		}
	}
	@keyframes arrow {
		0% {
		bottom:1.5rem;
		opacity:0
		}
		20% {
		opacity:1
		}
		70% {
		bottom:0.5rem;
		opacity:0
		}
		100% {
		bottom:1.5rem;
		opacity:0
		}
	}
}





/* -------------------------------------

topcontent

------------------------------------- */
.topcontent {
	position: relative;
	z-index: 50;
	background: #fff
}
.topnav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}
.topnav__item {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-top: 1px solid #FFF;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	width: 133.33333%;
	text-align: center;
	letter-spacing: 0.05em;
	background: #e0e0e1;
	
}
.topnav__item:first-child {
	border-left: 1px solid #fff;
}
.topnav__item:after {
	display: none;
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	background: #333;
	margin-left: -1px
}

@media screen and (min-width: 768px) {
	.topnav__item {
		height: 12rem;
		font-size: 2.7rem;
		letter-spacing: -0.5px;
		color: #333;
	}
	.topnav__item:hover {
		background: #333;
		color:#fff;
	}
	.topnav__item:after {
		width: 2px;
		height: 3rem
	}
}

@media screen and (max-width: 767px) {
	.topnav__item {
		height: 6rem;
		font-size: 1.3rem;
		letter-spacing: -0.1px;
		color:#333;
	}
	.topnav__item:after {
		width: 1px;
		height: 1rem
	}
}

@media screen and (min-width: 768px) {
	.topsection {
		padding: 7rem 0
	}
}

@media screen and (max-width: 767px) {
	.topsection {
		padding: 5rem 0;
	}
	.topsection:last-child {
		padding:5rem 0 0;
	}
}


.section__headwrap {
	position: relative;
	text-align: center
}

@media screen and (min-width: 768px) {
	.section__headwrap {
		margin-bottom: 5rem;
		padding-bottom: 3.5rem;
	}
	#access .section__headwrap {
		margin-bottom: 7rem;

	}
}

@media screen and (max-width: 767px) {
	.section__headwrap {
		margin-bottom: 3.5rem;
		padding-bottom: 3rem
	}
}
.section__heading {
	letter-spacing: 0.1px;
}

@media screen and (min-width: 768px) {
	.section__heading {
		font-size: 4rem;
		letter-spacing: 0.5px;
	}
}

@media screen and (max-width: 767px) {
	.section__heading {
		font-size: 3rem
	}
}
.section__line {
	display: inline-block;
	position: absolute;
	left: 50%;
	width: 10%;
	bottom: 0;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	height: 1px;
	//background: #fff;
}

.section__line:before {
	width: 10%;
	height: 100%;
	background: #333;
}

@media screen and (min-width: 768px) {
	.section__line {
		width: 10%;
		background-color:#333;
	}
}

@media screen and (max-width: 767px) {
	.section__line {
		width: 14%;
		background-color:#333;
	}
}
.section__lead {
	font-weight: normal
}

@media screen and (min-width: 768px) {
	.section__lead {
		margin-bottom: 5rem;
		text-align: center;
		font-size: 2.4rem
	}
}

@media screen and (max-width: 767px) {
	.section__lead {
		margin-bottom: 3rem;
		font-size: 1.8rem;
		text-align: center;
		line-height: 1.8
	}
}
.section__lead__text {
	margin-bottom: 5rem;
	text-align: center;
	font-size: 1.4rem;
	line-height: 2.3em
}

@media screen and (max-width: 767px) {
	.section__lead__text {
		margin-bottom: 7rem
	}
}



/* -----------------------------------------

 concept

----------------------------------------- */
.concept {
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.concept__lead {
		margin-bottom: 3rem
	}
}
.concept__block {
	position: relative
}
.concept__block:before {
	content: '';
	display: block;
	position: absolute;
	z-index: 5
}

@media screen and (min-width: 768px) {
	.concept__block {
		margin-bottom: 4rem
	}
	.concept__block+.concept__block {
		margin-top: 17rem
	}
	.concept__block:before {
		top: 3rem;
		width: 85.71428%;
		height: 105%
	}
	.concept__block:nth-child(2n+1):before {
		left: 0;
		border-left: 4px solid #333;
		background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(80%, #fff), to(#f2f2f2));
		background: linear-gradient(to right, #fff 0%, #fff 80%, #f2f2f2 100%);
	}
	.concept__block:nth-child(2n):before {
		right: 0;
		border-right: 4px solid #333;
		/* background: -webkit-gradient(linear, right top, left top, from(#fff), color-stop(80%, #fff), to(#f2f2f2)); */
		background: linear-gradient(to left, #fff 0%, #fff 80%, #f2f2f2 100%);
	}

}

@media screen and (max-width: 767px) {
	.concept__block+.concept__block {
		margin-top: 10rem
	}
	.concept__block:before {
		top: 2rem;
		width: 100%;
		height: 100%
	}
	.concept__block:nth-child(2n+1):before {
		left: 0;
		border-left: 4px solid #333;
		background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(80%, #fff), to(#f2f2f2));
		background: linear-gradient(to right, #fff 0%, #fff 80%, #f2f2f2 100%)
	}
	.concept__block:nth-child(2n):before {
		right: 0;
		border-right: 4px solid #333;
		background: -webkit-gradient(linear, right top, left top, from(#fff), color-stop(80%, #fff), to(#f2f2f2));
		background: linear-gradient(to left, #fff 0%, #fff 80%, #f2f2f2 100%);
	}
}
.concept__block__inner {
	position: relative;
	z-index: 10
}

@media screen and (min-width: 768px) {
	.concept__block__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-top:10rem;
	}
}

@media screen and (max-width: 767px) {
	.concept__block__inner {
		padding: 0 3rem
	}
}

@media screen and (min-width: 768px) {
	.concept__block:nth-child(2n) .concept__block__inner {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse
	}
}
.concept__block__head {
	position: relative;
	margin-bottom:2rem;
}

@media screen and (min-width: 768px) {
	.concept__block__head {
		width: 50%;
		padding-top: 7rem;
	}
}


.carbon_flex ul {
	display:flex;
	justify-content:center;
	flex-flow:row nowrap;
}
.carbon_flex ul li {
	width:33%;
}

@media screen and (min-width: 768px) {
	.carbon_flex ul {
		display:flex;
		justify-content:space-around;
		flex-flow:row nowrap;
	}
	.carbon_flex ul li {
		width:28%;
	}
}




@media screen and (min-width: 768px) {
	.concept__block:nth-child(2n+1) .concept__block__head {
		padding-left: 10%
	}
	.concept__block:nth-child(2n+1) .concept__block__img {
		padding-left: 9rem
	}
	.concept__block:nth-child(2n) .concept__block__head {
		padding-right: 10%
	}
	.concept__block:nth-child(2n) .concept__block__img {
		padding-right: 7rem;
	}	
	.concept__block:nth-child(2n) .concept__block__head__01 {
		padding-top: 3rem
	}	
}
.concept__block__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 50%
}

.concept__block__head__01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%
}


@media screen and (max-width: 767px) {
.concept__block__img{
	width: 100%
}
.concept__block__head__01{
	width: 100%;
	margin-top: 2.5rem;
}	
	
}
.concept__img__text {
	margin-top: .5rem;
	color: #333;
	font-size: 1.2rem;
	line-height: 1.8
}



.concept__img__top {
	position: relative
}

@media screen and (max-width: 767px) {
	.concept__img__top {
		padding: 0 1rem 3rem
	}
}

@media screen and (min-width: 768px) {
	.concept__img__topBox {
		padding: 18px 0 30px;
	}
	}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.concept__img__topBox {
		padding: 120px 0 30px
	}
}

@media screen and (min-width: 768px) {
	.concept__img__topImg {
		/* position: absolute; */
		bottom: 1rem;
		/* left: 25%; */
		/* width: 122% */
	}
	.concept__img__topBox__text__right {
		padding: 0 0 3rem 7rem;
	}
}

@media screen and (max-width: 1430px) {
	.concept__img__topImg {
		/* width: 35vw */
	}
	.concept__img__topBox {
		padding: 0 2rem 3rem 0;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.concept__img__topImg {
		width: auto;
		left: auto;
		right: 0;
		bottom: auto;
		top: 0
	}
}

@media screen and (max-width: 767px) {
	.concept__img__topImg {
		width: 100%;
		position: relative;
		left: 9%;
		bottom: -1rem;
	}
}
.concept__img__topTitle {
	display: inline-block;
	margin-top: 2.5rem;
	padding: 2px 10px;
	background: #333;
	color: #fff;
	font-size: 1.3rem;
	text-align: center
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.concept__img__topTitle {
		margin-bottom: 1rem
	}
}

@media screen and (max-width: 767px) {
	.concept__img__topTitle {
		margin-bottom: 1rem;
	}
}
.concept__img__bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.concept__img__bottomItem {
	width: calc((100% - 1rem) /2)
}
.concept__img__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

@media screen and (max-width: 767px) {
	.concept__img__list {
		margin-top: 3rem
	}
}
.concept__img__item {
	margin-bottom: 1rem;
}
.concept__img__item.--half {
	width: calc((100% - 1rem) / 2)
}
.concept__img__item.--full {
	width: 100%
}
.concept__img__item.--mr10 {
	margin-right: 1rem
}
.concept__block__num {
	position: absolute;
	top: -3rem;
	display: inline-block;
	color: #ede8db;
	line-height: 0.6
}
.concept__block__num:before {
	content: '';
	display: none;
	position: absolute;
	top: 0;
	left: 50%;
	background: #ede8db;
	height: .3rem
}

@media screen and (min-width: 768px) {
	.concept__block__num {
		font-size: 18rem
	}
	.concept__block__num:before {
		width: 7rem;
		margin-left: -3.5rem
	}
}

@media screen and (max-width: 767px) {
	.concept__block__num {
		font-size: 12.6rem
	}
	.concept__block__num:before {
		width: 5rem;
		margin-left: -2.5rem
	}
}

@media screen and (min-width: 768px) {
	.concept__block:nth-child(2n+1) .concept__block__num {
		left: 5rem
	}
}

@media screen and (max-width: 767px) {
	.concept__block:nth-child(2n+1) .concept__block__num {
		right: 0
	}
}

@media screen and (min-width: 768px) {
	.concept__block:nth-child(2n) .concept__block__num {
		right: 4rem;
	}
}

@media screen and (max-width: 767px) {
	.concept__block:nth-child(2n) .concept__block__num {
		left: 0
	}
}
.concept__block__heading {
	color: #fff
}
.concept__block__heading .bg {
	background: #333
}

@media screen and (min-width: 768px) {
	.concept__block__heading:first-child {
		padding: 0.3rem 2rem;
		font-size: 2.6rem;
	}
	.concept__block__heading {
		display: inline-block;
		width: 77%;
		margin-bottom: 1rem;
		padding: 0.9rem 2rem;
		background: #333;
		font-size: 1.9rem;
	}
}

@media screen and (max-width: 767px) {
	.concept__block__heading {
		margin-bottom: 1.5rem;
		padding-top: 5rem;
		font-size: 1.5rem
	}
	.concept__block__heading .bg {
		display: inline-block;
		margin: 0.5rem 0;
		padding: 0.9rem 2rem
	}
}

@media screen and (max-width: 767px) {
	.concept__block:nth-child(2n) .concept__block__heading {
		text-align: right
	}
}
.concept__block__text {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.7;
}

@media screen and (min-width: 768px) {
	.concept__block__text {
		line-height: 2.8rem;
	}
	
	.concept__block__text__right {
		padding:2rem 2rem 4rem 7rem;
	}
	.concept__block__text_n {
		    margin-bottom: 2rem;
	}
}

@media screen and (max-width: 767px) {
	.concept__block__text__right {
		padding:0;
	}
}

.concept__block__number {
	margin-top:1rem;
	font-size:1.2rem;
	color:#8e8e8e;
}
.concept__block__price {
	color: #000;
	font-size: 1.4rem;
	//line-height: 2;
	//margin-top:1rem;
	font-weight:bold;

}
.concept__block__price span {
	font-size:1rem;
}

@media screen and (min-width: 768px) {
	.concept__block__number {
		margin-top:1rem;
	}
	.concept__block__price {
		//line-height: 1;
		font-weight:bold;
		margin-top:0.5rem;
	}
	.concept__block__price span {
		font-size:1rem;	
	}
}


.concept__designer {
	margin-top: 5rem
}

@media screen and (max-width: 767px) {
	.concept__designer {
		margin-top: 2.5rem
	}
}
.concept__designer__heading {
	margin-bottom: 1rem;
	color: #333;
	font-size: 1.2rem
}
.concept__designer__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.concept__designer__item {
		width: calc((100% - 1rem) /2)
	}
}

@media screen and (max-width: 767px) {
	.concept__designer__item {
		width: calc((100% - 1rem) /2)
	}
}
.concept__designer__text {
	margin-top: 1rem;
	color: #333;
	font-size: 1.2rem
}
.concept__brand {
	position: relative;
	z-index: 10;
	margin-top: 5rem;
}

.concept__brand__text {
	margin: 3rem 0 0;
	color: #333;
	line-height: 1.7;
	font-size: 1.2rem;
	padding: 2rem;
	border: 1px solid #999;
	//
	width: 40rem;
	text-align: center
}
.concept__brand_saitei_kakaku {
    margin-top: 5rem
}


@media screen and (max-width: 767px) {
	.concept__brand {
		margin-top: 3rem;
		padding: 0 3rem
	}
	.concept__brand__text {
		width: 100%;
		text-align: left;
		margin: 0;	
	}
	.concept__brand_saitei_kakaku {
	    margin-top: 3rem
	}
}

@media screen and (min-width: 768px) {
	.concept__brandWrap {
		padding-left: 10%
	}
}
.concept__brand__heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 2rem;
	font-size: 1.6rem;
	color: #333;
	font-weight: normal
}
.concept__brand__heading:after {
	content: "";
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	margin-left: 1rem;
	border-top: 1px solid #999
}

@media screen and (max-width: 767px) {
	.concept__brand__heading {
		font-size: 1.4rem
	}
}
.concept__brand__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.concept__brand__item {
	width: calc((100% - 6rem) / 4);
	color: #333;
}
.concept__brand__item:nth-child(1) .brand__item__logo {
	max-width: 150px
}
.concept__brand__item:nth-child(2) .brand__item__logo {
	max-width: 150px
}
.concept__brand__item:nth-child(3) .brand__item__logo {
	max-width: 150px
}
.concept__brand__item:nth-child(4) .brand__item__logo {
	max-width: 150px
}

@media screen and (max-width: 767px) {
	.concept__brand__item {
		width: calc((100% - 2rem) / 2);
		margin-bottom: 3rem
	}
}
.brand__item__heading {
	margin: 1rem 0 0.6rem;
	font-size: 1.8rem;
	text-align: center
}

@media screen and (max-width: 767px) {
	.brand__item__heading {
		font-size: 1.6rem
	}
}
.brand__item__logo {
	margin: 0 auto .5rem;
	height: 50px
}
.brand__item__text {
	font-size: 1.2rem;
	line-height: 1.8;
	margin-top: 1rem;
}
.brand__item__more {
	margin-top: 1rem;
	font-size: 1.2rem;
	text-align: right
}
.brand__item__anc {
	color: #333;
}
.brand__item__anc:hover {
	opacity: .7
}
.concept__block__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 3rem
}
.concept__block__item {
	color: #333;
	font-size: 1.4rem;
	line-height: 2em;
	width: 50%
}
.concept__block__list__text {
	color: #333;
	font-size: 1.4rem;
	line-height: 2em;
	text-align: right
}
.service {
	color: #fff
}
.service__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between
}
.service__img {
	width: 60%
}
.service__text {
	width: 40%;
	padding-left: 4rem;
	color: #333;
	font-size: 1.4rem;
	line-height: 2
}
.service__note {
	margin: 4rem 0;
	padding: 1.5rem;
	border: solid 1px #333;
	text-align: center;
	font-size: 1.6rem;
	letter-spacing: 0.1em
}

@media screen and (max-width: 767px) {
	.service__content {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap
	}
	.service__img {
		width: 100%;
		margin-bottom: 3rem
	}
	.service__text {
		width: 100%;
		padding-left: 0;
		text-align: left
	}
	.service__note {
		margin: 3.5rem 0;
		text-align: left	
	}
}


.access__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex
}
.access__block__text {
	width: 70%;
	font-size: 1.3rem;
	color: #333;
}




/* -----------------------------------------

 access

----------------------------------------- */
.access__thead {
	padding-right: 4.5rem;
	text-align: left;
	border-right: solid 1px #333;
}
.access__tdata {
	padding-left: 4.5rem;
	padding-bottom: 3rem
}
.access__block__img iframe {
	max-width: 100%;
	max-height:70%;
	padding-left: 7rem;
}
.access__map__imgWrap {
	text-align: center
}
.access__map__imgWrap:not(:last-of-type) {
	margin-bottom: 3rem
}
.access__map__img {
	max-width: 100%;
	width: auto
}
.access__anc {
	color: #005cdc
}
.access__anc:hover {
	opacity: .7
}

@media screen and (max-width: 767px) {
	.access__content {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap
	}
	.access__block__text {
		width: 100%;
		margin-bottom: 3rem
	}
	.access__block__img {
		//padding-left:5rem;
	}
	.access__thead {
		padding-right: 2rem
	}
	.access__tdata {
		padding-left: 2.5rem;
		padding-bottom: 2rem
	}
	.access__block__img iframe {
		max-width: 100%;
		padding-left: 0
	}
}
.btn_fixed {
	position: fixed;
	bottom: 100px;
	bottom: 40%;
	right: 0;
	cursor: pointer;
	z-index: 99999;
	opacity: 0;
}
.is-scroll .btn_fixed {
	opacity: 1;
}

.bnr{
	margin: 3rem auto 6rem;
	width: 100%;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.bnr{
	margin: 0rem auto 5rem;
	}
}


/* -----------------------------------------

 campaign

----------------------------------------- */
@media screen and (max-width: 599px) {
	#campaign {
		margin: 0 auto 3rem;
		max-width:100%;
	}
	.present_note {
			font-size: 1rem;
			margin-top: 0.5rem;
	}
}

@media screen and (min-width: 600px) and (max-width: 1024px) {
	#campaign {
		margin:0rem auto 0;
		max-width:100%;
	}
	.present_note {
			font-size: 1.2rem;
			margin-top: 0.5rem;
	}
}

@media screen and (min-width: 1025px) {
	#campaign {
		margin:auto;
	}
	.cam_img_wrap {
		width:960px;
		margin:0 auto;
	}
	.present_note {
		font-size: 1.2rem;
	    margin-top: 0.8rem;
	}
}


/* -----------------------------------------

 INFORMATION (CAMPAIGN 01)

----------------------------------------- */
.info__block__inner {
	position: relative;
	z-index: 10
}
@media screen and (min-width: 768px) {
	.info__block__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin-top: 8rem;
	}
	.info__block__inner:last-of-type {
		margin-top:14rem;
	}
}
@media screen and (max-width: 767px) {
	.info__block__inner {
		display:flex;
		flex-flow:column-reverse wrap;
	}
}

.info__block__head {
position: relative;
	margin-bottom:2rem;
}
@media screen and (min-width: 768px) {
	.info__block__head {
		width: 50%;
		padding-top: 8rem;
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.info__block {
		padding:0 3rem;
	}
}



.info__block__num {
	position: absolute;
	top: -3rem;
	display: inline-block;
	color: #ede8db;
	line-height: 0.6
}
.info__block__num:before {
	content: '';
	display: none;
	position: absolute;
	top: 0;
	left: 50%;
	background: #ede8db;
	height: .3rem
}
@media screen and (min-width: 768px) {
	.info__block__num {
		font-size: 18rem
	}
	.info__block__num:before {
		width: 7rem;
		margin-left: -3.5rem
	}
}
@media screen and (max-width: 767px) {
	.info__block__num {
		font-size: 12.6rem
	}
	.info__block__num:before {
		width: 5rem;
		margin-left: -2.5rem
	}
}
@media screen and (min-width: 768px) {
	.info__block:nth-child(2n+1) .info__block__num {
		left: 5rem
	}
}
@media screen and (max-width: 767px) {
	.info__block:nth-child(2n+1) .info__block__num {
		right: 0
	}
}
@media screen and (min-width: 768px) {
	.info__block:nth-child(2n) .info__block__num {
		//right: 4rem;
	}
}
@media screen and (max-width: 767px) {
	.info__block:nth-child(2n) .info__block__num {
		left: 0
	}
}

.info__block__heading {
	color: #fff
}
.info__block__heading .bg {
	background: #333
}
@media screen and (min-width: 768px) {
	.info__block__heading:first-child {
		padding: 0.3rem 2rem;
		font-size: 2.6rem;
	}
	.info__block__heading {
		display: inline-block;
		width: 77%;
		margin-bottom: 1rem;
		padding: 0.9rem 2rem;
		background: #333;
		font-size: 1.9rem;
	}
}
@media screen and (max-width: 767px) {
	.info__block__heading {
		margin-bottom: 1.5rem;
		padding-top: 5rem;
		font-size: 1.5rem
	}
	.info__block__heading .bg {
		display: inline-block;
		margin: 0.5rem 0;
		padding: 0.9rem 4rem;
	}
}
.info__block__text {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.7;
}

.info__block__text__left {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.7;
}
@media screen and (min-width: 768px) {
	.info__block__text {
		line-height: 2.8rem;
		margin-top:3rem;
	}
	.info__block__text__left {
		padding: 3rem 2rem 0 0;
		margin-bottom: 2rem;
		line-height: 2.1;
	}
}
@media screen and (max-width: 767px) {
	.info__block__text__left {
		padding:0;
		margin-top: 1rem;
	}
}

@media screen and (min-width: 768px) {
	.info__img__topBox {
		padding: 18px 0 30px 60px;
	}
	.info__img__topBox__left {
		padding: 0 11rem 3rem 0;
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.info__img__topBox {
		padding: 120px 26px 30px;
	}
	.info__img__topBox__left {
		padding: 0 2rem 0 0;
	}
}
.info__img__topTitle {
	display: inline-block;
	margin-top: 2.5rem;
	padding: 2px 10px;
	background: #333;
	color: #fff;
	font-size: 1.3rem;
	text-align: center
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.info__img__topTitle {
		margin-bottom: 1rem
	}
}
@media screen and (max-width: 767px) {
	.info__img__topTitle {
		/* margin-bottom: 1rem; */
	}
}

.info__block__price {
	font-size:1.4rem;
	font-weight:bold;
	line-height: 1.9;
}
.info__block__price span {
	font-size: 1rem;
}

.info__img__text {
	margin-top: .5rem;
	color: #333;
	font-size: 1.2rem;
	line-height: 1.9;
}
@media screen and (min-width: 768px) {
	.info__img__text {
	margin-top: .5rem;
	color: #333;
	font-size: 1.4rem;
	line-height: 1.8;
}
}

.info__block__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 50%
}
.info__block__img__right {
	width: 100%;
}
@media screen and (min-width: 768px) {
	.info__block__img__right {
	width: 46%;
}
}
.info__img__top {
	position: relative
}
@media screen and (max-width: 767px) {
	.info__img__top {
		padding: 0 1rem 3rem
	}
	.concept__img__top_right {
		margin-top:6rem;
	}
}

@media screen and (min-width: 768px) {
	.info__img__topImg {
		margin-top: 2rem;
	}
}
@media screen and (max-width: 1430px) {
	.info__img__topImg {
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.info__img__topImg {
		width: auto;
		left: auto;
		right: 0;
		bottom: auto;
		top: 0
	}
}
@media screen and (max-width: 767px) {
	.info__img__topImg {
		width: 100%;
		position: relative;
		margin-top:6rem;
		/* left: 9%; */
		/* bottom: -1rem; */
	}
}






/*
info__item__center
------------------------------ */
.info__item__center {
	margin:0 auto;
}
@media screen and (min-width: 768px) {
	.info__item__center {
		margin:9rem auto;
	}
}

.cc_flex {
	display: flex;
	justify-content: space-between;
	flex-flow: column-reverse wrap;
	align-items: center;
	//width: 90%;
	//margin: 0 auto;
	/* padding: 0 2rem; */
}
@media screen and (min-width: 768px) {
	.cc_flex {
		display: flex;
	    //justify-content: space-between;
	    flex-flow: row nowrap;
	    align-items: center;
		width:100%;
	}
}

.info__item__centerImg {
	width: 100%;
	margin-top:2rem;
}
@media screen and (min-width: 768px) {
	.info__item__centerImg {
		//width: 70%;
		margin-top:0;
	}
}

.info__item__center__top {
	display:flex;
	justify-content: space-between;
	flex-flow:column wrap;
}
.info__item__center__top li {
	width:100%;
}
@media screen and (min-width: 768px) {
	.info__item__center__top {
		display:flex;
		justify-content: space-between;
		flex-flow:row nowrap;
	}
	.info__item__center__top li {
		width:calc(30%);
	}
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
	.info__item__center__top {
		padding:0 4vw;
	}
}

.info__item__center__smy {
	display:
	flex;
	justify-content: space-between;
	flex-flow:
	column wrap;
	font-size: 1.2rem;
	margin: 1rem auto 0;
	//width:90%;
}
.info__item__center__smy li {
	width:100%;
	line-height:1.5;
}
.info__item__center__smy li:first-child {
	line-height:1.6;
}
@media screen and (min-width: 768px) {
	.info__item__center__smy {
		display:flex;
		justify-content: space-between;
		flex-flow:column wrap;
		font-size: 1.3rem;
		margin:3rem auto 0;
		width:100%;
	}
	.info__item__center__smy li {
		width:100%;
		line-height:1.5;
	}
	.info__item__center__smy li:first-child {
		line-height:1.6;
	}
}


.info__item__center__smy__Title {
	font-size:1.4rem;
	font-weight:bold;
}
.info__item__center__smy__Title span {
	display: inline-block;
	padding: 0.3rem 2rem;
	background-color: #C5C5C5;
	color:#fff;
	font-weight:normal;
	font-size:1rem;
}
.info__item__center__smy__Price {
	font-size:1.4rem;
	font-weight:bold;
}
.info__item__center__smy__Price span {
	font-size: 1rem;
}
@media screen and (min-width: 768px) {
	.info__item__center__smy__Title {
		font-size:1.5rem;
		font-weight:bold;
	}
	.info__item__center__smy__Title span {
		display: inline-block;
		padding: 0.3rem 2rem;
		background-color: #C5C5C5;
		color:#fff;
		font-weight:normal;
		font-size:1rem;
	}
	.info__item__center__smy__Price {
		font-size:1.4rem;
		font-weight:bold;
	}
	.info__item__center__smy__Price span {
		font-size: 1rem;
	}
}





/* ----------------------------------

- 202311 Black Friday

---------------------------------- */
@media screen and (max-width: 599px) {
	.concept__block__price .concept__block__saleprice {
		font-size:2.2rem;
		letter-spacing:1px;
		color:#ef3c25;
	}
	.concept__block__price .concept__block__saleprice > span:first-child {
		font-size:1.9rem;
	}
	.concept__block__price .concept__block__saleprice > span:last-child {
		font-size:1.3rem;
	}
	.bf_text {
		font-size:1.45rem;
		color:#ef3c25;
		//font-family: serif;
		font-weight: bold;
		margin-top:1rem;
		text-align:center;
	}
	.bf_text a {
		display:block;
		color:#fff;
		background:#ef3c25;
		padding:0.5rem;
		//text-decoration-line: underline;
	}
}
@media screen and (min-width: 768px) {
	.concept__block__price .concept__block__saleprice {
		font-size:2.2rem;
		letter-spacing:1px;
		color:#ef3c25;
	}
	.concept__block__price .concept__block__saleprice > span:first-child {
		font-size:1.9rem;
	}
	.concept__block__price .concept__block__saleprice > span:last-child {
		font-size:1.3rem;
	}
	.bf_text {
		font-size:1.8rem;
		color:#ef3c25;
		/* font-family: serif; */
		font-weight: bold;
		margin-top:2rem;
	}
	.bf_text a {
		display: block;
		color: #fff;
		background:#ef3c25;
		/* text-decoration-line: underline; */
		/* letter-spacing: -0.5px; */
		border: 2px solid #ef3c25;
		padding: 0.5rem;
		text-align: center;
	}
	.bf_text a:hover {
		color: #ef3c25;
		background:#fff;
	}
}


/*
 info__block__inner
-------------------------------- */
@media screen and (max-width: 599px) {
	.infomation .info__block {
	}
	.infomation .info__block__inner {
		margin-top: 40px;
		border: 2px solid #333;
		padding: 2rem 2.5rem 3rem;
	}
	.info__block__head {
		margin-bottom:0;	
	}
	.info__block__img {
		width:100%;
	}
	.info__img__top {
		padding:0;
	}
	.info__img__topImg {
		margin-top: 19px;
	}
	.info__img__topImg h3 {
		font-size: 2.2rem;
	}
	.info__img__topImg .info__block__text {
		margin-top:1rem;
		line-height: 1.8;
		font-size: 1.3rem;
	}
	.info__img__topImg .info__block__text > span {
		color:#ef3c25;
		font-weight:bold;
		letter-spacing: 0.5px;
	}
	.info__img__topImg ul {
		margin-top:1rem;
	}
	
	.info__block__inner {
	    display: flex;
	    flex-flow: column wrap;
	}
}
@media screen and (min-width: 768px) {
	.infomation .info__block {
	}
	.infomation .info__block__inner {
		margin-top: 0;
		border: 2px solid #333;
		padding: 3rem 5rem 2.5rem;
	}
	.info__img__topImg {
		margin-top:0;
	}
	.info__img__topImg h3 {
		font-size:2.5rem;
	}
	.info__img__topImg .info__block__text {
		margin-top:1rem;
		line-height: 2;
		font-size: 1.5rem;
	}
	.info__img__topImg .info__block__text > span {
		color:#ef3c25;
		font-weight:bold;
		letter-spacing: 0.5px;
	}
	.info__img__topImg ul {
		margin-top:1rem;
	}
}


/*
 concept__block__itemList__wrap
-------------------------------- */
@media screen and (max-width: 599px) {
	.concept__block__itemList__wrap {
		padding-top: 3rem;
	}
	.concept__block__itemList__wrap h3 {
		font-size:1.5rem;
		border-left:3px solid #aaa;
		margin: 3rem auto 2rem;
		padding-left:0.5rem;
		letter-spacing:0.5px
	}
	.concept__block__itemList {
		display:flex;
	    flex-wrap: wrap;
	    justify-content: space-between;
	}
	.concept__item__list {
	    width: 48%;
	    height: auto;
	    position:relative;
	    margin-bottom: 4rem;
	}
	.concept__item__list::after {
		content:"";
		width: 33px;
		height: 44px;
		background:#ef3c25;
		color:#fff;
		position:absolute;
		top:-2%;
		left:4%;
	}
	.concept__item__off {
		z-index:1;
		color:#fff;
		font-size: 1.1rem;
		font-weight:bold;
		line-height:1.1;
		text-align:center;
		position:absolute;
		top:0.2%;
		left:6%;
	}
	.concept__item__off span {
		font-size: 1.3rem;
		font-weight:bold;
		letter-spacing:1px;
	}
	.concept__item__anc {
	    width: 100%;
	    height: 100%;
		transition: all 0.3s;
	}
	.concept__item__list .concept__item__img {
		border:1px solid #ddd;
		margin-bottom:1rem;
	}
	.concept__item__list .concept__item__img:hover {
		transition: all 0.3s;
		transform: translateY(-5px);
	}
	.concept__item__text.maker {
		display:inline-block;
		background:#333;
		color:#fff;
		letter-spacing:0.5px;
		padding:0.5rem 1rem;
		margin-bottom:0.8rem;
	}
	.concept__item__text.name {
		font-size:1.2rem;
	}
	.concept__item__text.price {
		margin-top:1rem;
		font-size: 1.1rem;
		letter-spacing:0.8px;
	}
	.concept__item__text.price > span {
		font-size:0.8rem;
	}
	.concept__item__text.saleprice {
		margin-right:1rem;
		text-align:right;
		font-size: 1.4rem;
		font-weight:bold;
		color:#ef3c25;
		letter-spacing:1px;
	}
	.concept__item__text.saleprice > span {
		font-size:1rem;
	}
}
@media screen and (min-width: 768px) {
	.concept__block__itemList__wrap {
		padding-top: 3rem;
	}
	.concept__block__itemList__wrap h3 {
		font-size:1.5rem;
		border-left:3px solid #aaa;
		margin: 3rem auto 3rem;
		padding-left:0.5rem;
		letter-spacing:0.5px
	}
	.concept__block__itemList {
		display:flex;
	    flex-wrap: nowrap;
	    justify-content: space-between;
	}
	.concept__item__list {
	    width: 23%;
	    height: auto;
		position:relative;
	}
	.concept__item__list::after {
		content:"";
		width:40px;
		height:50px;
		background:#ef3c25;
		color:#fff;
		position:absolute;
		top:-2%;
		left:4%;
	}
	.concept__item__off {
		z-index:1;
		color:#fff;
		font-size:1.3rem;
		font-weight:bold;
		line-height:1.1;
		text-align:center;
		position:absolute;
		top:0.2%;
		left:6%;
	}
	.concept__item__off span {
		font-size:1.6rem;
		font-weight:bold;
		letter-spacing:1px;
	}
	.concept__item__anc {
	    width: 100%;
	    height: 100%;
		transition: all 0.3s;
	}
	.concept__item__list .concept__item__img {
		border:1px solid #ddd;
		margin-bottom:1rem;
	}
	.concept__item__list .concept__item__img:hover {
		transition: all 0.3s;
		transform: translateY(-5px);
	}
	.concept__item__text.maker {
		display:inline-block;
		background:#333;
		color:#fff;
		letter-spacing:0.5px;
		padding:0.5rem 1rem;
		margin-bottom:0.8rem;
	}
	.concept__item__text.name {
		font-size:1.2rem;
	}
	.concept__item__text.price {
		margin-top:1rem;
		font-size:1.3rem;
		letter-spacing:0.8px;
	}
	.concept__item__text.price > span {
		font-size:0.8rem;
	}
	.concept__item__text.saleprice {
		margin-right:1rem;
		text-align:right;
		font-size:1.5rem;
		font-weight:bold;
		color:#ef3c25;
		letter-spacing:1px;
	}
	.concept__item__text.saleprice > span {
		font-size:1rem;
	}
}


/*
 info__block__btn_wrap
-------------------------------- */
@media screen and (max-width: 599px) {
	.info__block__btn_wrap {
		text-align:center;
		margin-top:0;
	}
	.info__block__btn_wrap > p {
		font-size:1.25rem;
		font-weight:bold;
		margin-top:2rem;
		line-height: 1.6;
		text-align:center;
	}
	.info__block__btn a {
		font-size: 1.3rem;
		background:#ef3c25;
		color:#fff;
		padding:1rem 0;
		display:block;
		margin-top: 2rem;
	}
	.info__block__btn a:hover {
		transition: all 0.3s;
		transform: translateY(-5px);
	}
	.info__block__btn > p {
		margin-bottom: 1rem;
		font-size: 1.25rem;
		font-weight: bold;
	}
}
@media screen and (min-width: 768px) {
	.info__block__btn_wrap {
		text-align:center;
		margin-top: 7rem;
	}
	.info__block__btn_wrap > p {
		font-size:1.5rem;
		font-weight:bold;
		margin-top:3rem;
		line-height:2;
	}
	.info__block__btn a {
		font-size:1.8rem;
		background:#ef3c25;
		color:#fff;
		padding:1rem 0;
		display:inline-block;
		width:50%;
		margin-top: 3rem;
	}
	.info__block__btn a:hover {
		transition: all 0.3s;
		transform: translateY(-5px);
	}
	.info__block__btn > p {
		//
		font-size:1.2rem;
		//
		margin-top:1rem;
		font-size: 1.5rem;
		font-weight: bold;
		margin-bottom: 1rem;
		/* line-height: 2; */
	}
}
