/* /entry/174/ ポケットフォルダーLiteとSmartの違い 専用CSS */
.pocket-180-page,
.pocket-180-page * {
  box-sizing: border-box;
}

.pocket-180-page {
  min-width: 0;
  color: #26343a;
  font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  line-height: 1.86;
  overflow-wrap: anywhere;
}

.pocket-180-page img {
  display: block;
  max-width: 100%;
  height: auto;
}

.pocket-180-page a {
  text-underline-offset: .2em;
}

.pocket-180-page-title {
  margin: 0 0 20px;
  padding: 18px 22px;
  border-bottom: 4px solid #177b88;
  background: #f3f7f7;
  color: #1e343a;
  font-size: clamp(1.42rem, 2.65vw, 2.02rem);
  line-height: 1.48;
}

.pocket-180-hero {
  margin: 0 0 26px;
  overflow: hidden;
  border: 1px solid #d5dcdd;
  border-radius: 16px;
  background: #efede7;
  box-shadow: 0 10px 28px rgba(35, 58, 65, .1);
}

.pocket-180-hero img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.pocket-180-lead {
  margin: 0 0 30px;
  padding: clamp(22px, 4vw, 38px);
  border: 1px solid #c7dadd;
  border-radius: 16px;
  background: linear-gradient(135deg, #faf7ef 0%, #fff 48%, #eef8f9 100%);
}

.pocket-180-eyebrow {
  margin: 0 0 8px;
  color: #116d78;
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .13em;
}

.pocket-180-lead h2,
.pocket-180-final-cta h2 {
  margin: 0 0 16px;
  color: #173b41;
  font-size: clamp(1.34rem, 2.55vw, 1.88rem);
  line-height: 1.52;
}

.pocket-180-lead p,
.pocket-180-section > p,
.pocket-180-final-cta > p {
  margin: 0 0 14px;
}

.pocket-180-lead-actions,
.pocket-180-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

.pocket-180-button {
  display: inline-flex;
  min-width: 0;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: 2px solid transparent;
  border-radius: 9px;
  font-weight: 800;
  line-height: 1.45;
  text-align: center;
  text-decoration: none !important;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.pocket-180-button--folder {
  border-color: #9a5e23;
  background-color: #9a5e23;
  color: #fff !important;
}

.pocket-180-button--folder:hover,
.pocket-180-button--folder:focus-visible {
  border-color: #693c12;
  background-color: #693c12;
  color: #fff !important;
  transform: translateY(-1px);
}

.pocket-180-button--envelope {
  border-color: #087583;
  background-color: #087583;
  color: #fff !important;
}

.pocket-180-button--envelope:hover,
.pocket-180-button--envelope:focus-visible {
  border-color: #04505a;
  background-color: #04505a;
  color: #fff !important;
  transform: translateY(-1px);
}

.pocket-180-understand {
  margin: 0 0 28px;
  padding: 24px;
  border: 1px solid #d4dedf;
  border-radius: 14px;
  background: #fff;
}

.pocket-180-understand > h2 {
  margin: 0 0 18px;
  color: #1b4148;
  font-size: clamp(1.28rem, 2.3vw, 1.65rem);
}

.pocket-180-understand-grid,
.pocket-180-products,
.pocket-180-case-grid,
.pocket-180-caution-grid,
.pocket-180-service-grid,
.pocket-180-related-grid {
  display: grid;
  gap: 18px;
}

.pocket-180-understand-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pocket-180-understand-grid article {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  column-gap: 12px;
  padding: 17px;
  border-radius: 11px;
  background: #f3f7f7;
}

.pocket-180-understand-grid span {
  display: grid;
  width: 34px;
  height: 34px;
  grid-row: 1 / span 2;
  place-items: center;
  border-radius: 50%;
  background: #24545c;
  color: #fff;
  font-weight: 900;
}

.pocket-180-understand-grid h3,
.pocket-180-understand-grid p {
  margin: 0;
}

.pocket-180-understand-grid h3 {
  color: #1d3e44;
  font-size: 1.02rem;
}

.pocket-180-understand-grid p {
  margin-top: 5px;
  font-size: .94rem;
}

.pocket-180-toc {
  margin: 0 0 46px;
  padding: 20px;
  border: 1px solid #cfdcde;
  border-radius: 13px;
  background: #fff;
}

.pocket-180-toc > p {
  margin: 0 0 10px;
  color: #22494f;
  font-weight: 800;
}

.pocket-180-toc ol {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 26px;
  margin: 0;
  padding-left: 1.45em;
}

.pocket-180-toc a {
  color: #076775;
  font-weight: 700;
}

.pocket-180-toc a:hover,
.pocket-180-toc a:focus-visible {
  color: #8a2d1f;
}

.pocket-180-section {
  min-width: 0;
  margin: 0 0 58px;
}

.pocket-180-anchor {
  scroll-margin-top: 120px;
}

.pocket-180-heading {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  margin: 0 0 22px;
  padding-bottom: 12px;
  border-bottom: 3px solid #238a96;
}

.pocket-180-heading > span {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  background: #214b52;
  color: #fff;
  font-size: .9rem;
  font-weight: 900;
}

.pocket-180-heading h2 {
  min-width: 0;
  margin: 0;
  color: #183b41;
  font-size: clamp(1.34rem, 2.5vw, 1.8rem);
  line-height: 1.5;
}

.pocket-180-products {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 24px 0;
}

.pocket-180-product {
  position: relative;
  min-width: 0;
  padding: 25px;
  overflow: hidden;
  border: 1px solid #d8dddd;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(34, 59, 65, .07);
}

.pocket-180-product::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 7px;
  content: "";
}

.pocket-180-product--folder {
  background: linear-gradient(155deg, #fffdf8 0%, #fff 58%);
}

.pocket-180-product--folder::before {
  background: #a3682d;
}

.pocket-180-product--envelope {
  background: linear-gradient(155deg, #f5fbfc 0%, #fff 58%);
}

.pocket-180-product--envelope::before {
  background: #167c89;
}

.pocket-180-product-label {
  margin: 0 0 5px;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .16em;
}

.pocket-180-product--folder .pocket-180-product-label {
  color: #87511f;
}

.pocket-180-product--envelope .pocket-180-product-label {
  color: #086c78;
}

.pocket-180-product h3 {
  margin: 0 0 11px;
  color: #1b3b41;
  font-size: 1.3rem;
  line-height: 1.5;
}

.pocket-180-product-summary {
  margin: 0 0 15px;
}

.pocket-180-product ul {
  margin: 0 0 18px;
  padding-left: 1.35em;
}

.pocket-180-product li + li {
  margin-top: 5px;
}

.pocket-180-product > a {
  display: inline-flex;
  color: #076b77;
  font-weight: 800;
}

.pocket-180-product > a:hover,
.pocket-180-product > a:focus-visible {
  color: #8a2e20;
}

.pocket-180-note {
  margin: 26px 0 0;
  padding: 20px 22px;
  border: 1px solid #cfdddd;
  border-left: 6px solid #258793;
  border-radius: 11px;
  background: #f2f8f8;
}

.pocket-180-note strong {
  display: block;
  margin-bottom: 6px;
  color: #18444a;
  font-size: 1.04rem;
}

.pocket-180-note p {
  margin: 0;
}

.pocket-180-note a,
.pocket-180-section p a,
.pocket-180-caution-grid a,
.pocket-180-criteria a {
  color: #076b77;
  font-weight: 700;
}

.pocket-180-note a:hover,
.pocket-180-note a:focus-visible,
.pocket-180-section p a:hover,
.pocket-180-section p a:focus-visible,
.pocket-180-caution-grid a:hover,
.pocket-180-caution-grid a:focus-visible,
.pocket-180-criteria a:hover,
.pocket-180-criteria a:focus-visible {
  color: #8a2e20;
}

.pocket-180-table-wrap {
  max-width: 100%;
  margin: 22px 0 12px;
  overflow-x: auto;
  border: 1px solid #ccd8da;
  border-radius: 12px;
  background: #fff;
  -webkit-overflow-scrolling: touch;
}

.pocket-180-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  background: #fff;
  font-size: .94rem;
}

.pocket-180-table th,
.pocket-180-table td {
  padding: 13px 15px;
  border-right: 1px solid #d8e0e1;
  border-bottom: 1px solid #d8e0e1;
  vertical-align: top;
  text-align: left;
}

.pocket-180-table thead th {
  background: #224e55;
  color: #fff;
  font-weight: 800;
  text-align: center;
}

.pocket-180-table thead th:nth-child(2) {
  background: #85521f;
}

.pocket-180-table thead th:nth-child(3) {
  background: #0d7480;
}

.pocket-180-table tbody th {
  width: 25%;
  background: #f2f6f6;
  color: #22464c;
  font-weight: 800;
}

.pocket-180-table tbody tr:nth-child(even) td {
  background: #fbfcfc;
}

.pocket-180-table th:last-child,
.pocket-180-table td:last-child {
  border-right: 0;
}

.pocket-180-table tbody tr:last-child th,
.pocket-180-table tbody tr:last-child td {
  border-bottom: 0;
}

.pocket-180-table-note {
  color: #536166;
  font-size: .9rem;
}

.pocket-180-case-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 22px 0;
}

.pocket-180-case {
  min-width: 0;
  padding: 24px;
  border: 1px solid #d5dddd;
  border-radius: 14px;
  background: #fff;
}

.pocket-180-case--folder {
  border-top: 6px solid #9b632b;
  background: linear-gradient(180deg, #fffaf1 0, #fff 120px);
}

.pocket-180-case--envelope {
  border-top: 6px solid #167b87;
  background: linear-gradient(180deg, #eff9fa 0, #fff 120px);
}

.pocket-180-case h3 {
  margin: 0 0 15px;
  color: #1c4147;
  font-size: 1.22rem;
}

.pocket-180-case ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pocket-180-case li {
  padding: 14px 0;
  border-bottom: 1px solid #e0e5e5;
}

.pocket-180-case li:first-child {
  padding-top: 0;
}

.pocket-180-case li:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.pocket-180-case strong,
.pocket-180-case span {
  display: block;
}

.pocket-180-case strong {
  margin-bottom: 4px;
  color: #263f44;
}

.pocket-180-case span {
  font-size: .94rem;
}

.pocket-180-use-examples {
  margin-top: 26px;
  padding: 22px 24px;
  border-radius: 13px;
  background: #f3f7f7;
}

.pocket-180-use-examples h3,
.pocket-180-use-examples p {
  margin: 0;
}

.pocket-180-use-examples h3 {
  margin-bottom: 8px;
  color: #1d454c;
  font-size: 1.16rem;
}

.pocket-180-criteria {
  display: grid;
  gap: 16px;
  margin: 22px 0 26px;
  padding: 0;
  list-style: none;
  counter-reset: criteria;
}

.pocket-180-criteria li {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 15px;
  min-width: 0;
  padding: 20px;
  border: 1px solid #d6dfe0;
  border-radius: 12px;
  background: #fff;
}

.pocket-180-criteria > li > span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 13px;
  background: #22535b;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 900;
}

.pocket-180-criteria h3,
.pocket-180-criteria p {
  margin: 0;
}

.pocket-180-criteria h3 {
  margin-bottom: 5px;
  color: #1d4147;
  font-size: 1.14rem;
}

.pocket-180-choice-box {
  padding: 22px;
  border: 1px solid #cbdcde;
  border-radius: 13px;
  background: linear-gradient(90deg, #fff9ee 0%, #fff 49%, #eef9fa 100%);
}

.pocket-180-choice-box h3 {
  margin: 0 0 14px;
  color: #1b4147;
  font-size: 1.16rem;
  text-align: center;
}

.pocket-180-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.pocket-180-choice-grid p {
  margin: 0;
  padding: 17px;
  border-radius: 10px;
  background: rgba(255, 255, 255, .88);
  box-shadow: 0 5px 14px rgba(32, 65, 72, .06);
}

.pocket-180-choice-grid strong,
.pocket-180-choice-grid span {
  display: block;
}

.pocket-180-choice-grid strong {
  margin-bottom: 6px;
  color: #2c4246;
}

.pocket-180-choice-grid span {
  color: #0b6f7b;
  font-weight: 900;
}

.pocket-180-caution-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 23px 0;
}

.pocket-180-caution-grid article {
  min-width: 0;
  padding: 20px;
  border: 1px solid #d6dfe0;
  border-radius: 12px;
  background: #fff;
}

.pocket-180-caution-grid h3,
.pocket-180-caution-grid p {
  margin: 0;
}

.pocket-180-caution-grid h3 {
  position: relative;
  margin-bottom: 8px;
  padding-left: 28px;
  color: #20464c;
  font-size: 1.08rem;
}

.pocket-180-caution-grid h3::before {
  position: absolute;
  top: .35em;
  left: 1px;
  width: 16px;
  height: 16px;
  border: 3px solid #c25a43;
  border-radius: 50%;
  content: "";
}

.pocket-180-caution-grid h3::after {
  position: absolute;
  top: .8em;
  left: 15px;
  width: 8px;
  height: 3px;
  border-radius: 2px;
  background: #c25a43;
  content: "";
  transform: rotate(45deg);
  transform-origin: left center;
}

.pocket-180-checklist {
  margin-top: 28px;
  padding: 24px;
  border: 1px solid #d0dadd;
  border-radius: 13px;
  background: #f7f9f9;
}

.pocket-180-checklist h3 {
  margin: 0 0 15px;
  color: #1d454b;
  font-size: 1.18rem;
}

.pocket-180-checklist ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pocket-180-checklist li {
  position: relative;
  min-width: 0;
  padding: 10px 12px 10px 38px;
  border-radius: 8px;
  background: #fff;
}

.pocket-180-checklist li::before {
  position: absolute;
  top: 13px;
  left: 13px;
  width: 15px;
  height: 9px;
  border-bottom: 3px solid #197985;
  border-left: 3px solid #197985;
  content: "";
  transform: rotate(-45deg);
}

.pocket-180-service-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 20px 0 28px;
}

.pocket-180-service-card {
  display: flex;
  min-width: 0;
  min-height: 150px;
  flex-direction: column;
  justify-content: center;
  padding: 22px;
  border: 1px solid #d3dedf;
  border-radius: 13px;
  background: #fff;
  color: #263d42 !important;
  text-decoration: none !important;
  box-shadow: 0 6px 18px rgba(31, 62, 69, .06);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.pocket-180-service-card:hover,
.pocket-180-service-card:focus-visible {
  border-color: #2c8791;
  color: #263d42 !important;
  box-shadow: 0 11px 24px rgba(31, 62, 69, .12);
  transform: translateY(-2px);
}

.pocket-180-service-card--folder {
  border-top: 6px solid #9b632b;
}

.pocket-180-service-card--envelope {
  border-top: 6px solid #167b87;
}

.pocket-180-service-card > span {
  margin-bottom: 3px;
  color: #9a3c2d;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.pocket-180-service-card > strong {
  margin-bottom: 6px;
  color: #1a4248;
  font-size: 1.12rem;
}

.pocket-180-service-card > small {
  color: #536267;
  font-size: .91rem;
  line-height: 1.65;
}

.pocket-180-related {
  padding: 24px;
  border: 1px solid #d3ddde;
  border-radius: 13px;
  background: #f6f9f9;
}

.pocket-180-related h3 {
  margin: 0 0 16px;
  color: #1b434a;
  font-size: 1.2rem;
}

.pocket-180-related-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.pocket-180-related-grid a {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 16px;
  border: 1px solid #d6e0e1;
  border-radius: 10px;
  background: #fff;
  color: #274247 !important;
  text-decoration: none !important;
  transition: border-color .2s ease, transform .2s ease;
}

.pocket-180-related-grid a:hover,
.pocket-180-related-grid a:focus-visible {
  border-color: #258691;
  color: #274247 !important;
  transform: translateY(-1px);
}

.pocket-180-related-grid strong {
  margin-bottom: 4px;
  color: #126875;
}

.pocket-180-related-grid span {
  color: #5b686c;
  font-size: .9rem;
}

.pocket-180-back-link {
  margin: 20px 0 0 !important;
  text-align: center;
}

.pocket-180-back-link a {
  display: inline-flex;
  padding: 10px 16px;
  border: 1px solid #43838b;
  border-radius: 999px;
  background: #fff;
  color: #176974 !important;
  font-weight: 800;
  text-decoration: none !important;
}

.pocket-180-back-link a:hover,
.pocket-180-back-link a:focus-visible {
  border-color: #185760;
  background: #eaf5f6;
  color: #185760 !important;
}

.pocket-180-faq {
  display: grid;
  gap: 12px;
}

.pocket-180-faq details {
  overflow: hidden;
  border: 1px solid #d3ddde;
  border-radius: 11px;
  background: #fff;
}

.pocket-180-faq summary {
  position: relative;
  padding: 17px 52px 17px 20px;
  color: #213f45;
  font-weight: 800;
  cursor: pointer;
  list-style: none;
}

.pocket-180-faq summary::-webkit-details-marker {
  display: none;
}

.pocket-180-faq summary::before {
  margin-right: 8px;
  color: #b34b36;
  content: "Q.";
  font-weight: 900;
}

.pocket-180-faq summary::after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-right: 3px solid #277d87;
  border-bottom: 3px solid #277d87;
  content: "";
  transform: translateY(-65%) rotate(45deg);
  transition: transform .2s ease;
}

.pocket-180-faq details[open] summary::after {
  transform: translateY(-25%) rotate(225deg);
}

.pocket-180-faq details > div {
  padding: 0 20px 18px;
  border-top: 1px solid #e0e5e6;
  background: #fbfcfc;
}

.pocket-180-faq details > div p {
  margin: 15px 0 0;
}

.pocket-180-final-cta {
  margin: 0 0 30px;
  padding: clamp(24px, 4vw, 38px);
  border-radius: 16px;
  background: linear-gradient(135deg, #1d4e56 0%, #126d78 52%, #22444b 100%);
  color: #fff;
  box-shadow: 0 12px 28px rgba(25, 66, 73, .18);
}

.pocket-180-final-cta .pocket-180-eyebrow,
.pocket-180-final-cta h2,
.pocket-180-final-cta > p {
  color: #fff;
}

.pocket-180-button--sample {
  border-color: #fff;
  background-color: #fff;
  color: #174d55 !important;
}

.pocket-180-button--sample:hover,
.pocket-180-button--sample:focus-visible {
  border-color: #dceef0;
  background-color: #dceef0;
  color: #123f46 !important;
  transform: translateY(-1px);
}

.pocket-180-button--estimate {
  border-color: #c85a40;
  background-color: #c85a40;
  color: #fff !important;
}

.pocket-180-button--estimate:hover,
.pocket-180-button--estimate:focus-visible {
  border-color: #923b28;
  background-color: #923b28;
  color: #fff !important;
  transform: translateY(-1px);
}

.pocket-180-page :focus-visible {
  outline: 3px solid rgba(224, 147, 55, .72);
  outline-offset: 3px;
}

@media screen and (max-width: 1100px) {
  .pocket-180-products,
  .pocket-180-case-grid,
  .pocket-180-caution-grid,
  .pocket-180-service-grid,
  .pocket-180-related-grid {
    gap: 15px;
  }

  .pocket-180-product,
  .pocket-180-case,
  .pocket-180-related,
  .pocket-180-checklist {
    padding: 21px;
  }
}

@media screen and (max-width: 760px) {
  .pocket-180-products,
  .pocket-180-case-grid,
  .pocket-180-service-grid,
  .pocket-180-related-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .pocket-180-choice-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media screen and (max-width: 650px) {
  .pocket-180-page-title {
    padding: 15px 14px;
  }

  .pocket-180-hero {
    border-radius: 10px;
  }

  .pocket-180-lead,
  .pocket-180-final-cta {
    padding: 21px 17px;
    border-radius: 12px;
  }

  .pocket-180-lead-actions,
  .pocket-180-final-actions {
    flex-direction: column;
  }

  .pocket-180-button {
    width: 100%;
  }

  .pocket-180-understand {
    padding: 18px 15px;
  }

  .pocket-180-understand-grid,
  .pocket-180-caution-grid,
  .pocket-180-checklist ul,
  .pocket-180-toc ol {
    grid-template-columns: minmax(0, 1fr);
  }

  .pocket-180-toc {
    margin-bottom: 38px;
    padding: 18px 16px;
  }

  .pocket-180-heading {
    grid-template-columns: 39px minmax(0, 1fr);
    gap: 9px;
  }

  .pocket-180-heading > span {
    width: 38px;
    height: 38px;
    font-size: .78rem;
  }

  .pocket-180-section {
    margin-bottom: 46px;
  }

  .pocket-180-product,
  .pocket-180-case,
  .pocket-180-related,
  .pocket-180-checklist,
  .pocket-180-choice-box {
    padding: 18px 15px;
  }

  .pocket-180-criteria li {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    padding: 15px;
  }

  .pocket-180-criteria > li > span {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    font-size: .95rem;
  }

  .pocket-180-table {
    min-width: 720px;
  }
}

@media screen and (max-width: 480px) {
  .pocket-180-understand-grid article {
    grid-template-columns: 32px minmax(0, 1fr);
    padding: 14px;
  }

  .pocket-180-understand-grid span {
    width: 30px;
    height: 30px;
    font-size: .82rem;
  }

  .pocket-180-note,
  .pocket-180-use-examples {
    padding: 17px 15px;
  }

  .pocket-180-faq summary {
    padding: 15px 44px 15px 15px;
  }

  .pocket-180-faq summary::after {
    right: 15px;
  }

  .pocket-180-faq details > div {
    padding-right: 15px;
    padding-left: 15px;
  }
}
