@charset "UTF-8";
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* ====================================
   Functions (関数)
   ==================================== */
/* px を rem に変換する関数 */
/* ====================================
   Variables (変数定義)
   ==================================== */
/* 1. Breakpoints (レスポンシブ分岐点)
   -------------------------------------------------- */
/* 2. Fonts (フォント設定)
   -------------------------------------------------- */
/* ====================================
   Mixins (ミックスイン)
   ==================================== */
/* Media Queries (レスポンシブ対応)
   --------------------------------------------------
   使い方は @include mq(sm) { ... } のように記述します。
   定義されていないキー（pcなど）を指定すると警告が出ます。
*/
/* 赤パレット
#8b0000
#901a1e
#e60012
#d90000
#d32f2f
#c0392b
#b03a2e
#a93226
*/
/* 2. Base */
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
  /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit;
  /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/*
10px	0.625 rem
11px	0.6875 rem
12px	0.75 rem
13px	0.8125 rem
14px	0.875 rem
15px	0.9375 rem
16px	1 rem
17px	1.0625 rem
18px	1.125 rem
19px	1.1875 rem
20px	1.25 rem
*/
body {
  font-family: "Josefin Sans", "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
}

/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
body {
  font-family: "Josefin Sans", "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 0 auto;
}

.site-header {
  width: 100%;
  padding: 15px 20px;
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.container {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  flex: 1;
  display: flex;
  flex-direction: column;
}

main {
  flex: 1;
  width: 100%;
  box-sizing: border-box;
  padding: 30px 20px 60px;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.pagetitle {
  letter-spacing: 0.05em;
  padding: 30px 0;
  text-align: center;
  font-weight: 400;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .wrapper {
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    max-width: 1280px;
    margin: 0 auto;
  }
  .site-header {
    flex: 0 0 256px;
    flex-shrink: 0;
    height: 100vh;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    border-bottom: none;
    border-right: 1px solid #cecdc9;
    padding: 200px 60px 0 30px;
    position: sticky;
    top: 0;
  }
  .container {
    flex: 1 1 auto;
    min-height: 100vh;
  }
  main {
    max-width: 1024px;
    padding: 60px;
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
label {
  display: block;
  font-weight: bold;
  font-size: 0.9rem;
  color: #222222;
  line-height: 1.5;
  /* 必須マーク */
}
label .required,
label .wpcf7-validates-as-required {
  color: #d32f2f;
  font-weight: normal;
}
label .required::after,
label .wpcf7-validates-as-required::after {
  content: "*";
}

input[type=radio] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=radio]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #000;
  content: "";
}

input[type=checkbox] {
  position: relative;
  width: 16px;
  height: 16px;
  min-width: 16px;
  margin: 0 0.5em 0 0;
  border: 1px solid #222222;
  border-radius: 3px;
  vertical-align: -2px;
  flex-shrink: 0;
  cursor: pointer;
  background-color: #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
}
input[type=checkbox]:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(34, 34, 34, 0.25);
}
input[type=checkbox]:focus-visible {
  outline: 2px solid #222222;
  outline-offset: 2px;
}
input[type=checkbox]:checked {
  background-color: #222222;
  border-color: #222222;
}
input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 4px;
  height: 8px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  box-sizing: border-box;
}

/*
input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  border-radius: 9999px;
  background-color: #737373;
}
*/
input[type=text],
input[type=email],
input[type=tel],
input[type=password],
input[type=url],
input[type=search],
textarea,
select {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 12px 15px;
  border: 1px solid #cecdc9;
  background-color: #fcfcfc;
  border-radius: 4px;
  font-size: 1rem;
  line-height: 1.5;
  box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  transition: all 0.3s ease;
  color: #222222;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=url]:focus,
input[type=search]:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: #222222;
  background-color: #fff;
  box-shadow: 0 0 0 1px #222222;
}
input[type=text],
input[type=email],
input[type=tel],
input[type=password],
input[type=url],
input[type=search],
textarea,
select {
  /* プレースホルダー */
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=search]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  color: #cecdc9;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
input[type=password]::placeholder,
input[type=url]::placeholder,
input[type=search]::placeholder,
textarea::placeholder,
select::placeholder {
  color: #cecdc9;
}

textarea {
  height: 150px;
  resize: vertical;
}

/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* 基本ボタンスタイル */
.button, button, input[type=submit] {
  width: 100%;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  text-align: center;
  transition: background-color 0.3s, opacity 0.3s;
  text-decoration: none;
  background-color: #222222;
  color: #ffffff;
  font-weight: bold;
}
.button:hover, button:hover, input[type=submit]:hover {
  opacity: 0.8;
}

.but_01 {
  width: auto;
  height: 48px;
  aspect-ratio: 16/5;
  font-size: 1.25rem;
  line-height: 48px;
  box-sizing: border-box;
  border: 1px solid #222222;
  color: #222222;
  display: inline-block;
  text-align: center;
}

.link_01 {
  font-size: 1.25rem;
  padding: 0 6px;
  padding-bottom: 4px;
  border-bottom: 2px solid #222222;
}
.link_01::after {
  content: "»";
  display: inline-block;
  margin-left: 6px;
  margin-right: 6px;
  color: #222222;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .button, button, input[type=submit] {
    width: 400px;
  }
}
/* 3. Layout & Components */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.grid {
  width: 100%;
  display: grid;
  grid-auto-rows: auto;
  gap: 16px;
  margin: 0;
}

.grid > div {
  overflow: visible;
  min-width: 0;
}

.grid {
  list-style: none;
}

.grid > li {
  overflow: visible;
  min-width: 0;
  list-style: none;
  margin: 0;
}

.col-2 {
  grid-template-columns: repeat(2, 1fr);
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .col-sm-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .col-sm-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .grid {
    gap: 20px;
  }
  .col-lg-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .col-lg-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.site-branding {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.site-branding h1 a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  text-decoration: none;
}
.site-branding h1 a img {
  width: auto;
  height: 14px;
}
.site-branding p {
  display: none;
}

/* ハンバーガーボタン */
.menu-toggle {
  display: block;
  position: relative;
  width: 40px;
  height: 40px;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1000;
  /* 3本線 */
}
.menu-toggle span {
  display: block;
  width: 26px;
  height: 2px;
  background-color: #222222;
  margin: 6px auto;
  transition: all 0.3s ease-in-out;
  border-radius: 2px;
}
.menu-toggle {
  /* ✕印アニメーション */
}
.menu-toggle.active span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}
.menu-toggle.active span:nth-child(2) {
  opacity: 0;
}
.menu-toggle.active span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .site-branding {
    position: static;
    transform: none;
    margin-bottom: 40px;
  }
  .site-branding h1 a img {
    height: 18px;
  }
  .menu-toggle {
    display: none;
  }
}
/* マップにキーが存在するか確認 */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.global-nav {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  max-width: none;
  height: 100vh;
  background-color: #ffffff;
  z-index: 990;
  transition: right 0.3s ease-in-out;
  box-shadow: none;
  padding: 100px 30px 40px;
  overflow-y: auto;
  /* クラスがつくと出てくる */
}
.global-nav.active {
  right: 0;
}
.global-nav ul {
  display: flex;
  flex-direction: column;
  border: none;
  margin: 0;
  padding: 0;
}
.global-nav ul li {
  list-style: none;
  text-align: left;
  width: 100%;
  border-bottom: 1px solid #222222;
  position: relative;
  /*
  &::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      right: 20%; // 右側10%空ける
      height: 1px;
      background-color: colors.$black;
  }
  */
}
.global-nav ul li a {
  display: block;
  padding: 15px 0;
  color: #222222;
  font-size: 1rem;
  text-decoration: none;
  line-height: 2;
}
.global-nav ul li a::before {
  content: "»";
  display: inline-block;
  margin-right: 10px;
  color: #222222;
}
.global-nav ul li a span {
  display: block;
  margin-left: 18px;
  font-size: 1rem;
  color: #222222;
  margin-top: 2px;
}
.global-nav ul li a:hover {
  opacity: 0.7;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .global-nav {
    display: block;
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    height: auto;
    padding: 0;
    background-color: transparent;
    width: 100%;
  }
  .global-nav ul {
    flex-direction: column;
  }
  .global-nav ul li {
    border-bottom: 1px solid #cecdc9;
  }
  .global-nav ul li a {
    padding: 12px 0;
    font-size: 0.875rem;
    line-height: 1.6;
  }
  .global-nav ul li a::before {
    content: "";
    margin-right: 0;
  }
  .global-nav ul li a span {
    margin-left: 0;
    font-size: 0.6875rem;
    margin-top: 0;
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.footer {
  width: 100%;
}

.site-footer {
  padding: 30px 30px;
}
.site-footer .footer-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
}
.site-footer .footer-inner .footer-branding .footer-logo-img {
  width: auto;
  height: 18px;
}
.site-footer .footer-inner .footer-top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
  width: 100%;
}
.site-footer .footer-inner .footer-nav ul.footer-menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}
.site-footer .footer-inner .footer-nav ul.footer-menu li a {
  text-decoration: none;
  color: inherit;
}
.site-footer .footer-inner .footer-nav ul.footer-menu li a:hover {
  opacity: 0.7;
}
.site-footer .footer-inner .footer-divider {
  display: none;
}
.site-footer .footer-inner .footer-bottom {
  width: 100%;
  text-align: left;
}
.site-footer .copyright {
  font-size: 0.75rem;
  color: #757575;
  margin: 0;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .site-footer {
    padding: 60px 0 30px 60px;
    border-top: none;
    margin-top: auto;
  }
  .site-footer .footer-inner {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    max-width: 1280px;
    margin: 0 auto;
  }
  .site-footer .footer-inner .footer-top {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 60px;
  }
  .site-footer .footer-inner .footer-branding {
    flex: 0 0 auto;
  }
  .site-footer .footer-inner .footer-nav {
    flex: 1;
  }
  .site-footer .footer-inner .footer-nav ul.footer-menu {
    flex-direction: row;
    align-items: center;
    gap: 30px;
    justify-content: flex-start;
  }
  .site-footer .footer-inner .footer-divider {
    display: block;
    height: 1px;
    background: #cecdc9;
    margin: 0;
  }
  .site-footer .footer-inner .footer-bottom {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-align: left;
  }
  .site-footer .copyright {
    flex: 0 0 auto;
  }
}
/* ====================================
   Pagination Styles
   ファイル名: _pagination.scss
   役割: ページ送り（ページネーション）のデザイン
   ==================================== */
/* WooCommerce標準のページネーション */
.woocommerce nav.woocommerce-pagination {
  margin-top: 40px;
  text-align: center;
  width: 100%;
}
.woocommerce nav.woocommerce-pagination ul {
  display: flex; /* 横並びにする */
  justify-content: center; /* 中央寄せ */
  gap: 10px; /* 数字同士の間隔 */
  padding: 0;
  margin: 0;
  list-style: none !important;
  border: none !important;
}
.woocommerce nav.woocommerce-pagination ul li {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: hidden;
  /* 数字・矢印のスタイル */
}
.woocommerce nav.woocommerce-pagination ul li span, .woocommerce nav.woocommerce-pagination ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px; /* 正方形に近い形 */
  height: 40px;
  padding: 0 10px;
  border: 1px solid #ccc; /* 枠線 */
  color: #333;
  text-decoration: none;
  line-height: 1;
  transition: all 0.3s ease;
  background-color: #fff;
  box-sizing: border-box;
}
.woocommerce nav.woocommerce-pagination ul li span:hover, .woocommerce nav.woocommerce-pagination ul li a:hover {
  background-color: #222222; /* 黒背景 */
  color: #fff; /* 白文字 */
  border-color: #222222;
}
.woocommerce nav.woocommerce-pagination ul li {
  /* 現在のページ (current) */
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background-color: #222222; /* 黒背景 */
  color: #fff; /* 白文字 */
  border-color: #222222;
  font-weight: bold;
  cursor: default;
}
.woocommerce nav.woocommerce-pagination {
  /* レスポンシブ対応が必要な場合 */
  /* マップにキーが存在するか確認 */
}
/* 4. Content */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.home .home-area {
  margin-bottom: 60px;
  gap: 30px;
}
.home .home-area ul li a {
  padding: 5px 0 15px 0;
}
.home h2.home-title {
  display: flex;
  flex-flow: column;
  font-family: "Lora", serif;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  line-height: 1.6;
  text-align: left;
  padding: 0;
}
.home h2.home-title span {
  font-size: 1rem;
}
.home .home-info {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e5e7eb;
}
.home .home-info h2 {
  font-family: "Lora", serif;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  line-height: 1.6;
  text-align: left;
  margin-bottom: 20px;
  padding: 0;
}
.home .home-info a {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
.home .home-info .home-info-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.home .home-info .home-info-item {
  display: flex;
  align-items: baseline;
  gap: 1rem;
}
.home .home-info .home-info-item p {
  font-size: 0.875rem;
  margin: 0;
}
.home .home-info .home-info-item .info-text {
  flex: 1;
  min-width: 0;
}
.home .home-article {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e5e7eb;
}
.home .home-article .home-article-image {
  margin-bottom: 15px;
}
.home .home-article .home-article-info h3 {
  font-size: 1.5rem;
  line-height: 1.6;
  margin-bottom: 15px;
}
.home .home-article .home-article-info p {
  font-size: 1rem;
  margin-bottom: 30px;
}
/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .home .home-info {
    margin-bottom: 60px;
    padding-bottom: 60px;
  }
  .home .home-article {
    margin-bottom: 60px;
    padding-bottom: 60px;
  }
  .home h2.home-title {
    font-size: 2.25rem;
  }
}
/* /product-category */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* /product-categor */
.tax-product_cat {
  font-size: 0.875rem;
}
.tax-product_cat .woocommerce-breadcrumb {
  display: none;
}
.tax-product_cat .woocommerce-products-header {
  text-align: left;
  padding-bottom: 30px;
  width: 100%;
}
.tax-product_cat .woocommerce-products-header .term-description {
  font-size: 1.375rem;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #222222;
  font-weight: normal;
  line-height: 1.2;
}
.tax-product_cat .woocommerce-products-header h1 {
  font-size: 0.875rem;
  color: #666;
  margin: 0;
}
.tax-product_cat .woocommerce-result-count, .tax-product_cat .woocommerce-ordering {
  display: none;
}

/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.sub-category {
  display: block;
  margin-bottom: 20px;
  padding: 0;
}
.sub-category ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  width: 100%;
  gap: 8px;
  margin: 0 auto;
  list-style: none;
}
.sub-category ul li {
  list-style: none;
  flex: 1;
  width: 100%;
}
.sub-category a {
  width: 100%;
  height: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  line-height: 1.4;
  color: #222222;
  font-weight: 500;
  text-decoration: none;
  text-align: center;
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px 0;
  border: 1px solid #222222;
}
.sub-category a span {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-family: "Josefin Sans", sans-serif;
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.sub-category a span::before {
  content: "»";
  display: inline-block;
  margin-right: 4px;
  color: #222222;
}
.sub-category a:hover {
  background-color: #333;
  color: #fff;
  opacity: 1;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .sub-category {
    margin-bottom: 40px;
  }
  .sub-category ul {
    justify-content: start;
    margin-left: 0;
    margin-right: auto;
    gap: 20px;
    max-width: 800px;
  }
  .sub-category a {
    padding: 12px 0;
  }
  /* マップにキーが存在するか確認 */
}
@media screen and (min-width: 768px) {
  /* マップにキーが存在するか確認 */
}
@media screen and (min-width: 768px) {
  /* マップにキーが存在するか確認 */
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* /product-categor */
ul.products li a h2 {
  font-size: 0.875rem;
  padding: 10px 0 5px;
}
ul.products li .product_type_variable {
  display: none;
}

/*
    ul.products {
        li.product {
            img {
                width: 100%;
                height: auto;
                display: block;
                margin-bottom: 20px;
            }
            h2.woocommerce-loop-product__title {
                font-size: functions.rem(14);
                font-weight: normal;
                color: colors.$black;
                margin-bottom: 8px;
                line-height: 1.4;
            }
            .price {
                color: colors.$black;
                display: block;
                font-weight: normal;
                padding-bottom: 8px;
                del {
                    opacity: 0.5;
                    margin-right: 5px;
                }
                ins {
                    text-decoration: none;
                    font-weight: bold;
                }
            }
            .button,
            .added_to_cart {
                display: none;
            }
        }
    }
*/
/* /product */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.product-detail .woocommerce-breadcrumb {
  display: none;
}
.product-detail .product {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  width: 100%;
}
.product-detail .product .woocommerce-product-gallery {
  width: 100%;
}
.product-detail .product .summary {
  width: 100%;
  display: block;
}
.product-detail .product .summary .product_title {
  line-height: 1.6;
  margin: 20px 0 15px;
  color: #222222;
}
.product-detail .product .summary table.variations tr {
  padding: 0;
}
.product-detail .product .summary table.variations tr th.label {
  width: 50%;
  padding: 0;
}
.product-detail .product .summary table.variations tr td.value {
  padding: 0;
}
.product-detail .product .summary table.variations tr td.value .variation-select-wrap {
  position: relative;
  display: block;
  /*
  &::after {
      content: "▼";
      position: absolute;
      right: 10px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 10px;
      pointer-events: none;
      color: colors.$black;
  }
  */
}
.product-detail .product .summary table.variations tr td.value .variation-select-wrap::before {
  content: "▼";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 8px;
  pointer-events: none;
  color: #222222;
}
.product-detail .product .summary table.variations tr td.value .reset_variations {
  display: none;
}
.product-detail .product .summary table.variations tr td.value select {
  width: 100%;
  padding: 12px;
  border: 1px solid #222222;
  background-color: #ffffff;
  border-radius: 0;
  color: #222222;
  text-align: center;
  cursor: pointer;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  transition: background-color 0.2s, border-color 0.2s;
}
.product-detail .product .summary table.variations tr td.value select:hover {
  background-color: #f5f5f5;
}
.product-detail .product .summary table.variations tr td.value select:focus {
  outline: 2px solid #222222;
  outline-offset: 2px;
}
.product-detail .product .single_variation_wrap {
  width: 100%;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 15px 0;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-availability {
  order: 1;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-availability p.stock.out-of-stock {
  color: #d32f2f;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-availability p.stock.in-stock {
  display: none;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-price {
  order: 2;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-price .price {
  color: #333;
  font-size: 1.375rem;
  letter-spacing: 0.0625rem;
}
.product-detail .product .single_variation_wrap .woocommerce-variation.single_variation .woocommerce-variation-price .price::after {
  content: " (税込)";
  font-size: 0.75rem;
  font-weight: normal;
  margin-left: 0.3em;
}
.product-detail .product .single_variation_wrap {
  /* カートボタン */
}
.product-detail .product .single_variation_wrap .woocommerce-variation-add-to-cart {
  width: 100%;
  display: block;
}
.product-detail .product .single_variation_wrap .woocommerce-variation-add-to-cart .quantity {
  display: none !important;
}
.product-detail .product .woocommerce-product-details__short-description {
  width: 100%;
  margin: 30px 0 15px;
}
.product-detail .product .woocommerce-product-details__short-description p {
  line-height: 2;
}
.product-detail .product .product_meta {
  font-size: 0.75rem;
  color: #222222;
  text-align: right;
}
.product-detail .product .product_meta .posted_in {
  display: none;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .product-detail {
    width: 100%;
  }
  .product-detail .product {
    flex-wrap: nowrap;
    gap: 40px;
  }
  .product-detail .product div.images,
  .product-detail .product div.woocommerce-product-gallery {
    width: 48%;
  }
  .product-detail .product div.summary {
    width: 48%;
    text-align: left;
  }
  .product-detail .product div.summary .product_title {
    font-size: 1.25rem;
    margin-top: 0;
    margin-bottom: 20px;
  }
  .product-detail .product div.summary form.cart {
    text-align: left;
  }
  .product-detail .product div.summary form.cart table.variations th.label {
    width: 200px;
  }
  .product-detail .product div.summary form.cart table.variations td.value select {
    width: 120px;
  }
  .product-detail .product div.summary form.cart .single_variation_wrap .woocommerce-variation.single_variation {
    /* 価格情報（右側） */
  }
  .product-detail .product div.summary form.cart .single_variation_wrap {
    /* カートボタン */
  }
  /* マップにキーが存在するか確認 */
}
@media screen and (min-width: 768px) {
  /* マップにキーが存在するか確認 */
}
/* 商品詳細 画像スライダー */
.woocommerce-product-gallery {
  position: relative;
  display: block;
}
.woocommerce-product-gallery__wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.woocommerce-product-gallery__image {
  box-sizing: border-box;
  transition: opacity 0.3s ease;
}
.woocommerce-product-gallery__image:nth-child(1) {
  width: 100%;
}
.woocommerce-product-gallery__image:not(:nth-child(1)) {
  /* 5列表示: (100% - 隙間4つ分20px) ÷ 5 */
  width: calc((100% - 20px) / 5);
  cursor: pointer;
  opacity: 0.4;
  /* 【重要】選んでないときは薄くする */
}
.woocommerce-product-gallery__image:not(:nth-child(1)):hover {
  opacity: 0.8;
  /* マウスを乗せたとき */
}
.woocommerce-product-gallery__image:not(:nth-child(1)).is-active {
  opacity: 1;
  /* くっきり表示 */
  border: 1px solid #333;
  /* お好みで枠線をつけてもOK */
}
.woocommerce-product-gallery__image img {
  width: 100%;
  height: auto;
  display: block;
}

.woocommerce-product-gallery__trigger {
  display: none;
}

/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.single-product .information {
  margin: 30px 0 0 0;
  padding: 20px;
  border: 1px solid #222222;
  text-align: left;
}
.single-product .information h3 {
  letter-spacing: 0.2rem;
  margin-bottom: 15px;
  display: inline-block;
  border-bottom: 1px solid #222222;
  color: #222222;
}
.single-product .information p {
  font-weight: 400;
  line-height: 2;
}
.single-product .information ul li {
  display: block;
  line-height: 2;
  list-style: none;
}
.single-product .information ul li.des {
  font-weight: bold;
}
.single-product .information hr {
  margin: 15px 0;
  background-color: #222222;
  height: 1px;
  border: none;
}
.single-product {
  /* マップにキーが存在するか確認 */
}
/* /cart */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* /cart */
.cart-page .cart-empty-state {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  width: 100%;
}
.cart-page .return-to-shop {
  width: 100%;
  margin: 0;
}
.cart-page .woocommerce-notices-wrapper {
  display: none;
}
.cart-page .woocommerce-cart-form table.shop_table {
  border: none;
}
.cart-page .woocommerce-cart-form table.shop_table thead {
  display: none;
}
.cart-page .woocommerce-cart-form table.shop_table tbody tr.cart_item {
  display: grid;
  grid-template-areas: "image name remove" "image price price" "quantity subtotal subtotal";
  grid-template-columns: 80px 1fr 30px;
  gap: 10px;
  background: #ffffff;
  border: 1px solid #222222;
  margin-bottom: 30px;
  position: relative;
  box-sizing: border-box;
  padding: 15px;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td {
  display: block;
  border: none;
  width: auto;
  text-align: left;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-remove {
  display: none;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-thumbnail {
  grid-area: image;
  width: 100%;
  padding: 0;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-thumbnail img {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-name {
  grid-area: name;
  font-weight: bold;
  line-height: 1.4;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-name a {
  color: #222222;
  text-decoration: none;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-price {
  grid-area: price;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-price::before {
  content: "単価: ";
  opacity: 0.8;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-quantity {
  grid-area: quantity;
  align-self: end;
  padding: 0;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-quantity::before {
  content: "数量: ";
  font-weight: bold;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-quantity .quantity {
  display: inline-block;
  width: 80px;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-quantity .quantity input {
  height: 36px;
  width: 90%;
  border: 1px solid #cecdc9;
  text-align: center;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-subtotal {
  grid-area: subtotal;
  align-self: end;
  justify-self: end;
  font-weight: bold;
  padding: 0;
}
.cart-page .woocommerce-cart-form table.shop_table tbody td.product-subtotal::before {
  content: "小計: ";
  font-weight: bold;
}
.cart-page .woocommerce-cart-form table.shop_table tbody .actions {
  display: flex;
  flex-direction: column;
  gap: 15px;
  border-top: 1px solid #222222;
  padding: 0;
}
.cart-page .woocommerce-cart-form table.shop_table tbody .actions button[name=update_cart] {
  background-color: #ffffff;
  color: #222222;
  border: 1px solid #222222;
  cursor: pointer;
  margin-top: 30px;
}
.cart-page .cart-collaterals {
  margin-top: 30px;
  font-size: 1rem;
}
.cart-page .cart-collaterals h2 {
  font-size: 1rem;
  padding-bottom: 15px;
  border-bottom: 1px solid #222222;
}
.cart-page .cart-collaterals table.shop_table_responsive {
  width: 100%;
  border-collapse: collapse;
  border: none;
}
.cart-page .cart-collaterals table.shop_table_responsive tbody tr th,
.cart-page .cart-collaterals table.shop_table_responsive tbody tr td {
  border-bottom: 1px solid #222222;
  text-align: right;
  display: table-cell;
  width: auto;
  padding-top: 15px;
  padding-bottom: 15px;
}
.cart-page .cart-collaterals table.shop_table_responsive tbody tr th {
  width: 20%;
  text-align: left;
}
.cart-page .cart-collaterals table.shop_table_responsive tbody tr td {
  width: 80%;
}
.cart-page .cart-collaterals .wc-proceed-to-checkout {
  margin-top: 30px;
}
.cart-page .cart-collaterals .wc-proceed-to-checkout a.checkout-button {
  width: 100%;
}
.cart-page .cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover {
  opacity: 0.8;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .cart-page .woocommerce {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 40px;
  }
  .cart-page .woocommerce .woocommerce-cart-form {
    width: 60%;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table {
    display: table;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table thead {
    display: table-header-group;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table thead th {
    border-bottom: 2px solid #222222;
    font-weight: bold;
    color: #222222;
    text-align: center;
    padding: 12px 0;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody {
    display: table-row-group;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody tr {
    display: table-row;
    border: none;
    background: transparent;
    padding: 0;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td {
    display: table-cell;
    vertical-align: middle;
    padding: 24px 0;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td::before {
    content: none;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td.product-remove {
    width: 30px;
    text-align: center;
    font-size: 1.25rem;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td.product-thumbnail {
    width: 80px;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td.product-name {
    padding-left: 12px;
    padding-right: 12px;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td.product-price {
    padding-right: 10px;
  }
  .cart-page .woocommerce .woocommerce-cart-form table.shop_table tbody td.product-subtotal {
    width: auto;
    text-align: left;
  }
  .cart-page .woocommerce .cart-collaterals {
    width: 40%;
    position: sticky;
    top: 100px;
  }
}
/* /checkout */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* /checkout */
.checkout-page .checkout-container {
  display: block;
}
.checkout-page .checkout-container .woocommerce-NoticeGroup {
  padding: 10px;
  margin-bottom: 20px;
  border: 1px solid #757575;
}
.checkout-page .checkout-columns {
  display: block;
}
.checkout-page .checkout-left {
  width: 100%;
}
.checkout-page .checkout-right {
  width: 100%;
  margin-top: 30px;
}
.checkout-page .checkout-right #order_review_heading {
  font-weight: bold;
  color: #222222;
  border-bottom: none;
  text-align: center;
  display: block;
  margin-top: 30px;
  margin-bottom: 20px;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #757575;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table thead tr th {
  text-align: center;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tbody {
  border: 1px solid #757575;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tbody tr.cart_item td {
  padding: 10px;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tbody tr.cart_item td.product-name {
  font-size: 0.875rem;
  text-align: left;
  width: 60%;
  font-weight: normal;
  border: 1px solid #757575;
  vertical-align: middle;
  width: 60%;
  font-weight: normal;
  border: 1px solid #757575;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tfoot {
  text-align: right;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tfoot tr th {
  width: 60%;
  padding: 10px 0 5px 10px;
  vertical-align: middle;
  font-weight: bold;
}
.checkout-page .checkout-right table.woocommerce-checkout-review-order-table tfoot tr td {
  width: 40%;
  padding: 5px 10px 10px 0;
  text-align: right;
  vertical-align: middle;
  font-weight: bold;
}
.checkout-page #customer_details h3 {
  font-weight: bold;
  color: #222222;
  border-bottom: none;
  text-align: center;
  display: block;
  margin-bottom: 20px;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper #billing_country_field,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper #billing_country_field,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper #billing_country_field {
  display: none !important;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row {
  display: block;
  width: 100%;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row.form-row-first, .checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row.form-row-last,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row.form-row-first,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row.form-row-last,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row.form-row-first,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row.form-row-last {
  width: calc(50% - 10px);
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row .select2-container .select2-selection--single,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row .select2-container .select2-selection--single,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row .select2-container .select2-selection--single {
  height: 50px;
  border: 1px solid #cecdc9;
  border-radius: 4px;
  background-color: #ffffff;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__rendered,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__rendered,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 50px;
  color: #222222;
}
.checkout-page #customer_details .woocommerce-billing-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__arrow,
.checkout-page #customer_details .woocommerce-shipping-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__arrow,
.checkout-page #customer_details .woocommerce-additional-fields__field-wrapper .form-row .select2-container .select2-selection--single .select2-selection__arrow {
  height: 48px;
}
.checkout-page #customer_details .woocommerce-shipping-fields {
  margin: 30px 0;
}
.checkout-page #customer_details .woocommerce-additional-fields {
  margin-top: 15px;
}
.checkout-page #customer_details .woocommerce-additional-fields label {
  margin-bottom: 5px;
}
.checkout-page .woocommerce-checkout-payment {
  margin-top: 30px;
  background: #ffffff;
  border: 1px solid #757575;
  padding: 30px 15px;
}
.checkout-page .woocommerce-checkout-payment .payment-method-header {
  display: flex;
  align-items: center;
  gap: 10px;
}
.checkout-page .woocommerce-checkout-payment .payment-method-header input[type=radio] {
  display: inline-block;
  vertical-align: middle;
}
.checkout-page .woocommerce-checkout-payment .payment-method-header label {
  font-size: 1rem;
  display: inline-block;
  vertical-align: middle;
  width: auto;
  white-space: nowrap;
}
.checkout-page .woocommerce-checkout-payment .payment_method_square_credit_card .payment-method-icons {
  margin: 15px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.checkout-page .woocommerce-checkout-payment .payment_method_square_credit_card .payment-method-icons img {
  display: inline-block;
  vertical-align: middle;
}
.checkout-page .woocommerce-checkout-payment .payment_method_square_credit_card .payment_box {
  clear: both;
  display: block;
  border-radius: 4px;
  width: 100%;
  box-sizing: border-box;
  margin-top: 10px;
}
.checkout-page .woocommerce-checkout-payment .payment_method_square_credit_card .payment_box p {
  margin-bottom: 15px;
}
.checkout-page .woocommerce-checkout-payment .payment_method_bankjp {
  margin-bottom: 15px;
}
.checkout-page .woocommerce-checkout-payment .payment_method_bankjp .payment-method-icons {
  display: none;
}
.checkout-page .woocommerce-checkout-payment .place-order {
  margin: 0;
  padding: 0;
}
.checkout-page .woocommerce-checkout-payment button[type=submit] {
  margin-top: 30px;
  width: 100%;
}
.checkout-page .woocommerce-checkout-payment #place_order {
  color: transparent !important;
  position: relative;
}
.checkout-page .woocommerce-checkout-payment #place_order::after {
  content: "注文する";
  color: #ffffff;
  font-size: 18px;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  line-height: 1;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 1025px) {
  .checkout-page .checkout-container {
    display: block;
  }
  .checkout-page .checkout-container form.checkout {
    width: 100%;
  }
  .checkout-page .checkout-columns {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    width: 100%;
  }
  .checkout-page .checkout-left {
    flex: 1;
    width: 60%;
  }
  .checkout-page .checkout-right {
    flex: 0 0 40%;
    width: 40%;
    margin-top: 0;
    position: sticky;
    top: 20px;
  }
  .checkout-page .checkout-right #order_review_heading {
    margin-top: 0;
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* /order-received */
.order-received-page .woocommerce-order {
  width: 100%;
  line-height: 2;
}
.order-received-page .woocommerce-order .woocommerce-notice {
  margin-bottom: 20px;
}
.order-received-page .woocommerce-order ul {
  line-height: 2.4;
}
.order-received-page .woocommerce-order h2 {
  font-size: 1.125rem;
  margin-top: 40px;
  margin-bottom: 20px;
  border-bottom: 1px solid #222222;
}
.order-received-page .woocommerce-order thead tr, .order-received-page .woocommerce-order tbody tr, .order-received-page .woocommerce-order tfoot tr {
  border: 1px solid #cecdc9;
}
.order-received-page .woocommerce-order thead tr td, .order-received-page .woocommerce-order thead tr th, .order-received-page .woocommerce-order tbody tr td, .order-received-page .woocommerce-order tbody tr th, .order-received-page .woocommerce-order tfoot tr td, .order-received-page .woocommerce-order tfoot tr th {
  padding: 10px;
  border-left: 1px solid #cecdc9;
}

/* マップにキーが存在するか確認 */
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.my-account-page .myaccount-login {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #757575;
}
.my-account-page .myaccount-login h2, .my-account-page .myaccount-registration h2 {
  margin-bottom: 10px;
}
.my-account-page .myaccount-login .woocommerce-Input--text, .my-account-page .myaccount-registration .woocommerce-Input--text {
  margin-bottom: 20px;
}
.my-account-page .myaccount-login .woocommerce-button, .my-account-page .myaccount-registration .woocommerce-button {
  margin: 10px 0;
}

.woocommerce .password-input {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
}
.woocommerce .password-input input[type=password],
.woocommerce .password-input input[type=text] {
  width: 100%;
  box-sizing: border-box;
}
.woocommerce .password-input input::-ms-reveal {
  display: none;
}
.woocommerce button.show-password-input {
  box-sizing: border-box;
  align-self: flex-start;
  width: 44px;
  min-width: 44px;
  max-width: none;
  height: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  overflow: visible;
  flex-shrink: 0;
  position: static;
  top: auto;
  right: auto;
  transform: none;
  background-color: transparent;
  color: #222222;
  border: none;
  border-radius: 0;
  font-size: inherit;
  line-height: 1;
  font-weight: normal;
  text-align: center;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  transition: opacity 0.2s ease;
}
.woocommerce button.show-password-input::before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.3 3.3C16.9 2.9 16.2 2.9 15.7 3.3L13.3 5.7C12.2437 5.3079 11.1267 5.1048 10 5.1C6.2 5.2 2.8 7.2 1 10.5C1.2 10.9 1.5 11.3 1.8 11.7C2.6 12.8 3.6 13.7 4.7 14.4L3 16.1C2.6 16.5 2.5 17.2 3 17.7C3.4 18.1 4.1 18.2 4.6 17.7L17.3 4.9C17.7 4.4 17.7 3.7 17.3 3.3ZM6.7 12.3L5.4 13.6C4.2 12.9 3.1 11.9 2.3 10.7C3.5 9 5.1 7.8 7 7.2C5.7 8.6 5.6 10.8 6.7 12.3ZM10.1 9C9.6 8.5 9.7 7.7 10.2 7.2C10.7 6.8 11.4 6.8 11.9 7.2L10.1 9ZM18.3 9.5C17.8 8.8 17.2 8.1 16.5 7.6L15.5 8.6C16.3 9.2 17 9.9 17.6 10.8C15.9 13.4 13 15 9.9 15H9.1L8.1 16C8.8 15.9 9.4 16 10 16C13.3 16 16.4 14.4 18.3 11.7C18.6 11.3 18.8 10.9 19.1 10.5C18.8 10.2 18.6 9.8 18.3 9.5ZM14 10L10 14C12.2 14 14 12.2 14 10Z" fill="%23222222"/></svg>');
}
.woocommerce button.show-password-input.display-password::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.3 9.49999C15 4.89999 8.50002 3.79999 3.90002 7.19999C2.70002 8.09999 1.70002 9.29999 0.900024 10.6C1.10002 11 1.40002 11.4 1.70002 11.8C5.00002 16.4 11.3 17.4 15.9 14.2C16.8 13.5 17.6 12.8 18.3 11.8C18.6 11.4 18.8 11 19.1 10.6C18.8 10.2 18.6 9.79999 18.3 9.49999ZM10.1 7.19999C10.6 6.69999 11.4 6.69999 11.9 7.19999C12.4 7.69999 12.4 8.49999 11.9 8.99999C11.4 9.49999 10.6 9.49999 10.1 8.99999C9.60003 8.49999 9.60003 7.69999 10.1 7.19999ZM10 14.9C6.90002 14.9 4.00002 13.3 2.30002 10.7C3.50002 8.99999 5.10002 7.79999 7.00002 7.19999C6.30002 7.99999 6.00002 8.89999 6.00002 9.89999C6.00002 12.1 7.70002 14 10 14C12.2 14 14.1 12.3 14.1 9.99999V9.89999C14.1 8.89999 13.7 7.89999 13 7.19999C14.9 7.79999 16.5 8.99999 17.7 10.7C16 13.3 13.1 14.9 10 14.9Z" fill="%23222222"/></svg>');
}
.woocommerce button.show-password-input:hover {
  opacity: 0.7;
  background-color: transparent;
}

.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
  width: 100%;
  margin-bottom: 30px;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul {
  list-style: none;
  background: #fff;
  border: 1px solid #757575;
  border-radius: 4px;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid #eee;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li:last-child {
  border-bottom: none;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 15px 20px;
  text-decoration: none;
  transition: background 0.3s, color 0.3s;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:hover {
  background-color: #f5f5f5;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a {
  background-color: #222222;
  color: #fff;
  font-weight: bold;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul .woocommerce-MyAccount-navigation-link--downloads {
  display: none;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
  width: 100%;
  line-height: 2;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content p {
  margin: 0 15px;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content a {
  text-decoration: underline;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content p {
  margin-bottom: 15px;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content {
  /*
  form {
      .woocommerce-form-row {
      }
      fieldset {
          border: 1px solid #eee;
          background: colors.$bg;
          border-radius: 4px;
          legend {
              font-weight: bold;
              background: colors.$bg;
          }
      }
      button[type="submit"] {
          background-color: colors.$black;
          color: #fff;
          border: none;
          cursor: pointer;
          font-weight: bold;
          border-radius: 4px;
          transition: opacity 0.3s;
          &:hover { opacity: 0.8; }
      }
  }
  */
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns .u-column1, .woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns .u-column2 {
  width: 100%;
  border-radius: 4px;
  box-sizing: border-box;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns header.title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #cecdc9;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns header.title a.edit {
  background: #fff;
  border: 1px solid #cecdc9;
  border-radius: 3px;
  text-decoration: none;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content .u-columns address {
  font-style: normal;
  line-height: 1.6;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #757575;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table th, .woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table td {
  border-bottom: 1px solid #757575;
  text-align: left;
  font-size: 0.75rem;
  padding: 0.5em;
  text-align: center;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table th a, .woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table td a {
  color: #222222;
  background: #ffffff;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-content table.account-orders-table th {
  background-color: #ffffff;
  font-weight: bold;
}

/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .woocommerce-account {
    /*
    max-width: 1000px;
    flex-direction: row;
    align-items: flex-start;
    gap: 40px;
    */
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
/* アニメーション定義: 回転 (Spin) */
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.page-contact .page-content {
  width: 100%;
}
.page-contact .page-content p {
  margin-bottom: 30px;
  width: 100%;
}
.page-contact .page-content textarea {
  height: 200px;
}
.page-contact .page-content .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  margin-top: 5px;
  box-sizing: border-box;
}
.page-contact .page-content input[type=submit],
.page-contact .page-content button[type=submit] {
  display: block;
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  background-color: #222222;
  color: #ffffff;
  font-weight: bold;
  letter-spacing: 0.05em;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: opacity 0.3s;
  text-align: center;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.page-contact .page-content input[type=submit]:hover,
.page-contact .page-content button[type=submit]:hover {
  opacity: 0.8;
  background-color: #333;
}
.page-contact .page-content {
  /* エラーメッセージ（入力欄下） */
}
.page-contact .page-content .wpcf7-not-valid-tip {
  color: #d32f2f;
  display: block;
}
.page-contact .page-content {
  /* 送信結果メッセージボックス */
}
.page-contact .page-content .wpcf7-response-output {
  border-radius: 4px;
  text-align: center;
  border: 1px solid transparent;
  box-sizing: border-box;
  width: 100%;
  display: none;
}
.page-contact .page-content {
  /* 表示制御：成功 */
}
.page-contact .page-content form.sent .wpcf7-response-output,
.page-contact .page-content .wpcf7-mail-sent-ok {
  display: block !important;
  border-color: #222222;
  background-color: #ffffff;
  color: #222222;
}
.page-contact .page-content {
  /* 表示制御：エラー */
}
.page-contact .page-content form.invalid .wpcf7-response-output,
.page-contact .page-content form.unaccepted .wpcf7-response-output,
.page-contact .page-content form.spam .wpcf7-response-output,
.page-contact .page-content form.failed .wpcf7-response-output,
.page-contact .page-content .wpcf7-validation-errors {
  display: block !important;
  border-color: #d32f2f;
  background-color: #fff;
  color: #d32f2f;
}
.page-contact .page-content {
  /* ローディングアイコン */
}
.page-contact .page-content .wpcf7-spinner, .page-contact .page-content .ajax-loader {
  width: 24px !important;
  height: 24px !important;
  background-color: transparent !important;
  border: 3px solid #cecdc9 !important;
  border-top-color: #222222 !important;
  border-radius: 50% !important;
  display: block !important;
  animation: spin 1s linear infinite;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s;
}
.page-contact .page-content .wpcf7-spinner.is-active, .page-contact .page-content .is-active.ajax-loader {
  visibility: visible !important;
  opacity: 1 !important;
}
/* マップにキーが存在するか確認 */
@media screen and (min-width: 768px) {
  .page-contact .page-content {
    width: 80%;
    margin: 0 auto;
  }
}
/*
Theme Name: L01.3
Theme URI: http://euthymia.net/
Description: EUTHYMIA - WooCommerce
Author: EUTHYMIA
Author URI: http://euthymia.net/
Version: 20260507
*/
/* 1. Variables & Tools */
.law {
  max-width: 1080px;
  margin: 0 auto;
}
.law p {
  margin-bottom: 15px;
}
.law hr {
  margin: 30px 0;
}

/* マップにキーが存在するか確認 *//*# sourceMappingURL=style.css.map */