@charset "UTF-8";
.con-news .box-news, .con-about .box-about.item1, .con-about .box-about.item2, .con-about .box-about.item3, .con-about .box-about.item4, .con-product .box-appeal .inner-appeal, .con-product .box-product .list-product, .con-company .con-sdgs, .con-company .box-company { max-width: 1200px; margin-left: auto; margin-right: auto; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-news .box-news, .con-about .box-about.item1, .con-about .box-about.item2, .con-about .box-about.item3, .con-about .box-about.item4, .con-product .box-appeal .inner-appeal, .con-product .box-product .list-product, .con-company .con-sdgs, .con-company .box-company { width: 96%; } }
@media print { .con-news .box-news, .con-about .box-about.item1, .con-about .box-about.item2, .con-about .box-about.item3, .con-about .box-about.item4, .con-product .box-appeal .inner-appeal, .con-product .box-product .list-product, .con-company .con-sdgs, .con-company .box-company { width: 96%; } }
.ie8 .con-news .box-news, .con-news .ie8 .box-news, .ie8 .con-about .box-about.item1, .con-about .ie8 .box-about.item1, .ie8 .con-about .box-about.item2, .con-about .ie8 .box-about.item2, .ie8 .con-about .box-about.item3, .con-about .ie8 .box-about.item3, .ie8 .con-about .box-about.item4, .con-about .ie8 .box-about.item4, .ie8 .con-product .box-appeal .inner-appeal, .con-product .box-appeal .ie8 .inner-appeal, .ie8 .con-product .box-product .list-product, .con-product .box-product .ie8 .list-product, .ie8 .con-company .con-sdgs, .con-company .ie8 .con-sdgs, .ie8 .con-company .box-company, .con-company .ie8 .box-company { width: 96%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-news .box-news, .con-about .box-about.item1, .con-about .box-about.item2, .con-about .box-about.item3, .con-about .box-about.item4, .con-product .box-appeal .inner-appeal, .con-product .box-product .list-product, .con-company .con-sdgs, .con-company .box-company { width: 92%; } }
@media only screen and (max-width: 767px) { .con-news .box-news, .con-about .box-about.item1, .con-about .box-about.item2, .con-about .box-about.item3, .con-about .box-about.item4, .con-product .box-appeal .inner-appeal, .con-product .box-product .list-product, .con-company .con-sdgs, .con-company .box-company { width: 89.4%; } }

/*Animate */
/* ----------------------------------------------------------- .con-mainvisual
----------------------------------------------------------- */
.con-mainvisual { background-color: #000; position: relative; height: calc(100vh + 110px); }
@media only screen and (max-width: 1024px) { .con-mainvisual { overflow: hidden; height: calc(100vh + 80px); } }
.con-mainvisual:before, .con-mainvisual:after { content: ""; position: absolute; width: 0; height: 0; }
.con-mainvisual:before { top: 0; left: 0; border-top: 21vw solid #1E1E1E; border-right: 21vw solid transparent; }
@media only screen and (max-width: 767px) { .con-mainvisual:before { display: none; } }
.con-mainvisual:after { bottom: 0; right: 0; border-bottom: 100vh solid #1E1E1E; border-left: 54.9vw solid transparent; }
@media only screen and (max-width: 767px) { .con-mainvisual:after { border-bottom: 77.1vw solid #1E1E1E; border-left: 77.1vw solid transparent; } }
.con-mainvisual .wrap:before { content: ""; background: url(../images/top/deco-logomark.svg) 0 0 no-repeat; background-size: cover; width: 25.2vw; aspect-ratio: 1/1.012; bottom: -50px; left: 0; position: absolute; }
@media only screen and (max-width: 1024px) { .con-mainvisual .wrap:before { display: none; } }
.con-mainvisual .box-imgs { height: 82.2vh; position: relative; z-index: 1; }
@media only screen and (min-width: 768px) { .con-mainvisual .box-imgs { margin-left: auto; aspect-ratio: 1/0.597; } }
@media print { .con-mainvisual .box-imgs { margin-left: auto; aspect-ratio: 1/0.597; } }
.ie8 .con-mainvisual .box-imgs { margin-left: auto; aspect-ratio: 1/0.597; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-mainvisual .box-imgs { aspect-ratio: inherit; } }
@media only screen and (min-width: 1025px) and (max-width: 1440px) { .con-mainvisual .box-imgs { height: auto; width: 70%; }
  .con-mainvisual .box-imgs .img { overflow: hidden; height: 76.9vh; }
  .con-mainvisual .box-imgs .img img { width: 100%; height: 100%; object-fit: cover; } }
@media print { .con-mainvisual .box-imgs { height: auto; width: 70%; }
  .con-mainvisual .box-imgs .img { overflow: hidden; height: 76.9vh; }
  .con-mainvisual .box-imgs .img img { width: 100%; height: 100%; object-fit: cover; } }
.ie8 .con-mainvisual .box-imgs { height: auto; width: 70%; }
.ie8 .con-mainvisual .box-imgs .img { overflow: hidden; height: 76.9vh; }
.ie8 .con-mainvisual .box-imgs .img img { width: 100%; height: 100%; object-fit: cover; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-imgs { width: 100%; height: auto; margin-top: 40px; } }
@media only screen and (max-width: 1024px) { .con-mainvisual .box-imgs .img { position: relative; }
  .con-mainvisual .box-imgs .img:before, .con-mainvisual .box-imgs .img:after { content: ""; position: absolute; left: 0; width: 100%; height: 38%; background: #000000; background: linear-gradient(180deg, #000000 0%, rgba(0, 0, 0, 0) 100%); }
  .con-mainvisual .box-imgs .img:before { top: 0; }
  .con-mainvisual .box-imgs .img:after { bottom: 0; transform: scale(1, -1); } }
@media only screen and (min-width: 1025px) and (max-width: 1780px) { .con-mainvisual .box-imgs .img { position: relative; overflow: hidden; }
  .con-mainvisual .box-imgs .img:after { content: ""; position: absolute; left: 0; width: 38%; height: 100%; background: #000000; background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%); } }
@media print { .con-mainvisual .box-imgs .img { position: relative; overflow: hidden; }
  .con-mainvisual .box-imgs .img:after { content: ""; position: absolute; left: 0; width: 38%; height: 100%; background: #000000; background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%); } }
.ie8 .con-mainvisual .box-imgs .img { position: relative; overflow: hidden; }
.ie8 .con-mainvisual .box-imgs .img:after { content: ""; position: absolute; left: 0; width: 38%; height: 100%; background: #000000; background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%); }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-mainvisual .box-imgs .img { width: 70%; overflow: hidden; aspect-ratio: 1/1.4; margin-left: auto; }
  .con-mainvisual .box-imgs .img:after { width: 38%; height: 100%; background: #000000; background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%); } }
.con-mainvisual .box-imgs .img img { width: 100%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-mainvisual .box-imgs .img img { height: 100%; object-fit: cover; } }
.con-mainvisual .box-imgs .list-img-sub { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; margin-top: -9.6vh; }
@media only screen and (min-width: 1025px) and (max-width: 1780px) { .con-mainvisual .box-imgs .list-img-sub { position: relative; z-index: 1; } }
@media print { .con-mainvisual .box-imgs .list-img-sub { position: relative; z-index: 1; } }
.ie8 .con-mainvisual .box-imgs .list-img-sub { position: relative; z-index: 1; }
@media only screen and (max-width: 1024px) { .con-mainvisual .box-imgs .list-img-sub { margin-top: -59px; position: relative; z-index: 1; } }
.con-mainvisual .box-imgs .list-img-sub li { height: 22.9vh; overflow: hidden; }
@media only screen and (max-width: 1024px) { .con-mainvisual .box-imgs .list-img-sub li { height: auto; } }
.con-mainvisual .box-imgs .list-img-sub li img { object-fit: cover; width: 100%; height: 100%; }
.con-mainvisual .box-imgs .list-img-sub li:first-child { aspect-ratio: 1/0.563; }
@media only screen and (max-width: 1024px) { .con-mainvisual .box-imgs .list-img-sub li:first-child { width: 33.8vw; } }
.con-mainvisual .box-imgs .list-img-sub li:last-child { aspect-ratio: 1/0.684; }
@media only screen and (max-width: 1024px) { .con-mainvisual .box-imgs .list-img-sub li:last-child { width: 28.2vw; } }
.con-mainvisual .box-txt { text-align: center; color: #fff; position: absolute; top: 0; right: 61.7%; height: 100vh; z-index: 2; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: center; justify-content: center; }
@media only screen and (min-width: 1025px) and (max-width: 1440px) { .con-mainvisual .box-txt { right: auto; left: 5%; } }
@media print { .con-mainvisual .box-txt { right: auto; left: 5%; } }
.ie8 .con-mainvisual .box-txt { right: auto; left: 5%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-mainvisual .box-txt { right: auto; left: 2%; top: -4%; } }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt { position: relative; top: auto; right: auto; height: auto; margin-top: 26px; } }
.con-mainvisual .box-txt h1 { font-size: 1.6rem; font-weight: 700; letter-spacing: 0.15em; line-height: 1; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt h1 { font-size: 1.4rem; } }
.con-mainvisual .box-txt .txt-catchcopy-en { font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; line-height: 1.4; font-size: 1.6vw; font-weight: 500; }
.con-mainvisual .box-txt .txt-catchcopy-en.js-inview-in { animation-delay: .3s; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt .txt-catchcopy-en { font-size: 2.4rem; } }
.con-mainvisual .box-txt .txt-catchcopy-en em { font-size: 3.15vw; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt .txt-catchcopy-en em { font-size: 3.6rem; } }
.con-mainvisual .box-txt .txt-catchcopy-jp { font-size: 1.2rem; letter-spacing: 0.15em; line-height: 1; margin-top: 14px; }
.con-mainvisual .box-txt .txt-catchcopy-jp.js-inview-in { animation-delay: .3s; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt .txt-catchcopy-jp { line-height: 1.4; margin-top: 11px; } }
.con-mainvisual .box-txt .logo { max-width: 260px; margin: 50px auto 30px; }
.con-mainvisual .box-txt .logo.js-inview-in { animation-delay: .6s; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt .logo { max-width: 190px; width: 51.1%; margin: 26px auto 30px; } }
.con-mainvisual .box-txt .button-pagelink { max-width: 264px; width: 50%; margin: 0 auto; height: 60px; }
@media only screen and (max-width: 767px) { .con-mainvisual .box-txt .button-pagelink { width: 70.2%; } }
.con-mainvisual .box-txt .button-pagelink a { background-color: #B88F51; -webkit-border-radius: 9999px; -moz-border-radius: 9999px; -ms-border-radius: 9999px; border-radius: 9999px; display: block; width: 100%; height: 100%; text-align: center; font-size: 1.6rem; font-weight: 500; line-height: 60px; color: #1E1E1E; position: relative; }
@media only screen and (min-width: 1025px) { .con-mainvisual .box-txt .button-pagelink a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-mainvisual .box-txt .button-pagelink a:hover { opacity: 0.6; } }
@media print { .con-mainvisual .box-txt .button-pagelink a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-mainvisual .box-txt .button-pagelink a:hover { opacity: 0.6; } }
.ie8 .con-mainvisual .box-txt .button-pagelink a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-mainvisual .box-txt .button-pagelink a:hover { opacity: 0.6; }
.con-mainvisual .box-txt .button-pagelink a .arrow { background-color: #fff; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50%; position: absolute; bottom: -8px; left: 0; right: 0; margin: 0 auto; width: 20px; height: 20px; }
.con-mainvisual .box-txt .button-pagelink a .arrow:after { content: ""; background: url(../images/common/icon-arrow.svg) center center no-repeat; background-size: 9px auto; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: auto; }

/* ----------------------------------------------------------- .con-news
----------------------------------------------------------- */
.con-news { background-color: #333; padding-bottom: 90px; }
@media only screen and (max-width: 767px) { .con-news { position: relative; padding-bottom: 100px; }
  .con-news:before { content: ""; background-color: #000; width: 100%; height: 100px; position: absolute; top: -1px; left: 0; } }
.con-news .box-news { max-width: 900px; margin: 0 auto; padding: 40px 50px 80px; background-color: #fff; position: relative; z-index: 1; top: -110px; }
@media only screen and (max-width: 767px) { .con-news .box-news { top: 0; padding: 40px 20px 50px; } }
.con-news .box-news .list-news { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; gap: 20px; padding-top: 44px; }
@media only screen and (max-width: 767px) { .con-news .box-news .list-news { padding-top: 50px; } }
.con-news .box-news .list-news .item-news:not(:last-child) { border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
.con-news .box-news .list-news .item-news a { display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; gap: 20px; padding-bottom: 20px; padding-left: 10px; }
@media only screen and (min-width: 1025px) { .con-news .box-news .list-news .item-news a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-news .box-news .list-news .item-news a:hover { opacity: 0.6; } }
@media print { .con-news .box-news .list-news .item-news a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-news .box-news .list-news .item-news a:hover { opacity: 0.6; } }
.ie8 .con-news .box-news .list-news .item-news a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-news .box-news .list-news .item-news a:hover { opacity: 0.6; }
@media only screen and (max-width: 767px) { .con-news .box-news .list-news .item-news a { -webkit-flex-wrap: wrap; flex-wrap: wrap; padding-left: 0; gap: 16px 20px; } }
.con-news .box-news .list-news .item-news a .date { color: #B88F51; line-height: 24px; }
@media only screen and (max-width: 767px) { .con-news .box-news .list-news .item-news a .date { font-size: 1.4rem; } }
.con-news .box-news .list-news .item-news a .category { color: #fff; background-color: #333; width: 110px; font-size: 1.2rem; line-height: 24px; text-align: center; }
.con-news .box-news .list-news .item-news a .post-title { line-height: 24px; width: 68.5%; }
@media only screen and (max-width: 767px) { .con-news .box-news .list-news .item-news a .post-title { width: 100%; font-size: 1.4rem; } }
.con-news .decorative-text { font-family: "Noto Serif JP", serif; color: #B88F51; font-optical-sizing: auto; font-style: normal; font-size: 2.2vw; font-weight: 500; line-height: 64px; text-align: center; }
@media only screen and (max-width: 767px) { .con-news .decorative-text { font-size: 6.2vw; line-height: 160%; margin-top: 40px; } }

/* ----------------------------------------------------------- .con-about
----------------------------------------------------------- */
.con-about { background-color: #000; padding: 100px 0 200px; position: relative; }
@media only screen and (max-width: 767px) { .con-about { padding: 100px 0 90px; } }
.con-about:after { content: ""; background: url(../images/top/deco-about-right.png) 0 0 no-repeat; background-size: contain; width: 37.7%; aspect-ratio: 1/1.156; position: absolute; top: -227px; right: 0; z-index: 1; }
@media only screen and (max-width: 767px) { .con-about:after { display: none; } }
.con-about .box-about { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
@media only screen and (max-width: 1024px) { .con-about .box-about { -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: flex-end; align-items: flex-end; } }
.con-about .box-about h3 { width: 12.5%; overflow: hidden; position: relative; }
@media only screen and (max-width: 767px) { .con-about .box-about h3 { width: 21.3%; } }
.con-about .box-about h3 span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; white-space: pre; color: #B88F51; font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 15rem; letter-spacing: 0.15em; line-height: 1; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-about .box-about h3 span { font-size: 12vw; } }
@media print { .con-about .box-about h3 span { font-size: 12vw; } }
.ie8 .con-about .box-about h3 span { font-size: 12vw; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about h3 span { font-size: 11vw; } }
@media only screen and (max-width: 767px) { .con-about .box-about h3 span { font-size: 19.5vw; } }
.con-about .box-about h3 span:after { content: ""; background-color: #B88F51; width: 1px; height: 100%; top: 2.5em; left: 50%; position: absolute; }
@media only screen and (max-width: 1024px) { .con-about .box-about h3 span:after { display: none; } }
.con-about .box-about .inner-about { width: 84.2%; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; }
@media only screen and (max-width: 1024px) { .con-about .box-about .inner-about { display: contents; width: auto; } }
.con-about .box-about .inner-about .box-txt { color: #fff; margin-top: 50px; width: 53.2%; }
@media only screen and (max-width: 1024px) { .con-about .box-about .inner-about .box-txt { display: contents; width: auto; margin-top: auto; } }
.con-about .box-about .inner-about .box-txt h4 { display: inline-block; }
.con-about .box-about .inner-about .box-txt h4.js-inview-in { animation-delay: .6s; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about .inner-about .box-txt h4 { width: 80%; } }
@media only screen and (max-width: 767px) { .con-about .box-about .inner-about .box-txt h4 { width: 75%; } }
.con-about .box-about .inner-about .box-txt h4 span { display: block; }
.con-about .box-about .inner-about .box-txt h4 span.en { font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 3.2vw; font-weight: 500; line-height: 64px; }
@media only screen and (min-width: 1600px) { .con-about .box-about .inner-about .box-txt h4 span.en { font-size: 4.8rem; } }
@media print { .con-about .box-about .inner-about .box-txt h4 span.en { font-size: 4.8rem; } }
.ie8 .con-about .box-about .inner-about .box-txt h4 span.en { font-size: 4.8rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about .inner-about .box-txt h4 span.en { font-size: 4.8rem; } }
@media only screen and (max-width: 767px) { .con-about .box-about .inner-about .box-txt h4 span.en { line-height: 46px; font-size: 3.2rem; } }
.con-about .box-about .inner-about .box-txt h4 span.jp { font-size: 1.8rem; font-weight: 700; letter-spacing: 0.15em; line-height: 60px; text-align: right; }
@media only screen and (max-width: 767px) { .con-about .box-about .inner-about .box-txt h4 span.jp { font-size: 1.4rem; margin-top: 20px; line-height: 1.4; padding-bottom: 1em; } }
.con-about .box-about .inner-about .box-txt .txt { opacity: 0.7; letter-spacing: 0.07em; line-height: 24px; margin-top: 50px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about .inner-about .box-txt .txt { -webkit-align-self: flex-start; align-self: flex-start; width: 50%; position: relative; padding: 0 20px 0 40px; }
  .con-about .box-about .inner-about .box-txt .txt:after { content: ""; background-color: #B88F51; width: 1px; height: 100%; top: 0; left: 20px; position: absolute; } }
@media only screen and (max-width: 767px) { .con-about .box-about .inner-about .box-txt .txt { width: 100%; position: relative; padding: 0 20px 0 40px; }
  .con-about .box-about .inner-about .box-txt .txt:after { content: ""; background-color: #B88F51; width: 1px; height: 100%; top: 0; left: 20px; position: absolute; } }
.con-about .box-about .inner-about .box-imgs { width: 44.2%; position: relative; margin-top: 50px; }
.con-about .box-about .inner-about .box-imgs.js-inview-in { animation-delay: .3s; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about .inner-about .box-imgs { width: 50%; } }
@media only screen and (max-width: 767px) { .con-about .box-about .inner-about .box-imgs { width: 100%; margin-top: 40px; } }
.con-about .box-about.item1 { max-width: 1200px; position: relative; margin-top: 48px; }
@media only screen and (max-width: 1024px) { .con-about .box-about.item1 { width: 100%; margin-top: 76px; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item1 .inner-about .box-txt h4 { padding-right: 20px; } }
@media only screen and (max-width: 1024px) { .con-about .box-about.item1 .inner-about .box-txt h4 span.en { text-align: right; } }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-about .box-about.item1 .inner-about .box-imgs { padding-bottom: 120px; } }
@media print { .con-about .box-about.item1 .inner-about .box-imgs { padding-bottom: 120px; } }
.ie8 .con-about .box-about.item1 .inner-about .box-imgs { padding-bottom: 120px; }
@media only screen and (max-width: 767px) { .con-about .box-about.item1 .inner-about .box-imgs .img { width: 65.2%; margin-left: auto; } }
.con-about .box-about.item1 .inner-about .box-imgs figure { width: 55rem; position: absolute; right: 84.8%; bottom: 0; display: -webkit-flex; display: flex; }
@media only screen and (min-width: 768px) { .con-about .box-about.item1 .inner-about .box-imgs figure { -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: flex-end; align-items: flex-end; } }
@media print { .con-about .box-about.item1 .inner-about .box-imgs figure { -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: flex-end; align-items: flex-end; } }
.ie8 .con-about .box-about.item1 .inner-about .box-imgs figure { -webkit-justify-content: flex-end; justify-content: flex-end; -webkit-align-items: flex-end; align-items: flex-end; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item1 .inner-about .box-imgs figure { width: 45rem; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item1 .inner-about .box-imgs figure { width: 100%; position: static; -webkit-flex-direction: column; flex-direction: column; } }
.con-about .box-about.item1 .inner-about .box-imgs figure img { width: 31rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item1 .inner-about .box-imgs figure img { width: 23rem; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item1 .inner-about .box-imgs figure img { width: 38vw; position: absolute; bottom: 0; left: 10px; } }
.con-about .box-about.item1 .inner-about .box-imgs figure figcaption { position: relative; padding-left: 1em; font-size: 1.2rem; letter-spacing: 0.07em; opacity: 0.7; color: #fff; right: -2rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item1 .inner-about .box-imgs figure figcaption { right: 0; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item1 .inner-about .box-imgs figure figcaption { width: 95%; position: absolute; bottom: -5em; left: 20px; right: auto; } }
.con-about .box-about.item1 .inner-about .box-imgs figure figcaption:before { content: "＊"; position: absolute; top: 0; left: 0; }
.con-about .box-about.item2 { max-width: 1200px; margin-top: 150px; }
@media only screen and (max-width: 767px) { .con-about .box-about.item2 { width: 100%; } }
.con-about .box-about.item2 h3 { order: 2; }
@media only screen and (min-width: 1025px) { .con-about .box-about.item2 .inner-about { order: 1; } }
@media print { .con-about .box-about.item2 .inner-about { order: 1; } }
.ie8 .con-about .box-about.item2 .inner-about { order: 1; }
@media only screen and (min-width: 1025px) { .con-about .box-about.item2 .inner-about .box-txt { order: 2; } }
@media print { .con-about .box-about.item2 .inner-about .box-txt { order: 2; } }
.ie8 .con-about .box-about.item2 .inner-about .box-txt { order: 2; }
@media only screen and (max-width: 1024px) { .con-about .box-about.item2 .inner-about .box-txt h4 { order: 1; padding-left: 20px; } }
.con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 2.85vw; }
@media only screen and (min-width: 1600px) { .con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
@media print { .con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
.ie8 .con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 3.8rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item2 .inner-about .box-txt h4 span.en { font-size: 3.2rem; } }
@media only screen and (max-width: 1024px) { .con-about .box-about.item2 .inner-about .box-txt h4 span.jp { text-align: left; } }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item2 .inner-about .box-txt .txt { order: 4; padding: 0 40px 0 22px; }
  .con-about .box-about.item2 .inner-about .box-txt .txt:after { left: auto; right: 20px; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item2 .inner-about .box-txt .txt { order: 3; padding: 0 40px 0 22px; }
  .con-about .box-about.item2 .inner-about .box-txt .txt:after { left: auto; right: 20px; } }
.con-about .box-about.item2 .inner-about .box-imgs { order: 1; padding-right: 50px; width: 40vw; margin-left: calc(50% - 50vw); }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item2 .inner-about .box-imgs { -webkit-align-self: flex-start; align-self: flex-start; margin-left: 0; padding-right: 0; order: 3; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item2 .inner-about .box-imgs { order: 4; width: 94.7%; margin-left: 0; padding-right: 0; } }
.con-about .box-about.item3 { max-width: 1200px; margin-top: 150px; position: relative; }
@media only screen and (max-width: 1024px) { .con-about .box-about.item3 { width: 100%; margin-top: 124px; } }
.con-about .box-about.item3 h3 span:after { top: 4.5em; }
.con-about .box-about.item3 .inner-about:before { content: ""; background: url(../images/top/deco-logomark.svg) 0 0 no-repeat; background-size: cover; width: 40.3%; aspect-ratio: 1/1.012; position: absolute; top: 25px; right: 0; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item3 .inner-about:before { top: 40%; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item3 .inner-about:before { width: 69.7%; top: auto; bottom: 121px; right: auto; left: 20px; } }
.con-about .box-about.item3 .inner-about .box-txt h4.js-inview-in { animation-delay: .3s; }
@media only screen and (max-width: 767px) { .con-about .box-about.item3 .inner-about .box-txt h4 { padding-right: 20px; } }
@media only screen and (max-width: 1024px) { .con-about .box-about.item3 .inner-about .box-txt h4 span.en { text-align: right; } }
.con-about .box-about.item3 .inner-about .box-imgs { position: absolute; bottom: 0; right: calc(50% - 50vw); width: 37.1vw; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item3 .inner-about .box-imgs { right: 0; width: 50%; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item3 .inner-about .box-imgs { position: static; margin-top: 73px; width: 88.8%; margin-left: auto; } }
.con-about .box-about.item3 .inner-about .box-imgs .img { width: 100%; aspect-ratio: 1/1.05; overflow: hidden; }
.con-about .box-about.item3 .inner-about .box-imgs .img img { width: 100%; height: 100%; object-fit: cover; }
.con-about .box-about.item4 { max-width: 1200px; margin-top: 150px; overflow: hidden; }
@media only screen and (max-width: 1024px) { .con-about .box-about.item4 { width: 100%; margin-top: 124px; } }
.con-about .box-about.item4 h3 { order: 2; }
@media only screen and (min-width: 1025px) { .con-about .box-about.item4 .inner-about { order: 1; } }
@media print { .con-about .box-about.item4 .inner-about { order: 1; } }
.ie8 .con-about .box-about.item4 .inner-about { order: 1; }
@media only screen and (min-width: 1025px) { .con-about .box-about.item4 .inner-about .box-txt { order: 2; } }
@media print { .con-about .box-about.item4 .inner-about .box-txt { order: 2; } }
.ie8 .con-about .box-about.item4 .inner-about .box-txt { order: 2; }
@media only screen and (max-width: 1024px) { .con-about .box-about.item4 .inner-about .box-txt h4 { order: 1; padding-left: 20px; } }
.con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 2.85vw; }
@media only screen and (min-width: 1600px) { .con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
@media print { .con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
.ie8 .con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 3.8rem; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 3.8rem; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item4 .inner-about .box-txt h4 span.en { font-size: 3.2rem; } }
@media only screen and (max-width: 1024px) { .con-about .box-about.item4 .inner-about .box-txt h4 span.jp { text-align: left; letter-spacing: 0; } }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item4 .inner-about .box-txt .txt { order: 4; padding: 0 40px 0 22px; }
  .con-about .box-about.item4 .inner-about .box-txt .txt:after { left: auto; right: 20px; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item4 .inner-about .box-txt .txt { order: 3; padding: 0 40px 0 22px; }
  .con-about .box-about.item4 .inner-about .box-txt .txt:after { left: auto; right: 20px; } }
.con-about .box-about.item4 .inner-about .box-imgs { order: 1; padding-right: 30px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-about .box-about.item4 .inner-about .box-imgs { -webkit-align-self: flex-start; align-self: flex-start; order: 3; width: 50%; padding-right: 0; } }
@media only screen and (max-width: 767px) { .con-about .box-about.item4 .inner-about .box-imgs { order: 4; width: 94.7%; padding-right: 0; } }
.con-about .box-about.item4 .inner-about .box-imgs .img { display: inline-block; width: 100%; }

/* ----------------------------------------------------------- .con-gallery
----------------------------------------------------------- */
.con-gallery { width: 100%; }
.con-gallery .gallery-wrap { display: -webkit-flex; display: flex; overflow: hidden; }
.con-gallery .gallery-wrap .gallery-list { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; animation: infinity-scroll-left 60s infinite linear 0.5s both; }
.con-gallery .gallery-wrap .gallery-list .gallery-item { width: 20vw; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-gallery .gallery-wrap .gallery-list .gallery-item { width: 33vw; } }
@media only screen and (max-width: 767px) { .con-gallery .gallery-wrap .gallery-list .gallery-item { width: 33.33vw; } }

@keyframes infinity-scroll-left { from { transform: translateX(0); }
  to { transform: translateX(-100%); } }
/* ----------------------------------------------------------- .con-product
----------------------------------------------------------- */
.con-product { padding-top: 200px; }
@media only screen and (max-width: 767px) { .con-product { padding-top: 100px; } }
.con-product .box-appeal { background-color: #B88F51; position: relative; margin-top: 105px; padding-top: 50px; }
@media only screen and (max-width: 767px) { .con-product .box-appeal { margin-top: 140px; padding-top: 20px; } }
.con-product .box-appeal:before, .con-product .box-appeal:after { content: ""; position: absolute; width: 0; height: 0; left: 0; }
.con-product .box-appeal:before { top: -99px; border-bottom: 100px solid #B88F51; border-left: 100vw solid transparent; }
.con-product .box-appeal:after { bottom: -99px; border-top: 100px solid #B88F51; border-right: 100vw solid transparent; }
.con-product .box-appeal .inner-appeal h3 { text-align: center; font-size: 2.4rem; font-weight: 700; line-height: 60px; color: #000; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-appeal .inner-appeal h3 { font-size: 2rem; } }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal h3 { line-height: 30px; font-size: 1.6rem; } }
.con-product .box-appeal .inner-appeal .list-appeal { margin-top: 50px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; gap: 26px; padding-bottom: 160px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-appeal .inner-appeal .list-appeal { padding-bottom: 24px; } }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .list-appeal { margin-top: 70px; -webkit-flex-direction: column; flex-direction: column; padding-bottom: 18px; } }
.con-product .box-appeal .inner-appeal .list-appeal li { display: inline-block; position: relative; }
.con-product .box-appeal .inner-appeal .list-appeal li .txt { text-align: center; position: relative; z-index: 1; }
.con-product .box-appeal .inner-appeal .list-appeal li .txt span { color: #000; }
.con-product .box-appeal .inner-appeal .list-appeal li .txt span.en { font-size: 8rem; line-height: 64px; font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
@media only screen and (max-width: 1024px) { .con-product .box-appeal .inner-appeal .list-appeal li .txt span.en { font-size: 6rem; } }
.con-product .box-appeal .inner-appeal .list-appeal li .txt span.jp { font-size: 1.8rem; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .list-appeal li .txt span.jp { font-size: 1.4rem; } }
.con-product .box-appeal .inner-appeal .list-appeal li .deco { font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 12rem; letter-spacing: 0.3em; position: absolute; top: -0.8em; left: -0.7em; color: #fff; opacity: 0.2; display: inline-block; z-index: 0; line-height: 1; }
@media only screen and (max-width: 1024px) { .con-product .box-appeal .inner-appeal .list-appeal li .deco { font-size: 8rem; line-height: 100px; letter-spacing: 0.1em; } }
.con-product .box-appeal .inner-appeal .list-appeal li .deco span { writing-mode: tb-rl; writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; text-align: left; display: inline-block; line-height: 1; white-space: pre; }
.con-product .box-appeal .inner-appeal .list-appeal li .cross { width: 120px; }
@media only screen and (max-width: 1024px) { .con-product .box-appeal .inner-appeal .list-appeal li .cross { width: 60px; }
  .con-product .box-appeal .inner-appeal .list-appeal li .cross img { width: 100%; } }
.con-product .box-appeal .inner-appeal .list-appeal li:last-child .deco { left: auto; right: -0.7em; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .list-appeal li:last-child .deco { right: 0; } }
.con-product .box-appeal .inner-appeal .box-pickup { width: 100%; margin: 0 auto; position: relative; bottom: -100px; z-index: 1; }
.con-product .box-appeal .inner-appeal .box-pickup ul { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: center; justify-content: center; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul { gap: 67px 0; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li { width: 20%; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li { width: 33.33333%; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li a { background-color: #fff; width: 100%; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; -webkit-justify-content: flex-end; justify-content: flex-end; position: relative; text-align: center; height: 140px; gap: 8px; }
@media only screen and (min-width: 1025px) { .con-product .box-appeal .inner-appeal .box-pickup ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-product .box-appeal .inner-appeal .box-pickup ul li a:hover { background-color: #c5c6c8; } }
@media print { .con-product .box-appeal .inner-appeal .box-pickup ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-product .box-appeal .inner-appeal .box-pickup ul li a:hover { background-color: #c5c6c8; } }
.ie8 .con-product .box-appeal .inner-appeal .box-pickup ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-product .box-appeal .inner-appeal .box-pickup ul li a:hover { background-color: #c5c6c8; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li a { height: 100px; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li a:before { content: ""; width: 1px; height: 60px; position: absolute; top: 20px; left: 0; background-color: rgba(0, 0, 0, 0.2); }
.con-product .box-appeal .inner-appeal .box-pickup ul li a .thumb { position: relative; width: 83.6%; margin: 0 auto; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li a .thumb { width: 87.5%; margin-bottom: 2px; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li a .thumb img { max-height: 140px; }
.con-product .box-appeal .inner-appeal .box-pickup ul li a .txt { font-weight: 700; font-size: 1.8rem; letter-spacing: 0.15em; line-height: 1; padding-bottom: 28px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-appeal .inner-appeal .box-pickup ul li a .txt { font-size: 1.4rem; } }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li a .txt { font-size: 1.2rem; letter-spacing: 0; padding-bottom: 17px; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li a .arrow { background-color: #B88F51; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50%; position: absolute; bottom: -11px; left: 0; right: 0; margin: 0 auto; width: 20px; height: 20px; }
.con-product .box-appeal .inner-appeal .box-pickup ul li a .arrow:after { content: ""; background: url(../images/common/icon-arrow.svg) center center no-repeat; background-size: 9px auto; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: auto; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(1) a:before { display: none; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(1) a .thumb { width: 58.6%; margin-bottom: 8px; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(1) a .thumb { width: 75%; margin-bottom: 5px; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(2) a .thumb { width: 58.2%; margin-bottom: 14px; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(2) a .thumb { width: 67%; margin-bottom: 9px; } }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(4) a:before { display: none; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(4) a .thumb { width: 63.8%; margin-bottom: 20px; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(4) a .thumb { width: 76.8%; margin-bottom: 10px; } }
.con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(5) a .thumb { width: 55.6%; margin-bottom: 20px; }
@media only screen and (max-width: 767px) { .con-product .box-appeal .inner-appeal .box-pickup ul li:nth-child(5) a .thumb { width: 76.8%; margin-bottom: 9px; } }
.con-product .box-product { position: relative; padding-bottom: 200px; }
@media only screen and (max-width: 767px) { .con-product .box-product { padding-bottom: 100px; } }
.con-product .box-product:before, .con-product .box-product:after { content: ""; position: absolute; width: 0; height: 0; left: 0; z-index: -1; }
.con-product .box-product:before { top: -120px; border-top: 30.4vw solid #333; border-right: 30.4vw solid transparent; }
.con-product .box-product:after { left: auto; right: 0; bottom: 0; border-bottom: 80vw solid #333; border-left: 80vw solid transparent; }
@media only screen and (min-width: 1025px) and (max-width: 1280px) { .con-product .box-product:after { border-bottom: 110vw solid #333; border-left: 100vw solid transparent; } }
@media print { .con-product .box-product:after { border-bottom: 110vw solid #333; border-left: 100vw solid transparent; } }
.ie8 .con-product .box-product:after { border-bottom: 110vw solid #333; border-left: 100vw solid transparent; }
@media only screen and (min-width: 1680px) { .con-product .box-product:after { border-bottom: 69.5vw solid #333; border-left: 69.5vw solid transparent; } }
@media print { .con-product .box-product:after { border-bottom: 69.5vw solid #333; border-left: 69.5vw solid transparent; } }
.ie8 .con-product .box-product:after { border-bottom: 69.5vw solid #333; border-left: 69.5vw solid transparent; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product:after { border-bottom: 69.5vw solid #333; border-left: 69.5vw solid transparent; } }
.con-product .box-product .button-basic.large { max-width: 600px; width: 84%; margin: 161px auto 0; }
.con-product .box-product .button-basic.large.last { margin-top: 150px; }
@media only screen and (max-width: 767px) { .con-product .box-product .button-basic.large.last { margin-top: 50px; } }
.con-product .box-product .button-basic.large.last a { border: 1px solid #E5E6E8; }
.con-product .box-product .wrap-list-product { position: relative; }
.con-product .box-product .wrap-list-product:before, .con-product .box-product .wrap-list-product:after { content: ""; position: absolute; width: 0; height: 0; right: 0; z-index: -1; border-style: solid; }
.con-product .box-product .wrap-list-product:before { top: -2%; border-width: 54.5vw 54.5vw 54.5vw 0; border-color: transparent #333 transparent transparent; }
@media only screen and (min-width: 1680px) { .con-product .box-product .wrap-list-product:before { border-width: 54.5vw 54.5vw 54.5vw 0; } }
@media print { .con-product .box-product .wrap-list-product:before { border-width: 54.5vw 54.5vw 54.5vw 0; } }
.ie8 .con-product .box-product .wrap-list-product:before { border-width: 54.5vw 54.5vw 54.5vw 0; }
@media only screen and (max-width: 767px) { .con-product .box-product .wrap-list-product:before { top: 2%; border-width: 53.2vw 53.2vw 53.2vw 0; border-color: transparent #333 transparent transparent; } }
.con-product .box-product .wrap-list-product:after { right: auto; left: 0; top: 45%; border-width: 48.1vw 0 48.1vw 48.1vw; border-color: transparent transparent transparent #333; }
@media only screen and (min-width: 1680px) { .con-product .box-product .wrap-list-product:after { top: 42%; } }
@media print { .con-product .box-product .wrap-list-product:after { top: 42%; } }
.ie8 .con-product .box-product .wrap-list-product:after { top: 42%; }
@media only screen and (min-width: 1025px) and (max-width: 1440px) { .con-product .box-product .wrap-list-product:after { top: 52%; } }
@media print { .con-product .box-product .wrap-list-product:after { top: 52%; } }
.ie8 .con-product .box-product .wrap-list-product:after { top: 52%; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .wrap-list-product:after { top: 54%; } }
@media only screen and (max-width: 767px) { .con-product .box-product .wrap-list-product:after { top: 57%; border-width: 53.2vw 0 53.2vw 53.2vw; border-color: transparent transparent transparent #333; } }
@media only screen and (max-width: 1024px) { .con-product .box-product .wrap-list-product .deco-triangle { position: absolute; width: 0; height: 0; bottom: 9%; right: 0; z-index: -1; border-style: solid; border-width: 53.2vw 53.2vw 53.2vw 0; border-color: transparent #333 transparent transparent; } }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .wrap-list-product .deco-triangle { bottom: 6%; border-width: 45vw 45vw 45vw 0; } }
.con-product .box-product .list-product { width: 100%; margin-top: 300px; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; gap: 200px; }
@media only screen and (max-width: 1024px) { .con-product .box-product .list-product { margin-top: 100px; gap: 50px; } }
.con-product .box-product .list-product .item-product { position: relative; overflow: hidden; }
.con-product .box-product .list-product .item-product .img { width: 68.2%; position: absolute; top: 0; right: 0; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product .img { width: 75%; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .img { width: calc(100% - 40px); margin: 0 auto; position: static; } }
.con-product .box-product .list-product .item-product .box-txt { margin-top: 51px; background-color: rgba(255, 255, 255, 0.9); position: relative; z-index: 1; width: 41.3%; margin-left: 50px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product .box-txt { margin-top: 100px; width: 51%; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt { width: 89.4%; margin-left: auto; margin-top: -20px; } }
.con-product .box-product .list-product .item-product .box-txt:after { content: ""; position: absolute; background-position: 0 0; background-repeat: no-repeat; background-size: contain; }
.con-product .box-product .list-product .item-product .box-txt .wrap-outline { border-left: 6px solid #B88F51; padding: 50px 20px 20px 44px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-outline { padding: 30px 23px; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-outline .catchcopy { color: #B88F51; font-size: 1.8rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 14px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-outline .catchcopy { line-height: 1.2; font-size: 1.3rem; margin-bottom: 10px; } }
@media only screen and (max-width: 571px) { .con-product .box-product .list-product .item-product .box-txt .wrap-outline .catchcopy { font-size: 3.6vw; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-outline h3 { display: -webkit-inline-flex; display: inline-flex; -webkit-flex-direction: column; flex-direction: column; }
.con-product .box-product .list-product .item-product .box-txt .wrap-outline h3 span.en { font-family: "Noto Serif JP", serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; font-size: 4.8rem; font-weight: 500; line-height: 64px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-outline h3 span.en { line-height: 1; font-size: 3.2rem; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-outline h3 span.jp { text-align: right; display: inline-block; padding-top: 14px; font-size: 1.8rem; font-weight: 700; letter-spacing: 0.15em; -webkit-align-self: flex-end; align-self: flex-end; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-outline h3 span.jp { font-size: 1.2rem; padding-top: 10px; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail { padding: 30px 30px 50px 50px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-detail { padding: 20px 20px 30px 23px; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .txt { margin-bottom: 50px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-detail .txt { margin-bottom: 30px; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .txt-caption { font-size: 1.8rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 15px; }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .button-basic { max-width: 300px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-detail .button-basic { width: 100%; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .box-buttons { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; gap: 50px; margin-bottom: 30px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product .box-txt .wrap-detail .box-buttons { gap: 30px; margin-bottom: 20px; } }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .txt-notice { font-size: 1.2rem; letter-spacing: 0.07em; opacity: 0.7; position: relative; padding-left: 1em; }
.con-product .box-product .list-product .item-product .box-txt .wrap-detail .txt-notice:before { content: "＊"; position: absolute; top: 0; left: 0; }
.con-product .box-product .list-product .item-product:nth-child(even) .img { right: auto; left: 0; }
.con-product .box-product .list-product .item-product:nth-child(even) .box-txt { margin-left: auto; margin-right: 50px; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(even) .box-txt { margin-right: 0; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(1) .box-txt .wrap-outline { width: 75%; } }
.con-product .box-product .list-product .item-product:nth-child(1) .box-txt:after { background-image: url(../images/top/img-egingrod-sub.png); width: 390px; aspect-ratio: 1/0.638; bottom: 50px; right: -304px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product:nth-child(1) .box-txt:after { right: -330px; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(1) .box-txt:after { width: 35%; top: calc(30px + 1.5em); bottom: auto; right: -10px; } }
@media only screen and (min-width: 768px) { .con-product .box-product .list-product .item-product:nth-child(2) .img { width: 58.6%; } }
@media print { .con-product .box-product .list-product .item-product:nth-child(2) .img { width: 58.6%; } }
.ie8 .con-product .box-product .list-product .item-product:nth-child(2) .img { width: 58.6%; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(2) .box-txt .wrap-outline { width: 70%; } }
.con-product .box-product .list-product .item-product:nth-child(2) .box-txt:after { background-image: url(../images/top/img-reelhandle-sub.png); width: 273px; aspect-ratio: 1/0.908; top: 38%; left: -257px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product:nth-child(2) .box-txt:after { top: 25%; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(2) .box-txt:after { width: 30%; top: calc(30px + 1.5em); left: auto; right: 20px; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(3) .box-txt .wrap-outline { width: 60%; } }
.con-product .box-product .list-product .item-product:nth-child(3) .box-txt:after { background-image: url(../images/top/img-suidjig-sub.png); width: 294px; aspect-ratio: 1/0.726; top: 45%; right: -132px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product:nth-child(3) .box-txt:after { top: 35%; right: -250px; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(3) .box-txt:after { width: 40%; top: 60px; right: 20px; } }
@media only screen and (min-width: 768px) { .con-product .box-product .list-product .item-product:nth-child(4) .img { width: 68.3%; } }
@media print { .con-product .box-product .list-product .item-product:nth-child(4) .img { width: 68.3%; } }
.ie8 .con-product .box-product .list-product .item-product:nth-child(4) .img { width: 68.3%; }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(4) .box-txt .wrap-outline { width: 70%; } }
.con-product .box-product .list-product .item-product:nth-child(4) .box-txt:after { background-image: url(../images/top/img-fishingline-sub.png); width: 400px; aspect-ratio: 1/0.475; bottom: 65px; left: -375px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product:nth-child(4) .box-txt:after { width: 300px; left: -275px; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(4) .box-txt:after { background-image: url(../images/top/img-fishingline-sub-sp.png); aspect-ratio: 1/0.944; width: 30%; top: 60px; left: auto; right: 20px; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(5) .box-txt .wrap-outline { width: 75%; } }
.con-product .box-product .list-product .item-product:nth-child(5) .box-txt:after { background-image: url(../images/top/img-goods-sub.png); width: 230px; aspect-ratio: 1/0.87; top: 51%; right: -114px; }
@media only screen and (min-width: 768px) and (max-width: 1024px) { .con-product .box-product .list-product .item-product:nth-child(5) .box-txt:after { top: 40%; } }
@media only screen and (max-width: 767px) { .con-product .box-product .list-product .item-product:nth-child(5) .box-txt:after { width: 25%; top: 60px; right: 20px; } }

/* ----------------------------------------------------------- .con-company
----------------------------------------------------------- */
.con-company { background: url(../images/top/bg-company.jpg) center 0 no-repeat; background-size: contain; padding-top: 303px; overflow: hidden; }
@media only screen and (max-width: 767px) { .con-company { padding-top: 200px; } }
.con-company .con-sdgs { background: #fff url(../images/top/img-sdgs.jpg) right 0 no-repeat; background-size: cover; padding: 63px 90px 73px; max-width: 1000px; }
@media only screen and (max-width: 767px) { .con-company .con-sdgs { background-image: none; padding: 0; } }
@media only screen and (max-width: 767px) { .con-company .con-sdgs .box-txt { text-align: center; padding: 50px 24px; } }
.con-company .con-sdgs .box-txt h3 { font-size: 2.4rem; font-weight: 700; letter-spacing: 0.15em; margin-bottom: 32px; }
@media only screen and (max-width: 767px) { .con-company .con-sdgs .box-txt h3 { font-size: 1.5rem; margin-bottom: 20px; letter-spacing: 0; } }
.con-company .con-sdgs .box-txt h2 { max-width: 526px; width: 40em; }
@media only screen and (max-width: 767px) { .con-company .con-sdgs .box-txt h2 { width: 100%; } }
.con-company .con-sdgs .box-txt .txt-caption { font-size: 1.6rem; font-weight: 500; letter-spacing: 0.1em; opacity: 0.7; margin-top: 24px; }
@media only screen and (max-width: 767px) { .con-company .con-sdgs .box-txt .txt-caption { font-size: 1.2rem; margin-top: 20px; letter-spacing: 0.07em; } }
.con-company .con-sdgs .box-txt .txt-link { margin-top: 46px; }
.con-company .con-sdgs .box-txt .txt-link a { display: -webkit-inline-flex; display: inline-flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: center; align-items: center; gap: 12px; color: #1099D9; font-size: 1.6rem; font-weight: 700; padding: 0 10px 10px; border-bottom: 1px solid #1099D9; }
@media only screen and (min-width: 1025px) { .con-company .con-sdgs .box-txt .txt-link a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-company .con-sdgs .box-txt .txt-link a:hover { opacity: 0.6; } }
@media print { .con-company .con-sdgs .box-txt .txt-link a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-company .con-sdgs .box-txt .txt-link a:hover { opacity: 0.6; } }
.ie8 .con-company .con-sdgs .box-txt .txt-link a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-company .con-sdgs .box-txt .txt-link a:hover { opacity: 0.6; }
.con-company .con-sdgs .box-txt .txt-link a .arrow { background-color: #1099D9; -webkit-border-radius: 50%; -moz-border-radius: 50%; -ms-border-radius: 50%; border-radius: 50%; position: relative; display: inline-block; width: 20px; height: 20px; }
.con-company .con-sdgs .box-txt .txt-link a .arrow:after { content: ""; background: url(../images/common/icon-arrow-wh.svg) center center no-repeat; background-size: auto 9px; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: auto; }
.con-company .box-company { max-width: 800px; background-color: #fff; -moz-box-shadow: 0 0 30px rgba(0, 0, 0, 0.16); -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.16); box-shadow: 0 0 30px rgba(0, 0, 0, 0.16); padding-top: 100px; margin-top: 200px; margin-bottom: 30px; }
@media only screen and (max-width: 767px) { .con-company .box-company { margin-top: 100px; padding-top: 50px; } }
.con-company .box-company table { width: 100%; margin: 90px auto 100px; }
@media only screen and (max-width: 767px) { .con-company .box-company table { width: calc(100% - 40px); margin: 54px auto 37px; } }
@media only screen and (max-width: 767px) { .con-company .box-company table tr:last-child td { border-bottom: none; } }
@media only screen and (max-width: 767px) { .con-company .box-company table tr th, .con-company .box-company table tr td { display: block; width: 100%; } }
.con-company .box-company table tr th { font-weight: 700; letter-spacing: 0.15em; padding: 25px 50px; text-align: right; }
@media only screen and (min-width: 768px) { .con-company .box-company table tr th { width: 30%; } }
@media print { .con-company .box-company table tr th { width: 30%; } }
.ie8 .con-company .box-company table tr th { width: 30%; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr th { text-align: left; padding: 30px 10px 0; } }
.con-company .box-company table tr td { font-size: 1.8rem; letter-spacing: 0.15em; padding: 25px 0 25px 50px; border-left: 1px solid rgba(0, 0, 0, 0.3); }
@media only screen and (min-width: 768px) { .con-company .box-company table tr td { width: 70%; } }
@media print { .con-company .box-company table tr td { width: 70%; } }
.ie8 .con-company .box-company table tr td { width: 70%; }
@media only screen and (max-width: 767px) { .con-company .box-company table tr td { font-size: 1.6rem; padding: 10px 10px 30px; border-left: none; border-bottom: 1px solid rgba(0, 0, 0, 0.3); } }
.con-company .box-company .box-sns { background-color: #F5F6F8; padding: 50px 0 100px; text-align: center; }
.con-company .box-company .box-sns .item-title-basic:after { display: none; }
.con-company .box-company .box-sns ul { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; margin-top: 50px; gap: 20px; }
@media only screen and (max-width: 767px) { .con-company .box-company .box-sns ul { gap: 26px; } }
.con-company .box-company .box-sns ul li { width: 40px; }
.con-company .box-company .box-sns ul li a { display: block; }
@media only screen and (min-width: 1025px) { .con-company .box-company .box-sns ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-company .box-company .box-sns ul li a:hover { opacity: 0.6; } }
@media print { .con-company .box-company .box-sns ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
  .con-company .box-company .box-sns ul li a:hover { opacity: 0.6; } }
.ie8 .con-company .box-company .box-sns ul li a { -webkit-transition: 0.5s; -moz-transition: 0.5s; -ms-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; }
.ie8 .con-company .box-company .box-sns ul li a:hover { opacity: 0.6; }
