@charset "UTF-8";

/* Theme Name:nse
Theme URI:https://nihon-sogo-engei.com/
*/


:root {
  --body-font: "Noto Sans JP", sans-serif;
  --mincho: "Shippori Mincho", serif;
  --font-size:15px;
  --theme-color:#3f7749; 
  --button-color:#0F3A25; 
  --button-hover-color:#005c2b; 
  --link-color:#065830; 
  --hover-color:#1e9555; 
  --font-color:#1a1a1a;
  --checked-color:#065830;
  --strong-color:#ff8800;
  --border-color:#b6b6b6;
  --layer-color:#f0f0f0;
  --line-height: 2;
  --line-height-mono: 1.6;
  --input-padding:16px;
  --placeholder-color:#cccccc; /* --hover-color:#64a2bc; */
  --button-border-radius:50px;
  --wc-message-time:8s;
  --wc-message-pop-top:var(--column-gap);
  --column-gap:40px; 
  --section-gap:120px; 
  --container-width:1080px;
  --vw:100vw;
  --item-gap:32px;
}
@media screen and ( max-width : 1400px ) {
  :root {
    --column-gap:48px; 
    --section-gap:96px; 
    --item-gap:24px;
  }
}

@media screen and ( max-width : 1024px ) {
  :root {
  --font-size:14px;
    --column-gap:40px; 
    --section-gap:80px; 
    --wc-message-pop-top:64px;
    --item-gap:20px;
  }
}

@media screen and ( max-width : 960px ) {
  :root {
    --column-gap:32px; 
    --section-gap:64px; 
    --wc-message-pop-top:64px;
    --item-gap:16px;
  }
}
@media screen and ( max-width : 782px ) {
  :root {
    --font-size:13px;
    --column-gap:24px; 
    --section-gap:56px; 
    --wc-message-pop-sp-bottom:56px;
    --item-gap:16px;
  }
}
@media screen and ( max-width : 480px ) {
  :root {
    --column-gap:20px; 
  }
}
@media screen and ( max-width : 380px ) {
  :root {
    --column-gap:16px; 
  }
}

/*   RESET CSS
-----------------------------------------------------*/
table { border-collapse: collapse; border-spacing: 0; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

/*   Base
-----------------------------------------------------*/
html { box-sizing: border-box; scroll-behavior: smooth; scroll-padding-top: 2rem; }
html body.l-container-body { visibility: hidden; }
html.wf-active body.l-container-body, html.loading-delay body.l-container-body { visibility: visible; }
body { text-rendering: optimizeLegibility; font-family:var(--body-font); -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; }
h1, h2, h3 { font-weight:500; line-height:var(--line-height-mono); font-family:var(--mincho); }
h1 { font-size:3em; }
h2 { font-size:2.2em; }
h3 { font-size:1.6em; }
.amount { font-weight:500; }
a:active, a:hover { color: inherit; text-decoration: none; }
.js-focus-visible :focus:not(.focus-visible) { outline:0; }
.image-wrap { border-radius:8px; }
.image-link.video-link::after { font-size:1em; color:rgb(210, 0, 24); background-color:rgba(255,255,255,.8); border-width:0; line-height:2.4em; width:2.4em; height:2.4em; border-radius:50%; }
h2.title { margin-top:0; text-align:center;  }
h3.subtitle { font-size:1.4em }
p.title-head { text-align:center; font-family:var(--mincho); margin:0 0 4px; font-size:1.1em; line-height:var(--line-height-mono);}
h2.story-title { text-align:center; font-family:var(--mincho); font-size:1.5em; }
h2.story-title + h2.story-title { margin-top:1em; }
p.story { text-align:center; font-family:var(--mincho); font-weight:500; margin-top:1em; }
a.text-link { color:var(--link-color); text-decoration:underline; }
a.text-link:hover { color:var(--hover-color); text-decoration:underline; }
.archive-container, .product-container { --container-width:1600px; }
.container { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 0 auto; position: relative; z-index:1; }
.l-container-first-block { padding-top:var(--column-gap); }
#main { padding-bottom: var(--section-gap); }

@media screen and (min-width: 782.1px) { 
  body { padding-left: 100px; }
}
@media screen and (min-width: 1024.1px) { 
  body { padding-left: 120px; }
}
@media screen and (min-width: 1366.1px) { 
  body { padding-left: 150px; }
}
@media screen and ( max-width : 782px ) { 
  .l-container-sp { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 0 auto; }
}

@media screen and ( max-width : 1024px ) {
  /* h2.title { font-size:2.2em; } */
  h3.subtitle { font-size:1.3em }
}
/* @media screen and ( max-width : 960px ) {
#main { overflow:hidden; }
} */
@media screen and ( max-width : 782px ) {
  /* h2.title { font-size:2em; } */
  h3.subtitle { font-size:1.2em }
  h1 { font-size:2.8em; } 
  h2 { font-size:1.8em; }
  h3 { font-size:1.5em; }
}
@media screen and ( max-width : 480px ) {
  h1 { font-size:2.4em; } 
  h2 { font-size:1.6em; }
  h3 { font-size:1.4em; }
}


/* header
-----------------------------------------------------*/

#site-header-logo { position: absolute; z-index: 997; left: 0; top: 0; margin: auto; width: var(--section-gap); background:#FFF; padding:2em; display: flex; align-items: center; justify-content: center; width:calc(9vw + 4em + var(--column-gap) *2 ); max-width:140px; }
body.home #site-header-logo { background: none; }
#site-header-logo img { width: 100%; display: block; -o-object-fit: contain; object-fit: contain; -o-object-position: top center; object-position: top center; }
.header-mainmenu { display: none; background: #004729; color: #FFF; position: fixed; inset: 0; margin: auto; padding: 100px 0; z-index: 998; }
.header-mainmenu svg { fill: #FFF; width: 1.25rem; height: auto; }
.header-mainmenu.-open { display: block; }
.header-mainmenu__primary { margin-bottom: 80px; }
.header-mainmenu__secondary { margin-bottom: 50px; }
.header-mainmenu__tertiary { text-align:center; }
.header-mainmenu__logo { margin-bottom: 2rem; width: 8rem; }
.header-shopmenu { position: fixed; left: 0; right: 0; bottom: 0; margin: auto; width: 100%; background:#FFF; padding-bottom: constant(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom); display: flex; z-index: 999; -webkit-box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.1); box-shadow: 0 -3px 3px rgba(0, 0, 0, 0.1); }
.header-shopmenu__item { width: 33.3333333333%; height: 4.5714285714rem; font-size:0.875em; position: relative; text-align:center; display: flex; align-items: center; justify-content: center; text-transform: uppercase; letter-spacing: 0.05em; }
.header-shopmenu__item .cart-count-box { background-color:var(--theme-color); color:#fff; border-radius:1em; display:inline-block; position: absolute; text-align:center; padding:.15em 0; width:1.4em; height:1.4em; font-size:12px; line-height:1; transform:translate(-0.8em, -0em); margin:0; }
.header-shopmenu__item .cart-count-box[data-count="0"] { display:none; }
.header-shopmenu__item .icon { margin-right: 1em; vertical-align: middle; }
.header-shopmenu__item img { width: auto; height: 2em; }
.header-shopmenu__item:first-child { border-right: 1px solid #E6E6E6; }
@media screen and (min-width: 782.1px) { 
  :root { --vw: calc(100vw - 100px); }
  #site-header{ display: flex; flex-direction: column; padding: 2rem 0; align-items: center; width: 100px; position: fixed; top: 0; left: 0; bottom: 0; background:#FFF; z-index:5; }
  #site-header-logo { position: relative; top: auto; left: auto; margin: 0; background: none; padding: 0; height: auto; width: 4.5rem; }
  .header-mainmenu { position: relative; display: block; right: auto; width: 100%; background: none; padding:2rem 0; margin: auto 0 0; }
  .header-mainmenu__secondary { display: none; }
  .header-mainmenu__primary { margin-top: auto; margin-bottom: 0; height: 100%; }
  .header-mainmenu__tertiary { display: none; }
  .header-shopmenu { position: relative; flex-direction: column; background: none; box-shadow: none; width: 100%; right: auto; margin: 0; }
  .header-shopmenu__item { flex-direction: column; width: 100%; padding: 1em 0; height: auto; font-size:0.6875rem; line-height:var(--line-height-mono); }
  .header-shopmenu__item:first-child { border: none; }
  .header-shopmenu__item .icon { display: block; margin: 0 auto 0.5em; }
}
@media screen and (min-width: 1024.1px) { 
  #site-header{ width: 120px; }
  :root { --vw: calc(100vw - 120px); }
}
@media screen and (min-width: 1366.1px) { 
  #site-header{ width: 150px; }
  :root { --vw: calc(100vw - 150px); }
}
@media screen and (max-height: 700px) and (min-width: 782.1px) { 
  #site-header{ padding: 1rem 0; }
  .header-shopmenu__item { padding: 0.5em 0; }
}
@media screen and (max-height: 800px) and ( max-width : 781px ) { 
  .header-mainmenu { overflow-y: scroll; }
}
@media screen and (min-width: 782.1px) { 
  .header-mainmenu svg { fill: #000; }
}
@media screen and (max-height: 1000px) and (min-width: 782.1px) { 
  .header-mainmenu svg { display: block; height: auto; width: 1.8vh; }
}



/* Header Buttons */
.section { margin:var(--section-gap) 0; }
#main > .section:last-child { margin-bottom:0; }
.subscription-banners { display: flex; gap:2.5%; margin: var(--column-gap) auto; justify-content: center; }
a.subscription-banner { font-family: var(--mincho); font-weight:bold; padding:1em; line-height:var(--line-height-mono); color: white; text-decoration: none; font-size:21px; display: flex; flex:1; align-items: center; gap: .5em; min-width: 200px; justify-content: center; position:relative; outline: solid .1em currentColor; outline-offset:-.5em; }
a.subscription-banner .icon { width:4em; height:4em; background-color: white; line-height:1.2; font-size:.92em; border-radius: 50%; display:flex; align-items:center; justify-content:center; }
a.subscription-banner.gift { background-color: #d87875; }
a.subscription-banner.gift .icon{ color: #d87875; }
a.subscription-banner.gift:hover { background-color: #ca6461; }
a.subscription-banner.gift:hover .icon { color: #ca6461; }
a.subscription-banner.course { background-color: #5a8f7b; }
a.subscription-banner.course .icon{ color: #5a8f7b; }
a.subscription-banner.course:hover { background-color: #44856c; }
a.subscription-banner.course:hover .icon { color: #44856c; }
a.subscription-banner p { margin:0; }
a.subscription-banner svg { height:3.8em; width:2.6em; margin-left:auto; object-fit:contain;}
#modal-coupon p { text-align:center; font-size:1em; }
#modal-coupon .code { font-size:2em; font-weight:bold; letter-spacing:.5em; background-color:transparent; display:inline-block; }
#modal-coupon .code-copy { font-size:12px; position: relative; top:-.25em; text-align:center; width:6em; display:inline-block; border-radius:100px; --input-padding:.66em; cursor:pointer; }
.pretitle { display:block; text-align:center; color: var(--gray-color); font-family:"Marcellus"; letter-spacing:.1em; }
@media screen and ( max-width : 1180px ) { 
    a.subscription-banner { font-size:1.72vw; }
}
@media screen and ( max-width : 782px ) { 
    .subscription-banners { display:block; }
    a.subscription-banner { max-width:520px; margin:1em auto; font-size:1.4em; }
}
@media screen and ( max-width : 480px ) { 
    a.subscription-banner { font-size:4.2vw; flex-wrap:wrap; justify-content:center; gap:0; }
    a.subscription-banner .icon { height:auto; width:auto; padding:.25em 1.25em; font-size:.875em; border-radius:100px; }
    a.subscription-banner .icon br { display:none; }
    a.subscription-banner p { width:calc(100% - 2.6em); }
    a.subscription-banner svg { width:2.6em; }
}
/* About Us Section */
.section-header { display:block; text-align:center; }
.section-header .pretitle { font-size:1.15em; margin-bottom:1em; }
.section-header .pretitle::after { display:block; content:''; height:1.7em; width:1px; margin:0 auto; background-color:currentColor; }
.section-header h2.title { margin:0; }
.section-header h3.subtitle { margin:0; }
.section-header h2.title span, .section-header h3.subtitle span {display:inline-block; }
.section-header h2.title + h3.subtitle, .section-header h3.subtitle + h3.title { margin:1rem 0 0; }
.section-header p { margin:1em 0 0; font-size:1.15em; font-family:var(--mincho);}

/* Flower Images */
.flower-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap:0; margin:var(--column-gap) 0; }

/* Subscription Section */
.subscription-section { padding:1.5em; text-align:center; border-width:.1em; margin:var(--column-gap) 0; position: relative; border-radius:1em; }
.subscription-section .flower-gallery { display: grid; grid-template-columns: repeat(4, 1fr); gap:0; margin:0; }
.subscription-section .flower-gallery .flower-img { width: 100%; height:180px; object-fit:cover; }
.subscription-section .section-header { padding:var(--column-gap) 0; }
.subscription-section .section-header .pretitle::after{ display:none; }
.subscription-section .section-header .pretitle { color:inherit; margin:0; }
.subscription-section .section-header h2.title { font-size:3.5em; }
.subscription-section .section-header .header-text { font-family:inherit; max-width:40em; margin:1em auto; }
.subscription-section .section-header .header-text span { display:inline-block }
.subscription-section .price-circle { width:10em; height:10em; line-height:var(--line-height-mono); font-size:1em; border-radius: 50%; background-color: white; color:var(--link-color); border: 2px solid currentColor; display: flex; flex-direction: column; align-items: center; justify-content: center; margin:0; position: absolute; right: 10%; top:160px; }
.subscription-section .price-circle .amount { font-size:2.3em; }
.subscription-section .price-circle .times { margin:0 0 .4em; font-size:.925em; }
.subscription-section .price-circle .times::after { content:''; display:block; width:1.82em; margin:.4em auto 0; border-bottom-width:.07em; }
.subscription-section .price-circle .suffix { margin:.4em 0 0; font-size:.875em; }
.subscription-section .button { width:auto; display:block; max-width:480px; margin:0 auto var(--column-gap); }
.features-section .features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap:var(--column-gap); margin:var(--column-gap) 0; }
.features-section .feature-item .feature-img { display:block; width: 100%; height:240px; aspect-ratio:3/2; object-fit:cover; border-radius:8px; margin:0 auto 8px; }
.features-section .feature-item h3 { text-align:center; border-bottom-width:1px; margin:0; padding-bottom:.25em; text-align:center; }
.features-section .feature-item p { }
.story-section .story-content { display: flex; align-items: center; gap:var(--column-gap); margin:var(--column-gap) 0; text-align: left; }
.story-section .story-content .story-img { width:55%; object-fit:cover; aspect-ratio:3/2; border-radius:8px; flex-shrink: 0; }
.story-section .story-content .story-text { flex:1; }
.story-section .story-content .story-text .pretitle { text-align:inherit; }
.story-section .story-content .story-text h3 { margin-top:.5em; }
.story-section .story-content:nth-child(odd) .story-img {  order:1 }
h3 span { display: inline-block }
.section-dakara { text-align:center; position: relative; padding:0 var(--column-gap) (--section-gap); margin-bottom:var(--section-gap);}
.section-dakara img { position:absolute; bottom:0; left:50%; z-index:-1; transform:translateX(-50%); max-width:100%; }
.section-layer { padding:var(--section-gap) 0; margin:var(--section-gap) 0; text-align:center; position: relative; }
.section-layer::after { content:''; background-color:var(--layer-color); position:absolute; z-index:-1; top:0; bottom:0; width:var(--vw); left:50%; transform:translateX(-50%); }
@media screen and ( max-width : 1028px ) { 
  .subscription-section .flower-gallery .flower-img { height:160px; }
  .subscription-section .price-circle { right:1em; font-size:.875em; }
}
@media screen and ( max-width : 782px ) { 
  .subscription-section .price-circle { right:-.5em; top:-2.5em; font-size:.75em;}
  .features-section .features-grid { grid-template-columns: 1fr; gap: 20px; }
  .features-section .feature-item .feature-img { width:70%; height:auto; aspect-ratio:3/2; max-width:360px; }
  .subscription-section .flower-gallery {  grid-template-columns: repeat(3, 1fr); }
  .subscription-section .flower-gallery .flower-img { height:120px; }
  .subscription-section .flower-gallery .flower-img:last-child { display:none; }
  .story-section .story-content { display:block; }
  .story-section .story-content .story-img { width:calc( 100% + var(--column-gap) *2 ); max-width:none; max-height:320px; margin:0 calc( var(--column-gap) * -1 ) 1em; object-fit:cover; aspect-ratio:3/2; border-radius:0; flex-shrink: 0; }
}
@media screen and ( max-width : 480px ) { 
  .subscription-section .price-circle { display:none }
}
.flow-section { max-width:var(--container-width); margin-left:auto; margin-right:auto; }
.flow-section-columns::before { display:none; }
.flow-section-columns .column { counter-increment: columnnum; background-color:#e1eae3; padding:1rem; border-radius:20px; position: relative; }
.flow-section-columns .column p { font-weight:500; font-size:.875em; }
.flow-section-columns .column:nth-child(2)::after { display:block; content:''; position:absolute; top:50%; left:calc( var(--column-gap) * -1 ); z-index:-1; width:calc( 100% + var(--column-gap) * 2 ); border-top:.2em dashed #e1eae3; }
.flow-section-columns .column .icon-image { display:block; background-color:#fff; border-radius:50%; height:8em; width:8em; margin:1rem auto; }
.flow-section-columns .column .icon-image svg { height:6em; width:4em; margin:1em 2em; object-fit:contain; }
.flow-section-columns .column::before { content: counter(columnnum, decimal-leading-zero ); color: #87a58e; font-family:var(--mincho); position:absolute; right:1rem; top:1rem}
@media screen and ( max-width : 782px ) {
  .flow-section { padding:0; background-color:transparent; width:auto; max-width:none; }
  .flow-section-columns { margin:1rem auto 0; padding-bottom:3%; width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); }
  .flow-section-columns .column { max-width:400px; margin-left:auto; margin-right:auto; }
  .flow-section-columns .column:nth-child(2)::after { position:absolute; top:calc( var(--column-gap) * -1 ); bottom:calc( var(--column-gap) * -1 ); left:calc( 50% - .1em ); right:auto; width:0; height:calc( 100% + var(--column-gap) * 2 ); border-top-width:0; border-left:.2em solid #e1eae3; }
}
@media screen and ( max-width : 1240px ) { 
  .flow-section-columns { --column-gap:32px; }
}
.delivery-section { position: relative; }
.delivery-section .delivery-map { position:absolute; height:100%; width:100%; object-fit:contain; object-position:center; right:0; top:0; bottom:0; left:0; z-index:-1; }
.delivery-section-content { position: relative; padding:80% 0 0; }
.delivery-section-content .map-color { position:absolute; left:0; top:0; }
.delivery-section-content .map-color li { display:flex; align-items: center; font-family:var(--mincho); font-size:1.25em; }
.delivery-section-content .map-color li small { font-size:.75em; }
.delivery-section-content .map-color li::before { content:''; height:1.8em; width:1.8em; flex-shrink:none; margin-right:.25em; display:block; border-width:.05em; border-radius: 50%; background-color:#e1eee7; }
.delivery-section-content .map-color li.jishabin::before { background-color:#e4c2c6; }
.delivery-section-content .deliver-section-area-checker { width:100%; max-width:480px; padding:0; margin:var(--column-gap) auto 0; }
.delivery-section-content #customer_area_message { height:3em; }
.delivery-section-content #customer_area_checker #customer_area_message a.button { display:none; }
#customer_area_checker { display:flex; flex-wrap:wrap; gap:16px; align-items:center; font-size:1em; }
#teikibin-filter { padding:16px; border-radius:6px; border-width:1px; max-width:640px; margin:var(--column-gap) auto; }
#teikibin-filter #customer_area_checker { justify-content:center; }
#teikibin-filter #customer_area_checker #customer_area_message p, #teikibin-filter #customer_area_checker #customer_area_message a.button { display:none; }
#customer_area_checker { padding:0; position: relative; }
#customer_area_checker.loading { opacity:.5; }
#customer_area_checker.loading::after { display:block; content:''; position:absolute; left:0; right:0; top:0; bottom:0; margin:auto; width: 40px; height: 40px; border: 3px solid var(--border-color); border-top: 3px solid #4facfe; border-radius: 50%; animation:spin 1s linear infinite; }
#customer_area_recommend { font:inherit; display:flex; align-items:center; gap:.25em; animation: blinking 1s ease-in-out infinite alternate; color:var(--caution-color) }
#customer_area_recommend svg { width:1.2em; height:auto; fill:currentColor; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes blinking { 0% {opacity: 0;} 100% { opacity: 1;} }
#customer_area_checker.yubin-inputed #customer_area_recommend { display:none; }
#customer_area_message { margin:0; }
#customer_area_message:empty { display:none; }
#customer_area_message h3 { font-size:1.1em; font-weight:600; font-family:inherit; margin:0; padding:0; color:var(--theme-color); line-height:var(--line-height-mono); }
#customer_area_message h3.error { color:var(--caution-color); }
#customer_area_message p { font-size:.875em; font-family:inherit; margin:8px 0 0; line-height:var(--line-height-mono); padding:0; }
#customer_area_wrap { display:flex; font-size:16px; max-width:480px; width:100%; }
#customer_area_code { display:block; font-size:20px; flex:3; font-weight:bold; line-height:2; letter-spacing:.1em; padding: .5em 1em; border-radius:.25em 0 0 .25em; border-width:0; background-color:var(--layer-color); }
#customer_area_button { flex:2; line-height:2; font-size:inherit; font-weight:bold; padding: .5em; border-radius:0 .25em .25em 0; }
.product-add-to-cart #customer_area_message p { display:none; }
.wpcf7 #customer_area_message a { display:none; }
.wpcf7 #customer_area_checker ~ .cf7mls-btns #cf7mls-next-btn-cf7mls_step-1 { display:none; }
.wpcf7 #customer_area_checker.delivery-jisha ~ .cf7mls-btns #cf7mls-next-btn-cf7mls_step-1 { display:block; }
.wpcf7 #customer_area_checker.delivery-takuhai ~ .cf7mls-btns #cf7mls-next-btn-cf7mls_step-1 { display:block; }
@media screen and ( min-width : 1024.1px) { 
  .delivery-section-content { padding:60% 0 0; }
  .delivery-section .delivery-map { object-position:right top; }
  .delivery-section-content .deliver-section-area-checker { position:absolute; right:0; bottom:0; width:480px; margin:0; }
  #teikibin-filter #customer_area_recommend svg { transform:none;}
}
@media screen and ( max-width : 600px ) {
  #customer_area_code { padding: .5em; }
}
@media screen and ( max-width : 480px ) {
  #customer_area_code { font-size:16px; line-height:32px; padding: .5em; }
  #customer_area_button { line-height:32px; padding: .5em; font-size:14.5px; }
}

.section-conserge { display:flex; gap:16px; align-items:center; border-top-width:1px; padding-top:var(--column-gap)}
.section-conserge .conserge-about { flex:1; }
.section-conserge .conserge-about p { margin:0; }
.section-conserge .conserge-about p span { display: inline-block; }
.section-conserge .conserge-about .phone { font-size:3em; font-weight:bold; display: inline-block; margin:0; line-height:1.3; }
.section-conserge .conserge-about .hours { display: inline-block; margin:0; }
.section-conserge .conserge-buttons { display:flex; gap:1em; }
@media screen and ( max-width : 960px ) {
.section-conserge { display:block; text-align:center;}
.section-conserge .conserge-buttons { width:100%; margin-top:var(--column-gap); }
.section-conserge .conserge-buttons .contact-button { flex:1; }
}
a.contact-button { border-radius:8px; font-size:1.25em; line-height:1.2; font-weight:bold; text-align:center; width:10em; padding:.75em; }
a.contact-button svg { width:1.5em; height:1.25em; display:block; margin:0 auto; object-fit:contain;}
a.line-contact-button { background-color: #16b031; color:#fff; }
a.mail-contact-button { border:.1em solid currentColor; color:#004729; }
a.contact-button:hover { opacity:.8}

/*
mailmagazine form
-----------------------------------------------------*/
.mailmagazine-area { margin:0; display: flex; flex-direction: column; align-items: center; padding: calc(70em/16) calc(90/1250*100%); position: relative; background-color: #f4f4f4; }
.mailmagazine-title { font-size:1.2em; font-family:var(--mincho); font-weight:600; margin:0; }
.mailmagazine-title::after { content: ""; display: block; width: calc(30em/23); height: 2px; margin: calc(15em/23) auto 0; background-color:var(--v-greencolor); }
.mailmagazine-text { margin:8px 0 var(--column-gap); line-height:1.6; font-family:var(--mincho); }
#mailpoet_form_iframe { height:120px; }
@media screen and ( max-width : 1024px ) {
   .mailmagazine-area { display: block; padding: calc(70em/16) calc(30em/16); }
   .mailmagazine-formbody { display: block; }
   .mailmagazine-text { text-align:left; }
}

#sticky-area { font-size:15px; display:block; z-index:-10; position: relative; margin:0; }
#sticky-area .sticky-boxes { width:11em; transform:translateY(calc(-100% - 2em)); margin:0 0 0 auto; line-height:var(--line-height-mono); }
#sticky-area .sticky-box { opacity:0; transition:all .5s; width:100%; position: relative; padding:0; }
#sticky-area .sticky-box a.box { display:block; margin:0; text-align:center; background-color:#5a8f7b; color:#FFF; font-weight:600; padding:16px; border-radius:8px 0 0 8px; }
#sticky-area .sticky-box a.box svg { fill:currentColor; width:100%; height:3.5em; margin-top:.5em; object-fit:contain; }
#sticky-area .sticky-box a.box:hover { background-color:#44856c; }
#sticky-area .sticky-box a.close { cursor: pointer; background-color:#5a8f7b; color:#FFF; border:1px solid currentColor; text-align:center; height:1.3em; width:1.3em; line-height:1; padding:.15em; display:block; position:absolute; right:.2em; top:-.4em; border-radius:50%; }
#sticky-area .sticky-box a.close::before, #sticky-area .sticky-box a.close::after { transform: translate(-50%,-50%) rotate(45deg); display:block; content:''; position: absolute; top:50%; left:50%; width:0; height:.8em; border-left:1px solid currentColor;}
#sticky-area .sticky-box a.close::after { transform: translate(-50%,-50%) rotate(-45deg); }
body.midview #sticky-area, body.endview #sticky-area { z-index:1; }
body.midview #sticky-area .sticky-box, body.endview #sticky-area .sticky-box { opacity:1; }
@media screen and (min-width: 782.1px) {
  #sticky-area { position:sticky; left:0; top:auto; right:0; bottom:0; height:0; margin:240px 0 -120px; }
}
@media screen and ( max-width : 782px ) {
  #sticky-area { display:none; }
}

/*
footer
-----------------------------------------------------*/
#site-footer { background: #004729; color: #FFF; padding:var(--section-gap) 0 8px; margin-bottom:-1px; }
.footer__logo { display: block; margin-bottom: 2.5rem; }
.footer-menu { text-align:center; display:flex; flex-wrap:wrap; margin-top:var(--column-gap); font-family:var(--mincho); }
.footer-menu .menu-secondary { flex:1; margin:0; }
.footer-menu .menu-secondary .menu-secondary__item { margin:.5rem 0 0; position: relative;}
.footer-menu .menu-secondary:nth-child(n+2) li::before { content:'・'; display:block; position:absolute; left:-.5em; width:1em; height:1em; color:currentColor }
.footer-copyright { font-size:0.7142857143rem; letter-spacing: 0.1em; text-align:center; }
.menu-button { display:flex; flex-wrap:wrap; justify-content: space-between; align-items:stretch; gap:1rem; }
.menu-button__item { flex:1; display:flex; flex-wrap:wrap; align-items:stretch; margin:0; min-height:4em; }
.menu-button__item a { border-radius:100px; display:flex; width:100%; align-items:center; flex:1; padding:.5em; justify-content:center; text-align:center; color:#004729; background-color:white; line-height:1.3; font-family:var(--mincho); }
.menu-button__item a:hover { background-color:#e8fff4; }
@media screen and ( max-width : 782px ) { 
  .footer-menu .menu-secondary:nth-child(3) { min-width:100%; margin-top:2rem; }
  .footer-menu .menu-secondary:nth-child(3) li::before { content:''; display:none; }
}
@media screen and ( min-width: 782.1px) { 
  .menu-button { flex-wrap:nowrap; }
  .menu-button__item { min-width:auto; }
  .footer-menu { flex-wrap:nowrap; }
  .footer-menu .menu-secondary { flex:1; margin:0; }
}
@media screen and ( min-width: 1024.1px) { 
  .footer__inner { display: flex; justify-content: space-between; padding-bottom: 12rem; position: relative; }
  .footer-copyright { position: absolute; right: 0; bottom: 0; margin: auto; }
}



/* spacer
-----------------------------------------------------*/
.l-spacer.-medium { padding-top: var(--section-gap); }
@media screen and (min-width: 782.1px) { 
  .l-spacer.-nopc { padding-top: 0; }
}
.l-spacer.-small { padding-top: var(--column-gap); }
.l-spacer.-em1 { margin-top: 1em; }
.l-spacer.-em2 { margin-top: 2em; }
.l-spacer.-em3 { margin-top: 3em; }

/* column
-----------------------------------------------------*/
.l-column-2 { margin:0; display: flex; flex-wrap: wrap; justify-content: space-between; }
.l-column-2 .l-column__item { width: 100%; }
.l-column__item > a { height:100%; }
.l-column-2 .l-column__item:nth-child(n+2) { margin-top: 1rem; }
.l-column-ttl-conts { width: 100%; }
.l-column-ttl-conts__title { font-size:1.4rem; margin-bottom: 1em; }
.l-column-ttl-conts__title-sub { display: flex; font-size:0.875em; }
.l-column-ttl-conts__conts { padding-left: 2.5rem; }
@media screen and (min-width: 782.1px) { 
  .l-column-ttl-conts { display: flex; }
  .l-column-ttl-conts__title { width: 30%; margin-bottom: 0; font-size:1.125rem; font-weight: bold; line-height:var(--line-height-mono); }
  .l-column-ttl-conts__title-sub { font-size:1rem; }
  .l-column-ttl-conts__conts { width: 70%; margin-left: auto; }
}
@media screen and (min-width: 1024.1px) { 
  .l-column-2 .l-column__item { width: calc(50% - 1rem); }
  .l-column-2 .l-column__item:nth-child(n) { margin-top: 0; }
  .l-column-2 .l-column__item:nth-child(n+3) { margin-top: 2rem; }
  .l-column-ttl-conts__title { font-size:1.5rem; }
}
@media screen and ( max-width : 782px ) { 
  .l-column-ttl-conts__conts.-sp-nopad { padding-left: 0; }
}

/* title
-----------------------------------------------------*/
.c-title-page-main { margin:0 0 0 auto; padding:var(--column-gap); min-height:var(--section-gap); width:4em; writing-mode: vertical-rl; font-family:var(--mincho); white-space: nowrap; }
.c-title-page-main .title { display:block; font-size:1.811em; line-height:var(--line-height-mono); }
.c-title-page-main .en { display:block; font-size:.75em; text-transform: capitalize;}
.c-title-lead { margin-bottom: 6.5rem; max-width: calc(100% - 12.5vw); }
.c-title-lead.-full { max-width: none; }
.c-title-lead__title { font-family: var(--mincho); font-weight:inherit; font-size:1.5714285714rem; margin: 0.5em 0 1.5em; letter-spacing: 0.2em; }
.c-title-card { font-family: var(--mincho); font-weight:inherit; font-size:1.4rem; letter-spacing: 0.1em; line-height:var(--line-height-mono); }
.c-title-card__sub { font-size:0.5em; display: block; font-family:var(--mincho); letter-spacing: 0.1em; color: #0F3A25; margin-bottom: 0.5em; }
.c-title-medium { margin-bottom: 1em; text-transform: uppercase; font-size:1.15em; font-weight: bold; }
.c-title-medium.-t-normal { text-transform: none; }
.c-title-small { margin-bottom: 1em; text-transform: uppercase; font-size:0.875em; }
@media screen and (min-width: 782.1px) { 
  .c-title-lead__title { font-size:1.625rem; }
  .c-title-lead { margin-bottom: 7vw; max-width: calc(100% - 5vw); }
  .c-title-card { font-size:1.5rem; }
  .c-title-medium { font-size:1.15em; }
}

@media screen and (min-width: 1024.1px) { 
  .single-post .c-title-page-main, .single-product .c-title-page-main { position:absolute; right:0; top:0;}
}


/* button
-----------------------------------------------------*/
.c-button-hamburger { background: #004729; color: #FFF; border-radius:0; }
@media screen and (min-width: 782.1px) { 
  .c-button-hamburger { display: none; }
}
.c-button-hamburger .menuicon { width: 1.4rem; height: 1.4rem; position: relative; margin-right: 1em; }
.c-button-hamburger .menuicon::before, .c-button-hamburger .menuicon::after { content: ""; width: 100%; height: 1px; display: block; background:#FFF; position: absolute; inset: 0; margin: auto; transition: translate 0.3s 0.3s, rotate 0.3s, -webkit-box-shadow 0s 0.3s; transition: translate 0.3s 0.3s, rotate 0.3s, box-shadow 0s 0.3s; transition: translate 0.3s 0.3s, rotate 0.3s, box-shadow 0s 0.3s, -webkit-box-shadow 0s 0.3s; }
.c-button-hamburger .menuicon::before { translate: 0px -8px; box-shadow: 0 8px 0 #FFF; }
.c-button-hamburger .menuicon::after { translate: 0px 8px; }
.c-button-hamburger.-open .menuicon::before, .c-button-hamburger.-open .menuicon::after { transition: translate 0.3s, rotate 0.3s 0.3s; }
.c-button-hamburger.-open .menuicon::before { translate: 0px 0px; rotate: 45deg; box-shadow: 0 0px 0 transparent; }
.c-button-hamburger.-open .menuicon::after { translate: 0px 0px; rotate: -45deg; }
.c-button-text { display:block; }
.c-button-text.-en { font-family:var(--mincho); }
.c-button-text i { vertical-align: middle; font-size:1.35em; line-height:1; }
.c-button-arrow { vertical-align: middle; }
.c-button-arrow::after { content: ""; width: 1.5em; height: 1.5em; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-repeat: no-repeat; background-position: center center; background-size: 50% auto, contain; display: inline-block; margin-left: 0.5em; vertical-align: middle; transition: background 0.5s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .c-button-arrow::after { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.c-button-arrow-back { vertical-align: middle; }
.c-button-arrow-back::before { content: ""; width: 1.5em; height: 1.5em; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-repeat: no-repeat; background-position: center center; background-size: 50% auto, contain; display: inline-block; margin-right: 0.5em; vertical-align: middle; transform: rotate(180deg); transition: background 0.5s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .c-button-arrow-back::before { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.c-button-round { border-radius: 2em; text-align:center; vertical-align: middle; padding: 0.8em; line-height:var(--line-height-mono); position: relative; }
.c-button-round.-fit { padding: 1em 2em; display: table; }
.c-button-round.-full { width: 100%; }
.c-button-round.-center { display: table; margin: 0 auto; }
.c-button-round.-white { background:#FFF; transition: color 0.3s; }
@media screen and (hover: hover) and (pointer: fine) { 
  .c-button-round.-white:hover, a:hover .c-button-round.-white { color: var(--hover-color); }
}
.c-button-round.-green { background: #004729; color: #FFF; transition: background 0.5s; }
@media screen and (hover: hover) and (pointer: fine) { 
  .c-button-round.-green:hover, a:hover .c-button-round.-green { background: var(--hover-color); }
}
.c-button-round .icon { display: inline-block; vertical-align: middle; margin-left: 2em; width:.75em; height:auto; }
.c-button-round .icon.-right { position: absolute; right: 1em; top: 0; bottom: 0; margin: auto; }
a.c-button-corporate-link { color: #0F3A25; letter-spacing: 0.1em; text-transform: uppercase; font-size:0.875em; }
.c-button-block { width: 5rem; height: 5rem; display: inline-flex; align-items: center; justify-content: center; background: url(images/common/green-line-block.svg) no-repeat center center/contain; color: #004729; font-family:var(--mincho); transition: color 0.5s, background 0.5s; -webkit-clip-path: url(#square-button); clip-path: url(#square-button); }
.c-button-block.-more { font-size:0.7142857143rem; text-transform: uppercase; flex-shrink: 0; }
@media screen and (min-width: 782.1px) { 
  .c-button-block.-more { font-size:0.75rem; }
}
@media screen and (min-width: 1200.1px) { 
  .c-button-block.-more { width: 9em; height: 9em; }
}
@media screen and (hover: hover) and (pointer: fine) { 
  .c-button-block.-more:hover, a:hover .c-button-block.-more { color: #FFF;  background-color: #004729;}
}
.c-button-linkline { color:inherit; }
.c-button-linkline .line { vertical-align:middle; background: -webkit-gradient(linear, left top, right top, from(#FFF), to(#FFF)) no-repeat 100% 100%/0 1px; background: -webkit-linear-gradient(left, #FFF, #FFF) no-repeat 100% 100%/0 1px; background: linear-gradient(90deg, #FFF, #FFF) no-repeat 100% 100%/0 1px; transition: background-size 0.4s; }
@media screen and (hover: hover) and (pointer: fine) { 
  .c-button-linkline:hover .line { background-size: 100% 1px; background-position: 0 100%; }
}

/* title
-----------------------------------------------------*/
.c-table-std { width: 100%; border-bottom: 1px solid #CCCCCC; }
.c-table-std tr { border-top: 1px solid #CCCCCC; }
.c-table-std th { background-color:var(--layer-color); font-weight: normal; padding: 1em; width: 35%; }
.c-table-std td { padding: 1em; width: 65%; }
.c-table-std .woocommerce_gateway_icons, .c-table-std .wc-stripe-card-icons-container, .c-table-std .wc-stripe-paymentRequest-icons-container { float:none; }
.c-table-std .wc-stripe-paymentRequest-icons-container img { display:block!important;}
dl.product-labeling { padding:0; width:100%; font-size:1em; border-width:0; display:flex; flex-wrap:nowrap; align-items:center; justify-content:space-between; margin:4px 0; }
dl.simple-price, dl.variation-price { padding:0; width:100%; font-size:1em; border-width:0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; margin:0; }
dl.variation-price:not(.selected) { display:none; }
dl.product-labeling > dt, dl.simple-price > dt, dl.variation-price > dt { padding:.25em .5em; margin:4px 0; width:80px; text-align:center; background-color:var(--theme-color); line-height:1.3; font-size:13px; color:#fff; font-weight: 600; }
dl.product-labeling > dd, dl.simple-price > dd, dl.variation-price > dd { width:calc(100% - 96px); padding:0 0 0 8px; margin:4px 0; line-height:var(--line-height-mono); font-size:16px; }
.p-product-addition-hanakore { margin: 0 0 1em; padding:16px; border: 1px solid var(--border-color); display: flex; flex-wrap:wrap; gap:16px }
.p-product-addition-logo { flex:2; display:block; min-width:144px; }
.p-product-addition-logo img { display:block; max-width:176px; margin:0 auto; }
.p-product-addition-p { flex:3; display:block; min-width:176px; font-size:14px; line-height:16px; margin:0;}
p.points.hide-on-price-available { display:none!important; }
@media screen and ( max-width : 782px ) {
  .c-table-std tr, .c-table-std th, .c-table-std td { display: block; width: 100%; }
  dl.product-labeling > dt, dl.simple-price > dt, dl.variation-price > dt { font-size:12px; width:72px; }
  dl.product-labeling > dd, dl.simple-price > dd, dl.variation-price > dd { width:calc(100% - 80px); font-size:14.5px; }
}


/* tab
-----------------------------------------------------*/
.c-tab-selector { display: flex; margin-bottom: 3em; position: relative; border-bottom: 1px solid #707070; }
.c-tab-selector__button { width: calc(50% - 5px); max-width: 400px; flex:1; font-size:1rem; color:inherit; border-radius: 7px 14px 0 0; border-width: 1px 1px 0 1px; border-style: solid; border-color: #707070; background-color:var(--layer-color); height: 6.5em; display: flex; align-items: center; justify-content: center; font-weight: 500; cursor: pointer; }
.c-tab-selector__button + .c-tab-selector__button { margin-left: 10px; }
.c-tab-selector__button.-active { background:#fff; color:inherit; position: relative; z-index: 2; }
.c-tab-selector__button.-active::after { content: ""; width: 100%; height: 2px; background:#FFF; display: block; position: absolute; left: 0; right: 0; bottom: -1px; margin: auto; }
.c-tab-conts { display: none; }
.c-tab-conts.-active { display: block; }

/* form
-----------------------------------------------------*/
.c-form-table { background-color:var(--layer-color); width: 100%; border-width:0; border-top: 1px solid; text-align:left; }
.c-form-table tr, .c-form-table th, .c-form-table td { display: block; width: 100%; border-width:0; }
.c-form-table tr { border-bottom: 1px solid; }
.c-form-table th { padding: 1.4rem 0.7142857143rem; position: relative; }
.c-form-table td { padding: 0 0.7142857143rem 1.4rem; }
.c-form-table .wpcf7-form-control-wrap + .wpcf7-form-control-wrap { margin-top:8px; }
input, select, textarea { width: 100%; }
.woocommerce-MyAccount-navigation-link a, .cart-collaterals, .cart-collaterals::after, #review-order-wrapper::after, .woocommerce-Address { border-radius:1rem; }
.woocommerce-Address { overflow:hidden; }
.woocommerce-MyAccount-navigation-link--teikibin a::before { content:"\e985"; }
.woocommerce-orders-table + .woocommerce-orders-table { margin-top: var(--wc-padding); }
.method-label-block .weight_label { display:none!important; }
a.button, a.wp-block-button__link, button[type="submit"], input[type="submit"] { border-radius:var(--button-border-radius); padding:var(--input-padding) calc(var(--input-padding) * 2 + .5em ); outline: solid 1px currentColor; outline-offset:-6px; max-width:480px; color:#fff; letter-spacing:0; font-size:18px; --input-padding:1.2em; font-weight:600; position: relative; }
a.button::after, a.wp-block-button__link::after, button[type="submit"]::after { display:block; position:absolute; color:currentColor; right:1em; top:0; bottom:0; height:1em; width:1em; margin: auto 0; line-height:1; content:'\e905'; font-family:'fontello'; }
a.button.button-s, .address-block a.button, .shop_table .button, .woocommerce-billing-fields a.button, .woocommerce-shipping-fields a.button, .subscription_myaccount_option_form button { font-size:16px; --input-padding:8px; min-width:8em; outline:none; }
a.button.button-s::after, .address-block a.button::after, .shop_table .button::after, .woocommerce-billing-fields a.button::after, .woocommerce-shipping-fields a.button::after, .subscription_myaccount_option_form button::after { display:none; }
a.button-l { max-width:720px; font-family:var(--mincho); display:block; margin:var(--column-gap) auto 0; font-size:24px; --input-padding:1.7em; border-radius:.66em; }
@media screen and ( max-width : 782px ) {
  a.button-l { font-size:21px; --input-padding:20px;  }
  a.button, a.wp-block-button__link, button[type="submit"], input[type="submit"] { font-size:16px; }
}
@media screen and ( max-width : 480px ) {
  a.button, a.wp-block-button__link, button[type="submit"], input[type="submit"] { font-size:14.5px; }
  a.button-l { font-size:16px;  }
  a.button-l::after { font-size:.75em  }
}
/* a.button-r { border:.1em solid currentColor; color:var(--button-color); background-color:#fff; background-image:url( "data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 22' %3E%3Cpath d='M3.205,0.455 L0.243,3.412 L7.835,10.1000 L0.243,18.587 L3.205,21.546 L13.756,10.1000 L3.205,0.455 Z' fill='%230F3A25' /%3E%3C/svg%3E");}
a.button-r:hover { color:#fff; background-color:var(--button-hover-color); border-color:var(--button-hover-color); background-image:url( "data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 22' %3E%3Cpath d='M3.205,0.455 L0.243,3.412 L7.835,10.1000 L0.243,18.587 L3.205,21.546 L13.756,10.1000 L3.205,0.455 Z' fill='%23ffffff' /%3E%3C/svg%3E");} */
a.button-r { border:.1em solid currentColor; color:var(--button-color); background-color:#fff; }
a.button-r:hover { color:#fff; background-color:var(--button-hover-color); border-color:var(--button-hover-color); }
a.button-l::after { border-radius:.75em; font-size:.875em; padding-left:.12em; height:1.8em; width:1.8em; line-height:1.8; vertical-align:middle; text-align:center; color:var(--button-color); background-color:#fff; }
a.mini-button { border:.1em solid currentColor; font-size:13px; line-height:1; color:var(--button-color); border-radius:100px; padding:.5em; display:table; }
a.mini-button:hover { background-color:var(--button-hover-color); border-color:var(--button-hover-color); color:#fff; }
.checkout-form-address-edit-buttons a.button, .shop_table a.button{ outline:none!important; }
.c-form__must { color: #FF0000; font-size:0.7142857143rem; font-weight: normal; width: 3em; height: 3em; border-radius: 50%; line-height:3em; text-align:center; letter-spacing: 0.1em; display: inline-flex; justify-content: center; align-items: center; vertical-align: middle; border: 1px solid; position: absolute; right: 0.7142857143rem; top: 1.25rem; margin: auto; font-family: inherit; }
.c-form select { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding-right: 2em; background: #FFF url(images/common/icon-down.svg) no-repeat right 1em center/0.6em auto; }
.c-form select:invalid { color: #8D8D8D; }
.c-form select option { color: black; }
.c-form select option:first-child { color: #8D8D8D; }
.c-form textarea { height: 15em; }
.c-form__name input + input { margin-top: 1rem; }
.c-form__confirm-item input + input { margin-top: 1rem; }
.c-form__tel { display: flex; justify-content: space-between; align-items: center; }
.c-form__tel input, .c-form__tel select { width: calc(33.33% - 1rem); }
.c-form__address { display: flex; flex-wrap: wrap; }
.c-form__address > dt { width: 7em; padding-top: 1.25em; }
.c-form__address > dd { width: calc(100% - 7em); margin-bottom: 1rem; }
.c-form__address > dd:last-child { margin: 0; }
.c-form__zip { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; margin-bottom: 1em; }
.c-form__zip input { width: calc(50% - 1em); }
.c-form__zip-search { margin: 1em 0; }
.c-form__auto-zip { width: 100%; }
.c-form__item-desc { display: block; font-size:0.875em; margin-top: 1em; font-weight: normal; }
.c-form__label { vertical-align: middle; display: inline-flex; align-items: center; }
.c-form__radio-wrap > label + label { margin-left: 2em; }
.c-form__button { text-align:center; margin: 2rem 0 0; }
.c-form__button input[type=submit] { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; font-size:1.15em; padding: 1em; border-radius: 1rem; background: #0F3A25; color: #FFF; text-align:center; width: 100%; max-width: 600px; }
.c-form__privacy + input[type=submit] { margin-top: 3rem; }
@media screen and (min-width: 782.1px) { 
  .c-form__name { display: flex; justify-content: space-between; }
  .c-form-table th { padding: 2rem; }
  .c-form-table td { padding: 0 2rem 2rem; }
  .c-form__name input { width: calc(50% - 0.5rem); }
  .c-form__name input + input { margin-top: 0; }
  .c-form__radio-wrap { margin-top: 0.5em; }
  .c-form__button { margin: 3rem 0 0; }
  .c-form__button input[type=submit] { font-size:1.15em; }
}
@media screen and (min-width: 1024.1px) { 
  .c-form-table tr { display: table-row; }
  .c-form-table th { display: table-cell; width: 35%; vertical-align: top; padding: 2.5rem 2rem 2rem 6rem; }
  .c-form-table td { display: table-cell; width: 65%; padding: 2rem 2rem 2rem 0; }
  .c-form__must { top: 2rem; left: 2rem; right: auto; vertical-align: middle; font-size:0.875em; }
}
@media screen and (min-width: 1200.1px) { 
  .c-form-table th { width: 40%; font-size:1.15em; padding-left: 12rem; }
  .c-form-table td { width: 60%; padding: 2rem 6rem 2rem 0; }
  .c-form__must { top: 2.5rem; left: 6rem; }
}
@media screen and (min-width: 1366.1px) { 
  .c-form__zip input { width: calc(50% - 5em); }
  .c-form__zip-search { margin: 0; }
  .c-form__auto-zip { width: 15em; margin-top: 1em; }
}

/* gmenu
-----------------------------------------------------*/
.menu-primary { display: flex; justify-content: center; align-items: flex-start; }
.menu-primary__item { margin:0; writing-mode: vertical-rl; font-family:var(--mincho); font-size:1.3rem }
.menu-primary__item a { color:inherit; }
.menu-primary__item + .menu-primary__item { margin-left: 3em; }
.menu-secondary { text-align:center; }
.menu-secondary__item + .menu-secondary__item { margin-top:1.5em; }
.menu-tertiary { text-align:center; font-size:0.7857142857rem; }
.menu-tertiary__item { margin-top: 1em;}
@media screen and (min-width: 782.1px) { 
  .menu-primary { flex-direction: column; align-items: center; }
  .menu-primary__item { color:var(--font-color); font-size:1.1em }
  .menu-primary__item + .menu-primary__item { margin-left: 0; margin-top: 3rem; }
  .menu-primary__item:first-child { display: none; }
  .menu-primary__item:first-child + .menu-primary__item { margin-top: 0; }
}
@media screen and (max-height: 1000px) and (min-width: 782.1px) { 
  .menu-primary__item + .menu-primary__item { margin-top: 1.5rem; }
}
@media screen and (min-width: 1024.1px) { 
  .menu-secondary__item + .menu-secondary__item { margin-top: 1em; }
  .menu-tertiary__item { margin: 0; }
  .menu-tertiary__item + .menu-tertiary__item { margin-left: 3em; }
}

/* inner link
-----------------------------------------------------*/
.c-innerlink { display: none; }
@media screen and (min-width: 782.1px) { 
  .c-innerlink { display: table; background: #0F3A25; color: #FFF; position: relative; z-index: 2; margin: -2.5rem 0 0 auto; border-radius: 30px 0 0 30px; width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); padding: 1.5rem 0; }
}
@media screen and (min-width: 1200.1px) { 
  .c-innerlink { width: 70%; }
}
.c-innerlink__list { display: flex; counter-reset: listnum; margin:0; margin-left: 10%; }
.c-innerlink__list-item { margin:0; counter-increment: listnum; vertical-align: middle; }
.c-innerlink__list-item::before { content: counter(listnum, decimal-leading-zero); font-size:0.625rem; vertical-align: middle; line-height:1rem; display: inline-block; margin-bottom: 0.3em; margin-right: 1em; }
.c-innerlink__list-item + .c-innerlink__list-item { margin-left: 2em; }
@media screen and (min-width: 1200.1px) { 
  .c-innerlink__list-item + .c-innerlink__list-item { margin-left: 3em; }
}

/* text
-----------------------------------------------------*/
.c-text-price { line-height:var(--line-height-mono); }
.c-text-price .times { background-color:var(--theme-color); color:#fff; margin-right: 0.5em; display: inline-block; padding: 0 1em; line-height:1.8; vertical-align: super; }
.c-text-price .stock.in-stock { display:none; }
.c-text-price del { font-size:.875em; }
.c-text-price .offprice { text-shadow: .1em .1em 0 #fff, -.1em .1em .0 #fff, -.1em -.1em 0 #fff, .1em -.1em 0 #fff; }
.woocommerce-Price-currencySymbol { margin:0; font-size:.75em; }
.woocommerce-Price-amount { font-family:var(--mincho); font-size:1.7em; }
.variable-price-separator { font-family:var(--mincho); font-size:1.5em; margin-right: 0.2em; }
.woocommerce-price-suffix, .subscription-details { font-size:12px; }
.c-text-price .price-total { display:block; margin-top:8px; font-size:.75em; }
.c-text-price .price-total .amount { font-size:1.35em; }
.switch_subscription { background-color:var(--strong-color); color:#fff; font-size:1rem; margin:8px 0; padding:.25em;}
.c-text-en { font-family:var(--mincho); }
.c-text-serif { font-family: var(--mincho); font-weight:inherit; }
.c-text-small { font-size:0.8em; }
.c-text-underline { text-decoration: underline; }
.c-text-note { font-size:0.875em; padding-left: 2em; }
.c-text-note::before { content: "※"; margin-left: -2em; width: 2em; vertical-align: middle; display: inline-block; line-height:1.7; }
@media screen and (min-width: 782.1px) {
  .c-text-note::before { font-size:0.875em; }
  .woocommerce-price-suffix, .subscription-details { font-size:.8em; }
}

/* tag
-----------------------------------------------------*/
.c-tag { display: flex; flex-wrap: wrap; font-size:0.7rem; margin:0; }
.c-tag li { margin:0 0.5em 0.5em 0; }
.c-tag .c-tag__item { padding:.25em .5em; border-radius: 1.5em; line-height:1.2; display: block; background-color:var(--layer-color); }
@media screen and (min-width: 782.1px) {
  .c-tag { font-size:0.8rem; }
  .c-tag .c-tag__item { padding:.25em 1em; }
}


/* list
-----------------------------------------------------*/
.c-list-arrow { margin:0; display:block; padding:0; font-size:1rem; }
.c-list-arrow__item { padding-left: 2em; margin:0; }
.c-list-arrow__item::before { content: ""; width: 1em; height: 1em; display: inline-block; vertical-align: middle; margin-left: -2em; margin-right: 1em; background: url(images/common/icon-arrow-white.svg) no-repeat center center/contain; }
.c-list-arrow__item + .c-list-arrow__item { margin-top:8px; }

.c-list-blockarrow { margin:0; display:block; padding:0; }
.c-list-arrow.-green *::before { background-image: url(images/common/icon-arrow-r.svg); }
.c-list-blockarrow__item { padding-left: 2em; display: block; line-height:var(--line-height-mono); margin:0; }
.c-list-blockarrow__item::before { content: ""; width: 1em; height: 1em; display: inline-block; vertical-align: middle; margin-left: -2em; margin-right: 1em; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-repeat: no-repeat; background-position: center center; background-size: 50% auto, contain; transition: background 0.3s;-webkit-clip-path: url(#square-button); clip-path: url(#square-button); }
@media screen and (hover: hover) and (pointer: fine) { 
  .c-list-blockarrow__item:hover::before, a:hover .c-list-blockarrow__item::before { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.purchase-note li + li { margin-top: 1em; }
.c-list-circle__item { padding-left: 2em; position: relative; }
.c-list-circle__item::before { content: "○"; display: inline-block; position: absolute; top: 0; left: 0; margin: auto; }
.c-list-circle__item + .c-list-circle__item { margin-top: 1em; }

.shipping-info li { padding-left: 2em; position: relative; }
.shipping-info li::before { content: "●"; color: #0F3A25; display: inline-block; position: absolute; top: 0; left: 0; margin: auto; }
.shipping-info li + li { margin-top: 1em; }
.c-list-dot__item { padding-left: 2em; position: relative; }
.c-list-dot__item::before { content: "・"; display: inline-block; position: absolute; top: 0; left: 0; margin: auto; }
.c-list-num { counter-reset: listnum; }
.c-list-num > li { counter-increment: listnum; padding-left: 2em; }
.c-list-num > li + li { margin-top: 1em; }
.c-list-num > li::before { content: counter(listnum) "."; width: 2em; margin-left: -2em; display: inline-block; }
.c-list-line__item { border-bottom: 1px solid #000000; padding: 2rem 0; }
@media screen and (min-width: 782.1px) { 
  .c-list-line__item { display: flex; padding: 5rem 0; }
}
.c-list-asterisk__item { padding-left: 2em; }
.c-list-asterisk__item::before { content: "※"; display: inline-block; vertical-align: middle; margin-left: -2em; width: 2em; }
.c-list-whiteline > li { padding: 0.75em 0; margin:0; }
.c-list-whiteline > li + li { border-top: 1px solid #FFF; }
.c-list-greenline > li { padding: 0.75em 0; margin:0; }
.c-list-greenline > li + li { border-top: 1px solid #0F3A25; }
.c-list-plus__item:not(:last-child) { 
  margin-right: 1.5em; position: relative; }
.c-list-plus__item:not(:last-child)::before { content: "+"; display: inline-block; width: 1.5em; text-align:center; position: absolute; left: 100%; top: 0; margin: auto; }
.c-list-step { counter-reset: stepnum; }
.c-list-step__item { counter-increment: stepnum; padding-left: 5rem; padding-top: 0.5em; position: relative; }
@media screen and (min-width: 782.1px) { 
  .c-list-step__item { padding-left: 6.5rem; }
}
.c-list-step__item + .c-list-step__item { margin-top: 2em; }
.c-list-step__num { width: 3.5rem; height: 3.5rem; background: url(images/common/green-block.svg) no-repeat center center/100% 100%; position: absolute; left: 0; top: 0; color: #FFF; text-align:center; font-family:var(--mincho); font-size:0.7142857143rem; text-transform: uppercase; font-weight: bold; display: flex; flex-direction: column; align-items: center; justify-content: center; line-height:1.2; }
@media screen and (min-width: 782.1px) { 
  .c-list-step__num { width: 4.5rem; height: 4.5rem; }
}
.c-list-step__num::after { content: counter(stepnum); display: block; font-size:1.4em; }
@media screen and (min-width: 782.1px) { 
  .c-list-step__num::after { font-size:2em; }
}
.c-list-step__title { font-size:1.1428571429rem; font-weight: bold; }
@media screen and (min-width: 782.1px) { 
  .c-list-step__title { font-size:1.15em; margin-bottom: 1em; }
}
.c-list-slash { display: flex; flex-wrap: wrap; }
.c-list-slash__item + .c-list-slash__item::before { content: "/"; }
.c-list-dl-horizontal { border-bottom: 1px solid; }
.c-list-dl-horizontal > dt { background-color:var(--layer-color); border-top: 1px solid; padding: 1rem; }
@media screen and (min-width: 782.1px) { 
  .c-list-dl-horizontal > dt { font-weight: bold; }
}
.c-list-dl-horizontal > dd { padding: 1rem; }
.c-list-dl-3 > dt { width: 4em; float: left; }
.c-list-dl-3 > dd { padding-left: 4em; }
.c-list-dl-6 > dt { width: 7em; float: left; }
.c-list-dl-6 > dd { padding-left: 7em; }
.c-list-round__item { display: inline-block; background-color:var(--layer-color); padding: 0 1em; border-radius: 1em; margin: 2px 0; }

/* title
-----------------------------------------------------*/
.pagination { position: relative; display: flex; justify-content: center; margin-top: 5rem; flex-wrap: wrap; }
@media screen and (min-width: 782.1px) { 
  .pagination { padding: 0 8.5714285714rem; }
}
.pagination .page-numbers { width: 3.5714285714rem; height: 3.5714285714rem; line-height:3.5714285714rem; text-align:center; padding:0; border-width:0; -webkit-clip-path: url(#square-button); clip-path: url(#square-button); }
.pagination .page-numbers.prev, .pagination .page-numbers.next { width: 7.1428571429rem; background-color:var(--body-color); position: absolute; top: 0; margin: 0; -webkit-clip-path: url(#rectangle-button); clip-path: url(#rectangle-button); }
.pagination .page-numbers.prev { left: 0; }
.pagination .page-numbers.next { right: 0; }
.pagination .page-numbers.current { color: #FFF; background-color:var(--button-color); }
@media screen and (hover: hover) and (pointer: fine) { 
  .pagination .page-numbers:hover { color: #FFF; background-color:var(--button-color); }
}


/* tag
-----------------------------------------------------*/
.c-banner { padding: 5rem 6.5% 15rem; }
.c-banner.-right { text-align: right; }
.c-banner.-right .-more { margin: 0 0 0 auto; }
.c-banner.-flowers { background: url(images/common/bnr-gift.jpg) no-repeat 10% 100%/cover; }
.c-banner.-teikibin { background: url(images/common/main_sp.jpg) no-repeat 40% center/cover; }
.c-banner.-selects { background: #D9DADE url(images/common/bnr-vase.jpg) no-repeat right bottom/100% auto; }
.c-banner__text { display: flex; flex-direction: column; height: 100%; }
.c-banner__title { width: auto; height: 2.5rem; }
.c-banner__title img { width: auto; height: 100%; display: inline-block; }
.c-banner__title-en { font-family:var(--mincho); font-size:0.5vw; margin: 1em 0; letter-spacing: 0.3em; }
.c-banner__desc { font-family: var(--mincho); font-weight:inherit; letter-spacing: 0.2em; margin-bottom: 4em; letter-spacing: 0.1em; }
.c-banner-wide .c-banner { height: auto; }
.c-banner-wide .c-banner__desc { margin-bottom: 4em; }
@media screen and (min-width: 782.1px) { 
  .c-banner { padding: 3rem 10% 3rem; height: 36vw; }
  .c-banner.-flowers { text-align: right; background-position: 70% 45%; background-size: auto 140%; }
  .c-banner.-flowers .-more { margin: 0 0 0 auto; }
  .c-banner.-teikibin { background-image: url(images/common/main.jpg); background-position: 90% center; background-size: 120% auto; }
  .c-banner.-selects { background-size: 90% auto; }
  .c-banner__title-en { font-size:0.3vw; line-height:3; }
  .c-banner__desc { margin-bottom: auto; }
  .c-banner-wide .c-banner { padding: 5rem 5% 5rem; }
  .c-banner-wide .c-banner.-selects { background-size: auto 100%; }
  .c-banner-wide .c-banner__title { height: 3rem; }
}
@media screen and (min-width: 1024.1px) { 
  .c-banner.-flowers { background-position: 95% 50%; background-size: auto 150%; }
  .c-banner { padding: 6vw 15% 5vw; }
  .c-banner__title { height: 3vw; }
  .c-banner__title-en { font-size:0.625rem; }
  .c-banner-wide .c-banner { padding: 6vw 7.5% 5vw; }
  .c-banner-wide .c-banner__title { height: 4vw; }
}

/* icon
-----------------------------------------------------*/
.c-icon-question { font-family:var(--mincho); font-size:0.7857142857rem; width: 2em; height: 2em; line-height:calc(2em - 2px); text-align:center; background:#FFF; border-radius: 50%; border: 1px solid; display: inline-block; color: #0F3A25; }

/* category
-----------------------------------------------------*/
.c-category { color: #0F3A25; }

/* attention block
-----------------------------------------------------*/
.c-attention-block { padding: 2em 0 0; }
.c-attention-block__title { border-bottom-width: 1px; font-size:1.15em; padding-bottom: 0.5em; margin-bottom: 0.5em; }

/* loading
-----------------------------------------------------*/
.c-loading { width: 100%; height: 100%; position: fixed; inset: 0; background:#FFF; z-index: 9999; }

/*
opening
-----------------------------------------------------*/
.c-opening { background: linear-gradient(transparent, #004729 66%) no-repeat 50% 100%/100% 300%; width: 100%; height: 100%; position: fixed; inset: 0; margin: auto; z-index: 99999; display: flex; opacity: 0; pointer-events: none; }
.show-opening .c-opening { opacity: 1; }
.show-opening.open .c-opening { opacity: 0; background-position: 50% 0%; transition: opacity 1s 2.5s, background-position 1s 2s; }
.show-opening.open .c-opening__inner { opacity: 0; transition: opacity 1s 2s; }
.c-opening .tagline { position: absolute; inset: 0; margin: auto; width: 9.125rem; height: 1rem; transform: translateY(-6.5rem); text-align:center; }
.c-opening .tagline .letter { opacity: 0; transition: opacity 0.5s; fill: #FFF; }
.c-opening .tagline svg { width: 100%; height: auto; display: block; }
.open .c-opening .tagline #letter1 { opacity: 1; transition-delay: 0.05s; }
.open .c-opening .tagline #letter2 { opacity: 1; transition-delay: 0.1s; }
.open .c-opening .tagline #letter3 { opacity: 1; transition-delay: 0.15s; }
.open .c-opening .tagline #letter4 { opacity: 1; transition-delay: 0.2s; }
.open .c-opening .tagline #letter5 { opacity: 1; transition-delay: 0.25s; }
.open .c-opening .tagline #letter6 { opacity: 1; transition-delay: 0.3s; }
.open .c-opening .tagline #letter7 { opacity: 1; transition-delay: 0.35s; }
.open .c-opening .tagline #letter8 { opacity: 1; transition-delay: 0.4s; }
.c-opening .logo { position: absolute; inset: 0; margin: auto; width: 9.125rem; height: 9.3125rem; text-align:center; opacity: 0; transition: opacity 0.5s 0.5s cubic-bezier(0.9, 0, 0.82, 0.94); }
.c-opening .logo img { width:100%; }
.open .c-opening .logo { opacity: 1; }

/* mainvisual
-----------------------------------------------------*/
.p-mainvisual { height: calc(100vh - constant(safe-area-inset-bottom) - 4.5rem); margin-bottom:var(--section-gap); }
.p-mainvisual__main { height: calc(100% - 6rem); min-height:640px; position: relative; }
.p-mainvisual__main::before { content:''; display:block; padding:140% 0 0; min-height:560px }
.p-mainvisual__main .p-mainvisual__img img { position:absolute; z-index:1; left:0; top:0; width:100%; height:100%; object-fit: cover; object-position:center 100%; }
.p-mainvisual__catchphrase { -webkit-writing-mode:vertical-rl; -ms-writing-mode:vertical-rl; writing-mode:vertical-rl; position: absolute; right:var(--column-gap); top:var(--column-gap); max-width:50%; margin: auto; z-index: 2; font-size:1.25em; font-family:var(--mincho); }
.p-mainvisual__catchphrase span { display:block;}
.p-mainvisual__title { position: absolute; right: var(--column-gap); bottom: var(--column-gap); margin: auto; z-index: 2; display:flex; flex-wrap: wrap; flex-direction:column; align-items: flex-end; gap:4vw; }
.p-mainvisual__title .title { width:300px; max-width:80%; margin:0; order:1; }
.p-mainvisual__title img { width: 100%; height: auto; display:block; }
.p-mainvisual__title .circle-icons { display:flex; gap:1em; order:2; }
.p-mainvisual__title .circle-icons .icon { font-size:1.2em; display: inline-block; position: relative; width:3.9em; height:3.9em; margin:0; padding:.7em .45em .5em; text-align:center; border-radius:200px; border:.06em solid currentColor; line-height:1.25; font-family:var(--mincho); }
.p-mainvisual__title .circle-icons .icon b { font-size:10px; width:1em; height:1em; line-height:1; position:absolute; bottom:.1em; left:0; right:0; margin:0 auto; }
.p-mainvisual__main .note { width:100%; text-align:right; margin:0; order:3; }

.p-mainvisual__side { background:#FFF; height:6rem; position:relative; }
.p-teikibin-index-image { display:block; overflow:hidden; border-radius:8px; position: absolute; }
.p-teikibin-index-image::before { content:''; display:block; padding:100% 0 0 0; }
.p-teikibin-index-image-1 { bottom:6%; left:0; width:45%; max-width:240px; }
.p-teikibin-index-image-1::before { padding-top:130%; }
.p-teikibin-index-image-2 { bottom:0; right:0; width:45%; max-width:240px; }
.p-teikibin-index-image-2::before { padding-top:130%; }
.p-teikibin-index-image-3 { display:none; }
.p-teikibin-index-image-3::before { padding-top:66.66%; }
.p-teikibin-index-image img { object-fit:cover; display:block; width:100%; height:100%; position:absolute; left:0; top:0; }
@media screen and (min-width: 480.1px) { 
  .p-mainvisual__main::before { padding:100% 0 0; }
  .p-mainvisual__title { flex-direction:row; justify-content:flex-end; left: var(--column-gap); }
  .p-mainvisual__title .title { width:320px; max-width:60vw; }
  .p-mainvisual__main .p-mainvisual__img img { object-position:center; }
}
@media screen and (min-width: 782.1px) { 
  .p-mainvisual__title { gap:2em }
  .p-mainvisual__title .title { order:2; max-width:40%; }
  .p-mainvisual__title .circle-icons { order:1; }
  .p-mainvisual__catchphrase { right:auto; left:var(--column-gap); top:var(--column-gap); }
}
@media screen and ( max-width : 782px ) { 
  /* .circle-icons b, .p-mainvisual__main .note  { display:none; } */
  .p-mainvisual__main { min-height:70vh; }
}
@media screen and (min-width: 1024.1px) { 
  .p-mainvisual { height: auto; display: flex; }
  .p-mainvisual__main { width: calc(100% - 200px); }
  .p-mainvisual__main .p-mainvisual__img img { object-position:70% center; }
  .p-mainvisual__side { width: 200px; background: transparent; height:auto; }
  .p-teikibin-index-image-1 { left:0; right:auto; top:var(--column-gap); bottom:auto; width:20%; max-width:240px; }
  .p-teikibin-index-image-2 { left:auto; right:0; top:40%; bottom:auto; width:20%; max-width:280px; }
  .p-teikibin-index-image-3 { display:none; left:7%; bottom:0; width:20%; max-width:280px; }
  .p-mainvisual__main .note { position:absolute; right:calc(var(--column-gap) * -1 ); bottom:calc(var(--column-gap) * -1 - 2em); }
}
@media screen and (min-width: 1200.1px) { 
  .p-mainvisual__main::before { padding:60% 0 0; }
  .p-mainvisual__main { width: calc(100% - 250px); }
  .p-mainvisual__side { width: 250px; }
  .p-mainvisual__title .title { width:400px; }
  .p-mainvisual__title { flex-direction:column; }
  .p-mainvisual__catchphrase { left: 5%; top: 10%; }
}
/* today
-----------------------------------------------------*/
.p-today { position: relative; display: flex; align-items: center; padding:0 var(--column-gap); z-index:2; }
.p-today__date { position: absolute; text-align:center; color: #0F3A25; width: 4rem; right: var(--column-gap); top: -1rem; margin: auto; margin:0; }
.p-today__year { font-family:var(--mincho); font-weight:bold; padding: 0.4em 0; border-top: 1px solid; display: block; border-bottom: 1px solid; line-height:1; margin:0; }
.p-today__month { font-family:var(--mincho); font-size:2.8571428571rem; font-weight: bold; line-height:1; margin:0; letter-spacing:-.1em; text-indent:-.1em; }
.p-today__solar-terms { font-family: var(--mincho); font-weight:inherit; line-height:var(--line-height-mono); margin:0; }
.p-today-flower { display: flex; font-family: var(--mincho); font-weight:inherit; }
.p-today-flower__img { margin-right: 1em; }
.p-today-flower__img img { width: 3rem; height: 3rem; -o-object-fit: contain; object-fit: contain; }
.p-today-flower__img .caption { color: #808080; text-align:center; display: block; font-size:0.7142857143rem; line-height:1; }
.p-today-flower__info .flower-name { font-size:1.1428571429rem; margin:0; }
.p-today-flower__info .language-of-flower { margin:0; }
.p-today-flower__info .language-of-flower dt { font-size:0.7142857143rem; border: 1px solid; display: inline-block; margin:0;margin-right: 0.5em; padding: 0 1em; border-radius: 1.5em; }
.p-today-flower__info .language-of-flower dd { font-size:0.875em; display: inline-block; margin:0;}
@media screen and ( max-width : 782px ) { 
  .p-today { display:none; }
}
@media screen and (min-width: 1024.1px) { 
  .p-today { flex-direction: column; padding-top: 4rem; }
  .p-today__date { position: relative; top: 0; right: auto; margin-bottom: 3rem; }
  .p-today__year { font-size:1.5rem; }
  .p-today__month { font-size:3.75rem; line-height:var(--line-height-mono); }
  .p-today__solar-terms { font-size:1.5625rem; }
  .p-today-flower { display: block; }
  .p-today-flower__img { margin-right: 0; margin-bottom: 1rem; display: flex; flex-direction: column-reverse; }
  .p-today-flower__img img { width: 6rem; height: 6rem; }
  .p-today-flower__img .caption { font-size:0.75rem; margin-bottom: 1em; }
  .p-today-flower__info { -webkit-writing-mode: vertical-lr; -ms-writing-mode: tb-lr; writing-mode: vertical-lr; display: flex; flex-direction: column-reverse; margin: 0 12px; white-space: nowrap}
  .p-today-flower__info .flower-name { font-size:1.5625rem; line-height:1.8; }
  .p-today-flower__info .language-of-flower dt { padding: 1em 0; margin:0;margin-bottom: 1em; font-size:0.75rem; }
  .p-today-flower__info .language-of-flower dd { font-size:0.75rem; }
}

/*home
-----------------------------------------------------*/

/* main visual
-----------------------------------------------------*/
.p-mv-full { width: 100%; display: flex; justify-content: flex-end; flex-direction: column; position: relative; border-bottom: 1px solid transparent; }
@media screen and (min-width: 782.1px) { 
  .p-mv-full { height: 100vh; }
}
.p-mv-full__img { width: 100%; height: 130vw; position: relative; inset: 0; -o-object-fit: cover; object-fit: cover; }
@media screen and (min-width: 782.1px) { 
  .p-mv-full__img { height: calc(100vh - 4.5rem); }
}
.p-mv-full__text { position: relative; z-index: 2; color: #FFF; background: #004729; padding: 2rem 0; width: 100%; }
@media screen and (min-width: 782.1px) { 
  .p-mv-full__text { background: none; position: absolute; bottom: 5vw; }
}
@media screen and ( max-width : 782px ) { 
  .p-mv-full__text .c-title-lead { max-width: none; margin-bottom: 0; }
}
.p-mv-teikibin { width: 100%; height: auto; display: flex; justify-content: flex-end; flex-direction: column; position: relative; border-bottom: 1px solid transparent; }
@media screen and (min-width: 782.1px) { 
  .p-mv-teikibin { height: auto; }
}
.p-mv-teikibin::before { content: ""; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2); position: absolute; inset: 0; margin: auto; z-index: 2; }
.p-mv-teikibin__img { width: 100%; height: 100%; position: absolute; inset: 0; -o-object-fit: cover; object-fit: cover; }
.p-mv-teikibin__text { position: relative; z-index: 3; color: #FFF; }
@media screen and ( max-width : 782px ) { 
  .p-mv-teikibin__text .c-title-lead { max-width: none; margin-bottom: 0; }
}
body.tax-product_feature .c-title-page-main { display:none; }
body.tax-product_brand .c-title-page-main { display:none; }
@media screen and (min-width: 1024.1px) { 
  .archive-head { display: flex; flex-direction: row-reverse; }
.archive-head-mv { position:sticky; top:0;}
}
.archive-head-mv { width: 100%; padding-top: calc( var(--section-gap) + 10rem ); overflow:hidden; border-radius:10px 10px 30px 30px; }
.archive-head-mv img { width: 100%; aspect-ratio: 1/1; -o-object-fit: cover; object-fit: cover; display:block; }
@media screen and (min-width: 1024.1px) { 
  .archive-head-mv { width: 50%; height: 100%; margin-bottom: 7.5vw; padding-top:0; border-radius: 0 0 30px 30px; }
}
@media screen and ( max-width : 1024px ) { 
  .archive-head-text { padding-top: 4rem; }
}
@media screen and (min-width: 1024.1px) { 
  .archive-head-text { width: 44.0%; margin: 0 auto 0 0; }
}

.teikibin-header { position:relative; z-index:2; overflow:hidden; height:400px; }
.teikibin-header::before { background:#e79090; opacity:.8; content:''; display:block; padding:0 0 100% 0; position: relative; z-index:2; min-height:100%; }
.teikibin-header.teikibin-home { height:560px; }
.teikibin-header.teikibin-home { background-color:#f4f8fc; }
.teikibin-header.teikibin-home::before { display:none; }
.teikibin-header .teikibin-header-image img { position:absolute; left:0; bottom:0; right:0; top:0; width:100%; height:100%; z-index:1; object-fit:cover; }
.teikibin-header .teikibin-header-text { display:block; position:absolute; z-index: 3; top:50%; left:0; right:0; margin:0 auto; transform:translateY(-50%); color:#fff }
.teikibin-header.teikibin-home .teikibin-header-text { margin:0; left:auto; right:10%; }
.teikibin-header.teikibin-home .teikibin-header-text .title { display:block; width:360px; margin:0; }
.teikibin-header.teikibin-home .teikibin-header-text img { width:100%; height:auto; display:block; }
.p-teikibin-menu { display:block; background-color:#fff; position: relative; z-index:11; }
@media screen and ( max-width : 782px ) {
  .p-teikibin-menu { background-color:transparent; border-width:0; overflow:auto }
  .p-teikibin-menu-list { display:flex; flex-wrap:nowrap; padding:.5rem 0; }
  .p-teikibin-menu-list li { padding:.25rem; }
  .p-teikibin-menu-list li a { padding:.5rem .75em; border-radius:4px; border:1px solid var(--border-color); white-space:nowrap; }
  .p-teikibin-menu-list li.current-cat a { background-color:var(--link-color); color:#fff; }
  .p-teikibin-menu-list li:nth-child(3)::before { display:none;}
  .teikibin-header .teikibin-header-text { top:calc(50% + 24px)}
.teikibin-header.teikibin-home .teikibin-header-image img { bottom:auto; height:auto; }
.teikibin-header.teikibin-home { height:auto; padding:68% 0 0; }
  .teikibin-header.teikibin-home .teikibin-header-text { position:relative; top:auto; left:auto; right:auto; bottom:auto; margin:var(--column-gap); transform:none; z-index:20; }  
.teikibin-header.teikibin-home .teikibin-header-text .title { margin-left:auto; max-width:70%; }
}
@media screen and (min-width: 782.1px) { 
  .teikibin-header.teikibin-home .teikibin-header-image img { right:42%; bottom:0; left:auto; top:0; width:60%; height:100%; }
  .p-teikibin-menu { display:block; border-bottom-width:1px; }

  .p-teikibin-menu-list { display:flex; flex-wrap:nowrap; justify-content:center; margin:0; }
  .p-teikibin-menu-list li { position:relative; margin:0; padding:0 2%; line-height:1.4 }
  .p-teikibin-menu-list li a { display:block; padding:1em; font-family:var(--mincho); }
  .p-teikibin-menu-list li::before { content:''; display:block; border-left:1px solid currentColor; height:1em; position:absolute; left:0; top:0; bottom:0; margin:auto 0 auto -0.5px; }
  .p-teikibin-menu-list li:nth-child(1)::before { display:none;}
}

/* about
-----------------------------------------------------*/
.p-about-wrap { counter-reset: listnum; margin-top: 24vw; }
.p-about__lead { font-family: var(--mincho); font-weight:inherit; font-size:1.1428571429rem; margin: 0.5em 0 0; letter-spacing: 0.2em; }
.p-about-block { counter-increment: listnum; display: flex; align-items: flex-start; justify-content: space-between; }
.p-about-block + .p-about-block { margin-top: 40vw; }
.p-about-block__title { position: sticky; width: 15vw; left: 5%; top: 5vw; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size:1.15em; line-height:var(--line-height-mono); white-space: nowrap; -webkit-font-feature-settings: initial; font-feature-settings: initial; font-family: var(--mincho); font-weight:inherit; display: flex; align-items: center; }
.p-about-block__title-img { width: 100%; display: inline-block; background: url(images/common/white-block.svg) no-repeat center center/contain; padding: 10px; }
.p-about-block__title-img .img { border-radius: 30%; }
.p-about-block__title-text { margin-top: 1em; display: inline-block; position: relative; padding-top: 2em; width: 100%; display: inline-flex; align-items: center; font-size:1.5rem; }
.p-about-block__title-text::before { content: counter(listnum, decimal-leading-zero); font-size:0.875em; font-family:var(--mincho); -webkit-writing-mode: horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; margin-bottom: 1em; line-height:1; display: inline-block; position: absolute; top: 0; left: 0; right: 0; margin: auto; text-align:center; }
.p-about-list { margin-top: var(--section-gap); width: calc(100% - var(--section-gap)); }
.p-about-list__img { width: 100%; }
.p-about-list__img img { width: 100%; aspect-ratio: 1/1; -o-object-fit: cover; object-fit: cover; }
.p-about-list__text { margin: 1.5em 0 3em; }
.p-about-list__title { font-size:1.15em; margin-bottom: 0.5em; }
.p-about-list { width: calc(100% - 8rem - var(--vw) * 0.15 / 2); }
@media screen and (min-width: 782.1px) { 
  .p-about__lead { font-size:1.15em; }
  .p-about-block__title { font-size:2rem; left: calc(100px + 5vw); width: 3em; }
  .p-about-block__title-text::before { font-size:1rem; }
  .p-about-list { margin-top: var(--section-gap); }
}
@media screen and (min-width: 1024.1px) { 
  .p-about-wrap { margin-top: var(--section-gap); }
  .p-about-block + .p-about-block { margin-top: var(--section-gap); }
  .p-about-block__title { width: 4em; left: 0; }
  .p-about-block__title-img { padding: 1rem; }
  .p-about-list__item { display: flex; justify-content: space-between; }
  .p-about-list__item + .p-about-list__item { border-top: 1px solid #FFF; padding-top: 3.125rem; margin-top: 3.125rem; }
  .p-about-list__text { width: 55%; margin: 0; }
  .p-about-list__img { width: 30%; }
  .p-about-list__title { font-size:1.5rem; font-family: var(--mincho); font-weight:inherit; line-height:var(--line-height-mono); }
}
@media screen and (min-width: 1200.1px) { 
  .p-about-list__title { font-size:2rem; }
}


/*teikibin
-----------------------------------------------------*/
.p-cource-feature { margin:0 0 8px; display:block; font-size:.875em; color:var(--theme-color); }
.p-course-lineup-title { position: relative; }
@media screen and (min-width: 1024.1px) { 
  .p-course-teikibin-feature { width: 60%; }
}
@media screen and (min-width: 1200.1px) { 
  .p-course-teikibin-feature { width: 50%; }
}
.p-course-teikibin-feature__title { text-align:center; padding: 1rem; font-size:1.15em; border-bottom-width:1px; }
.p-course-teikibin-feature__text { padding: 2rem; }
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature__text { padding: 1rem; }
}
.p-course-teikibin-feature__list { counter-reset: listnum; }
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature__list { display: flex; justify-content: center; }
}
.p-course-teikibin-feature__list-item { display: flex; align-items: center; counter-increment: listnum; margin:0 0 2em; font-family: var(--mincho); padding-left: 1em; position: relative; letter-spacing: 0.2em; }
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature__list-item { flex-direction: column; text-align:center; line-height:var(--line-height-mono); width: 30%; }
}
.p-course-teikibin-feature__list-item .img { width: 4em; height: 4em; -o-object-fit: contain; object-fit: contain; margin-right: 2em; }
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature__list-item .img { margin: 0 auto 0; }
}
.p-course-teikibin-feature__list-item::before { content: counter(listnum, decimal-leading-zero); font-family:var(--mincho); font-size:0.875em; position: absolute; top: 0; left: 0; margin:0 auto; }
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature__list-item::before { position: relative; display: block; text-align:center; }
}
@media screen and (min-width: 782.1px) { 
  .p-course-teikibin-feature-wrap { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 0 auto; }
}
@media screen and (min-width: 1024.1px) { 
  .p-course-teikibin-feature-wrap { display: flex; justify-content: space-between; align-items: flex-end; }
}
.p-course-teikibin-feature-wrap .back-to-course { width: calc(100% - 2rem); margin: 5vw auto 0; }
@media screen and (min-width: 1024.1px) { 
  .p-course-teikibin-feature-wrap .back-to-course { width: auto; margin: 0; }
}
/*teikibin list
-----------------------------------------------------*/
#teikibin-courses { overflow:hidden; }
#teikibin-courses .swiper-container { overflow:visible;}
.teikibin-list-section { margin-top:var(--section-gap); margin-bottom:var(--section-gap); }
#teikibin-terms { margin:0 auto; max-width:1420px; width:calc(100% - var(--column-gap)); padding-right: var(--column-gap); }
#teikibin-terms .swiper-container::before, #teikibin-terms .swiper-container::after { content:''; display:block; width:50vw; }
#teikibin-terms .swiper-container::before { right:100%; background:linear-gradient(to left,rgba(255, 255, 255, 0.0) 0px,rgba(255, 255, 255, 1.0) 200px ); position:absolute; top:0; bottom:0; z-index:2; }
#teikibin-terms .swiper-container::after { left:100%; background:linear-gradient(to right,rgba(255, 255, 255, 0.0) 0px, rgba(255, 255, 255, 1.0) 200px ); position:absolute; top:0; bottom:0; z-index:2; }
/* #teikibin-terms.delivery-jisha dl.delivery, #teikibin-terms.delivery-takuhai dl.delivery { display:none; } */
#teikibin-terms .teikibin_cource { display:flex; flex-wrap:nowrap; align-items:stretch; margin-top:var(--column-gap); }
#teikibin-terms .term_head { display:flex; align-items:center; justify-content:center; flex-direction:column; width:calc(30% - var(--column-gap)); margin-right:var(--column-gap); text-align:center; position: relative; z-index:99; }
#teikibin-terms .term_head .term_name { font-size:1.2em; }
#teikibin-terms .term_head .term_name::after { display:block; content:''; height:2em; width:1px; margin:4px auto; background-color:var(--border-color); }
#teikibin-terms .term_head .term_desc { font-size:.875em; margin:0; }
#teikibin-terms .term_products { width:70%; }
#teikibin-terms.payment-card .teikibin_cource:not(.payment-card), #teikibin-terms.payment-card .teikibin-item:not(.item-payment-card) { display:none; }
#teikibin-terms.payment-bank .teikibin_cource:not(.payment-bank), #teikibin-terms.payment-bank .teikibin-item:not(.item-payment-bank) { display:none; }
#teikibin-terms.delivery-jisha .teikibin_cource:not(.delivery-jisha), #teikibin-terms.delivery-jisha .teikibin-item:not(.item-delivery-jisha) { display:none; }
#teikibin-terms.delivery-takuhai .teikibin_cource:not(.delivery-takuhai), #teikibin-terms.delivery-takuhai .teikibin-item:not(.item-delivery-takuhai) { display:none; }
#teikibin-terms.delivery-jisha .teikibin-item-takuhai, #teikibin-terms.delivery-takuhai .teikibin-item-jisha, #teikibin-terms:not(.delivery-jisha):not(.delivery-takuhai) .teikibin-item-link:nth-child(n+2) { display:none; }
.teikibin-list-wrapper { padding-top:var(--column-gap); }
.teikibin-list-wrapper .teikibin-list { margin:0; padding:0; }
.teikibin-list .teikibin-item { width:25%; align-self:stretch; height:auto; }
.teikibin-swiper { margin:0 calc(var(--item-gap) * -0.5); }
.teikibin-swiper .products { margin:0; }
.teikibin-swiper .swiper-button-next, .teikibin-swiper .swiper-button-prev { top:calc(7vw + 8px); width:32px; height:32px; margin:0; transition:opacity .5s, background-color .5s;}
.teikibin-swiper .swiper-button-next { right:-8px; }
.teikibin-swiper .swiper-button-prev { left:-8px; }
.teikibin-item { padding:calc(var(--item-gap) * 0.5); margin:0; background-color:#fff; }
.teikibin-item.recommend::before { content:'\3042\306A\305F\306B \304A\3059\3059\3081'; display:block; position:absolute; padding:1em .5em; line-height:1.5; width:5.1em; height:5.1em; text-align:center; color:#fff; font-weight:bold; font-size:12px;  border-radius:50%; left:0; top:0; background-color:#d87875; z-index:100; }
.teikibin-item-title { font-size:1.1em; }
.teikibin-item-link { display:flex; flex-direction:column; height:100% } 
.teikibin-item-image { overflow:hidden; border-radius:8px; }
.teikibin-item-image img { overflow:hidden; transition:transform .5s; aspect-ratio:1/1; object-fit:cover; }
.teikibin-item-link:hover .teikibin-item-image img { transform:scale(1.1); }
.teikibin-item-data { display:flex; flex-direction:column; flex:1; }
.teikibin-item-title { margin:8px 0;}
.teikibin-item-prices { margin-top:auto; }
.teikibin-item-prices dl { display:flex; align-items:flex-end; font-size:.875em; margin:0; align-items:baseline; }
.teikibin-item-prices dl dt { font-size:.925em; margin-right:.5em; word-break:keep-all; }
.teikibin-item-prices dl dt::after { content:': ' }
.teikibin-item-prices dl.price { margin-bottom:4px; font-size:1.25em; }
.teikibin-item-prices dl.price dt { display:none; }
.teikibin-item-prices dl span.jisha { background-color:#e7909055; padding:.1em .25em; }
.teikibin-item-prices dl span.takuhai { background-color:#81a18755; padding:.1em .25em; }
.teikibin-item-prices .price-total { padding-top:8px; margin-top:8px; border-top:1px solid var(--border-color); }
.teikibin-swiper .swiper-button-disabled { pointer-events:auto; opacity:0; }

@media screen and ( min-width: 1620.1px ) {
  .teikibin-swiper .swiper-button-next, .teikibin-swiper .swiper-button-prev { top:124px; }
}
@media screen and ( min-width: 1240.1px ) {
  #teikibin-courses .swiper-slide { opacity:.1; transition:opacity .5s; }
  #teikibin-courses .swiper-slide-active, #teikibin-courses .swiper-slide-active + .swiper-slide, #teikibin-courses .swiper-slide-active + .swiper-slide + .swiper-slide, #teikibin-courses .swiper-slide-active + .swiper-slide + .swiper-slide + .swiper-slide { opacity:1; }
}
@media screen and ( max-width : 1240px ) {
  .teikibin-swiper .swiper-button-next, .teikibin-swiper .swiper-button-prev { top:calc(9vw + 8px);  }
}
@media screen and ( max-width : 1024px ) {
  .teikibin-swiper .swiper-button-next, .teikibin-swiper .swiper-button-prev { top:calc(13vw + 8px); }
  .teikibin-swiper .swiper-button-next { right:0; }
  .teikibin-swiper .swiper-button-prev { left:0; }
  #teikibin-terms { margin:0; width:auto; padding: 0; }
  #teikibin-terms .teikibin_cource { display:block; width:calc(100% - var(--column-gap)*2); margin:var(--column-gap) auto; }
  #teikibin-terms .term_head { width:auto; padding:0 0 16px; text-align:center; }
  #teikibin-terms .term_head .term_name { font-size:1.2em; }
  #teikibin-terms .term_head .term_name::after {  height:1.2em; }
  #teikibin-terms .term_products { width:auto; }
}
@media screen and ( max-width : 960px ) {
  .teikibin-list .teikibin-item { width:33.333%; }
  #teikibin-courses .swiper-slide { opacity:1; }
}
@media screen and ( min-width: 480.1px ) and ( max-width : 1240px )  {
  #teikibin-courses .swiper-slide { opacity:.1; transition:opacity .5s; }
  #teikibin-courses .swiper-slide-active, #teikibin-courses .swiper-slide-active + .swiper-slide, #teikibin-courses .swiper-slide-active + .swiper-slide + .swiper-slide { opacity:1; }
}
@media screen and ( max-width : 480px ) {
  .teikibin-list .teikibin-item { width:50%; }
  .teikibin-swiper .swiper-button-next, .teikibin-swiper .swiper-button-prev { top:calc(22vw + 8px); }
}

.teikibin-filter { padding:0; overflow:hidden; }
/* .teikibin-filter-head { margin:0 0 1em; padding:0 0 8px; border-bottom-width:1px } */
.teikibin-filter-title { margin:8px 0 0; font-size:.875em; font-weight:600; }
.teikibin-filter-menu { margin:16px 0 0; width:100%; display:flex; align-items:center; }
.teikibin-filter-items { display:inline-flex; margin:0; flex:1; gap:1em; align-items:center; position: relative; }
.teikibin-filter-items li.delivery { margin:0; flex:1; font-size:1.1em; width:12em; display:flex; padding:0; position: relative; }
/* .teikibin-filter-items li.lh { width:calc(30% - var(--column-gap)); } */
/* .teikibin-filter-items li.lh p { display:flex; gap:.5em; width:14em; align-items: center; font-weight:600; } */
/* .teikibin-filter-items li.lh svg { width:1.5em; height:auto; display:block; } */
.teikibin-filter-items li.info { margin:0 0 0 auto; }
.teikibin-filter-items li.delivery-jisha { --checked-color:#c95c5c; --layer-color:#e7909055;}
.teikibin-filter-items li.delivery-takuhai { --checked-color:#346648; --layer-color:#81a18755;}
.teikibin-filter-items li.delivery label { padding:.5em .75em .75em; width:100%; white-space:nowrap; text-align:center; background-color:var(--layer-color);}
.teikibin-filter-items li.delivery svg { margin:0 auto; width:2em; height:2em; display:block; fill:var(--checked-color); }
.teikibin-filter-items li.delivery span { margin:0 auto; display:inline-flex; padding:0 0 0 2em; }
.teikibin-filter-items li.delivery label input + span::before { border-radius:0; border-width:0; background-color:#fff; border-radius: 2px; }
.teikibin-filter-items li.delivery label input + span::after { content:""; border-radius:0; background-color:transparent; position:absolute; z-index:2; top:50%; display:block; width:1em; height:.7em; left:.25em; margin-top: -.5em; border-style:solid; border-width:0 0 .25em .25em; border-color:#ccc; transform:rotate(-45deg); }
.teikibin-filter-items li.delivery label input:checked + span::before { border-color:var(--checked-color); background-color:var(--checked-color); }
.teikibin-filter-items li.delivery label input:checked + span::after { border-color:#fff; opacity:1; }
.teikibin-filter-items a.button { padding:0 1em; line-height:1.5; vertical-align:middle; font-weight:normal; font-size:13px; height:1.7em; }
.teikibin-filter-menu li label { border-radius:4px;}
.teikibin-filter-menu li label::after { font-size:.875em; display:block; line-height:1; margin:.25em 0 0; }
.teikibin-filter-menu .delivery-takuhai label { background-color:#d9f8e3; }
.teikibin-filter-menu .delivery-takuhai label { background-color:#ffe2ee; }
/* #customer_area_checker.yubin-success:not(.delivery-jisha) ~ .teikibin-filter-menu .delivery-jisha label,  */
/* #customer_area_checker.yubin-success:not(.delivery-takuhai) ~ .teikibin-filter-menu .delivery-takuhai label { background-color:#ffe2ee; } */
#customer_area_checker.yubin-success:not(.delivery-jisha) ~ .teikibin-filter-menu .delivery-jisha label::after, 
#customer_area_checker.yubin-success:not(.delivery-takuhai) ~ .teikibin-filter-menu .delivery-takuhai label::after { content:'\3054\5229\7528\3044\305f\3060\3051\307e\305b\3093';/* ご利用いただけません */}
/* #customer_area_checker.delivery-jisha ~ .teikibin-filter-menu .delivery-jisha label, */
/* #customer_area_checker.delivery-takuhai ~ .teikibin-filter-menu .delivery-takuhai label { background-color:#d9f8e3; } */
.teikibin-filter-menu .delivery-jisha label::after {color:#b72800; font-size:.875em; }
.teikibin-filter-menu .delivery-takuhai label::after {color:#065830; font-size:.875em; }
#customer_area_checker.delivery-jisha ~ .teikibin-filter-menu .delivery-jisha label::after,
#customer_area_checker.delivery-takuhai ~ .teikibin-filter-menu .delivery-takuhai label::after { content:'\3054\5229\7528\53ef\80fd\3067\3059';/* ご利用可能です */ }
#customer_area_checker.delivery-takuhai ~ .teikibin-filter-menu .delivery-takuhai .customer_area_available { display:table; }
/* .teikibin-filter-items input[type="checkbox"] + span:not(:empty) { padding-left:1.5em; } */
/* .teikibin-filter-items input[type="checkbox"] + span:not(:empty)::before { border-radius: 50%; width: 1.2em; height: 1.2em; left:.6em; top:52.5%; } */
/* .teikibin-filter-items input[type="checkbox"] + span:not(:empty)::after { width:.75em; height:.5em; left:.21em; margin-top: -.29em; border-width: 0 0 .2em .2em; border-color:transparent; } */
input.teikibin-filter-clear { margin-top:8px; background-color:var(--gray-color); border-radius:0; font-size:14px; padding:.5em .75em; line-height:1.2; }

.teikibin-switch-compare { display:block; text-align:center }
.teikibin-switch-compare-wrap { font-size:1.2em; background-color:#e79090; padding:0; position: relative; z-index:1; margin:var(--column-gap) auto 0; max-width:480px; text-align:left; }
.teikibin-switch-compare-wrap.takuhaibin { background-color:#81a187;}
.teikibin-switch-compare h2 { font-size:1.5em; line-height:1.2; color:#fff; text-align:center; margin:0; padding:1em 0; position: relative; }
.teikibin-switch-compare h2 svg { width:1.7em; height:1.7em; object-fit:contain; display: block; position:absolute; right:.5em; bottom:0; top:0; margin: auto;}
.teikibin-switch-compare ul { padding:0; background-color:#ffffff66; margin:0; font-weight:600; }
.teikibin-switch-compare li { display:flex; flex-wrap:nowrap; justify-content:center; align-items:center; vertical-align:center; position: relative; z-index:3; margin:0; padding:1em; height:5em; line-height:var(--line-height-mono); }
.teikibin-switch-compare li::before { width:7em; font-weight:600; content:attr(title); display:block; color:currentColor; }
.teikibin-switch-compare li:last-child::after { display:none; }
.teikibin-switch-compare li::after { position: absolute; z-index:5; content:''; display:block; bottom:0; right:0; left:0; border-color:#fff; border-bottom-width:1px; border-style:dashed; }
.teikibin-switch-compare li p { margin:0; flex:1; }
.teikibin-switch-compare li p strong { font-size:1.2em; }
@media screen and ( min-width: 1024.1px) { 
  .teikibin-switch-compare { display:flex; gap:8px; justify-content:center; }
  .teikibin-switch-compare-wrap { font-size:1.35em; z-index:2; width:calc(50% - 4em); margin:0 0 0 8em; display:inline-block; text-align:center }
  .teikibin-switch-compare-wrap + .teikibin-switch-compare-wrap { z-index:1; margin:0; }
  .teikibin-switch-compare li {  text-align:center; }
  .teikibin-switch-compare li::before { position: absolute; z-index:1; left:-8em; bottom:0; top:0; height:1em; line-height:1; margin:auto; width:auto; }
  .teikibin-switch-compare li::after { left:-8em; border-color:var(--border-color); }
  .teikibin-filter-items a.button {position:absolute; right:0; top:0; bottom:0; margin:auto 0; font-size:inherit; }
}
@media screen and ( max-width : 1024px ) {
  .teikibin-switch-compare { display:block; }
  #teikibin.container { margin:0; width:auto; max-width:none; padding:0; }
  .teikibin-filter-menu { display:block; }
  .teikibin-filter-items { width:100%; gap:1em; flex-wrap:nowrap; justify-content:center; }
}
@media screen and ( max-width : 640px ) {
  .teikibin-filter-items { justify-content:center; flex-wrap:wrap; }
  .teikibin-filter-items li.lh { width:100%; display:flex; justify-content:center; gap:1em; margin:0; }
  .teikibin-filter-items li.lh p { width:auto; }
  .teikibin-filter-items li.delivery { margin:0; text-align:center; }
  .teikibin-filter-items li.info { order:2; width:50%; }
}



/* customer voices
-----------------------------------------------------*/
/* .p-voices-index__list-wrap { overflow:hidden; margin:var(--column-gap) 0 0; width:var(--vw); position: relative; left:50%; transform:translateX(-50%); } */
.p-voices-index__list-wrap { overflow:hidden; position: relative; }
.p-voices-index__list-wrap::before, .p-voices-index__list-wrap::after { content:''; display:block; width:2rem; background-color:#fff; z-index:1; position:absolute; top:0; bottom:0; z-index:9; }
.p-voices-index__list-wrap::before { left:0; }
.p-voices-index__list-wrap::after { right:0; }
.p-voices-index-list .swiper-button-next { z-index:10; right:-1rem; }
.p-voices-index-list .swiper-button-prev { z-index:10; left:-1rem; }
.p-voices-index-list { margin:0; overflow:visible; z-index:auto; margin:0 2rem;}
.p-voices-index-list .swiper-wrapper { align-content:stretch; }
.p-voices-index-list .swiper-slide { padding:1rem; align-self:stretch; height:100%; display:flex; }
.p-voices-index-card { background:#FFF; height:100%; display: flex; flex-direction: column; align-items: center; overflow: hidden; }
.p-voices-index-card__img { height: 0; width: 100%; padding-bottom:70%; position: relative; overflow: hidden; border-radius:8px 8px 0 0; }
.p-voices-index-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
.p-voices-index-card__icon { width:80px; height:80px; min-height:80px; min-width:80px; position: relative; margin:-56px auto 0; overflow: hidden; border-radius: 50%; border:2px solid #fff; }
.p-voices-index-card__icon img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
.p-voices-index-card__text { width: 100%; padding:.5rem 1rem 1rem; }
.p-voices-index-card__comment { margin:0; font-family:var(--mincho); line-height:var(--line-height-mono); font-size:1em; }
.p-voices-index-card__course { font-size:12px; margin-top:.5em }
#p-voices-swiper .swiper-slide { opacity:.3; transition:opacity .5s;}
#p-voices-swiper .swiper-slide-active, #p-voices-swiper .swiper-slide-prev, #p-voices-swiper .swiper-slide-next { opacity:1; }
@media screen and (hover: hover) and (pointer: fine) {
  a:hover .p-voices-index-card__img img { transition: transform 5s; transform: scale(1.2); }
}
/* @media screen and ( min-width: 782.1px) { 
  .p-voices-index-list { max-width:var(--container-width); }
} */
@media screen and ( max-width : 1024px ) { 
  #p-voices-swiper { padding-bottom:32px; }
  #p-voices-swiper-next { bottom:0; left:calc(50% + 4px); top:auto; right:auto; transform:none; }
  #p-voices-swiper-prev { bottom:0; right:calc(50% + 4px); top:auto; left:auto; transform: scale(-1, 1); }
}

.p-products-index { overflow:hidden; }
.p-products-index-wrapper { padding-top:var(--column-gap); overflow:visible; }
.p-products-index-wrapper .title, .p-products-index-wrapper .title-head, .p-products-index-slider { text-align:left; }
.p-products-index-slider { overflow:visible; }
.p-products-index a.mini-button { margin-left:auto; margin-top:1rem; }
.p-products-index-slider ul { margin-top:2rem; }
.p-products-index-slider ul li { margin:1rem; width:20%; }
.p-products-index-slider .p-product-card { padding:0; }
.p-products-index-slider .p-product-card__title { font-size:1rem; font-family:inherit; }
.p-products-index-slider .c-tag, .p-products-index-slider .p-product-card__desc { display:none; }
.p-products-index-slider .swiper-button-next { position:absolute; left:auto; right:0; top:-2.5rem; transform:none; }
.p-products-index-slider .swiper-button-prev { position:absolute; left:auto; right:2.5rem; top:-2.5rem; transform: scale(-1,1); }

@media screen and ( max-width : 1240px ) { 
.p-products-index-slider ul li { width:25%; }
}

/* course attend
-----------------------------------------------------*/
.p-course-attend { display:block; position: relative; overflow:hidden; }
@media screen and (min-width: 782.1px) {
  .p-course-attend { display:flex; width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin:5vw auto 0; padding:0; border-radius:16px; align-items:center; min-height:50vw;  }
}
/* .p-course-attend a { display: contents; } */
.p-course-attend__img { width: 100%; position: relative; }
.p-course-attend__img img { width: 100%; display:block; }
.p-course-attend .catch span { display:block; }
.p-course-attend .catch { font-family: var(--mincho); font-size:5vw; line-height:var(--line-height-mono);  position:absolute; transform:translateY(-50%); top:50%; right:0; left:0; text-align:center; margin: auto; z-index: 2; text-shadow:#fff 0 0 2px,#fff 0 0 4px, #fff 0 0 8px, #fff 0 0 12px, #fff 0 0 16px, #fff 0 0 24px, #fff 0 0 32px; letter-spacing: 0.15em; }
.p-course-attend__text { display:block; z-index: 2; position: relative; width:100%; padding: 2rem 1rem; margin: 0; background-color:#fff; }
@media screen and ( min-width: 782.1px) { 
  .p-course-attend__img { width: 100%; position: absolute; left: 0; right: 0; bottom: 0; top: 0; }
  .p-course-attend__img img { width: 100%; height:100%; object-fit:cover; }
  .p-course-attend__text { width:50%; margin:0 0 0 auto; background-color:transparent; padding-top:5vw; padding-bottom:5vw; }
  .p-course-attend__text::after { content:''; position:absolute; z-index:-1; left:0; right:0; top:-50vw; bottom:-50vw; background-color: rgba(255,255,255,.8);}
  .p-course-attend .catch { right:50%; font-size:2vw; }
}
.p-course-attend__text dl.product-labeling p + p { margin-top:.5em; }
@media screen and (min-width: 1200.1px) { 
  .p-course-attend .catch { font-size:1.8rem; }
}
.p-course-attend__text-top { padding: 0 1rem; }
.p-course-attend__text-top .p-product-card__title { max-width:520px; margin:0; }
.p-product-card__title .keyname { color:var(--theme-color); }
.p-course-attend__text-top > p:first-child { margin:0; }
.p-course-attend__text-top h3 { font-size:1.15rem; font-family: var(--mincho);}
@media screen and ( max-width : 782px ) { 
  .p-course-attend__text-top .p-product-card__title { margin:-20vw auto 0; }
  .p-course-attend__img::before { content:''; background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,1)); position: absolute; left: 0; right: 0; bottom: 0; height:30vw; }
 
}
@media screen and (min-width: 1024.1px) { 
  .p-course-attend__text-top { padding: 1rem 24px; margin:0 auto; max-width:568px }
  .p-course-attend__text-top + .c-button-round { margin:1rem auto 0; max-width:568px }
  .p-course-attend__text-top .p-product-card__title { margin:0; }
}
.p-course-attend__table { margin-bottom: 0.5rem; }
.p-course-attend__desc { margin: 1rem 0 1.5rem; }
.p-course-attend dl.product-labeling { margin:0; }

/*product card
-----------------------------------------------------*/
.p-product-list { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin:0; padding:0; }
.p-product-list > li { margin:1rem 0 0; }
@media screen and (min-width: 782.1px) { 
  .p-product-list { grid-template-columns: 1fr 1fr 1fr; }
}
@media screen and (min-width: 1024.1px) { 
  .p-product-list { grid-template-columns: 1fr 1fr 1fr; gap:2rem; }
}
@media screen and (min-width: 1366.1px) { 
  .p-product-list { grid-template-columns: 1fr 1fr 1fr 1fr; }
}

@media screen and (min-width: 1620.1px) { 
  .p-product-list { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
}


/*productcard
-----------------------------------------------------*/
.p-product-card { color: #0F3A25; display:flex; flex-direction:column; height: 100%; }
li.outofstock .p-product-card__img::before { content:'Sold Out'; font-family:var(--mincho); display:block; color:rgba(255,255,255,.6); font-size:3em; position:absolute; left:0; right:0; top:50%; margin:0; line-height:1; transform:translateY(-50%); text-align:center; z-index:4; }
li.outofstock .p-product-card__img::after { content:''; display:block; background-color:rgba(0,0,0,.2); position:absolute; left:0; right:0; top:0; bottom:0; margin:0; z-index:3; }
li.outofstock .p-product-card .c-text-price::before { content:'在庫切れ'; color:var(--gray-color); font-size:1em; font-weight:bold; }
li.outofstock .p-product-card .c-text-price span, li.outofstock .p-product-card .c-text-price small { display:none; }
.p-product-card__category { font-size:0.9rem; margin-bottom:8px; }
.p-product-card .c-text-price { margin-top:auto; margin-bottom:0; }
.p-product-card__title { line-height:var(--line-height-mono); font-family: var(--mincho); margin:0 0 12px; font-size:1.15em; }
.p-product-card__text { padding:1rem 0 0; flex:1; display: flex; flex-direction: column; height: 100%; }
.p-product-card__desc { margin:0 0 12px; font-size:.875em; line-height:var(--line-height-mono); }
.p-product-card .c-button-round { margin-top:auto; }
.p-product-card__img { position: relative; overflow: hidden; width: 100%; height: 0; padding-bottom:100%; border-radius:8px; }
.p-product-card__img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; position: absolute; inset: 0; margin: auto; transition: transform 1s; }
.p-product-card__img .recommend-img { width: 40%; height: auto; position: absolute; left: 1rem; bottom: 0; margin: auto; z-index: 2; }
/* .per-month { position:absolute; left:0; bottom:0; line-height:1; z-index:3; background-color:#cf5d5d; color:#fff; padding:.5em; font-size:.825em; }
.per-month-2 { background-color:#c77349; }
.per-month-1 { background-color:#b8a042; } */
@media screen and (hover: hover) and (pointer: fine) { 
  .p-product-card:hover .p-product-card__img img { transform: scale(1.2); transition: transform 5s; }
}
@media screen and ( max-width : 480px ) { 
  .p-product-list .p-product-card { background-color:transparent; border-radius: 0; padding:0; }
  .p-product-list .p-product-card .c-tag .c-tag__item { background:#FFF; }
  .p-product-card .c-text-price { font-size:1rem; }
li.outofstock .p-product-card__img::before { font-size:1.8em; color:rgba(255,255,255,.8); }
}


/*product card
-----------------------------------------------------*/
.p-product-detail { padding:0; margin:0; }
.p-product-detail__entry { padding-top:var(--section-gap); }
.p-product-detail__cart .p-cource-feature, .p-product-detail__cart .p-product-detail_head { display:none; }
.p-product-detail_head .p-product-detail__title { border-width:0; margin-top:.1em; }
.p-product-detail__title { border-bottom-width:1px; margin-bottom:var(--column-gap);}
.p-product-detail__title .keyname { color:var(--theme-color); }
.p-product-detail__cart { margin-top:var(--column-gap); padding-top:0; }
.p-product-detail .single-product-image { margin:0; border-radius:16px; overflow:hidden; }
.p-product-detail .single-product-image img { display:block; margin:0; }
.p-product-detail .gallery .swiper-slide { overflow:hidden; margin-right:1em; border-radius:16px; }
.p-product-detail .gallery .swiper-slide .image-wrap { border-radius:0; }
.p-product-related-items-wrap { margin-top:var(--section-gap); }
.swiper-container .swiper-pagination-images { margin-left:1em; margin-right:1em; }
.p-product-detail_content > :last-child { margin-bottom:0; }
.swiper-pagination-images { --grid-gap:16px;}
.swiper-pagination-bullet.swiper-pagination-image { border-radius:8px; }
.swiper-container-thumbs .swiper-slide, .swiper-container-thumbs .swiper-slide::before { border-radius:8px; }
@media screen and (min-width: 782.1px) { 
  .swiper-container-thumbs { margin-left:0; margin-right:0; }
}
@media screen and (min-width: 1024.1px) { 
  .p-product-detail__cart .p-cource-feature, .p-product-detail__cart .p-product-detail_head { display:block; }
  .p-product-detail__entry .p-cource-feature, .p-product-detail__entry .p-product-detail_head { display:none; }
  .product-container { display: flex; justify-content: space-between; }
  .p-product-detail__content { width:50%; z-index:100; position:sticky; top:0; align-self:flex-start; }
  .p-product-detail__cart { width:45%; margin-top: 0; padding-top:280px; z-index:100; align-self:stretch; }
  /* .p-product-detail__cart .l-spacer.-em3 { position: sticky; top:2rem; } */
  .p-product-detail__cart .product-add-to-cart { padding:0; margin:0; position:sticky; top:2rem; }
  .p-product-detail .single-product-image, .p-product-detail .gallery .swiper-slide { border-radius:0 0 16px 16px; }
  #shopping-button { display:none; }
}
@media screen and ( max-width : 1024px ) { 
  #shopping-button { position: sticky; bottom:24px; z-index:999; margin:0; }
  #shopping-button a.button { display:block; margin:0 0 0 auto; border-radius:50%; font-size:16px; text-align:center; height:6em; width:6em; padding:1em; }
  #shopping-button a.button i { display:block; font-size:1.2em; }
  #shopping-button a.button::after { display:none;}
}
@media screen and ( max-width : 782px ) { 
  .swiper-pagination-images { --grid-gap:8px;}
  #shopping-button { bottom:64px; }
}

/*product form
-----------------------------------------------------*/
.product-add-to-cart { padding:0; margin:0; }
.p-product-detail__cart #customer_area_checker { border-width:1px; border-radius:8px; margin:16px 0; padding:16px; }
.p-product-form__item .woocommerce-error, .p-product-form__item .woocommerce-info { margin:0; }
.p-product-form__item:not(.-no-pad) { padding: 1em 0; }
.p-product-form__item { border-top-width: 1px; }
.p-product-form__item.-b-line { border-bottom-width: 1px  }
.p-product-form__lead { font-size:1.15em; margin-bottom: 0.5em; }
.l-container-sp > :first-child  { margin-top:0; }
.l-container-sp > :last-child  { margin-bottom:0; }
@media screen and (min-width: 782.1px) { 
  .p-product-form__desc { display: none; }
  .p-product-form__lead { font-size:1.5rem; }
}

.product-addons { margin:0; }
.product-addon .woocommerce-input-wrapper .addon-item { margin:0; }
dl.product-quantity, dl.product-addon { width: 100%; margin:0; display:table; padding:0; background-color:transparent; }
dl.product-quantity dt, dl.product-addon dt { background-color:var(--layer-color); padding:4px 16px 4px 5vw; width:11.5em; border-bottom:1px solid #fff; font-size:.875em; font-weight:normal; vertical-align: middle; display:table-cell; }
dl.product-quantity dd, dl.product-addon dd { padding:4px 16px; vertical-align: middle; display:table-cell; }
dl.product-quantity .qty .outofstock { font-weight:500; color:var(--strong-color); }
dl.product-quantity .qty option:disabled { display:none!important; }
dl.product-addon dd .note { margin:0 0 4px; font-size:13px; }
dl.product-addon .woocommerce-input-wrapper > label { display: block;}
dl.product-addon-type-textarea { display:block; }
dl.product-addon-type-textarea dt { display:block; width:auto; }
dl.product-addon-type-textarea dd { display:block; width:auto; padding:10px 10px; }
dl.product-addon-type-textarea.message_text dt { display:none; }
dl.product-addon-type-checkbox dd, dl.product-addon-type-radio dd { background-color:#fff }
.product-addon p.note { margin:0; }
@media screen and (min-width: 782.1px) { 
  dl.product-addon dt, dl.product-quantity dt { padding-left:16px; }
  dl.product-addon dd, dl.product-quantity dd { padding-right:0; }
}
.product-add-to-cart .single_add_to_cart_button { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; font-size:1.1em; text-align:center; display:block; width: 100%; max-width:40em; margin:0 auto; }
.product-add-to-cart .single_add_to_cart_button:disabled { background: #8B8B8B; pointer-events: none; }
.p-product-form__error { font-size:0.875em; color: #FF0000; margin-top: 0.3em; }

/*feature-card
-----------------------------------------------------*/
.p-feature-card__img { margin:0 0 2rem; background:#FFF; display:block; overflow:hidden; }
.p-feature-card__img img { display:block; width:100%; margin:0; height:100%; object-fit:contain; }
.p-feature-card__subtitle { font-size:0.785em; color: #004729; font-family:var(--mincho); letter-spacing: 0.1em; }
.p-feature-card__title { font-family: var(--mincho); font-size:1.4em; margin-bottom: 0.5em; line-height:var(--line-height-mono); }
.p-feature-card__desc { margin: 1em 0 2em; }
@media screen and (min-width: 782.1px) { 
  .p-feature-card { display: flex; justify-content: center; align-items: stretch; }
  .p-feature-card__text { display:flex; align-items:center; padding: 2rem 1.5rem 1.5rem; border-radius: 0 10px 20px 0; background:#FFF; margin:0; position: relative; z-index: 2; width:50%; }
  .p-feature-card__img { width:50%; margin:0; background:#FFF; border-radius: 10px 0 0 20px; }
  .p-feature-card__text-inner { max-width: 20rem; margin: 0 auto; }
  .p-feature-card__title { font-size:1.5em; }
}

/*feature-list
-----------------------------------------------------*/
.feature-list-item + .feature-list-item { margin-top: 3vw; }
@media screen and ( min-width: 782.1px ) { 
  .feature-list { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 0 auto; }
  .feature-list-item { width: 95%; }
  .feature-list-item:nth-child(2n) { margin-left: auto; }
}
@media screen and (min-width: 1200.1px) { 
  .feature-list-item + .feature-list-item { margin-top: 5rem; }
}
/* .feature-list a { display: contents; } */

/* feature category
-----------------------------------------------------*/
.p-feature-category-card { background:#FFF; display: flex; align-items: center; overflow: hidden; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-card { flex-direction: column; }
}
.p-feature-category-card__img { width: 33.33%; height: 0; padding-bottom: 33.33%; position: relative; overflow: hidden; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-card__img { width: 100%; padding-bottom: 100%; }
}
.p-feature-category-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .p-feature-category-card__img img { transition: transform 5s; transform: scale(1.2); }
}
.p-feature-category-card__text { width: 66.66%; padding: 1rem 2rem; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-card__text { width: 100%; padding: 1.5rem 0; text-align:center; }
}
.p-feature-category-card__title { margin-bottom: 0.5em; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-card__title { font-size:1.15em; margin-bottom: 0; }
}
.p-feature-category-card__ex { font-size:0.75em; justify-content: flex-start; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-card__ex { justify-content: center; }
}
@media screen and (min-width: 1024.1px) { 
  .p-feature-category-card__ex { font-size:0.75em; }
}
.p-feature-category-list { display: grid; grid-template-columns: 1fr; gap: 1rem; margin:0; }
.p-feature-category-list li { margin:0; }
@media screen and (min-width: 782.1px) { 
  .p-feature-category-list { grid-template-columns: repeat(4, 1fr); }
}

/*farmer-card
-----------------------------------------------------*/
.p-farmer-card { background:#FFF; border-width: 1px; padding: 1rem; display: flex; flex-wrap: wrap; justify-content: space-between; }
.p-farmer-card__img { width: 33%; position: relative; height: 0; padding-bottom: 38.5%; border-radius: 5px 5px 5px 20px; overflow: hidden; }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__img { padding: 0; height: auto; }
}
.p-farmer-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .p-farmer-card__img img { transform: scale(1.2); transition: transform 5s; }
}
.p-farmer-card__text { display: contents; }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__text { width: 62%; display: flex; flex-direction: column; }
}
.p-farmer-card__profile { width: calc(67% - 1rem); }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__profile { width: 100%; margin-bottom: 1em; }
}
.p-farmer-card__subtitle { font-size:0.875em; margin-bottom: 0.5em; }
.p-farmer-card__title { margin-bottom: 0.5em; font-family: var(--mincho); }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__title { font-size:1.15em; line-height:var(--line-height-mono); }
}
.p-farmer-card__desc { margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__desc { font-size:0.875em; }
}
.p-farmer-card__button { width: 100%; margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .p-farmer-card__button { margin-top: auto; }
}
@media screen and (min-width: 782.1px) { 
  .p-farmer-card--index { display: flex; justify-content: space-between; }
}


/*farmer-profile
-----------------------------------------------------*/
.p-farmer-profile { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
.p-farmer-profile__img { width: 100%; position: relative; }
.p-farmer-profile__img img { width: 100%; -o-object-fit: cover; object-fit: cover; aspect-ratio: 1/1; }
.p-farmer-profile__text { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 1em auto 0; }
.p-farmer-profile__subtitle { font-size:0.875em; margin-bottom: 0.5em; }
.p-farmer-profile__title { margin-bottom: 0.5em; font-size:1.15em; font-family: var(--mincho); }
.p-farmer-profile__desc { margin-top: 1em; margin-bottom: 2em; }
@media screen and (min-width: 782.1px) { 
  .p-farmer-profile { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin: 0 auto; }
  .p-farmer-profile__img { width: 50%; padding: 0; height: auto; }
  .p-farmer-profile__img img { border-radius: 10px 10px 10px 25px; }
  .p-farmer-profile__text { width: 45%; margin: 0; }
  .p-farmer-profile__title { font-size:1.15em; line-height:var(--line-height-mono); }
  .p-farmer-profile__desc { font-size:0.875em; }
}
@media screen and (min-width: 1024.1px) { 
  .p-farmer-profile__text { width: 40%; }
}

.l-column-single + .l-column-single, .l-column-single > li + li { margin-top:16px; }
.l-column-single .p-product-card { background:#FFF; border-width:1px; padding: 1rem; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: space-between; }
.l-column-single .p-product-card__img { width: 33%; position: relative; height: 0; padding-bottom: 38.5%; border-radius: 5px 5px 5px 20px; overflow: hidden; }
.l-column-single .c-title-card { font-size:1.1em; }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__img { padding: 0; height: auto; }
}
.l-column-single .p-product-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a.l-column-single :hover .p-product-card__img img { transform: scale(1.2); transition: transform 5s; }
}
.l-column-single .p-product-card__text { display: contents; padding-top:0; }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__text { width: 62%; display: flex; flex-direction: column; }
}
.l-column-single .p-product-card__profile { width: calc(67% - 1rem); }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__profile { width: 100%; }
}
.l-column-single .p-product-card__subtitle { font-size:0.875em; margin-bottom: 0.5em; }
.l-column-single .p-product-card__title { margin-bottom: 0.5em; font-family: var(--mincho); }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__title { font-size:1.15em; line-height:var(--line-height-mono); }
}
.l-column-single .p-product-card__desc { margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__desc { font-size:0.875em; margin-bottom: 1em; }
}
.l-column-single .p-product-card__button { width: 100%; margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card__button { margin-top: auto; }
}
@media screen and (min-width: 782.1px) { 
  .l-column-single .p-product-card--index { display: flex; justify-content: space-between; }
}

/*news-card
-----------------------------------------------------*/
.p-news-card { background:#FFF; border-width:1px; padding: 1rem; height:100%; display: flex; flex-wrap: wrap; align-items:center; justify-content: space-between; }
.p-news-card__img { width: 33%; align-self:stretch; position:relative; height: 0; padding-bottom: 38.5%; border-radius: 5px 5px 5px 20px; overflow: hidden; }
@media screen and (min-width: 782.1px) { 
  .p-news-card__img { padding: 0; height: auto; }
}
.p-news-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .p-news-card__img img { transform: scale(1.2); transition: transform 5s; }
}
.p-news-card__text { display: contents; }
/* @media screen and (min-width: 782.1px) { */
  .p-news-card__text { width: 62%; display: flex; flex-direction: column; }
/* } */
.p-news-card__profile { width: calc(67% - 1rem); }
@media screen and (min-width: 782.1px) { 
  .p-news-card__profile { width: 100%; margin-bottom: 1em; }
}
.p-news-card__subtitle { font-size:0.875em; margin-bottom: 0.5em; }
.p-news-card__title { margin-bottom: 0.5em; font-family: var(--mincho); }
@media screen and (min-width: 782.1px) { 
  .p-news-card__title { font-size:1.15em; line-height:var(--line-height-mono); }
}
.p-news-card__desc { margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .p-news-card__desc { font-size:0.875em; }
}
.p-news-card__button { width: 100%; margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .p-news-card__button { margin-top: auto; }
}
@media screen and (min-width: 782.1px) { 
  .p-news-card--index { display: flex; justify-content: space-between; }
}
.p-news-card .c-button-round { margin-top:.5rem; }



/* recommend card
-----------------------------------------------------*/
.p-recommend-card { background:#FFF; display: flex; align-items: center; justify-content: space-between; padding: 10px; }
.p-recommend-card__img { width: 30%; height: 0; padding-bottom: 27.27%; border-radius: 5px 5px 5px 20px; position: relative; overflow: hidden; }
.p-recommend-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
a:hover .p-recommend-card__img img { transform: scale(1.2); transition: transform 5s; }
.p-recommend-card__text { width: 65%; }
.p-recommend-card__subtitle { font-size:0.7857142857rem; font-family:var(--mincho); color: #0F3A25; }
.p-recommend-card__title { font-size:1.15em; line-height:var(--line-height-mono); font-family: var(--mincho); }
@media screen and (min-width: 782.1px) { 
  .p-recommend-card__title { font-size:1.5rem; }
}

/* flower attend
-----------------------------------------------------*/

.p-flower-attend__icon img { width: 2.85em; height: 2.85em; display: inline-block; vertical-align: middle; margin-right: 0.5em; border-radius: 50%; }
.p-flower-attend__block { background:var(--layer-color); padding:16px; margin:16px 0; position: relative; }
.p-flower-attend__block::before { content: ""; width: 0; height: 0; border-style: solid; border-width:0 0.75rem 1.25rem 0.75rem; border-color: transparent transparent var(--layer-color) transparent; position: absolute; display: block; bottom:100%; left:8px; right:auto; top:auto; margin: auto; }
.p-flower-attend__block p { margin:0; }
@media screen and (min-width: 782.1px) { 
  .p-flower-attend { display: flex; justify-content: space-between; }
  .p-flower-attend__icon { display: block; text-align:center; line-height:1.3; width: 5.3em; }
  .p-flower-attend__icon img { display: block; width:5em; height:5em; margin:0 0 0.5em; }
  .p-flower-attend__name { display:block; font-weight: normal; font-size:.75rem; }
  .p-flower-attend__block { width: calc(100% - 5.5rem); margin: 0; padding: 1.5rem; line-height:var(--line-height-mono); }
  .p-flower-attend__block::before { top: 2rem; right: 100%; bottom:auto; left:auto; border-width: 0.75rem 1.25rem 0.75rem 0; border-color: transparent var(--layer-color) transparent transparent; }
}
@media screen and (min-width: 1366.1px) { 
  .p-flower-attend__block { width: calc(100% - 7rem); }
}
.c-flower-attend { border-top-width: 1px; display:flex; padding-top:12px; margin-top:12px; align-items:center; gap:1em; }
.c-flower-attend img { display: block; width:5em; height:5em; aspect-ratio:1; margin:0; border-radius:50%; }
.c-flower-attend__block { width: calc(100% - 5.5rem); position: relative; margin: 0; line-height:var(--line-height-mono); font-size:12px; }
.c-flower-attend__name { margin-top:4px; display:block; font-size:11px; }

/* p-product-category-list
-----------------------------------------------------*/
@media screen and (min-width: 782.1px) { 
  .p-product-category-list { display: grid; grid-template-columns: 1fr 1fr; gap: 5px; align-items: start; }
}
@media screen and (min-width: 1024.1px) { 
  .p-product-category-list { grid-template-columns: 5em 1fr 1fr 1fr 1fr; gap: 15px; }
}
.p-product-category-list__item { width: 100%; margin:0; color:inherit; border-radius: 32px; line-height:1.5; position: relative; transition: border-radius 0.01s 0.2s; }
@media screen and (min-width: 782.1px) { 
  .p-product-category-list__item { width: auto; }
}
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__item { border-radius: 30px; }
}
.p-product-category-list__item.-all { grid-row: 1/2; grid-column: 1/3; }
@media screen and (min-width: 1024.1px) { 
  .p-product-category-list__item.-all { grid-column: 1/1; }
}
@media screen and (min-width: 1024.1px) { 
  .p-product-category-list__item.-open { border-bottom-left-radius: 0; border-bottom-right-radius: 0; transition: border-radius 0.01s; }
}
.p-product-category-list__item + .p-product-category-list__item { margin-top: 10px; }
@media screen and (min-width: 782.1px) { 
  .p-product-category-list__item + .p-product-category-list__item { margin-top: 0; }
}
.p-product-category-list__button { width: 100%; display: block; border-width: 1px; text-align:center; border-radius: 32px; font-size:var(--input-font-size); background:#FFF!important; color:inherit!important; padding:8px; position: relative; z-index:3; line-height:1.5; cursor: pointer; }
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__button { padding: 10px; line-height:1.5; text-align: left; padding-left: 4em; border-radius: 30px; }
}
@media screen and (min-width: 1366.1px) { 
  .p-product-category-list__button { padding-left: 4.5em; }
}
.p-product-category-list__button .icon { width: 2rem; height: 2rem; padding: 5px; position: absolute; top: 0; bottom: 0; left: 5px; margin: auto; }
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__button .icon { width: 3rem; height: 3rem; left: 10px; padding: 10px; }
}
/* .p-product-category-list__button.-open .icon, .p-product-category-list__button.-current .icon { background-image: url(images/common/pink-block.svg); } */
.p-product-category-list__button.-all { background:#FFF; }
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__button.-all { padding-left: 10px; text-align:center; }
}
.p-product-category-list__button.-all.-current { background: #cbe5da; }
.p-product-category-list__button.-has-child::before, .p-product-category-list__button.-has-child::after { content: ""; width: 1em; height: 1px; background: currentcolor; display: block; position: absolute; top: 0; bottom: 0; right: 10px; margin: auto; transition: transform 0.3s; }
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__button.-has-child::before, .p-product-category-list__button.-has-child::after { right: 1rem; }
}
.p-product-category-list__button.-has-child::before { transform: rotate(90deg); }
.p-product-category-list__button.-link::after { content: ""; width: 1em; height: 1em; background: url(images/common/icon-arrow-r.svg) no-repeat center center/contain; display: block; position: absolute; top: 0; bottom: 0; right: 10px; margin: auto; transition: transform 0.3s; }
@media screen and (min-width: 1200.1px) { 
  .p-product-category-list__button.-link::after { right: 1rem; }
}
.p-product-category-list__button.-link::before { transform: rotate(90deg); }
.p-product-category-list__button.-open::before { transform: rotate(0deg); }
.p-product-category-list__child { padding:1.5rem 1rem .5rem; margin:-1.5rem 0 0; z-index:2; display: none; background: #cbe5da; border-radius: 0 0 15px 15px; }
@media screen and (min-width: 1024.1px) { 
  .p-product-category-list__child { position: absolute; top:1.5rem; margin:0; left: 0; right: 0; z-index: 2; border-radius: 0 0 30px 30px; }
}

/*product-sort
-----------------------------------------------------*/
.p-product-sort { width: 100%; border-radius: 32px; background:#FFF; position: relative; transition: border-radius 0.01s 0.3s; }
@media screen and (min-width: 1024.1px) { 
  .p-product-sort { width: 12em; margin-left:auto; }
  .p-product-sort.-open { border-bottom-left-radius: 0; border-bottom-right-radius: 0; transition: border-radius 0.01s; }
}
.p-product-sort__button { background: #0F3A25; color: #FFF; width: 100%; display: block; padding:8px; border-radius: 32px; position: relative; cursor: pointer; z-index:3; }
.p-product-sort__button .icon { width: calc(2rem - 10px); height: calc(2rem - 10px); position: absolute; top: 0; bottom: 0; left: 15px; margin: auto; }
.p-product-sort__button::before, .p-product-sort__button::after { content: ""; width: 1em; height: 1px; background: currentcolor; display: block; position: absolute; top: 0; bottom: 0; right: 10px; margin: auto; transition: transform 0.2s; }
@media screen and (min-width: 782.1px) { 
  .p-product-sort__button::before, .p-product-sort__button::after { right: 1rem; }
}
.p-product-sort__button::before { transform: rotate(90deg); }
.p-product-sort__button.-open::before { transform: rotate(0); }
.p-product-sort__child { display: none; background:#cbe5da; border-radius: 0 0 15px 15px; padding:1.5rem 1rem .5rem; margin:-1.5rem 0 0; }
@media screen and (min-width: 1024.1px) { 
  .p-product-sort__child { position: absolute; top:1.5rem; left: 0; right: 0; z-index: 2; margin:0; border-radius: 0 0 30px 30px; font-size:0.875em; }
}
.p-product-sort__wrap { margin-top: 10px; }
@media screen and (min-width: 782.1px) { 
  .p-product-sort__wrap { margin-top: 5px; }
}
@media screen and (min-width: 1024.1px) { 
  .p-product-sort__wrap { margin-top: 3rem; }
}
/*column
-----------------------------------------------------*/
.p-column-archive { display: grid; grid-template-columns: 1fr; gap: 3rem; }
@media screen and (min-width: 782.1px) { 
  .p-column-archive { grid-template-columns: 1fr 15rem; gap: 2rem; }
}
@media screen and (min-width: 1200.1px) { 
  .p-column-archive { gap: 5vw; }
}
.p-column-archive__sidebar { background: #0F3A25; color: #FFF;  padding:2em 1.25em; border-radius:8px; }
.p-column-archive__sidebar-title { margin-bottom: 2em; }
.p-column-cat-title { width: auto; height: 4rem; display: table; margin: 0 auto; }
.p-column-post__title-wrap { border-top: 1px solid; border-bottom: 1px solid; margin-bottom: 3em; padding: 2rem 0; }
.p-column-post__title { font-size:1.4rem; font-family: var(--mincho); letter-spacing: 0.2em; line-height:var(--line-height-mono); margin:0; }
.p-column-post__category { margin-bottom: 1rem; }
.p-column-post__category img { max-width:280px; }
.p-column-post__category-item { width: auto; height: 1.5rem; margin-right: 1em; }
.p-column-post__eyecatch { border-radius:16px; overflow:hidden }
.p-column-post__eyecatch img { display: block; margin:0;}
.p-column-post__body h2 { font-size:1.4rem; margin: 2em 0 0.5em; font-weight: bold; }
.p-column-post__body h3 { font-size:1.15em; margin: 2em 0 0.5em; font-weight: bold; }
.p-column-post__body h4 { font-size:1.1428571429rem; margin: 2em 0 0.5em; font-weight: bold; }
@media screen and (min-width: 782.1px) { 
  .p-column-archive__sidebar { padding: 2rem 1.75rem; }
  .p-column-cat-title { margin-left: 0; height: 6.5rem; }
  .p-column-post__title { font-size:1.5rem; }
  .p-column-post__category-item { height: 2rem; }
  .p-column-post__body h2 { font-size:1.15em; }
  .p-column-post__body h3 { font-size:1.125rem; }
  .p-column-post__body h4 { font-size:1rem; }
}
@media screen and (min-width: 1024.1px) { 
  .p-column-post { display: flex; justify-content: space-between; align-items: flex-start; }
  .p-column-post__title { font-size:2rem; }
  .p-column-post__eyecatch { width: 35%; margin-top: 0; position: sticky; top:0; border-radius:0 0 16px 16px; height: calc(100vh - 6rem); }
  .p-column-post__eyecatch { width: 40%; }
  .p-column-post__eyecatch img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; }
  .p-column-post__main { width: 50%; }
  .p-column-post__main .l-container-first-block { padding-top:240px; }
}
@media screen and ( max-width : 1024px ) { 
  .p-column-post__main .l-container-first-block { padding-top: 3rem; }
}
.wp-video { border-radius:8px; }
.p-column-post__body .wp-block-image { overflow:hidden; margin-bottom:var(--column-gap); border-radius:8px; }
.p-column-post__body .wp-block-image img { display:block; margin:0; }
.p-column-post__body p { margin-bottom: 1em; }
.p-column-post__body ul > li { padding-left: 2em; position: relative; }
.p-column-post__body ul > li::before { content: "●"; display: inline-block; position: absolute; top: 0; left: 0; margin: auto; }
.p-column-post__body ul > li + li { margin-top: 0.5em; }
.p-column-post__body .box { border-image: linear-gradient(0deg, #004729 1px, transparent 1px); border-image-slice: fill 0; border-image-outset: 0 var(--vw) 0; margin-bottom: 2em; }
.p-column-post__body > :last-child, .p-column-post__body > :last-child > :last-child { margin-bottom:0; }
.p-column-post__body .box-title { border-image: linear-gradient(180deg, #004729 1px, transparent 1px); border-image-slice: fill 0; border-image-outset: 0 var(--vw) 0; margin: 0; padding: 1em 0; color: #004729; font-size:1.15em; font-weight: 500; }
.p-column-post__body .inner { padding: 1.5em 0; border-image: linear-gradient(180deg, #004729 1px, transparent 1px); border-image-slice: fill 0; border-image-outset: 0 var(--vw) 0; }
@media screen and ( min-width: 782.1px) { 
  .p-column-post__body .box { border: 1px solid #004729;  }
  .p-column-post__body .box-title { border: none; border-bottom: 1px solid #004729; padding: 1rem 1.5rem; font-size:1.15em; }
  .p-column-post__body .inner { border: none; padding: 1.5rem; }
}

/*column-index
-----------------------------------------------------*/
.p-column-index-list { display: flex; flex-wrap: wrap; justify-content: space-between; }
.p-column-index-list > li { width: calc(50% - 1rem); }
.p-instagram-vid__list { margin:2rem auto 0; max-width:840px; display: flex; flex-wrap:nowrap; justify-content: space-between; align-items:stretch; gap:1rem; }
.p-instagram-vid__list .p-instagram-vid__item { display:block; padding:0; margin:0; position: relative; flex:1; }
.p-instagram-vid__list .p-instagram-vid__item::before { display:block; content:''; padding:150% 0 0 0; }
.p-instagram-vid__list .p-instagram-vid__item img { display:block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.p-column-index .onecolumns .column .title-head { font-size:1em; font-weight:500; display:table; margin-left:auto; margin-right:auto; position: relative; }
.p-column-index .onecolumns .column .title-head span { display:block; }
.p-column-index .onecolumns .column .title-head::before { content:''; height:3em; width:2em; position:absolute; left:-.7em; top:-.7em; display:block; transform:rotate(60deg); border-bottom:.05em solid currentColor; }
.p-column-index .onecolumns .column .title-head::after { content:''; height:3em; width:2em; position:absolute; right:-.7em; top:-.7em; display:block; transform:rotate(-60deg); border-bottom:.05em solid currentColor; }
.p-column-index a.button { display:block; margin-top:2rem; margin-left:auto; margin-right:auto; max-width:360px; }
@media screen and ( min-width: 600.1px) { 
  .p-column-index .twocolumns .column { margin-top:0; }
  .p-column-index .twocolumns .column h2.title { font-size:1.9em; }
  .p-column-index .onecolumns .column .title-head { font-size:1.25em; }
  .p-column-index .onecolumns .column .title-head span { display:inline; }
  .p-column-index .onecolumns .column .title-head::before, .p-column-index .onecolumns .column .title-head::after { height:2em; width:2em; }
}
@media screen and ( max-width : 1024px ) { 
  .p-column-index .twocolumns .column { width:100% }
}

/*column-list
-----------------------------------------------------*/
.p-column-list { display: grid; grid-template-columns: 1fr 1fr; gap:var(--column-gap); margin:0; }
.p-column-list li { margin:0; }

@media screen and (min-width: 1200.1px) { 
  .p-column-list { grid-template-columns: 1fr 1fr 1fr; gap: 5vw; }
}
/*column
-----------------------------------------------------*/
.p-column-card a.wrap { display:block; }
.p-column-card__img { position: relative; width: 100%; height: 0; padding-bottom: 140%; overflow: hidden; border-radius:8px; }
.p-column-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
.p-column-card__img::before { content: ""; width: 2rem; height: 2rem; display: block; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-position: center center; background-size: 40% auto, 100% 100%; background-repeat: no-repeat; position: absolute; right: 0.7142857143rem; bottom: 0.7142857143rem; margin: auto; transition: background 0.5s; z-index: 2; }
@media screen and (hover: hover) and (pointer: fine) { 
  .p-column-card:hover .p-column-card__img img { transform: scale(1.2); transition: transform 5s; }
  .p-column-card:hover .p-column-card__img::before { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.p-column-card__text { padding: 1.25rem 0.625rem 0; display:flex; flex-wrap:wrap; gap:.5em; }
.p-column-card__category { font-size:0.875em; line-height:var(--line-height-mono); padding:0 .5em; margin-bottom: 0.2em; display:inline-block; background-color:rgba(255,255,255,.3); border-radius:50px; }
.p-column-card__date { font-size:0.875em; display:inline-block; line-height:var(--line-height-mono); }
.p-column-card__title { width:100%; font-family: var(--mincho); font-size:1.2em; line-height:1.3; }
@media screen and (min-width: 782.1px) { 
  .p-column-card__category { font-size:0.75rem; }
  .p-column-card__date { font-size:0.75rem; }
}

@media screen and (min-width: 782.1px) { 
  .p-foot-banner { display: flex; }
}
@media screen and (min-width: 782.1px) { 
  .p-foot-banner__item { width: 50%; }
}
/*first
-----------------------------------------------------*/
.p-first-unavailable { font-size:0.875em; margin-top: 1em; }
@media screen and (min-width: 1024.1px) { 
  .p-first-unavailable { display: flex; font-size:1rem; justify-content: space-between; }
  .p-first-unavailable > dt { width: 11em; }
  .p-first-unavailable > dd { width: calc(100% - 11em); }
}
.c-first-delivery-fee__item { display: flex; margin: 0.5em 0; align-items: center; }
@media screen and (min-width: 782.1px) { 
  .c-first-delivery-fee__item { display: inline-flex; margin-right: 1em; }
}
.c-first-delivery-fee__item > dt { width: 7em; line-height:var(--line-height-mono); text-align:center; background-color:var(--layer-color); border-radius: 1.5em; padding: 0 0.5em; margin-right: 1em; }
.c-first-delivery-fee__item > dd { font-size:1.15em; }
.p-first-paypal-img { width: 100%; }
@media screen and (min-width: 782.1px) { 
  .p-first-paypal-img { width: 320px; }
}
.p-first-transfar > dt { font-size:1.1428571429rem; }
@media screen and (min-width: 782.1px) { 
  .p-first-transfar > dt { font-size:1rem; font-weight: bold; }
}
.p-first-transfar > dd { font-size:0.875em; }
@media screen and (min-width: 782.1px) { 
  .p-first-transfar > dd { font-size:1rem; }
}
@media screen and (min-width: 782.1px) { 
  .p-first-packing { display: flex; flex-wrap: wrap; justify-content: space-between; }
}
.p-first-packing__item + .p-first-packing__item { margin-top: 2rem; }
.p-first-packing__item:first-child { width: 100%; }
.p-first-packing__item:not(:first-child) { 
  display: flex; align-items: center; justify-content: space-between; }
@media screen and (min-width: 782.1px) { 
  .p-first-packing__item:not(:first-child) { display: block; width: calc(33.33% - 1rem); }
}
.p-first-packing__item:not(:first-child) .img { width: 33%; }
@media screen and (min-width: 782.1px) { 
  .p-first-packing__item:not(:first-child) .img { width: 100%; margin-bottom: 1rem; }
}
.p-first-packing__item:not(:first-child) .img img { width: 100%; aspect-ratio: 1/1; -o-object-fit: cover; object-fit: cover; }
.p-first-packing__item:not(:first-child) .text { width: 63%; font-size:1.15em; }
@media screen and (min-width: 782.1px) { 
  .p-first-packing__item:not(:first-child) .text { width: 100%; font-size:1rem; line-height:var(--line-height-mono); }
}
@media screen and (min-width: 782.1px) { 
  .p-first-booklet { display: flex; justify-content: space-between; align-items: center; }
}
.p-first-booklet__img { margin-bottom: 1rem; }
@media screen and (min-width: 782.1px) { 
  .p-first-booklet__img { width: 50%; margin-bottom: 0; }
}
@media screen and (min-width: 782.1px) { 
  .p-first-booklet__text { width: 45%; }
}
@media screen and (min-width: 1024.1px) { 
  .p-first-booklet__text { width: 35%; margin: 0 auto; }
}
.p-first-booklet__title { margin-bottom: 0.5em; }
@media screen and (min-width: 1024.1px) { 
  .p-first-booklet__title { margin-bottom: 1rem; }
}
.p-first-booklet__title .title { font-family: var(--mincho); display: block; font-size:1.15em; }
@media screen and (min-width: 1024.1px) { 
  .p-first-booklet__title .title { font-size:1.5rem; }
}
.p-first-messagecard { display: grid; gap: 1rem; grid-template-columns: 1fr; }
@media screen and (min-width: 782.1px) { 
  .p-first-messagecard { grid-template-columns: 1fr 1fr; }
}
@media screen and (min-width: 1024.1px) { 
  .p-first-messagecard { gap: 2rem; }
}
.p-first-messagecard__items { display: flex; }
.p-first-messagecard__item { width: 50%; text-align:center; }
.p-first-messagecard__item img { margin-bottom: 0.5em; }
.p-first-giftbag { background: #0F3A25; padding: 1.5rem; color: #FFF; }
@media screen and (min-width: 782.1px) { 
  .p-first-giftbag { display: flex; justify-content: space-between; align-items: center; }
}
@media screen and (min-width: 782.1px) { 
  .p-first-giftbag__text { width: 50%; }
}
@media screen and (min-width: 1024.1px) { 
  .p-first-giftbag__text { width: 40%; margin: 0 auto; }
}
.p-first-giftbag__title { font-size:1.15em; margin-bottom: 0.5em; }
@media screen and (min-width: 1024.1px) { 
  .p-first-giftbag__title { font-size:1.5rem; font-weight: bold; }
}
.p-first-giftbag__img { margin-top: 1rem; }
@media screen and (min-width: 782.1px) { 
  .p-first-giftbag__img { margin-top: 0; width: 45%; }
}
.p-first-giftbag__img img { border-radius: 5px; }
@media screen and (min-width: 782.1px) { 
  .p-first-giftbag__img img { border-radius: 5px 5px 15px 5px; }
}
@media screen and (min-width: 782.1px) { 
  .p-first-servicelink { display: flex; justify-content: center; }
}
@media screen and (min-width: 782.1px) { 
  .p-first-servicelink__item { width: 280px; }
}
.p-first-servicelink__item + .p-first-servicelink__item { margin-top: 1em; }
@media screen and (min-width: 782.1px) { 
  .p-first-servicelink__item + .p-first-servicelink__item { margin-top: 0; margin-left: 1em; }
}

/* law
-----------------------------------------------------*/
@media screen and (min-width: 1200.1px) { 
  .p-law-list { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; -webkit-column-gap: 2rem; -moz-column-gap: 2rem; column-gap: 2rem; }
}
.price_table { border-width:0; line-height:var(--line-height-mono);
  width: 100%;font-size:12px; text-align:left;
  margin: 1em 0;}.price_table th { 
    font-weight: 600;
    padding: 4px 4px 4px 0;border-width:0;
  }
  .price_table td {
    padding: 4px 0 4px 4px; border-width:0;
  }
.p-law-list__item { padding: 1rem; border-top-width:1px; border-bottom-width:1px; border-color:#707070; margin-bottom:-1px; }
@media screen and (min-width: 782.1px) { 
  .p-law-list__item { display: inline-flex; width: 100%; padding: 2rem 1.5rem; }
}
.p-law-list__item dt { font-size:1.1428571429rem; margin-bottom: 0.5em; padding-right:0.5em }
@media screen and (min-width: 782.1px) { 
  .p-law-list__item dt { font-size:1rem; width: 9em; }
}
@media screen and (min-width: 782.1px) { 
  .p-law-list__item dd { width: calc(100% - 9em); }
}

/* privacy
-----------------------------------------------------*/
.p-privacy-head { padding-bottom: var(--section-gap); margin-bottom: var(--section-gap); border-bottom: 1px solid #0F3A25; }
.p-privacy-list { margin:0; }
.p-privacy-list__item + .p-privacy-list__item { margin-top: 2em; }


/* QA
-----------------------------------------------------*/
.p-teikibin-faq-head { margin:0 0 var(--column-gap) 0;}
.faq-list { margin:0 0 var(--column-gap) 0; }
.faq-list:last-of-type { margin-bottom: 0; }
.faq-list .faq-header { flex:1; }
.faq-list .faq-header h2.faq-title { font-family: var(--mincho); font-size:1.1em; margin:0; }
.faq-list .faq { border-top: 1px solid #707070; position: relative; padding-right: 3em; transition: background 0.3s; cursor: pointer; margin:0; }
.faq-list .faq-content { flex:3; }
.faq-list .faq::before, .faq-list .faq::after { content: ""; width: 1.2em; height: 1px; background: #000000; display: block; position: absolute; right: 1rem; top: 2.2rem; margin: auto; transition: transform 0.3s; }
.faq-list .faq::after { transform: rotate(90deg); }
.faq-list .faq h3 { font-size:1.15em; }
.faq-list .faq.-open { background-color:var(--layer-color); }
.faq-list .faq.-open::after { transform: rotate(0deg); }
.faq-list .faq .faq-dt::before, .faq-list .faq .faq-dd::before { font-family:var(--mincho); font-weight: bold; color: #FFF; font-size:0.875em; width: 2rem; height: 2rem; display: flex; align-items: center; justify-content: center; position: absolute; left: 1rem; margin: auto; }
.faq-list .faq .faq-dt { padding: 1.5em 0 1.5em 4em; position: relative; margin:0; }
.faq-list .faq .faq-dt::before { content: "Q"; background: url(images/common/green-block.svg) no-repeat center center/contain; color: #FFF; top: 1.25rem; }
.faq-list .faq .faq-dd { padding: 0.25em 0 1.5em 4em; position: relative; display: none; }
.faq-list .faq .faq-dd::before { content: "A"; background: url(images/common/green-line-block.svg) no-repeat center center/contain; color: #0F3A25; top: 0; }
@media screen and (min-width: 782.1px) { 
  .faq-list .faq-header { padding: 1rem 0;  }
  .faq-list .faq-header h2.faq-title { padding:1em; }
  .faq-list { display: flex; flex-wrap: wrap; margin-bottom:0; border-top: 1px solid #707070; }
  .faq-list:last-of-type { border-bottom: 1px solid #707070; }
  .faq-list header { width: 25%; padding-right: 2rem; }
  .faq-list .columns { width: 75%; border-bottom: none; }
  .faq-list .faq:first-child { border-top: 0; }
}
@media screen and (min-width: 1024.1px) { 
  .faq-list .faq::before, .faq-list .faq::after { top: 3rem; }
  .faq-list .faq .faq-dt::before, .faq-list .faq .faq-dd::before { font-size:1.15em; width: 2.5em; height: 2.5em; left: 1.5rem; }
  .faq-list .faq .faq-dt { font-size:1.15em; padding: 2rem 0 2rem 5.5rem; }
  .faq-list .faq .faq-dt::before { top: 1.5rem; }
  .faq-list .faq .faq-dd { padding: 1.5rem 0 2rem 5.5rem; }
  .faq-list .faq .faq-dd::before { top: 0.75rem; }
}
@media screen and (min-width: 1200.1px) { 
  .faq-list .faq { padding-right: 7rem; }
  .faq-list .faq::before, .faq-list .faq::after { right: 5rem; }
}


/*teikibin index
-----------------------------------------------------*/
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index { display: flex; flex-wrap: wrap; flex-direction: row-reverse; }
}
.p-teikibin-index__text { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); margin:5vw auto 0; }
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index__text { width: 44.5%; margin: 0 0 0 auto; padding-right: 8%; }
}
.p-teikibin-index__title { font-size:1.4rem; margin-bottom: 1.5em; font-family: var(--mincho); letter-spacing: 0.2em; line-height:1.75; }
.p-teikibin-index__desc { line-height:3; }
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index__desc { line-height:2; padding-bottom: 3em; }
}
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index__img { width: 50%; max-height: 30rem; border-radius: 10px 0 0 30px; overflow: hidden; }
}
.p-teikibin-index__img video { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.p-teikibin-index__list { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align:center; counter-reset: listnum; font-family: var(--mincho); margin-top: 3rem; }
.p-teikibin-index__list > li { margin-bottom: 3rem; }
@media screen and (min-width: 782.1px) { 
  .p-teikibin-index__list { width:calc( 100% - var(--column-gap) * 2 ); max-width:var(--container-width); flex-direction: row; margin: 3rem auto; }
}
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index__list { margin-top: -2.5em; }
}
@media screen and (min-width: 782.1px) { 
  .p-teikibin-index__list > li + li { margin-left: 5%; }
}
.p-teikibin-index__list-item { counter-increment: listnum; position: relative; background: url(images/common/white-block.svg) no-repeat center center/cover; width: 16em; height: 16em; display: flex; flex-direction: column; justify-content: center; align-items: center; position: relative; line-height:var(--line-height-mono); }
@media screen and (min-width: 782.1px) { 
  .p-teikibin-index__list-item { font-size:1rem; width: 14em; height: 14em; }
}
@media screen and (min-width: 1200.1px) { 
  .p-teikibin-index__list-item { font-size:1.15em; }
}
.p-teikibin-index__list-item::before { content: counter(listnum, decimal-leading-zero); color: #0F3A25; font-family:var(--mincho); }
.p-teikibin-index__list-item::after { content: ""; width: 2rem; height: 2rem; display: block; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-position: center center; background-size: 40% auto, 100% 100%; background-repeat: no-repeat; position: absolute; right: 0.7142857143rem; bottom: 0.7142857143rem; margin: auto; transition: background 0.5s; }
@media screen and (hover: hover) and (pointer: fine) { 
  .p-teikibin-index__list-item:hover::after { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.p-teikibin-index__list .img { display: block; margin: 0 auto; width: 45%; }
.p-teikibin-index__more-wrap { width: 100%; }
.p-teikibin-index-course { margin: 1rem 0 0; width:100%; overflow:hidden; }

@media screen and (min-width: 782.1px) { 
  .p-teikibin-index-course { margin:0; }
}

.p-teikibin-index-course__title { display: none; text-align: right; margin-bottom: -3em; }
.p-teikibin-index-course__title { font-size:1.4rem; margin-bottom: 0.5em; font-family: var(--mincho); letter-spacing: 0.2em; line-height:2; }
@media screen and (min-width: 782.1px) { 
  .p-teikibin-index-course__title { margin-bottom: 2em; display: block; }
}
@media screen and (min-width: 1024.1px) { 
  .p-teikibin-index-course__title { margin-bottom: -3em; }
}
.p-teikibin-index-course__title .title { margin-bottom: 1em; }
.p-teikibin-index-course__title .title img { width:274px; }
.swiper-button-next, .swiper-button-prev { content: ""; width: 2rem; height: 2rem; border-radius:50%; display: block; background-image: url(images/common/icon-arrow-white.svg); background-color: var(--button-color); background-position: center center; background-size: 40% auto, 100% 100%; background-repeat: no-repeat; transform:translateY(-50%) translateX(50%); transition: background 0.5s; }
.swiper-button-next:hover, .swiper-button-prev:hover{ background-color: var(--button-hover-color); }
.swiper-button-prev { transform:scale(-1, 1) translateY(-50%) translateX(50%); }

/* instagram embed
-----------------------------------------------------*/
#sb_instagram { display:block; overflow: hidden; }
#sb_instagram #sbi_images { float:none; display: flex; -webkit-animation: scroll-left linear 40s infinite; animation: scroll-left linear 40s infinite; white-space: nowrap; width: calc((30vw + 1rem) * 10); }
#sb_instagram #sb_instagram:nth-of-type(2) #sbi_images { -webkit-animation-delay: -3s; animation-delay: -3s; margin-top: 1rem; }

.p-instagram-emb-wrap { position: relative; }
.p-instagram-emb { overflow: hidden; }
.p-instagram-emb__list { display: flex; -webkit-animation: scroll-left linear 40s infinite; animation: scroll-left linear 40s infinite; white-space: nowrap; width: calc((30vw + 1rem) * 10); }
.p-instagram-emb__list:nth-of-type(2) { -webkit-animation-delay: -3s; animation-delay: -3s; margin-top: 1rem; }
.p-instagram-emb__item { flex-shrink: 0; width: 30vw; margin:0 1rem 0 0; }
.p-instagram-emb__item img { aspect-ratio:1/1; object-fit:cover; width:100%; }
#sb_instagram #sbi_images .sbi_item { flex-shrink: 0; width: 30vw; margin-right: 1rem; }

@media screen and (min-width: 782.1px) { 
  .p-instagram-emb__list { -webkit-animation-duration: 20s; animation-duration: 20s; width: calc((20vw + 2.5rem) * 10); }
  .p-instagram-emb__list:nth-of-type(2) { display: none; }
  #sb_instagram #sbi_images { -webkit-animation-duration: 20s; animation-duration: 20s; width: calc((20vw + 2.5rem) * 10); }
  #sb_instagram #sb_instagram:nth-of-type(2) { display:none; }
  .p-instagram-emb__item { margin-right: 2.5rem; width: var(--section-gap); }
  #sb_instagram #sbi_images .sbi_item { margin-right: 2.5rem; width: var(--section-gap); }
}
@media screen and (min-width: 1024.1px) { 
  .p-instagram-emb__list { -webkit-animation-duration: 60s; animation-duration: 60s; }
  #sb_instagram #sbi_images { -webkit-animation-duration: 60s; animation-duration: 60s; }
}

.p-instagram-emb__more { position: absolute; inset: 0; margin: auto!important; top:0; bottom:0; left:0; right:0; text-align:center; height:3.8em; width: 15em; border-radius: 3em; }
@media screen and (min-width: 782.1px) { 
  .p-instagram-emb__more { right: 5%; top: auto; left: auto; bottom: -3em; width: 25em; }
  .p-instagram-emb__more.c-button-round { padding: 1.5em 2em; }
}
.p-instagram-emb__more .instagram { display: block; font-family:var(--mincho); font-size:0.875em;display: flex; align-items:center;justify-content: center; }
@media screen and (min-width: 782.1px) { 
  .p-instagram-emb__more .instagram { font-size:0.75rem; margin-top: 0.5em; }
}
.p-instagram-emb__more .instagram img { width: 1.2em; height: 1.2em; vertical-align: middle; margin-right: 0.5em; fill: #004729; }

@-webkit-keyframes scroll-left { 0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes scroll-left { 0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* gift index
-----------------------------------------------------*/
.p-gift-index { display: flex; flex-direction: column-reverse; position: relative; }
.p-gift-index__title { z-index: 2; }
@media screen and (min-width: 1024.1px) { 
  .p-gift-index__title { width: 11%; position: absolute; top: 0; left: 5%; margin: auto; text-align:center; z-index: 2; }
}
@media screen and (min-width: 1200.1px) { 
  .p-gift-index__title { left: 7.5%; }
}
.p-gift-index__title .title { width: 5.5rem; position: absolute; top: 0; left: 5%; z-index: 2; }
@media screen and (min-width: 782.1px) { 
  .p-gift-index__title .title { width: 6.5rem; }
}
@media screen and (min-width: 1024.1px) { 
  .p-gift-index__title .title { position: relative; width: 100%; top: auto; left: auto; }
}
.p-gift-index__title .more { margin: 3rem auto 0; text-align:center; }
.p-gift-index__list-wrap { position: relative; padding-top:17rem; }
@media screen and (min-width: 1024.1px) { 
  .p-gift-index__list-wrap { padding-top: 5rem; }
  .p-gift-index__list-wrap > .container:first-child { padding-top:calc(10rem + 25% )}
}
.p-gift-index__list-buttons { position: absolute; top: 0; right: 5%; }
.p-gift-index-list-prev, .p-gift-index-list-next { width: 4rem; height: 4rem; display: block; background: url(images/common/white-block.svg) no-repeat center center/contain; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; transition: background 0.5s; }
.p-gift-index-list-prev svg, .p-gift-index-list-next svg { fill: none; stroke: #004729; width:10px; height:auto; }
.p-gift-index-list-prev:hover, .p-gift-index-list-next:hover { background-image: url(images/common/green-block.svg); }
.p-gift-index-list-prev:hover svg, .p-gift-index-list-next:hover svg { stroke: #FFF; }
.p-gift-index-list-next { margin-left: 0.5em; }
.p-gift-index-list { width: 95%; margin: 0 0 0 auto; padding-right: 5%; }
@media screen and (min-width: 1024.1px) { 
  .p-gift-index-list { width: 75%; }
  .p-gift-index-list .swiper-slide { width:40%; }
}
.p-gift-index-card__img { margin-bottom: 1em; position: relative; width: 100%; height: 0; padding-bottom: 100%;  overflow: hidden; }
.p-gift-index-card__img img { width: 100%; height: 100%; position: absolute; inset: 0; margin: auto; -o-object-fit: cover; object-fit: cover; transition: transform 1s; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .p-gift-index-card__img img { transition: transform 5s; transform: scale(1.2); }
}
.p-gift-index-card__img::before { content: ""; width: 2rem; height: 2rem; display: block; background-image: url(images/common/icon-arrow-white.svg), url(images/common/green-block.svg); background-position: center center; background-size: 40% auto, 100% 100%; background-repeat: no-repeat; position: absolute; bottom: 0.7142857143rem; right: 0.7142857143rem; margin: auto; transition: background 0.5s; z-index: 2; }
@media screen and (hover: hover) and (pointer: fine) { 
  a:hover .p-gift-index-card__img::before { background-image: url(images/common/icon-arrow-white.svg), url(images/common/bright-green-block.svg); }
}
.p-gift-index-card__subtitle { color: #0F3A25; font-size:0.7857142857rem; font-family:var(--mincho); }
.p-gift-index-card__title { font-family: var(--mincho); letter-spacing: 0.2em; line-height:var(--line-height-mono); }
@media screen and (min-width: 782.1px) { 
  .p-gift-index-card__title { font-size:1.15em; }
}
@media screen and (min-width: 1200.1px) { 
  .p-gift-index-card__title { font-size:1.5rem; }
}

/*   Responsive
-----------------------------------------------------*/
@media screen and (min-width: 782.1px) { 
  .u-responsive-sp-visible { display: none; }
}
@media screen and (min-width: 1024.1px) { 
  .u-responsive-tab-visible { display: none; }
}
.u-responsive-sp-hidden { display: none; }
@media screen and (min-width: 782.1px) { 
  .u-responsive-sp-hidden { display: initial; }
}
.u-responsive-tab-hidden { display: none; }
@media screen and (min-width: 1024.1px) { 
  .u-responsive-tab-hidden { display: initial; }
}

/*   text
-----------------------------------------------------*/
.u-text-invisible { display: none; }
.u-text-center { text-align:center; }
.u-text-right { text-align: right; }
.u-text-en { font-family:var(--mincho); letter-spacing: 0.1em; }
.u-text-uppercase { text-transform: uppercase; }

/*   Screen Reader Text
-----------------------------------------------------*/
.screen-reader-text { position: absolute; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; }

.c-bg { background-color:var(--layer-color); }
.wpcf7-form .cf7mls_next.action-button, .wpcf7-form .cf7mls_progress_bar.cf7mls_bar_style_navigation_horizontal_squaren.cf7mls_bar_style_text_vertical li.active::before { background-color:#4e7455; }
.wpcf7-form .cf7mls_next.action-button:hover { background-color:#065830; }
/*   text
-----------------------------------------------------*/

.woocommerce-notices-wrapper { font-size:1rem; }
/* アカウント画面の曜日選択フィールド */
.subscription_myaccount_option_form { display:flex; align-items:center; flex-wrap:nowrap; justify-content: end; gap:8px; }
.subscription_myaccount_option_form button { width:104px; min-width:104px; margin:4px; font-size:.875em; }
.subscription_myaccount_option_form ~ p.note { margin-top: 4px; }
.delivery_schedule_row .delivery_schedule { font-size:1.2em; font-weight:bold; margin:0; }
p.subscription_after_action { margin: 0; }
p.subscription_after_action + p.subscription_after_action { margin: 0.5em 0 0; }

#separate-cart-message { background-color:var(--layer-color); padding:24px; margin-top:var(--column-gap); }
#separate-cart-message h3 { font-size:1.2em; margin:0 0 6px; }
#separate-cart-message p { font-size:1em; margin:0 0 var(--p-margin); }
#separate-cart-message .shop_table { margin:0; }
#separate-cart-message .shop_table .product-thumbnail { width:160px;}
#separate-cart-message .shop_table tr { border-top-width:1px; }
#separate-cart-message .shop_table tr:last-child { border-bottom-width:1px; }
#separate-cart-message .shop_table + a.button { margin-top: var(--p-margin); }
.account_payment_additional_info { background-color:var(--layer-color); padding:var(--p-margin); margin:var(--column-gap) 0; }
.shop_table td.product-price .amount { font-size:1.3em; }
.wc-proceed-to-checkout { margin:0; }
#delivery_date_default_date_field .form-row-first.delivery-date-form-row, #delivery_date_default_date_field .form-row-last.delivery-timezone-form-row { padding:1em; width:50%; margin-top:1em; margin-left:0; font-weight:600; background-color:#e3f3b9; }
#delivery_date_default_date_field .form-row-first.delivery-date-form-row { padding-right:.5em; }
#delivery_date_default_date_field .form-row-last.delivery-timezone-form-row { padding-left:.5em; }
#referred_name_field .optional, #referred_number_field .optional { display:none; }
.woocommerce-checkout-fields .optional { display:none; }
@media only screen and ( max-width : 782px ) {
  #separate-cart-message .shop_table .product-thumbnail { width:60px; height: 60px}
}
