@charset "UTF-8";
#main #pageHdrA #pageHdrAInner {
background:#fff;
}
/* ------------------------------------------------- */
#specialArea {
width: 100%;
margin: 0 0 12.5rem;
}
#special p {
margin: 0;
}

@media screen and (max-width: 768px) {
#special {
margin: 0 0 7.5rem;
}
}



/* ------------------------------------------------- */
#special .specialIntro {
margin: 1rem 0 16.5rem;
display: flex;
justify-content: space-between;
flex-direction: row-reverse;
}
#special .specialIntro .imgBlock01 {
margin: auto 0 0 0;
}
#special .specialIntro .imgBlock02 {
margin: 0 0 auto 0;
}
#special .specialIntro .imgBlock01 ,
#special .specialIntro .imgBlock02 {
width: 24%;
aspect-ratio: 3 / 4;
overflow: hidden;
}
#special .specialIntro .imgBlock01 img ,
#special .specialIntro .imgBlock02 img {
object-fit: cover;
width: 100%;
height: 100%;
}
#special .specialIntro .txtBlock {
padding: 12.5rem 3.5rem 12.5rem 1.5rem ;
}
#special .specialIntro .txtBlock .ttl {
font-weight: normal;
letter-spacing: 0.2rem;
margin: 0 0 4rem;
}
#special .specialIntro .txtBlock .txt {
line-height: 3.0;
padding: 0 0 0 1rem;
}

@media screen and (max-width: 1280px) {
#special .specialIntro .imgBlock01 ,
#special .specialIntro .imgBlock02 {
width: 20%;
}
#special .specialIntro .txtBlock {
padding: 6rem 3.5rem 6rem 1.5rem ;
}
}
@media screen and (max-width: 768px) {
#special .specialIntro {
flex-direction: column;
}
#special .specialIntro .imgBlock01 {
margin: 0 auto 0 0;
}
#special .specialIntro .imgBlock02 {
margin: 0 0 0 auto;
}
#special .specialIntro .imgBlock01 ,
#special .specialIntro .imgBlock02 {
width: 70%;
aspect-ratio: 2 / 1;
}
#special .specialIntro .imgBlock02 img {
object-position: bottom;
}
#special .specialIntro .txtBlock {
writing-mode: vertical-rl;
margin: 0 auto;
}
#special .specialIntro .txtBlock .ttl {
font-size: 1.5rem;
margin: 0 0 0 2rem;
}
#special .specialIntro .txtBlock .txt {
padding: 3rem 0 0 0 ;
}
}

@media screen and (max-width: 440px) {
#special .specialIntro .txtBlock {
padding: 2rem 20px 3rem 20px;
}
#special .specialIntro .imgBlock01 ,
#special .specialIntro .imgBlock02 {
aspect-ratio: 16 / 9;
}
}


/* ------------------------------------------------- */
#special .secretWrap {
width: 100%;
margin: 0 0 14.5rem 0;
}
#special .secretWrapInner {
background: #F9F5F4;
width: 90vw;
margin: 0 0 0 auto;
}
#special .secretWrap .secretIntroWrap {
width: 90vw;
position: relative;
top: -4.5rem;
left: -10vw;
display: flex;
}
#special .secretWrap .secretIntroWrap .imgBlock {
aspect-ratio: 3 / 1;
width: 70vw;
overflow: hidden;
}
#special .secretWrap .secretIntroWrap .imgBlock img {
object-fit: cover;
width: 100%;
height: 100%;
}
#special .secretWrap .secretIntroWrap .ttlBlock {
width: 20vw;
writing-mode: vertical-rl;
display: flex;
align-items: center;
}
#special .secretWrap .secretIntroWrap .ttlBlock .ttl {
font-size: 2rem;
font-weight: normal;
letter-spacing: 0.3rem;
line-height: 1;
white-space: nowrap;
}
#special .secretWrap .secretCon {
padding: 0rem 2.5rem 7.5rem;
}
#special .secretWrap .secretConWrap {
display: flex;
gap:1.5rem 3rem;
width: 70vw;
margin: 0 auto;
}
#special .secretWrap .secretConWrap:not(:last-child) {
margin-bottom: 3rem;
}
#special .secretWrap .secretConWrap .txtBlock {
width: calc(100% - (20vw + 3rem));
}
#special .secretWrap .secretConWrap .txtBlock .ttl {
font-size: 1.5rem;
font-weight: normal;
font-family: "Zen Kaku Gothic New", YuGothic,'Yu Gothic', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
margin: 1rem 0 1.5rem 0;
}
#special .secretWrap .secretConWrap .imgBlock {
aspect-ratio: 3 / 4;
overflow: hidden;
width: 20vw;
}
#special .secretWrap .secretConWrap .imgBlock img {
object-fit: cover;
width: 100%;
height: 100%;
}

@media screen and (max-width: 768px) {
#special .secretWrap {
margin: 0 0 12rem 0;
}
#special #sozai.secretWrap {
margin: 0 0 7.5rem 0;
}
#special .secretWrap .secretIntroWrap .ttlBlock .ttl {
font-size: 1.5rem;
}
#special .secretWrap .secretConWrap {
flex-direction: column;
}
#special .secretWrap .secretConWrap .txtBlock {
width: 100%;
}
#special .secretWrap .secretConWrap .txtBlock .ttl {
font-size: 1.25rem;
}
#special .secretWrap .secretConWrap .imgBlock {
width: 100%;
aspect-ratio: 16 / 9;
}
}

@media screen and (max-width: 440px) {
#special .secretWrap .secretIntroWrap {
width: 100%;
left: 0;
}
#special .secretWrapInner {
width: 100%;
}
#special .secretWrap .secretIntroWrap .imgBlock {
width: 70%;
}
#special .secretWrap .secretIntroWrap .ttlBlock {
width: 30%;
}
#special .secretWrap .secretCon {
padding: 0rem 20px 3em;
}
#special .secretWrap .secretConWrap {
width: 100%;
}
#special .secretWrap .secretConWrap .txtBlock .ttl {
margin: 0rem 0 1.25rem 0;
}
}

/* ---------------- */
#special .secretWrap .secretArtWrap {
display: flex;
width: 80vw;
margin: 4.5rem auto 0;
gap:1.5rem 3rem;
}
#special .secretWrap .secretArtWrap .txtBlock .ttl {
font-size: 1.5rem;
font-weight: normal;
font-family: "Zen Kaku Gothic New", YuGothic,'Yu Gothic', "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
margin: 0 0 1.5rem 0;
}
#special .secretWrap .secretArtWrap .txtBlock .txt {
margin: 0 0 1rem 0;
}

@media screen and (max-width: 768px) {
#special .secretWrap .secretArtWrap {
flex-direction: column-reverse;
}
#special .secretWrap .secretArtWrap .txtBlock .ttl {
font-size: 1.25rem;
}
}

@media screen and (max-width: 440px) {
#special .secretWrap .secretArtWrap {
width: 100%;
padding: 0 20px;
}
}

/* ------------------------------------------------- */

#special .secretArtisanWrap {
width: 90%;
margin: 0 0 0 auto;
}
#special .secretArtisanWrap .secretArtisanIntro {
margin: 0 0 9rem 0;
padding: 0 2.5rem 0 0;
}
#special .secretArtisanWrap .secretArtisanIntro .ttl {
font-size: 2rem;
font-weight: normal;
letter-spacing: 0.2rem;
margin:0 0 2rem;
}
#special .secretArtisanWrap .secretArtisanConWrap {
background: #F6F4EE;
position: relative;
padding: 4.5rem 2.5rem 4.5rem 8.5rem;
}
#special .secretArtisanWrap .secretArtisanConWrap:not(:last-child) {
margin: 0 0 7.5rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .ttlBlock {
writing-mode: vertical-rl;
position: absolute;
top: -3rem;
left: 3rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .ttlBlock .ttl {
font-weight: normal;
font-size: 1.5rem;
letter-spacing: 0.6rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .secretArtisanConWrapInner {
display:grid;
grid-template-columns: repeat(3, 1fr);
gap:3rem 2rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan {
display: flex;
gap: 1.5rem;
font-family: "Zen Old Mincho",'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan .img {
max-width: 240px;
flex-shrink: 0;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan .name {
margin: 1rem 0;
font-size: 1.25rem;
letter-spacing: 0.1rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan .skill {
margin:0 0 1rem 0;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan .award {
padding: 0 0 0 0.5rem;
border-left: 1px solid #BBA883;
}
#special .secretArtisanWrap .secretArtisanConWrap .artisan ul li {
font-size: 0.875rem;
}

@media screen and (max-width: 1600px) {
#special .secretArtisanWrap .secretArtisanConWrap .artisan .img {
max-width: 160px;
}
}
@media screen and (max-width: 1280px) {
#special .secretArtisanWrap .secretArtisanConWrap .secretArtisanConWrapInner {
grid-template-columns: repeat(2, 1fr);
}
}
@media screen and (max-width: 1024px) {
#special .secretArtisanWrap .secretArtisanIntro {
margin: 0 0 4.5rem 0;
}
#special .secretArtisanWrap .secretArtisanConWrap {
padding: 2.5rem 2.5rem 4.5rem 2.5rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .ttlBlock {
writing-mode: horizontal-tb;
position: static;
}
#special .secretArtisanWrap .secretArtisanConWrap .ttlBlock .ttl {
letter-spacing: 0.2rem;
margin: 0 0 2rem 0;
}
}
@media screen and (max-width: 768px) {
#special .secretArtisanWrap .secretArtisanIntro .ttl {
font-size: 1.5rem;
margin: 0 0 1.5rem;
}
#special .secretArtisanWrap .secretArtisanConWrap .secretArtisanConWrapInner {
grid-template-columns: repeat(1, 1fr);
}
}
@media screen and (max-width: 440px) {
#special .secretArtisanWrap {
width: 100%;
}
#special .secretArtisanWrap .secretArtisanIntro {
padding: 0 20px;
}
#special .secretArtisanWrap .secretArtisanConWrap {
padding: 3rem 20px 4.5rem 20px;
}
#special .secretArtisanWrap .secretArtisanConWrap:not(:last-child) {
margin: 0 0 4.5rem 0;
}
}