@charset "UTF-8";
/* CSS Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/* @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap'); */

body {
	font-family: "Noto Sans JP", sans-serif;
}
img {
	max-width:100%;
}
a { 
	outline: none; 
}
a:hover { 
	opacity: .7;
	text-decoration: none;
}
button{
	cursor: pointer;
}

/* head */
#utility{
	padding-top:10px;
	padding-bottom:10px;
}
#utility h1{
	float:left;
}
#utility ul{
	float:right;
}
#utility ul li{
	padding-left:10px;
	float:left;
}
#utility ul li.sns_fb{
	width:100px;
	overflow:hidden;
}

/* パンくず -------------------*/
#breadcrumb {
	font-size:14px;
}
#breadcrumb a {
	color:#000;
}

/* MV -------------------*/
#main-visual {
	width:100%;
	max-width: 1200px;
	margin: 0 auto;
}

/* cont -------------------*/
#contents {
	width:100%;
	background:#f2f1ed;
}
.wrap {
	width: 1200px;
	margin:0 auto;
}

/* コンテンツ -------------------*/
.lead{
	line-height: 2;
	letter-spacing: .04em;
	text-align: center;
}

.product-visual {
	background: url(../img/product_bg.jpg) no-repeat center / cover;
}
.product-visual p {
	font-weight: 700;
	text-align: center;
	padding-bottom: 9px;
	position: relative;
}
.product-visual p::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 54px;
	height: 2px;
	background-color: #000;
}
.product-name {
	line-height: 1.5;
	text-align: center;
	position: relative;
}
.product-name::before,
.product-name::after {
	content: '';
	position: absolute;
	top: 0;
	border: 1px solid;
}
.product-name::before {
	left: 0;
	border-right: none;
}
.product-name::after {
	right: 0;
	border-left: none;
}
.product-name small {
	display: block;
	letter-spacing: .04em;
}
.product-fig {
	display: block;
}

.pic-profile {
	display: flex;
	justify-content: center;
}
.pic-profile__ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background-color: #000;
	line-height: 1.5;
	letter-spacing: .04em;
	text-align: center;
	position: relative;
}
.pic-profile__ttl::before,
.pic-profile__ttl::after {
	position: absolute;
	top: 50%;
	background: url(../img/arrow.png) no-repeat center / cover;
}
.pic-profile__ttl::before {
	transform: translateY(-50%);
}
.pic-profile__ttl::after {
	transform: translateY(-50%) rotate(180deg);
}
.pic-fig {
	margin: 0 auto;
}
.pic-txtbloc {
	line-height: calc(22 / 14);
	text-align: center;
}
.pic-name {
	display: block;
	font-weight: 700;
	letter-spacing: .04em;
	position: relative;
}
.pic-name::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	height: 1px;
	background-color: #000;
}
.pic-name.designer {
	color: #666699;
}
.pic-name.online {
	color: #668062;
}

.product-bloc h3 {
	line-height: calc(46 /24);
	letter-spacing: .04em;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	background: url(../img/product-ttl_bg.jpg) no-repeat center / cover;
	position: relative;
}
.product-bloc h3 small {
	position: absolute;
}
.product-bloc h3 small::after {
	content: '';
	position: absolute;
	background: url(../img/productl_clothes.png) no-repeat center / cover;
}
.balloon {
	margin: 0 auto;
}
.balloon img {
	display: block;
	margin: auto;
}
.balloon figcaption {
	text-align: center;
}
.balloon-left figcaption {
	color: #668062;
}
.balloon-right figcaption {
	color: #666699;
}
.balloon p {
	background-color: #fff;
	line-height: calc(26 / 16);
	position: relative;
}
.balloon-left p::before,
.balloon-right p::after {
	content: '';
	position: absolute;
	border: 8px solid transparent;
}
.balloon-left p::before {
	left: -22px;
	border-right: 16px solid #fff;
}
.balloon-right p::after {
	right: -22px;
	border-left: 16px solid #fff;
}
.balloon-left,
.balloon-right {
	display: flex;
	align-items: flex-start;
}
.balloon-right {
	flex-direction: row-reverse;
	justify-content: flex-start;
}

.coordinate {
	background-image: url(../img/coordinate_bg.jpg);
	background-size: cover;
}
.coordinate-wrap {
	margin: auto;
}
.coordinate h3 {
	letter-spacing: .04em;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border: 1px solid;
}
.coordinate h3 span {
	width: 74px;
}
.coordinate-list {
	display: flex;
	justify-content: space-between;
}
.coordinate-fig {
	margin-bottom: 30px;
}

.btn-check {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	color: #fff;
	background-color: #000;
	margin: auto;
	position: relative;
}
.btn-check::before {
	content: '';
	display: block;
	border: 6px solid transparent;
	border-left: 8px solid #fff;
}

.product-info {
	background-color: #fff;
}
.product-wrap {
	margin: auto;
}
.product-txtbloc {
	text-align: center;
}
.product-txtbloc p {
	letter-spacing: .04em;
	writing-mode: vertical-lr;
	display: inline-block;
	position: relative;
}
.product-txtbloc p::before,
.product-txtbloc p::after {
	content: '';
	position: absolute;
	left: 0;
	height: 2px;
	background-color: #000;
}
.product-txtbloc h3 {
	line-height: calc(38 / 24);
}
.product-txtbloc h3 small {
	display: block;
	letter-spacing: .04em;
}
.product-list {
	display: flex;
	flex-wrap: wrap;
}

.btn-list {
	background-color: #fff;
}
.btn-item a {
	height: 50px;
}


/* brand-info -------------------*/
#brand-info {
	background:#eee;
	padding:25px 0;
}
#brand-info .inner-wrap {
	display:table;
	background:#fff;
	width:760px;
}
#brand-info .logo {
	display:table-cell;
	vertical-align:middle;
	width:280px;
	padding-top:20px;
	padding-bottom:20px;
	text-align:center;
}
#brand-info .logo em {
	display:block;
	text-align:center;
	margin-bottom:35px;
}
#brand-info a.brandBtn {
	display:block;
	width:233px;
	margin-left:auto;
	margin-right:auto;
	line-height:40px;
	text-align:center;
	background-color:#6b6b6b;
	color:#fff;
	font-size:13px;
	text-decoration:none;
}
#brand-info a.brandBtn:hover {
	background-color:#000000;
}
#brand-info .brand_right {
	display:table-cell;
	width:480px;
	vertical-align:middle;
	padding-top:20px;
	padding-bottom:20px;
}
#brand-info .brand_right p.title_txt {
	display: block;
	padding-bottom: 5px;
	font-size: 20px;
	font-weight: 600;
	font-family: "ヒラギノ角ゴ ProN W6", "Hiragino Kaku Gothic ProN", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#brand-info .brand_right h4.title {
	display: block;
	font-size: 13px;
	font-weight: normal;
	padding-bottom: 20px;
}
#brand-info .brand_right p{
	line-height:2;
	font-size: 12px;
}

/* ページトップ -------------------*/
#pagetop {
	text-align: right;
	padding-right:90px;
	margin-bottom:10px;
	margin-top: 100px;
}
#pagetop a {
	display:inline-block;
	text-align:center;
	color:#939393;
	text-decoration:none;
	padding-top:55px;
	background:url(/img/usr/freepage/common/logo/pagetop.png) no-repeat center top;
}
#pagetop a span {
	font-size:10px;
}
#pagetop a:hover {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
}

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

	/* cont -------------------*/
	#contents {
		padding-top: 320px;
		margin-top: -206px;
	}
	
	/* コンテンツ -------------------*/
	#special-cont {
		margin-top: 100px;
	}
	
	.lead{
		font-size: 20px;
	}
	
	.product-visual {
		width: 974px;
		margin: 105px auto 0;
		padding: 100px 0;
	}
	.product-name {
		font-size: 20px;
		width: 442px;
		margin: 32px auto 0;
	}
	.product-name::before,
	.product-name::after {
		width: 20px;
		height: 88px;
	}
	.product-name small {
		font-size: 14px;
		line-height: calc(40 / 14);
	}
	.product-fig {
		width: 700px;
		margin: 56px auto 0;
	}
	
	.pic-profile {
		gap: 80px;
		margin-top: 145px;
		padding-left: 18px;
	}
	.pic-profile__ttl {
		font-size: 20px;
		width: 180px;
		height: 180px;
		margin-top: 44px;
	}
	.pic-profile__ttl::before,
	.pic-profile__ttl::after {
		content: '';
		width: 12px;
		height: 29px;
	}
	.pic-profile__ttl::before {
		left: -48px;
	}
	.pic-profile__ttl::after {
		right: -48px;
	}
	.pic-fig {
		width: 270px;
	}
	.pic-txtbloc {
		font-size: 14px;
		margin-top: 30px;
	}
	.pic-name {
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.pic-name::after {
		width: 230px;
	}

	.product-bloc {
		margin-top: 140px;
	}
	.product-bloc h3 {
		font-size: 24px;
		width: 974px;
		height: 180px;
	}
	.product-bloc h3 small {
		font-size: 16px;
		writing-mode: vertical-lr;
		top: 18px;
		right: 12px;
	}
	.product-bloc h3 small::after {
		bottom: -86px;
		left: -42px;
		width: 102px;
		height: 80px;
	}
	
	.balloon {
		width: 974px;
		margin-top: 100px;
		padding: 0 64px;
	}
	.balloon img {
		width: 100px;
	}
	.balloon figcaption {
		margin-top: 12px;
	}
	.balloon p {
		width: 480px;
		padding: 30px;
		margin-bottom: 60px;
	}
	.balloon + figure {
		margin: 90px auto 150px;
	}
	.balloon-left,
	.balloon-right {
		gap: 35px;
	}
	.balloon-left p::before,
	.balloon-right p::after {
		top: 40px;
	}
	
	.coordinate {
		margin-top: 90px;
	}
	.coordinate-wrap {
		width: 974px;
		padding: 150px 0;
	}
	.coordinate h3 {
		font-size: 20px;
		gap: 6px;
		height: 80px;
	}
	.coordinate-list {
		margin-top: 40px;
	}
	.coordinate-item {
		width: 300px;
	}
	.coordinate-fig {
		margin-bottom: 30px;
	}
	
	.btn-check {
		width: 200px;
		height: 40px;
	}
	
	.product-info {
		padding-top: 148px;
	}
	.product-wrap {
		width: 974px;
	}
	.product-main {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 110px;
	}
	.product-main figure {
		width: 500px;
	}
	.product-txtbloc p {
		font-size: 18px;
	}
	.product-txtbloc p::before,
	.product-txtbloc p::after {
		width: 20px;
	}
	.product-txtbloc p::before {
		top: -20px;
	}
	.product-txtbloc p::after {
		bottom: -20px;
	}
	.product-txtbloc h3 {
		font-size: 24px;
		margin-top: 70px;
	}
	.product-txtbloc h3 small {
		font-size: 16px;
		margin-top: 18px;
	}
	.product-txtbloc .btn-check {
		margin-top: 36px;
	}
	.product-list {
		gap: 6px;
		margin-top: 96px;
	}
	.product-li {
		width: 190px;
	}
	
	.btn-list {
		display: flex;
		justify-content: center;
		gap: 60px;
		padding: 150px 0 200px;
	}
	.btn-item a {
		width: 320px;
	}	
}

@media only screen and (max-width:640px){
	.pc {
		display:none !important;
	}
	.sp {
		display:block;
	}
	a:hover { 
		opacity: 1;
	}
	.wrap {
		width:auto;
		padding: 0 3%;
	}
	
	/* cont -------------------*/
	#contents {
		font-size: 14px;
		padding-top: 30px;
	}

	/* パンくず -------------------*/
	#breadcrumb {
		font-size:10px;
		margin-bottom:10px;
		padding:0 20px;
	}
	
	/* MV -------------------*/
	#main-visual {
		min-width: 100%;
		height:auto;
		position: relative;
		top: auto;
	}

	/* コンテンツ -------------------*/
	#special-cont {
		margin-top: 50px;
	}
	
	.lead,
	.pic-profile {
		padding: 0 3%;
	}

	.product-visual {
		margin-top: 30px;
		padding: 30px ;
	}
	.product-name {
		font-size: 16px;
		margin-top: 24px;
	}
	.product-name::before,
	.product-name::after {
		width: 14px;
		height: 74px;
	}
	.product-name small {
		font-size: 12px;
		line-height: calc(40 / 14);
	}
	.product-fig {
		margin: 24px auto 0;
	}

	.pic-profile {
		gap: 10px;
		margin-top: 160px;
		position: relative;
	}
	.pic-profile__ttl {
		width: 90px;
		height: 90px;
		position: absolute;
		top: -110px;
	}
	.pic-info {
		width: calc(50% - 10px);
	}
	.pic-fig {
		max-width: 110px;
	}
	.pic-txtbloc {
		font-size: 12px;
		margin-top: 15px;
	}
	.pic-name {
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	.pic-name::after {
		width: 100%;
	}

	.product-bloc {
		margin-top: 70px;
	}
	.product-bloc h3 {
		font-size: 18px;
		/* height: 150px; */
		padding: 25px 0 35px;
	}
	.product-bloc h3 small {
		font-size: 12px;
		bottom: 0;
		right: 45px;
	}
	.product-bloc h3 small::after {
		bottom: -5px;
		left: 61px;
		width: 51px;
		height: 40px;
	}
	
	.balloon {
		margin-top: 50px;
		padding: 0 3%;
	}
	.balloon img {
		max-width: 70px;
	}
	.balloon figcaption {
		font-size: 12px;
		margin-top: 8px;
	}
	.balloon p {
		padding: 20px;
		margin-bottom: 40px;
	}
	.balloon + figure {
		margin-bottom: 70px;
	}
	.balloon-left,
	.balloon-right {
		gap: 20px;
	}
	.balloon-left p::before,
	.balloon-right p::after {
		top: 30px;
	}

	.coordinate {
		margin-top: 30px;
	}
	.coordinate-wrap {
		padding: 50px 3%;
	}
	.coordinate h3 {
		font-size: 16px;
		gap: 6px;
		height: 60px;
	}
	.coordinate h3 span {
		width: 50px;
	}
	.coordinate-list {
		gap: 6px;
		margin-top: 20px;
	}
	.coordinate-item {
		width: calc(100% / 3 - 4px);
	}
	.coordinate-fig {
		margin-bottom: 15px;
	}

	.btn-check {
		width: 80%;
		height: 30px;
	}
	
	.product-info {
		padding-top: 70px;
	}
	.product-wrap {
		padding: 0 3%;
	}
	.product-main figure {
		width: 75%;
		margin: 50px auto 0;
	}
	.product-txtbloc p {
		font-size: 16px;
	}
	.product-txtbloc p::before,
	.product-txtbloc p::after {
		width: 20px;
	}
	.product-txtbloc p::before {
		top: -20px;
	}
	.product-txtbloc p::after {
		bottom: -20px;
	}
	.product-txtbloc h3 {
		font-size: 20px;
		margin-top: 35px;
	}
	.product-txtbloc h3 small {
		font-size: 14px;
		margin-top: 10px;
	}
	.product-txtbloc .btn-check {
		max-width: 150px;
		margin-top: 20px;
	}
	.product-list {
		gap: 6px;
		margin-top: 80px;
	}
	.product-li {
		width: calc(50% - 3px);
	}

	.btn-list {
		padding: 75px 0 100px;
	}
	.btn-item:not(:first-child) {
		margin-top: 20px;
	}	


/* brand-info -------------------*/
	#brand-info {
		padding: 10px 0;
	}
	#brand-info .inner-wrap {
		display:block;
		padding:20px 20px;
	}
	#brand-info .logo {
		display:block;
		width:auto;
		text-align:center;
		margin-bottom:0;
	}
	#brand-info .logo em {
		display:block;
		width:auto;
		margin-bottom:0;
	}
	#brand-info .logo em img{
		width:40%;
	}
	#brand-info .brand_right {
		display:block;
		width:auto;
		font-size:100%;
	}
	#brand-info .brand_right p.title_txt,#brand-info .brand_right h4.title {
		text-align:center;
	}
	#brand-info .brand_right p {
		line-height:1.8;
		width:auto;
	}
	#brand-info p br {
		display:none;
	}

/* ページトップ -------------------*/
	#pagetop {
		display: none;
	}
}