@charset "utf-8";
/* CSS Document */
body {
    color: #474747;
}

#conWrap .inner {
    width: 100%;
    max-width: none;
}

@media screen and (max-width: 768px) {
    
}



/* #page_ttl_wrap
----------------------------------------- */
#page_ttl_wrap {
    width: 100%;
    margin: auto;
    padding: 0 5rem;
    padding-top: 8rem;
    padding-bottom: 10rem;
    position: relative;
    z-index: 1;
}
#page_ttl_wrap::after {
    content: "";
    display: block;
    bottom: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 18rem);
    background-color: #e8e1ce;
    position: absolute;
    z-index: -1;
}

#page_ttl_wrap h1 {
    position: absolute;
    top: 4rem;
    left: 50%;
    transform: translate(-50%,0);
    z-index: 2;
}
#page_ttl_wrap .img_wrap {
    width: 100%;
    /*padding-top: 46.1538%;*/
    margin: auto;
    position: relative;
    border-radius: 0 3.2rem 0 3.2rem;
    overflow: hidden;
}
#page_ttl_wrap .img_wrap img {
    width: 100%;
    height: auto;
    animation: zoom 5s ease-in-out forwards;
    transform-origin: center;
    /*position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);*/
    z-index: -1;
}
@keyframes zoom {
      100% { 
          transform:scale(1.1);
    } 
}

#page_ttl_wrap .img_wrap::before {
    content: "";
    display: block;
    position: absolute;
    top: -0.1rem;
    left: -0.1rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 2.6rem 2.6rem 0 0;
    border-color: #ffffff transparent transparent transparent;
    z-index: 2;
}
#page_ttl_wrap .img_wrap::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.1rem;
    right: -0.1rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 2.6rem 2.6rem;
    border-color: transparent transparent #e8e1ce transparent;
    z-index: 2;
}

#page_ttl_wrap .date {
    position: absolute;
    bottom: 2.5rem;
    left: 50%;
    transform: translate(-50%,0);
    z-index: 2;
    white-space: nowrap;
}
#page_ttl_wrap .date span {
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    line-height: 1;
    color: #FFFFFF;
}

/*アニメーション*/
#page_ttl_wrap .date span.anim {
  opacity: 0;
	filter: none;
    transform: translateY(0);
    transform: translateX(-1rem);
	 -webkit-transition: all .6s;
    transition: all .6s;
}
#page_ttl_wrap .date span.anim._do_anim {
  opacity: 0;
  transform: translateY(0);
    transform: translateX(-1rem);
    animation: font 1s ease-in-out 1s forwards;
}
@keyframes font {
      100% {
          opacity: 1;
          transform: translateX(0);
    } 
}

#page_ttl_wrap .page_navi_wrap {
    width: 100%;
    max-width: 80rem;
    margin: auto;
    margin-top: 3rem;
    height: 4rem;
    background-color: #FFFFFF;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

#page_ttl_wrap .page_navi {
    width: 100%;
    max-width: 64rem;
}
#page_ttl_wrap .page_navi > li a {
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    line-height: 1;
}
#page_ttl_wrap .page_navi > li a.no_link {
    /*color: #707070;*/
}

#page_ttl_wrap .bn_wrap {
    margin: auto;
    margin-top: 8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
#page_ttl_wrap .bn_wrap .bn_con {
    width: 84rem;
    height: 21rem;
    border-radius: 0.5rem;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}
#page_ttl_wrap .bn_wrap .bn_con .ttl {
    font-size: 2.4rem;
    letter-spacing: 0.15em;
    font-weight: 500;
    color: #FFFFFF;
    text-align: center;
}
#page_ttl_wrap .bn_wrap .bn_con .img {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
}
#page_ttl_wrap .bn_wrap .bn_con .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#page_ttl_wrap .about_txt_wrap {
    margin: auto;
    margin-top: 4rem;
    
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(28/14);
    color: #474747;
}

#page_ttl_wrap > .btn_wrap {
    margin: auto;
    margin-top: 2rem;
}

@media screen and (max-width: 768px) {
#page_ttl_wrap {
    width: 100%;
    padding: 0 1.5rem;
    padding-top: 4rem;
    padding-bottom: 10rem;
}
    
#page_ttl_wrap::after {
    height: 100%;
}

#page_ttl_wrap h1 {
    top: 2.5rem;
    width: 11rem;
}
#page_ttl_wrap h1 img {
    width: 100%;
    height: auto;
}
#page_ttl_wrap .img_wrap {
    border-radius: 0 1.1rem 0 1.1rem;
}

#page_ttl_wrap .img_wrap::before {
    border-width: 1rem 1rem 0 0;
    border-color: #e8e1ce transparent transparent transparent;
}
#page_ttl_wrap .img_wrap::after {
    border-width: 0 0 1rem 1rem;
}
    
#page_ttl_wrap .bn_wrap {
    margin-top: 5rem;
}
#page_ttl_wrap .bn_wrap .bn_con {
    width: 34.5rem;
    height: 17.2rem;
    border-radius: 0.3rem;
}
#page_ttl_wrap .bn_wrap .bn_con .ttl {
    font-size: 2.4rem;
}

#page_ttl_wrap .about_txt_wrap {
    margin-top: 4rem;
    text-align: left;
}
#page_ttl_wrap .about_txt_wrap br {
    display: none;
}
#page_ttl_wrap > .btn_wrap {
    margin-top: 2rem;
}
    
#page_ttl_wrap .page_navi_wrap {
    width: 31.5rem;
    height: auto;
    padding: 1rem 2rem;
    border-radius: 0.7rem;
    display: block;
    margin: auto;
    margin-top: 5rem;
}

#page_ttl_wrap .page_navi {
    width: 100%;
    max-width: none;
}
#page_ttl_wrap .page_navi > li {
    width: 100%;
}
#page_ttl_wrap .page_navi > li:not(:last-child) {
    border-bottom: 1px solid #cbcbcb;
}
#page_ttl_wrap .page_navi > li a {
    height: 4rem;
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    line-height: 1;
    color: #474747;
    position: relative;
}
#page_ttl_wrap .page_navi > li a::after {
    content: "";
    display: block;
    width: 1.1rem;
    height: 0.6rem;
    background: url(../images/pd_be.svg) no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0,-50%);
}
}



/* #pickup_news
----------------------------------------- */
#pickup_news {
}
#pickup_news .inner {
    max-width: 80rem;
    padding-top: 6rem;
    padding-bottom: 0;
}
#pickup_news .pickup_news {
    display: flex;
    align-items: center;
    padding-bottom: 1rem;
    width: 100%;
    border-bottom: 1px solid #a8a8a8;
}
#pickup_news .pickup_news .pickup_ttl {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
    white-space: nowrap;
    margin-right: 3.5rem;
}
#pickup_news .pickup_news .date {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
    white-space: nowrap;
    margin-right: 3rem;
}
#pickup_news .pickup_news .ttl {
    font-size: 1.6rem;
    letter-spacing: 0.15em;
    font-weight: 400;
    color: #474747;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

#pickup_news .more {
    display: flex;
    justify-content: flex-end;
    margin-top: 2rem;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
}

@media screen and (max-width: 768px) {
#pickup_news {
}
#pickup_news .inner {
    max-width: 32rem;
    padding-top: 4rem;
    padding-bottom: 0;
}
#pickup_news .pickup_news {
    flex-flow: column;
    align-items: flex-start;
    padding-bottom: 1rem;
    width: 100%;
    border-bottom: 1px solid #a8a8a8;
}
#pickup_news .pickup_news .pickup_ttl {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
    white-space: nowrap;
    margin-right: 0;
    margin-bottom: 1.5rem;
}
#pickup_news .pickup_news .date {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
    white-space: nowrap;
    margin-right: 0;
    margin-bottom: 0;
}
#pickup_news .pickup_news .ttl {
    font-size: 1.6rem;
    letter-spacing: 0.15em;
    font-weight: 400;
    color: #474747;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}

#pickup_news .more {
    display: flex;
    justify-content: flex-end;
    margin-top: 1rem;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #474747;
}
}

/* #about
----------------------------------------- */
#about {
    background-color: #e4ddc9;
    position: relative;
}
#about .inner {
    width: calc(100% - 10rem);
    max-width: 122rem;
    padding-top: 8rem;
    padding-bottom: 19rem;
}
#about::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 40%;
    background-color: #e4ddc9;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-99%);
    z-index: -1;
}

#about h1 {
    font-size: 15rem;
	letter-spacing: 0.03em;
    font-weight: 300;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
    color: #474747;
}
#about h1 br {
    display: none;
}
#about h1 span {
}
#about h1 span.anim {
  opacity: 0;
	filter: none;
    transform: translateY(0);
    transform: translateX(-1rem);
	 -webkit-transition: all .6s;
    transition: all .6s;
}
#about h1 span.anim._do_anim {
  opacity: 0;
  transform: translateY(0);
    transform: translateX(-1rem);
    animation: font2 1s ease-in-out forwards;
}
@keyframes font2 {
      100% {
          opacity: 1;
          transform: translateX(0);
    } 
}

#about .lead {
    width: 100%;
    max-width: 68rem;
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(28/14);
    text-align: center;
    margin: auto;
    margin-top: 8rem;
    margin-bottom: 8rem;
}

#about .definition {
    width: 100%;
    max-width: 110rem;
    margin: auto;
}
#about .definition_con {
    align-items: flex-start;
}
#about .definition_con:not(:last-child) {
    margin-bottom: 15rem;
}
#about .definition_con.even {
    flex-flow: row-reverse;
}
#about .definition_con > li.img {
    width: calc(705/1100*100%);
    position: relative;
}
#about .definition_con > li.img .no_wrap {
    position: absolute;
    top: 4rem;
    left: 4rem;
    z-index: 2;
    width: 19.5rem;
    height: 8rem;
    box-sizing: border-box;
    border: 1px solid #FFFFFF;
    border-radius: 0 10rem 10rem 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding-left: 2rem;
}
#about .definition_con > li.img .no_wrap span {
    ont-size: 1.8rem;
    letter-spacing: 0.15em;
    line-height: calc(32/18);
    color: #FFFFFF;
    font-weight: 500;
}

#about .definition_con > li.txt {
    width: calc(350/1100*100%);
}
#about .definition_con > li.txt h2 {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    margin: auto;
}
#about .definition_con > li.txt h2 span {
    font-size: 2.2rem;
    letter-spacing: 0.26em;
    line-height: calc(38/22);
    font-weight: 300;
}
#about .definition_con > li.txt .txt_wrap {
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(32/14);
    margin-top: 2rem;
}

#about .definition_con > li.img h2 {
    display: none;
}

@media screen and (max-width: 1220px) {
#about h1 br {
    display: block;
}
}

@media screen and (max-width: 768px) {
#about .inner {
    width: 31.5rem;
    padding-top: 5rem;
    padding-bottom: 10rem;
}
#about::before {
    padding-top: 133.3333%;
}

#about h1 {
    font-size: 6.5rem;
	letter-spacing: 0.15em;
    font-weight: 400;
    line-height: calc(70/65);
    text-align: left;
}

#about .lead {
    text-align: left;
    margin-top: 3rem;
    margin-bottom: 6rem;
}

#about .definition {
    width: 100%;
}
#about .definition_con {
}
#about .definition_con:not(:last-child) {
    margin-bottom: 6rem;
}
#about .definition_con.even {
    flex-flow: wrap;
}
#about .definition_con > li.img {
    width: 100%;
}
#about .definition_con > li.img .no_wrap {
    position: relative;
    top: auto;
    left: auto;
    width: 22.5rem;
    height: 5rem;
    padding-left: 2rem;
    margin-bottom: 3rem;
}
#about .definition_con > li.img .no_wrap span {
    ont-size: 1.6rem;
}
#about .definition_con > li.img .no_wrap br {
    display: none;
}

#about .definition_con > li.txt {
    width: 100%;
}
#about .definition_con > li.txt h2 {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    margin: auto;
    
    display: none;
}
#about .definition_con > li.txt .txt_wrap {
    margin-top: 2.5rem;
}

#about .definition_con > li.img h2 {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    margin: auto;
    
    display: block;
    margin-bottom: 2.5rem;
}
#about .definition_con > li.img h2 span {
    font-size: 2.1rem;
    letter-spacing: 0.26em;
    line-height: calc(38/22);
    font-weight: 300;
}
}


/* #crafts
----------------------------------------- */
#crafts {
}
#crafts .inner {
    padding-top: 15rem;
    padding-bottom: 12rem;
}
#crafts h1 {
    font-size: 4rem;
	letter-spacing: 0.15em;
    line-height: 1;
    font-weight: 300;
    text-align: center;
    color: #474747;
}
#crafts .lead {
    width: 100%;
    max-width: 68rem;
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(24/14);
    color: #707070;
    text-align: center;
    margin: auto;
    margin-top: 4rem;
    margin-bottom: 6rem;
}
#crafts .crafts_list {
    width: 100%;
}
#crafts .crafts_list li {
    width: 60rem;
}
#crafts .crafts_list li .img_wrap {
    width: 100%;
    position: relative;
}
#crafts .crafts_list li .img_wrap img {
    width: 100%;
    height: auto;
}
#crafts .crafts_list li .img_wrap h2 {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #e4ddc9;
    padding: 1rem;
}
#crafts .crafts_list li .img_wrap h2 span {
    font-size: 2.2rem;
    letter-spacing: 0.2em;
    line-height: 1;
}
#crafts .crafts_list li .txt_wrap {
    padding: 2rem 3rem;
}
#crafts .crafts_list li .txt_wrap .ttl {
    font-size: 2rem;
    letter-spacing: 0.2em;
    line-height: calc(35/20);
    margin-bottom: 1rem;
}
#crafts .crafts_list li .txt_wrap .txt {
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(26/14);
}

#crafts .arrow_wrap {
    width: 60rem;
    position: absolute;
    top: 20rem;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 2;
}
#crafts .slider_arrow {
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: 0;
    display: block;
    transform: translate(0, 0);
    cursor: pointer;
	z-index: 2;
}
#crafts .slider_arrow.prev {
    left: 0;
    transform: translate(-50%, 0);
}
#crafts .slider_arrow.next {
    right: 0;
    transform: translate(50%, 0);
}

#crafts .btn_wrap .btn2 {
    width: 27.6rem;
    height: 4.9rem;
}

@media screen and (max-width: 768px) {
#crafts .inner {
    padding-top: 10rem;
    padding-bottom: 6rem;
}
#crafts h1 {
    font-size: 2.6rem;
}
#crafts .lead {
    width: 31.5rem;
    margin: auto;
    margin-top: 2rem;
    margin-bottom: 5rem;
    text-align: left;
}
#crafts .lead br {
    display: none;
}
#crafts .crafts_list {
    width: 100%;
}
#crafts .crafts_list li {
    width: 31.5rem;
}
#crafts .crafts_list li .img_wrap {
    width: 100%;
    position: relative;
}
#crafts .crafts_list li .img_wrap img {
    width: 100%;
    height: auto;
}

#crafts .crafts_list li .img_wrap h2 {
    -webkit-writing-mode:horizontal-tb;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
    position: absolute;
    top: 0;
    right: auto;
    left: 0;
    background-color: #e4ddc9;
    padding: 0.5rem 1rem;
}
#crafts .crafts_list li .img_wrap h2 span {
    font-size: 1.6rem;
    letter-spacing: 0.15em;
}
    
#crafts .crafts_list li .txt_wrap {
    padding: 1.5rem 1.5rem;
}
#crafts .crafts_list li .txt_wrap .ttl {
    font-size: 1.8rem;
    margin-bottom: 1rem;
    display: flex;
}
#crafts .crafts_list li .txt_wrap .ttl span {
    display: block;
}
#crafts .crafts_list li .txt_wrap .txt {
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(26/14);
}

#crafts .arrow_wrap {
    width: 31.5rem;
    top: 9rem;
}
#crafts .slider_arrow {
    width: 2.8rem;
    height: 2.8rem;
}
#crafts .slider_arrow.prev {
    left: 0;
    transform: translate(-50%, 0);
}
#crafts .slider_arrow.next {
    right: 0;
    transform: translate(50%, 0);
}
  
#crafts .btn_wrap {
    margin-top: 2rem;
}
#crafts .btn_wrap .btn2 {
    width: 26.6rem;
    height: 5.8rem;
}
}



/* #product
----------------------------------------- */
#product {
    background-color: #e4ddc9;
    position: relative;
}
#product .inner {
    width: calc(100% - 10rem);
    max-width: 106rem;
}

#product h1 {
    font-size: 15rem;
	letter-spacing: 0.03em;
    font-weight: 300;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
    color: #474747;
}
#product h1 span {
}
#product h1 span.anim {
  opacity: 0;
	filter: none;
    transform: translateY(0);
    transform: translateX(-1rem);
	 -webkit-transition: all .6s;
    transition: all .6s;
}
#product h1 span.anim._do_anim {
  opacity: 0;
  transform: translateY(0);
    transform: translateX(-1rem);
    animation: font2 1s ease-in-out forwards;
}
@keyframes font2 {
      100% {
          opacity: 1;
          transform: translateX(0);
    } 
}


#product .page_navi_wrap {
    margin-top: 6rem;
}
#product .page_navi_wrap .page_navi {
    align-items: center;
    justify-content: center;
}
#product .page_navi_wrap .page_navi > li:not(:last-child) {
    margin-right: 3rem;
}
#product .page_navi_wrap .page_navi a {
    width: 22rem;
    height: 3.6rem;
    box-sizing: border-box;
    border: 1px solid #231815;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
#product .page_navi_wrap .page_navi a span {
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    padding-right: 1rem;
}
#product .page_navi_wrap .page_navi a::after {
    content: "";
    display: block;
    width: 1.1rem;
    height: 0.6rem;
    background: url(../images/pd_b.svg) no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translate(0,-50%);
}

/*#product .page_navi_wrap .page_navi a.made {
    border: 1px solid #707070;
}
#product .page_navi_wrap .page_navi a.made span {
    color: #707070;
}
#product .page_navi_wrap .page_navi a.made::after {
    background: url(../images/pd_g.svg) no-repeat center center;
    background-size: contain;
}*/


#product .year_navi_wrap {
    margin-top: 4rem;
}
#product .year_navi_wrap .year_navi {
    align-items: center;
    justify-content: center;
}
#product .year_navi_wrap .year_navi > li:not(:last-child) {
    margin-right: 1rem;
}
#product .year_navi_wrap .year_navi a {
    width: 11rem;
    height: 3rem;
    box-sizing: border-box;
    border: none;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
#product .year_navi_wrap .year_navi a span {
    font-size: 1.4rem;
    letter-spacing: 0.15em;
    padding-right: 1rem;
}
#product .year_navi_wrap .year_navi a::after {
    content: "";
    display: block;
    width: 1.1rem;
    height: 0.6rem;
    background: url(../images/pd_b.svg) no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translate(0,-50%);
}

#product .year_navi_wrap .year_navi > li {
    display: block;
}

#product .year_navi_wrap .year_navi > li:nth-child(1) a {
    background-color: #76a39a;
}
#product .year_navi_wrap .year_navi > li:nth-child(2) a {
    background-color: #ccad6e;
}
#product .year_navi_wrap .year_navi > li:nth-child(3) a {
    background-color: #8db2c9;
}


#product #made {
    width: 100%;
}
#product #made .inner {
    width: 100%;
    max-width: none;
    padding-top: 10rem;
    padding-bottom: 10rem;
}
#product #made h2 {
    font-size: 6rem;
	letter-spacing: 0.10em;
    line-height: 1;
    font-weight: 300;
    text-align: center;
    color: #474747;
}
#product #made .lead {
    width: 100%;
    max-width: 68rem;
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    line-height: calc(23/13);
    color: #707070;
    text-align: center;
    margin: auto;
    margin-top: 3rem;
}

#product #made .coming_soon {
    text-align: center;
    color: #707070;
    margin-top: 5rem;
}
#product #made .coming_soon .fukidashi {
    font-size: 2.2rem;
    letter-spacing: 0.05em;
    line-height: calc(30/22);
    display: flex;
    align-items: center;
    justify-content: center;
}
#product #made .coming_soon .fukidashi::before {
    content: "";
    display: block;
    width: 0.2rem;
    height: 2.5rem;
    border-radius: 10rem;
    background-color: #707070;
    transform: rotate(-30deg);
    margin-right: 1rem;
}
#product #made .coming_soon .fukidashi::after {
    content: "";
    display: block;
    width: 0.2rem;
    height: 2.5rem;
    border-radius: 10rem;
    background-color: #707070;
    transform: rotate(30deg);
    margin-left: 1rem;
}
#product #made .coming_soon .date {
    font-size: 3.7rem;
    letter-spacing: 0.05em;
    line-height: calc(30/37);
    margin-top: 1.0rem;
}
#product #made .coming_soon .txt_wrap {
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    line-height: calc(23/13);
    margin-top: 2rem;
}

#product #made .pd {
    width: 100%;
    max-width: calc(100% - 2rem);
    margin: auto;
    position: relative;
    z-index: 1;
}
#product #made .pd::before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #000000;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: -1;
}
#product #made .pd .pd_btn {
    width: 16rem;
    background-color: #e4ddc9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.2rem;
    letter-spacing: 0.1em;
    line-height: 1;
    font-weight: 400;
    color: #474747;
}
#product #made .pd .pd_btn img {
    margin-left: 1rem;
    transition: all .6s;
}
#product #made .pd .pd_btn.open img {
    transform: rotate(180deg);
}
#product #made .product_list_wrap {
    /*display: none;*/
}
#product #made .product_list {
    width: calc(calc(1032/1400*100%) + 12rem);
    margin: auto;
    padding-top: 6rem;
    justify-content: center;
}
#product #made .product_list li {
    display: flex;
    flex-wrap: wrap;
    width: calc(332/1032*100%);
    /*min-width: 30rem;*/
    letter-spacing: 0.1em;
    padding: 0 2rem;
    margin-bottom: 6rem;
}
#product #made .product_list li a {
    display: flex;
    flex-flow: column;
}

#product #made .product_list li .img_wrap {
    width: 100%;
    position: relative;
    border-radius: 1rem;
}
#product #made .product_list li .img_wrap::before {
    content: "";
    display: block;
    position: absolute;
    top: -0.1rem;
    left: -0.1rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.1rem 1.1rem 0 0;
    border-color: #e4ddc9 transparent transparent transparent;
    z-index: 2;
}
#product #made .product_list li .img_wrap::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -0.1rem;
    right: -0.1rem;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 1.1rem 1.1rem;
    border-color: transparent transparent #e4ddc9 transparent;
    z-index: 2;
}
#product #made .product_list li .img_wrap .category {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #FFFFFF;
    padding: 0.6rem 1rem;
}
#product #made .product_list li .img_wrap .category span {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1;
}

#product #made .product_list li .img_wrap img {
    width: 100%;
    height: auto;
}

#product #made .product_list li .txt_wrap {
    margin-top: 1.5rem;
    height: 100%;
    display: flex;
    flex-flow: column;
}
#product #made .product_list li .txt_wrap h3 {
    font-size: 2.4rem;
    line-height: calc(38/24);
    font-weight: 300;
}
#product #made .product_list li .txt_wrap .sub {
    font-size: 1.6rem;
    line-height: calc(25/16);
    font-weight: 300;
    color: #666666;
    margin-top: 0.3rem;
}
#product #made .product_list li .txt_wrap .producer {
    font-size: 1.6rem;
    line-height: calc(20/16);
    margin-top: 1rem;
    position: relative;
}
#product #made .product_list li .txt_wrap .producer::before {
    content: "";
    display: block;
    width: 6.4rem;
    height: 6.4rem;
    background: url(../images/made_x.svg) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0.5rem;
    right: 0;
}
#product #made .product_list li .txt_wrap .producer::after {
    content: "";
    display: block;
    width: 14rem;
    height: 0.2rem;
    background-color: #FFFFFF;
    margin-top: 1.0rem;
}

#product #made .product_list li .txt_wrap .people_wrap {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-top: auto;
    padding-top: 1.5rem;
}

#product #made .product_list li .txt_wrap .people_wrap .people {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
}
#product #made .product_list li .txt_wrap .people_wrap .people .img {
    margin: auto;
    width: 7rem;
    height: 7rem;
}
#product #made .product_list li .txt_wrap .people_wrap .people .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    overflow: hidden;
}
#product #made .product_list li .txt_wrap .people_wrap .people .position {
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    line-height: calc(16/12);
    font-weight: 300;
    text-align: center;
    margin-top: 1rem;
}
#product #made .product_list li .txt_wrap .people_wrap .people .name {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1;
    font-weight: 300;
    text-align: center;
    margin-top: 0.5rem;
}

#product #made .product_list li .txt_wrap .people_wrap .collabo {
    margin: auto 2rem;
    width: 6.5rem;
    height: 6.5rem;
    position: relative;
}
#product #made .product_list li .txt_wrap .people_wrap .collabo::before {
    content: '';
    display: block;
    width: 9rem;
    height: 0.2rem;
    background-color: #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: rotate(45deg) translate(-50%,-50%);
    transform-origin:0 0;
}
#product #made .product_list li .txt_wrap .people_wrap .collabo::after {
    content: '';
    display: block;
    width: 9rem;
    height: 0.2rem;
    background-color: #FFFFFF;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: rotate(-45deg) translate(-50%,-50%);
    transform-origin:0 0;
}


#product #made .product_list li .txt_wrap > .designer {
    font-size: 1.6rem;
    line-height: calc(16/16);
    margin-top: 1.0rem;
}
#product #made .product_list li .txt_wrap > .designer span {
    display: block;
    font-size: 1.2rem;
    line-height: calc(16/12);
    margin-bottom: 0.5rem;
}

#product #made .product_list li .txt_wrap .txt {
    font-size: 1.3rem;
    letter-spacing: 0.2em;
    line-height: calc(24/13);
    margin-top: 1rem;
}

#product #made .inner > .btn_wrap {
}

#product #made .bn_list_wrap {
    width: 100%;
    max-width: 100rem;
    margin: auto;
    margin-top: 8rem;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 3rem 7rem;
}
#product #made .bn_list_wrap .bn_con {
    width: 46.5rem;
    height: 15rem;
    border-radius: 0.5rem;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}
#product #made .bn_list_wrap .bn_con .ttl {
    font-size: 3rem;
    letter-spacing: 0.15em;
    font-weight: 500;
    color: #FFFFFF;
    text-align: center;
}
#product #made .bn_list_wrap .bn_con .img {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
}
#product #made .bn_list_wrap .bn_con .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#product #found {
    width: 100%;
    background-color: #FFFFFF;
}
#product #found .inner {
    padding-top: 10rem;
    padding-bottom: 15rem;
}
#product #found h2 {
    font-size: 6rem;
	letter-spacing: 0.10em;
    line-height: 1;
    font-weight: 300;
    text-align: center;
    color: #474747;
}
#product #found .lead {
    width: 100%;
    max-width: 68rem;
    font-size: 1.4rem;
    letter-spacing: 0.2em;
    line-height: calc(24/14);
    color: #707070;
    text-align: center;
    margin: auto;
    margin-top: 4rem;
    margin-bottom: 6rem;
}


#product #found .product_list {
    width: 100%;
    max-width: 100rem;
    margin: auto;
}
#product #found .product_list li {
    width: calc(226/1000*100%);
    margin-bottom: 4rem;
}
#product #found .product_list li .img_wrap {
    width: 100%;
}
#product #found .product_list li .img_wrap img {
    width: 100%;
    height: auto;
}

#product #found .product_list li .txt_wrap {
    margin-top: 1.5rem;
}
#product #found .product_list li .txt_wrap h3 {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: calc(22/16);
}
#product #found .product_list li .txt_wrap .sub {
    font-size: 1.0rem;
    letter-spacing: 0.05em;
    line-height: calc(18/10);
    color: #666666;
    margin-top: 0.3rem;
}
#product #found .product_list li .txt_wrap .producer {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    line-height: calc(26/14);
    margin-top: 1rem;
}
#product #found .product_list li .txt_wrap .price {
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: calc(22/15);
    margin-top: 0.5rem;
}
#product #found .product_list li .txt_wrap .txt {
    font-size: 1.2rem;
    letter-spacing: 0.05em;
    line-height: calc(20/12);
    color: #666666;
    margin-top: 1rem;
}

@media screen and (max-width: 1200px) {
#product #made .product_list li {
    width: calc(393/1200*100%);
}
}

@media screen and (max-width: 768px) {
#product {
}
#product .inner {
    width: 31.5rem;
}

#product h1 {
    font-size: 4.5rem;
}
#product .page_navi_wrap {
    margin-top: 3rem;
}
#product .page_navi_wrap .page_navi {
    align-items: center;
    justify-content: center;
}
#product .page_navi_wrap .page_navi > li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 1rem;
}
    
    
#product .year_navi_wrap {
    margin-top: 2rem;
}
#product .year_navi_wrap .year_navi {
    align-items: center;
    justify-content: center;
}
#product .year_navi_wrap .year_navi > li:not(:last-child) {
    margin-right: 1rem;
}

#product #made {
    width: 100%;
}
#product #made .inner {
    padding-top: 8rem;
    padding-bottom: 10rem;
}
#product #made h2 {
    font-size: 3rem;
}
#product #made .lead {
    margin-top: 2rem;
}

#product #made .coming_soon {
    margin-top: 3rem;
}
    
#product #made .pd {
    max-width: 34.5rem;
}

#product #made .pd .pd_btn {
    width: 15rem;
    height: 4rem;
    padding: 0 1.5rem;
    border: 1px solid #474747;
    border-radius: 10rem;
    background-color: #e4ddc9;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1;
    font-weight: 400;
    color: #474747;
}
#product #made .pd .pd_btn img {
    margin-left: 1rem;
    transition: all .6s;
}
#product #made .pd .pd_btn.open img {
    transform: rotate(180deg);
}
    
    
#product #made .product_list {
    width: 31.5rem;
    padding-top: 4rem;
}
#product #made .product_list li {
    width: 100%;
    padding: 0;
    margin: 0;
    margin-bottom: 5rem;
}
#product #made .product_list li .img_wrap {
    border-radius: 1rem;
}
#product #made .product_list li .img_wrap::before {
    border-width: 1.1rem 1.1rem 0 0;
}
#product #made .product_list li .img_wrap::after {
    border-width: 0 0 1.1rem 1.1rem;
}
#product #made .product_list li .img_wrap .category {
    padding: 0.6rem 1rem;
}
#product #made .product_list li .img_wrap .category span {
    font-size: 1.6rem;
}

#product #made .product_list li .txt_wrap {
    margin-top: 1.5rem;
}
#product #made .product_list li .txt_wrap h3 {
    font-size: 2.4rem;
}
#product #made .product_list li .txt_wrap .sub {
    font-size: 1.8rem;
    margin-top: 0.3rem;
}
#product #made .product_list li .txt_wrap .producer {
    font-size: 1.6rem;
    margin-top: 1rem;
}
#product #made .product_list li .txt_wrap .producer::before {
    width: 6.4rem;
    height: 6.4rem;
    top: 0.5rem;
    right: 0;
}
#product #made .product_list li .txt_wrap .producer::after {
    width: 14rem;
    height: 0.2rem;
    margin-top: 1.0rem;
}
#product #made .product_list li .txt_wrap > .designer {
    font-size: 1.6rem;
}
#product #made .product_list li .txt_wrap > .designer span {
    font-size: 1.2rem;
}

#product #made .product_list li .txt_wrap .txt {
    font-size: 1.3rem;
    margin-top: 1rem;
}

#product #made .bn_list_wrap {
    width: 34.5rem;
    margin: auto;
    margin-top: 8rem;
    gap: 2.5rem 0;
}
#product #made .bn_list_wrap .bn_con {
    width: 100%;
    height: 17.2rem;
    border-radius: 0.3rem;
}
#product #made .bn_list_wrap .bn_con .ttl {
    font-size: 2.4rem;
}

#product #found {
}
#product #found .inner {
    padding-top: 8rem;
    padding-bottom: 16rem;
}
#product #found h2 {
    font-size: 3rem;
}
#product #found .lead {
    margin-top: 2rem;
    margin-bottom: 4rem;
    text-align: left;
}
#product #found .lead br {
    display: none;
}

#product #found .product_list {
    width: 31.5rem;
    margin: auto;
}
#product #found .product_list li {
    width: calc(148/315*100%);
    margin-bottom: 3rem;
}

#product #found .product_list li .txt_wrap {
    margin-top: 1.0rem;
}
#product #found .product_list li .txt_wrap h3 {
    font-size: 1.6rem;
}
#product #found .product_list li .txt_wrap .producer {
    font-size: 1.3rem;
    margin-top: 0.5rem;
}
#product #found .product_list li .txt_wrap .price {
    font-size: 1.5rem;
    margin-top: 0.3rem;
}
#product #found .product_list li .txt_wrap .txt {
    font-size: 1.1rem;
    margin-top: 0.5rem;
}
}

