@charset "utf-8";
/*
Theme Name: CALSA 6
Theme URI: https://calsa.jp/
Description: 専用のベーステーマ
Version: 6.0
*/

body.pc .sp_view { display: none !important; }
body.sp .pc_view { display: none !important; }

/*
---------------------------------------------------------------------------*/
body {
	background-color: #FFFFFF;
	color: #000000;
	font-size: 14px;
	font-family: 'Adobe Garamond Pro', 'Garamond Premier Pro', 'Crimson Text', 'A1明朝', '游明朝', 'YuMincho', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;	
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

@media all and (-ms-high-contrast:none){
	body { font-family: 'A1明朝', '游明朝', 'YuMincho', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }
}

body.fix { overflow: hidden; }

::-moz-selection { background: #CCCCCC; color: #000000; }
::selection { background: #CCCCCC; color: #000000; }

p { font-size: 14px; line-height: 1.8; letter-spacing: 0.12em; }
address,i { font-style: normal; }
img { max-width: none; }

.clearfix:after { content: ''; display: block; clear:both; }

h1,h2,h3,h4,h5,h6,li,dt,th,td,p,a,input,
.caption,.point,.btn-accordion span {
	-webkit-transform: rotate(0.05deg);
	-ms-transform: rotate(0.05deg);
	transform: rotate(0.05deg);
}

.no-ritate {
	-webkit-transform: rotate(0deg) !important;
	-ms-transform: rotate(0deg) !important;
	transform: rotate(0deg) !important;
}

/* txt
-----------------------------------*/
.font-serif { font-family: 'Adobe Garamond Pro', 'Garamond Premier Pro', 'Crimson Text', serif; }
.font-num { font-family: 'Adobe Garamond Pro', 'Garamond Premier Pro', 'Crimson Text', serif; }
.font-mincho { font-family: 'A1明朝', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }
.font-gothic { font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, sans-serif; }
.font-mix { font-family: 'Adobe Garamond Pro', 'Garamond Premier Pro', 'Crimson Text', 'A1明朝', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif; }

/* link
------------------------------------*/
a { color: #000000; text-decoration: none; transition: .2s linear; }
a:hover { text-decoration: none; opacity: 0.5; }

/* .gnav
------------------------------------*/
.gnav {
	overflow: hidden;
}

.gnav li {
	position: relative;
	float: left;
	margin-right: 22px;
	font-size: 22px;
	letter-spacing: 0;
	white-space: nowrap;
}

.gnav li:last-of-type {
	margin-right: 0;
}

.gnav li:after {
	display: block;
	content: '';
	position: absolute;
	top: 13px;
	right: -22px;
	background: #000000;
	width: 26px;
	height: 1px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-75deg);
}

.gnav li:last-of-type:after {
	display: none;
}

.gnav li a {
	position: relative;
	display: block;
	padding: 5px 5px 5px 0;
}

.gnav li a:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 5px;
	left: -1px;
	background: #000000;
	width: 0;
	height: 1px;
}

body#about #gnav-about a:after,
body#trousers #gnav-trousers a:after,
body#material #gnav-material a:after,
body#online-order #gnav-online-order a:after,
body#fitting #gnav-fitting a:after {
	width: calc(100% - 3px);
}

/* .gnav li - media query
-----------------------------------*/
@media (max-width: 1350px) {
	.gnav li { margin-right: 18px; font-size: 21px; }
	.gnav li:after { top: 13px; right: -20px; }
}

/* .snav
------------------------------------*/
.snav {
	overflow: hidden;
}

.snav ul {
	float: left;
	border-left: 1px solid #979797;
	padding-left: 8px;
}

.snav ul:first-of-type {
	margin-right: 25px;
}

footer .snav ul:first-of-type {
	margin-right: 30px;
}

.snav li {
	margin-bottom: 8px;
	font-size: 14px;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.snav ul li:last-of-type {
	margin-bottom: 0;
}

.snav li a {
	position: relative;
	display: inline-block;
	padding: 3px;
	white-space: nowrap;
}

.snav li a:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 3px;
	left: 2px;
	background: #000000;
	width: 0;
	height: 1px;
}

body#shopping-guide #snav-shopping-guide a:after,
body#contact #snav-contact a:after,
body#order-catalog #snav-order-catalog a:after,
body#order-sample #snav-order-sample a:after,
body#company #snav-company a:after,
body#blog #snav-blog a:after,
body#news #snav-news a:after {
	width: calc(100% - 4px);
}

@media all and (-ms-high-contrast:none){
	.snav li a:after { bottom: 0; }
}

/* .fnav
------------------------------------*/
.fnav {
	overflow: hidden;
}

.fnav li {
	float: left;
	margin-right: 14px;
	font-size: 16px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.fnav li a {
	display: block;
	border-bottom: 1px solid #000000;
}

/* .sns-list
------------------------------------*/
.sns-list {
	overflow: hidden;
}

.sns-list li {
	float: left;
	margin-right: 13px;
}

.sns-list li:last-of-type {
	margin-right: 0;
}

/* header/footer common
---------------------------------------------------------------------------*/
header .inner-main,
footer .inner-main {
	position: relative;
	float: left;
}

header .inner-sub,
footer .inner-sub {
	position: relative;
	float: right;
	margin: 0 250px 0 0;
}

/* header
---------------------------------------------------------------------------*/
header {
	width: 100%;
	min-width: 1100px;
	margin: 0;
}

body#online-order header,
body#contact header,
body#shopping-guide header,
body#terms header,
body#privacy header,
body#hemming-up header,
body#blog header,
body#news header {
	border-bottom: 1px solid #E3E3E3;
}

body#online-order.single header {
	border-bottom: none;
}

header .inner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 65px 55px 35px;
}

header .logo {
	margin-bottom: 28px;
}

header .inner-sub {
	margin-top: 36px;
}

header .sns-list {
	position: absolute;
	top: 0;
	left: -90px;
}

header .img-copy {
	position: absolute;
	right: 50px;
	bottom: 38px;
	width: 210px;
}

/* header - media query
-----------------------------------*/
@media (max-width: 1300px) {
	header .inner { padding-left: 45px; }
	header .inner-sub { margin-right: 205px; }
	header .img-copy { right: 35px; width: 190px; }
}
@media (max-width: 1250px) {
	header .inner-sub { margin-right: 0; }
	header .img-copy { display: none; }
	header .inner { padding-right: 40px; }
	header .gnav li { margin-right: 22px; font-size: 22px; }
	header .gnav li:after { right: -22px; }
}


/* footer
---------------------------------------------------------------------------*/
footer {
	width: 100%;
	min-width: 1100px;
	margin: 0;
}

footer .inner {
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 160px 50px 40px;
}

footer .pagetop {
	position: absolute;
	top: 16px;
	left: 3px;
}

footer .logo {
	margin: 65px 0 30px;
}

footer .copyright {
	position: absolute;
	top: 112px;
	left: 305px;
	color: #7F7F7F;
	font-size: 13px;
	letter-spacing: 0.08em;
}

footer .gnav {
	margin-left: -2px;
}

footer .inner-sub {
	margin-top: 54px;
}

footer .fnav {
	float: left;
	margin: 5px 15px 0 -2px;
}

footer .sns-list {
	float: left;
}

footer .snav {
	clear: both;
	padding-top: 30px;
}

footer .img-copy {
	position: absolute;
	right: 40px;
	bottom: 45px;
	width: 210px;
}

/* footer - media query
-----------------------------------*/
@media (max-width: 1300px) {
	footer .inner { padding-left: 45px; }
	footer .inner-sub { margin-right: 195px; }
	footer .img-copy { right: 35px; width: 180px; }
}
@media (max-width: 1250px) {
	footer .inner-sub { margin-right: 0; }
	footer .img-copy { display: none; }
	footer .inner { padding-right: 40px; }
	footer .gnav li { margin-right: 22px; font-size: 22px; }
	footer .gnav li:after { right: -22px; }
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	width: 100%;
	min-width: 1100px;
	max-width: 1400px;
	min-height: 700px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}

/* .btn
------------------------------------*/
.btn-link a,
.btn-link-s a,
.btn-link-white a,
.btn-link-black a,
.btn-action a,
.btn-action-s a {
	display: block;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	transition: .15s linear;
	white-space: nowrap;
}

.btn-link a,
.btn-link-white a,
.btn-link-black a,
.btn-action a {
	padding: 17px 45px 13px;
	font-size: 18px;
	letter-spacing: 0.12em;
}

.btn-link a,
.btn-link-black a,
.btn-action a {
	background: #7A828B url(img/share/ico-arrow-white.svg) no-repeat right 15px center;
	background-size: 10px 7px;
	color: #FFFFFF;
}

.btn-link-black a {
	background-color: #000000;
}

.btn-link-white a {
	background: url(img/share/ico-arrow.svg) no-repeat right 15px center;
	background-size: 10px 7px;
	border: 1px solid #000000;
	line-height: 1;
}

.btn-link-s a,
.btn-action-s a {
	background: #7A828B url(img/share/ico-arrow-white.svg) no-repeat right 10px center;
	background-size: 8px 6px;
	padding: 16px 30px 11px;
	color: #FFFFFF;
	font-size: 13px;
	letter-spacing: 0.15em;
}

.btn-action a,
.btn-action-s a {
	background-color: #404D5C;
}

.btn-link a:hover,
.btn-link-s a:hover {
	background-color: #404D5C;
	opacity: 1;
}

.btn-link-black a:hover {
	opacity: 0.5;
}

.btn-link-white a:hover {
	background-image: url(img/share/ico-arrow-white.svg);
	background-color: #000000;
	color: #FFFFFF;
	opacity: 1;
}

.btn-off {
	display: block;
	box-sizing: border-box;
	border: 1px solid #000000;
	width: 100%;
	padding: 16px 30px 9px;
	font-size: 13px;
	text-align: center;
	letter-spacing: 0.06em;
}

.btn-set {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
}

.btn-set .btn-link-white {
	float: left;
	width: 48.5%;
}

.btn-set .btn-link-white a {
	background-position: right 25px center;
	padding-top: 26px;
	padding-bottom: 20px;
	font-size: 18px;
}

.btn-set .btn-link-white:nth-child(even) {
	float: right;
}

@media all and (-ms-high-contrast:none){
	.btn-set .btn-link-white a { padding-top: 22px; padding-bottom: 24px; }
	.btn-link a { padding-top: 14px; padding-bottom: 17px; }
	.btn-link-s a, .btn-action-s a { padding-top: 12px; padding-bottom: 15px; }
}

/* .btn-back
------------------------------------*/
.btn-back a {
	display: inline-block;
	background: url(img/share/ico-arrow-back.svg) no-repeat left center;
	background-size: 18px 5px;
	padding: 10px 10px 10px 25px;
	font-size: 12px;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

/* .btn-accordion
------------------------------------*/
.btn-accordion {
	background: #404D5C;
	box-sizing: border-box;
	width: 100%;
	margin-top: 45px;
	padding: 23px 20px 18px;
	color: #FFFFFF;
	font-size: 19px;
	text-align: center;
	letter-spacing: 0.3em;
	transition: .2s linear;
	cursor: pointer;
}

.btn-accordion span {
	position: relative;
	display: inline-block;
}

.btn-accordion span:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: -35px;
	background-image: url(img/share/ico-arrow-down.svg);
	background-size: 11px 11px;
	background-repeat: no-repeat;
	width: 11px;
	height: 11px;
	margin-top: -3px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.btn-accordion:hover,
.btn-accordion.active {
	background: #919FAF;
}

.btn-accordion.active span:after {
	background-image: url(img/share/btn-close-s.svg);
	background-size: 11px 12px;
	height: 12px;
}

@media all and (-ms-high-contrast:none){
	.btn-accordion { padding-top: 18px; padding-bottom: 22px; }
	.btn-accordion span:after { margin-top: 3px; }
}

/* .page-img
------------------------------------*/
.page-img,
.page-img2 {
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 20px 0 0;
}

.page-img img {
	width: 100%;
	height: auto;
}

.page-img2 {
	overflow: hidden;
	padding: 20px 20px 0;
}

.page-img2 img {
	display: block;
	float: left;
	width: calc(50% - 4px);
	height: auto;
}

.page-img2 img:last-of-type {
	float: right;
}

/* title
------------------------------------*/
.title-center {
	margin-bottom: 90px;
	font-size: 35px;
	letter-spacing: 0.03em;
	text-align: center;
}

.title-line span {
	position: relative;
	display: inline-block;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.title-line span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 1px;
	left: 0;
	background: #000000;
	width: calc(100% + 1px);
	height: 1px;
}

/* .lead
------------------------------------*/
.lead {
	text-align: center;
}

.lead h1 {
	margin-bottom: 20px;
	font-size: 30px;
	line-height: 1.6;
	letter-spacing: 0.2em;
}

.lead h2 {
	margin-bottom: 20px;
	font-size: 28px;
	line-height: 1.6;
	letter-spacing: 0.2em;
}

.lead h1 + p,
.lead h2 + p {
	font-size: 16px;
	letter-spacing: 0.18em;
}

/* .attention
------------------------------------*/
.attention,
.attention-list {
	margin-top: 15px;
	font-size: 12px;
}

.attention,
.attention-list li {
	position: relative;
	display: block;
	margin-bottom: 6px;
	padding-left: 1.2em;
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.attention:before,
.attention-list li:before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

.attention-list li {
	margin-bottom: 2px;
}

/* .num-list
------------------------------------*/
.num-list {
	counter-reset: count-number;
}

.num-list li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.12em;
}

.num-list li:before {
	display: block;
	counter-increment: count-number;
  content: counters(count-number,'.') '.';
	position: absolute;
	top: 0;
	left: 0;
}

/* .dot-list
------------------------------------*/
.dot-list li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 15px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.dot-list li:before {
	display: block;
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* .other-list
------------------------------------*/
.other-list li {
	margin: 0 0 5px 1.7em;
	text-indent: -1.5em;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

/* .guide-list
------------------------------------*/
.guide-list {
	overflow: hidden;
}

.guide-list dt {
	float: left;
	width: 200px;
	padding-top: 40px;
}

.guide-list dt h2 {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.guide-list dd {
	margin-bottom: 40px;
	padding: 40px 0 0 240px;
}

.guide-list dd h3 {
	display: block;
	border-bottom: 1px solid #C2C2C2;
	margin: 50px 0 25px;
	padding-bottom: 3px;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.guide-list dd h3:first-child {
	margin-top: 0;
}

.guide-list dd h4 {
	position: relative;
	margin: 40px 0 18px;
	padding-left: 25px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.guide-list dd h4:first-of-child {
	margin-top: 0;
}

.guide-list dd h4:before {
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 0;
	background: #979797;
	width: 15px;
	height: 1px;
}

.guide-list dd p {
	margin-bottom: 12px;
	text-align: justify;
}

.guide-list dd .num-list {
	margin: 20px 0 20px;
}

.attention.margin {
	margin: -5px 0 25px;
}

/* list
------------------------------------*/
.list2 li,
.list3 li,
.list4 li {
	float: left;
}

.list2 li:nth-of-type(2n),
.list3 li:nth-of-type(3n),
.list4 li:nth-of-type(4n) {
	margin-right: 0 !important;
}

.list2 li:nth-of-type(1),
.list2 li:nth-of-type(2),
.list3 li:nth-of-type(1),
.list3 li:nth-of-type(2),
.list3 li:nth-of-type(3),
.list4 li:nth-of-type(1),
.list4 li:nth-of-type(2),
.list4 li:nth-of-type(3),
.list4 li:nth-of-type(4) {
	margin-top: 0 !important;
}

/* .dl-common
------------------------------------*/
.dl-common {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1160px;
	margin: 0 auto;
	padding: 0 50px;
}

.dl-common dt {
	clear: both;
	float: left;
	margin-bottom: 100px;
}

.dl-common dt:last-of-type,
.dl-common dd:last-of-type {
	margin-bottom: 0;
}

.dl-common dt strong {
	display: block;
	margin-bottom: 15px;
	font-size: 18px;
	letter-spacing: 0.2em;
}

.dl-common dt em {
	display: block;
	font-size: 15px;
	letter-spacing: 0.04em;
}

.dl-common dd {
	margin-bottom: 100px;
	padding-left: 260px;
}

/* .dl-common-s
------------------------------------*/
.dl-common-s {
	width: 100%;
}

.dl-common-s dt {
	clear: both;
	float: left;
	padding-top: 2px;
	line-height: 1.5;
}

.dl-common-s dt strong {
	display: block;
	margin-bottom: 15px;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.dl-common-s dd {
	margin-bottom: 35px;
	padding-left: 160px;
}

.dl-common-s dd:last-of-type {
	margin-bottom: 0;
}

.dl-common-s dd p {
	font-size: 15px;
	text-align: justify;
}

/* .table-line
------------------------------------*/
.table-line {
	width: 100%;
	line-height: 1.7;
	letter-spacing: 0.06em;
}

.table-line tr.trl th {
	padding-top: 35px;
	padding-bottom: 30px;
}

.table-line th {
	border: none;
	border-bottom: 1px solid #000000;
	padding: 30px 25px 24px 15px;
	font-size: 15px;
	font-weight: normal;
	vertical-align: top;
	text-align: left;
	letter-spacing: 0.12em;
}

.table-line th.font-serif {
	font-size: 16px;
	letter-spacing: 0.06em;
}

.table-line tr:first-of-type th {
	padding-top: 0;
}

.table-line tr:first-of-type td {
	padding-top: 2px;
}

.table-line tr.trl td {
	padding-top: 36px;
	padding-bottom: 31px;
}

.table-line td {
	border: none;
	border-bottom: 1px solid #000000;
	padding: 32px 10px 25px 5px;
	font-size: 13px;
	vertical-align: top;
	letter-spacing: 0.1em;
}

.table-line td.font-serif {
	font-size: 14px;
	letter-spacing: 0.1em;
}

.table-line td strong {
	display: block;
	margin-bottom: 12px;
	font-size: 15px;
}

.table-line td.font-serif strong {
	margin-bottom: 12px;
	font-size: 16px;
}

.table-line td address {
	margin-bottom: -2px;
	line-height: 1.8;
}

.table-line td.font-serif  address {
	margin-bottom: -2px;
	line-height: 1.7;
}

.table-line td p {
	margin: -2px 0 10px;
	font-size: 13px;
	line-height: 1.8;
}

.table-line td.font-serif p {
	margin-top: 0;
	line-height: 1.6;
}

.table-line td p:last-of-type {
	margin-bottom: 0;
}

@media all and (-ms-high-contrast:none){
	.table-line th { padding-top: 27px; padding-bottom: 27px; }
	.table-line td { padding-top: 29px; padding-bottom: 28px; }
}

/* .table-grid
------------------------------------*/
.table-grid {
	width: 100%;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.table-grid tr {
	border-bottom: 1px solid #E3E3E3;
}

.table-grid tr:first-of-type {
	border-top: 1px solid #E3E3E3;
}

.table-grid th {
	background: #FBFBFB;
	border-right: 1px solid #E3E3E3;
	padding: 15px 15px 12px;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.2em;
}

.table-grid th:last-of-type,
.table-grid td:last-of-type {
	border-right: 0;
}

.table-grid td {
	border-right: 1px solid #E3E3E3;
	padding: 15px 15px 12px;
}

.table-grid tr td:last-of-type {
	text-align: center;
}

/* .table-num
------------------------------------*/
.table-wrap {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	padding-left: 5px;
}

.table-num {
	width: 100%;
	text-align: center;
	letter-spacing: 0.1em;
}

.table-num tr {
	border-bottom: 1px solid #E3E3E3;
}

.table-num tr:last-of-type {
	border-bottom: 1px solid #000000;
}

.table-num th:last-of-type,
.table-num td:last-of-type {
	border-right: none;
}

.table-num th {
	position: relative;
	background: #F4F5F7;
	border-right: 1px dashed #CCCCCC;
	padding: 20px 10px 16px;
	font-size: 13px;
	font-weight: normal;
	vertical-align: middle;
}

.table-num tr:first-of-type th:first-of-type {
	background: #535D68;
	width: 95px;
	color: #FFFFFF;
	font-size: 15px;
}

.table-num th.padding {
	padding-top: 13px;
	padding-bottom: 27px;
}

.table-num th span {
	display: block;
	margin-top: 6px;
	font-size: 11px;
	letter-spacing: 0.06em;
}

.table-num th i {
	display: block;
	margin-bottom: 8px;
}

.table-num td {
	border-right: 1px dashed #CCCCCC;
	padding: 16px 20px 12px;
	font-size: 14px;
	vertical-align: middle;
	letter-spacing: 0.1em;
}

.table-num td:first-of-type {
	background: #919FAF;
	color: #FFFFFF;
}

/* .anav
------------------------------------*/
.anav ul {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	width: 100%;
}

.anav li {
	-webkit-box-flex: 1;
  box-flex: 1;
  width: 100%;
	border-top: 1px solid #979797;
	border-right: 1px solid #979797;
	border-bottom: 1px solid #979797;
}

.anav li:first-of-type {
	border-left: 1px solid #979797;
}

.anav li a {
	display: block;
	padding: 18px 20px 13px;
	text-align: center;
	letter-spacing: 0.1em;
	white-space: nowrap;
}

@media all and (-ms-high-contrast:none){
	.anav li a { padding: 14px 20px 17px; }
}

/* .wp-pagenavi
------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	margin-top: 80px;
	text-align: center;
	font-size: 16px;
}

.wp-pagenavi a,
.wp-pagenavi .extend {
	padding: 8px;
}

.wp-pagenavi .current {
	display: inline-block;
	border-bottom: 1px solid #666666;
	margin: 0 8px;
	padding: 8px 0 0;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last {
	display: inline-block;
	background: url(img/share/ico-arrow2.svg) no-repeat center center;
	background-size: 20px 7px;
	width: 20px;
	height: 7px;
	margin: 0 -4px;
	padding: 10px;
	text-indent: -9999px;
	-webkit-transform: translateY(4px);
	-ms-transform: translateY(4px);
	transform: translateY(4px);
}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	display: inline-block;
	background: url(img/share/ico-arrow.svg) no-repeat center center;
	background-size: 10px 7px;
	width: 10px;
	height: 7px;
	padding: 10px;
	text-indent: -9999px;
	-webkit-transform: translateY(4px);
	-ms-transform: translateY(4px);
	transform: translateY(4px);
}

.wp-pagenavi a.first,
.wp-pagenavi a.previouspostslink {
	-webkit-transform: scaleX(-1) translateY(4px);
	-ms-transform: scaleX(-1) translateY(4px);
	transform: scaleX(-1) translateY(4px);
}

.wp-pagenavi a.previouspostslink { margin-right: 15px; }
.wp-pagenavi a.nextpostslink { margin-left: 15px; }

/* .sec-service
------------------------------------*/
.sec-service {
	box-sizing: border-box;
	width: 100%;
	max-width: 1232px;
	margin: 0 auto;
	padding: 0 50px;
}

.sec-service .lead {
	margin-bottom: 45px;
}

.sec-service .lead h2 {
	margin-bottom: 24px;
}

/* .service-list
------------------------------------*/
.service-list {
	overflow: hidden;
}

.service-list li {
	width: 32%;
	margin: 60px 2% 0 0;
}

.service-list li figure img {
	width: 100%;
	height: auto;
}

.service-list li h3 {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	margin: 28px 0 12px;
	font-size: 18px;
	text-align: center;
	line-height: 1.7;
	letter-spacing: 0.12em;
}

.service-list li p {
	margin-bottom: 24px;
	padding: 0 8px;
	font-size: 14px;
	text-align: justify;
	letter-spacing: 0.1em;
}

.service-list .btn-set {
	overflow: hidden;
}

.service-list .btn-set .btn-link {
	width: 49.5%;
	float: left;
}

.service-list .btn-set .btn-link:nth-child(even) {
	float: right;
}

.service-list .btn-link a {
	font-size: 16px;
}

.service-list .btn-set .btn-link a {
	background-position: right 10px center;
	padding: 18px 10px 12px 5px;
	font-size: 14px;
	letter-spacing: 0.06em;
}

/* .service-list - media query
-----------------------------------*/
@media (max-width: 1250px) {
	.service-list .btn-set .btn-link a {
		font-size: 13px;
		letter-spacing: 0.04em;
	}
}

/* .pattern-list
------------------------------------*/
.pattern-list {
	overflow: hidden;
	width: 100%;
	margin-bottom: 140px;
}

.pattern-list:last-of-type {
	margin-bottom: 0;
}

.pattern-list li {
	position: relative;
	width: 23%;
	margin: 120px 2.66% 0 0;
}

.pattern-list li:nth-of-type(4n+1):before {
	display: block;
	content: '';
	position: absolute;
	top: -60px;
	left: 0;
	background: #E3E3E3;
	width: 2000px;
	height: 1px;
}

.pattern-list li:nth-of-type(1):before {
	display: none;
}

.pattern-list h4 {
	margin-bottom: 7px;
	font-size: 14px;
	letter-spacing: 0.02em;
}

/*
.pattern-list h4 span {
	padding-left: 6px;
}
*/

.pattern-list figure {
	position: relative;
	margin-bottom: 22px;
}

.pattern-list figure a {
	display: block;
	position: relative;
}

.pattern-list figure figcaption {
	position: absolute;
	top: 22px;
	left: 20px;
	color: #FFFFFF;
	font-size: 32px;
	z-index: 2;
}

.pattern-list figure img {
	width: 100%;
	height: auto;
}

.pattern-list h5 {
	margin-bottom: 2px;
	font-size: 25px;
	text-align: center;
	line-height: 1.3;
}

.pattern-list h6 {
	margin-bottom: 2px;
	font-size: 13px;
	text-align: center;
	line-height: 1.7;
	letter-spacing: 0.04em;
}

.pattern-list .price {
	margin-bottom: 20px;
	color: #898989;
	font-size: 18px;
	text-align: center;
	letter-spacing: 0.02em;
}

.pattern-list .price span {
	font-size: 12px;
}

.pattern-list li p {
	margin-bottom: 15px;
	padding: 0 5px;
	font-size: 14px;
	text-align: justify;
	letter-spacing: 0.08em;
}

/* .pattern-list - media query
-----------------------------------*/
@media (max-width: 1200px) {
	.pattern-list h6 { font-size: 12px; letter-spacing: 0.02em; }
}

@media all and (-ms-high-contrast:none){
	.pattern-list li p { letter-spacing: 0.02em; }
}

.pattern-list .btn-link-s {
	white-space: nowrap;
}

.pattern-list .btn-link-s a {
	padding-right: 10px;
	padding-left: 10px;
}

/* .cart
------------------------------------*/
.cart-wrap {
	position: relative;
	width: 100%;
}

.cart {
	position: absolute;
	top: 0;
	right: 50px;
	border-top: 1px solid #000000;
	width: 240px;
	padding-top: 45px;
}

/* .cart - media query
-----------------------------------*/
@media (max-width: 1100px) {
	.cart { right: auto; left: 810px; }
}

/* .cart-title
------------------------------------*/
.cart-title {
	margin-bottom: 45px;
}

.cart-title .season {
	margin-bottom: 22px;
	color: #898989;
	font-size: 16px;
	line-height: 1.6;
}

/*
.cart-title .season span {
	padding-left: 5px;
}
*/

.cart-title .name {
	margin-bottom: 12px;
	font-size: 34px;
	line-height: 1.2;
	letter-spacing: 0;
}

.cart-title .material {
	margin-bottom: 15px;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.02em;
}

.cart-title .price {
	font-size: 23px;
	letter-spacing: 0.02em;
}

.cart-title .price span {
	padding-left: 2px;
	font-size: 15px;
}

.cart-title .price span.jp {
	margin-left: -2px;
	padding-left: 0;
	font-size: 13px;
	line-height: 1.9;
	letter-spacing: 0.04em;
}

.cart-title .name-sub {
	margin: 35px 0 12px;
	font-size: 21px;
	letter-spacing: 0.15em;
}

.cart-title .cart-attention {
	font-size: 11px;
	letter-spacing: 0.08em;
}

@media all and (-ms-high-contrast:none){
	.cart-title .cart-attention { letter-spacing: 0.06em; }
}

/* .cart-action
------------------------------------*/
.cart-action {
	position: relative;
}

.cart-action .help {
	position: absolute;
	left: -30px;
	transition: .2s linear;
}

.cart-action .help:hover {
	opacity: 0.5;
}

.cart-action .help a {
	display: inline-block;
	padding: 10px;
}

.cart-action p:last-of-type {
	margin-top: 20px;
	font-size: 12px;
	text-align: justify;
	line-height: 1.7;
	letter-spacing: 0.04em;
}

.cartjs_product_table table {
	width: 100%;
	font-size: 14px;
	letter-spacing: 0.1em;
}

.cartjs_product_table th {
	box-sizing: border-box;
	width: 75px;
	padding: 5px 10px 5px 0 !important;
	font-weight: normal;
	text-align: left;
	line-height: 1;
}

.cartjs_product_num th {
	-webkit-transform: translateY(1px) rotate(0.001deg);
	-ms-transform: translateY(1px) rotate(0.001deg);
	transform: translateY(1px) rotate(0.001deg);
}

.cartjs_option th {
	text-align: left !important;
	padding: 0 !important;
	-webkit-transform: translateY(-5px) rotate(0.001deg);
	-ms-transform: translateY(-5px) rotate(0.001deg);
	transform: translateY(-5px) rotate(0.001deg);
}

_::-webkit-full-page-media, _:future, :root .cartjs_option th {
	-webkit-transform: translateY(-1px);
	transform: translateY(-1px);
}

.cartjs_product_table td {
	position: relative;
	padding: 8px 0 7px !important;
}

.cartjs_stock td p {
	margin-top: 8px !important;
}

.cartjs_product_table .cartjs_option td {
	padding: 6px 0 5px !important;
}

.cartjs_product_table .cartjs_product_num td:after {
	display: block;
	content: '本';
	position: absolute;
	top: 16px;
	left: 125px;
	font-size: 11px;
}

.cartjs_product_table input {
	box-sizing: border-box !important;
	border: 1px solid #E0E0E0;
	width: 120px !important;
	height: 22px !important;
	padding: 1px 5px 0;
	font-size: 13px;
}

.cartjs_option td select {
	z-index: 3;
}

.cartjs_product_table .customSelect {
	overflow: hidden;
	display: block;
	box-sizing: border-box;
	width: 165px !important;
	height: 22px !important;
	font-size: 12px;
	letter-spacing: 0.1em !important;
}

@media all and (-ms-high-contrast:none){
	.cartjs_product_table .customSelect {
		letter-spacing: 0.02em !important;
	}
}

.cartjs_product_table .customSelect .customSelectInner {
	display: block;
	border: 1px solid #E0E0E0;
	box-sizing: border-box;
	border-radius: 0 3px 3px 0;
	width: 100% !important;
	height: 22px;
	padding: 4px 6px;
	z-index: 0;
}

.cartjs_product_table .customSelect .customSelectInner:before {
	display: block;
	content: '';
	position: absolute;
	top: 6px;
	left: 146px;
	box-sizing: border-box;
	background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #6F6F6F), color-stop(0.25, #626262));
	background: linear-gradient(to bottom, #6F6F6F 0%, #626262 25%);
	border: 1px solid #636363;
	border-radius: 0 3px 3px 0;
	width: 19px;
	height: 22px;
	z-index: 1;
}

.cartjs_product_table .customSelect .customSelectInner:after {
	display: block;
	content: '';
	position: absolute;
	top: 15px;
	left: 151px;
	background: url(img/share/ico-arrow-down-s.svg) no-repeat;
	background-size: 9px 6px;
	width: 9px;
	height: 6px;
	z-index: 2;
}

.cartjs_cart_in {
	position: relative;
	background: #87433B;
	width: 100%;
	height: 55px;
	margin-top: 25px;
	transition: .2s linear;
}

.cartjs_cart_in:after {
	display: block;
	content: 'この内容でオーダー';
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: 3px;
	color: #FFFFFF;
	font-size: 18px;
	letter-spacing: 0.1em;
	-webkit-transform: translate(-50%,-50%) rotate(0.001deg);
	-ms-transform: translate(-50%,-50%) rotate(0.001deg);
	transform: translate(-50%,-50%) rotate(0.001deg);
	white-space: nowrap;
	z-index: 1;
}

.cartjs_cart_in input {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 55px;
	opacity: 0;
	z-index: 2;
}

.cartjs_cart_in:hover {
	opacity: 0.5;
}

.btn-sold {
	box-sizing: border-box;
	background: #BBBBBB;
	width: 100%;
	height: 55px;
	margin-top: 100px;
	padding-top: 20px;
	color: #FFFFFF;
	font-size: 19px;
	letter-spacing: 0.12em;
	text-align: center;
}

@media all and (-ms-high-contrast:none){
	.cartjs_product_table .customSelect { letter-spacing: 0; }
	.cartjs_cart_in:after { margin-top: -3px; }
	.cart-action p:last-of-type { letter-spacing: 0; }
	.btn-sold { padding-top: 15px; }
}

/* .cart-hemming
------------------------------------*/
.cart-hemming {
	position: relative;
	width: 100%;
	margin-top: 10px;
}

.cart-hemming p {
	position: absolute;
	top: -145px;
	left: 0;
	font-size: 13px; 
	text-align: justify;
	line-height: 1.65;
	letter-spacing: 0.08em;
}

.cart-hemming .btn-action a {
	background-image: none;
	padding-top: 21px;
	padding-bottom: 16px;
}

@media all and (-ms-high-contrast:none){
	.cart-hemming .btn-action a { padding-top: 16px; padding-bottom: 20px; }
}

/* .attention-hemming
------------------------------------*/
/*
.attention-hemming {
	position: relative;
}

.attention-hemming p:first-of-type {
	position: absolute;
	top: -120px;
	left: 0;
	font-size: 12px;
	letter-spacing: 0.04em;
}

.cart-hemming-denim .cartjs_cart_in {
	margin-top: 50px;
}
*/

/* .news-list
------------------------------------*/
.news-list {
	position: relative;
}

.news-list .update {
	position: absolute;
	top: -40px;
	right: 25px;
	display: none;
	font-size: 13px;
	letter-spacing: 0.04em;
}

.news-list .update:first-of-type {
	display: block;
}

.news-list .inner {
	background: url(img/share/line-dot-wide.svg) repeat-x left bottom;
}

.news-list .inner:last-of-type {
	background: none;
}

.news-list .news-title {
	overflow: hidden;
	position: relative;
	padding-left: 250px;
}

.news-list time {
	display: block;
	position: absolute;
	top: 33px;
	left: 35px;
	font-size: 14px;
	letter-spacing: 0.04em;
}

.news-list .post-categories {
	float: left;
	margin: 33px 0 22px -130px;
}

.news-list .post-categories li{
  padding-bottom: 5px;
}

.news-list .post-categories a {
	display: inline-block;
	padding-bottom: 1px;
	font-size: 12px;
	letter-spacing: 0.12em;
	text-decoration: underline;
	white-space: nowrap;
}

.news-list h3 a,
.news-list h3 span {
	display: block;
	padding: 28px 75px 23px 0;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-list h3 a {
	text-decoration: underline;
}

.news-list .accordion h3 span {
	position: relative;
	cursor: pointer;
	transition: .2s linear;
}

.news-list .accordion h3 span:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	right: 35px;
	background: url(img/share/ico-arrow-down-black.svg) no-repeat;
	background-size: 8px 9px;
	width: 8px;
	height: 9px;
	margin-top: -4px;
	transition: .15s ease-in-out;
}

.news-list .accordion.active h3 span:after {
	-webkit-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg);
}

.news-list .accordion h3 span:hover {
	opacity: 0.5;
}

@media all and (-ms-high-contrast:none){
	.news-list .post-categories { margin-top: 30px; }
	.news-list h3 a, .news-list h3 span { padding-top: 24px; padding-bottom: 27px; }
}

/* .news-main
------------------------------------*/
.news-main {
	box-sizing: border-box;
	width: 100%;
	padding: 10px 0 40px 250px;
	font-size: 14px;
}

body#top .news-main,
body#news .news-main {
	display: none;
}

.news-main p {
	margin-bottom: 10px;
	font-size: 13px;
}

.news-main p:last-child { margin-bottom: 0; }
.news-main a { text-decoration: underline; }
.news-main strong { font-weight: bold; }
.news-main em { font-style: italic; }
.news-main del { text-decoration: line-through; }

.news-main img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-bottom: 15px;
}

.news-main iframe {
	max-width: 100%;
}

.news-main p img:last-of-type {
	margin-bottom: 40px;
}

.news-main .wp-caption {
	max-width: 100%;
	margin-bottom: 25px;
}

.news-main .wp-caption-text {
	margin-top: -5px;
}

.news-main ul,
.news-main ol {
	margin: 30px 0;
}

.news-main ul li {
	list-style: disc;
	margin: 0 0 6px 25px;
}

.news-main ol li {
	list-style: decimal;
	margin: 0 0 6px 25px;
}

.news-main ul li:last-of-type,
.news-main ol li:last-of-type {
	margin-bottom: 0;
}

.news-main blockquote {
	background: #F5F5F5;
	padding: 28px 35px;
}

/* .sec-table
------------------------------------*/
.news-main .sec-table {
	margin-top: 45px;
}

.news-main .sec-table h3 {
	margin-bottom: 10px;
}

.news-main .sec-table h3 span {
	display: inline;
	border-bottom: 1px solid #000000;
	padding: 0;
	font-size: 14px;
	letter-spacing: 0.06em;
}

.news-table {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 30px;
	font-size: 13px;
}

.news-table tr {
	border-bottom: 1px solid #E3E3E3;
}

.news-table th {
	position: relative;
	box-sizing: border-box;
	width: 17%;
	padding: 22px 12px 8px 0;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

.news-table td {
	box-sizing: border-box;
	width: 83%;
	padding: 22px 5px 8px 0;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

/* .news-link
------------------------------------*/
.news-main .news-link {
	overflow: hidden;
	margin: 25px 0 0 2px;
}

.news-main .news-link li {
	position: relative;
	float: left;
	list-style: none;
	margin: 0 10px 10px 0;
}

.news-link .btn-link-s a {
	letter-spacing: 0.12em;
	text-decoration: none;
}


/* .grecaptcha-badge
---------------------------------------------------------------------------*/
.grecaptcha-badge {
	pointer-events: none;
	z-index: -999;
	opacity: 0;
}

body#contact .grecaptcha-badge,
body#order-catalog .grecaptcha-badge,
body#order-sample .grecaptcha-badge {
	pointer-events: auto;
	z-index: 0;
	opacity: 1;
}