/* ==========================================================
   LOWRYS FARM PeT LP
   /lp/lowrysfarm/css/standard.css
========================================================== */

.pc-only { display: inline; }

.lowrysfarm-mv { width:100%; max-width:1400px; margin:24px auto 0; }
.lowrysfarm-mv img { display:block; width:100%; height:auto; }
.lowrysfarm-mv-space { height:24px; }


/* ==========================================================
   NEWS / DEBUT
========================================================== */

.lf-news {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto 24px;
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
}

.lf-news-inner {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 70px;
  box-sizing: border-box;
  padding: 0 34px;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

.lf-news-head {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  white-space: nowrap;
}

.lf-news-label {
  padding-right: 22px;
  color: #111;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .14em;
}

.lf-news-date {
  position: relative;
  padding: 0 30px 0 23px;
  color: #333;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .06em;
}

.lf-news-date::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 18px;
  background: #bdbdbd;
  transform: translateY(-50%);
}

.lf-news-marquee {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  white-space: nowrap;
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
}

.lf-news-track {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: lf-news-scroll 24s linear infinite;
}

.lf-news-text {
  flex: 0 0 auto;
  padding-right: 180px;
  color: #222;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .02em;
}

.lf-news:hover .lf-news-track {
  animation-play-state: paused;
}

@keyframes lf-news-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
  .lf-news-track { animation: none; }
  .lf-news-text[aria-hidden="true"] { display: none; }
}


.lf-concept { position:relative; width:100%; max-width:1200px; box-sizing:border-box; margin:0 auto; padding:80px 40px 84px; text-align:center; overflow:hidden; }
.lf-concept-label { margin:0 0 20px; font-size:12px; font-weight:500; line-height:1.5; letter-spacing:.08em; }
.lf-concept-title { margin:0; font-size:58px; font-weight:500; line-height:1.15; letter-spacing:.03em; }
.lf-concept-lead { margin:26px 0 22px; font-size:17px; line-height:1.8; }
.lf-concept-copy { margin-top:10px; }
.lf-concept-copy p { margin:8px 0; font-size:15px; line-height:1.8; }
.lf-concept-copy strong { display:inline-block; min-width:48px; font-weight:600; }
.lf-concept-bottom { margin:28px 0 0; font-size:15px; line-height:1.8; }
.lf-concept-decoration { position:absolute; top:50%; right:34px; transform:translateY(-44%); color:rgba(0,0,0,.045); font-family:serif; font-size:62px; line-height:.8; letter-spacing:.04em; writing-mode:vertical-rl; pointer-events:none; }

.lf-collaboration { display:grid; grid-template-columns:140px minmax(0,1fr) 420px; gap:44px; align-items:center; max-width:1280px; margin:0 auto; padding:70px 40px; box-sizing:border-box; }
.lf-collaboration-label { align-self:stretch; padding-right:28px; border-right:1px solid #cfcfcf; }
.lf-collaboration-label p { margin:0; font-size:13px; font-weight:600; line-height:1.45; letter-spacing:.08em; }
.lf-collaboration-content { min-width:0; }
.lf-collaboration-title { margin:0 0 24px; font-size:30px; font-weight:500; line-height:1.45; letter-spacing:.02em; }
.lf-collaboration-text { margin:0 0 14px; font-size:15px; line-height:2; }
.lf-collaboration-text:last-child { margin-bottom:0; }
.lf-collaboration-image { width:100%; aspect-ratio:4/3; overflow:hidden; background:#eee; }
.lf-collaboration-image img { display:block; width:100%; height:100%; object-fit:cover; }

.lowrysfarm-item-section { width:100%; max-width:1280px; box-sizing:border-box; margin:0 auto; padding:55px 30px 75px; }
.lowrysfarm-section-en { margin:0 0 12px; text-align:center; font-size:13px; font-weight:500; line-height:1.5; letter-spacing:.12em; }
.lowrysfarm-item-title { margin:0; text-align:center; font-size:32px; font-weight:500; line-height:1.4; letter-spacing:.04em; }
.lowrysfarm-item-lead { margin:12px 0 46px; text-align:center; font-size:14px; line-height:1.8; }
.lowrysfarm-item-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:52px 32px; }
.lowrysfarm-item { min-width:0; }
.lowrysfarm-item-image { position:relative; width:100%; aspect-ratio:1/1; overflow:hidden; background:#f4f4f4; }
.lowrysfarm-item-image img { display:block; width:100%; height:100%; object-fit:cover; }
.lowrysfarm-item-info { padding-top:14px; }
.lowrysfarm-item-name { margin:0 0 5px; font-size:16px; font-weight:600; line-height:1.5; }
.lowrysfarm-item-price { margin:0 0 10px; font-size:14px; line-height:1.5; }
.lowrysfarm-item-text { margin:0; font-size:13px; line-height:1.8; color:#555; }

.lf-about { display:grid; grid-template-columns:150px 250px minmax(0,1fr); gap:42px; align-items:center; width:100%; max-width:1280px; box-sizing:border-box; margin:0 auto; padding:64px 40px; }
.lf-about-label { align-self:stretch; padding-right:28px; border-right:1px solid #cfcfcf; }
.lf-about-label p { margin:0; font-size:13px; font-weight:600; line-height:1.45; letter-spacing:.08em; }
.lf-about-logo { display:flex; align-items:center; justify-content:center; }
.lf-about-logo img { display:block; width:100%; max-width:230px; height:auto; }
.lf-about-content { min-width:0; }
.lf-about-title { margin:0 0 18px; font-size:22px; font-weight:600; line-height:1.6; }
.lf-about-text { margin:0; font-size:14px; line-height:2; }
.lf-about-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:26px; }
.lf-about-link { position:relative; display:inline-flex; align-items:center; justify-content:flex-start; min-width:180px; box-sizing:border-box; padding:11px 36px 11px 16px; border:1px solid #bbb; background:#fff; color:#222; font-size:13px; line-height:1.5; text-decoration:none; transition:background-color .2s ease,color .2s ease; }
.lf-about-link::before { content:""; position:absolute; top:50%; right:15px; width:9px; height:9px; border:1px solid currentColor; box-sizing:border-box; transform:translateY(-35%); }
.lf-about-link::after { content:"↗"; position:absolute; top:50%; right:10px; width:10px; height:10px; background:#fff; font-size:10px; line-height:10px; text-align:center; transform:translateY(-78%); }
.lf-about-link:hover { background:#222; color:#fff; }
.lf-about-link:hover::after { background:#222; }

/* WHERE TO BUY */
.lf-shop { width:100%; background:#fff; }
.lf-shop-inner { width:100%; max-width:1040px; box-sizing:border-box; margin:0 auto; padding:100px 40px 110px; text-align:center; }
.lf-shop-line { display:block; width:42px; height:1px; margin:0 auto 20px; background:#bdbdbd; }
.lf-shop-en { margin:0 0 18px; color:#777; font-size:13px; font-weight:500; line-height:1.5; letter-spacing:.28em; }
.lf-shop-title { margin:0; font-size:32px; font-weight:600; line-height:1.5; }
.lf-shop-lead { margin:48px 0 30px; font-size:16px; line-height:2; }

.ap-store-accordion { width:100%; max-width:760px; margin:0 auto; text-align:left; border-top:1px solid #d9d9d9; border-bottom:1px solid #d9d9d9; }
.ap-store-accordion summary,.ap-store-area summary { list-style:none; cursor:pointer; }
.ap-store-accordion summary::-webkit-details-marker,.ap-store-area summary::-webkit-details-marker { display:none; }
.ap-store-accordion > summary { position:relative; padding:21px 44px 21px 8px; color:#444; font-size:16px; font-weight:600; line-height:1.5; }
.ap-store-accordion > summary::after { content:"＋"; position:absolute; top:50%; right:8px; transform:translateY(-50%); color:#777; font-size:26px; font-weight:300; line-height:1; }
.ap-store-accordion[open] > summary::after { content:"－"; }
.ap-store-accordion__body { padding:0 8px 20px; }
.ap-store-area { border-top:1px solid #e5e5e5; }
.ap-store-area > summary { position:relative; padding:17px 38px 17px 4px; color:#333; font-size:14px; font-weight:600; line-height:1.5; }
.ap-store-area > summary::after { content:"＋"; position:absolute; top:50%; right:4px; transform:translateY(-50%); color:#777; font-size:20px; font-weight:300; line-height:1; }
.ap-store-area[open] > summary::after { content:"－"; }
.ap-store-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 30px; margin:0; padding:4px 4px 20px; list-style:none; }
.ap-store-list li { margin:0; color:#555; font-size:13px; line-height:1.7; }

.lf-shop-online { margin-top:34px; text-align:center; }
.lf-shop-online-button { position:relative; display:inline-flex; align-items:center; justify-content:center; min-width:250px; min-height:52px; box-sizing:border-box; padding:14px 50px 14px 28px; border:1px solid #111; border-radius:999px; background:#111; color:#fff !important; font-size:14px; font-weight:500; line-height:1.5; text-decoration:none !important; transition:background-color .2s ease,border-color .2s ease; }
.lf-shop-online-button::before { content:""; position:absolute; top:50%; right:24px; width:9px; height:9px; border:1px solid currentColor; box-sizing:border-box; transform:translateY(-35%); }
.lf-shop-online-button::after { content:"↗"; position:absolute; top:50%; right:19px; width:10px; height:10px; background:#111; color:#fff; font-size:10px; line-height:10px; text-align:center; transform:translateY(-78%); transition:background-color .2s ease; }
.lf-shop-online-button:hover { border-color:#333; background:#333; color:#fff !important; text-decoration:none !important; }
.lf-shop-online-button:hover::after { background:#333; }

@media screen and (max-width:1000px) {
  .lf-concept { padding:58px 30px 62px; }
  .lf-concept-title { font-size:44px; }
  .lf-concept-lead { font-size:16px; }
  .lf-concept-copy p,.lf-concept-bottom { font-size:14px; }
  .lf-collaboration { grid-template-columns:110px minmax(0,1fr) 300px; gap:28px; padding:50px 28px; }
  .lf-collaboration-label { padding-right:20px; }
  .lf-collaboration-title { font-size:24px; }
  .lf-collaboration-text { font-size:14px; }
  .lowrysfarm-item-section { padding:45px 20px 60px; }
  .lowrysfarm-item-grid { gap:40px 20px; }
  .lowrysfarm-item-title { font-size:26px; }
  .lowrysfarm-item-lead { margin-bottom:36px; }
  .lf-about { grid-template-columns:110px 190px minmax(0,1fr); gap:28px; padding:50px 28px; }
  .lf-about-logo img { max-width:180px; }
  .lf-about-title { font-size:20px; }
}

@media screen and (max-width:767px) {
  .pc-only { display:none; }
  .lowrysfarm-mv { width:100%; max-width:none; margin:16px auto 0; }
  .lowrysfarm-mv-space { height:16px; }

  .lf-news {
    margin-bottom: 16px;
  }

  .lf-news-inner {
    display: block;
    min-height: 0;
    padding: 16px 0 15px;
  }

  .lf-news-head {
    padding: 0 18px 10px;
  }

  .lf-news-label {
    padding-right: 14px;
    font-size: 10px;
  }

  .lf-news-date {
    padding: 0 0 0 14px;
    font-size: 10px;
  }

  .lf-news-date::before {
    height: 14px;
  }

  .lf-news-marquee {
    width: 100%;
    -webkit-mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
    mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
  }

  .lf-news-track {
    animation-duration: 20s;
  }

  .lf-news-text {
    padding-right: 110px;
    font-size: 12px;
  }
  .lf-concept { padding:46px 20px 50px; }
  .lf-concept-label { margin-bottom:14px; font-size:11px; }
  .lf-concept-title { font-size:36px; }
  .lf-concept-lead { margin:20px 0 18px; font-size:14px; }
  .lf-concept-copy { margin-top:8px; }
  .lf-concept-copy p { margin:7px 0; font-size:13px; }
  .lf-concept-copy strong { min-width:auto; }
  .lf-concept-bottom { margin-top:22px; font-size:13px; }
  .lf-concept-decoration { right:4px; font-size:42px; }
  .lf-collaboration { display:block; padding:42px 20px; }
  .lf-collaboration-label { padding:0 0 12px; border-right:0; border-bottom:1px solid #cfcfcf; }
  .lf-collaboration-label p { font-size:11px; }
  .lf-collaboration-content { padding-top:24px; }
  .lf-collaboration-title { margin-bottom:18px; font-size:22px; }
  .lf-collaboration-text { margin-bottom:12px; font-size:13px; line-height:1.9; }
  .lf-collaboration-image { margin-top:26px; aspect-ratio:4/3; }
  .lowrysfarm-item-section { padding:30px 12px 45px; }
  .lowrysfarm-section-en { margin-bottom:10px; font-size:11px; }
  .lowrysfarm-item-title { font-size:23px; }
  .lowrysfarm-item-lead { margin:10px 0 28px; font-size:13px; }
  .lowrysfarm-item-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 12px; }
  .lowrysfarm-item-info { padding-top:10px; }
  .lowrysfarm-item-name { margin-bottom:4px; font-size:14px; }
  .lowrysfarm-item-price { margin-bottom:7px; font-size:12px; }
  .lowrysfarm-item-text { font-size:12px; line-height:1.65; }
  .lf-about { display:block; padding:42px 20px; }
  .lf-about-label { padding:0 0 12px; border-right:0; border-bottom:1px solid #cfcfcf; }
  .lf-about-label p { font-size:11px; }
  .lf-about-logo { justify-content:flex-start; margin-top:26px; }
  .lf-about-logo img { max-width:180px; }
  .lf-about-content { margin-top:24px; }
  .lf-about-title { margin-bottom:14px; font-size:19px; }
  .lf-about-text { font-size:13px; line-height:1.9; }
  .lf-about-links { display:block; margin-top:24px; }
  .lf-about-link { width:100%; margin-bottom:10px; }
  .lf-shop-inner { padding:68px 20px 72px; }
  .lf-shop-line { margin-bottom:17px; }
  .lf-shop-en { margin-bottom:14px; font-size:11px; }
  .lf-shop-title { font-size:26px; }
  .lf-shop-lead { margin:32px 0 25px; font-size:14px; line-height:1.9; }
  .ap-store-accordion > summary { padding:18px 38px 18px 4px; font-size:14px; }
  .ap-store-accordion > summary::after { right:4px; font-size:22px; }
  .ap-store-accordion__body { padding-right:4px; padding-left:4px; }
  .ap-store-area > summary { padding:15px 34px 15px 0; font-size:13px; }
  .ap-store-area > summary::after { right:0; font-size:18px; }
  .ap-store-list { grid-template-columns:1fr; gap:6px; padding:4px 0 18px; }
  .ap-store-list li { font-size:12px; }
  .lf-shop-online { margin-top:28px; }
  .lf-shop-online-button { width:100%; max-width:320px; min-width:0; min-height:50px; padding:13px 46px 13px 24px; font-size:13px; }
  .lf-shop-online-button::before { right:22px; }
  .lf-shop-online-button::after { right:17px; }
}

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

  .lf-concept { padding-right:15px; padding-left:15px; }
  .lf-concept-title { font-size:32px; }
  .lf-collaboration { padding-right:15px; padding-left:15px; }
  .lf-collaboration-title { font-size:20px; }
  .lowrysfarm-item-grid { gap:26px 10px; }
  .lowrysfarm-item-name { font-size:13px; }
  .lowrysfarm-item-price,.lowrysfarm-item-text { font-size:11px; }
  .lf-about { padding-right:15px; padding-left:15px; }
  .lf-shop-inner { padding-right:15px; padding-left:15px; }
}
