@charset "UTF-8";
/* Google Fonts are loaded via preload in header.php for better performance */
/**************************************************
*  background-color: colors(warning,dark);
*            ↓↓↓↓↓↓
*  background-color: #ff7b7b;
**************************************************/
/*!
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
body {
  line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #45413f;
}
li {
  list-style: none;
}
/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input,
select {
  vertical-align: middle;
}
html {
  position: relative;
  font-size: 62.5%;
  min-height: 100%;
  min-width: 320px;
}
body {
  height: 100%;
  min-height: 100%;
  margin: 0;
  color: #45413f;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media print {
  body {
    color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
img {
  max-width: 100%;
  vertical-align: middle;
}
a {
  color: #45413f;
}
a:hover {
  opacity: 0.7;
  transition: 0.3s opacity;
}
.inner {
  width: 80.5270863836vw;
  margin-inline: auto;
  max-width: 1100px;
}
@media screen and (max-width: 767px) {
  .inner {
    width: 90%;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  img[src*=".svg"] {
    width: 100%;
  }
}
.header {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: center/cover no-repeat;
}
@media screen and (max-width: 767px) {
  .header {
    height: 58.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .header {
    height: 17.1875vw;
  }
}
@media screen and (max-width: 767px) {
  .header.tea {
    background-image: url("../images/tea/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.tea {
    background-image: url("../images/tea/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.food {
    background-image: url("../images/food/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.food {
    background-image: url("../images/food/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.qc {
    background-image: url("../images/qc/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.qc {
    background-image: url("../images/qc/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.result {
    background-image: url("../images/result/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.result {
    background-image: url("../images/result/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.oem {
    background-image: url("../images/oem/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.oem {
    background-image: url("../images/oem/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.tech {
    background-image: url("../images/tech/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.tech {
    background-image: url("../images/tech/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.faq {
    background-image: url("../images/faq/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.faq {
    background-image: url("../images/faq/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.company {
    background-image: url("../images/company/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.company {
    background-image: url("../images/company/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.news {
    background-image: url("../images/news/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.news {
    background-image: url("../images/news/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.column {
    background-image: url("../images/column/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.column {
    background-image: url("../images/column/bg_header.jpg");
  }
}
@media screen and (max-width: 767px) {
  .header.contact {
    background-image: url("../images/contact/bg_header_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .header.contact {
    background-image: url("../images/contact/bg_header.jpg");
  }
}
.header_heading {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .header_heading img {
    height: 20vw;
  }
  .tech .header_heading img {
    height: 30.9333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .header_heading img {
    height: 5.46875vw;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .header_heading {
    width: 38.28125vw;
  }
}
@media screen and (max-width: 767px) {
  .main {
    padding-top: 17.3333333333vw;
  }
}
.main_contents {
  position: relative;
}
.main_heading {
  font-weight: 400;
  font-family: "Noto Serif JP", serif;
  color: #45413f;
  text-align: center;
  background-color: #f3f7f0;
}
@media screen and (max-width: 767px) {
  .main_heading {
    font-size: 4.8vw;
    padding-top: 10.6666666667vw;
    line-height: 1.2;
  }
}
@media print, screen and (min-width: 768px) {
  .main_heading {
    padding-top: min(4.831625183vw, 65px);
    font-size: min(2.2672035139vw, 30px);
    margin: 0;
    line-height: 1.2;
  }
  .main_heading .highlight {
    font-size: min(2.3404099561vw, 31px);
  }
}
.main_heading-1 {
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .main_heading-1 {
    font-size: 4.8vw;
    text-align: center;
    line-height: 1.2;
    top: 64vw;
  }
}
@media print, screen and (min-width: 768px) {
  .main_heading-1 {
    top: 22vw;
    font-size: 1.875vw;
  }
}
.main_heading-2 {
  font-weight: 600;
  font-family: "Noto Serif JP", serif;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .main_heading-2 {
    font-size: 4.8vw;
    text-align: center;
    line-height: 1.2;
    top: 64vw;
  }
}
@media print, screen and (min-width: 768px) {
  .main_heading-2 {
    top: 22vw;
    font-size: 2.1875vw;
  }
}
@media screen and (max-width: 767px) {
  .content {
    padding: 26.6666666667vw 0;
  }
}
@media print, screen and (min-width: 768px) {
  .content {
    padding: 10.8125vw 0;
  }
}
@media screen and (max-width: 767px) {
  .content_heading,
  .company_eco_heading,
  .content_heading-btn {
    font-size: 7.4666666667vw;
    text-align: center;
    line-height: 1.2;
  }
}
@media print, screen and (min-width: 768px) {
  .content_heading,
  .company_eco_heading,
  .content_heading-btn {
    margin: 0 6.25vw;
    font-size: 2.5vw;
    text-align: center;
  }
}
.content_heading-btn {
  position: relative;
}
.content_heading-btn .btn,
.content_heading-btn .lNav ul a,
.content_heading-btn .lNav-2 ul a,
.lNav ul .content_heading-btn a,
.lNav-2 ul .content_heading-btn a {
  position: absolute;
  right: 0;
  top: 0;
}
.content_heading-sub,
.column_detail_body h1,
.company_eco_ems_heading,
.company_philosophy_body_heading {
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0.5em 0.3em;
  background: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .content_heading-sub,
  .column_detail_body h1,
  .company_eco_ems_heading,
  .company_philosophy_body_heading {
    font-size: 4.8vw;
    align-items: flex-start;
    line-height: 1.2;
  }
}
@media print, screen and (min-width: 768px) {
  .content_heading-sub,
  .column_detail_body h1,
  .company_eco_ems_heading,
  .company_philosophy_body_heading {
    font-size: 1.40625vw;
  }
}
.content_heading-sub:before,
.column_detail_body h1:before,
.company_eco_ems_heading:before,
.company_philosophy_body_heading:before {
  content: "";
  display: inline-block;
  height: 1em;
  width: 0.3em;
  margin-right: 0.3em;
  background-color: #00833f;
}
@media screen and (max-width: 767px) {
  .content_heading-sub:before,
  .column_detail_body h1:before,
  .company_eco_ems_heading:before,
  .company_philosophy_body_heading:before {
    margin-top: 0.1em;
  }
}
@media screen and (max-width: 767px) {
  .content_text,
  .company_philosophy_body_text,
  .faq_content_text {
    padding: 5.3333333333vw 4vw;
    font-size: 3.7333333333vw;
    text-align: justify;
    text-justify: inter-ideograph;
    text-align: left;
    background-color: #f3f7f0;
    line-height: 1.5;
  }
}
.content_text_wrap {
  background-color: #f3f7f0;
}
@media print, screen and (min-width: 768px) {
  .content_text,
  .company_philosophy_body_text,
  .faq_content_text {
    padding: min(3.6603221083vw, 50px) 0 0;
    font-size: min(1.3162518302vw, 18px);
    text-align: center;
    line-height: 2.5027808676;
    color: #45413f;
    background-color: #f3f7f0;
    margin: 0 auto;
    max-width: 1100px;
  }
}
.content_text.content_text--wide {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .content-top {
    padding: 26.6666666667vw 0;
  }
}
@media print, screen and (min-width: 768px) {
  .content-top {
    padding: 0vw 0;
  }
}
.text-small {
  font-size: 0.8em;
}
.color-g {
  color: #00833f;
}
.footer_contact {
  background: url("../images/footer/bg01.png") center/cover no-repeat;
  display: none;
}
@media screen and (max-width: 767px) {
  .footer_contact_inner {
    margin-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_inner {
    display: flex;
    justify-content: space-between;
    padding: 6.640625vw;
  }
}
.footer_contact_heading {
  font-weight: 700;
  color: #00833f;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer_contact_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_heading {
    font-size: 1.40625vw;
  }
}
.footer_contact_type {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
  .footer_contact_type {
    width: 92vw;
    margin: 4vw auto;
    padding: 6.6666666667vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_type {
    flex-grow: 0;
    width: 33.59375vw;
    padding: 2.34375vw 2.734375vw;
  }
}
.footer_contact_text,
.footer_contact_text-mail,
.footer_contact_text-tel {
  margin-top: 21px;
  text-align: center;
}
.footer_contact_text-mail {
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer_contact_text-mail {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_text-mail {
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .footer_contact_text-mail a {
    margin-bottom: 5.3333333333vw;
    padding: 4vw 16vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_text-mail a {
    margin-bottom: 1.5625vw;
    padding-left: 4.6875vw;
    padding-right: 4.6875vw;
  }
}
.side {
  z-index: 1000;
  position: fixed;
  border-top: 5px solid #00833f;
  background-color: #fff;
  display: none;
}
@media print, screen and (min-width: 768px) {
  .side {
    height: 100vh;
    width: 16.40625vw;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  }
}
@media print, screen and (min-width: 768px) {
  .side_inner {
    padding-bottom: 30px;
    height: 100%;
    overflow-y: scroll;
  }
}
@media print, screen and (min-width: 768px) {
  .side_contact {
    padding: 0 1.171875vw;
  }
}
@media screen and (max-width: 767px) {
  .side_contact.mobile {
    padding-bottom: 32vw;
  }
}
.side_contact li {
  list-style: none;
}
@media screen and (max-width: 767px) {
  .side_contact li {
    margin: 0vw 4vw;
    padding: 4vw 8vw;
    padding-bottom: 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .side_contact li {
    margin-top: 1.171875vw;
  }
}
@media screen and (max-width: 767px) {
  .side_contact li:nth-child(3) {
    padding-top: 0vw;
  }
}
@media print, screen and (min-width: 768px) {
  .side_contact li:nth-child(3) {
    margin-top: 0.78125vw;
  }
}
.side_sp {
  display: flex;
  justify-content: space-between;
}
.side_sp_control {
  display: flex;
  list-style: none;
  margin-right: 18.6666666667vw;
  gap: 2.6666666667vw;
}
@media print, screen and (min-width: 768px) {
  .side_sp_control {
    display: none;
  }
}
.side_sp_control li {
  position: relative;
  height: 16vw;
  width: 8vw;
}
.side_sp_control li a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 16vw;
  width: 8vw;
}
.side_sp_control li img {
  width: 8vw;
}
.side_sp_control li span {
  position: absolute;
  left: 4vw;
  height: 2px;
  width: 8vw;
  background-color: #222616;
  transition: 0.2s;
}
.side_sp_control li span:nth-child(1) {
  top: 6.6666666667vw;
}
.side_sp_control li span:nth-child(2) {
  top: 8.5333333333vw;
}
.side_sp_control li span:nth-child(3) {
  top: 10.4vw;
}
.side_sp_control li.isActive span:nth-child(1) {
  transform: translateY(1.8666666667vw) rotate(45deg);
}
.side_sp_control li.isActive span:nth-child(2) {
  opacity: 0;
}
.side_sp_control li.isActive span:nth-child(3) {
  transform: translateY(-1.8666666667vw) rotate(-45deg);
}
@media screen and (max-width: 767px) {
  .side_drawer {
    z-index: 10000;
    position: fixed;
    top: 17.3333333333vw;
    left: 100%;
    height: calc(100vh - 21.3333333333vw);
    width: 100%;
    background-color: #fff;
    transition: 0.2s ease-in;
    overflow: scroll;
  }
}
@media screen and (max-width: 767px) {
  .side_drawer.isActive {
    transform: translateX(-100%);
  }
}
.side_drawer_inner {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .side_drawer_inner {
    padding-bottom: 13.3333333333vw;
  }
}
.logo {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .logo {
    height: 16vw;
    width: 58.6666666667vw;
    padding: 5.3333333333vw 2.6666666667vw;
    flex-shrink: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .logo {
    margin: 0 1.171875vw;
    padding: 1.171875vw 0;
    border-bottom: 1px solid #ccc;
  }
}
.gNav li {
  list-style: none;
}
.gNav li a:not(.btn) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #222616;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .gNav li a:not(.btn) {
    margin: 0vw 4vw;
    padding: 5.3333333333vw 8vw;
    border-top: 1px solid #ccc;
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .gNav li a:not(.btn) {
    height: 3.125vw;
    padding: 0 1.171875vw;
    font-size: 1.015625vw;
  }
}
.gNav li a:not(.btn):after {
  display: block;
  content: "\f105";
  font-family: "FontAwesome", sans-serif;
}
.gNav li a:not(.btn) img {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .gNav li:last-child {
    margin: 1.171875vw;
    padding: 1.171875vw 0;
    border-top: 1px solid #808080;
    border-bottom: 1px solid #808080;
  }
}
@media screen and (max-width: 767px) {
  .gNav li:last-child {
    margin: 0vw 4vw;
    padding: 5.3333333333vw 8vw;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
}
@media screen and (max-width: 767px) {
  .gNav li:last-child a {
    border-bottom: 1px solid #ccc;
  }
}
.gNav li:last-child a:after {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .lNav,
  .lNav-2 {
    padding: 0 6.25vw;
  }
}
.lNav ul,
.lNav-2 ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .lNav ul,
  .lNav-2 ul {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 767px) {
  .lNav ul li:nth-of-type(even) a,
  .lNav-2 ul li:nth-of-type(even) a {
    margin-left: 4vw;
  }
}
.lNav ul a,
.lNav-2 ul a {
  line-height: 1;
  text-indent: -0.5em;
}
@media screen and (max-width: 767px) {
  .lNav ul a,
  .lNav-2 ul a {
    width: 44vw;
    margin-top: 4vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .lNav ul a,
  .lNav-2 ul a {
    width: 15.625vw;
    margin-left: 20px;
    margin-right: 20px;
    font-size: 1.09375vw;
  }
}
@media print, screen and (min-width: 768px) {
  .lNav ul a .fa,
  .lNav-2 ul a .fa {
    font-size: 1.484375vw;
    vertical-align: middle;
  }
}
@media screen and (max-width: 767px) {
  .lNav-2 li {
    display: flex;
    justify-content: center;
    width: 100%;
  }
  .lNav-2 li:nth-of-type(even):not(:root) a {
    margin-left: 0;
  }
  .lNav-2 li a {
    display: block;
    width: 64vw;
    margin: 4vw auto z;
    font-size: 3.7333333333vw;
  }
}
.btn,
.lNav ul a,
.lNav-2 ul a {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  display: inline-block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  cursor: pointer;
  transition: 0.3s;
  line-height: 1;
  text-decoration: none;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .btn,
  .lNav ul a,
  .lNav-2 ul a {
    border-radius: 0.5333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn,
  .lNav ul a,
  .lNav-2 ul a {
    border-radius: 0.15625vw;
  }
}
.btn:hover,
.lNav ul a:hover,
.lNav-2 ul a:hover {
  opacity: 1;
}
.btn_icon {
  display: inline-block;
  height: 1em;
  margin: 0 0.3em;
  vertical-align: bottom;
}
.btn .fa,
.lNav ul a .fa,
.lNav-2 ul a .fa {
  margin: 0 0.3em;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .btn img[src*=".svg"],
  .lNav ul a img[src*=".svg"],
  .lNav-2 ul a img[src*=".svg"] {
    width: auto;
  }
}
.btn-primary {
  border: 1px solid #00833f;
  background-color: #00833f;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .btn-primary:hover {
    background-color: #fff;
    color: #00833f;
  }
}
.btn-primary-border,
.lNav ul a,
.lNav-2 ul a {
  border: 1px solid #00833f;
  color: #00833f;
}
@media print, screen and (min-width: 768px) {
  .btn-primary-border:hover,
  .lNav ul a:hover,
  .lNav-2 ul a:hover {
    background-color: #00833f;
    color: #fff;
  }
}
.btn-primary-light {
  border: 1px solid #00833f;
  background-color: rgba(250, 255, 240, 0.7);
  color: #00833f;
}
@media print, screen and (min-width: 768px) {
  .btn-primary-light:hover {
    background-color: #00833f;
    color: #fff;
  }
}
.btn-attention {
  border: 1px solid #9c2126;
  background-color: #9c2126;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .btn-attention:hover {
    background-color: #fff;
    color: #9c2126;
  }
}
.btn-attention-border {
  border: 1px solid #9c2126;
  color: #9c2126;
}
@media print, screen and (min-width: 768px) {
  .btn-attention-border:hover {
    background-color: #9c2126;
    color: #fff;
  }
}
.btn-active {
  border: 1px solid #f0aa3a;
  background-color: #f0aa3a;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  .btn-active:hover {
    background-color: #fff;
    color: #f0aa3a;
  }
}
@media screen and (max-width: 767px) {
  .btn-small {
    font-size: 3.7333333333vw;
    padding: 3.4666666667vw 7.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-small {
    padding: 1.171875vw;
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-medium,
  .lNav ul a,
  .lNav-2 ul a {
    font-size: 4vw;
    padding: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-medium,
  .lNav ul a,
  .lNav-2 ul a {
    padding: 1.171875vw;
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-long {
    font-size: 4vw;
    padding: 4vw 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-long {
    padding: 1.171875vw 4.6875vw;
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-240 {
    font-size: 4vw;
    padding: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-240 {
    width: 18.75vw;
    padding: 1.171875vw 0;
    font-size: 0.9375vw;
  }
}
.btn-expand {
  display: inline-block;
  width: 100%;
  text-align: center;
}
.btn-sampleLink {
  z-index: 100000;
  position: fixed;
  bottom: 0;
  right: 0;
  display: block;
  margin: 0 auto;
  line-height: 1.3;
}
@media screen and (max-width: 767px) {
  .btn-sampleLink {
    bottom: 2.6666666667vw;
    right: 2.6666666667vw;
    font-size: 3.7333333333vw;
    padding: 1.8666666667vw 3.7333333333vw;
    border-radius: 1.0666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-sampleLink {
    bottom: 1.3333333333vw;
    right: 1.3333333333vw;
    margin-top: 2.6666666667vw;
    padding: 1.0666666667vw 2.1333333333vw;
    font-size: 1.2109375vw;
    border-radius: 0.5333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-sampleLink i:last-of-type {
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-sampleLink i:last-of-type {
    font-size: 1.484375vw;
  }
}
.btn-sideContact {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .btn-sideContact {
    padding: 0.46875vw;
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-sideContact {
    padding: 6vw 4vw;
  }
}
.btn-sideContact span {
  line-height: 1.58;
}
@media print, screen and (min-width: 768px) {
  .btn-sideContact i {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  .btn-sideContact i {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-sideContact i:first-of-type {
    margin: 0 0.78125vw 0 0 !important;
  }
}
@media print, screen and (min-width: 768px) {
  .btn-sideContact i:last-of-type {
    margin: 0 0 0 0.78125vw !important;
  }
}
select {
  font-family: "Noto Sans JP", sans-serif;
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  padding-right: 1em;
}
input,
textarea {
  font-family: "Noto Sans JP", sans-serif;
  box-sizing: border-box;
  padding: 0.5em;
}
@media screen and (max-width: 767px) {
  .form_half {
    display: inline-block;
    width: 84vw;
  }
}
@media print, screen and (min-width: 768px) {
  .form_half {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .form_extend {
    width: 84vw;
  }
}
@media print, screen and (min-width: 768px) {
  .form_extend {
    width: 100%;
  }
}
.form_zip {
  align-items: center;
}
@media screen and (max-width: 767px) {
  .form_zip input {
    flex-grow: 1;
    margin-left: 0.5em;
    width: 50%;
  }
}
@media print, screen and (min-width: 768px) {
  .form_zip input {
    width: 50%;
  }
}
@media print, screen and (min-width: 768px) {
  .form_click {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
}
.form_click_content {
  z-index: 1;
  max-height: 0;
  overflow: hidden;
}
.form_click.hide {
  overflow: hidden;
  -webkit-animation: accordion_hide 1.7s ease both;
  animation: accordion_hide 1.7s ease both;
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
.form_click.show {
  overflow: hidden;
  -webkit-animation: accordion_show 2s ease both;
  animation: accordion_show 2s ease both;
}
@media print, screen and (min-width: 768px) {
  .form_click_w100 {
    width: 100%;
  }
}
.form_click p {
  width: 100%;
  margin-bottom: 0.7em !important;
}
@media screen and (max-width: 767px) {
  .form_click p {
    margin-top: 5.3333333333vw;
  }
}
.form_click > div {
  display: flex;
  align-items: center;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .form_click > div {
    min-width: calc(33.3333333333% - 1.5625vw);
    margin: 0 1.5625vw 1.5625vw 0;
  }
}
@media screen and (max-width: 767px) {
  .form_click > div + div {
    margin-top: 5.3333333333vw;
  }
}
.form_click label {
  line-height: 1;
  cursor: pointer;
}
.form_click input[type="checkbox"],
.form_click input[type="radio"] {
  position: relative;
  margin-top: 0;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  border-radius: 0;
  font: inherit;
  outline: none;
  cursor: pointer;
}
@media print, screen and (min-width: 768px) {
  .form_click input[type="checkbox"],
  .form_click input[type="radio"] {
    width: 1.5625vw;
    height: 1.5625vw;
    margin-right: 0.78125vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click input[type="checkbox"],
  .form_click input[type="radio"] {
    width: 4vw;
    height: 4vw;
    margin-right: 2.6666666667vw;
  }
}
.form_click input[type="checkbox"]:after,
.form_click input[type="radio"]:after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  left: 0;
  border: 1px solid #767676;
  background: #fff;
}
@media print, screen and (min-width: 768px) {
  .form_click input[type="checkbox"]:after,
  .form_click input[type="radio"]:after {
    width: 1.5625vw;
    height: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click input[type="checkbox"]:after,
  .form_click input[type="radio"]:after {
    width: 4vw;
    height: 4vw;
  }
}
.form_click input[type="checkbox"]:checked:before,
.form_click input[type="radio"]:checked:before {
  z-index: 1;
  position: absolute;
  display: block;
  content: "\f00c";
  font-family: FontAwesome;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
  color: #000;
}
.form_click_balloon {
  z-index: 1;
  position: absolute;
  bottom: calc(100% + 1em);
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 0 0.78125vw 0 rgba(34, 38, 22, 0.3);
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon {
    padding: 1.171875vw;
    width: 22.65625vw;
    left: 1em;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 767px) {
  .form_click_balloon {
    padding: 4vw;
    width: 100%;
  }
}
.form_click_balloon ul {
  text-indent: -1em;
  list-style: none;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .form_click_balloon ul {
    font-size: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon ul {
    font-size: 0.78125vw;
  }
}
.form_click_balloon p {
  font-weight: 700;
  line-height: 1.33;
}
@media screen and (max-width: 767px) {
  .form_click_balloon p {
    margin-top: 0 !important;
    font-size: 3.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon p {
    font-size: 0.9375vw;
  }
}
.form_click_balloon p + ul {
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .form_click_balloon p + ul {
    padding-top: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon p + ul {
    padding-top: 0.78125vw;
  }
}
.form_click_balloon p + ul li + li {
  margin-top: 0.5em;
}
.form_click_balloon::before,
.form_click_balloon::after {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: auto;
}
.form_click_balloon::before {
  border-style: solid;
  border-color: #ccc transparent transparent transparent;
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon::before {
    bottom: -0.78125vw;
    border-width: 0.78125vw 0.78125vw 0 0.78125vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click_balloon::before {
    bottom: -2.6666666667vw;
    left: 2.6666666667vw;
    border-width: 2.6666666667vw 2.6666666667vw 0 2.6666666667vw;
  }
}
.form_click_balloon::after {
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  z-index: 10;
}
@media print, screen and (min-width: 768px) {
  .form_click_balloon::after {
    bottom: -0.703125vw;
    border-width: 0.703125vw 0.703125vw 0 0.703125vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click_balloon::after {
    bottom: -2.4vw;
    left: 2.4vw;
    border-width: 2.4vw 2.4vw 0 2.4vw;
  }
}
.form_click_balloonBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media print, screen and (min-width: 768px) {
  .form_click_balloonBox {
    width: 23.4375vw;
  }
}
.form_click_balloonBox figure {
  width: 100%;
}
.form_click_balloonBox figcaption > p {
  margin: 0.5em 0 0 !important;
}
@media print, screen and (min-width: 768px) {
  .form_click_balloonBox figcaption .name {
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click_balloonBox figcaption .name {
    font-size: 3.7333333333vw;
  }
}
.form_click_balloonBox figcaption .caption,
.form_click_balloonBox figcaption .capacity,
.form_click_balloonBox figcaption .size {
  line-height: 1.4;
}
@media print, screen and (min-width: 768px) {
  .form_click_balloonBox figcaption .caption,
  .form_click_balloonBox figcaption .capacity,
  .form_click_balloonBox figcaption .size {
    font-size: 0.9375vw;
  }
}
@media screen and (max-width: 767px) {
  .form_click_balloonBox figcaption .caption,
  .form_click_balloonBox figcaption .capacity,
  .form_click_balloonBox figcaption .size {
    font-size: 3.2vw;
  }
}
.form_click_balloonBox figcaption .capacity {
  font-weight: 400;
  text-indent: -1em;
  padding-left: 1em;
}
.form_click_balloonBox figcaption .size {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.5em;
}
.form_click_balloonBox figcaption .size dd p {
  margin-bottom: 0 !important;
  font-weight: 400;
}
.form_click_balloonBox img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #mail h3 {
    padding-top: 20vw;
    margin-top: -20vw;
  }
}
@-webkit-keyframes accordion_show {
  0% {
    max-height: 0;
    overflow: hidden;
  }
  100% {
    max-height: 9999px;
    overflow: visible;
  }
}
@keyframes accordion_show {
  0% {
    max-height: 0;
    overflow: hidden;
  }
  100% {
    max-height: 9999px;
    overflow: visible;
  }
}
@-webkit-keyframes accordion_hide {
  0% {
    max-height: 9999px;
    overflow: visible;
  }
  100% {
    overflow: hidden;
    max-height: 0;
  }
}
@keyframes accordion_hide {
  0% {
    max-height: 9999px;
    overflow: visible;
  }
  100% {
    overflow: hidden;
    max-height: 0;
  }
}
.modal {
  z-index: 100000;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}
.modal.isActive {
  display: block;
}
.modal_inner {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  position: absolute;
  right: 50%;
  bottom: 50%;
  border-radius: 0.5em;
  transform: translate(50%, 50%);
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .modal_inner {
    min-width: 90%;
    padding: 5% 3%;
  }
}
@media print, screen and (min-width: 768px) {
  .modal_inner {
    min-width: 50%;
    padding: 2em;
  }
}
.modal_heading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5em 0.5em 0;
  color: #00833f;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .modal_heading {
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .modal_heading {
    font-size: 1.5625vw;
  }
}
.modal_image {
  position: relative;
  width: 100%;
}
.modal_image img {
  width: 100%;
}
.modal_image img:nth-child(2):not(._pcHide) {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: modalAnime 8s infinite;
  animation: modalAnime 8s infinite;
}
.modal_video {
  width: 100%;
}
.modal_video video {
  width: 100%;
}
.modal_close {
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: -1em;
  height: 2em;
  width: 2em;
  border: 2px solid #fff;
  border-radius: 50%;
  background-color: #222616;
  color: #fff;
  font-size: 2em;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .modal_close {
    right: -0.5em;
  }
}
@media print, screen and (min-width: 768px) {
  .modal_close {
    right: -1em;
  }
}
.modal_close:before {
  content: "\f00d";
  font-family: "FontAwesome", sans-serif;
}
@-webkit-keyframes modalAnime {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes modalAnime {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.qcBanner {
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .qcBanner {
    /* width: 89.3333333333vw; */
    /* margin: 10.6666666667vw 4vw 10.6666666667vw -6.6666666667vw; */
    margin: 10.6vw 4vw;
    padding-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qcBanner {
    margin: 5.46875vw 6.25vw 2.34375vw;
    padding-top: 5.46875vw;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .qcBanner_text {
    margin-top: 4vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qcBanner_text {
    margin-top: 1.171875vw;
    font-size: 1.171875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qcBanner img {
    width: 56.25vw;
  }
}
.planningBanner {
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .planningBanner {
    width: 89.3333333333vw;
    margin: 10.6666666667vw auto;
    padding-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .planningBanner {
    margin: 5.46875vw 6.25vw 2.34375vw;
    padding-top: 5.46875vw;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .planningBanner_text {
    margin-top: 4vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .planningBanner_text {
    margin-top: 1.171875vw;
    font-size: 1.171875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .planningBanner img {
    width: 56.25vw;
  }
}
.itemList {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .itemList {
    flex-direction: column-reverse;
    margin: 13.3333333333vw auto;
  }
  .itemList:not(:first-of-type) {
    padding-top: 13.3333333333vw;
    border-top: 1px solid #ccc;
  }
}
@media print, screen and (min-width: 768px) {
  .itemList {
    flex-direction: row-reverse;
    justify-content: flex-end;
    margin: 3.90625vw auto;
  }
  .itemList:not(:first-of-type) {
    padding-top: 3.90625vw;
    border-top: 1px solid #ccc;
  }
}
@media print, screen and (min-width: 768px) {
  .itemList_item {
    width: 35.15625vw;
    margin-left: 3.90625vw;
  }
}
.itemList_heading {
  font-weight: 700;
  margin-top: 0.5em;
}
@media screen and (max-width: 767px) {
  .itemList_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .itemList_heading {
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  .itemList_text {
    margin-top: 0.5em;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .itemList_text {
    margin-top: 1em;
    font-size: 1.171875vw;
  }
}
.itemList_text small {
  display: block;
  margin-top: 1em;
  color: #808080;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .itemList_image {
    width: 92vw;
  }
}
@media print, screen and (min-width: 768px) {
  .itemList_image {
    width: 30.46875vw;
  }
}
.itemList_image img {
  width: 100%;
}
.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .nav-links {
    margin-top: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .nav-links {
    margin-top: 2.34375vw;
  }
}
.nav-links .page-numbers {
  margin: 0.5em;
  padding: 0.8em 1em;
  border: 1px solid #00833f;
  color: #00833f;
  line-height: 1;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .nav-links .page-numbers {
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .nav-links .page-numbers {
    font-size: 1.171875vw;
  }
}
.nav-links .page-numbers.current {
  background: #00833f;
  color: #fff;
}
.nav-links .next,
.nav-links .prev {
  border: 0;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper {
    height: 56vw !important;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_slider .hooper {
    /*height: 16.40625vw !important;*/
  }
}
.tour_slider .hooper-list {
  margin: auto;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper-list {
    width: 92vw !important;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_slider .hooper-list {
    width: 70.3125vw !important;
  }
}
.tour_slider .hooper-slide {
  text-align: center;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper-slide {
    padding: 0 5.3333333333vw 0 0 !important;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_slider .hooper-slide {
    /*width: 17.96875vw !important;*/
    padding: 0 0.5333333333vw;
  }
}
.tour_slider .hooper-slide img {
  width: 100%;
}
.tour_slider .hooper-button-prev {
  position: absolute;
  top: 3.90625vw;
  left: 0;
  height: 3.90625vw;
  width: 1.171875vw;
  list-style: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper-button-prev {
    display: none;
  }
}
.tour_slider .hooper-button-next {
  position: absolute;
  top: 3.90625vw;
  right: 0;
  height: 3.90625vw;
  width: 1.171875vw;
  transform: rotate(180deg);
  list-style: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper-button-next {
    display: none;
  }
}
.tour_slider .hooper .thumb {
  border: 8px solid #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.tour_slider .hooper p {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper p {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_slider .hooper p {
    font-size: 1.09375vw;
  }
}
.tour_slider .hooper p img {
  margin-right: 0.3em;
}
@media screen and (max-width: 767px) {
  .tour_slider .hooper p img {
    height: 6.1333333333vw;
    width: 6.1333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_slider .hooper p img {
    height: 1.796875vw;
    width: 1.796875vw;
  }
}
.tour_slider .hooper .v360 {
  display: none;
}
@media screen and (max-width: 767px) {
  .hooper:not(:root) {
    height: 128vw;
  }
  .hooper:not(:root) img {
    width: 100%;
  }
}
.hooper:not(:root) .hooper-indicators li {
  margin: 10px 5px;
}
@media print, screen and (min-width: 768px) {
  .hooper:not(:root) .hooper-indicators li {
    margin: 0.78125vw 0.390625vw;
  }
}
.hooper:not(:root) .hooper-indicator {
  height: 15px;
  width: 15px;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.8;
}
@media print, screen and (min-width: 768px) {
  .hooper:not(:root) .hooper-indicator {
    height: 1.171875vw;
    width: 1.171875vw;
  }
}
.hooper:not(:root) .hooper-indicator.is-active {
  border-color: rgba(255, 255, 255, 0.8);
  background-color: #00833f;
}
.hero {
  width: 100%;
  padding: 0 2.5622254758vw;
  background-color: #f3f7f0;
}
.hero img {
  width: 100%;
}
@media screen and (min-width: 1366px) {
  .hero {
    padding: 0 calc((100% - 1366px) / 2 + 35px);
  }
}
@media screen and (max-width: 767px) {
  .hero {
    width: 100%;
    padding: 0;
    background-color: #f3f7f0;
  }
}
@media print, screen and (min-width: 768px) {
  .hero .hooper {
    height: 28.125vw;
  }
}
.headline {
  display: flex;
  justify-content: flex-start;
  background: #ecf2e2;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .headline {
    padding: 1em;
    font-size: 3.7333333333vw;
    flex-direction: column;
    gap: 0.5em;
  }
}
@media print, screen and (min-width: 768px) {
  .headline {
    padding: 1em 2em;
    font-size: 1.171875vw;
  }
}
.headline_heading {
  font-weight: 700;
  color: #00833f;
}
.headline_heading-2 {
  font-weight: 400;
  margin-left: 0.5em;
}
.headline_heading-orange {
  color: #f0aa3a;
}
.headline_text {
  margin-left: 0.5em;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 767px) {
  .headline_text {
    flex-grow: 1;
  }
}
.headline_more {
  margin-left: 1em;
  color: #5f9265;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .headline_more {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .headline_more_wrap {
    text-align: right;
    margin-top: 1em;
  }
}
.homeBanner {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .homeBanner img {
    /* margin-top: 12vw; */
    width: 92vw;
  }
}
@media print, screen and (min-width: 768px) {
  .homeBanner img {
    width: 56.25vw;
  }
}
.tour {
  background-color: #ecf2e2;
}
.tour_map {
  position: relative;
}
@media screen and (max-width: 767px) {
  .tour_map {
    height: 109.6vw;
    width: 92.2666666667vw;
    margin: 6.6666666667vw auto;
    background: url("../images/tour/map_sp.svg") top center/100% no-repeat;
    line-height: 1;
    font-size: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map {
    height: min(49.21875vw, 670px);
    width: min(70.390625vw, 955px);
    margin: min(5.46875vw, 74px) min(6.25vw, 85px);
    background: url("../images/tour/map.svg") center no-repeat;
  }
}
@media print, screen and (min-width: 1366px) {
  .tour_map {
    margin: min(5.46875vw, 74px) calc(85px + (100vw - 1366px) / 2);
  }
}
.tour_map li {
  position: absolute;
  list-style: none;
  transition: 0.3s opacity;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .tour_map li {
    width: 3.8666666667vw;
    line-height: 1;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li {
    width: min(2.734375vw, 37px);
  }
}
.tour_map li:hover {
  opacity: 0.8;
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(1) {
    top: 38.9333333333vw;
    left: 27.4666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(1) {
    top: min(15.9375vw, 217px);
    left: min(21.015625vw, 287px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(2) {
    top: 26.6666666667vw;
    left: 31.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(2) {
    top: min(6.40625vw, 87px);
    left: min(23.75vw, 325px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(3) {
    top: 36.8vw;
    left: 34.9333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(3) {
    top: min(14.21875vw, 194px);
    left: min(26.71875vw, 365px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(4) {
    top: 40vw;
    left: 32.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(4) {
    top: min(16.796875vw, 229px);
    left: min(25vw, 343px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(5) {
    top: 33.0666666667vw;
    left: 42.1333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(5) {
    top: min(11.40625vw, 156px);
    left: min(32.03125vw, 438px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(6) {
    top: 29.3333333333vw;
    left: 47.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(6) {
    top: min(8.59375vw, 117px);
    left: min(35.9375vw, 491px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(7) {
    top: 38.9333333333vw;
    left: 41.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(7) {
    top: min(15.9375vw, 217px);
    left: min(31.40625vw, 429px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(8) {
    top: 30.6666666667vw;
    left: 79.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(8) {
    top: min(9.609375vw, 131px);
    left: min(61.484375vw, 845px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(9) {
    top: 25.8666666667vw;
    left: 73.0666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(9) {
    top: min(5.78125vw, 79px);
    left: min(55.78125vw, 763px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(10) {
    top: 31.7333333333vw;
    left: 57.0666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(10) {
    top: min(10.390625vw, 142px);
    left: min(42.8125vw, 584px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(11) {
    top: 35.2vw;
    left: 68vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(11) {
    top: min(13.125vw, 180px);
    left: min(50.78125vw, 696px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(12) {
    top: 38.9333333333vw;
    left: 75.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(12) {
    top: min(15.9375vw, 217px);
    left: min(55.9375vw, 765px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(13) {
    top: 42.6666666667vw;
    left: 72.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(13) {
    top: min(18.828125vw, 257px);
    left: min(53.671875vw, 733px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(14) {
    top: 36.5333333333vw;
    left: 51.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(14) {
    top: min(14.0625vw, 192px);
    left: min(39.0625vw, 534px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(15) {
    top: 49.6vw;
    left: 40.5333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(15) {
    top: min(24.0625vw, 328px);
    left: min(30.9375vw, 423px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(16) {
    top: 54.6666666667vw;
    left: 47.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(16) {
    top: min(27.890625vw, 381px);
    left: min(36.328125vw, 497px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(17) {
    top: 57.6vw;
    left: 36.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(17) {
    top: min(30.15625vw, 413px);
    left: min(27.65625vw, 379px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(18) {
    top: 52vw;
    left: 21.0666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(18) {
    top: min(25.9375vw, 353px);
    left: min(16.015625vw, 219px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(19) {
    top: 50.4vw;
    left: 29.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(19) {
    top: min(24.53125vw, 335px);
    left: min(22.421875vw, 306px);
  }
}
@media screen and (max-width: 767px) {
  .tour_map li:nth-child(20) {
    top: 57.0666666667vw;
    left: 52.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_map li:nth-child(20) {
    top: min(29.6875vw, 407px);
    left: min(40.234375vw, 550px);
  }
}
.tour_slider {
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .tour_slider {
    width: min(70vw, 955px);
    /*width: 76.5625vw;*/
    margin: auto;
    /*display: flex;*/
    justify-content: center;
  }
}
.tour_360 {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .tour_360 {
    margin-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tour_360 {
    margin-top: min(3.90625vw, 53px);
  }
}
@media screen and (max-width: 767px) {
  .feature {
    padding: 0 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature {
    padding-left: min(6.25vw, 85px);
  }
}
.feature_item {
  display: flex;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .feature_item {
    flex-direction: column;
    margin-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item {
    margin-top: 7.03125vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:first-of-type {
    margin-top: 5.46875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:nth-of-type(odd) {
    justify-content: flex-start;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:nth-of-type(odd) .feature_item_body {
    margin-right: 3.90625vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:nth-of-type(odd) .feature_image,
  .feature_item:nth-of-type(odd) .feature_image-minus,
  .feature_item:nth-of-type(odd) .feature_image-small2,
  .feature_item:nth-of-type(odd) .feature_image-small {
    flex-grow: 1;
  }
  .feature_item:nth-of-type(odd) .feature_image img,
  .feature_item:nth-of-type(odd) .feature_image-minus img,
  .feature_item:nth-of-type(odd) .feature_image-small2 img,
  .feature_item:nth-of-type(odd) .feature_image-small img {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:nth-of-type(even) {
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_item:nth-of-type(even) .feature_item_body {
    margin-left: 3.90625vw;
  }
}
.feature_heading {
  font-weight: 500;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  letter-spacing: 0;
}
@media screen and (max-width: 767px) {
  .feature_heading {
    margin-top: 6.6666666667vw;
    font-size: 5.6vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_heading {
    font-size: 1.640625vw;
  }
}
.feature_heading_no {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  padding-bottom: 0.3em;
  border-bottom: 1px solid #00833f;
  color: #00833f;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .feature_heading_no {
    margin-right: 6.6666666667vw;
    font-size: 9.6vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_heading_no {
    margin-right: 1.5625vw;
    font-size: 2.8125vw;
  }
}
.feature_text,
.feature_text-long {
  flex-grow: 0;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.9;
  letter-spacing: 0.035em;
}
@media screen and (max-width: 767px) {
  .feature_text,
  .feature_text-long {
    margin-top: 6.6666666667vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_text,
  .feature_text-long {
    width: 23.4375vw;
    margin-top: 2.34375vw;
    font-size: 1.171875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_text-long {
    width: 25.78125vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_image,
  .feature_image-minus,
  .feature_image-small2,
  .feature_image-small {
    width: 46.875vw;
    flex-grow: 0;
  }
  .feature_image img,
  .feature_image-minus img,
  .feature_image-small2 img,
  .feature_image-small img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .feature_image,
  .feature_image-minus,
  .feature_image-small2,
  .feature_image-small {
    width: 100%;
    order: -1;
  }
  .feature_image img,
  .feature_image-minus img,
  .feature_image-small2 img,
  .feature_image-small img {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_image-small {
    width: 43.359375vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_image-small2 {
    width: 43.359375vw;
    margin-right: 6.25vw;
  }
}
@media print, screen and (min-width: 768px) {
  .feature_image-minus {
    margin-left: -6.25vw;
  }
}
.process {
  background: top center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .process {
    margin-top: 13.3333333333vw;
    /* padding: 70.6666666667vw 13.3333333333vw 0; */
    padding-top: 70.6vw;
  }
}
@media print, screen and (min-width: 768px) {
  .process {
    margin-top: 6.25vw;
    padding-top: 21.875vw;
  }
}
@media screen and (max-width: 767px) {
  .process.tea {
    background-image: url("../images/tea/bg_process_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .process.tea {
    background-image: url("../images/tea/bg_process.jpg");
  }
}
@media screen and (max-width: 767px) {
  .process.food {
    background-color: #ecf2e2;
    background-image: url("../images/food/bg_process_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .process.food {
    background-color: #ecf2e2;
    background-image: url("../images/food/bg_process.jpg");
  }
}
.process_line {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.process_line::before {
  content: "";
  width: 23%;
  order: 1;
}
.process_line::after {
  content: "";
  width: 23%;
}
@media print, screen and (min-width: 768px) {
  .process_line {
    padding: 0 6.25vw;
  }
}
@media screen and (max-width: 767px) {
  .process_line {
    padding: 0 13.3333333333vw;
  }
}
.process_line li {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .process_line li {
    margin-top: 20vw;
  }
}
@media print, screen and (min-width: 768px) {
  .process_line li {
    width: 23%;
    margin-top: 5.46875vw;
  }
}
@media screen and (max-width: 767px) {
  .process_line li:before {
    content: "";
    position: absolute;
    bottom: -11.4666666667vw;
    right: 50%;
    transform: translateX(50%);
    height: 4.8vw;
    width: 9.6vw;
    background: url("../images/arrow_sp.svg") center/100% no-repeat;
  }
}
@media print, screen and (min-width: 768px) {
  .process_line li:before {
    content: "";
    position: absolute;
    top: 5.46875vw;
    left: -1.71875vw;
    height: 2.8125vw;
    width: 1.40625vw;
    background: url("../images/arrow.svg") center/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .process_line li:last-of-type:before {
    display: none;
  }
}
.process_line_heading {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .process_line_heading {
    margin-top: 4vw;
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .process_line_heading {
    margin-top: 1.171875vw;
    font-size: 1.40625vw;
  }
}
.process_line_heading_no {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #abc069;
}
@media print, screen and (min-width: 768px) {
  .process_line_heading_no {
    font-size: 1.5625vw;
  }
}
.process_line_text {
  text-align: justify;
  text-justify: inter-ideograph;
}
@media screen and (max-width: 767px) {
  .process_line_text {
    margin-top: 2.6666666667vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .process_line_text {
    margin-top: 0.78125vw;
    font-size: 1.09375vw;
    line-height: 1.857142857;
  }
}
.process_line_image {
  order: -1;
}
@media screen and (max-width: 767px) {
  .process_line_image {
    height: 48vw;
    width: 74.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .process_line_image {
    height: 14.0625vw;
    width: 21.875vw;
  }
}
.material {
  background: #f7f7f7 top center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .material {
    margin-top: 13.3333333333vw;
    padding: 70.6666666667vw 4vw 0;
  }
}
@media print, screen and (min-width: 768px) {
  .material {
    padding-top: 21.875vw;
  }
}
.material.tea {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .material.tea {
    background-image: url("../images/tea/bg_tea_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .material.tea {
    background-image: url("../images/tea/bg_tea.jpg");
  }
}
.material.food {
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .material.food {
    background-image: url("../images/food/bg_material_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .material.food {
    background-image: url("../images/food/bg_material.jpg");
  }
}
@media screen and (max-width: 767px) {
  .material.allList {
    background-image: url("../images/tea/bg_tea-leaf_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .material.allList {
    background-image: url("../images/tea/bg_tea-leaf.jpg");
  }
}
.material.allList-food {
  background-color: #ecf2e2;
}
@media screen and (max-width: 767px) {
  .material.allList-food {
    background-image: url("../images/food/bg_powder_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .material.allList-food {
    background-image: url("../images/food/bg_powder.jpg");
  }
}
.material_line {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media print, screen and (min-width: 768px) {
  .material_line {
    padding: 0 6.25vw;
  }
}
.material_line li {
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 768px) {
  .material_line li {
    width: 21.875vw;
    margin-top: 5.46875vw;
  }
}
.material_line_heading {
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .material_line_heading {
    margin-top: 1.171875vw;
    font-size: 1.40625vw;
  }
}
.material_line_heading_no {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #abc069;
}
@media print, screen and (min-width: 768px) {
  .material_line_heading_no {
    font-size: 1.5625vw;
  }
}
.material_line_text {
  text-align: justify;
  text-justify: inter-ideograph;
}
@media print, screen and (min-width: 768px) {
  .material_line_text {
    margin-top: 0.78125vw;
    font-size: 1.09375vw;
    line-height: 1.857142857;
  }
}
.material_line_image {
  order: -1;
}
@media screen and (max-width: 767px) {
  .material_type {
    margin-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type {
    margin-top: 5.46875vw;
    padding: 0 6.25vw;
  }
}
.material_type_heading {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background-color: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .material_type_heading {
    padding: 2.6666666667vw;
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_heading {
    padding: 0.78125vw;
    font-size: 1.40625vw;
  }
}
.material_type_heading:before {
  content: "";
  display: block;
  flex-shrink: 0;
  height: 1em;
  width: 0.3em;
  margin-right: 0.3em;
  background-color: #00833f;
}
@media screen and (max-width: 767px) {
  .material_type_text {
    margin-top: 6.6666666667vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_text {
    margin-top: 1.953125vw;
    font-size: 1.09375vw;
  }
}
.material_type_list {
  display: flex;
  justify-content: space-between;
}
@media print, screen and (min-width: 768px) {
  .material_type_list {
    margin-left: -3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  .material_type_list {
    flex-wrap: wrap;
  }
}
.material_type_list li {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .material_type_list li {
    width: 42.6666666667vw;
    margin: 9.3333333333vw auto;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list li {
    width: 100%;
    margin-top: 1.171875vw;
    margin-left: 3.90625vw;
  }
}
.material_type_list_top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media print, screen and (min-width: 768px) {
  .material_type_list_top {
    margin-top: 0.78125vw;
  }
}
@media screen and (max-width: 767px) {
  .material_type_list_top {
    margin-top: 2.6666666667vw;
  }
}
.material_type_list_top-column {
  flex-direction: column;
  align-items: flex-start;
}
.material_type_list_heading {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .material_type_list_heading {
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list_heading {
    font-size: 1.328125vw;
  }
}
.material_type_list_heading-case {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  color: #5f9265;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .material_type_list_heading-case {
    margin-top: 3.4666666667vw;
    font-size: 6.4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list_heading-case {
    margin-top: 1.015625vw;
    font-size: 1.875vw;
  }
}
.material_type_list_sample {
  margin-left: auto;
  color: #f0aa3a;
}
@media print, screen and (min-width: 768px) {
  .material_type_list_sample {
    font-size: 0.78125vw;
  }
}
@media screen and (max-width: 767px) {
  .material_type_list_sample {
    font-size: 2.6666666667vw;
  }
}
.material_type_list_text {
  flex-grow: 1;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media screen and (max-width: 767px) {
  .material_type_list_text {
    margin-top: 1.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list_text {
    margin-top: 0.78125vw;
    font-size: 1.09375vw;
    line-height: 1.428571429;
  }
}
.material_type_list_text .fa {
  color: #ccc;
}
.material_type_list_text span {
  display: block;
  color: #5f9265;
}
.material_type_list_image {
  order: -1;
}
.material_type_list_image img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .material_type_list-2 {
    margin-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list-2 {
    margin-top: 3.125vw;
    display: flex;
    justify-content: space-between;
  }
}
.material_type_list-2 li {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: flex-end;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .material_type_list-2 li {
    margin-top: 5.3333333333vw;
  }
}
.material_type_list-2_heading {
  font-weight: 500;
  line-height: 1.176470588;
}
@media screen and (max-width: 767px) {
  .material_type_list-2_heading {
    margin-top: 2.6666666667vw;
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list-2_heading {
    margin-top: 0.78125vw;
    font-size: 1.328125vw;
  }
}
.material_type_list-2_text {
  flex-grow: 1;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media screen and (max-width: 767px) {
  .material_type_list-2_text {
    margin-top: 2.6666666667vw;
    font-size: 3.2vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list-2_text {
    margin-top: 0.78125vw;
    font-size: 1.09375vw;
    line-height: 1.428571429;
  }
}
@media screen and (max-width: 767px) {
  .material_type_list-2_image {
    width: 42.6666666667vw;
    margin-right: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_list-2_image {
    width: 14.0625vw;
    margin-right: 1.171875vw;
  }
}
@media screen and (max-width: 767px) {
  .material_type_category {
    margin-top: 16vw;
  }
  .material_type_category:first-of-type {
    margin-top: 10.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category {
    margin-top: 6.640625vw;
  }
  .material_type_category:first-of-type {
    margin-top: 3.125vw;
  }
}
.material_type_category_heading {
  font-weight: 500;
  border-bottom: 4px solid #f7f7f7;
}
@media screen and (max-width: 767px) {
  .material_type_category_heading {
    padding-bottom: 2.6666666667vw;
    font-size: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_heading {
    padding-bottom: 0.78125vw;
    font-size: 1.5625vw;
  }
}
.material_type_category_text {
  line-height: 1.428571429;
}
@media screen and (max-width: 767px) {
  .material_type_category_text {
    margin-top: 4vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_text {
    margin-top: 1.171875vw;
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .material_type_category_list {
    margin-top: 9.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_list {
    display: flex;
    justify-content: space-between;
    margin-top: 2.734375vw;
  }
}
.material_type_category_item {
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .material_type_category_item:not(:first-of-type) {
    margin-left: 3.90625vw;
  }
}
.material_type_category_item_heading {
  font-weight: 700;
  position: relative;
  color: #5f9265;
}
@media screen and (max-width: 767px) {
  .material_type_category_item_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_item_heading {
    font-size: 1.40625vw;
  }
}
.material_type_category_item_heading:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  height: 1px;
  width: 3em;
  background-color: #5f9265;
}
@media screen and (max-width: 767px) {
  .material_type_category_note {
    font-size: 3.7333333333vw;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_note {
    margin: 4.6875vw auto 0;
    font-size: 1.09375vw;
    text-align: center;
  }
}
.material_type_category_note p {
  display: inline-block;
  background: #ecf2e2;
}
@media screen and (max-width: 767px) {
  .material_type_category_note p {
    padding: 1em;
  }
}
@media print, screen and (min-width: 768px) {
  .material_type_category_note p {
    padding: 1.171875vw 5.46875vw;
  }
}
.material_allList_heading,
.material_allList_heading-attention {
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .material_allList_heading,
  .material_allList_heading-attention {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_allList_heading,
  .material_allList_heading-attention {
    font-size: 1.328125vw;
  }
}
.material_allList_heading:before {
  content: "";
  display: inline-block;
  height: 1em;
  width: 0.3em;
  margin-left: 0.3em;
  background-color: #00833f;
  vertical-align: top;
}
.material_allList_heading-attention:before {
  /* background-color: #9c2126; */
  content: "";
  display: inline-block;
  height: 1em;
  width: 0.3em;
  margin-left: 0.3em;
  /* background-color: #00833f; */
  vertical-align: top;
}
.material_allList_list {
  background: #fff;
}
@media screen and (max-width: 767px) {
  .material_allList_list {
    padding: 10.6666666667vw 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .material_allList_list {
    margin: 2.46875vw 6.25vw;
    padding: 1.125vw 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  .material_allList_list_body:not(:first-of-type) {
    /* margin-top: 8vw;
    padding-top: 8vw; */
    margin-top: 2vw;
    padding-top: 2vw;
    border-top: 1px solid #f7f7f7;
  }
}
@media print, screen and (min-width: 768px) {
  .material_allList_list_body {
    display: flex;
    justify-content: space-between;
    margin-top: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  .material_allList_list_inner {
    /* margin-top: 2.6666666667vw; */
    /* font-size: 3.7333333333vw; */
  }
}
@media print, screen and (min-width: 768px) {
  .material_allList_list_inner {
    font-size: 1.09375vw;
  }
}
.material_allList_list_heading {
  font-weight: 500;
}
.material_allList_list_heading:not(:first-of-type) {
  margin-top: 0.5em;
}
.material_allList_list_item {
  list-style: none;
}
@media print, screen and (min-width: 768px) {
  .material_allList_list_item {
    width: 53.125vw;
  }
}
.material_allList_list_item li {
  display: inline-block;
  line-height: 1;
  margin-top: 0.3em;
}
.material_allList_list_item li:not(:last-child) {
  margin-right: 1em;
  padding-right: 1em;
  border-right: 1px solid #222616;
}
.material_allList_btn {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .material_allList_btn {
    padding: 8vw 0;
  }
}
.qc_sanitary {
  background: #fff top center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .qc_sanitary {
    margin-top: 13.3333333333vw;
    padding: 70.6666666667vw 4vw 0;
    background-image: url("../images/qc/bg_sanitary_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .qc_sanitary {
    padding: 21.875vw 6.25vw 0;
    background-image: url("../images/qc/bg_sanitary.jpg");
  }
}
@media screen and (max-width: 767px) {
  .qc_description {
    margin-top: 8vw;
    padding: 0 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description {
    padding: 4.6875vw 6.25vw;
  }
}
.qc_description_heading {
  font-weight: 500;
  padding-left: 0.3em;
  border-left: 0.3em solid #00833f;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .qc_description_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_heading {
    font-size: 1.71875vw;
  }
}
.qc_description_auth {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .qc_description_auth {
    flex-direction: column-reverse;
    margin-top: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_auth {
    margin-top: 2.34375vw;
    flex-direction: row-reverse;
  }
}
.qc_description_auth_text {
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .qc_description_auth_text {
    margin-top: 2.6666666667vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_auth_text {
    font-size: 1.171875vw;
  }
}
.qc_description_auth_image {
  flex-shrink: 0;
  flex-grow: 0;
}
@media screen and (max-width: 767px) {
  .qc_description_auth_image {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_auth_image {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .qc_description_auth_image img {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_auth_image img {
    width: 32.8125vw;
  }
}
.qc_description_inspection {
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .qc_description_inspection {
    margin-top: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_inspection {
    margin-top: 2.34375vw;
  }
}
.qc_description_inspection_text {
  margin-top: 1em;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .qc_description_inspection_text {
    margin-top: 2.6666666667vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_description_inspection_text {
    font-size: 1.171875vw;
  }
}
.qc_description_inspection_image {
  flex-shrink: 0;
  flex-grow: 0;
}
.qc_description_inspection_image img {
  width: 100%;
}
.qc_btn {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .qc_btn {
    padding: 8vw 0 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_btn {
    padding: 2.34375vw 0 6.25vw;
  }
}
.qc_btn_text {
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .qc_btn_text {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .qc_btn_text {
    font-size: 1.171875vw;
  }
}
@media screen and (max-width: 767px) {
  .result_case {
    margin: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_case {
    width: 54.6875vw;
    margin: 6.25vw auto;
  }
}
.result_case_list {
  font-weight: 700;
  width: 100%;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .result_case_list {
    margin-top: 8vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_case_list {
    margin-top: 2.34375vw;
    font-size: 1.171875vw;
  }
}
.result_case_list li {
  padding: 0.8em 0.2em;
  border-top: 1px solid #ccc;
}
.result_case_list li:last-child {
  border-bottom: 1px solid #ccc;
}
.result_case_list span {
  font-family: "Noto Serif JP", serif;
  color: #5f9265;
  margin-right: 2em;
}
@media screen and (max-width: 767px) {
  .result_case_list span {
    display: block;
    font-size: 5.3333333333vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 768px) {
  .result_case_list span {
    display: inline-block;
    font-size: 1.5625vw;
  }
}
.result_case_list em {
  color: #c1272d;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .result_concept_header {
    background: url("../images/result/bg_concept_sp.jpg") center/cover no-repeat;
    padding: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_header {
    background: url("../images/result/bg_concept.jpg") center/cover no-repeat;
    padding: 5.46875vw 14.0625vw;
  }
}
@media screen and (max-width: 767px) {
  .result_concept_nav {
    margin-top: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_nav {
    margin-top: 1.5625vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (max-width: 767px) {
  .result_concept_nav ul li {
    width: 100%;
    margin-top: 1em;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_nav ul li {
    margin-top: 1.5625vw;
  }
}
@media screen and (max-width: 767px) {
  .result_concept_nav ul a {
    display: block;
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_nav ul a {
    width: 22.625vw;
  }
}
@media screen and (max-width: 767px) {
  .result_concept_type {
    padding: 8vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_type {
    padding: 2.34375vw 6.25vw;
  }
}
.result_concept_type_list dt {
  font-weight: 700;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 1em 0 0.3em;
  color: #5f9265;
}
@media screen and (max-width: 767px) {
  .result_concept_type_list dt {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_type_list dt {
    font-size: 1.5625vw;
  }
}
.result_concept_type_list dt:not(:first-of-type) {
  margin-top: 1em;
  border-top: 1px solid #ccc;
}
.result_concept_type_list dt span {
  color: #bfd3c1;
}
@media screen and (max-width: 767px) {
  .result_concept_type_list dd {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_type_list dd {
    font-size: 1.09375vw;
  }
}
.result_concept_type_list dd em {
  font-weight: 700;
  font-style: normal;
}
@media print, screen and (min-width: 768px) {
  .result_concept_type_list-etc {
    display: flex;
    flex-wrap: wrap;
  }
}
.result_concept_type_list-etc li {
  font-weight: 700;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 1em 0 0.3em;
  color: #5f9265;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .result_concept_type_list-etc li {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_concept_type_list-etc li {
    width: 50%;
    font-size: 1.5625vw;
  }
}
.result_concept_type_list-etc li span {
  color: #bfd3c1;
}
.result_concept_type_sample {
  margin-left: auto;
  color: #f0aa3a;
}
@media print, screen and (min-width: 768px) {
  .result_concept_type_sample {
    padding-right: 0.5333333333vw;
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .result_concept_type_sample {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_btn {
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .result_btn a {
    display: block;
    margin: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_btn a {
    margin: 0.78125vw;
  }
}
.result_banner {
  border-top: 1px solid #ccc;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .result_banner {
    margin: 13.3333333333vw 4vw 0;
    padding-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .result_banner {
    margin: 3.90625vw 6.25vw 0;
    padding-top: 3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  .oem_flow_item {
    margin: 0 4vw 8vw;
  }
  .oem_flow_item:not(:first-of-type) {
    padding-top: 8vw;
    border-top: 1px solid #ccc;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_item {
    margin: 0 6.25vw 0 8.59375vw;
    padding-left: 3.90625vw;
  }
  .oem_flow_item:not(:last-of-type) {
    padding-bottom: 5.46875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_item:not(:last-of-type) {
    border-left: 1px solid #00833f;
  }
}
.oem_flow_heading {
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 767px) {
  .oem_flow_heading {
    font-size: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_heading {
    font-size: 1.71875vw;
  }
}
.oem_flow_heading span {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #00833f;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .oem_flow_heading span {
    height: 10.6666666667vw;
    width: 10.6666666667vw;
    margin-right: 0.5em;
    font-size: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_heading span {
    height: 3.90625vw;
    width: 3.90625vw;
    margin-left: -5.859375vw;
    margin-right: 1.953125vw;
    font-size: 2.03125vw;
  }
}
@media screen and (max-width: 767px) {
  .oem_flow_text {
    margin-top: 1em;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_text {
    font-size: 1.171875vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_link {
    margin-top: 2.34375vw;
  }
}
.oem_flow_link li {
  display: inline-block;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .oem_flow_link li {
    margin: 0.5em 0;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_link li {
    margin: 1em 2em 1em 0;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_flow_link li:last-of-type {
    display: block;
  }
}
.oem_btn {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .oem_btn {
    padding: 8vw 0 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .oem_btn {
    padding-top: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  .tech_list {
    margin-top: 16vw;
    padding: 8vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tech_list {
    margin-top: 1.3333333333vw;
    padding: 6.25vw;
  }
}
.tech_list_heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.tech_list_patent {
  display: block;
}
@media screen and (max-width: 767px) {
  .tech_list_patent {
    height: 16vw;
    width: 16vw;
  }
}
@media print, screen and (min-width: 768px) {
  .tech_list_patent {
    height: 4.6875vw;
    width: 4.6875vw;
  }
}
.tech_list_patent img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .faq_content {
    margin-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_content {
    margin-top: 5.3333333333vw;
  }
}
.faq_content_text {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .faq_content_text {
    padding: 13.3333333333vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_content_text {
    padding: 7.03125vw 6.25vw;
  }
}
.faq_list {
  background-color: #f7f7f7;
}
@media screen and (max-width: 767px) {
  .faq_list {
    padding: 13.3333333333vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_list {
    padding: 7.03125vw 6.25vw 6.25vw;
  }
}
.faq_item {
  background-color: #fff;
  box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.25);
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .faq_item {
    margin-top: 5.3333333333vw;
    padding: 8vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_item {
    margin-top: 1.171875vw;
    padding: 1.5625vw 2.34375vw;
  }
}
.faq_question {
  font-weight: 500;
  position: relative;
}
@media screen and (max-width: 767px) {
  .faq_question {
    padding-left: 2em;
    padding-right: 8vw;
    text-indent: -2em;
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_question {
    display: flex;
    font-size: 1.40625vw;
  }
}
.faq_question:before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  height: 1px;
  background-color: #808080;
}
@media screen and (max-width: 767px) {
  .faq_question:before {
    top: 4vw;
    width: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_question:before {
    top: 1.171875vw;
    width: 1.5625vw;
  }
}
.faq_question:after {
  content: "";
  display: block;
  position: absolute;
  width: 1px;
  background-color: #808080;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .faq_question:after {
    top: 1.3333333333vw;
    right: 2.6666666667vw;
    height: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_question:after {
    top: 0.390625vw;
    right: 0.78125vw;
    height: 1.5625vw;
  }
}
.faq_question.isOpen:after {
  opacity: 0;
}
.faq_question span {
  font-family: "Noto Serif JP", serif;
}
@media print, screen and (min-width: 768px) {
  .faq_question span {
    display: block;
    width: 2em;
  }
}
.faq_answer {
  padding-top: 1em;
}
@media screen and (max-width: 767px) {
  .faq_answer {
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_answer {
    display: flex;
    align-items: flex-start;
    font-size: 1.171875vw;
  }
}
.faq_answer:before {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  display: block;
  content: "A.";
}
@media screen and (max-width: 767px) {
  .faq_answer:before {
    display: none;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_answer:before {
    flex-shrink: 0;
    width: 2em;
    font-size: 1.40625vw;
  }
}
.faq_answer .btn,
.faq_answer .lNav ul a,
.lNav ul .faq_answer a,
.faq_answer .lNav-2 ul a,
.lNav-2 ul .faq_answer a {
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .faq_answer .btn,
  .faq_answer .lNav ul a,
  .lNav ul .faq_answer a,
  .faq_answer .lNav-2 ul a,
  .lNav-2 ul .faq_answer a {
    display: block;
  }
}
@media print, screen and (min-width: 768px) {
  .faq_answer .btn:not(:first-of-type),
  .faq_answer .lNav ul a:not(:first-of-type),
  .lNav ul .faq_answer a:not(:first-of-type),
  .faq_answer .lNav-2 ul a:not(:first-of-type),
  .lNav-2 ul .faq_answer a:not(:first-of-type) {
    margin-left: 1em;
  }
}
@media screen and (max-width: 767px) {
  .company_nav {
    margin-top: 24vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_nav {
    margin-top: 10.8125vw;
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .company_nav ul {
    margin-left: 4vw;
    justify-content: left;
  }
}
@media print, screen and (min-width: 768px) {
  .company_nav ul li a {
    width: 12.8vw;
    margin-left: 10px;
    margin-right: 10px;
    padding: 1.171875vw 0.78125vw;
  }
}
.company_first_body {
  background-color: #00833f;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .company_first_body {
    margin-top: 21.3333333333vw;
    padding: 4vw 4vw 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_first_body {
    display: flex;
    align-items: flex-start;
    margin-top: 4.6875vw;
    padding: 3.90625vw 6.25vw;
  }
}
@media screen and (max-width: 767px) {
  .company_first_body_image {
    width: 53.3333333333vw;
    margin: -14.6666666667vw 20.6666666667vw 0;
  }
}
@media print, screen and (min-width: 768px) {
  .company_first_body_image {
    flex-grow: 0;
    flex-shrink: 0;
    width: 15.625vw;
    margin-top: -7.03125vw;
    max-width: 15.625vw;
  }
}
@media screen and (max-width: 767px) {
  .company_first_body_text {
    font-size: 4vw;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  .company_first_body_text:first-of-type {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_first_body_text {
    flex-grow: 0;
    margin-left: 3.90625vw;
    font-size: 1.171875vw;
  }
}
.company_first_body_sign {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .company_first_body_sign {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_first_body_sign {
    margin-top: 2.34375vw;
    font-size: 1.09375vw;
  }
}
.company_first_body_sign span {
  line-height: 1.181818182;
}
@media screen and (max-width: 767px) {
  .company_first_body_sign span {
    font-size: 5.8666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_first_body_sign span {
    font-size: 1.71875vw;
  }
}
@media screen and (max-width: 767px) {
  .company_philosophy {
    margin: 4vw;
    padding-top: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy {
    margin: 0 6.25vw 6.25vw;
    padding-top: 0;
  }
}
.company_philosophy_text {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  line-height: 1.55;
}
@media screen and (max-width: 767px) {
  .company_philosophy_text {
    margin-top: 8vw;
    font-size: 5.3333333333vw;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy_text {
    margin-top: 5.46875vw;
    font-size: 1.5625vw;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .company_philosophy_body {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy_body {
    margin-top: 5.078125vw;
  }
}
.company_philosophy_body_heading {
  font-weight: 500;
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .company_philosophy_body_heading {
    font-size: 5.8666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy_body_heading {
    font-size: 1.71875vw;
  }
}
.company_philosophy_body_text {
  display: flex;
  justify-content: space-between;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .company_philosophy_body_text {
    flex-direction: column-reverse;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy_body_text {
    text-align: left;
  }
}
@media screen and (max-width: 767px) {
  .company_philosophy_body_text img {
    display: block;
    width: 53.3333333333vw;
    margin: 5.3333333333vw auto;
  }
}
@media print, screen and (min-width: 768px) {
  .company_philosophy_body_text img {
    width: 19.53125vw;
    margin-left: 3.90625vw;
  }
}
.company_overview {
  background: #ecf2e2 url("../images/company/bg_overview.jpg") top
    center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .company_overview {
    margin-top: 13.3333333333vw;
    padding: 70.6666666667vw 4vw 13.3333333333vw;
    background-image: url("../images/company/bg_overview_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .company_overview {
    padding-top: 21.875vw;
  }
}
.company_table {
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .company_table {
    margin: 8vw 4vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_table {
    width: calc(100% - 12.5vw);
    margin: 4.6875vw 6.25vw 0;
    font-size: 1.171875vw;
  }
}
.company_table tr {
  border-top: 1px solid #ccc;
}
.company_table th {
  font-weight: 700;
  padding: 1em 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .company_table th {
    width: 26.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_table th {
    width: 17.96875vw;
  }
}
.company_table td {
  padding: 1em 0;
}
@media screen and (max-width: 767px) {
  .company_table td {
    display: block;
  }
}
.company_table a {
  text-decoration: none;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .company_table a {
    display: inline-block;
  }
}
.company_table_map a:before {
  content: "\f041";
  margin: 0 0.3em 0 0.5em;
  font-family: "FontAwesome", sans-serif;
}
.company_eco,
.company_foods {
  background: #00833f url("../images/company/bg_eco.jpg") top center/contain
    no-repeat;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .company_eco,
  .company_foods {
    padding: 70.6666666667vw 4vw 13.3333333333vw;
    background-image: url("../images/company/bg_eco_sp.jpg");
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco,
  .company_foods {
    padding-top: 21.875vw;
  }
}
.company_eco_heading {
  color: #fff;
}
.company_eco_body {
  line-height: 1.9;
}
@media screen and (max-width: 767px) {
  .company_eco_body {
    margin-top: 10.6666666667vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_body {
    padding: 3.90625vw 6.25vw;
    font-size: 1.171875vw;
  }
}
.company_eco_list {
  list-style: none;
}
@media print, screen and (min-width: 768px) {
  .company_eco_list {
    margin-top: 3.90625vw;
  }
}
.company_eco_list li {
  margin-top: 1em;
}
.company_eco_list span {
  font-family: "Noto Serif JP", serif;
}
.company_eco_sign {
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .company_eco_sign {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_sign {
    margin-top: 2.34375vw;
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .company_eco_sign span {
    font-size: 5.8666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_sign span {
    font-size: 1.71875vw;
    line-height: 1.181818182;
  }
}
.company_eco_ems {
  background-color: rgba(255, 255, 255, 0.8);
  color: #000;
}
@media screen and (max-width: 767px) {
  .company_eco_ems {
    margin-top: 13.3333333333vw;
    padding: 8vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_ems {
    margin: 3.90625vw 6.25vw;
    padding: 2.34375vw;
  }
}
.company_eco_ems_heading {
  font-weight: 500;
  background-color: transparent;
}
@media screen and (max-width: 767px) {
  .company_eco_ems_heading {
    padding: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_ems_heading {
    font-size: 1.71875vw;
  }
}
.company_eco_ems_list {
  list-style: none;
}
@media screen and (max-width: 767px) {
  .company_eco_ems_list {
    margin-top: 8vw;
    text-align: justify;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_ems_list {
    display: flex;
    justify-content: center;
    margin-top: 2.34375vw;
  }
}
.company_eco_ems_list li {
  font-weight: 700;
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .company_eco_ems_list li {
    display: inline-block;
    font-size: 4.2666666667vw;
    margin-top: 0.3em;
    padding: 0 0.5em;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_ems_list li {
    flex-grow: 1;
    flex-shrink: 1;
    font-size: 1.25vw;
  }
}
.company_eco_ems_list li:not(:last-of-type) {
  border-right: 1px solid #808080;
}
@media screen and (max-width: 767px) {
  .company_eco_ems_text {
    margin-top: 8vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_eco_ems_text {
    margin-top: 2.34375vw;
    font-size: 1.171875vw;
  }
}
.company_foods {
  background: #00833f;
}
@media screen and (max-width: 767px) {
  .company_foods {
    padding: 16vw 4vw 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .company_foods {
    padding-top: 4.6875vw;
  }
}
.company_foods_text {
  margin-top: 4vw;
}
.company_foods_list {
  list-style: none;
}
@media print, screen and (min-width: 768px) {
  .company_foods_list {
    margin-top: 3.90625vw;
  }
}
.company_foods_list li {
  margin-top: 1em;
}
.company_foods_number {
  font-family: "Noto Serif JP", serif;
}
.company_foods_under {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .news_list {
    padding: 13.3333333333vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_list {
    padding: 6.25vw;
  }
}
.news_list_heading {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .news_list_heading {
    font-size: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_list_heading {
    font-size: 1.875vw;
  }
}
.news_list_archive {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .news_list_archive {
    margin-top: 6.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_list_archive select {
    font-size: 0.9375vw;
    position: relative;
    z-index: 1;
  }
}
.news_list_body {
  border-bottom: 1px solid #ccc;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .news_list_body {
    margin-top: 13.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_list_body {
    margin-top: 3.90625vw;
  }
}
.news_list li {
  padding: 0.5em 0;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .news_list li {
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_list li {
    font-size: 1.171875vw;
  }
}
.news_list_date {
  color: #808080;
}
.news_list_title {
  display: block;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .news_detail {
    padding: 24vw 4vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_detail {
    padding: 11.71875vw 6.25vw 6.25vw;
    font-size: 1.171875vw;
  }
}
.news_detail_heading {
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .news_detail_heading {
    font-size: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_detail_heading {
    font-size: 1.875vw;
  }
}
.news_detail_date {
  color: #808080;
}
@media screen and (max-width: 767px) {
  .news_detail_body {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_detail_body {
    margin-top: 3.90625vw;
  }
}
.news_detail_btn {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .news_detail_btn {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .news_detail_btn {
    margin-top: 3.90625vw;
  }
}
@media screen and (max-width: 767px) {
  .column_wrapper {
    margin-top: 13.3333333333vw;
    padding: 8vw 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_wrapper {
    margin-top: 5.3333333333vw;
    padding: 6.25vw;
    display: flex;
  }
}
.column_side {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .column_side {
    margin-top: 21.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side {
    width: 15.625vw;
    margin-left: 2.34375vw;
  }
}
.column_side_heading {
  font-weight: 700;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .column_side_heading {
    font-size: 4.5333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_heading {
    font-size: 1.328125vw;
  }
}
.column_side_heading:before {
  display: block;
  content: "";
  height: 1em;
  width: 0.3em;
  margin-right: 0.5em;
  background-color: #00833f;
}
@media screen and (max-width: 767px) {
  .column_side_content {
    margin-bottom: 5.3333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_content {
    margin-bottom: 1.5625vw;
  }
}
.column_side_list {
  margin-top: 2.6666666667vw;
}
@media print, screen and (min-width: 768px) {
  .column_side_list {
    margin-top: 0.78125vw;
  }
}
.column_side_list li {
  padding: 0.3em 0;
  list-style: none;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .column_side_list li {
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_list li {
    font-size: 1.015625vw;
  }
}
.column_side_new {
  list-style: none;
}
@media screen and (max-width: 767px) {
  .column_side_new {
    margin-top: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_new {
    margin-top: 0.78125vw;
  }
}
.column_side_new li {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .column_side_new li {
    padding: 2.6666666667vw 0;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_new li {
    padding: 0.78125vw 0;
    font-size: 1.015625vw;
  }
}
.column_side_new li:not(:first-of-type) {
  border-top: 1px dotted #ccc;
}
.column_side_new_inner {
  flex-grow: 0;
  line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
  .column_side_new_inner {
    margin-right: 0.78125vw;
  }
}
.column_side_new_date {
  display: inline-block;
  color: #808080;
}
.column_side_new_title {
  display: block;
  margin-top: 0.5em;
}
.column_side_new_image {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .column_side_new_image {
    width: 40%;
  }
}
@media print, screen and (min-width: 768px) {
  .column_side_new_image {
    height: 4.375vw;
    width: 6.25vw;
  }
}
.column_side_new_image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.column_list {
  flex-grow: 1;
}
@media print, screen and (min-width: 768px) {
  .column_list {
    background: url("../images/column/girl.svg") right top/7.03125vw no-repeat;
  }
}
.column_list_body {
  list-style: none;
}
.column_list_body li {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .column_list_body li {
    padding: 5.3333333333vw 0;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_body li {
    padding: 1.5625vw 0;
    font-size: 1.09375vw;
  }
}
.column_list_body li:not(:first-of-type) {
  border-top: 1px solid #ccc;
}
.column_list_inner {
  flex-grow: 0;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .column_list_inner {
    margin-left: 2.6666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_inner {
    margin-left: 1.5625vw;
  }
}
.column_list_date {
  color: #808080;
}
@media screen and (max-width: 767px) {
  .column_list_date {
    display: block;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_date {
    border-right: 1px solid #808080;
    display: inline-block;
    padding-right: 1em;
  }
}
@media screen and (max-width: 767px) {
  .column_list_category {
    display: block;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_category {
    display: inline-block;
    padding-left: 1em;
  }
}
.column_list_title {
  display: block;
  margin-top: 0.5em;
}
@media screen and (max-width: 767px) {
  .column_list_title {
    font-size: 4.2666666667vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_title {
    font-size: 1.25vw;
  }
}
.column_list_image {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .column_list_image {
    width: 40%;
  }
}
@media print, screen and (min-width: 768px) {
  .column_list_image {
    height: 11.71875vw;
    width: 17.1875vw;
  }
}
.column_list_image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.column_detail {
  flex-grow: 1;
}
@media print, screen and (min-width: 768px) {
  .column_detail {
    background: url("../images/column/girl.svg") right top/7.03125vw no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .column_detail_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_detail_heading {
    font-size: 2.03125vw;
  }
}
.column_detail_date {
  display: block;
  color: #ccc;
}
@media screen and (max-width: 767px) {
  .column_detail_date {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_detail_date {
    margin-top: 1.5625vw;
    font-size: 1.171875vw;
  }
}
@media screen and (max-width: 767px) {
  .column_detail_image {
    width: 100%;
  }
}
@media print, screen and (min-width: 768px) {
  .column_detail_image {
    width: 85%;
  }
}
@media screen and (max-width: 767px) {
  .column_detail_body {
    margin-top: 5.3333333333vw;
    font-size: 4vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_detail_body {
    margin-top: 2.34375vw;
    font-size: 1.171875vw;
  }
  .column_detail_body p {
    margin: 1em 0;
  }
}
.column_detail_body h2 {
  border-bottom: 3px solid #ccc;
  font-size: 1.5em;
}
.column_detail_body h3 {
  font-size: 1.5em;
}
.column_detail_body h4,
.column_detail_body h5,
.column_detail_body h6 {
  font-size: 1.2em;
}
.column_detail_btn {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .column_detail_btn {
    margin-top: 8vw;
  }
}
@media print, screen and (min-width: 768px) {
  .column_detail_btn {
    padding-bottom: 7.03125vw;
  }
}
.err {
  display: block;
  color: #c1272d;
}
@media print, screen and (min-width: 768px) {
  ._pcHide {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  ._spHide {
    display: none !important;
  }
}
._show {
  display: block !important;
}
._hide {
  display: none !important;
}
@media screen and (max-width: 767px) {
  ._sp_block {
    display: block !important;
  }
  ._sp_block li {
    width: 69.3333333333vw;
  }
}
.v-cloak {
  display: none;
}
._flex {
  display: flex;
}
._ta {
  text-align: left;
}
._tac {
  /* text-align: center; */
}
._tar {
  text-align: right;
}
._m0 {
  margin: 0;
}
._mt0 {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  ._mt0-sp {
    margin-top: 0;
  }
}
._mr0 {
  margin-right: 0;
}
._mb0 {
  margin-bottom: 0;
}
._ml0 {
  margin-left: 0;
}
._mt80 {
  margin-top: 80px;
}
._mt05e {
  margin-top: 0.5em;
}
._p0 {
  padding: 0;
}
._pt0 {
  padding-top: 0;
}
._pr0 {
  padding-right: 0;
}
._pb0 {
  padding-bottom: 0;
}
._pl0 {
  padding-left: 0;
}
@media print, screen and (min-width: 768px) {
  ._pb80:not(:root) {
    padding-bottom: 6.25vw;
  }
}
@media print, screen and (min-width: 768px) {
  ._pt30:not(:root) {
    padding-top: 2.34375vw;
  }
}
@media screen and (max-width: 767px) {
  ._pb50-sp {
    padding-bottom: 13.3333333333vw;
  }
}
._attention {
  color: #da7d81;
  font-size: 1.09375vw;
  padding-top: 10px;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  ._attention {
    /* font-size: 16px; */
    font-size: 4.26vw;
  }
}
._serif {
  font-family: "Noto Serif JP", serif;
}
._sans {
  font-family: "Noto Sans JP", sans-serif;
}
@media print, screen and (min-width: 768px) {
  ._vat {
    vertical-align: top;
  }
}
/* 追加CSS */
@media print, screen and (max-width: 767px) {
  .u-desktop {
    display: none;
  }
}
.u-mobile {
  display: none;
}
@media print, screen and (max-width: 767px) {
  .u-mobile {
    display: block;
  }
}
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 767.9px) {
  a[href^="tel:"] {
    pointer-events: initial;
  }
}
/* top */
.content_text.content_text--short {
  margin-top: 0;
  padding-top: 1.4641288433vw;
  padding-bottom: 6.9546120059vw;
}
@media screen and (max-width: 767px) {
  .content_text.content_text--short {
    padding-top: 0vw;
    padding-bottom: 10.6666666667vw;
  }
}
.card {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .card__flex {
    display: flex;
    align-items: center;
  }
}
.flow__title {
  /* font-size: 36px; */
  /* font-size: clamp(1.25rem, 0.898rem + 1.5vw, 2.25rem); */
  font-size: 2.5vw;
  color: #00833f;
  font-family: serif;
}
@media screen and (max-width: 767px) {
  .flow__title {
    font-size: 4.8vw;
  }
}
.flow__about {
  /* margin-top: 40px; */
}
.flow__about-text {
  font-size: 1.041vw;
  color: #000;
  /* padding-top: 20px; */
  text-align: left;
  width: 70%;
  /* margin-inline: auto; */
}
@media screen and (max-width: 767px) {
  .flow__about-text {
    font-size: 4.26vw;
    width: initial;
  }
}
.flow__lists-wrap {
  max-width: 1300px;
  padding: 0 25px;
  margin-inline: auto;
  margin-top: 40px;
  margin-bottom: 40px;
}
.flow__lists {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .flow__lists {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
}
.flow__list {
  border: 1px solid #008000;
  padding: 20px;
  border-radius: 10px;
  list-style: none;
}
.flow__num-wrap {
  position: relative;
  width: 40px;
  height: 40px;
  background-color: green;
  border-radius: 50%;
  margin-inline: auto;
}
.flow__num {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 1.041vw;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .flow__num {
    font-size: 4.24vw;
  }
}
.flow__img {
  margin-top: 10px;
}
.flow__img img {
  width: 50px;
  height: 50px;
  aspect-ratio: 50/50;
}
@media screen and (max-width: 767px) {
  .flow__img img {
    width: 80px;
    height: 80px;
    aspect-ratio: 80/80;
  }
}
.flow__list-title {
  font-size: 1.25vw;
  /* font-size: clamp(1rem, 0.879rem + 0.52vw, 1.5rem); */
  line-height: 1.5;
  margin-top: 10px;
  color: #000;
}
@media screen and (max-width: 767px) {
  .flow__list-title {
    font-size: 4.8vw;
  }
}
.flow__list-text {
  font-size: 1.041vw;
  margin-top: 10px;
  color: #000;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .flow__list-text {
    font-size: 4.24vw;
  }
}
.flow__link {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}
.flow__button {
  font-size: 1.25vw;
  color: #fff;
  font-weight: bold;
  display: inline-block;
  text-align: center;
  width: 50%;
  padding: 10px;
  transition: 0.3s;
  background-color: #ff6d01;
  position: relative;
  border: 1px solid #000;
  text-decoration: none;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .flow__button {
    font-size: 4.24vw;
    width: 80%;
    /* width: 300px; */
  }
}
.column__link {
  display: flex;
  justify-content: center;
  margin-top: 2.9282576867vw;
  margin-bottom: 2.9282576867vw;
}
.column__button {
  font-size: 1.25vw;
  color: #000;
  /* font-weight: bold; */
  display: inline-block;
  text-align: center;
  width: 30%;
  padding: 0.7320644217vw;
  transition: 0.3s;
  position: relative;
  border: 1px solid #000;
  text-decoration: none;
  letter-spacing: 0.1em;
}
/* tea */
.process__about-text {
  /* font-size: 1.024vw; */
  margin-top: 1.4641288433vw;
  /* margin: 1.90625vw 6.25vw 0; */
  font-size: 1.09375vw;
  text-align: left;
  width: 70%;
  margin-inline: auto;
  /* text-align: center; */
}
@media screen and (max-width: 767px) {
  .process__about-text {
    font-size: 4.24vw;
    width: initial;
    padding: 0 2.67vw;
  }
}
.feature-sample {
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .feature-sample {
    margin-top: 60px;
  }
}
.feature-sample__inner {
  margin-left: -6.25vw;
}
@media screen and (max-width: 767px) {
  .feature-sample__inner {
    margin-left: 0;
  }
}
.feature-sample__title {
  font-size: 2.5vw;
  text-align: center;
  /* margin-top: 40px; */
  font-family: serif;
}
@media screen and (max-width: 767px) {
  .feature-sample__title {
    font-size: 7.46vw;
  }
}
.feature-sample__about {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .feature-sample__about {
    /* margin-top: 20px; */
    margin-top: 0;
  }
}
.feature-sample__about-text {
  font-size: 1.041vw;
  /* margin: 5.3333333333vw 4vw; */
  padding-top: 20px;
  margin-inline: auto;
  width: 70%;
  /* font-size: 3.7333333333vw; */
  text-align: justify;
  text-justify: inter-ideograph;
  text-align: left;
  /* text-align: center; */
}
@media screen and (max-width: 767px) {
  .feature-sample__about-text {
    /* font-size: 4.24vw; */
    /* padding: 0 2.67vw; */
    /* margin: 5.3333333333vw 4vw; */
    margin: initial;
    font-size: 3.7333333333vw;
    text-align: justify;
    text-justify: inter-ideograph;
    text-align: left;
    width: initial;
  }
}
.feature-sample__list-wrap {
  margin-top: 40px;
}
.feature-sample__list-wrap-about {
  margin-top: 20px;
  margin-bottom: 20px;
}
.feature-sample__list-wrap-about-text {
  font-size: 1.25vw;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .feature-sample__list-wrap-about-text {
    font-size: 4.24vw;
  }
}
.feature-sample__lists {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  margin-top: 20px;
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .feature-sample__lists {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: initial;
  }
}
.feature-sample__list {
  border: 1px solid #008000;
  padding: 20px;
  border-radius: 10px;
  list-style: none;
}
.feature-sample__list-title {
  font-size: 1.25vw;
  /* font-size: clamp(1rem, 0.879rem + 0.52vw, 1.5rem); */
  line-height: 1.5;
  margin-top: 10px;
  color: #000;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .feature-sample__list-title {
    font-size: 4.8vw;
    text-align: center;
  }
}
.feature-sample__list-text {
  font-size: 1.041vw;
  margin-top: 10px;
  color: #000;
}
@media screen and (max-width: 767px) {
  .feature-sample__list-text {
    font-size: 4.24vw;
  }
}
.feature-sample__link {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .feature-sample__link {
    margin-bottom: 80px;
  }
}
.feature-sample__button {
  font-size: 1.25vw;
  color: #fff;
  /* font-weight: bold; */
  display: inline-block;
  text-align: center;
  width: 30%;
  padding: 10px;
  transition: 0.3s;
  background-color: #ff6d01;
  position: relative;
  border: 1px solid #000;
  text-decoration: none;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .feature-sample__button {
    font-size: 4.24vw;
    width: 80%;
    /* width: 300px; */
  }
}
/* accordion */
.accordion {
  width: 100%;
}
.accordion__title {
  position: relative;
  /* font-size: 16px; */
  /* padding: 40px 20px; */
  padding: 2.08vw 1.04vw;
  cursor: pointer;
  background-color: #22a274;
  color: #fff;
  padding-left: 40px;
  /* background-color: #000; */
}
@media screen and (max-width: 767px) {
  .accordion__title {
    /* padding-left: 40px; */
    padding-left: 6.6vw;
    font-size: 4.26vw;
  }
}
.accordion__title::before {
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  width: 8px;
  height: 8px;
  content: "";
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
  transform: rotate(45deg);
  border-top: 2px solid #000;
  border-right: 2px solid #000;
}
@media screen and (max-width: 767px) {
  .accordion__title::before {
    top: 40%;
    width: 2.13vw;
    height: 2.13vw;
    left: 5px;
  }
}
.accordion__title.is-open::before {
  top: 45%;
  transform: rotate(135deg);
}
@media screen and (max-width: 767px) {
  .accordion__title.is-open::before {
    top: 30%;
  }
}
.accordion__content {
  /* margin-top: 10px; */
  display: none;
  /* padding: 10px 20px; */
  /* border: 1px solid #000; */
}
.accordion__text {
  /* font-size: 12px; */
}
.list-table {
  width: 100%;
  border: 1px solid #22a274;
  /* margin-top: 10px;
  margin-bottom: 10px; */
}
.list-table__th {
  width: 25%;
  font-weight: normal;
  border: 1px solid #e1e1e1;
  padding: 20px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .list-table__th {
    padding: 10px;
    /* font-size: 14px; */
    font-size: 3.73vw;
  }
}
.list-table__td {
  width: 25%;
  border: 1px solid #e1e1e1;
  padding: 20px;
}
@media screen and (max-width: 767px) {
  .list-table__td {
    padding: 10px;
    /* font-size: 14px; */
    font-size: 3.73vw;
  }
}
/* footer-contact */
.footer_contact {
  background: url("../images/footer/bg01.png") center/cover no-repeat;
  /* display: none; */
}
@media screen and (max-width: 767px) {
  .footer_contact_inner {
    margin-top: 10.6666666667vw;
  }
}
@media print, screen and (max-width: 768px) {
  .footer_contact_inner {
    display: flex;
    justify-content: space-between;
    padding: 6.640625vw;
  }
}
.footer_contact_heading {
  font-weight: 700;
  color: #00833f;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer_contact_heading {
    font-size: 4.8vw;
  }
}
@media print, screen and (max-width: 768px) {
  .footer_contact_heading {
    font-size: 1.40625vw;
  }
}
.footer_contact_type {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
  .footer_contact_type {
    width: 92vw;
    margin: 4vw auto;
    padding: 6.6666666667vw 3vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_type {
    flex-grow: 0;
    width: 48%;
    padding: 2.34375vw 2.734375vw;
  }
}
.footer_contact_text,
.footer_contact_text-mail,
.footer_contact_text-tel {
  margin-top: 21px;
  text-align: center;
}
.footer_contact_text-mail {
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .footer_contact_text-mail {
    font-size: 3.7333333333vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_text-mail {
    font-size: 1.09375vw;
  }
}
@media screen and (max-width: 767px) {
  .footer_contact_text-mail a {
    margin-bottom: 5.3333333333vw;
    padding: 4vw 16vw;
  }
}
@media print, screen and (min-width: 768px) {
  .footer_contact_text-mail a {
    margin-bottom: 1.5625vw;
    padding-left: 4.6875vw;
    padding-right: 4.6875vw;
  }
}
/* food */
@media screen and (max-width: 767px) {
  .feature-sample__food {
    margin-top: 60px;
  }
}
.feature-sample__food-inner {
  padding-left: 0;
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  .feature-sample__food-inner {
    padding: 0 2.67vw;
  }
}
/* footer-contact */
.footer-contact {
  background: url("../images/footer/bg01.png") center/cover no-repeat;
}
.footer-contact__inner {
  padding: 6.640625vw;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .footer-contact__inner {
    padding: initial;
    margin-inline: auto;
  }
}
.footer-contact__about {
  margin-top: 1.9vw;
}
.footer-contact__about-text {
  text-align: center;
  font-size: 1.09375vw;
}
@media screen and (max-width: 767px) {
  .footer-contact__about-text {
    text-align: center;
    font-size: 3.73vw;
  }
}
.footer-contact__wrap {
  margin-top: 6.64vw;
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .footer-contact__wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    font-size: 3.7333333333vw;
  }
}
.footer-contact__phone {
  text-align: center;
}
.footer-contact__phone-title {
  font-size: 1.4vw;
  text-align: center;
  color: #00833f;
}
@media screen and (max-width: 767px) {
  .footer-contact__phone-title {
    font-size: 4.8vw;
  }
}
.footer-contact__phone-wrap {
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 20px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .footer-contact__phone-wrap {
    gap: 15px;
    margin-top: 0;
  }
}
.footer-contact__phone-name {
  width: 35%;
  border: 1px solid #00833f;
  padding: 4px;
  font-size: 1.09375vw;
  color: #00833f;
}
@media screen and (max-width: 767px) {
  .footer-contact__phone-name {
    font-size: 3.4vw;
  }
}
.footer-contact__phone-wrap a {
  text-decoration: none;
  font-size: 2.5vw;
  font-weight: bold;
  color: #00833f;
}
@media screen and (max-width: 767px) {
  .footer-contact__phone-wrap a {
    font-size: 7.5vw;
  }
}
.footer-contact__phone-text {
  font-size: 1.09375vw;
  margin-left: 10px;
}
@media screen and (max-width: 767px) {
  .footer-contact__phone-text {
    font-size: 3.73vw;
  }
}
.footer-contact__mail {
  text-align: center;
}
.footer-contact__mail-title {
  font-size: 1.4vw;
  text-align: center;
  color: #00833f;
}
@media screen and (max-width: 767px) {
  .footer-contact__mail-title {
    font-size: 4.8vw;
  }
}
.footer-contact__mail-link {
  display: flex;
  justify-content: center;
  margin-top: 1.5624vw;
  margin-bottom: 1.5624vw;
}
.footer-contact__mail-about-text {
  font-size: 1.09375vw;
}
@media screen and (max-width: 767px) {
  .footer-contact__mail-about-text {
    font-size: 3.73vw;
  }
}
.slick-arrow {
  height: 68px;
  top: 40%;
}
.slick-arrow:before {
  content: url("../images/tour/navigation.svg");
  width: 100%;
  height: 100%;
  display: block;
}
.slick-next {
  right: -50px;
}
.slick-next:before {
  transform: rotate(180deg);
}
.slick-prev {
  left: -50px;
}
@media screen and (max-width: 767px) {
  .hero .pc_only {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .hero .sp_only {
    display: none;
  }
}
.itemList_btn {
  text-align: right;
  margin-top: 1em;
}
.modal_text {
  margin-top: 1em;
  font-size: 1.09375vw;
}
@media screen and (max-width: 767px) {
  .modal_text {
    font-size: 3.7333333333vw;
  }
}
.modal_image {
  margin-top: 3em;
}
.modal_scroll {
  max-height: 80vh;
  overflow-y: scroll;
  overflow-x: hidden;
}
.page_404 {
  text-align: center;
  font-size: 1.09375vw;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}
@media screen and (max-width: 767px) {
  .page_404 {
    font-size: 3.7333333333vw;
  }
}
.contact_form_sample_list {
  padding: 1em;
  background-color: #9cc3e5;
  font-size: 1.5vw;
}
@media screen and (max-width: 767px) {
  .contact_form_sample_list {
    font-size: 3.7333333333vw;
  }
}
.contact_form_sample_list .sample_content {
  display: none;
}
.contact_form_sample_list .sample_section {
  margin-bottom: 2em;
}
.contact_form_sample_list .item_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1em;
}
@media screen and (max-width: 767px) {
  .contact_form_sample_list .item_wrap {
    grid-template-columns: repeat(1, 1fr);
  }
}
.contact_form_sample_list .name {
  font-size: 0.8em;
  color: #5e97c9;
  margin-top: 0;
  line-height: 1em;
}
.contact_form_sample_list .catchcopy {
  font-size: 0.8em;
  font-weight: bold;
  line-height: 1.4em;
  margin-top: 0.5em;
}
.contact_form_sample_list .item {
  background-color: #fff;
  padding: 1em;
  line-height: 1.4em;
}
.contact_form_sample_list ul {
  border-top: 1px solid #ccc;
  padding-top: 0.5em;
  font-size: 0.6em;
  line-height: 1.4em;
  padding-left: 2em;
}
.contact_form_sample_list li p {
  margin: 0;
}
.contact_form_sample_list .image {
  text-align: center;
}
.contact_form_sample_list dl {
  display: flex;
  font-size: 0.6em;
  line-height: 1.4em;
  margin-top: 0.5em;
}
.contact_form_sample_list dt:after {
  content: ":";
  margin-right: 0.5em;
}
.contact_form_sample_list .capacity {
  font-size: 0.6em;
  line-height: 1.4em;
}
#wpcf7cpcnf {
  padding: 0 2em;
  box-sizing: border-box;
  font-size: 1.171875vw;
}
#wpcf7cpcnf table {
  width: 100%;
}
#wpcf7cpcnf th,
#wpcf7cpcnf td {
  padding: 1em;
}
#wpcf7cpcnf th {
  text-align: left;
}
#wpcf7cpcnf tr {
  border-bottom: 1px solid #ccc;
}
#wpcf7cpcnf .wpcf7cp-btns {
  text-align: center;
  font-size: 1.171875vw;
}
#wpcf7cpcnf .wpcf7cp-btns button {
  padding: 1em;
  cursor: pointer;
}
#wpcf7cpcnf .wpcf7-submit {
  border: 1px solid #9c2126;
  background-color: #9c2126;
  color: #fff;
}
/* header 追加 */
.header_fix {
  padding: min(0.5856515373vw, 8px) 0;
  padding-bottom: 0;
  background-color: #f3f7f0;
  width: 100%;
  position: relative;
}
.header_fix_row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 1366px;
  margin: 0 auto;
}
.header_fix_logo {
  width: min(33.6749633968vw, 460px);
  padding-left: min(1.8301610542vw, 25px);
  padding-top: min(1.6105417277vw, 22px);
}
.header_fix_logo a {
  display: block;
  width: 100%;
}
.header_fix_logo img {
  width: 100%;
}
.header_fix_btns {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: min(0.7320644217vw, 10px) min(1.6837481698vw, 23px)
    min(0.8052708638vw, 11px) min(0.6588579795vw, 9px);
}
.header_fix_tel {
  margin-right: min(1.1713030747vw, 16px);
}
.header_fix_tel_link {
  font-size: min(2.3426061493vw, 32px);
  color: #387852;
  font-weight: bold;
  position: relative;
  text-decoration: none;
  padding-left: min(3.2942898975vw, 45px);
  line-height: 1;
  font-family: "Cardo", serif;
  letter-spacing: 0.05em;
}
.header_fix_tel_link::before {
  content: "";
  background: url(../images/side/icon_tel-renewal.png) center/cover no-repeat;
  width: min(2.4158125915vw, 33px);
  height: min(2.4158125915vw, 33px);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.header_fix_tel_link .text_small {
  font-size: min(1.0980966325vw, 15px);
  color: #45413f;
  font-weight: normal;
  display: inline-block;
  margin-left: min(0.3660322108vw, 5px);
  letter-spacing: normal;
}
.header_fix_tel_text {
  font-size: min(0.9516837482vw, 13px);
  padding: 0;
  text-align: center;
  margin-top: 5px;
}
.header_fix_contact {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: min(0.9516837482vw, 13px);
}
.header_fix_contact_text {
  font-size: min(1.1713030747vw, 16px);
  margin-bottom: 0;
  font-weight: 400;
  padding-left: min(5.5636896047vw, 76px);
  letter-spacing: 0.1em;
}
.header_fix_contact_btn {
  border: 1px solid #e3ac18;
  background-color: #e3ac18;
  color: #fff;
  padding: min(1.1713030747vw, 16px) min(3.8067349927vw, 52px)
    min(1.1713030747vw, 16px) min(3.513909224vw, 48px);
  line-height: 1;
  font-size: min(1.1713030747vw, 16px);
  display: inline-block;
  text-decoration: none;
  transition: 0.3s;
  border-radius: min(3.6603221083vw, 50px);
  position: relative;
}
.header_fix_contact_btn::before,
.header_fix_contact_btn::after {
  content: "";
  position: absolute;
  top: min(1.9033674963vw, 26px);
  right: min(1.4641288433vw, 20px);
  width: min(0.5856515373vw, 8px);
  height: min(0.1464128843vw, 2px);
  background-color: #fff;
  transform-origin: calc(100% - 1px) 50%;
  transition: 0.3s;
}
.header_fix_contact_btn::before {
  transform: rotate(45deg);
}
.header_fix_contact_btn::after {
  transform: rotate(-45deg);
}
.header_fix_contact_btn:hover {
  color: #e3ac18;
  background-color: #fff;
  opacity: 1;
  transition: 0.3s;
}
.header_fix_contact_btn:hover::before,
.header_fix_contact_btn:hover::after {
  background-color: #e3ac18;
}
.header_fix_contact_btn:hover::before {
  transform: rotate(45deg);
}
/* ドロップダウンメニューのスタイル */
.header_fix_nav_row .has-dropdown {
  position: relative;
}
.header_fix_nav_row .has-dropdown > a::before,
.header_fix_nav_row .has-dropdown > a::after {
  content: "";
  position: absolute;
  right: min(1.0980966325vw, 15px);
  top: calc(50% - 0.5px);
  width: 1px;
  height: min(0.5856515373vw, 8px);
  background-color: #837d7b;
  transform-origin: 50% calc(100% - 0.5px);
  transition: transform 0.3s ease;
}
.header_fix_nav_row .has-dropdown > a::before {
  transform: rotate(45deg);
}
.header_fix_nav_row .has-dropdown > a::after {
  transform: rotate(-45deg);
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  opacity: 0;
  visibility: visible;
  transition: all 0.3s ease;
  z-index: 1000;
  width: 100%;
  padding: min(3.6603221083vw, 50px) min(14.6412884334vw, 200px)
    min(2.9282576867vw, 40px);
  display: block;
}
.dropdown-menu.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.dropdown-menu-tea {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1000;
  width: 100%;
  padding: min(3.6603221083vw, 50px) min(14.6412884334vw, 200px)
    min(2.9282576867vw, 40px);
  display: block;
}
.dropdown-menu-tea.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.dropdown-menu-food {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1000;
  width: 100%;
  padding: min(3.6603221083vw, 50px) min(14.6412884334vw, 200px)
    min(2.9282576867vw, 40px);
  display: block;
}
.dropdown-menu-food.show {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.dropdown-column {
  display: inline-block;
  vertical-align: top;
  margin-right: min(8.78477306vw, 120px);
}
.dropdown-column ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: min(1.4641288433vw, 20px);
}
.dropdown-column li::before {
  content: "";
  display: inline-block;
  width: min(0.439238653vw, 6px);
  height: min(0.439238653vw, 6px);
  background-color: #2ea35d;
  border-radius: 50%;
  margin-right: min(0.5856515373vw, 8px);
  vertical-align: middle;
}
.dropdown-column a {
  color: #45413f;
  text-decoration: none;
  font-size: min(1.0980966325vw, 15px);
  line-height: 1.4;
  transition: color 0.3s ease;
}
.header_fix_nav {
  background-color: #f3f7f0;
  padding-bottom: min(0.7320644217vw, 10px);
  max-width: 1366px;
  margin: 0 auto;
}
.header_fix_nav_row {
  display: flex;
  justify-content: center;
  margin: 0 min(2.5622254758vw, 35px);
}
.header_fix_nav_row li {
  text-align: center;
  border-right: 1px solid #cad7cf;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 0;
}
.header_fix_nav_row li:last-child {
  border-right: none;
}
.header_fix_nav_row li a {
  color: #45413f;
  padding: min(0.2928257687vw, 4px) min(1.1713030747vw, 16px);
  font-size: min(1.1713030747vw, 16px);
  text-decoration: none;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.3125;
}
@media screen and (max-width: 1024px) {
  .header_fix_nav_row li a {
    font-size: min(0.7320644217vw, 10px);
  }
}
/* スクロールheader */
.header_scroll {
  position: fixed;
  top: -300px;
  width: 100%;
  transition: 0.3s;
  z-index: 1000;
  background-color: #fff;
}
.header_scroll.active {
  top: 0;
}
.header_scroll_row {
  display: flex;
  justify-content: center;
}
.header_scroll_logo {
  width: 150px;
  padding: 8px 10px;
}
.header_scroll_nav {
  background-color: #008000;
}
.header_scroll_nav ul {
  display: flex;
  height: 100%;
}
.header_scroll_nav li {
  text-align: center;
  border-right: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header_scroll_nav li:last-child {
  border-right: none;
}
.header_scroll_nav a {
  color: #fff;
  padding: 4px 10px;
  font-size: 14px;
  text-decoration: none;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
/* 追加 */
.header_scroll_contact {
  font-size: 14px;
  color: #fff;
  padding: 4px 10px;
  background-color: #9c2126;
  text-decoration: none;
  line-height: 1.4;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .header_scroll_nav a {
    font-size: 10px;
  }
}
@media screen and (max-width: 768px) {
  .header_fix {
    display: none;
  }
  .header_scroll {
    display: none;
  }
  .main .main_contents {
    padding-top: 0;
  }
}
/* Fix 下部 */
.footer_fix {
  position: fixed;
  bottom: 0;
  background-color: #008000;
  z-index: 1000;
  width: 100%;
  padding: 12px 0;
  transform: translateY(100%);
  transition: transform 0.3s ease-in-out;
}
.footer_fix.show {
  transform: translateY(0);
}
.footer_fix .header_fix_btns {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.footer_fix .header_fix_btns .header_fix_contact {
  margin: 0;
}
.footer_fix_row {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  padding: 5px 8px;
  width: 90%;
  margin: 0 auto;
}
.footer_fix_text {
  font-size: 18px;
  font-weight: bold;
  margin-right: 24px;
}
.footer_fix_text .text_green {
  color: #008000;
}
.footer_sp {
  display: none;
}
@media screen and (max-width: 1200px) {
  .footer_fix_row {
    width: 95%;
  }
  .footer_fix_text {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .footer_fix {
    display: none;
  }
  .footer_sp {
    display: flex;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 1000;
  }
  .footer_sp_btn {
    width: 50%;
    color: #fff;
    font-size: 12px;
    padding: 20px 0;
    position: relative;
    padding-left: 10px;
    text-decoration: none;
    text-align: center;
  }
  .footer_sp_btn i {
    margin-right: 8px;
    font-size: 16px;
    vertical-align: baseline;
    display: inline-block;
  }
  .footer_sp_tel {
    background-color: #f0aa3a;
  }
  .footer_sp_mail {
    background-color: #00833f;
  }
  footer.footer {
    padding-bottom: 32px;
  }
}
/* contact 追加 */
.contact_hover_wrap {
  /* position: absolute;
  display: flex;
  flex-wrap: wrap;
  width: 72%; */
}
.contact_hover_wrap.contact_hover_wrap_01 {
  /* top: 10vw;
  left: 10vw; */
}
.contact_hover_item {
  background-color: #fff;
  padding: 0.69vw;
  display: none;
  width: 19vw;
  position: absolute;
  bottom: 2.777vw;
  transition: 0.3s;
  opacity: 0;
}
.contact_hover_item::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.83vw solid transparent;
  border-left: 0.83vw solid transparent;
  border-top: 1.041vw solid #fff;
  border-bottom: 0;
  position: absolute;
  left: 50%;
  bottom: -1.041vw;
  transform: translateX(-50%);
}
.contact_hover_item.show {
  display: block;
  opacity: 1;
}
.contact_hover_ttl {
  font-size: 0.97vw;
  border-bottom: 0.7px solid #333;
  padding-bottom: 0.55vw;
  margin-bottom: 0.55vw;
  font-weight: bold;
}
.contact_hover_text {
  font-size: 0.833vw;
}
.contact_table .contact_hover_item table {
  background-color: #fff;
}
.contact_table .contact_hover_item table tr {
  padding: 0;
}
.contact_table .contact_hover_item table td {
  padding: 0;
  font-size: 0.833vw;
  background-color: #fff;
  border-top: none !important;
}
.contact_hover_item ul {
  list-style: none;
  padding: 0;
}
.contact_hover_item ul li {
  font-size: 0.833vw;
}
.checkbox-563 .wpcf7-list-item {
  position: relative;
}
.checkbox-202 .wpcf7-list-item {
  position: relative;
}
@media screen and (max-width: 768px) {
  .contact_hover_item {
    width: 56vw;
    padding: 2.666vw;
    bottom: 12vw;
  }
  .contact_hover_ttl {
    font-size: 3.2vw;
  }
  .contact_hover_item ul li {
    font-size: 2.6vw;
  }
  .contact_hover_item::after {
    border-right: 3.2vw solid transparent;
    border-left: 3.2vw solid transparent;
    border-top: 4vw solid #fff;
    bottom: -4vw;
  }
  .contact_hover_text {
    font-size: 2.6vw;
  }
  .contact_table .contact_hover_item table td {
    font-size: 2.6vw;
  }
}
/* 追加 */
.material_allList_list .accordion__item .accordion__content {
  display: block;
}
.result_concept_type_sample {
  margin-left: 8px;
}
.material_type_list_top-column {
  flex-direction: row;
  align-items: center;
}
.material_type_list_top .material_type_list_heading {
  margin-top: 0;
}
.material_type_list_heading {
  margin-top: 0.78125vw;
}
.material_type_list_sample {
  margin-left: 8px;
}
/* title */
.section_title {
  display: flex;
  flex-direction: column;
  gap: min(0.878477306vw, 12px);
}
.section_title .en {
  font-size: min(1.756954612vw, 24px);
  color: #4e8b67;
  font-weight: 700;
  font-family: Cardo, serif;
}
.section_title .ja {
  font-size: min(2.2701317716vw, 31px);
  font-family: noto-serif-jp, serif;
  font-weight: 400;
}
.title__text {
  font-size: min(1.317715959vw, 18px);
  font-family: "Noto Sans JP";
  font-weight: 500;
  color: #505256;
  text-align: left;
  line-height: 1.9444444444;
  padding-top: min(1.4641288433vw, 20px);
}
.title__text.column_title_text {
  width: min(51.3909224012vw, 700px);
}
@media screen and (max-width: 767px) {
  .section_title {
    gap: 1.3333333333vw;
  }
  .section_title .en {
    font-size: 4.2666666667vw;
  }
  .section_title .ja {
    font-size: 6.4vw;
    line-height: 1.2;
  }
  .title__text {
    font-size: 4.2666666667vw;
    padding-top: 2.6666666667vw;
  }
  .title__text.column_title_text {
    width: 100%;
  }
}
/* button */
.button {
  display: block;
  border-radius: 50px;
  border: 2px solid #9a9795;
  padding: min(1.6105417277vw, 22px) min(6.076135vw, 83px)
    min(1.6105417277vw, 22px) min(5.124451vw, 70px);
  margin: min(0.9516837482vw, 13px) auto 0;
  position: relative;
  width: fit-content;
  transition: 0.3s;
}
.button:hover {
  background-color: #9a9795;
  transition: 0.3s;
}
.button:hover .button__text {
  color: #fff;
  transition: 0.3s;
}
/* テスト用のコメント - コンパイル確認 */
.button::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: min(1.9765739385vw, 26px);
  width: min(1.8301610542vw, 25px);
  height: min(1.8301610542vw, 25px);
  background-image: url(../images/home/button_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.tour .button::before {
  right: min(1.3909224012vw, 19px);
}
.button__text {
  color: #45413f;
  font-size: min(1.317715959vw, 18px);
  line-height: 1;
  transition: 0.3s;
}
@media screen and (max-width: 767px) {
  .button {
    padding: 4vw 13.3333333333vw 4vw 13.3333333333vw;
    margin: 2.6666666667vw auto 0;
  }
  .button::before {
    right: 4vw;
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .tour .button::before {
    right: 4vw;
  }
  .button__text {
    font-size: 4.2666666667vw;
  }
}
/* product */
.homeProduct .card {
  padding: min(6.588579795vw, 90px) 0;
}
.homeProduct .card__inner {
  width: min(67.0571010249vw, 916px);
  margin-inline: auto;
  background-color: rgba(255, 255, 255, 0.96);
  padding: min(4.2459736457vw, 58px) min(7.3206442167vw, 100px)
    min(2.5622254758vw, 35px) min(8.1991215227vw, 112px);
  position: relative;
  max-width: 1100px;
}
.homeProduct .card__inner::before {
  content: "";
  position: absolute;
  top: min(11.5666178624vw, 158px);
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #c3c3c3;
}
.card {
  position: relative;
  z-index: 1;
}
.card01 {
  background-image: url("../images/home/card01_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card02 {
  background-image: url("../images/home/card02_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.card_heading {
  font-weight: 400;
  line-height: 1;
  font-family: noto-serif-jp, serif;
}
.card_heading_number {
  font-size: min(1.756954612vw, 24px);
  font-weight: bold;
  color: #c86c29;
  font-family: Cardo, serif;
}
.card02 .card_heading_number {
  color: #4e8b67;
}
.card_heading {
  display: flex;
  flex-direction: column;
  gap: min(1.6105417277vw, 22px);
  font-size: min(2.2693997072vw, 30px);
  color: #45413f;
}
.card__text-wrap {
  padding: min(3.6603221083vw, 50px) 0 0;
  flex-grow: 1;
}
.card__text {
  font-size: min(1.317715959vw, 18px);
  line-height: 1.9444444444;
}
@media screen and (max-width: 767px) {
  .homeProduct .card {
    padding: 8vw 0;
  }
  .homeProduct .card__inner {
    width: 90%;
    padding: 5.3333333333vw 5.3333333333vw 5.3333333333vw 5.3333333333vw;
  }
  .homeProduct .card__inner::before {
    top: 21.8666666667vw;
  }
  .card_heading_number {
    font-size: 4.2666666667vw;
  }
  .card_heading {
    gap: 4vw;
    font-size: 5.3333333333vw;
  }
  .card__text-wrap {
    padding: 5.3333333333vw 0 0;
  }
  .card__text {
    font-size: 4.2666666667vw;
  }
}
/* banner */
.banner__link {
  display: block;
  margin: min(1.1713030747vw, 16px) auto min(5.1244509517vw, 70px);
  width: min(49.2679355783vw, 670px);
  height: min(25.7686676428vw, 350px);
  position: relative;
}
.banner__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .banner__link {
    margin: 10.6666666667vw auto 10.6666666667vw;
    width: 90%;
    height: auto;
  }
  .banner__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
/* news */
.homeNews {
  padding: min(8.4919472914vw, 116px) 0 min(5.9297218155vw, 81px);
  position: relative;
  z-index: 1;
}
.homeNews::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url(../images/home/column_bg.png);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  z-index: -1;
}
.homeNews .list {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(1.098097vw, 15px);
  margin-top: min(3.6603221083vw, 50px);
  margin-bottom: min(3.953147877vw, 54px);
}
.homeNews .item {
  position: relative;
  z-index: 1;
}
.homeNews .item .link {
  display: flex;
  flex-direction: column;
  text-decoration: underline;
}
.homeNews .item .link .date {
  font-size: min(1.0980966325vw, 15px);
  color: #45413f;
  margin-top: min(1.6105417277vw, 22px);
  font-weight: 700;
  font-family: Cardo, serif;
}
.homeNews .item .link .title {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  margin-top: min(0.3660322108vw, 5px);
  font-weight: 500;
  flex: 1;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767px) {
  .homeNews {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .homeNews::before {
    display: none;
  }
  .homeNews .list {
    display: grid;
    gap: 5.3333333333vw;
    margin-top: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  .homeNews .item .link .date {
    font-size: 4.2666666667vw;
    margin-top: 2.6666666667vw;
  }
  .homeNews .item .link .title {
    font-size: 4.8vw;
    margin-top: 1.3333333333vw;
  }
}
/* column */
.homeColumn {
  background-color: #f6f6f6;
  position: relative;
  z-index: 1;
  padding: 0 0 min(5.9297218155vw, 81px);
}
.homeColumn .list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(2.196193265vw, 30px) min(4.39238653vw, 60px);
  margin-top: min(3.6603221083vw, 50px);
  margin-bottom: min(3.953147877vw, 54px);
}
.homeColumn .item {
  position: relative;
  z-index: 1;
}
.homeColumn .item .link {
  display: flex;
  flex-direction: column;
}
.homeColumn .item .link .image_box {
  width: min(23.9141044412vw, 326px);
  height: min(15.9427362941vw, 217px);
  position: relative;
  max-width: 326px;
}
.homeColumn .list .item .link .image_box img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}
.homeColumn .item .link .date {
  font-size: min(1.0980966325vw, 15px);
  color: #45413f;
  margin-top: min(1.6105417277vw, 22px);
  font-weight: 700;
  font-family: Cardo, serif;
}
.homeColumn .item .link .title {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  margin-top: min(0.3660322108vw, 5px);
  font-weight: 500;
  flex: 1;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767px) {
  .homeColumn {
    background-color: #eeeeed;
    position: relative;
    z-index: 1;
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .homeColumn::before {
    display: none;
  }
  .homeColumn .list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 5.3333333333vw;
    margin-top: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  .homeColumn .item .link .image_box {
    width: 100%;
    height: 60vw;
    position: relative;
    overflow: hidden;
  }
  .homeColumn .list .item .link .image_box img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  .homeColumn .item .link .date {
    font-size: 4vw;
    margin-top: 2.6666666667vw;
  }
  .homeColumn .item .link .title {
    font-size: 4.8vw;
    margin-top: 1.3333333333vw;
  }
}
/* about */
.about {
  padding: min(7.6866764275vw, 104px) 0 0;
  position: relative;
}
.about .list {
  display: flex;
  flex-direction: column;
  gap: min(5.8565153734vw, 80px);
  margin-top: min(5.8565153734vw, 80px);
}
.about .list .item {
  position: relative;
  z-index: 1;
}
.about .list .item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(23.4260614934vw, 319px);
  background-color: #387852;
  z-index: -2;
}
@media screen and (min-width: 1366px) {
  .about .list .item::after {
    left: calc((100% - 1366px) / 2);
    width: calc(100% - (100% - 1366px));
  }
}
.about .list .item::before {
  content: "";
  position: absolute;
  top: 0;
  width: min(60.0292825769vw, 819px);
  height: 100%;
  z-index: -1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.about .list .item.item01::before {
  right: 0;
  background-image: url(../images/home/about_img01.jpg);
}
.about .list .item.item02::before {
  left: 0;
  background-image: url(../images/home/about_img02.jpg);
}
.about .list .item.item03::before {
  right: 0;
  background-image: url(../images/home/about_img03.jpg);
}
@media screen and (min-width: 1366px) {
  .about .list .item.item01::before {
    right: calc((100% - 1366px) / 2);
  }
  .about .list .item.item02::before {
    left: calc((100% - 1366px) / 2);
  }
  .about .list .item.item03::before {
    right: calc((100% - 1366px) / 2);
  }
}
.about .list .item .about_inner {
  padding: 0 min(9.8096632504vw, 134px) 0 min(4.4655929722vw, 61px);
  max-width: 1100px;
  margin-inline: auto;
  width: 80.5270863836vw;
}
.about .list .item.item02 .about_inner {
  padding: 0 0 0 min(4.4655929722vw, 61px);
}
.about .list .item .about_inner .link {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-radius: 0 min(2.3426061493vw, 32px) 0 min(2.3426061493vw, 32px);
  width: min(49.7803806735vw, 677px);
  padding: min(3.8799414348vw, 53px) min(3.953147877vw, 54px)
    min(2.0497803807vw, 28px) min(5.270863836vw, 72px);
  position: relative;
  z-index: 1;
  margin-top: min(4.2459736457vw, 58px);
  margin-bottom: min(4.0995607613vw, 56px);
}
.about .list .item.item02 .about_inner .link {
  margin-left: auto;
  border-radius: min(2.3426061493vw, 32px) 0 min(2.3426061493vw, 32px) 0;
}
.about .list .item .about_inner .link::before {
  content: "";
  position: absolute;
  bottom: min(5.4172767204vw, 74px);
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #c3c3c3;
}
.about .list .item .link .badge {
  position: absolute;
  top: max(-1.2445095168vw, -17px);
  left: min(3.29429dvw, 45px);
  width: min(7.6134699854vw, 104px);
  height: min(7.6134699854vw, 104px);
  background-color: #d7e3dc;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: min(1.5373352855vw, 21px);
  color: #2d784b;
  z-index: -1;
}
.about .list .item .link .title_box {
  display: flex;
  align-items: center;
  gap: min(1.6105417277vw, 22px);
  margin-left: min(1.830161vw, 25px);
}
.about .list .item .link .title_box .number {
  font-size: min(7.3206442167vw, 100px);
  color: #45413f;
  font-family: Cardo, serif;
  font-weight: 400;
}
.about .list .item .link .title_box .title {
  font-size: min(2.2693997072vw, 31px);
  line-height: 1.4838709677;
  color: #45413f;
  font-family: noto serif, serif;
  font-weight: 400;
}
.about .list .item .link .text {
  margin-top: min(1.317715959vw, 18px);
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  line-height: 1.9444444444;
  letter-spacing: 0.02em;
}
.about .list .item .link .about_link {
  position: relative;
  margin-top: min(4.831625183vw, 66px);
  width: fit-content;
  margin-left: auto;
}
.about .list .item .link .about_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: min(1.8301610542vw, 25px);
  height: min(1.8301610542vw, 25px);
  background-image: url(../images/home/button_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
}
.about .list .item .link .about_link .about_link_text {
  display: block;
  width: fit-content;
  margin-left: auto;
  padding-right: min(2.3426061493vw, 32px);
  font-size: min(1.317715959vw, 18px);
}
@media screen and (max-width: 767px) {
  .about {
    padding: 10.6666666667vw 0 0;
  }
  .about .list {
    gap: 0;
    margin-top: 10.6666666667vw;
  }
  .about .list .item::after {
    display: none;
  }
  .about .list .item::before {
    display: none;
  }
  .about .list .item .about_inner {
    padding: 0 2.3333333333vw;
    width: 100%;
  }
  .about .list .item.item02 .about_inner {
    padding: 0 2.3333333333vw;
    width: 100%;
  }
  .about .list .item .about_inner .link {
    border-radius: 0 8.5333333333vw 0 8.5333333333vw;
    width: 100%;
    padding: 5.3333333333vw 5.3333333333vw 8vw 5.3333333333vw;
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
  }
  .about .list .item.item02 .about_inner .link {
    border-radius: 8.5333333333vw 0 8.5333333333vw 0;
  }
  .about .list .item .about_inner .link::before {
    bottom: 0vw;
  }
  .about .list .item .link .badge {
    top: -8vw;
    left: 1.3333333333vw;
    width: 21.3333333333vw;
    height: 21.3333333333vw;
    font-size: 5.3333333333vw;
  }
  .about .list .item .link .title_box {
    gap: 3.2vw;
    margin-left: 0;
  }
  .about .list .item .link .title_box .number {
    font-size: 12.8vw;
  }
  .about .list .item .link .title_box .title {
    font-size: 5.3333333333vw;
  }
  .about .list .item .link .image_box {
    margin: 5.3333333333vw 0;
  }
  .about .list .item .link .text {
    margin-top: 2.6666666667vw;
    font-size: 4.2666666667vw;
  }
  .about .list .item .link .about_link {
    margin-top: 8vw;
    margin-left: unset;
    border: 2px solid #c3c3c3;
    border-radius: 13.3333333333vw;
    padding: 4vw 0;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .about .list .item .link .about_link::after {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
    right: 2.6666666667vw;
  }
  .about .list .item .link .about_link .about_link_text {
    padding-right: 8.5333333333vw;
    font-size: 4.2666666667vw;
    margin-left: unset;
  }
}
/* development */
.development {
  padding: min(8.4187408492vw, 115px) 0 min(3.2942898975vw, 45px);
  position: relative;
}
.development .list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin-top: min(4.831625183vw, 66px);
}
.development .list .item {
  width: min(15.5929721816vw, 212px);
  height: min(15.5929721816vw, 212px);
  border-radius: 50%;
  background-color: #008000;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(1.8301610542vw, 25px);
  padding-top: min(4.6120058565vw, 63px);
}
.development .list .item .text {
  font-size: min(1.4641288433vw, 20px);
  color: #fff;
}
.development .list .item .image_box {
  width: min(4.7584187408vw, 65px);
  height: min(6.588579795vw, 90px);
  object-fit: cover;
}
.development .list .item .image_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.development .description {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  line-height: 1.9444444444;
  margin-top: min(3.8067349927vw, 52px);
}
.development .description + .description {
  margin-top: min(1.2445095168vw, 17px);
}
@media screen and (max-width: 767px) {
  .development {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .development .list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.6666666667vw;
    margin-top: 5.3333333333vw;
    justify-items: center;
  }
  .development .list .item:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
  }
  .development .list .item:nth-child(2) {
    grid-column: 2;
    grid-row: 1;
  }
  .development .list .item:nth-child(3) {
    grid-column: 3;
    grid-row: 1;
  }
  .development .list .item:nth-child(4) {
    grid-column: 1;
    grid-row: 2;
    justify-self: end;
    margin-right: 2.6666666667vw;
  }
  .development .list .item:nth-child(5) {
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    margin-left: 2.6666666667vw;
  }
  .development .list .item {
    width: 26.6666666667vw;
    height: 26.6666666667vw;
    padding-top: 8vw;
  }
  .development .list .item .text {
    font-size: 3.7333333333vw;
  }
  .development .list .item .image_box {
    width: 8.6666666667vw;
    height: 12vw;
  }
  .development .description {
    font-size: 4.2666666667vw;
    margin-top: 10.6666666667vw;
  }
  .development .description + .description {
    margin-top: 2.6666666667vw;
  }
}
/* Development Slider */
.development_slider {
  max-width: 1350px;
  margin-inline: auto;
}
.development_slider .slick-slider {
  margin: min(3.6603221083vw, 50px) min(3.6603221083vw, 50px) 0;
}
.development_slider .slick-slide {
  margin: 0 min(0.878477306vw, 12px);
  width: min(29.0629575403vw, 400px);
}
.slider_item {
  background-color: #fff;
  border: 1px solid #387852;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.slider_image_box {
  width: min(29.0629575403vw, 400px);
  height: min(23.0600292826vw, 315px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.slider_image {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.slider_content {
  background-color: #f5f9f5;
  padding: min(3.1478770132vw, 43px) min(1.9765739385vw, 27px)
    min(2.196193265vw, 30px);
  flex: 1;
  display: flex;
  flex-direction: column;
}
.slider_title {
  font-size: min(1.4641288433vw, 20px);
  font-weight: 400;
  color: #45413f;
}
.slider_text {
  font-size: min(1.0980966325vw, 15px);
  color: #45413f;
  line-height: 2.1333333333;
  flex: 1;
  margin-top: min(1.4641288433vw, 20px);
}
.slider_title + P {
  font-size: min(1.0980966325vw, 15px);
  color: #45413f;
  line-height: 2.1333333333;
  flex: 1;
  margin-top: min(1.4641288433vw, 20px);
}
@media screen and (max-width: 767px) {
  .development_slider {
    margin: 8vw 8vw 0;
  }
  .development_slider .slick-slide {
    margin: 0 2.6666666667vw;
    width: 100%;
  }
  .slider_item {
    background-color: #fff;
    border: 1px solid #387852;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }
  .slider_image_box {
    width: 100%;
    /* height: 40vw; */
    height: 50vw;
  }
  .slider_content {
    padding: 5.3333333333vw;
  }
  .slider_title {
    font-size: 4.2666666667vw;
  }
  .slider_text {
    font-size: 3.7333333333vw;
    line-height: 1.5;
    margin-top: 2.6666666667vw;
  }
}
/* Development Slick Arrow Styles */
.development_slick .slick-arrow {
  position: absolute;
  display: inline-block;
  width: min(1.756954612vw, 24px);
  height: min(3.0014641288vw, 41px);
  border: none;
  background: none;
  cursor: pointer;
  z-index: 10;
  top: 50%;
}
.development_slick .slick-arrow:hover {
  opacity: 0.7;
}
.development_slick .slick-arrow:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.development_slick .slick-prev {
  left: max(-2.9282576867vw, -40px);
}
.development_slick .slick-next {
  right: max(-2.9282576867vw, -40px);
}
.development_slick .slick-prev::before,
.development_slick .slick-prev::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: min(2.196193265vw, 30px);
  height: min(2.196193265vw, 30px);
  background-image: url(../images/home/slider_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.development_slick .slick-prev::before {
  transform: rotate(180deg);
}
.development_slick .slick-prev::after {
  transform: rotate(0deg);
}
.development_slick .slick-next::before,
.development_slick .slick-next::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: min(2.196193265vw, 30px);
  height: min(2.196193265vw, 30px);
  background-image: url(../images/home/slider_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.development_slick .slick-next::before {
  transform: rotate(0deg);
}
.development_slick .slick-next::after {
  transform: rotate(180deg);
}
.development_button {
  padding: min(1.6105417277vw, 22px) min(4.9048316252vw, 67px)
    min(1.6105417277vw, 22px) min(3.0014641288vw, 41px);
  margin: min(3.2942898975vw, 45px) auto 0;
}
@media screen and (max-width: 767px) {
  .development_slick .slick-arrow {
    width: 8vw;
    height: 8vw;
  }
  .development_slick .slick-prev {
    left: -6.6666666667vw;
  }
  .development_slick .slick-next {
    right: -6.6666666667vw;
  }
  .development_slick .slick-prev::before,
  .development_slick .slick-prev::after {
    width: 8vw;
    height: 8vw;
  }
  .development_slick .slick-next::before,
  .development_slick .slick-next::after {
    width: 8vw;
    height: 8vw;
  }
  .development_button {
    padding: 4vw 17.8666666667vw 4vw 10.9333333333vw;
    margin: 12vw auto 0;
  }
}
/* flow */
.flow {
  position: relative;
  padding-top: 111px;
  padding-bottom: 45px;
  border-top: 1px solid #c3c3c3;
}
.flow::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(24.7437774524vw, 338px);
  background-image: url(../images/home/flow_bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.flow .description {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  line-height: 1.9444444444;
  margin-top: min(4.6120058565vw, 63px);
}
.flow .list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: min(1.4641288433vw, 20px);
  margin-top: min(3.6603221083vw, 50px);
}
.flow .list .item {
  padding: min(1.4641288433vw, 20px);
  border-radius: min(0.7320644217vw, 10px);
  background-color: #fff;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: min(2.9282576867vw, 40px) min(1.4641288433vw, 20px)
    min(1.4641288433vw, 20px);
}
.flow .list .item::after {
  content: "";
  position: absolute;
  bottom: 50%;
  transform: translateY(50%);
  right: max(-1.2811127379vw, -18px);
  width: min(1.0980966325vw, 15px);
  height: min(1.0980966325vw, 15px);
  background-image: url(../images/home/button_arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.flow .list .item:last-child::after {
  display: none;
}
.flow .list .item::before {
  content: "";
  position: absolute;
  top: min(0.5856515373vw, 8px);
  left: min(0.5856515373vw, 8px);
  width: calc(100% - 1.1713030747vw);
  height: calc(100% - 1.1713030747vw);
  border: 2px solid #96b8a3;
}
.flow .list .item .number {
  font-size: min(1.317715959vw, 18px);
  color: #fff;
  font-weight: 700;
  width: min(6.2225475842vw, 85px);
  height: min(6.2225475842vw, 85px);
  background-color: #387852;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Cardo, serif;
}
.flow .list .item .title {
  font-size: min(1.317715959vw, 18px);
  color: #387852;
  font-weight: 700;
  margin-top: min(2.196193265vw, 30px);
}
.flow .list .item .text {
  font-size: min(1.0980966325vw, 15px);
  line-height: 1.6666666667;
  margin-top: min(2.5622254758vw, 35px);
}
.flow .flow_button {
  padding: min(1.6105417277vw, 22px) min(5.1976573939vw, 71px)
    min(1.6105417277vw, 22px) min(3.6603221083vw, 50px);
  margin: min(3.2942898975vw, 45px) auto 0;
  border: 2px solid #fff;
}
.flow .flow_button .button__text {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .flow {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
  .flow::before {
    height: 404vw;
  }
  .flow .list {
    grid-template-columns: 1fr;
    gap: 13.3333333333vw;
    margin-top: 13.3333333333vw;
  }
  .flow .list .item {
    padding: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    padding: 10.6666666667vw 5.3333333333vw 5.3333333333vw;
  }
  .flow .list .item::after {
    bottom: -11.2vw;
    right: 50%;
    transform: translateX(50%) rotate(90deg);
    width: 8vw;
    height: 9.6vw;
    background-image: url(../images/home/icon_flow_arrow_sp.svg);
  }
  .flow .list .item::before {
    top: 2.1333333333vw;
    left: 2.1333333333vw;
    width: calc(100% - 4.2666666667vw);
    height: calc(100% - 4.2666666667vw);
  }
  .flow .list .item .number {
    font-size: 4.8vw;
    width: 22.6666666667vw;
    height: 22.6666666667vw;
  }
  .flow .list .item .title {
    font-size: 5.3333333333vw;
    margin-top: 2.6666666667vw;
  }
  .flow .list .item .text {
    font-size: 4vw;
    margin-top: 2.6666666667vw;
  }
  .flow .flow_button {
    padding: 4vw 18.9333333333vw 4vw 13.3333333333vw;
    margin: 12vw auto 0;
  }
}
/* tour */
.tour {
  padding: 9.2972181552vw 0 4.6120058565vw;
}
.tour .tour_360_button {
  padding: 1.6105417277vw 4.0995607613vw 1.6105417277vw 2.8550512445vw;
  margin: 3.2942898975vw auto 0;
  border: 2px solid transparent;
  background-color: #fff;
}
.tour .tour_360_button .button__text {
  color: #45413f;
}
@media screen and (max-width: 767px) {
  .tour {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .tour .tour_360_button {
    padding: 4vw 14.9333333333vw 4vw 10.4vw;
    margin: 12vw auto 0;
  }
}
/* Company */
.company {
  padding: min(5.9297218155vw, 81px) 0 min(8.78477306vw, 121px);
}
.company_offices {
  margin-top: min(2.9282576867vw, 40px);
  margin-bottom: min(2.9282576867vw, 40px);
  display: flex;
  flex-direction: column;
  gap: min(1.756954612vw, 24px);
}
.office_item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border: min(1.4641288433vw, 20px) solid #f7f9f5;
  height: min(26.3543191801vw, 360px);
}
.office_info {
  flex: 1;
  padding: min(2.9282576867vw, 40px) 0 0 min(2.196193265vw, 30px);
  background-color: #fff;
}
.office_title {
  font-size: min(1.4641288433vw, 20px);
  font-weight: 500;
  color: #45413f;
  margin-bottom: min(1.8301610542vw, 25px);
  position: relative;
  padding-left: min(1.5373352855vw, 21px);
}
.office_title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: min(0.5124450952vw, 7px);
  height: min(1.1713030747vw, 16px);
  background-color: #387852;
}
.office_details {
  display: flex;
  flex-direction: column;
}
.detail_row {
  display: flex;
  align-items: flex-start;
  gap: min(1.4641288433vw, 20px);
}
.detail_label {
  font-size: min(1.317715959vw, 18px);
  font-weight: 600;
  color: #45413f;
  min-width: min(6.9546120059vw, 95px);
  flex-shrink: 0;
  display: block;
  line-height: 2.1111111111;
}
.detail_value {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  line-height: 2.1111111111;
  flex: 1;
}
.office_map {
  flex: 1;
}
.office_map iframe {
  width: 100%;
  height: 100%;
  border: none;
}
@media screen and (max-width: 767px) {
  .company {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .company_offices {
    margin-top: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
    display: flex;
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  .office_item {
    display: grid;
    grid-template-columns: 1fr;
    border: 1.4641288433vw solid #f7f9f5;
    height: auto;
  }
  .office_info {
    flex: 1;
    padding: 5.3333333333vw;
    background-color: #fff;
  }
  .office_title {
    font-size: 4.8vw;
    font-weight: 500;
    color: #45413f;
    margin-bottom: 5.3333333333vw;
    position: relative;
    padding-left: 5.3333333333vw;
  }
  .office_title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1.8666666667vw;
    height: 4.2666666667vw;
    background-color: #387852;
  }
  .office_details {
    display: flex;
    flex-direction: column;
  }
  .detail_row {
    display: flex;
    align-items: flex-start;
    gap: 5.3333333333vw;
  }
  .detail_label {
    font-size: 4vw;
    font-weight: 600;
    color: #45413f;
    min-width: 18.6666666667vw;
    flex-shrink: 0;
    display: block;
    line-height: 2.1111111111;
  }
  .detail_value {
    font-size: 4vw;
  }
  .office_map {
    flex: 1;
  }
  .office_map iframe {
    width: 100%;
    height: 100%;
    border: none;
  }
}
/* Contact */
.contact {
  background-image: url("../images/home//contact_bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: min(5.8565153734vw, 80px) 0 min(7.7598828697vw, 106px);
}
.contact .section_title {
  color: #fff;
}
.contact .section_title .en {
  color: #fff;
}
.contact .section_title .ja {
  color: #fff;
}
.contact .title__text {
  color: #fff;
}
.contact_methods {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: min(3.953147877vw, 54px);
}
.contact_phone {
  margin-left: min(7.3206442167vw, 100px);
  color: #fff;
  border-right: 1px solid #fff;
}
.contact_phone_title {
  font-size: min(1.317715959vw, 18px);
  font-weight: 500;
  color: #45413f;
  background-color: #fff;
  padding: min(1.3909224012vw, 19px) min(7.6866764275vw, 105px)
    min(1.1713030747vw, 16px) min(7.6134699854vw, 103px);
  border-radius: 1.9033674963vw;
  width: fit-content;
}
.phone_offices {
  display: flex;
  flex-direction: column;
  margin-top: min(1.317715959vw, 18px);
  gap: min(1.0248901903vw, 14px);
}
.phone_office {
  display: flex;
  align-items: center;
  gap: min(0.8052708638vw, 11px);
}
.office_name {
  font-size: min(1.1713030747vw, 16px);
  font-weight: 400;
  min-width: min(10.980966325vw, 150px);
  display: flex;
  align-items: center;
  height: min(2.635431918vw, 36px);
  border: 1px solid #fff;
  padding-left: min(1.1713030747vw, 16px);
}
.phone_number {
  position: relative;
  padding-left: min(2.4890190337vw, 34px);
}
.phone_number::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: min(2.0497803807vw, 28px);
  height: min(2.0497803807vw, 28px);
  background-image: url("../images/side/icon_tel-renewal.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.number {
  font-size: min(2.3426061493vw, 32px);
  font-weight: 700;
  color: #fff;
  font-family: Cardo, serif;
}
.reception_hours {
  font-size: min(1.0980966325vw, 15px);
  color: #fff;
  margin-top: min(1.5373352855vw, 21px);
}
.contact_mail {
  margin-left: min(2.5622254758vw, 35px);
}
.contact_mail_title {
  font-size: min(1.317715959vw, 18px);
  font-weight: 500;
  color: #45413f;
  background-color: #fff;
  padding: min(1.9033674963vw, 26px) min(5.7833089312vw, 79px)
    min(1.4641288433vw, 20px) min(7.6134699854vw, 103px);
  border-radius: min(3.2210834553vw, 44px);
  display: flex;
  flex-direction: column;
  gap: min(0.878477306vw, 12px);
  position: relative;
  width: fit-content;
}
.contact_mail_title::before {
  content: "";
  position: absolute;
  left: min(2.5622254758vw, 35px);
  top: 50%;
  transform: translateY(-50%);
  width: min(3.8067349927vw, 52px);
  height: min(3.953147877vw, 54px);
  background-image: url("../images/side/contact_mail.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.contact_mail_title::after {
  content: "";
  position: absolute;
  right: min(2.4890190337vw, 34px);
  top: 50%;
  transform: translateY(-50%);
  width: min(0.5124450952vw, 7px);
  height: min(0.878477306vw, 12px);
  background-image: url("../images/side/button_arrow_02.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.contact_mail_text {
  font-size: min(1.317715959vw, 18px);
  color: #45413f;
  width: fit-content;
}
.contact_mail_text.small {
  font-size: min(1.1713030747vw, 16px);
}
.contact_mail_info {
  margin-top: min(1.2445095168vw, 17px);
  font-size: min(1.0980966325vw, 15px);
  color: #fff;
}
@media screen and (max-width: 767px) {
  .contact {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
  .contact_methods {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10.6666666667vw;
    margin-top: 10.6666666667vw;
  }
  .contact_phone {
    margin-left: 0;
    border-right: unset;
  }
  .contact_phone_title {
    font-size: 4.8vw;
    padding: 5.0666666667vw 0 4.2666666667vw 0;
    border-radius: 6.9333333333vw;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .phone_offices {
    display: flex;
    flex-direction: column;
    margin-top: 2.6666666667vw;
    gap: 0.7320644217vw;
  }
  .phone_office {
    display: flex;
    align-items: center;
    gap: 2.6666666667vw;
  }
  .office_name {
    font-size: 3.4666666667vw;
    min-width: 32vw;
    height: 8vw;
    padding-left: 2.6666666667vw;
  }
  .phone_number {
    position: relative;
    padding-left: 6.6666666667vw;
  }
  .phone_number::before {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .number {
    font-size: 7.4666666667vw;
  }
  .reception_hours {
    font-size: 3.4666666667vw;
    margin-top: 2.6666666667vw;
  }
  .contact_mail {
    margin-left: 0;
  }
  .contact_mail_title {
    font-size: 3.4666666667vw;
    padding: 6.9333333333vw 5.3333333333vw 5.3333333333vw 18.6666666667vw;
    border-radius: 11.7333333333vw;
    gap: 2.6666666667vw;
    width: 100%;
  }
  .contact_mail_title::before {
    left: 5.3333333333vw;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
  .contact_mail_title::after {
    right: 9.0666666667vw;
    width: 1.8666666667vw;
    height: 3.2vw;
  }
  .contact_mail_text {
    font-size: 4.8vw;
  }
  .contact_mail_text.small {
    font-size: 4.2666666667vw;
  }
  .contact_mail_info {
    margin-top: 2.6666666667vw;
    font-size: 3.4666666667vw;
  }
}
/* footer */
.footer {
  padding-top: min(6.7349926794vw, 92px);
  position: relative;
  padding-bottom: min(6.2957540264vw, 86px);
}
.footer::before {
  content: "";
  position: absolute;
  top: min(21.1566617862vw, 290px);
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #c8c3c2;
}
.footer .footer_main {
  position: relative;
}
.footer .footer_main .footer_top {
  display: flex;
  padding-bottom: min(4.5387994143vw, 62px);
}
.footer .footer_main .footer_top .footer_main_heading {
  width: min(21.8887262079vw, 300px);
  margin-top: min(3.074670571vw, 42px);
}
.footer .footer_main .footer_top .footer_nav {
  display: flex;
  gap: min(5.4904831625vw, 70px);
  margin-left: min(7.027818448vw, 96px);
}
.footer .footer_main .footer_top .footer_nav ul {
  display: flex;
  flex-direction: column;
  gap: 1.6105417277vw;
}
.footer .footer_main .footer_top .footer_nav ul li a {
  color: #4a3f3f;
  font-size: min(1.0980966325vw, 15px);
}
.footer .footer_main .footer_top .sns_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(0.7320644217vw, 10px);
  margin-left: min(7.5402635432vw, 103px);
  margin-top: min(1.8301610542vw, 25px);
}
.footer .footer_main .footer_top .sns_box .sns_box_title {
  font-size: min(1.1713030747vw, 16px);
  color: #4a3f3f;
  font-family: Cardo, serif;
  position: relative;
}
.footer .footer_main .footer_top .sns_box .sns_box_title::before {
  content: "";
  position: absolute;
  left: max(-1.0980966325vw, -15px);
  bottom: 0;
  width: 1px;
  height: 100%;
  background-color: #4a3f3f;
  transform: rotate(-45deg);
}
.footer .footer_main .footer_top .sns_box .sns_box_title::after {
  content: "";
  position: absolute;
  right: max(-1.0980966325vw, -15px);
  bottom: 0;
  width: 1px;
  height: 100%;
  background-color: #4a3f3f;
  transform: rotate(45deg);
}
.footer .footer_main .footer_top .sns_box img {
  width: min(1.756954612vw, 24px);
  height: min(1.8301610542vw, 25px);
}
.footer .footer_main .footer_bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding-top: min(3.4407027818vw, 47px);
}
.footer .footer_main .footer_bottom .footer_bottom_address.left {
  border-right: 1px solid #c8c3c2;
  padding: min(0.3660322108vw, 5px) 0 min(1.0980966325vw, 15px)
    min(13.6896046852vw, 187px);
}
.footer .footer_main .footer_bottom .footer_bottom_address.right {
  padding: min(0.3660322108vw, 5px) 0 min(1.0980966325vw, 15px)
    min(3.074670571vw, 42px);
}
.footer .footer_main .footer_bottom .footer_bottom_address {
  font-size: min(1.0980966325vw, 15px);
  line-height: 1.8666666667;
}
.footer .footer_main .footer_banner {
  margin-top: min(2.635431918vw, 36px);
  margin-bottom: min(2.3426061493vw, 32px);
}
.footer .footer_main .footer_banner ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(1.4641288433vw, 20px);
  width: min(35.1390922401vw, 480px);
  margin: 0 auto;
}
.footer .footer_main .footer_copyright {
  background-color: #f7f9f5;
  color: #222222;
  font-size: min(0.9516837482vw, 13px);
  text-align: center;
  height: min(6.2957540264vw, 86px);
  line-height: 1.8461538462;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .footer {
    padding-top: 10.6666666667vw;
  }
  .footer::before {
    display: none;
  }
  .footer .footer_main .footer_top {
    padding-bottom: 1.4641288433vw;
    justify-content: center;
  }
  .footer .footer_main .footer_top .footer_main_heading {
    width: 53.3333333333vw;
    margin-top: 0;
  }
  .footer .footer_main .footer_bottom {
    display: flex;
    flex-direction: column;
    padding-top: 5.3333333333vw;
    gap: 5.3333333333vw;
  }
  .footer .footer_main .footer_bottom .footer_bottom_address.left {
    border-right: unset;
    padding: 0 0 0 5.3333333333vw;
  }
  .footer .footer_main .footer_bottom .footer_bottom_address.right {
    padding: 0 0 0 5.3333333333vw;
  }
  .footer .footer_main .footer_bottom .footer_bottom_address {
    font-size: 4vw;
    line-height: 1.8666666667;
  }
  .footer .footer_main .footer_banner {
    margin-top: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
  }
  .footer .footer_main .footer_banner ul {
    gap: 5.3333333333vw;
    width: 80%;
  }
  .footer .footer_main .footer_copyright {
    font-size: 2.6666666667vw;
    height: 16vw;
  }
}
/* pagetop */
.pagetop {
  position: absolute;
  bottom: 0;
  right: 0;
  height: min(6.2957540264vw, 86px);
  width: min(7.3206442167vw, 99px);
}
.pagetop img {
  width: min(7.3206442167vw, 99px);
  height: min(6.2957540264vw, 86px);
}
@media screen and (max-width: 767px) {
  .pagetop {
    bottom: 0;
    right: 0;
    height: 16vw;
    width: 18.4vw;
  }
}
/* ハンバーガーメニュー */
@media screen and (max-width: 767px) {
  .side {
    height: 17.3333333333vw;
    width: 100%;
    display: block;
  }
  .side_sp .menu {
    position: fixed;
    top: 2.6666666667vw;
    right: 2.6666666667vw;
    z-index: 10001;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 13.3333333333vw;
    width: 13.3333333333vw;
    border-radius: 50%;
    background: #00833f; /* 画像のような水色 */
    color: #fff;
  }
  .side_sp .menu span {
    display: block;
    position: absolute;
    height: 2px;
    width: 6.6666666667vw;
    background: #fff;
    left: 3.3333333333vw;
    transition: 0.2s ease;
  }
  .side_sp .menu span:nth-child(1) {
    top: 2.6666666667vw;
  }
  .side_sp .menu span:nth-child(2) {
    top: 4.2666666667vw;
  }
  .side_sp .menu span:nth-child(3) {
    top: 5.8666666667vw;
  }
  .side_sp .menu p {
    position: absolute;
    bottom: 2.1333333333vw;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.6666666667vw;
    font-weight: 700;
    letter-spacing: 0.06em;
    margin: 0;
    font-family: Cardo, serif;
  }
  .side_sp .menu.isActive span:nth-child(1) {
    transform: translateY(1.6vw) rotate(45deg);
  }
  .side_sp .menu.isActive span:nth-child(2) {
    opacity: 0;
  }
  .side_sp .menu.isActive span:nth-child(3) {
    transform: translateY(-1.6vw) rotate(-45deg);
  }
}

/* 追加CSS */

.development .slick-list {
  display: flex;
}

.development .slick-slide div {
  /* height: 100% !important; */
}

.development .slick-track {
  /* width: 100% !important;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  position: initial;
  transform: initial; */
  display: flex;
}

.development .slick-track::before {
  display: initial;
  content: initial;
}

.development .slider_item {
  border: initial !important;
}

.development .slick-slide {
  float: initial !important;
  background-color: #f5f9f5;
  border: 1px solid #387852;
}

.development .slider_image_box {
  padding-top: 10px;
}

.development .slider_image_box img {
  max-width: 230px;
  aspect-ratio: 230/290;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.top-case__content {
  padding: 10px !important;
}

.top-case__dl {
  border: 1px solid #387852;
  height: 300px;
}
@media screen and (max-width: 768px) {
  .top-case__dl {
    height: initial;
  }
}

.top-case__dl-wrap {
  display: flex;
  border-bottom: 1px solid #387852;
  height: 20%;
  /* align-items: center; */
}
@media screen and (max-width: 768px) {
  .top-case__dl-wrap {
    height: 60px;
  }
}

.top-case__dl-wrap:last-child {
  border-bottom: initial;
}

.top-case__dt {
  border-right: 1px solid #387852;
  width: 40%;
  padding: 5px;
  padding-left: 10px;
  font-size: 14px;
  font-weight: 700;
  background-color: #387852;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.top-case__dt.top-case__dt--last {
  border-bottom: initial;
}

.top-case__dd {
  width: 60%;
  padding: 5px;
  line-height: 1.2;
  font-size: 14px;
  display: flex;
  align-items: center;
}

.top-case__dd.top-case__dd--short {
  /* text-align: center; */
  display: flex;
  align-items: center;
  /* justify-content: center; */
}

.top-case__dd p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* 行数を指定 */
}

.top-case__dl-title {
}

img {
  object-fit: cover !important;
  /* width: 100% !important; */
  /* height: 100%; */
}
