﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Noto+Serif+JP:wght@300;400;500;600;700&display=swap');


/* reset */
/* -------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {margin:0; padding:0;}
html {width:100%; height:100%; overflow-y:scroll;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold;}
p, ul, ol, dl, address, blockquote, table, div {font-size:100%;}
p {margin:0 0 0 0;}
ol,ul {list-style:none;}
fieldset,img {border:0; vertical-align:top;}
table {border-collapse:collapse; border-spacing:0;}
caption,th {text-align:left;}
th {vertical-align:top; font-weight:normal; text-align:left;}
td {vertical-align:top;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}


/* common */
/* -------------------------------------------------------- */
html,body {font-variant-ligatures:none;}
html {font-size:62.5%;}
body {font-size:14px; font-size:1.4rem; font-family: "Noto Serif JP", serif; font-weight:500; line-height:1.66; color:#705E50; text-align:center; -webkit-text-size-adjust:100%; text-size-adjust:100%; background-color:#CBBAAF;}


h1, h2, h3, h4, h5, h6, h7 {line-height:1.2;}
p, li, dt, dd, th, td, address, blockquote, div {line-height:inherit; text-align:inherit;}
input, select, option, textarea, button {font-size:16px; font-size:1.6rem; font-family: "Noto Serif JP", serif; line-height:1; vertical-align:middle; text-align:inherit; color:inherit; outline:none;}
textarea {line-height:1.4;}
input[type='submit'],input[type='reset'],input[type='button'], button {cursor:pointer; appearance:none;}
:placeholder-shown {color:#ccc;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc; opacity:1;}
::-moz-placeholder {color:#ccc; opacity:1;}
:-ms-input-placeholder {color:#ccc;}

strong {font-weight:bold;}
ol {list-style-type:decimal; margin-left:2.2em;}
img {max-width:100%; width:auto; height:auto; line-height:0; vertical-align:top; border:0; display:inline;}

a {color:#004e97; text-decoration:underline;}
a:hover {color:#004e97; text-decoration:none;}

.enFont {font-family: "EB Garamond", serif; font-weight:700;}


/* decision */
/* -------------------------------------------------------- */
#bpCheck {display:none;}

body .pc {display:block;}
br.pc, span.pc, img.pc {display:inline;}
body .sp, br.sp, span.sp, img.sp {display:none;}

a.off {pointer-events:none; cursor:default; opacity:0.3;}
a[href^="tel:"] {pointer-events:none; cursor:default;}
body.mobile a[href^="tel:"] {pointer-events:auto; cursor:pointer;}

.cfix::before,
.cfix::after {display:table; content:" ";}
.cfix::after {clear:both;}

@media screen and (max-width:767px){
	#bpCheck {display:block;}

	body .pc, br.pc, span.pc, img.pc {display:none;}
	body .sp {display:block;}
	br.sp, span.sp, img.sp {display:inline;}
}


/* container */
/* -------------------------------------------------------- */
#container {width:100%; overflow:hidden;}


/* header */
/* -------------------------------------------------------- */
#header {width:100%; background-color:#705E50; position:fixed; top:0; left:0; z-index:200; transition:top 0.3s ease;}
#header .sec {max-width:100%; height:110px; display:flex; justify-content:space-between; align-items:center;}
#header .logo svg {width:176px; height:79px; fill:#fff;}
#header .nav {display:flex; flex-wrap:wrap;}
#header .nav li {margin:0 0 0 3em;}
#header .nav a {font-size:1.4rem; line-height:1; letter-spacing:0.1em; text-align:left; text-decoration:none; color:#fff; display:block; transition:transform 0.3s ease;}
#header .nav a .en {font-family: "EB Garamond", serif; font-weight:500; font-size:171%; padding:0 0 0.3em 0; display:block;}
#header .nav a:hover {transform:translate3d(10px,0,0);}
body.top #header {top:-110px;}
body.moveH #header {top:0;}

#gNavBtn {width:65px; height:65px; background-color:#715E50; border-radius:0 0 0 10px; position:fixed; top:0; right:0; z-index:310; cursor:pointer; display:none;}
#gNavBtn > span {width:30px; height:1px; margin:-1px 0 0 -15px; background-color:rgba(255,255,255,1); display:block; position:absolute; top:50%; left:50%; transition-property:background-color;}
#gNavBtn > span::before,
#gNavBtn > span::after {content:''; width:100%; height:1px; background-color:rgba(255,255,255,1); display:block; position:absolute; left:0;}
#gNavBtn > span::before {top:-11px; transition-property:top;}
#gNavBtn > span::after {bottom:-11px; transition-property:bottom;}
body.load #gNavBtn,
body.load #gNavBtn > span::before,
body.load #gNavBtn > span::after {transition-duration:0.3s; transition-delay:0s; transition-timing-function:ease;}

#gNavCheck {display:none;}
#gNavCheck:checked + #header #gNavBtn > span {background-color:rgba(0,0,0,0);}
#gNavCheck:checked + #header #gNavBtn > span::before {top:0; transform:rotate(45deg); transition-property:transform;}
#gNavCheck:checked + #header #gNavBtn > span::after {bottom:0; transform:rotate(-45deg); transition-property:transform;}

@media screen and (max-width:767px){
	#header {top:0;}
	#header .sec {height:65px;}
	#header .logo svg {width:110px; height:50px;}
	#header .nav {display:block;}
	#header .nav li {margin:22px 0 0 0;}
	#header .nav a {font-size:1.1rem; color:#fff; padding-left:12px; position:relative; transition:padding-left 0.3s ease;}
	#header .nav a::before {content:''; width:2px; height:100%; background-color:#fff; display:block; position:absolute; top:0; left:0;}
	#header .nav a:hover {transform:translate3d(0,0,0); padding-left:22px;}
	body.top #header {top:-110px;}
	body.moveH #header {top:-110px;}
	#gNavBtn {display:block;}
	#gNav {width:64%; height:100vh; margin:0; padding:100px 15px 15px 30px; background-color:rgba(113,94,80,0.9); box-sizing:border-box; position:fixed; top:0; right:-64%; z-index:300; overflow:hidden; transition:right 0.6s ease;}
	#gNavCheck:checked + #header #gNav {right:0; overflow:hidden;}
}


/* footer */
/* -------------------------------------------------------- */
#footer .contact-sec {padding:100px 0; background:url(../img/bg_footer.jpg) center center no-repeat; background-size:cover;}
#footer .contact-sec .clm {display:flex; align-items:center;}
#footer .contact-sec .ttl-01 {width:286px; color:#fff; text-shadow:2px 2px 3px rgba(0,0,0,0.5); background-image:url(../img/bg_02-2.png);}
#footer .contact-sec .box {margin:0 0 0 7.6%; padding:25px; background-color:#EFE6E1; box-sizing:border-box; display:flex; justify-content:center; align-items:center; position:relative; flex:1;}
#footer .contact-sec .box::before {content:''; width:50px; height:50px; border-left:solid 1px #707070; border-bottom:solid 1px #707070; display:block; position:absolute; bottom:4px; left:4px;}
#footer .contact-sec .box::after {content:''; width:50px; height:50px; border-top:solid 1px #707070; border-right:solid 1px #707070; display:block; position:absolute; top:4px; right:4px;}
#footer .contact-sec .tel-link a {font-size:6.0rem; color:#493D36; padding-left:65px;}
#footer .contact-sec .tel-link a::before {width:55px; height:55px; margin-top:-27px; background-color:#493D36;}
#footer .contact-sec .tel-link svg {width:41px; height:41px; margin:-20px 0 0 7px;}
#footer .contact-sec .txt1 {font-size:1.8rem; letter-spacing:0.1em; color:#493D36; padding:0 0 0.3em 0;}
#footer .contact-sec .txt2 {font-size:1.6rem; letter-spacing:0.1em; color:#493D36;}
#footer .contact-sec ruby {ruby-position:over;}
#footer .contact-sec ruby rt {font-size:20%;}
#footer .logo-sec {padding:30px 0; background-color:#493D36;}
#footer .logo-sec .logo a {display:inline-block;}
#footer .logo-sec .logo svg {width:243px; height:50px; fill:#fff;}
#footer .logo-sec .copy {font-size:1.6rem; text-align:center; color:#fff; margin:1.0em 0 0 0; letter-spacing:0.1em; font-weight:400;}
#footer .pagetop-btn::before {content:''; width:60px; height:60px; background-color:#895F46; border-radius:100%; display:block; position:fixed; bottom:-60px; right:20px; z-index:100; transition:bottom 0.3s ease; mix-blend-mode:multiply;}
#footer .pagetop-btn a {width:60px; height:60px; position:relative; display:flex; justify-content:center; align-items:center; position:fixed; bottom:-60px; right:20px; z-index:101; transition:bottom 0.3s ease;}
#footer .pagetop-btn a svg {width:13px; height:13px; fill:#fff; display:block; position:relative; z-index:5;}
body.move #footer .pagetop-btn::before {bottom:20px;}
body.move #footer .pagetop-btn a {bottom:20px;}

@media screen and (max-width:1000px){
	#footer .contact-sec .tel-link a {font-size:6.0vw;}
}
@media screen and (max-width:767px){
	#footer .contact-sec {padding:80px 0 120px 0;}
	#footer .contact-sec .clm {display:block;}
	#footer .contact-sec .ttl-01 {width:100%;}
	#footer .contact-sec .box {margin:30px 0 0 0; padding:20px 10px; display:block;}
	#footer .contact-sec .tel-link a {font-size:3.7rem; padding-left:42px;}
	#footer .contact-sec .tel-link a::before {width:35px; height:35px; margin-top:-17px;}
	#footer .contact-sec .tel-link svg {width:27px; height:27px; margin:-13px 0 0 4px;}
	#footer .contact-sec .txt1 {font-size:1.5rem; padding:0 0 0.5em 0;}
	#footer .contact-sec .txt2 {font-size:1.4rem; padding:0.5em 0 0 0;}
	#footer .logo-sec {padding:20px 0;}
	#footer .logo-sec .logo svg {width:110px; height:24px;}
	#footer .logo-sec .copy {font-size:1.0rem;}
	#footer .pagetop-btn::before {width:40px; height:40px;}
	#footer .pagetop-btn a {width:40px; height:40px;}
	#footer .pagetop-btn a svg {width:10px; height:10px;}
	body.move #footer .pagetop-btn::before {bottom:10px;}
	body.move #footer .pagetop-btn a {bottom:10px;}
}
@media screen and (max-width:460px){
	#footer .contact-sec .tel-link a {font-size:8.0vw;}
}


/* contents */
/* -------------------------------------------------------- */
#contents {padding:110px 0 0 0;}

.sec {max-width:1230px; margin:0 auto; padding:0 15px; box-sizing:border-box;}

.tel-link {display:inline-block;}
.tel-link a {font-family: "EB Garamond", serif; font-weight:700; font-size:3.0rem; line-height:1; letter-spacing:0.05em; white-space:nowrap; text-decoration:none; color:#715E50; padding:0 0 0 32px; display:block; position:relative;}
.tel-link a::before {content:''; width:28px; height:28px; margin:-14px 0 0 0; background-color:#715E50; border-radius:3px; display:block; position:absolute; top:50%; left:0;}
.tel-link svg {width:22px; height:22px; margin:-11px 0 0 3px; fill:#fff; display:block; position:absolute; top:50%; left:0;}

.contact-link {width:320px; height:280px; display:block; position:relative;}
.contact-link::before {content:''; width:100%; height:100%; background:url(../img/bg_01.png) center center no-repeat; display:block; position:absolute; top:0; left:0; z-index:10; pointer-events:none;}
.contact-link a {width:100%; height:100%; font-size:1.4rem; line-height:1.4; letter-spacing:0.1em; text-align:center; text-decoration:none; color:#fff; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; flex-direction:column;}
.contact-link a .en {width:100%; font-family: "EB Garamond", serif; font-weight:700; font-size:171%; display:block;}
.contact-link a > span {display:block; z-index:15;}
.contact-link a::before {content:''; width:161px; height:161px; margin:-80px 0 0 -80px; background-color:#8E7667; display:block; position:absolute; top:50%; left:50%; transform:rotate(45deg); transition:background-color 0.3s ease;}
.contact-link a:hover::before {background-color:#7C6455;}

.ttl-01 {width:100%; height:261px; font-size:1.6rem; font-weight:600; line-height:1; letter-spacing:0.1em; text-align:center; color:#705E50; background:url(../img/bg_03-2.png) center center no-repeat; background-size:auto 100%; display:flex; justify-content:center; align-items:center;}
.ttl-01 .en {font-size:3.0rem; padding:0 0 0.3em 0; display:block;}

.page-ttl {width:100%; height:250px; background:url(../img/bg_ttl.jpg) center center no-repeat; background-size:cover; display:flex; justify-content:center; align-items:center;}
.page-ttl .ttl {font-size:2.4rem; letter-spacing:0.1em; text-align:center; text-shadow:0 3px 6px rgba(0,0,0,0.8); color:#fff;}
.page-ttl .ttl .en {width:100%; font-family: "EB Garamond", serif; font-weight:700; font-size:171%; line-height:1; padding:0 0 0.5em 0; display:block;}

.track-list {padding:20px 0 60px 0;}
.track-list ul {font-size:1.4rem; letter-spacing:0.1em; text-align:left; color:#715E50; display:flex; flex-wrap:wrap;}
.track-list li {padding:0 1.4em 0 0; position:relative;}
.track-list li::before {content:'>'; display:block; position:absolute; top:0; right:0.2em;}
.track-list li:last-of-type {padding:0;}
.track-list li:last-of-type::before {display:none;}
.track-list li a {text-decoration:none; color:#715E50;}
.track-list li a:hover {text-decoration:underline; color:#715E50;}

@media screen and (max-width:767px){
	#contents {padding:65px 0 0 0;}
	.sec {padding:0 7vw;}
	.ttl-01 {width:100%; height:196px; font-size:1.1rem;}

	.page-ttl {height:120px;}
	.page-ttl .ttl {font-size:1.8rem;}
	.page-ttl .ttl .en {padding:0 0 0.3em 0;}
}

/* scroll-img-sec */
.scroll-img-sec {width:100%; height:280px; position:relative; overflow:hidden;}
.scroll-img-sec > div {width:4000px; height:100%; display:flex; position:absolute; top:0; left:0; animation:scrollImg 50.0s linear 0s infinite normal none;}
.scroll-img-sec > div > div {flex:1;}
@keyframes scrollImg {
	0% {transform:translate3d(0,0,0);}
	100% {transform:translate3d(-50%,0,0);}
}

@media screen and (max-width:767px){
	.scroll-img-sec {height:200px;}
}

/* top-header */
.top-header {padding:130px 0 100px 0; position:relative;}
.top-header::before {content:''; width:88.5vw; height:30%; background-color:#B9A394; display:block; position:absolute; bottom:0; left:0;}
.top-header > div {position:relative;}
.top-header .sec {max-width:1780px; position:relative; z-index:10;}
.top-header .logo svg {width:469px; height:209px; fill:#715E50; display:block;}
.top-header .nav li {margin:30px 0 0 0;}
.top-header .nav a {font-size:1.4rem; line-height:1; letter-spacing:0.1em; text-align:left; text-decoration:none; color:#715E50; padding-left:12px; display:block; position:relative; transition:padding-left 0.3s ease;}
.top-header .nav a:hover {padding-left:22px;}
.top-header .nav a::before {content:''; width:2px; height:100%; background-color:#4D3B2E; display:block; position:absolute; top:0; left:0;}
.top-header .nav a .en {font-family: "EB Garamond", serif; font-weight:600; font-size:171%; padding:0 0 0.3em 0; display:block;  color:#4D3B2E;}
.top-header .nav .contact {display:none;}
.top-header .mv {width:75.5vw; height:calc(100% + 30px); position:absolute; bottom:0; right:0; z-index:1; pointer-events:none;}
.top-header .mv img {width:100%; height:100%; object-fit:cover; object-position:left center;}
.top-header .contact-link {margin:40px 0 0 -60px;}
.top-header .tel-link-sp {display:none;}
.top-header .box {text-align:left; margin:25px 0 0 110px;}

@media screen and (max-width:767px){
	.top-header {height:100vh; margin:0 0 74px 0; padding:20px 0 0 0; box-sizing:border-box; position:relative;}
	.top-header > div {position:static;}
	.top-header::before {display:none;}
	.top-header .logo svg {width:235px; height:105px;}
	.top-header .mv {width:calc(100%/* - 60px*/); height:calc(100% - 76px);}
	.top-header .mv img {object-position:center center;}
	.top-header .tel-link {display:none;}
	.top-header .contact-link {display:none;}
	.top-header .tel-link-sp {width:1em; text-align:center; margin:30px 0 0 23px; /*display:block;*/ display:none;}
	.top-header .tel-link-sp a {font-family: "EB Garamond", serif; font-weight:700; font-size:3.0rem; line-height:0.8; letter-spacing:0em; white-space:nowrap; text-decoration:none; color:#715E50; padding:32px 0 0 0; display:block; position:relative;}
	.top-header .tel-link-sp a::before {content:''; width:28px; height:28px; margin:0 0 0 -14px; background-color:#715E50; border-radius:3px; display:block; position:absolute; top:0; left:50%;}
	.top-header .tel-link-sp svg {width:22px; height:22px; margin:3px 0 0 -11px; fill:#fff; display:block; position:absolute; top:0; left:50%;}
	.top-header .tel-link-sp a span {width:0.8em; line-height:0.6; display:block; transform:rotate(90deg);}
	.top-header .box {display:none;}
}

/* lineup-sec */
.lineup-sec {padding:100px 0; background:url(../img/lineup_bg.jpg) center center no-repeat; background-size:cover;}
.lineup-sec .ttl-01 {color:#fff; text-shadow:2px 2px 3px rgba(0,0,0,0.5); background-image:url(../img/bg_02-2.png);}
.lineup-sec .txt1 {font-size:2.0rem; font-weight:600; letter-spacing:0.1em; text-align:center; color:#fff; text-shadow:2px 2px 3px rgba(0,0,0,0.5); margin:0.5em 0 0 0; font-weight:400;}
.lineup-sec .txt2 {font-size:2.0rem; font-weight:500; letter-spacing:0.1em; text-align:center; color:#fff; text-shadow:2px 2px 3px rgba(0,0,0,0.5); margin:3.0em 0 0 0; font-weight:300;}
.lineup-sec .clm {text-align:left; margin:0 -18px; display:flex; flex-wrap:wrap; justify-content:center;}
.lineup-sec .clm > div {width:33.33%; padding:30px 18px 0 18px; box-sizing:border-box;}
.lineup-sec .clm a {text-decoration:none; color:#fff; display:block; position:relative;}
.lineup-sec .clm a:hover .img img {transform:scale(1.2,1.2);}
.lineup-sec .clm .img {width:100%; padding:100% 0 0 0; box-shadow:2px 2px 3px rgba(0,0,0,0.16); position:relative; overflow:hidden;}
.lineup-sec .clm .img img {width:100%; height:100%; position:absolute; top:0; left:0; object-fit:cover; object-position:left center; transform:scale(1,1); will-change:transform; transition:transform 0.3s ease;}
.lineup-sec .clm .cap {width:100%; font-size:1.8rem; line-height:1; letter-spacing:0.1em; color:#fff; padding:0.5em; box-sizing:border-box; display:flex; align-items:center; position:absolute; bottom:0; left:0;}
.lineup-sec .clm .cap span {line-height:1; display:block; z-index:5;}
.lineup-sec .clm .cap .en {font-family: "EB Garamond", serif; font-size:133%;}
.lineup-sec .clm .cap .jp {white-space:nowrap; padding:0 0 0 1em; flex:1; position:relative;}
.lineup-sec .clm .cap .jp::before {content:''; width:1px; height:1em; margin:-0.5em 0 0 0.5em; background-color:#fff; display:block; position:absolute; top:50%; left:0;}
.lineup-sec .clm .cap::before {content:''; width:100%; height:100%; background-color:#895F46; display:block; position:absolute; top:0; left:0; mix-blend-mode:multiply;}
.lineup-sec .clm .price {font-size:2.6rem; letter-spacing:0.1em; text-align:left; color:#fff; text-shadow:0 3px 6px rgba(0,0,0,0.4); margin:0.3em 0 0.6em 0; font-weight: 400;}
.lineup-sec .clm .price .sub {font-size:66%; line-height:1.4; display:block;}


@media screen and (max-width:767px){
	.lineup-sec {margin:70px 0 0 0; padding:80px 0 60px 0;}
	.lineup-sec .txt1 {font-size:1.4rem; margin:2.0em 0 0 0;}
	.lineup-sec .txt2 {font-size:1.6rem;}

	.lineup-sec .clm {margin:-10px 0 0 0; display:block;}
	.lineup-sec .clm > div {width:auto; padding:30px 0 0 0;}
	.lineup-sec .clm .img {padding:215px 0 0 0; position:relative;}
	.lineup-sec .clm .cap {font-size:1.2rem;}
	.lineup-sec .clm .price {font-size:1.8rem; margin:0.1em 0 0 0;}
}

/* profile-sec */
.profile-sec {padding:100px 0; background:url(../img/profile_bg.jpg) center center repeat;}
.profile-sec .clm1 {margin:70px 0 0 0; padding:20px 0 90px 50%; position:relative;}
.profile-sec .clm1 .img {width:100%; height:100%; position:absolute; top:0; right:51.6%;}
.profile-sec .clm1 .img img {width:100%; height:100%; object-fit:cover; object-position:right center;}
.profile-sec .clm1 .txt {text-align:left; font-weight:;400; letter-spacing: 0.15em;}
.profile-sec .clm1 .txt dl {font-size:1.8rem; line-height:1.4; padding:1.2em 0; border-bottom:solid 1px #D0BCAE; display:flex;}
.profile-sec .clm1 .txt dt {width:8em; padding:0 0 0 1em; box-sizing:border-box;}
.profile-sec .clm1 .txt dd {flex:1;}
.profile-sec .clm2 {margin:140px 0 0 0; display:flex; justify-content:space-between;}
.profile-sec .clm2 .txt {width:50%; text-align:left;}
.profile-sec .clm2 .txt dt {font-size:4.3rem; letter-spacing:0.3em;}
.profile-sec .clm2 .txt dt .ttl {display:block;}
.profile-sec .clm2 .txt dt .img {display:none;}
.profile-sec .clm2 .txt dd {font-size:1.8rem; letter-spacing:0.1em; margin:0.2em 0 0 0;}
.profile-sec .clm2 .txt dd + dd {margin:1.2em 0 0 0;}
.profile-sec .clm2 .img {width:50%; padding:0 0 0 30px; box-sizing:border-box;}
.profile-sec .clm2 .img img {border-radius:60px; display:block;}

@media screen and (max-width:767px){
	.profile-sec {padding:60px 0 100px 0;}
	.profile-sec .clm1 {margin:20px 0 0 0; padding:0 0 0 0;}
	.profile-sec .clm1 .img {width:auto; height:200px; margin:30px -7vw 0 -7vw; position:static;}
	.profile-sec .clm1 .img img {object-position:center center;}
	.profile-sec .clm1 .txt dl {font-size:1.4rem;}
	.profile-sec .clm1 .txt dt {width:6em; padding:0 0 0 1em;5}
	.profile-sec .clm2 {margin:100px 0 0 0; display:block;}
	.profile-sec .clm2 .txt {width:auto; text-align:left;}
	.profile-sec .clm2 .txt dt {font-size:2.6rem; letter-spacing:0.2em;}
	.profile-sec .clm2 .txt dt .ttl {display:block; position:relative; z-index:5;}
	.profile-sec .clm2 .txt dt .img {width:50%; margin:-10px 0 0 0; padding:0; border-radius:20px; display:block; float:right;}
	.profile-sec .clm2 .txt dd {font-size:1.4rem; letter-spacing:0.1em; margin:2em 0 0 0;}
	.profile-sec .clm2 .txt dd + dd {margin:2em 0 0 0;}
	.profile-sec .clm2 .img {display:none;}
}

/* lineup-cate-sec */
.lineup-cate-sec {padding:0 0 100px 0;}
.lineup-cate-sec .txt1 {font-size:2.0rem; line-height:1.8; text-align:center;}
.lineup-cate-sec .txt1 strong {font-weight:600; display:block;}
.lineup-cate-sec .clm {margin:0 -13px; display:flex; flex-wrap:wrap;}
.lineup-cate-sec .clm > div {width:25%; padding:26px 13px 0 13px; box-sizing:border-box;}
.lineup-cate-sec .clm .box {width:100%; position:relative; overflow:hidden;}
.lineup-cate-sec .clm .img {width:100%; padding:100% 0 0 0; position:relative;}
.lineup-cate-sec .clm .img img {width:100%; height:100%; display:block; object-fit:cover; object-position:center center; position:absolute; top:0; left:0;}
.lineup-cate-sec .clm .tag {width:70px; height:60px; white-space:nowrap; font-family: "EB Garamond", serif; font-size:2.2rem; font-weight:700; line-height:1; letter-spacing:0.05em; text-shadow:0 3px 6px rgba(0,0,0,0.8); color:#fff; position:absolute; top:0; left:0; display:flex; justify-content:center; align-items:center;}
.lineup-cate-sec .clm .tag span {display:block; position:relative; z-index:10;}
.lineup-cate-sec .clm .tag::before, 
.lineup-cate-sec .clm .tag::after {content:''; width:160px; height:160px; display:block; position:absolute; top:-80px; left:-80px; z-index:5; transform:rotate(45deg); mix-blend-mode:multiply;}
.lineup-cate-sec .clm .tag::after {background-color:rgba(137,95,70,0.4);}

@media screen and (max-width:767px){
	.lineup-cate-sec {padding:0 0 60px 0;}
	.lineup-cate-sec .txt1 {font-size:1.6rem;}
	.lineup-cate-sec .clm {margin:10px -1px 0 -1px;}
	.lineup-cate-sec .clm > div {width:50%; padding:2px 1px 0 1px;}
	.lineup-cate-sec .clm .tag {width:60px; height:46px; font-size:1.8rem;}
	.lineup-cate-sec .clm .tag::before, 
	.lineup-cate-sec .clm .tag::after {content:''; width:120px; height:120px; top:-60px; left:-60px;}
}

