@charset "UTF-8";
/* ////////////////////////////////////////////////////////////////////////////////

	Common

//////////////////////////////////////////////////////////////////////////////// */
body {
	font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	color: #000;
	font-size: 15px;
	letter-spacing: 0.12em;
	line-height: 1.8;
	-webkit-text-size-adjust: 100%;
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
a {
	color: #000;
	text-decoration: none;
	transition: all 0.3s ease-out;
}
a:hover { opacity: 0.5;}

ul li, ol li {
	list-style: none;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
 }

.anim {
	opacity: 0;
	transform: translateY(60px);
	transition: all .8s ease-out;
}
.anim.on {
	opacity: 1;
	transform: translateY(0);
}

main {
	padding-top: 120px;
}
.page-index main {
	padding-top: 0;
}



@media screen and (min-width: 813px) {
	.sp { display: none;}
	.page-index .fixed + main {
		padding-top: 120px;
	}
}
@media screen and (max-width: 812px) {
	.pc { display: none;}

	main {
		padding-top: 0;
	}

}
/* ////////////////////////////////////////////////////////////////////////////////

	header

//////////////////////////////////////////////////////////////////////////////// */
.header {
	position: fixed;
	top:0;
	left:0;
	z-index: 1000;
}
.page-index .header {
	transition: all 0.5s ease 0s;
}
.header h1.logo {
	max-width: 150px;
	line-height: 1;
}
#gnavWrap {
	width: 100%;
	z-index: 1000;
}
#gnav {
	display: flex;
	align-items: center;
	justify-content: center;
}
#gnav ul {
	display: flex;
	justify-content: flex-end;
    align-items: center;
}
#gnav ul li {
	font-size: 14px;
	font-family: Helvetica, Arial, "sans-serif";
    letter-spacing: 0.24em;
}
#gnav ul li.storeLink {
	border-left: #000 solid 1px;
}
#gnav ul li.storeLink a {
	padding-right: 15px;
	background: url("../images/ico_blank.png") no-repeat right center;
	background-size: 8px;
}


#langWrap {
	margin-left: 30px;
}
#langWrap .lang {
	border: #000 solid 1px;
    letter-spacing: 0;
	display: flex;
	padding: 0 !important;
}
#langWrap .lang a {
	font-size: 14px;
	font-family: Helvetica, Arial, "sans-serif";
	display: block;
	letter-spacing: .05em;
	padding: 4px 10px !important;
	width: 46px;
	text-align: center;
	color: #fff;
	background-color: #000;
}
#langWrap .lang a.current {
	color: #000;
	background-color: #fff;
}
#langWrap .lang a.current:hover {
	opacity: 1;
}


@media screen and (min-width:813px) {
	.header {
		display: flex;
		align-items: center;
		height: 120px;
		width: 100%;
		max-width: 100% !important;
	}
	.page-index .header {
		position: static;
		top: -70px;
	}
	.header.fixed {
		position: fixed;
		z-index: 1000;
		top:0;
		left:0;
		height: 70px;
		width: 100%;
		background-color: #fff;
		opacity: 0.9;
	}
	#gnav {
		justify-content: flex-end;
	}
	#gnav ul li {
		padding: 0 20px;
	}
	#gnav ul li:last-child {
		padding-right: 0;
	}
	header .menuBtn a,
	#spNav {
		display: none !important;
	}
}
@media screen and (min-width:813px) and (max-width:1199px) {
	.header h1.logo {
		width: 24vw;
	}
	#gnav ul li {
		font-size: 1.3vw;
	}
}
@media screen and (max-width:812px) {
	.header {
		position: absolute;
    	top: 0;
    	z-index: 1000;
    	width: 100%;
	}
	.header h1.logo {
    	padding-top: calc(20 / 375 * 100vw);
		max-width: calc(98.6 / 375 * 100vw);
	}
	#gnavWrap {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		background-color: #fff;
	}
	#gnav {
		width: 100vw;
		height: 100vh;
		flex-direction: column;
	}
	#gnav img.logo {
		padding-bottom: calc(30 / 375 *100vw);
		width: calc(182 / 375 * 100vw);
	}
	#gnav ul {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	#gnav ul li {
		padding: 2vw calc(10 / 375 *100vw);
		font-size: calc(22 / 375 *100vw);
	}
	#gnav ul li.storeLink {
		border: none;
		margin-top: 4vw;
	}
	#gnav ul li.storeLink a {
    	padding: 4vw 10vw 4vw 6vw;
		border: #000 solid 1px;
		background: url(../images/ico_blank.png) no-repeat 92% center;
		background-size: 8px;
		font-size: 4.6vw;
	}
	#gnavWrap a.icoInstagram {
		position: absolute;
		display: block;
		bottom: calc(24 / 375 *100vw);
		right: calc(16 / 375 *100vw);
		padding: 15px;
		width: 50px;
		line-height: 1;
	}
	#menuButton {
		display: block;
		width: 44px;
		height:44px;
		position: fixed;
		top: calc(14 / 375 * 100vw);
		right: calc(20 / 375 * 100vw);
		z-index: 9998;
	}
	#menuButton span {
		display: block;
		background: #000;
		width: 38px;
		height: 1px;
		position: absolute;
		left: 3px;
		-webkit-transition: all 0.4s;
		transition: all 0.4s;
	}
	#menuButton span:first-child { top: 18px;}
	#menuButton span:nth-child(2) { bottom: 18px;}

	#menuButton.active span:first-child {
		top: 15px;
		-webkit-transform: translateY(7px) rotate(45deg);
		transform: translateY(7px) rotate(45deg);
	}
	#menuButton.active span:nth-child(2) {
		bottom: 14px;
		-webkit-transform: translateY(-7px) rotate(-45deg);
		transform: translateY(-7px) rotate(-45deg);
	}

	#langWrap {
		margin-left: 0;
		position: absolute;
		top: 6vw;
		right: 21vw;
	}

	#langWrap .lang a {
		font-size: min(3vw, 14px);
		padding: min(1vw, 4px) min(3vw, 10px) !important;
		width: min(11vw, 46px);
	}


	header .menuBtn {
		position: absolute;
		top: calc(28 / 375 * 100vw);
		right: calc(17 / 375 * 100vw);
	}
	header .menuBtn a {
		display: block;
		color: #000;
		text-decoration: none;
		font-size: min(4vw, 20px);
		font-weight: bold;
		padding-bottom: min(1.4vw, 10px);
		border-bottom: #000 solid 2px;
		line-height: 1;
	}
	nav#spNav {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(255,255,255,0.95);
		z-index: 2000;
		display: none;
	}
	nav#spNav .menuBtn.close {
		position: absolute;
		top: calc(28 / 375 * 100vw);
		right: calc(17 / 375 * 100vw);
	}
	nav#spNav .menuBtn.close a {
		display: block;
		color: #000;
		text-decoration: none;
		font-size: min(4vw, 20px);
		font-weight: bold;
		padding-bottom: min(1.4vw, 10px);
		border-bottom: #000 solid 2px;
		line-height: 1;
	}

	nav#spNav .menuWrap {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: center;
		height: 100%;
	}
	nav#spNav .menuWrap .menuLogo {
		width: min(40vw, 240px);
		line-height: 0;
		margin-bottom: min(10vw, 40px);
	}
	nav#spNav .menuWrap .mainMenu {
		margin-bottom: min(8vw, 40px);
		padding-bottom: min(4vw, 20px);
		border-bottom: #fccb03 solid 1px;
		width: min(70vw, 480px);
	}
	nav#spNav .menuWrap .mainMenu li {
		margin-bottom: min(3vw, 20px);
	}
	nav#spNav .menuWrap .mainMenu li a {
		color: #fccb03;
		text-decoration: none;
		font-size: min(5.8vw, 28px);
		font-weight: bold;
		letter-spacing: .1em;
		line-height: 1.2;
	}

	nav#spNav .menuWrap .subMenu {
		padding-bottom: min(17vw, 80px);
		background: url("../images/butterfly.svg") no-repeat center bottom;
		background-size: auto min(10vw, 40px);
	}
	nav#spNav .menuWrap .subMenu li {
		margin-bottom: min(3vw, 20px);
	}
	nav#spNav .menuWrap .subMenu li a {
		font-size: min(5.8vw, 28px);
		font-weight: bold;
		letter-spacing: .1em;
		line-height: 1.2;
		display: block;
		color: #fccb03;
		text-decoration: none;
		background: url("../images/arrow_blank.svg") no-repeat right center;
		background-size: min(3vw, 16px);
		width: min(48vw, 240px);
		text-align: left;
		padding-right: min(6vw, 30px);
	}

}

/* ////////////////////////////////////////////////////////////////////////////////

	footer

//////////////////////////////////////////////////////////////////////////////// */
.footer {
	padding-bottom: 115px;
}
.footer .container {
	justify-content: space-between;
	align-items: center;
}
.footer .copyright {
	font-size: 10px;
}
.footer a.icoInstagram {
	width: 25px;
	line-height: 1;
}
@media screen and (max-width:812px) {
	.footer {
		padding-bottom: calc(20 / 375 * 100vw);
	}
	.footer .container {
		padding: 0 calc(24 / 375 * 100vw);
	}
	.footer .copyright {
		font-size: calc(8 / 375 * 100vw);
	}
	.footer a.icoInstagram {
		width: 50px;
		padding: 15px;
		margin-right: -10px;
	}
}

/* ////////////////////////////////////////////////////////////////////////////////

	common parts

//////////////////////////////////////////////////////////////////////////////// */
#op {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 9999;
	animation: opBg 1s ease-out 1.8s forwards;
}
#op img {
	width: 30%;
	max-width: 200px;
	opacity: 0;
	animation: oplogo .6s ease-out .5s forwards;
}
@keyframes opBg {
	0% { opacity: 1;}
	100% { opacity: 0;}
}
@keyframes oplogo {
	0% { opacity: 0;}
	100% { opacity: 1;}
}

.flexBox {
	display: flex;
}
.primary .flexBox .colL,
.primary .flexBox .colR {
	position: relative;
}
.primary .colL {
	background: url("../images/top/main_bg01.png") no-repeat center 35%;
	background-size: 100%;
}

.primary .flexBox .colL {
	z-index: 1;
}
.primary .flexBox .colR {
	text-align: center;
    line-height: 0;
}
.primary .flexBox .colL::after,
.primary .flexBox .colR::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	animation: op .6s cubic-bezier(0.87, 0, 0.13, 1) 2.2s forwards;
}
.primary .flexBox .colL::after {
	bottom: 0;
}
.primary .flexBox .colR::after {
	top: 0;
}
@keyframes op {
	0% { height: 100%;}
	100% { height: 0%;}
}

.primary .colL p {
	opacity: 0;
	animation: op2 1s linear 3s forwards;
}
@keyframes op2 {
	0% { opacity: 0;}
	100% { opacity: 1;}
}

.container {
	max-width: 1440px;
	padding: 0 60px;
	margin: 0 auto;
}
.sectionTtl {
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 24px;
	text-align: right;
    letter-spacing: 0.2em;
    font-weight: normal;
}
.viewAll a{
	float: right;
}
.viewAll a {
	position: relative;
	display: inline-block;
	padding-left: 84px;
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 20px;
	letter-spacing: 0.12em;
}
.viewAll a::before {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 60px;
	height: 1px;
	background-color: black;
	left:0;
}
.back {
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 20px;
	text-align: center;
}
.back a {
	position:relative;
}
.back a::before{
	content:"";
	display:block;
	width:1px;
	height:60px;
	background-color:#000;
	position:absolute;
	bottom:36px;
	left:50%;
}
@media screen and (min-width:813px) {

	.primary {
		background: url("../images/top/main_bg02.jpg") no-repeat right top;
		background-size: auto 80%;
	}
	.primary .flexBox .colL {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

}
@media screen and (max-width:812px) {
	.primary .colL {
		background: url(../images/top/main_bg01.png) no-repeat 90% 35%;
		background-size: 70%;
	}
	.sectionTtl {
		font-size: calc(18 / 375 * 100vw);
		text-align: center;
	}
	.viewAll a {
		padding-left: calc(28 / 375 * 100vw);
		font-size: calc(14 / 375 * 100vw);
	}
	.viewAll a::before {
		width: calc(20 / 375 * 100vw);
		background-color: #aaa;
	}
	.back {
		font-size: calc(14 / 375 * 100vw);
	}
	.back a::before{
		height:calc(34 / 375 * 100vw);
		bottom:calc(26 / 375 * 100vw);
		background-color: #aaa;
	}
}
/* ////////////////////////////////////////////////////////////////////////////////

	top

//////////////////////////////////////////////////////////////////////////////// */
.primary .colL p {
	font-family: Helvetica, Arial, "sans-serif";
	letter-spacing: 0.18em;
	font-size: 12px;
}

.secondary {
	text-align: center;
}
.secondary img {
	margin: 145px auto;
	max-width: 974px;
}
.secondary .container {
	position: relative;
}
.secondary .container p {
	position: absolute;
	top: 50%;
    left: 50%;
    width: 20%;
	text-align: center;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	transform: translate(-50%, -50%);
	transition: all .8s ease-out 1s;
	letter-spacing: .05em;
	opacity: 0;
}
.secondary .container.on p {
	opacity: 1;
}

.page-index .collection {
	background-color: #f6f5f1;
}
.collection .sectionTtl {
	padding-top: 70px;
}
.collection .txtBox {
	z-index: 1;
}
.collection .txtBox h3 {
	margin-bottom: 40px;
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 50px;
	font-weight: normal;
	letter-spacing: 0.12em;
}
.collection .txtBox p {
	max-width: 390px;
	word-break: break-word;
}
.collection .imgBox .cImg {
	float: left;
	margin-bottom: 30px;
	width: 47%;
}
.collection .imgBox .cImg:first-child,
.collection .imgBox .cImg:nth-child(3) {
	margin-right: 6%;
}
.collection .imgBox .cImg:nth-child(2),
.collection .imgBox .cImg:nth-child(4) {
	margin-top: 110px;
}

.shop .sectionTtl {
	padding-top: 80px;
	margin-bottom: 80px;
}
.shop h3 {
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 24px;
	letter-spacing: 0.12em;
}
.shop .sliderContainer {
	max-width: 1318px;
	margin: 0 auto;
	padding: 66px 30px 230px;
}
.shop .slick-slide img {
	margin-bottom: 20px;
}
.shop .slick-slide p {
	word-break: break-all;
}
.shop .slick-slide p.comingsoon {
	font-size: 11px;
	letter-spacing: 0;
	color: #cccccc;
}
.shop img.slide-arrow {
	position: absolute;
    top: -106px;
    width: 60px;
    padding: 20px 0
}
.shop img.prev-arrow {
	right: 150px;
	cursor: pointer;
}
.shop img.next-arrow {
	right: 30px;
	cursor: pointer;
}
.shop .viewAll {
	padding-right: 30px;
}

.page-index .news {
	background-color: #f9f3f3;
}
.news .sectionTtl {
	padding-top: 70px;
	margin-bottom: 80px;
}
.news .inner {
	max-width: 1198px;
	margin: 0 auto;
}
.news ul {
	width: 100%;
	max-width: 1040px;
	margin: 0 auto 90px;
}
.news ul li a {
	display: flex;
	align-items: center;
/*	height: 130px;*/
	border-bottom: 1px solid #000;
    padding: 20px 0;
}

.about .sectionTtl {
	padding-top: 70px;
	margin-bottom: 120px;
}
.about .inner {
	max-width: 1180px;
	margin: 0 auto;
}
.about .colR .ja {
	margin-bottom: 50px;
}
.about .colR hr {
	margin: 50px auto 54px;
	border: none;
	border-top: 1px solid #000;
}
.about .colR dl {
	flex-wrap: wrap;
}
.about .colR dt {
	flex: 40%;
}
.about .colR dd {
	flex: 60%;
}
.about .colR dt,
.about .colR dd {
	margin-bottom: 30px;
}
.about .colR dd a {
	text-decoration: underline;
}
.about .colR {
	padding-bottom: 240px;
}

@media screen and (min-width:813px) {
	.primary .colL .inner {
		display: flex;
	}
	.primary .colL {
		flex: 49;
		margin-right: 4.7%;
	}
	.primary .colL .inner {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.primary .colL .inner img {
		margin: 0 auto;
		padding: 10% 21.5% 5%;
		max-height: 66vh;
		width: auto;
	}
	.primary .colL .inner p {
		font-family: Helvetica, Arial, "sans-serif";
		padding: 0 2%;
		font-size: 12px;
		letter-spacing: 0.18em;
	}
	.primary .colR {
		flex: 51;
	}
	.primary .colR img {
		max-height: calc(100vh - 120px);
		width: auto;
	}

	.collection .container {
		position: relative;
	}
	.collection .txtBox {
		position: absolute;
		top: 20%;
	}
	.collection .imgBox {
		float: right;
		margin-top: 70px;
		margin-bottom: 160px;
		max-width: 766px;
		width: 58%;
	}
	.collection .viewAll {
		position: absolute;
		top: 50%;
	}

	.shop .slick-center {
		padding-top: 90px;
	}
	.slick-slide > div {
		padding-left: 30px;
		padding-right: 30px;
	}

	.news ul li .date {
		display: flex;
    	align-items: center;
	}
	.news ul li span.year {
		font-size: 16px;
		width: 60px;
	}
	.news ul li span.month {
		font-size: 16px;
		width: 56px;
	}
	.news ul li span.day {
		font-size: 40px;
		width: 110px;
	}
	.news ul li span.title {
		font-size: 15px;
	}
	.news .viewAll {
		padding-bottom: 180px;
	}

	.about .colL {
		flex: 45;
		padding-right: 10%;
	}
	.about .colR {
		flex: 55;
	}

	.about .colR dd a:hover {
		text-decoration: none;
	}
}
@media screen and (min-width:813px) and (max-width:1199px) {
	.collection .txtBox h3 {
		font-size: 4vw;
		margin-bottom: 20px;
	}
	.collection .txtBox p {
		max-width: 360px;
	}
	.about .colL {
		padding-right: 6vw;
	}
}
@media screen and (min-width:1350px) {
	.collection .txtBox,
	.collection .viewAll {
		padding-left: 40px;
	}
}
@media screen and (max-width:812px) {
	.container {
		padding: 0 calc(17 / 375 * 100vw);
	}
	.primary.container {
		padding: 0;
	}
	.primary .flexBox {
		flex-direction: column-reverse;
	}
	.primary .colL {
		position: relative;
		height: 85.2vw;
	}
	.primary .colL img {
		position: absolute;
		right: calc(35 / 375 * 100vw);
		top: calc(38 / 375 * 100vw);
		max-width: 43.6vw;
	}
	.primary .colL p {
		position: absolute;
		transform:rotate(90deg);
		font-size: calc(9.3 / 375 * 100vw);
		width: calc(470 / 375 * 100vw);
		left: -50%;
	}

	.secondary {
		margin: 0 auto calc(50 / 375 * 100vw);
	}
	.secondary img {
		margin: 0;
		max-width: inherit;
		width: 100%;
	}
	.secondary .container p {
		font-size: 3.2vw;
		line-height: 1.6;
	}

	.collection .sectionTtl {
		padding-top: calc(44 / 375 * 100vw);
		margin-bottom: calc(36 / 375 * 100vw);
	}
	.collection .txtBox {
		padding: 0 calc(22 / 375 * 100vw);
	}
	.collection .txtBox h3 {
		margin-bottom: calc(11 / 375 * 100vw);
		font-size: calc(21.3 / 375 * 100vw);
	}
	.collection .txtBox p {
		margin-bottom: calc(48 / 375 * 100vw);
		font-size: calc(9.3 / 375 * 100vw);
	}
	.collection .imgBox {
		margin-bottom: calc(60 / 375 * 100vw);
	}
	.collection .imgBox .cImg {
		margin-bottom: calc(7.4 / 375 * 100vw);
	}.collection .imgBox .cImg:nth-child(2),
	 .collection .imgBox .cImg:nth-child(4) {
		 margin-top: calc(36.6 / 375 * 100vw);
	 }
	.collection .viewAll {
		padding-right: calc(13 / 375 * 100vw);
		padding-bottom: calc(80 / 375 * 100vw);
	}
	.collection .viewAll a::before {
		background-color: #444;
	}

	.shop .sectionTtl {
		padding-top: calc(60 / 375 * 100vw);
		margin-bottom: calc(26 / 375 * 100vw);
	}
	.shop h3 {
		font-size: calc(14 / 375 * 100vw);
		text-align: center;
	}
	.shop .sliderContainer {
		padding: calc(40 / 375 * 100vw) 0 0;
	}
	.shop .slider {
		margin-bottom: calc(60 / 375 * 100vw);
	}
	.slick-slide > div {
		padding-left: calc(17 / 375 * 100vw);
		padding-right: calc(17 / 375 * 100vw);
	}
	.shop .slick-slide img {
		margin-bottom: calc(16 / 375 * 100vw);
	}
	.shop img.slide-arrow {
		position: absolute;
		top: 38%;
		width: calc(36 / 375 * 100vw);
	}
	.shop img.prev-arrow {
		left: calc(17 / 375 * 100vw);
		z-index: 1;
	}
	.shop img.next-arrow {
		right: calc(17 / 375 * 100vw);
	}
	.shop .viewAll{
		padding-right: calc(30 / 375 * 100vw);
		padding-bottom: calc(60 / 375 * 100vw);
	}

	.news .container {
		padding: 0 calc(30 / 375 * 100vw);
	}
	.news .sectionTtl {
		padding-top: calc(40 / 375 * 100vw);
		margin-bottom: calc(24 / 375 * 100vw);
	}
	.news ul {
		width: 100%;
		margin: 0 auto calc(48 / 375 * 100vw);
	}
	.news ul li a{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
/*		height: calc(66 / 375 * 100vw);*/
		border-bottom: 1px solid #aaa;
    	padding: 15px 0;
	}
	.news ul li div.date {
		font-size: calc(9.3 / 375 * 100vw);
	}
	.news ul li span.title {
		font-size: calc(12 / 375 * 100vw);
	}
	.news .viewAll{
		padding-bottom: calc(60 / 375 * 100vw);
	}

	.about .container {
		padding: 0 calc(30 / 375 * 100vw);
	}
	.about .sectionTtl {
		padding-top: calc(60 / 375 * 100vw);
		margin-bottom: 0;
	}
	.about div.inner.flexBox {
		flex-direction: column;
	}
	.about .colL {
		text-align: center;
		margin-bottom: 0;
	}
	.about .colL img {
		max-width: 100%;
	}
	.about .colR p {
		font-size: calc(10.6 / 375 * 100vw);
	}
	.about .colR .ja {
		margin-bottom: calc(26 / 375 * 100vw);
	}
	.about .colR hr {
		margin: calc(30 / 375 * 100vw) auto;
		border-top: 1px solid #aaa;
	}
	.about .colR dt,
	.about .colR dd {
		font-size: calc(9.3 / 375 * 100vw);
		margin-bottom: calc(10 / 375 * 100vw);
	}
	.about .colR {
		padding-bottom: calc(90 / 375 * 100vw);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////

	news list

//////////////////////////////////////////////////////////////////////////////// */
.page-newsList .back {
	padding-top: 100px;
	padding-bottom: 140px;
}
@media screen and (max-width:812px) {
	.page-newsList main {
		padding-top: calc(70 / 375 *100vw);
	}
	.page-newsList .back {
		padding-top: calc(50 / 375 *100vw);
		padding-bottom: calc(70 / 375 *100vw);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////

	news detail

//////////////////////////////////////////////////////////////////////////////// */
.page-newsDetail main {
	padding-top: 120px;
}
.page-newsDetail .inner {
	max-width: 1040px;
}
.page-newsDetail .date {
	font-size: 16px;
	margin-bottom: 20px;
}

.articleHdr {
	margin-top: 80px;
}
.page-newsDetail h2.articleTtl {
	padding-bottom: 40px;
	margin-bottom: 70px;
	font-size: 24px;
	font-weight: normal;
	letter-spacing: 0.12em;
	border-bottom: 1px solid #000;
}
.page-newsDetail .articleBody p,
.page-newsDetail .articleBody a,
.page-newsDetail .articleBody ul li {
	font-size: 16px;
	line-height: 2.2;
	font-feature-settings: "palt";
}
.page-newsDetail .articleBody p	{
	margin-bottom: 50px;
}
.page-newsDetail .articleBody p a {
	text-decoration: underline;
}
.page-newsDetail .articleBody ul li {
	list-style: inherit;
}
.page-newsDetail .back {
	padding-top: 140px;
	padding-bottom: 140px;
}
@media screen and (max-width:812px) {
	.page-newsDetail main {
		padding-top: calc(90 / 375 *100vw);
	}
	.page-newsDetail .container {
		padding: 0 calc(17 / 375 * 100vw);
	}
	.page-newsDetail .date {
		font-size: calc(10 / 375 *100vw);
		margin-bottom: calc(10 / 375 *100vw);
	}
	.articleHdr {
		margin-top: 6vw;
	}
	.page-newsDetail h2.articleTtl {
		padding-bottom: calc(20 / 375 *100vw);
		margin-bottom: calc(30 / 375 *100vw);
		font-size: calc(17 / 375 *100vw);
		border-bottom: 1px solid #aaa;
	}
	.page-newsDetail .articleBody p	{
		margin-bottom: calc(30 / 375 *100vw);
		font-size: calc(12 / 375 *100vw);
	}
	.page-newsDetail .articleBody a,
	.page-newsDetail .articleBody ul li {
		font-size: calc(12 / 375 *100vw);
	}
	.page-newsDetail .back {
		padding-top: calc(70 / 375 *100vw);
		padding-bottom: calc(70 / 375 *100vw);
	}
}
/* ////////////////////////////////////////////////////////////////////////////////

	collection

//////////////////////////////////////////////////////////////////////////////// */
.page-collection .sectionTtl {
	padding-top: 70px;
}
.page-collection .inner {
	max-width: 1178px;
	margin: 0 auto;
}
.page-collection .txtBox h3 {
	margin-bottom: 40px;
	font-family: Helvetica, Arial, "sans-serif";
	font-size: 50px;
	letter-spacing: 0.12em;
    line-height: 1.4;
}
.page-collection .txtBox p {
	max-width: 670px;
	word-break: break-word;
}
.page-collection .itemsWrap {
	flex-wrap: wrap;
	margin-top: 120px;
	margin-left: -2%;
	margin-right: -2%;
}
.page-collection .item {
	width: calc(100% / 3);
	padding: 0 2%;
	margin-bottom: 160px;
}
.page-collection .item:nth-child(3n+2){
	padding-top: 58px;
}
.page-collection .item p {
	font-size: 13px;
	letter-spacing: 0;
    margin-top: 5px;
}
.page-collection .item .credit {
	margin-top: 14px;
	padding-top: 18px;
	font-size: 10px;
	position: relative;
}
.page-collection .item .credit::before {
	content: "";
	display: block;
	width: 30px;
	height: 1px;
	background-color: #999;
	position: absolute;
	top: 0;
	left: 0;
}
.page-collection .back {
	padding-top: 50px;
	padding-bottom: 140px;
}

.page-collection .archive {
	margin-bottom: 80px;
}
.page-collection .archive ul li {
	text-align: center;
	border-top: #000 solid 1px;
	border-bottom: #000 solid 1px;
}
.page-collection .archive ul li + li {
	border-top: none;
}
.page-collection .archive ul li a {
	display: block;
	font-size: 20px;
	padding: 60px 0;
}

.btmCredit {
    margin-top: -80px;
    margin-bottom: 140px;
    font-size: 11px;
    letter-spacing: .05em;
}
.btmCredit p {
	margin-bottom: 30px;
}
.btmCredit a {
	color: #000;
	text-decoration: underline;
}

@media screen and (min-width:812px) {
	.page-collection .archive ul li a:hover {
		opacity: 1;
		background-color: rgba(0,0,0,0.10);
	}
	.btmCredit a:hover {
		text-decoration: none;
	}
}
@media screen and (min-width:813px) and (max-width:1199px) {
	.page-collection .txtBox h3 {
		font-size: 4vw;
		margin-bottom: 20px;
	}
}
@media screen and (max-width:812px) {
	.page-collection .sectionTtl {
		padding-top: calc(110 / 375 * 100vw);
		padding-bottom: calc(30 / 375 * 100vw);
	}
	.page-collection .txtBox h3 {
		margin-bottom: calc(11 / 375 * 100vw);
		font-size: calc(21.3 / 375 * 100vw);
	}
	.page-collection .txtBox p {
		margin-bottom: calc(48 / 375 * 100vw);
		font-size: calc(9.3 / 375 * 100vw);
	}
	.page-collection .itemsWrap.flexBox {
		display: block;
		margin: calc(50 / 375 * 100vw) auto;
	}
	.page-collection .item {
		width: 100%;
		padding: 0 2%;
		margin-bottom: calc(70 / 375 * 100vw);
	}
	.page-collection .item p.itemName {
		font-size: calc(12 / 375 * 100vw);
	}
	.page-collection .item:nth-child(3n+2){
		padding-top: calc(20 / 375 * 100vw);
	}
	.page-collection .back {
		padding-top: calc(10 / 375 * 100vw);
		padding-bottom: calc(70 / 375 * 100vw);
	}
	.page-collection .archive ul li a {
		font-size: 3.6vw;
		padding: 8vw 0;
	}
	.btmCredit {
		margin-top: -4vw;
		margin-bottom: 20vw;
		font-size: 2.4vw;
		letter-spacing: .05em;
		padding: 0 2vw;
	}
}



input[type="button"],
input[type="text"],
input[type="tel"],
input[type="submit"],
textarea {
	-webkit-appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
	border: none;
	font-size: 16px;
}
input[type="button"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="submit"]:focus,
textarea:focus {
	outline: none;
}


.contactForm {
	max-width: 640px;
	margin: 60px auto 80px;
}

.contactForm label {
	width: 100%;
	display: block;
	margin-bottom: 15px;
	font-size: 14px;
}
.contactForm input[type="text"],
.contactForm input[type="tel"] {
	width: 100%;
    padding: 10px 20px;
	font-size: 16px;
	background-color: #eee;
	margin-top: 5px;
}
.contactForm select {
	width: 100%;
	background: #eee url(../images/select_arrow.png) no-repeat 96% center;
    background-size: 20px;
    padding: 10px 20px;
	font-size: 16px;
	margin-top: 5px;
}
.contactForm textarea {
	padding: 15px;
}

.contactForm input[type="button"],
.contactForm input[type="submit"] {
	padding: 10px 60px;
	font-size: 16px;
}

.confirm {
	max-width: 640px;
	margin: 60px auto 80px;
}
.confirm .form {
	list-style: none;
}
.confirm .form li {
	padding-bottom: 30px;
	border-bottom: #ccc solid 1px;
    margin-bottom: 20px;
}
.confirm .form li .label {
	font-size: 14px;
    font-weight: bold;
	padding: 10px 0;
	margin-bottom: 10px;

}
.confirm .form li .input {
	font-size: 16px;
}

.btnWrap {
	text-align: center;
	margin-top: 80px;
}
.btnWrap input[type="button"],
.btnWrap input[type="submit"] {
	padding: 10px 60px;
	font-size: 16px;
	margin: 0 30px;
	background-color: #000;
	color: #fff;
	display: inline-block;
	text-align: center;
}
.thanks p {
	font-size: 42px;
	margin-top: 100px;
	margin-bottom: 100px;
	letter-spacing: 0.1em;
	text-align: center;
}
.thanks a {
	padding: 10px;
	font-size: 16px;
}
@media screen and (max-width: 812px) {
	main.limited {
		padding-top: calc(70 / 375 *100vw);
	}
	.limited .sectionTtl {
		padding-top: calc(40 / 375 * 100vw);
		margin-bottom: calc(24 / 375 * 100vw);
	}

	.contactForm {
		width: 100%;
    	margin: 0 0 20vw;
	}
	.contactForm label {
		margin-bottom: 5vw;
		font-size: 2.8vw;
	}
	.contactForm input[type="text"],
	.contactForm input[type="tel"] {
    	padding: 2vw 3vw;
	}
	.contactForm select {
    	padding: 2vw 3vw;
	}
	.contactForm textarea {
		width: 100%;
		padding: 2vw;
		background-color: rgba(255,255,255,0.5);
		resize: vertical;
		font-size: 16px;
	}

	.btnWrap {
		margin-top: 6vw;
	}
	.btnWrap input[type="button"],
	.btnWrap input[type="submit"] {
		padding: 1.4vw 8vw;
		font-size: 3.6vw;
		margin: 0 3vw;
	}

	.confirm {
		margin: 0 auto 80px;
	}
	.confirm .form li {
		margin-bottom: 3vw;
    	padding-bottom: 4vw;
	}
	.confirm .form li .label {
		font-size: 3vw;
		padding: 1vw 0;
		margin-bottom: 1vw;
	}
	.confirm .form li .input {
		font-size: 3.4vw;
	}

	.thanks {
		text-align: center;
    	margin-bottom: 20vw;
	}

	.thanks p {
		margin-top: 14vw;
		margin-bottom: 8vw;
    	font-size: 6vw;
	}
	.thanks a {
		display: block;
		color: #000;
		background-color: #fff;
		text-align: center;
		text-decoration: none;
		padding: 1.4vw 8vw;
		font-size: 3.6vw;
		margin: 0 auto;
		width: 180px;
	}

}
