/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[3]!./src/scss/style.scss ***!
  \********************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
:root {
  --page-width: 1184px;
  --top-width: 165.6rem;
  --page-wide-width: 152.0rem;
  --side-margin: 5.6rem;
  --header-height: 8.4rem;
  --block-padding-inline: calc((100% - var(--page-width)) / 2);
}
@media only screen and (max-width: 1023px) {
  :root {
    --header-height: 8.0rem;
    --side-margin: 3.2rem;
  }
}
@media only screen and (max-width: 520px) {
  :root {
    --side-margin: 2.4rem;
  }
}
@media only screen and (max-width: 1680px) {
  :root {
    --block-padding-inline: 40px;
  }
}
@media only screen and (max-width: 1024px) {
  :root {
    --block-padding-inline: 20px;
  }
}
@media only screen and (max-width: 781px) {
  :root {
    --block-padding-inline: 16px;
  }
}

:root {
  --color-main: #222222;
  --color-main-toyopet: #00695F;
  --color-main-netz: #004569;
  --color-main-ucar: #B41010;
  --color-main-light: #fafafa;
  --color-main-toyopet-light: #E2F2E6;
  --color-main-netz-light: #E2EBF2;
  --color-main-ucar-light: #F0D5D7;
  --color-txt: #1c1919;
  --color-txt-gray01: #7f7f7f;
  --color-txt-gray02: #ABABAB;
  --color-txt-gray03: #C8C8C8;
  --color-bgGray01: #ededed;
  --color-bgGray02: #f5f5f5;
  --color-bgBlack: #141414;
  --color-lineGray01: #707070;
  --color-lineGray02: #d4d4d4;
  --color-lineGray03: #CCC3C3;
  --color-white: #ffffff;
  --color-gray: #333333;
  --color-darkGray: #222222;
  --color-black: #000000;
  --color-paleorange: #FAF5EC;
}

:root {
  --font-main: "Noto Sans JP", sans-serif;
  --font-en: "Futura Hv BT", sans-serif;
  --font-point: "Swiss721 BT", sans-serif;
  --font-btn: "Montserrat", "FOT-セザンヌ Pro M", sans-serif;
  --font-copy: "HiraginoKaku W6", "Hiragino Kaku Gothic Pro", sans-serif;
  --weight-medium: 500;
  --weight-bold: 700;
}

:root {
  --default-margin: 1.6rem;
  --margin-xs: calc(var(--default-margin) / 4);
  --margin-s: calc(var(--default-margin) / 2);
  --margin-m: var(--default-margin);
  --margin-l: calc(var(--default-margin) * 1.5);
  --margin-2l: calc(var(--default-margin) * 2);
  --margin-3l: calc(var(--default-margin) * 3);
  --margin-4l: calc(var(--default-margin) * 4);
  --margin-5l: calc(var(--default-margin) * 5);
  --margin-6l: calc(var(--default-margin) * 6);
  --space-1: .8rem;
  --space-2: 1.6rem;
  --space-3: 2.4rem;
  --space-4: 3.2rem;
  --space-5: 4.0rem;
  --space-6: 4.8rem;
  --space-7: 5.6rem;
  --space-8: 6.4rem;
  --space-9: 7.2rem;
  --space-10: 8.0rem;
  --space-11: 8.8rem;
  --space-12: 9.6rem;
  --space-13: 10.4rem;
  --space-14: 11.2rem;
  --space-15: 12.0rem;
}

:root {
  --cvnav-width: 80px;
  --shopnav-height: auto;
  --scrollbar-width: 1.4rem;
}
@media only screen and (max-width: 1200px) {
  :root {
    --cvnav-width: 72px;
  }
}
@media only screen and (max-width: 1023px) {
  :root {
    --shopnav-height: 68px;
  }
}

body {
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1;
}

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,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
input,
textarea {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: normal;
  vertical-align: baseline;
  background: transparent;
}

img {
  vertical-align: bottom;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
div,
address,
iframe,
canvas,
hr,
textarea {
  display: block;
}

iframe {
  max-width: 100% !important;
}

img,
embed,
object,
video {
  max-width: 100%;
}

a, label {
  cursor: pointer;
}

blockquote {
  padding: 0;
  margin: 0;
  display: block;
}

address, em {
  font-style: normal;
}

hr {
  border: 0;
  margin: 0;
  padding: 0;
}

ul, ol, li {
  list-style: none;
}

textarea {
  resize: vertical;
  overflow: hidden;
  -ms-appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: 0;
}

input, button, select {
  vertical-align: middle;
  border-radius: 0;
  box-sizing: border-box;
  border: 0;
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  cursor: pointer;
  white-space: normal;
  outline: 0;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
}

button,
input[type=reset],
input[type=button],
input[type=submit],
input[type=checkbox],
input[type=radio],
select {
  box-sizing: border-box;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

select::-ms-expand {
  display: none;
}

table {
  border-collapse: collapse;
}

*:before, *:after {
  padding: 0;
  margin: 0;
  line-height: 1;
  font-size: 1.6rem;
}

* {
  box-sizing: border-box;
  font-size: 1.6rem;
}
@media only screen and (max-width: 1440px) {
  * {
    font-size: 1.4rem;
  }
}

*:before, *:after {
  box-sizing: border-box;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

br {
  font-size: 0;
}

::-moz-selection {
  background: var(--color-main);
  color: #FFFFFF;
}

::selection {
  background: var(--color-main);
  color: #FFFFFF;
}

input::-moz-selection, textarea::-moz-selection {
  color: #DDDDDD;
}

input::selection, textarea::selection {
  color: #DDDDDD;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  padding: 0;
  scroll-behavior: smooth;
  scroll-padding-top: var(--header-height);
  /* レスポンシブフォント */
}
@media screen and (max-width: 1480px) {
  html {
    font-size: 57.5%;
  }
}
@media screen and (max-width: 1280px) {
  html {
    font-size: 55%;
  }
}
@media only screen and (max-width: 1023px) {
  html {
    font-size: 62.5%;
  }
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 62.5%;
  }
}

body {
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -o-font-smoothing: antialiased;
  font-smooth: antialiased;
  line-height: 2;
  font-family: var(--font-main);
  font-weight: var(--weight-medium);
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
  font-size: 1.6rem;
  color: var(--color-txt);
}
@media only screen and (max-width: 1440px) {
  body {
    font-size: 1.4rem;
  }
}
body.is-fixed {
  position: fixed;
  width: 100%;
  min-height: 100dvh;
  left: 0;
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1.4rem;
}

input,
button,
select,
textarea {
  font-family: var(--font-main);
}

input:focus,
button:focus,
select:focus,
textarea:focus,
a:focus,
div:focus,
aside:focus {
  outline: none;
}

a {
  color: #000;
  text-decoration: underline;
}

a.is-hover {
  text-decoration: none;
}

br.is-pcbr {
  display: block;
}

br.is-spbr {
  display: none;
}

br.is-tabbr {
  display: none;
}

br.is-spsbr {
  display: none;
}

@media screen and (max-width: 1023px) {
  br.is-pcbr {
    display: none;
  }
}
@media only screen and (max-width: 1023px) {
  br.is-tabbr {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  br.is-spbr {
    display: block;
  }
}
@media screen and (max-width: 370px) {
  br.is-spsbr {
    display: block;
  }
}
.is-none-fornow {
  opacity: 0;
  pointer-events: none;
}

:root {
  --wp--preset--font-size--x-large: clamp(20px, 1.8vw, 36px);
  --wp--preset--font-size--large: clamp(18px, 1.4vw, 26px);
  --wp--preset--font-size--medium: clamp(16px, 1.1vw, 22px);
  --wp--preset--font-size--small: clamp(12px, .8vw, 14px);
  --gtb--btn--min-width: 400px;
  --_global--container-max-width: var(--page-width);
}

.wp-block-heading {
  --_container-max-width: var(--_global--container-max-width);
  --_container-margin: var(--_global--container-margin);
  --_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
  --_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
  max-width: var(--_container-max-width) !important;
  margin-inline: auto;
  margin-bottom: var(--space-8);
  font-weight: 700;
  font-family: inherit;
  line-height: 1.6;
}
@media only screen and (max-width: 1920px) {
  .wp-block-heading {
    max-width: calc(100% - var(--block-padding-inline) * 2);
    margin-inline: auto;
  }
}
@media only screen and (max-width: 1023px) {
  .wp-block-heading {
    margin-left: calc(var(--_container-margin-left));
    margin-right: calc(var(--_container-margin-right));
  }
}
.wp-block-heading + * {
  margin-top: 0;
}
.wp-block-heading + .wp-block-heading {
  margin-top: var(--space-2);
}
.wp-block-heading span {
  line-height: inherit;
}

h1.wp-block-heading {
  margin-top: var(--space-6);
  font-size: 30px;
}

h2.wp-block-heading {
  margin-top: var(--space-12);
  font-size: clamp(24px, 2vw, 32px);
  background-color: #F7F7F7;
  padding: 0.4em 1em;
  border-left: 1px solid #000000;
  font-family: var(--font-main);
}
@media only screen and (max-width: 1210px) {
  h2.wp-block-heading {
    font-size: 22px;
  }
}

h3.wp-block-heading {
  margin-top: var(--space-6);
  font-size: clamp(18px, 1.4vw, 24px);
  background-color: #6F7070;
  color: #FFFFFF;
  padding: 0.4em 1em;
}

h4.wp-block-heading {
  margin-top: var(--space-3);
  font-size: clamp(22px, 1.5vw, 28px);
}
@media only screen and (max-width: 1210px) {
  h4.wp-block-heading {
    font-size: 16px;
  }
}

h5.wp-block-heading {
  margin-top: var(--space-2);
  font-size: 20px;
}
@media only screen and (max-width: 1210px) {
  h5.wp-block-heading {
    font-size: 16px;
  }
}

h6.wp-block-heading {
  margin-top: var(--space-1);
  font-size: 18px;
}
@media only screen and (max-width: 1210px) {
  h6.wp-block-heading {
    font-size: 14px;
  }
}

.wp-block-quote > *,
.wp-block-details > *,
.wp-block-column > *,
.wp-block-group > *,
.wp-block-group__inner-container > * {
  margin-top: var(--space-3);
}
.wp-block-quote > *:first-child,
.wp-block-details > *:first-child,
.wp-block-column > *:first-child,
.wp-block-group > *:first-child,
.wp-block-group__inner-container > *:first-child {
  margin-top: 0;
}

.wp-block-column.has-background,
.wp-block-columns.has-background,
.wp-block-group.has-background,
.wp-block-group__inner-container.has-background,
.wp-block-details.has-background,
.wp-block-gallery.has-background,
.wp-block-quote.has-background {
  padding: var(--space-3);
}
.wp-block-column hr,
.wp-block-columns hr,
.wp-block-group hr,
.wp-block-group__inner-container hr,
.wp-block-details hr,
.wp-block-gallery hr,
.wp-block-quote hr {
  width: 100%;
  margin: var(--space-2) 0;
}

.wp-block-image img {
  max-width: 100%;
  width: 100%;
}

.wp-block-list li {
  margin-bottom: 1.4em;
  line-height: 1.4;
  padding-left: 1em;
  list-style-type: disc;
  list-style-position: inside;
  text-indent: -1em;
}
.wp-block-list li:last-child {
  margin-bottom: 0;
}
.wp-block-list.is-style-marker-check li {
  position: relative;
  padding-left: 2.4em;
  list-style: none;
}
.wp-block-list.is-style-marker-check li::before {
  content: "";
  display: block;
  width: 1.4em;
  height: 1.4em;
  background-image: url(../img/cmn/icon-check.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0;
  top: 0;
}
.wp-block-list.is-style-sme-ordered-list-circle, .wp-block-list.is-style-sme-ordered-list-square {
  padding-left: 0;
}
.wp-block-list.is-style-sme-ordered-list-circle li, .wp-block-list.is-style-sme-ordered-list-square li {
  padding-left: 26px;
  list-style-type: none;
  text-indent: 0;
}
.wp-block-list.is-style-sme-ordered-list-circle li:before, .wp-block-list.is-style-sme-ordered-list-square li:before {
  left: 0;
}
.wp-block-list.is-style-sme-list-check li, .wp-block-list.is-style-sme-list-arrow li, .wp-block-list.is-style-sme-list-times li {
  list-style-type: none;
}
.wp-block-list.is-style-marker-check li {
  list-style-type: none;
  text-indent: 0;
}

ol.wp-block-list li {
  margin-bottom: 1.4em;
  line-height: 1.4;
  padding-left: 1em;
  text-indent: -1em;
  list-style-type: decimal;
  list-style-position: inside;
}
ol.wp-block-list li:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 1024px) {
  .wp-block-columns.is-layout-flex:not(.is-not-stacked-on-mobile) {
    flex-wrap: wrap !important;
  }
  .wp-block-columns.is-layout-flex:not(.is-not-stacked-on-mobile) .wp-block-column {
    flex-basis: 100% !important;
  }
}
@media only screen and (max-width: 1920px) {
  .wp-block-columns .wp-block-heading {
    width: 100%;
    margin-inline: 0;
  }
}
.wp-block-columns.is-layout-flex .wp-block-column {
  margin-top: 0;
}
@media only screen and (max-width: 781px) {
  .wp-block-columns.is-style-sp-reverse-flex {
    display: flex;
    flex-direction: column-reverse;
  }
}
.wp-block-columns.is-style-numbered {
  display: grid;
  grid-template-columns: 104px 1fr;
  gap: 0 50px;
  margin-bottom: 72px;
}
@media only screen and (max-width: 1024px) {
  .wp-block-columns.is-style-numbered {
    grid-template-columns: 100%;
  }
}
.wp-block-columns.is-style-numbered .wp-block-heading {
  margin: 1em 0;
}
.wp-block-columns.is-style-numbered .wp-block-column {
  width: 100%;
}
.wp-block-columns.is-style-numbered p {
  margin-top: 0;
}
@media only screen and (max-width: 1024px) {
  .wp-block-columns.is-style-numbered img {
    max-width: 96px;
  }
}
.wp-block-columns.is-style-numbered .wp-block-button.is-style-gear-icon {
  font-size: var(--wp--preset--font-size--medium);
  margin-inline: auto;
}
.wp-block-columns.is-style-numbered .wp-block-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px !important;
  justify-content: start;
  align-items: stretch;
}
@media only screen and (max-width: 768px) {
  .wp-block-columns.is-style-numbered .wp-block-gallery {
    display: flex !important;
    flex-wrap: nowrap !important;
  }
  .wp-block-columns.is-style-numbered .wp-block-gallery > * {
    flex: 1;
  }
}
.wp-block-columns.is-style-numbered .wp-block-gallery .wp-block-image {
  width: 100% !important;
  aspect-ratio: 42/31;
}
.wp-block-columns.is-style-shop {
  font-size: var(--wp--preset--font-size--medium);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center !important;
  justify-content: space-between;
  background-color: var(--color-bgGray01);
  padding: 24px 32px;
}
@media only screen and (max-width: 1024px) {
  .wp-block-columns.is-style-shop {
    padding: 20px 20px;
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-columns.is-style-shop {
    padding: 12px 20px;
  }
}
.wp-block-columns.is-style-shop p {
  color: var(--color-white);
  margin: 0;
}
.wp-block-columns.is-style-shop p:first-child {
  font-size: 1.2em;
  font-weight: 700;
}
.wp-block-columns.is-style-shop p:nth-child(2) {
  font-size: 1em;
}
.wp-block-columns.is-style-shop .wp-block-snow-monkey-blocks-buttons,
.wp-block-columns.is-style-shop .wp-block-buttons {
  display: flex;
  flex-direction: row;
  gap: 24px;
}
@media only screen and (max-width: 1280px) {
  .wp-block-columns.is-style-shop .wp-block-snow-monkey-blocks-buttons,
  .wp-block-columns.is-style-shop .wp-block-buttons {
    gap: 16px;
  }
}
@media only screen and (max-width: 1156px) {
  .wp-block-columns.is-style-shop .wp-block-snow-monkey-blocks-buttons,
  .wp-block-columns.is-style-shop .wp-block-buttons {
    gap: 8px;
  }
}
.wp-block-columns.is-style-shop .wp-block-snow-monkey-blocks-btn {
  width: auto;
}

@media only screen and (max-width: 781px) {
  .wp-block-column .wp-block-image {
    max-width: 100%;
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-column.is-style-sp-flex {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-3);
  }
  .wp-block-column.is-style-sp-flex * {
    margin-top: 0;
  }
}

.wp-block-details summary + * {
  margin-top: 0;
}

.wp-block-embed.is-type-video iframe {
  width: 100%;
  height: 100%;
  display: block;
  aspect-ratio: 16/9;
}
.wp-block-embed.is-type-wp-embed iframe {
  width: 100%;
}

.wp-block-group.is-layout-flex {
  gap: var(--space-4);
}
@media only screen and (max-width: 781px) {
  .wp-block-group.is-style-sp-vertical-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--space-4);
  }
}

.wp-block-table.is-style-gray-color table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: center;
  border: 1px solid var(--color-white);
}
.wp-block-table.is-style-gray-color th, .wp-block-table.is-style-gray-color td {
  border: 1px solid var(--color-white);
  font-size: inherit;
  font-weight: inherit;
}
.wp-block-table.is-style-gray-color tr {
  font-size: clamp(1.8rem, 1.6vw, 2.6rem);
  font-weight: 700;
}
.wp-block-table.is-style-gray-color thead {
  border-bottom: none;
  font-size: inherit;
}
.wp-block-table.is-style-gray-color thead tr {
  background-color: rgba(112, 112, 112, 0.5);
  color: var(--color-white);
}
.wp-block-table.is-style-gray-color tbody tr:nth-child(1) {
  background-color: rgba(112, 112, 112, 0.2);
}
.wp-block-table.is-style-gray-color tbody tr:nth-child(2) {
  background-color: rgba(112, 112, 112, 0.1);
}
.wp-block-table.is-style-gray-color tbody tr:nth-child(3) {
  background-color: rgba(112, 112, 112, 0.7);
  color: var(--color-white);
  font-size: 32px;
}

.wp-block-button,
.wp-block-snow-monkey-blocks-btn {
  max-width: var(--gtb--btn--min-width);
  width: 100%;
  font-size: inherit;
}
.wp-block-button.is-style-triangle-icon .wp-block-button__link,
.wp-block-button.is-style-triangle-icon .smb-btn, .wp-block-button.is-style-gear-icon .wp-block-button__link,
.wp-block-button.is-style-gear-icon .smb-btn,
.wp-block-snow-monkey-blocks-btn.is-style-triangle-icon .wp-block-button__link,
.wp-block-snow-monkey-blocks-btn.is-style-triangle-icon .smb-btn,
.wp-block-snow-monkey-blocks-btn.is-style-gear-icon .wp-block-button__link,
.wp-block-snow-monkey-blocks-btn.is-style-gear-icon .smb-btn {
  display: inline-flex;
  min-width: 14px;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding: 1.4em 1.6em;
  border-radius: 0.8em;
  color: var(--color-white);
  line-height: 1;
  font-weight: 700;
  font-size: inherit;
}
.wp-block-button.is-style-triangle-icon .wp-block-button__link::before,
.wp-block-button.is-style-triangle-icon .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-triangle-icon .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-triangle-icon .smb-btn::before {
  content: "";
  display: inline-block;
  min-width: 14px;
  width: 0.6em;
  margin-right: 0.6em;
  aspect-ratio: 11/13;
  background-color: var(--color-white);
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.wp-block-button.is-style-gear-icon .wp-block-button__link::before,
.wp-block-button.is-style-gear-icon .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-gear-icon .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-gear-icon .smb-btn::before {
  content: "";
  display: inline-block;
  min-width: 16px;
  width: 1.2em;
  margin-right: 0.6em;
  aspect-ratio: 1/1;
  background-color: var(--color-white);
  -webkit-mask-image: url(../img/cmn/icon-gear.svg);
          mask-image: url(../img/cmn/icon-gear.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
.wp-block-button.is-style-reservation .wp-block-button__link,
.wp-block-button.is-style-reservation .smb-btn, .wp-block-button.is-style-tel .wp-block-button__link,
.wp-block-button.is-style-tel .smb-btn,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn,
.wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link,
.wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--color-black);
  color: var(--color-white);
  font-size: 13px;
  font-weight: 600;
  border-radius: 4px;
  line-height: 1;
  padding: 1em 2em;
  white-space: nowrap;
}
@media only screen and (max-width: 1156px) {
  .wp-block-button.is-style-reservation .wp-block-button__link,
  .wp-block-button.is-style-reservation .smb-btn, .wp-block-button.is-style-tel .wp-block-button__link,
  .wp-block-button.is-style-tel .smb-btn,
  .wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link,
  .wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn,
  .wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link,
  .wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn {
    padding: 0.6em 1em 1em;
    font-size: 10px;
  }
}
.wp-block-button.is-style-reservation .wp-block-button__link span,
.wp-block-button.is-style-reservation .smb-btn span, .wp-block-button.is-style-tel .wp-block-button__link span,
.wp-block-button.is-style-tel .smb-btn span,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link span,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn span,
.wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link span,
.wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn span {
  font-size: inherit;
}
.wp-block-button.is-style-reservation .wp-block-button__link::before,
.wp-block-button.is-style-reservation .smb-btn::before, .wp-block-button.is-style-tel .wp-block-button__link::before,
.wp-block-button.is-style-tel .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn::before {
  content: "";
  display: none;
  width: 2.4em;
  margin-right: 0.6em;
  aspect-ratio: 1/1;
  background-color: var(--color-white);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}
@media only screen and (max-width: 1156px) {
  .wp-block-button.is-style-reservation .wp-block-button__link::before,
  .wp-block-button.is-style-reservation .smb-btn::before, .wp-block-button.is-style-tel .wp-block-button__link::before,
  .wp-block-button.is-style-tel .smb-btn::before,
  .wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link::before,
  .wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn::before,
  .wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link::before,
  .wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn::before {
    display: block;
    margin-right: 0;
  }
}
.wp-block-button.is-style-reservation .wp-block-button__link::before,
.wp-block-button.is-style-reservation .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-reservation .smb-btn::before {
  -webkit-mask-image: url(../img/cmn/icon-shop.svg);
          mask-image: url(../img/cmn/icon-shop.svg);
}
.wp-block-button.is-style-tel .wp-block-button__link::before,
.wp-block-button.is-style-tel .smb-btn::before,
.wp-block-snow-monkey-blocks-btn.is-style-tel .wp-block-button__link::before,
.wp-block-snow-monkey-blocks-btn.is-style-tel .smb-btn::before {
  -webkit-mask-image: url(../img/cmn/icon-tel.svg);
          mask-image: url(../img/cmn/icon-tel.svg);
}

/*---------------------------------------------------
snow monkey
-----------------------------------------------------*/
.sme-line-height {
  display: inline-flex;
  align-items: center;
  gap: 1em;
}

.wp-block-snow-monkey-blocks-information .wp-block-snow-monkey-blocks-information-item {
  max-width: 100vw;
  width: 100%;
  margin: 0;
}
.wp-block-snow-monkey-blocks-information .wp-block-snow-monkey-blocks-information-item:not(:first-child) {
  margin: 0;
}
.wp-block-snow-monkey-blocks-information .wp-block-snow-monkey-blocks-information-item.is-style-bg-gray {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
}
.wp-block-snow-monkey-blocks-information .smb-information__item__label {
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  padding: clamp(12px, 2.8vw, 52px) clamp(20px, 2.8vw, 52px);
}
.wp-block-snow-monkey-blocks-information .smb-information__item__body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(12px, 2.8vw, 52px) clamp(20px, 2.8vw, 52px);
}
.wp-block-snow-monkey-blocks-information .smb-information__item__body p {
  width: 100%;
}
.wp-block-snow-monkey-blocks-information .smb-information__item__body p:first-child {
  margin-top: 0;
}
.wp-block-snow-monkey-blocks-information .smb-information__item__body p:last-child {
  margin-bottom: 0;
}

.wp-block-snow-monkey-blocks-section {
  padding-top: 110px;
  padding-bottom: 130px;
  padding-inline: var(--block-padding-inline);
  font-family: var(--font-main);
}
@media only screen and (max-width: 781px) {
  .wp-block-snow-monkey-blocks-section {
    padding-top: 72px;
    padding-bottom: 80px;
  }
}
.wp-block-snow-monkey-blocks-section * {
  font-family: inherit;
}
.wp-block-snow-monkey-blocks-section .c-container {
  justify-content: space-between;
  width: 100%;
}
.wp-block-snow-monkey-blocks-section .smb-section__contents-wrapper {
  max-width: 100%;
  width: 100%;
}
.wp-block-snow-monkey-blocks-section .smb-section__header {
  margin-bottom: 72px;
}
@media only screen and (max-width: 1024px) {
  .wp-block-snow-monkey-blocks-section .wp-block-buttons,
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons {
    justify-content: center;
  }
}
@media only screen and (max-width: 1024px) {
  .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-button:nth-child(2)), .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)),
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-button:nth-child(2)),
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-button:nth-child(2)), .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)),
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-button:nth-child(2)),
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) {
    grid-template-columns: 100%;
  }
  .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button,
  .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-button:nth-child(2)) .wp-block-snow-monkey-blocks-btn, .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) .wp-block-button,
  .wp-block-snow-monkey-blocks-section .wp-block-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) .wp-block-snow-monkey-blocks-btn,
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-button:nth-child(2)) .wp-block-button,
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-button:nth-child(2)) .wp-block-snow-monkey-blocks-btn,
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) .wp-block-button,
  .wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-buttons:has(.wp-block-snow-monkey-blocks-btn:nth-child(2)) .wp-block-snow-monkey-blocks-btn {
    margin-inline: auto;
  }
}
.wp-block-snow-monkey-blocks-section .wp-block-button,
.wp-block-snow-monkey-blocks-section .wp-block-snow-monkey-blocks-btn {
  font-size: var(--wp--preset--font-size--medium);
}
.wp-block-snow-monkey-blocks-section.is-style-ttl-line .smb-section__body {
  padding-inline: 56px;
}
@media only screen and (max-width: 781px) {
  .wp-block-snow-monkey-blocks-section.is-style-ttl-line .smb-section__body {
    padding-inline: 0;
  }
}
.wp-block-snow-monkey-blocks-section.is-style-ttl-line h2 {
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
  font-size: var(--wp--preset--font-size--x-large);
  font-weight: 700;
  font-family: inherit;
}
.wp-block-snow-monkey-blocks-section.is-style-ttl-line h2::before, .wp-block-snow-monkey-blocks-section.is-style-ttl-line h2::after {
  content: "";
  display: inline-block;
  width: calc(var(--page-width) / 2 - 50% - var(--_container-margin-left));
  height: 1px;
  background-color: var(--color-black);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.wp-block-snow-monkey-blocks-section.is-style-ttl-line h2::before {
  right: calc(100% + 1em);
}
.wp-block-snow-monkey-blocks-section.is-style-ttl-line h2::after {
  left: calc(100% + 1em);
}

.wp-block-snow-monkey-blocks-step .smb-step__body li {
  margin-left: clamp(58px, 3.6vw, 72px);
  padding-left: 40px;
}
.wp-block-snow-monkey-blocks-step .smb-step__body::before {
  left: clamp(29px, 1.8vw, 36px);
}
.wp-block-snow-monkey-blocks-step .smb-step__item__title {
  font-size: 26px;
}
.wp-block-snow-monkey-blocks-step .smb-step__item__title * {
  font-size: inherit;
}
.wp-block-snow-monkey-blocks-step .smb-step__item__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.4em;
  height: 2.4em;
  font-size: clamp(24px, 1.5vw, 30px);
  right: calc(100% + 40px);
  left: auto;
}
.wp-block-snow-monkey-blocks-step .smb-step__item__number::before {
  font-size: inherit;
}
.wp-block-snow-monkey-blocks-step .smb-step__item__summary {
  padding-bottom: var(--space-5);
}
.wp-block-snow-monkey-blocks-step .smb-step__item__summary > * {
  margin-top: var(--space-4);
}
.wp-block-snow-monkey-blocks-step .smb-step__item__summary > *:first-child {
  margin-top: 0;
}

.wp-block-snow-monkey-blocks-faq {
  border: none;
}
.wp-block-snow-monkey-blocks-faq .smb-faq__item {
  border: none;
  padding: var(--space-4) 0;
}
.wp-block-snow-monkey-blocks-faq .smb-faq__item__question,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer {
  display: flex;
  gap: 12px;
  font-size: clamp(16px, 2vw, 26px);
  font-weight: 700;
}
.wp-block-snow-monkey-blocks-faq .smb-faq__item__question .smb-faq__item__question__label,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__question .smb-faq__item__answer__label,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer .smb-faq__item__question__label,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer .smb-faq__item__answer__label {
  display: inline-flex;
}
.wp-block-snow-monkey-blocks-faq .smb-faq__item__question .smb-faq__item__question__label::after,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__question .smb-faq__item__answer__label::after,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer .smb-faq__item__question__label::after,
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer .smb-faq__item__answer__label::after {
  content: ". ";
  display: inline;
  font-size: inherit;
}
.wp-block-snow-monkey-blocks-faq .smb-faq__item__answer {
  font-size: clamp(15px, 1.4vw, 18px);
  font-weight: 500;
}

.wp-block-snow-monkey-blocks-box .smb-box__body {
  padding: var(--space-4);
}
.wp-block-snow-monkey-blocks-box .smb-box__body > * {
  margin-top: var(--space-3);
}
.wp-block-snow-monkey-blocks-box .smb-box__body > *:first-child {
  margin-top: 0;
}

.wp-block-snow-monkey-blocks-items.is-style-has-label .c-row {
  display: grid;
  width: 100%;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0;
}
.wp-block-snow-monkey-blocks-items.is-style-has-label .c-row__col {
  max-width: 100%;
  text-align: left;
}
.wp-block-snow-monkey-blocks-items.is-style-has-label .c-row__col p {
  margin: 0;
  line-height: 1.4;
}
.wp-block-snow-monkey-blocks-items.is-style-has-label .c-row__col:first-child p {
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 500;
  line-height: 1.2;
  padding: 0.6em 1em;
  border-radius: 0.2em;
  background-color: #6A6A6A;
  color: var(--color-white);
}
.wp-block-snow-monkey-blocks-items.is-style-has-label .c-row__col:nth-child(2) {
  margin-left: 0.6em;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color > .c-row {
  display: flex;
  align-items: stretch;
  gap: 1px;
  flex-wrap: nowrap;
}
@media only screen and (max-width: 814px) {
  .wp-block-snow-monkey-blocks-items.is-style-gray-color > .c-row {
    flex-direction: column;
    gap: 24px;
  }
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color > .c-row .c-row__col {
  margin-bottom: 0;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free {
  padding: 0;
}
@media only screen and (max-width: 814px) {
  .wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free {
    max-width: 372px;
    width: 100%;
    margin-inline: auto;
  }
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item {
  height: 100%;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item__body {
  display: grid;
  grid-template-rows: auto 1fr auto auto;
  height: 100%;
  justify-content: stretch;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item__body p {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: 700;
  height: 100%;
  width: 100%;
  margin: 0;
  font-size: clamp(1.4rem, 0.8333333333vw, 1.6rem);
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item__body p:nth-child(odd) {
  background-color: #FFF;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item__body p:nth-child(even) {
  background-color: #F0F0F0;
  padding: 0.6em 1em;
}
.wp-block-snow-monkey-blocks-items.is-style-gray-color .wp-block-snow-monkey-blocks-items-item-free .smb-items__item__body p:first-child {
  background-color: #6A6A6A;
  color: var(--color-white);
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .c-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3.2vw 3.8vw;
  padding-inline: 56px;
  justify-content: center;
  align-items: stretch;
  margin-bottom: 0;
}
@media only screen and (max-width: 1440px) {
  .wp-block-snow-monkey-blocks-items.is-style-img-gray .c-row {
    gap: 3.2vw 3.8vw;
  }
}
@media only screen and (max-width: 781px) {
  .wp-block-snow-monkey-blocks-items.is-style-img-gray .c-row {
    grid-template-columns: 100%;
    gap: 24px 0;
  }
}
@media screen and (max-width: 540px) {
  .wp-block-snow-monkey-blocks-items.is-style-img-gray .c-row {
    padding-inline: 0px;
  }
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .wp-block-snow-monkey-blocks-items-item-free {
  max-width: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item {
  height: 100%;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body {
  height: 100%;
  padding: 0 0 32px;
  border-radius: 10px;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body > * {
  line-height: 1.6;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body > *:not(:first-child) {
  padding-inline: 32px;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body p {
  margin: 0;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body p:first-of-type {
  margin-bottom: 12px;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body figure {
  display: block;
  width: 100%;
  aspect-ratio: 65/19;
  overflow: hidden;
  position: relative;
  margin-bottom: 24px;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body figure img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.wp-block-snow-monkey-blocks-items.is-style-img-gray .smb-items__item__body .components-resizable-box__container {
  width: 100% !important;
  height: 100% !important;
  position: relative;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.l-container {
  max-width: 100vw;
  padding-left: 0;
  padding-right: var(--cvnav-width);
}
@media only screen and (max-width: 1023px) {
  .l-container {
    max-width: 100vw;
    padding-inline: 0;
  }
}
@media only screen and (max-width: 767px) {
  .l-container {
    overflow: hidden;
  }
}

.l-main {
  max-width: calc(var(--page-width) + var(--side-margin) * 2);
  width: 100%;
  padding-inline: var(--side-margin);
  margin-top: var(--header-height);
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .l-main {
    margin-top: calc(var(--header-height) + var(--shopnav-height));
  }
}
.home .l-main {
  max-width: calc(var(--top-width) + var(--side-margin) * 2);
  margin-top: 0;
}
@media only screen and (max-width: 1023px) {
  .home .l-main {
    margin-top: calc(var(--header-height) + var(--shopnav-height));
  }
}
.toyopet-top .l-main, .netz-top .l-main {
  max-width: calc(var(--top-width) + var(--side-margin) * 2);
  margin-top: 0;
}
@media only screen and (max-width: 1023px) {
  .toyopet-top .l-main, .netz-top .l-main {
    margin-top: calc(var(--header-height));
  }
}
@media only screen and (max-width: 1023px) {
  .toyopet-cmn .l-main, .netz-cmn .l-main {
    margin-top: calc(var(--header-height));
  }
}
.single-shops .l-main {
  max-width: calc(var(--page-wide-width) + var(--side-margin) * 2);
  width: 100%;
  margin-top: var(--header-height);
}
.l-main--gutenberg {
  max-width: 100%;
  padding-inline: 0;
}
.l-main--car {
  max-width: 100%;
  padding-inline: 0;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
/*---------------------------------------------------
square
-----------------------------------------------------*/
.c-btn__square {
  display: inline-block;
  max-width: 48rem;
  width: 100%;
  padding: 1.2em 2.4em;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 500;
  border: 1px solid var(--color-lineGray01);
  text-align: center;
  text-decoration: none;
  color: var(--color-black);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__square.is-rounded {
  border-radius: 14px;
}
.c-btn__square.is-thin {
  padding: 1rem;
}
.c-btn__square.is-hover {
  background-color: rgba(225, 225, 225, 0.1);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*---------------------------------------------------
double line
-----------------------------------------------------*/
.c-btn__doubleline {
  display: inline-flex;
  align-items: center;
  gap: 1.6em;
  padding: 1.2em 4px;
  font-size: 1.4rem;
  line-height: 1.2;
  font-family: var(--font-btn);
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  border-top: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-btn__doubleline {
    font-size: 1.2rem;
    border: 1px solid var(--color-black);
    padding: 1em 0.8em;
  }
  .c-btn__doubleline i {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .c-btn__doubleline.is-hover {
    opacity: 0.7;
    background-color: var(--color-txt-gray02);
    transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
  }
}
.c-btn__doubleline--white {
  border-color: var(--color-white);
  color: var(--color-white);
}

/*---------------------------------------------------
glass
-----------------------------------------------------*/
.c-btn__glass {
  display: inline-flex;
  width: 100%;
  max-width: 42rem;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  line-height: 1;
  padding: 2em;
  text-decoration: none;
  position: relative;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__glass::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  background-color: var(--color-white);
  filter: drop-shadow(0px 10px 20px rgba(36, 62, 85, 0.3));
  opacity: 0.5;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__glass i {
  width: 2.8rem;
  background-color: var(--color-black);
}
.c-btn__glass.is-hover {
  transform: scale(0.99);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__glass.is-hover::before {
  filter: drop-shadow(0px 5px 10px rgba(36, 62, 85, 0.3));
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__glass.is-hover i {
  width: 2.8rem;
  background-color: var(--color-black);
}
@media only screen and (max-width: 1023px) {
  .c-btn__glass {
    border: 1px solid var(--color-black);
    padding: 1.2em;
  }
  .c-btn__glass::before {
    display: none;
  }
}

/*---------------------------------------------------
under arrow
-----------------------------------------------------*/
.c-btn__underarrow {
  display: inline-block;
  width: 100%;
  line-height: 1;
  font-size: 1.6rem;
  line-height: 1.2;
  font-family: var(--font-btn);
  font-weight: 700;
  text-decoration: none;
  padding: 1.2em 0;
  color: var(--color-white);
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .c-btn__underarrow {
    font-size: 1.2rem;
  }
}
.c-btn__underarrow span {
  display: block;
  width: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
}
.c-btn__underarrow span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid var(--color-white);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__underarrow span::before {
  content: "";
  display: block;
  width: 2rem;
  height: 1px;
  background-color: var(--color-white);
  transform-origin: center right;
  transform: rotate(45deg);
  margin-inline: auto 0;
  margin-bottom: -1px;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__underarrow.is-hover span, .is-hover .c-btn__underarrow span {
  animation: arrowSlide 0.8s ease forwards;
}
.c-btn__underarrow--black {
  color: var(--color-black);
}
.c-btn__underarrow--black span::after,
.c-btn__underarrow--black span::before {
  background-color: var(--color-black);
  border-color: var(--color-black);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__underarrow--toyopet {
  background-color: var(--color-main-toyopet);
  padding: 1.2em;
}
.c-btn__underarrow--netz {
  background-color: var(--color-main-netz);
  padding: 1.2em;
}

@keyframes arrowSlide {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  49% {
    transform: translateX(100%);
    opacity: 1;
  }
  50% {
    transform: translateX(100%);
    opacity: 0;
  }
  51% {
    transform: translateX(-100%);
    opacity: 1;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
/*---------------------------------------------------
car cv
-----------------------------------------------------*/
.c-btn__carcv {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1/1;
  padding: 0.2rem 0.8rem 0.8rem;
  color: var(--color-white);
  font-size: clamp(1rem, 0.6770833333vw, 1.2rem);
  line-height: 1.2;
  text-decoration: none;
  border-radius: 6px;
  background-color: var(--color-lineGray01);
  text-align: center;
  white-space: nowrap;
}
.c-btn__carcv i {
  display: block;
  width: 70%;
}

div.c-btn__carcv {
  opacity: 0.5;
}

/*---------------------------------------------------
pickup
-----------------------------------------------------*/
.c-btn__pickup {
  display: inline-grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  width: 100%;
  padding: 1.2em 4px;
  font-size: 1.6rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
  font-family: var(--font-btn);
  font-weight: 700;
  text-decoration: none;
  border-top: 1px solid var(--color-lineGray02);
  border-bottom: 1px solid var(--color-lineGray02);
  position: relative;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-btn__pickup {
    font-size: 1.2rem;
    padding: 1.5em;
    border: 1px solid var(--color-lineGray02);
    gap: 0.4rem;
  }
}
.c-btn__pickup span {
  font-size: 1.2rem;
  color: var(--color-txt-gray02);
}
@media only screen and (max-width: 1440px) {
  .c-btn__pickup span {
    font-size: 1rem;
  }
}
.c-btn__pickup .c-icon {
  width: auto;
  height: 2.2em;
  background-color: var(--color-black);
}
.c-btn__pickup .c-arrow__type02 {
  width: -moz-fit-content;
  width: fit-content;
  justify-self: end;
}
.c-btn__pickup::before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 1px;
  border-top: 1px solid var(--color-black);
  position: absolute;
  top: -1px;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-btn__pickup::before {
    display: none;
  }
}
.c-btn__pickup.is-hover {
  color: var(--color-lineGray01);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__pickup.is-hover::before {
  animation: barSlide 0.6s ease forwards;
}
.c-btn__pickup.is-hoverOut::before {
  animation: barSlideReverse 0.6s ease forwards;
}
.c-btn__pickup--white {
  border-color: var(--color-white);
  color: var(--color-white);
}
.c-btn__pickup--square {
  border: 1px solid var(--color-lineGray02);
  padding: 1.2em;
}
.c-btn__pickup--square::before {
  display: none;
}

/*---------------------------------------------------
round
-----------------------------------------------------*/
.c-btn__round {
  border-radius: 9999px;
  width: 100%;
  text-align: center;
  padding: 0.4rem 1.6rem;
  font-size: 1.4rem;
  display: block;
  border-style: solid;
  border-width: 1px;
  text-decoration: none;
  font-weight: bold;
}
.c-btn__round.is-toyopet {
  border-color: var(--color-main-toyopet);
  color: var(--color-main-toyopet);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__round.is-toyopet.is-hover {
  background-color: var(--color-main-toyopet);
  color: var(--color-white);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-btn__round.is-netz {
  border-color: var(--color-main-netz);
  color: var(--color-main-netz);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-btn__round.is-netz.is-hover {
  background-color: var(--color-main-netz);
  color: var(--color-white);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*---------------------------------------------------
animation
-----------------------------------------------------*/
@keyframes barSlide {
  0% {
    left: 0;
    width: 2.4rem;
  }
  50% {
    left: 0;
    width: 100%;
  }
  51% {
    left: auto;
    right: 0;
    width: 100%;
  }
  100% {
    left: auto;
    right: 0;
    width: 2.4rem;
  }
}
@keyframes barSlideReverse {
  0% {
    right: 0;
    left: auto;
    width: 2.4rem;
  }
  50% {
    right: 0;
    left: auto;
    width: 100%;
  }
  51% {
    right: auto;
    left: 0;
    width: 100%;
  }
  100% {
    right: auto;
    left: 0;
    width: 2.4rem;
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
:root {
  --hamb-gap: .8rem;
}
@media only screen and (max-width: 1023px) {
  :root {
    --hamb-gap: 1.1rem;
  }
}
@media only screen and (max-width: 520px) {
  :root {
    --hamb-gap: .8rem;
  }
}

.c-hamb {
  display: flex;
  width: 8rem;
  height: 100%;
  align-items: center;
  justify-content: center;
  background-color: var(--color-black);
  padding: 2rem;
}
@media only screen and (max-width: 1023px) {
  .c-hamb {
    background-color: transparent;
  }
}
.c-hamb .c-hamb__lines {
  display: block;
  width: 2rem;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .c-hamb .c-hamb__lines {
    width: 3rem;
  }
}
@media only screen and (max-width: 520px) {
  .c-hamb .c-hamb__lines {
    width: 2.4rem;
  }
}
.c-hamb .c-hamb__lines span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: var(--color-white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 1023px) {
  .c-hamb .c-hamb__lines span {
    height: 5px;
  }
}
@media only screen and (max-width: 520px) {
  .c-hamb .c-hamb__lines span {
    height: 4px;
  }
}
.c-hamb .c-hamb__lines span:nth-child(1) {
  top: calc(50% - var(--hamb-gap));
}
.c-hamb .c-hamb__lines span:nth-child(3) {
  top: calc(50% + var(--hamb-gap));
}
@media only screen and (max-width: 1023px) {
  .cmn-page .c-hamb span, .home .c-hamb span {
    background-color: var(--color-black);
    transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
  }
}
.c-hamb.is-open span:nth-child(1) {
  animation: openHambTop 0.5s ease-in-out forwards;
}
.c-hamb.is-open span:nth-child(2) {
  animation: openHambMiddle 0.5s ease-in-out forwards;
}
.c-hamb.is-open span:nth-child(3) {
  animation: openHambBottom 0.5s ease-in-out forwards;
}
.c-hamb.is-closing span:nth-child(1) {
  animation: closeHambTop 0.5s ease-in forwards;
}
.c-hamb.is-closing span:nth-child(2) {
  animation: closeHambMiddle 0.5s ease-in forwards;
}
.c-hamb.is-closing span:nth-child(3) {
  animation: closeHambBottom 0.5s ease-in forwards;
}
.c-hamb.is-closeBtn span:nth-child(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-40deg);
}
.c-hamb.is-closeBtn span:nth-child(2) {
  opacity: 0;
}
.c-hamb.is-closeBtn span:nth-child(3) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(40deg);
}
@media only screen and (max-width: 767px) {
  .home .c-hamb.is-closeBtn span, .cmn-page .c-hamb.is-closeBtn span, .shops .c-hamb.is-closeBtn span {
    background-color: var(--color-black);
  }
}

/*---------------------------------------------------
animation
-----------------------------------------------------*/
@keyframes openHambTop {
  0% {
    top: calc(50% - var(--hamb-gap));
    transform: translate(-50%, -50%) rotate(0);
  }
  30% {
    top: 50%;
  }
  100% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-40deg);
  }
}
@keyframes openHambMiddle {
  0% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  31% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes openHambBottom {
  0% {
    top: calc(50% + var(--hamb-gap));
    transform: translate(-50%, -50%) rotate(0);
  }
  30% {
    top: 50%;
  }
  100% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(40deg);
  }
}
@keyframes closeHambTop {
  0% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(-40deg);
  }
  30% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    top: calc(50% - var(--hamb-gap));
    transform: translate(-50%, -50%) rotate(0);
  }
}
@keyframes closeHambMiddle {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  31% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes closeHambBottom {
  0% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(40deg);
  }
  30% {
    top: 50%;
    transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    top: calc(50% + var(--hamb-gap));
    transform: translate(-50%, -50%) rotate(0);
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-heading__comb {
  text-align: center;
}
.c-heading__comb--left {
  text-align: left;
}
@media only screen and (max-width: 1023px) {
  .c-heading__comb--spleft {
    text-align: left;
  }
}
.c-heading__comb--white {
  color: var(--color-white);
}

.c-heading__comb__en {
  font-family: var(--font-en);
  font-size: 5.3rem;
  font-weight: bold;
  line-height: 1;
}
@media only screen and (max-width: 1200px) {
  .c-heading__comb__en {
    font-size: 4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .c-heading__comb__en {
    font-size: 2.8rem;
  }
}
.c-heading__comb__en span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  white-space: nowrap;
}

.c-heading__comb__ja {
  font-family: var(--font-main);
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 1em;
}
@media only screen and (max-width: 1200px) {
  .c-heading__comb__ja {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .c-heading__comb__ja {
    font-size: 1rem;
  }
}
.c-heading__comb__ja--sns {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.c-heading__comb__ja--sns span {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
.home .c-heading__comb__ja--sns span {
  font-size: 1.6rem;
  font-weight: 700;
}
.c-heading__comb__ja--sns i {
  width: 2.8em;
  margin-left: -0.6rem;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-icon {
  display: inline-block;
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-white);
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-icon.is-hover, .is-hover .c-icon, .c-icon.is-colored, .is-colored .c-icon {
  background-color: var(--color-txt-gray03);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-icon--black {
  background-color: var(--color-black);
}
.c-icon--x {
  -webkit-mask-image: url("../img/cmn/icon-x.svg");
          mask-image: url("../img/cmn/icon-x.svg");
}
.c-icon--instagram {
  -webkit-mask-image: url("../img/cmn/icon-instagram.svg");
          mask-image: url("../img/cmn/icon-instagram.svg");
}
.c-icon--facebook {
  -webkit-mask-image: url("../img/cmn/icon-facebook.svg");
          mask-image: url("../img/cmn/icon-facebook.svg");
}
.c-icon--youtube {
  -webkit-mask-image: url("../img/cmn/icon-youtube.svg");
          mask-image: url("../img/cmn/icon-youtube.svg");
}
.c-icon--line {
  -webkit-mask-image: url("../img/cmn/icon-line.svg");
          mask-image: url("../img/cmn/icon-line.svg");
}
.c-icon--test {
  -webkit-mask-image: url("../img/cmn/icon-reserve-test.svg");
          mask-image: url("../img/cmn/icon-reserve-test.svg");
}
.c-icon--visit {
  -webkit-mask-image: url("../img/cmn/icon-reserve-visit.svg");
          mask-image: url("../img/cmn/icon-reserve-visit.svg");
}
.c-icon--search {
  -webkit-mask-image: url("../img/cmn/icon-search.svg");
          mask-image: url("../img/cmn/icon-search.svg");
}
.c-icon--ucarsearch {
  -webkit-mask-image: url("../img/cmn/icon-ucarsearch.svg");
          mask-image: url("../img/cmn/icon-ucarsearch.svg");
}
.c-icon--maintenance {
  -webkit-mask-image: url("../img/cmn/icon-maintenance.svg");
          mask-image: url("../img/cmn/icon-maintenance.svg");
}
.c-icon--shop {
  -webkit-mask-image: url("../img/cmn/icon-shop.svg");
          mask-image: url("../img/cmn/icon-shop.svg");
}
.c-icon--access {
  -webkit-mask-image: url("../img/cmn/icon-access.svg");
          mask-image: url("../img/cmn/icon-access.svg");
}
.c-icon--recommend {
  -webkit-mask-image: url("../img/cmn/icon-recommend.svg");
          mask-image: url("../img/cmn/icon-recommend.svg");
}
.c-icon--topics {
  -webkit-mask-image: url("../img/cmn/icon-topics.svg");
          mask-image: url("../img/cmn/icon-topics.svg");
}
.c-icon--lupe {
  -webkit-mask-image: url("../img/cmn/icon-lupe.svg");
          mask-image: url("../img/cmn/icon-lupe.svg");
}
.c-icon--tel {
  -webkit-mask-image: url("../img/cmn/icon-tel.svg");
          mask-image: url("../img/cmn/icon-tel.svg");
}
.c-icon--freedial {
  aspect-ratio: 64/42;
  -webkit-mask-image: url("../img/cmn/icon-freedial.svg");
          mask-image: url("../img/cmn/icon-freedial.svg");
}
.c-icon--mail {
  aspect-ratio: 64/44;
  -webkit-mask-image: url("../img/cmn/icon-mail.svg");
          mask-image: url("../img/cmn/icon-mail.svg");
}
.c-icon--newcar {
  aspect-ratio: 66/44;
  -webkit-mask-image: url("../img/cmn/pict-new.svg");
          mask-image: url("../img/cmn/pict-new.svg");
}
.c-icon--usedcar {
  aspect-ratio: 69/44;
  -webkit-mask-image: url("../img/cmn/pict-used.svg");
          mask-image: url("../img/cmn/pict-used.svg");
}
.c-icon--welfare {
  aspect-ratio: 97/44;
  -webkit-mask-image: url("../img/cmn/pict-welfare.svg");
          mask-image: url("../img/cmn/pict-welfare.svg");
}
.c-icon--commercial {
  aspect-ratio: 63/44;
  -webkit-mask-image: url("../img/cmn/pict-commercial.svg");
          mask-image: url("../img/cmn/pict-commercial.svg");
}
.c-icon--shijo {
  aspect-ratio: 56/52;
  -webkit-mask-image: url("../img/cmn/icon-shijo.svg");
          mask-image: url("../img/cmn/icon-shijo.svg");
}
.c-icon--mitsumori {
  aspect-ratio: 56/52;
  -webkit-mask-image: url("../img/cmn/icon-mitsumori.svg");
          mask-image: url("../img/cmn/icon-mitsumori.svg");
}
.c-icon--shodan {
  aspect-ratio: 56/52;
  -webkit-mask-image: url("../img/cmn/icon-shodan.svg");
          mask-image: url("../img/cmn/icon-shodan.svg");
}
.c-icon--sharyo {
  aspect-ratio: 56/52;
  -webkit-mask-image: url("../img/cmn/icon-sharyo.svg");
          mask-image: url("../img/cmn/icon-sharyo.svg");
}
.c-icon--book {
  aspect-ratio: 56/52;
  -webkit-mask-image: url("../img/cmn/icon-book.svg");
          mask-image: url("../img/cmn/icon-book.svg");
}
.c-icon--documents {
  aspect-ratio: 40/35;
  -webkit-mask-image: url("../img/cmn/icon-documents.svg");
          mask-image: url("../img/cmn/icon-documents.svg");
}

/*---------------------------------------------------
icon btn
-----------------------------------------------------*/
.c-icon__dot {
  display: inline-block;
  width: 14px;
  aspect-ratio: 1/1;
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
}
.c-icon__dot span {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 50%;
  position: relative;
}
.c-icon__dot span::before, .c-icon__dot span::after {
  content: "";
  display: block;
  width: 4px;
  aspect-ratio: 1/1;
  background-color: var(--color-txt-gray01);
}
.c-icon__dot span:nth-child(1) {
  align-items: flex-start;
}
.c-icon__dot span:nth-child(2) {
  align-items: flex-end;
}
.c-icon__dot.is-hover, .is-hover .c-icon__dot {
  animation: iconDotRotate 0.8s ease-out forwards;
}
.c-icon__dot--white span::before, .c-icon__dot--white span::after {
  background-color: var(--color-white);
}

@keyframes iconDotRotate {
  0% {
    padding: 0;
    transform: rotate(0deg);
  }
  50% {
    padding: 5px;
  }
  100% {
    padding: 0;
    transform: rotate(180deg);
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-logo {
  display: inline-block;
  width: 100%;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-white);
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-logo.is-colored, .is-colored .c-logo {
  background-color: var(--color-txt-gray03);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-logo.is-hover, .is-hover .c-logo {
  opacity: 0.9;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.is-color-ucar .c-logo, .c-logo.is-color-ucar {
  background-color: var(--color-main-ucar);
}
.c-logo--black {
  background-color: var(--color-black);
}
.c-logo--toyota {
  aspect-ratio: 194/32;
  -webkit-mask-image: url("../img/cmn/logo-toyota.svg");
          mask-image: url("../img/cmn/logo-toyota.svg");
}
.c-logo--toyota-mark {
  aspect-ratio: 1/1;
  -webkit-mask-image: url("../img/cmn/logo-toyota-mark.svg");
          mask-image: url("../img/cmn/logo-toyota-mark.svg");
}
.c-logo--toyopet {
  aspect-ratio: 604/100;
  -webkit-mask-image: url("../img/cmn/logo-toyopet.svg");
          mask-image: url("../img/cmn/logo-toyopet.svg");
}
.c-logo--toyopet-ja {
  aspect-ratio: 169/22;
  -webkit-mask-image: url("../img/cmn/logo-toyopet-ja.svg");
          mask-image: url("../img/cmn/logo-toyopet-ja.svg");
}
.c-logo--toyopet-jakabu {
  aspect-ratio: 213/24;
  -webkit-mask-image: url("../img/cmn/logo-toyopet-jakabu.svg");
          mask-image: url("../img/cmn/logo-toyopet-jakabu.svg");
}
.c-logo--netz {
  aspect-ratio: 104/32;
  -webkit-mask-image: url("../img/cmn/logo-netz.svg");
          mask-image: url("../img/cmn/logo-netz.svg");
}
.c-logo--netz-ja {
  aspect-ratio: 179/23;
  -webkit-mask-image: url("../img/cmn/logo-netz-ja.svg");
          mask-image: url("../img/cmn/logo-netz-ja.svg");
}
.c-logo--netz-jakabu {
  aspect-ratio: 207/24;
  -webkit-mask-image: url("../img/cmn/logo-netz-jakabu.svg");
          mask-image: url("../img/cmn/logo-netz-jakabu.svg");
}
.c-logo--ucar {
  aspect-ratio: 707/100;
  -webkit-mask-image: url("../img/cmn/logo-ucar.svg");
          mask-image: url("../img/cmn/logo-ucar.svg");
}
.c-logo--baba-ja {
  aspect-ratio: 250/54;
  -webkit-mask-image: url("../img/cmn/logo-baba-white.svg");
          mask-image: url("../img/cmn/logo-baba-white.svg");
}
.c-logo--baba {
  aspect-ratio: 300/69;
  background-image: url("../img/cmn/logo-baba.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-mask: none;
          mask: none;
  background-color: var(--color-white);
}
.c-logo--lexus {
  aspect-ratio: 300/69;
  background-image: url("../img/cmn/logo-lexus.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-mask: none;
          mask: none;
  background-color: var(--color-white);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-news {
  display: grid;
  align-items: center;
  grid-template-columns: auto auto 1fr;
  gap: 1rem 1.6rem;
  text-decoration: none;
  line-height: 1.2;
  padding: 2.4em 1em;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 1023px) {
  .c-news {
    grid-template-columns: auto 1fr;
    padding: 0.8em 1em;
  }
}
.c-news.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-news__date {
  margin-right: 2.4em;
  white-space: nowrap;
}

.c-news__cat {
  display: inline-block;
  white-space: nowrap;
  min-width: 6.4rem;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.4em;
  background-color: var(--color-black);
  color: var(--color-white);
  font-size: 1rem;
  text-align: center;
}
.c-news__cat--toyopet {
  background-color: var(--color-main-toyopet);
}
.c-news__cat--netz {
  background-color: var(--color-main-netz);
}

.c-news__ttl {
  height: 1.2em;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
@media only screen and (max-width: 1440px) {
  .c-news__ttl {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .c-news__ttl {
    grid-column: 1/span 2;
    display: block;
    height: auto;
    -webkit-line-clamp: unset;
    -webkit-box-orient: unset;
    line-height: 1.4;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
/*---------------------------------------------------
sns
-----------------------------------------------------*/
.c-card__sns {
  display: block;
  width: 100%;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__sns picture {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}
.c-card__sns picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__sns.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-card__sns.is-hover img {
  transform: scale(1.04);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*---------------------------------------------------
shop
-----------------------------------------------------*/
.c-card__shop {
  display: block;
  width: 100%;
  text-decoration: none;
  font-size: 1.4rem;
}
@media only screen and (max-width: 1023px) {
  .c-card__shop {
    font-size: 1.2rem;
  }
}
.cmn-page .c-card__shop {
  color: var(--color-white);
}

.c-card__shop__imgwrap {
  position: relative;
  width: 100%;
}

.c-card__shop__img {
  display: block;
  width: 100%;
  aspect-ratio: 327/220;
  overflow: hidden;
  position: relative;
}
.c-card__shop__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__shop__img img {
  transform: scale(1.02);
  opacity: 0.8;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__shop__ttl {
  font-size: 1.5rem;
  background-color: rgba(255, 255, 255, 0.85);
  color: var(--color-black);
  line-height: 1.2;
  padding: 0.6em;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media only screen and (max-width: 1023px) {
  .c-card__shop__ttl {
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-card__shop__ttl {
    font-size: 1rem;
  }
}

.c-card__shop__address {
  margin: 1.6rem 0;
  font-size: 1.3rem;
  line-height: 1.4;
}
@media only screen and (max-width: 1023px) {
  .c-card__shop__address {
    margin: 1.2rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .c-card__shop__address {
    font-size: 1.2rem;
  }
}

.c-card__shop__servicelist {
  display: flex;
  width: 100%;
  gap: 1rem;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .c-card__shop__servicelist {
    display: none;
  }
}
.c-card__shop__servicelist span {
  display: block;
  width: 100%;
  border: 1px solid var(--color-black);
  text-align: center;
  line-height: 1;
  letter-spacing: 0.02em;
  padding: 0.6em;
  white-space: nowrap;
  font-size: 1.4rem;
}
.is-simplecard .c-card__shop__servicelist {
  display: none;
}

/*---------------------------------------------------
service home
-----------------------------------------------------*/
.c-card__service {
  display: flex;
  align-items: flex-end;
  width: 100%;
  aspect-ratio: 480/635;
  overflow: hidden;
  text-decoration: none;
  position: relative;
  padding: 1.6rem;
}
@media only screen and (max-width: 1023px) {
  .c-card__service {
    aspect-ratio: 430/237;
  }
}
.c-card__service::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__service.is-hover::before {
  opacity: 0;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__service__img {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
}
.c-card__service__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__service__img img {
  transform: scale(1.02);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__service__body {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
}

.c-card__service__ttl {
  color: var(--color-white);
  line-height: 1.2;
}
.c-card__service__ttl .c-card__service__ttl__ja {
  font-size: 2rem;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 1600px) {
  .c-card__service__ttl .c-card__service__ttl__ja {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 1023px) {
  .c-card__service__ttl .c-card__service__ttl__ja {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 520px) {
  .c-card__service__ttl .c-card__service__ttl__ja {
    font-size: 1.6rem;
  }
}
.c-card__service__ttl .c-card__service__ttl__en {
  font-size: 1rem;
  font-family: var(--font-btn);
  margin-top: 1.2rem;
}

.c-card__service__more {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.8rem 3.2rem 0.8rem 1.6rem;
  background-color: var(--color-black);
  color: var(--color-white);
  font-size: 1.2rem;
  position: relative;
  white-space: nowrap;
}
.c-card__service__more span {
  position: absolute;
  width: 1.2rem;
  height: 0.4rem;
  right: 1.6rem;
  top: 60%;
  transform: translateY(-50%);
}
.c-card__service__more span::before, .c-card__service__more span::after {
  content: "";
  display: block;
  background-color: var(--color-white);
  position: absolute;
}
.c-card__service__more span::before {
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
}
.c-card__service__more span::after {
  width: 8px;
  height: 1px;
  bottom: 0;
  right: 0;
  transform-origin: right;
  transform: rotate(45deg);
}

/*---------------------------------------------------
company home
-----------------------------------------------------*/
.c-card__co {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5.7291666667vw;
  align-items: center;
}
@media only screen and (max-width: 1023px) {
  .c-card__co {
    gap: 3.2rem;
    grid-template-columns: 100%;
  }
}
.c-card__co--haslist {
  grid-template-columns: 1fr 2fr;
}

.c-card__co__img picture {
  display: block;
  width: 100%;
  aspect-ratio: 9/6;
  overflow: hidden;
  position: relative;
}
.c-card__co__img picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__img {
    order: 1;
    margin-left: 0;
    margin-right: calc(var(--side-margin) * -1);
  }
}
.is-reverse .c-card__co__img {
  order: 1;
}
@media only screen and (max-width: 1023px) {
  .is-reverse .c-card__co__img {
    margin-left: calc(var(--side-margin) * -1);
    margin-right: 0;
  }
}
.c-card__co__img--ucar picture {
  max-width: 59.6rem;
  aspect-ratio: 596/415;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__img--ucar picture {
    max-width: 100%;
    aspect-ratio: 9/6;
  }
}

.c-card__co__main {
  max-width: 88rem;
  width: 100%;
  justify-self: center;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__main {
    order: 2;
  }
}
.is-reverse .c-card__co__main {
  order: 2;
  justify-self: start;
}

.c-card__co__txt {
  max-width: 56rem;
  width: 100%;
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__txt {
    max-width: 100vw;
    margin-inline: 0;
    padding-inline: 0 var(--side-margin);
  }
}
@media only screen and (max-width: 1023px) {
  .is-reverse .c-card__co__txt {
    padding-inline: var(--side-margin) 0;
  }
}

.c-card__co__ttl {
  font-size: 3.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .c-card__co__ttl {
    font-size: 2rem;
  }
}
.c-card__co__ttl span {
  display: block;
  font-size: 2.4rem;
  font-weight: inherit;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .c-card__co__ttl span {
    font-size: 2rem;
  }
}

.c-card__co__message {
  margin-top: 5.6rem;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .c-card__co__message {
    margin-top: 1.6rem;
    font-size: 1.4rem;
  }
}

.c-card__co__more {
  max-width: 56rem;
  margin-top: 4rem;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__more {
    max-width: 25.6rem;
    margin-inline: auto 0;
  }
}
.c-card__co__more--toyopet {
  max-width: 30rem;
  background-color: var(--color-main-toyopet);
  padding: 0.4rem 2.4rem 0.4rem 2.4rem;
}
.c-card__co__more--netz {
  max-width: 30rem;
  background-color: var(--color-main-netz);
  padding: 0.4rem 2.4rem 0.4rem 2.4rem;
}
.c-card__co__more--ucar {
  max-width: 30rem;
  background-color: var(--color-main-ucar);
  padding: 0.4rem 2.4rem 0.4rem 2.4rem;
}

.c-card__co__logo {
  max-width: calc(var(--top-width) / 2);
  width: 100%;
  position: absolute;
  left: auto;
  right: 0;
  top: 50%;
  z-index: 0;
}
.c-card__co__logo > * {
  transform: translateY(-50%);
  opacity: 0.12;
}
@media only screen and (max-width: 1023px) {
  .c-card__co__logo {
    width: 100%;
  }
}
.is-reverse .c-card__co__logo {
  left: 0;
  right: auto;
}

.c-card__co__list {
  display: flex;
  width: 100%;
  gap: 2.4rem;
}
.c-card__co__list ul {
  width: 100%;
}
.c-card__co__list li {
  flex: 1;
}

/*---------------------------------------------------
pickup
-----------------------------------------------------*/
.c-card__pickup {
  text-decoration: none;
}

.c-card__pickup__img {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}
.c-card__pickup__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__pickup__img img {
  transform: scale(1.04);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__pickup__cat {
  margin-top: 0.8rem;
}
.c-card__pickup__cat span {
  display: block;
  min-width: 6rem;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  padding: 0.5em;
  line-height: 1;
  font-size: 1.2rem;
  color: var(--color-white);
  font-weight: 700;
  font-family: var(--font-btn);
}
.c-card__pickup__cat--all span {
  background-color: var(--color-main);
}
.c-card__pickup__cat--toyopet span {
  background-color: var(--color-main-toyopet);
}
.c-card__pickup__cat--netz span {
  background-color: var(--color-main-netz);
}

.c-card__pickup__date {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  margin-top: 0.8rem;
}
@media only screen and (max-width: 1440px) {
  .c-card__pickup__date {
    font-size: 1.2rem;
  }
}

.c-card__pickup__ttl {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.4;
  height: 2.8em;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media only screen and (max-width: 1440px) {
  .c-card__pickup__ttl {
    font-size: 1.4rem;
  }
}

/*---------------------------------------------------
car
-----------------------------------------------------*/
.c-card__car {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  border: 1px solid var(--color-lineGray01);
  text-decoration: none;
  padding: 3rem 2rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__car.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-card__car {
    padding: 2rem 1.6rem;
  }
}
.c-card__car--imgonly {
  padding: 1rem;
  border: none;
}
.c-card__car--imgonly img {
  -o-object-position: center bottom;
     object-position: center bottom;
}

.c-card__car__img {
  display: block;
  width: 100%;
  aspect-ratio: 425/380;
  overflow: hidden;
  position: relative;
}
.c-card__car__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__car__img img {
  transform: scale(1.04);
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*---------------------------------------------------
carlineup
-----------------------------------------------------*/
.c-card__carlineup {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  border: 1px solid var(--color-lineGray01);
  text-decoration: none;
  padding: 3rem 2rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__carlineup.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-card__carlineup {
    padding: 2rem 1.6rem;
  }
}
.c-card__carlineup--imgonly {
  padding: 1rem;
  border: none;
}
.c-card__carlineup--imgonly img {
  -o-object-position: center bottom;
     object-position: center bottom;
}

.c-card__carlineup__img {
  display: block;
  width: 100%;
  aspect-ratio: 425/380;
  overflow: hidden;
  position: relative;
}
.c-card__carlineup__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.is-hover .c-card__carlineup__img img {
  transform: scale(1.04);
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-card__carlineup__data {
  margin-top: 4rem;
}
@media only screen and (max-width: 1200px) {
  .c-card__carlineup__data {
    margin-top: 3.2rem;
  }
}
.c-card__carlineup__data dl {
  display: flex;
  width: 100%;
}
.c-card__carlineup__data dl dt {
  font-size: 1.3rem;
}
@media only screen and (max-width: 1200px) {
  .c-card__carlineup__data dl dt {
    font-size: 1.2rem;
  }
}
.c-card__carlineup__data dl dt::after {
  content: "／";
  margin-right: 0.4rem;
  font-size: 1.3rem;
}
@media only screen and (max-width: 1200px) {
  .c-card__carlineup__data dl dt::after {
    font-size: 1.2rem;
  }
}
.c-card__carlineup__data dl dd {
  font-size: 1.3rem;
}
@media only screen and (max-width: 1200px) {
  .c-card__carlineup__data dl dd {
    font-size: 1.2rem;
  }
}

.c-card__carlineup__cv {
  margin-top: 4rem;
}
@media only screen and (max-width: 767px) {
  .c-card__carlineup__cv {
    margin-top: 3.2rem;
  }
}

.c-card__carlineup__cv__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.8rem;
}
@media only screen and (max-width: 767px) {
  .c-card__carlineup__cv__list {
    margin-top: 4rem;
    gap: 0.6rem;
  }
}
@media only screen and (max-width: 360px) {
  .c-card__carlineup__cv__list {
    margin-top: 3.2rem;
    gap: 1rem;
  }
}

/*-----------------------------------------
[c-card__search] used in page list
- search result
-----------------------------------------*/
.c-card__search {
  display: grid;
  text-decoration: none;
  grid-template: "img ttl" auto "img txt" 1fr/10rem 1fr;
  gap: 0.8rem 2.4rem;
  padding: 2.4rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-card__search.is-hover {
  background-color: var(--color-bgGray01);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-card__search {
    padding: 1.6rem 0;
    grid-template: "img ttl" auto "img txt" 1fr/8rem 1fr;
    gap: 0.8rem 1.6rem;
  }
}

.c-card__search__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: img;
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}

.g-home-shop__ucar__inner > .c-card__search__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
}
.c-card__search__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.c-card__search__ttl {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: ttl;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 0.8rem;
}
@media only screen and (max-width: 767px) {
  .c-card__search__ttl {
    font-size: 1.6rem;
    margin-bottom: 0.4rem;
  }
}

.c-card__search__txt {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: txt;
  font-size: 1.4rem;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .c-card__search__txt {
    font-size: 1.2rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-arrow__type01 {
  display: inline-block;
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-mask-image: url("../img/cmn/icon-arrow01.svg");
          mask-image: url("../img/cmn/icon-arrow01.svg");
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: var(--color-lineGray03);
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}

.c-arrow__type02 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 1/1;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-arrow__type02::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border: 1px solid var(--color-black);
  border-top: none;
  border-left: none;
  transform: translateX(-1px) rotate(-45deg);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-arrow__type02--circle {
  border: 1px solid var(--color-black);
  border-radius: 50%;
  background-color: var(--color-white);
}
.c-arrow__type02--circle.is-hover, .is-hover .c-arrow__type02--circle {
  background-color: var(--color-bgGray01);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.c-arrow__type03 {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  aspect-ratio: 28/60;
  background-color: var(--color-black);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-arrow__type03::after {
  content: "";
  display: block;
  width: 50%;
  aspect-ratio: 1/1;
  border: 2px solid var(--color-white);
  border-top: none;
  border-left: none;
  margin-right: 20%;
  transform-origin: center;
  transform: rotate(-45deg);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-arrow__type03.is-hover, .is-hover .c-arrow__type03 {
  opacity: 0.6;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-search {
  background-color: var(--color-white);
  border: 1px solid var(--color-lineGray01);
  border-radius: 6px;
  font-size: 1.6rem;
  padding: 0.5em 1em;
  line-height: 1;
  position: relative;
  color: var(--color-lineGray01);
}
.c-search input[type=text] {
  color: var(--color-lineGray01);
}
.c-search input[type=text]::-moz-placeholder {
  color: var(--color-lineGray02);
}
.c-search input[type=text]::placeholder {
  color: var(--color-lineGray02);
}
.c-search .c-search__btn {
  width: auto;
  height: 100%;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  transform: translateY(-50%);
}
.c-search i {
  background-color: var(--color-lineGray01);
  pointer-events: none;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-banner {
  display: inline-block;
  width: 100%;
  aspect-ratio: 300/69;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px solid var(--color-lineGray01);
  background-color: var(--color-white);
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-banner.is-hover, .is-hover .c-banner {
  opacity: 0.9;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-banner--baba {
  background-image: url("../img/cmn/logo-baba.png");
}
.c-banner--lexus {
  background-image: url("../img/cmn/logo-lexus.png");
}

/*-----------------------------------------
[.c-banner__searchitem] used in page list
- home 
-----------------------------------------*/
.c-banner__searchitem {
  display: flex;
  align-items: center;
  padding: 1.6rem 2.4rem 0.8rem;
  border: 3px solid var(--color-black);
  height: 100%;
  text-decoration: none;
  justify-content: space-between;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.c-banner__searchitem--ucar {
  border-color: #E60021;
}
.c-banner__searchitem--ucar span {
  background-color: #E60021;
}
.c-banner__searchitem.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-banner__searchitem {
    padding: 1.2rem 1.6rem 0.8rem;
  }
}

.c-banner__searchitem__inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.c-banner__searchitem__btn {
  display: inline-block;
  padding: 0.4rem 3.2rem 0.4rem 1.6rem;
  position: relative;
  background-color: var(--color-black);
  color: var(--color-white);
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .c-banner__searchitem__btn {
    padding: 0.4rem 2.4rem 0.4rem 1.2rem;
    font-size: 1.2rem;
  }
}
.c-banner__searchitem__btn::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 1.6rem;
  width: 1.2rem;
  aspect-ratio: 1/1;
  border-right: 1px solid var(--color-white);
  border-bottom: 1px solid var(--color-white);
  transform: translateY(-50%) rotate(-45deg);
}

.c-banner__searchitem__en {
  font-family: "FuturaLTPro-Bold", sans-serif;
  font-size: 4.4rem;
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .c-banner__searchitem__en {
    font-size: 2.4rem;
  }
}

.c-banner__searchitem__logo {
  height: 3.3rem;
  margin-bottom: 0.8rem;
}
@media only screen and (max-width: 767px) {
  .c-banner__searchitem__logo {
    height: 2rem;
    margin-bottom: 0.4rem;
  }
}

.c-banner__searchitem__ja {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .c-banner__searchitem__ja {
    font-size: 1.4rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.c-pagetop {
  width: 50px;
  aspect-ratio: 1/1;
  position: fixed;
  bottom: 30px;
  right: calc(var(--cvnav-width) + 30px);
  background-color: var(--color-black);
  border: 1px solid var(--color-white);
  text-indent: 200%;
  overflow: hidden;
  white-space: nowrap;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .c-pagetop {
    right: 16px;
    bottom: 76px;
    width: 40px;
  }
}
.c-pagetop.is-visible {
  opacity: 1;
  visibility: visible;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.c-pagetop::before {
  content: "";
  width: 16px;
  height: 16px;
  display: block;
  border-right: 2px solid var(--color-white);
  border-top: 2px solid var(--color-white);
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
/*---------------------------------------------------
top
-----------------------------------------------------*/
.g-header {
  margin-bottom: 0;
  width: calc(100% - var(--cvnav-width));
  height: var(--header-height);
  background-color: var(--color-black);
  position: fixed;
  top: 0;
  left: 0;
  margin-left: 0;
  z-index: 1000;
}
@media only screen and (max-width: 1023px) {
  .g-header {
    width: 100%;
    height: var(--header-height);
  }
}
.top .g-header, .toyopet-top .g-header, .netz-top .g-header {
  width: calc(100% - var(--cvnav-width));
  background-color: transparent;
  margin-bottom: calc(var(--header-height) * -1);
  position: relative;
  z-index: 1000;
}
@media only screen and (max-width: 1023px) {
  .top .g-header, .toyopet-top .g-header, .netz-top .g-header {
    width: 100%;
    margin-bottom: 0;
    position: fixed;
    top: 0;
    left: 0;
    margin-left: 0;
  }
}

.g-header__top {
  width: 100%;
  height: var(--header-height);
  gap: 2.4rem;
  background-color: var(--color-black);
  padding: 1.2rem 0 1.2rem 3.2rem;
}
@media only screen and (max-width: 1023px) {
  .g-header__top {
    background-color: var(--color-white);
    padding-inline: 2.4rem 0;
    width: 100%;
    padding: 0;
  }
}
.top .g-header__top, .toyopet-top .g-header__top, .netz-top .g-header__top {
  padding-right: 3.2rem;
  background-color: transparent;
}
@media only screen and (max-width: 1023px) {
  .top .g-header__top, .toyopet-top .g-header__top, .netz-top .g-header__top {
    padding-right: 0;
    background-color: transparent;
  }
}
@media only screen and (max-width: 1023px) {
  .toyopet-top .g-header__top, .toyopet-shop .g-header__top, .toyopet-cmn .g-header__top {
    background-color: var(--color-main-toyopet);
  }
}
@media only screen and (max-width: 1023px) {
  .netz-top .g-header__top, .netz-shop .g-header__top, .netz-cmn .g-header__top {
    background-color: var(--color-main-netz);
  }
}
.home .g-header__top {
  border-bottom: 1px solid var(--color-white);
}
@media only screen and (max-width: 1023px) {
  .home .g-header__top {
    background-color: var(--color-white);
  }
}
@media only screen and (max-width: 1023px) {
  .cmn-page .g-header__top {
    background-color: var(--color-white);
  }
}

.g-header__top__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  gap: 2.4rem;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 1023px) {
  .g-header__top__main {
    padding-left: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-header__top__main {
    padding-left: 1.8rem;
  }
}
.cmn-page .g-header__top__main, .home .g-header__top__main {
  background-color: transparent;
}
@media only screen and (max-width: 1023px) {
  .cmn-page .g-header__top__main, .home .g-header__top__main {
    background-color: var(--color-white);
  }
}

.g-header__logo {
  display: flex;
  align-items: center;
  line-height: 1;
  width: 5.6rem;
  z-index: 1;
}
.toyopet-top .g-header__logo, .netz-top .g-header__logo {
  width: auto;
}
.g-header__logo--shop-pc {
  display: flex;
}
@media only screen and (max-width: 1023px) {
  .g-header__logo--shop-pc {
    display: none;
  }
}
.g-header__logo--shop-sp {
  width: auto;
  display: none;
}
@media only screen and (max-width: 1023px) {
  .g-header__logo--shop-sp {
    display: flex;
  }
}
.g-header__logo--toyopet-ja {
  width: auto;
  height: 3.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-header__logo--toyopet-ja {
    height: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-header__logo--toyopet-ja {
    height: 2rem;
  }
}
.g-header__logo--netz-ja {
  width: auto;
  height: 3.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-header__logo--netz-ja {
    height: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-header__logo--netz-ja {
    height: 2rem;
  }
}

.g-header__logo__link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2.4rem;
  text-decoration: none;
  color: var(--color-white);
  font-size: 1.5rem;
  font-weight: 700;
  width: 50rem;
  height: var(--header-height);
}
.g-header__logo__link .c-logo {
  width: auto;
  height: 5.6rem;
  background-color: var(--color-white);
}
@media only screen and (max-width: 1023px) {
  .g-header__logo__link .c-logo {
    width: auto;
    height: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-header__logo__link .c-logo {
    height: 2rem;
  }
}
.home .g-header__logo__link, .cmn-page .g-header__logo__link {
  justify-content: flex-start;
  width: auto;
}
@media only screen and (max-width: 1023px) {
  .home .g-header__logo__link .c-logo, .cmn-page .g-header__logo__link .c-logo {
    height: 5.6rem;
    background-color: var(--color-black);
  }
}
.toyopet-top .g-header__logo__link {
  background-color: var(--color-main-toyopet);
}
.netz-top .g-header__logo__link {
  background-color: var(--color-main-netz);
}
.toyopet-top .g-header__logo__link, .netz-top .g-header__logo__link {
  margin-left: -3.2rem;
}
@media only screen and (max-width: 1023px) {
  .toyopet-top .g-header__logo__link, .netz-top .g-header__logo__link {
    width: auto;
    justify-content: flex-start;
    margin-left: 0;
    background-color: transparent;
  }
}
.toyopet-top .g-header__logo__link .c-logo, .netz-top .g-header__logo__link .c-logo {
  width: auto;
  height: 3rem;
}
@media only screen and (max-width: 1023px) {
  .toyopet-top .g-header__logo__link .c-logo, .netz-top .g-header__logo__link .c-logo {
    height: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .toyopet-top .g-header__logo__link .c-logo, .netz-top .g-header__logo__link .c-logo {
    height: 1.8rem;
  }
}

/*---------------------------------------------------
shopnav
-----------------------------------------------------*/
.g-header__shopnav {
  display: none;
  width: 100%;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 0;
  transition: transform 0.3s ease-out;
}
@media only screen and (max-width: 1023px) {
  .g-header__shopnav {
    display: block;
  }
}
.g-header__shopnav.is-hidden {
  transform: translateY(-100%);
  transition: transform 0.3s ease-in;
}
@media only screen and (max-width: 1023px) {
  .toyopet-shop .g-header__shopnav, .netz-shop .g-header__shopnav {
    display: none;
  }
}

.g-header__sns {
  display: none;
}
.top .g-header__sns, .toyopet-top .g-header__sns, .netz-top .g-header__sns {
  display: block;
}
@media only screen and (max-width: 1023px) {
  .top .g-header__sns, .toyopet-top .g-header__sns, .netz-top .g-header__sns {
    display: none;
  }
}

/*---------------------------------------------------
cvnav
-----------------------------------------------------*/
.g-header__cvnav {
  width: var(--cvnav-width);
  height: 100vh;
  position: fixed;
  right: 0;
  top: 0;
  background-color: var(--color-gray);
}
@media only screen and (max-width: 1023px) {
  .g-header__cvnav {
    width: 100%;
    height: auto;
    left: 0;
    right: auto;
    top: auto;
    bottom: 0;
  }
}

/*---------------------------------------------------
gnav
-----------------------------------------------------*/
.g-header__gnav {
  display: flex;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
  width: calc(100% - var(--cvnav-width));
  background-color: var(--color-black);
}
@media only screen and (max-width: 1023px) {
  .g-header__gnav {
    display: none;
  }
}
.top .g-header__gnav, .toyopet-top .g-header__gnav, .netz-top .g-header__gnav {
  width: 100%;
  justify-content: space-between;
  padding-left: 3.2rem;
  position: absolute;
  right: 0;
  top: 100dvh;
  transform: translateY(-100%);
  align-self: end;
  z-index: 1002;
  background-color: transparent;
}
.is-modal-open .g-header__gnav {
  display: none;
}
.g-header__gnav.is-bgBlack {
  background-color: var(--color-black);
  width: calc(100% - var(--cvnav-width));
  position: fixed;
  top: 0;
  left: 0;
  bottom: auto;
  z-index: 1001;
  transform: translateY(-100%);
  opacity: 0;
}
.g-header__gnav.is-bgBlack.is-slideDown {
  animation: gnavSlideDown 0.5s ease-out forwards;
}

.g-header__gnav__logo {
  opacity: 1;
  pointer-events: auto;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.top .g-header__gnav__logo, .toyopet-top .g-header__gnav__logo, .netz-top .g-header__gnav__logo {
  opacity: 0;
  pointer-events: none;
}
.is-slideDown .g-header__gnav__logo {
  opacity: 1;
  pointer-events: auto;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.g-header__gnav__logo a.c-logo--toyota-mark {
  width: auto;
  height: 6.4rem;
  margin-left: 3.2rem;
}

.g-header__gnav__contents {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  align-self: end;
}

/*---------------------------------------------------
hamburger
-----------------------------------------------------*/
.g-header__hamb {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .g-header__hamb {
    display: flex;
  }
}

/*---------------------------------------------------
animation
-----------------------------------------------------*/
@keyframes gnavSlideDown {
  0% {
    transform: translateY(-100%);
    opacity: 1;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-footer {
  position: relative;
}
.g-footer > * {
  position: relative;
  z-index: 1;
}
.g-footer::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background-color: var(--color-darkGray);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.g-footer__inner {
  padding: 13.6rem calc(var(--side-margin) * 0.6 + var(--cvnav-width)) 8rem calc(var(--side-margin) * 0.6);
}
@media only screen and (max-width: 1023px) {
  .g-footer__inner {
    padding: 5.6rem var(--side-margin);
  }
}

/*---------------------------------------------------
main
-----------------------------------------------------*/
.g-footer__main {
  display: grid;
  grid-template-columns: 30rem 1fr;
  gap: min(23.2rem, 12.0833333333vw);
  width: 100%;
  color: var(--color-txt-gray01);
}
@media only screen and (max-width: 1600px) {
  .g-footer__main {
    gap: min(10rem, 5.2083333333vw);
  }
}
@media only screen and (max-width: 1200px) {
  .g-footer__main {
    grid-template-columns: 24rem 1fr;
  }
}
@media only screen and (max-width: 1023px) {
  .g-footer__main {
    grid-template-columns: 100%;
    gap: 12rem;
  }
}

/*---------------------------------------------------
info
-----------------------------------------------------*/
.g-footer__info {
  font-size: 1.5rem;
}
@media only screen and (max-width: 1440px) {
  .g-footer__info {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-footer__info {
    max-width: 30rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-footer__info {
    font-size: 1.5rem;
  }
}

/*---------------------
shop
-----------------------*/
.g-footer__shop__logo {
  width: auto;
  height: 2.4rem;
  margin-bottom: 0.8rem;
}
.g-footer__shop__logo a {
  width: auto;
  height: 100%;
}

.g-footer__shop__list {
  margin-top: 7.2rem;
}
@media only screen and (max-width: 767px) {
  .g-footer__shop__list {
    margin-top: 5.6rem;
  }
}
.g-footer__shop__list dd {
  padding-bottom: 2.4rem;
  margin-bottom: 3.2rem;
  border-bottom: 1px solid var(--color-lineGray01);
}

.g-footer__shop__tel {
  display: flex;
  align-items: center;
  gap: 0.56em;
  color: var(--color-txt-gray01);
  text-decoration: none;
}
.g-footer__shop__tel i {
  width: 1.5em;
  background-color: var(--color-txt-gray01);
}

/*----------------------
banner
------------------------*/
.g-footer__banner {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
  max-width: 30rem;
  width: 100%;
  margin-top: 3.2rem;
  margin-inline: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .g-footer__banner {
    margin-inline: auto;
  }
}
.g-footer__banner li {
  width: 100%;
}
.g-footer__banner li.is-lexus {
  display: none;
}
@media only screen and (max-width: 767px) {
  .g-footer__banner li.is-lexus {
    display: block;
  }
}
.netz .g-footer__banner li.is-lexus {
  display: none;
}
@media only screen and (max-width: 767px) {
  .netz .g-footer__banner li.is-lexus {
    display: none;
  }
}
.g-footer__banner li a {
  color: var(--color-white);
  border-color: var(--color-white);
  font-size: 1.7rem;
}
.g-footer__banner li a:nth-child(2) {
  margin-top: 2.2rem;
}

/*---------------------------------------------------
nav
-----------------------------------------------------*/
.g-footer__nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: min(4.8rem, 2.5vw);
  font-size: 1.9rem;
}
@media only screen and (max-width: 1600px) {
  .g-footer__nav {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-footer__nav {
    display: none;
  }
}
.g-footer__nav ul.menu > li {
  margin-bottom: 1.6rem;
}
.g-footer__nav ul.menu > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--color-white);
  text-decoration: none;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--color-lineGray01);
  font-size: 1.9rem;
}
.g-footer__nav ul.sub-menu {
  margin-top: 1.6rem;
  margin-bottom: 4.4rem;
}
.g-footer__nav ul.sub-menu > li > a {
  color: var(--color-txt-gray01);
  text-decoration: none;
  font-size: 1.7rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-footer__nav ul.sub-menu > li > a.is-hover {
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
  color: var(--color-white);
}
.g-footer__nav ul.sub-menu > li.lexus-banner {
  margin-top: 4rem;
}
.g-footer__nav ul.sub-menu > li.lexus-banner a {
  display: inline-block;
  width: 100%;
  aspect-ratio: 300/69;
  background-image: url("../img/cmn/logo-lexus.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px solid var(--color-lineGray01);
  background-color: var(--color-white);
  overflow: hidden;
  text-indent: 200%;
  white-space: nowrap;
  background-repeat: no-repeat;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-footer__nav ul.sub-menu > li.lexus-banner a.is-hover, .is-hover .g-footer__nav ul.sub-menu > li.lexus-banner a {
  opacity: 0.9;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.netz .g-footer__nav ul.sub-menu > li.lexus-banner {
  display: none;
}
.g-footer__nav ul.sub-menu > li.lexus-fee {
  margin-top: 1.6rem;
}
.g-footer__nav ul.sub-menu > li.lexus-fee a {
  display: inline-block;
  max-width: 48rem;
  width: 100%;
  padding: 1rem;
  font-size: 1.7rem;
  line-height: 1;
  font-weight: 500;
  border: 1px solid var(--color-white);
  text-align: center;
  text-decoration: none;
  color: var(--color-white);
  border-radius: 14px;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-footer__nav ul.sub-menu > li.lexus-fee a.is-hover {
  background-color: rgba(225, 225, 225, 0.1);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.netz .g-footer__nav ul.sub-menu > li.lexus-fee {
  display: none;
}

/*---------------------------------------------------
bottom
-----------------------------------------------------*/
.g-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 1.6rem;
  font-size: 1.5rem;
  color: var(--color-txt-gray02);
  font-family: var(--font-copy);
  margin-top: 11.2rem;
  padding-bottom: 2.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-footer__bottom {
    margin-top: 6.4rem;
    flex-direction: column;
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .g-footer__bottom {
    font-size: 1.3rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
/*---------------------------------------------------
global
-----------------------------------------------------*/
.g-nav__global {
  display: flex;
  justify-content: flex-end;
}

.g-nav__global__list {
  display: flex;
  background-color: var(--color-white);
  padding-left: 1.6rem;
  height: var(--header-height);
}
.g-nav__global__list li {
  position: relative;
}
.g-nav__global__list li i {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(50%, -50%);
}
.g-nav__global__list a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 1.4em 2.6em;
  text-decoration: none;
  font-size: 1.8rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 1440px) {
  .g-nav__global__list a {
    font-size: 1.6rem;
    padding: 1.4em 1.8em;
  }
}
@media only screen and (max-width: 1200px) {
  .g-nav__global__list a {
    font-size: 1.4rem;
  }
}
.g-nav__global__list a.is-hover {
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
  opacity: 0.3;
}

.g-nav__global__logos {
  padding-right: 3.2rem;
  display: flex;
  gap: 3.2rem;
}
@media only screen and (max-width: 1440px) {
  .g-nav__global__logos {
    padding-right: 1.2rem;
  }
}

.g-nav__global__logos__item {
  display: flex;
  align-items: center;
}
.g-nav__global__logos__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-nav__global__logos__item a.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.g-nav__global__logos__item--baba a {
  width: auto;
  height: 3.4rem;
  aspect-ratio: 250/54;
}

.g-nav__global__contact {
  background-color: var(--color-black);
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid var(--color-white);
  width: 8rem;
}

.g-nav__global__contact__icon {
  width: 40%;
}

.g-nav__global__hamb {
  display: flex;
  align-self: stretch;
  width: auto;
  flex: 0 0 auto;
  position: relative;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}

/*---------------------------------------------------
cvnav
-----------------------------------------------------*/
.g-nav__cv {
  height: 100%;
}

.g-nav__cv__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  width: var(--cvnav-width);
  font-size: 1.6rem;
}
@media only screen and (max-width: 1200px) {
  .g-nav__cv__list {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-nav__cv__list {
    width: 100%;
    display: flex;
    font-size: 1.1rem;
    flex-direction: row;
  }
}
@media only screen and (max-width: 520px) {
  .g-nav__cv__list {
    font-size: 1rem;
  }
}
@media only screen and (max-height: 767px) {
  .g-nav__cv__list {
    font-size: 1.4rem;
  }
}
@media only screen and (max-height: 600px) {
  .g-nav__cv__list {
    font-size: 1.1rem;
  }
  .g-nav__cv__list span {
    display: none;
  }
}
@media only screen and (max-height: 600px) and (max-width: 1023px) {
  .g-nav__cv__list span {
    display: inline;
  }
}
.g-nav__cv__list * {
  font-size: inherit;
}
.g-nav__cv__list li {
  font-weight: 100;
  width: 100%;
  flex: 1;
  display: grid;
}
@media only screen and (max-width: 1023px) {
  .g-nav__cv__list li {
    flex: 1 1 0;
  }
}
.g-nav__cv__list li a {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  writing-mode: vertical-rl;
  letter-spacing: 0.24em;
  color: var(--color-white);
  background-color: var(--color-darkGray);
  text-decoration: none;
  padding: 2.6rem 1rem;
  font-weight: inherit;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .g-nav__cv__list li a {
    writing-mode: horizontal-tb;
    flex-direction: column;
    gap: 0;
  }
}
@media only screen and (max-width: 767px) {
  .g-nav__cv__list li a {
    padding: 0.8rem;
  }
}
@media only screen and (max-width: 520px) {
  .g-nav__cv__list li a {
    font-size: 1rem;
  }
}
.g-nav__cv__list li a::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--color-white);
  opacity: 0;
  z-index: 1;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-nav__cv__list li a.is-hover::after {
  opacity: 0.2;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.g-nav__cv__list li:first-child a {
  background-color: var(--color-black);
}
.g-nav__cv__list li:last-child a {
  background-color: var(--color-gray);
}
.g-nav__cv__list i {
  width: 2.4em;
}

/*---------------------------------------------------
shop
-----------------------------------------------------*/
.g-nav__shop {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-right: 1rem;
  width: 100%;
  background-color: var(--color-black);
}
@media only screen and (max-width: 767px) {
  .g-nav__shop {
    padding-right: 0;
  }
}
.g-nav__shop li a {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .g-nav__shop li a {
    padding: 2rem 3.4rem;
  }
}
.g-nav__shop li a.is-hover {
  opacity: 0.7;
}
.g-nav__shop li .c-logo {
  width: auto;
  height: 2.8rem;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-list__sns {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.g-list__sns li {
  width: 4rem;
  line-height: 1;
}

/*---------------------------------------------------
news
-----------------------------------------------------*/
.g-list__news {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.g-list__news li {
  border-bottom: 1px solid var(--color-lineGray02);
}

/*---------------------------------------------------
shop
-----------------------------------------------------*/
.g-list__shop {
  display: flex;
  gap: 3.6rem;
  flex-wrap: wrap;
  justify-content: center;
}
.g-list__shop.is-toyopet {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-list__shop {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: start;
  }
  .g-list__shop.is-toyopet {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 767px) {
  .g-list__shop {
    gap: 1.6rem 1rem;
  }
}
.g-list__shop > li {
  width: 32rem;
}
@media only screen and (max-width: 1023px) {
  .g-list__shop > li {
    width: 100%;
  }
}

/*---------------------------------------------------
pickup search
-----------------------------------------------------*/
.g-list__search {
  display: flex;
  gap: 2.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-list__search {
    max-width: 40rem;
    width: 100%;
    margin-inline: auto;
    flex-direction: column;
    gap: 0.6rem;
  }
}
.g-list__search li {
  flex: 1;
}

/*---------------------------------------------------
service home
-----------------------------------------------------*/
.g-list__service {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
}
@media only screen and (max-width: 1023px) {
  .g-list__service {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (max-width: 767px) {
  .g-list__service {
    grid-template-columns: 100%;
  }
}
.g-list__service li:nth-child(even) {
  margin-top: 16%;
}
@media only screen and (max-width: 1023px) {
  .g-list__service li:nth-child(even) {
    margin-top: 0;
  }
}

/*---------------------------------------------------
car search way
-----------------------------------------------------*/
.g-list__searchway {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.g-list__searchway > li {
  position: relative;
}
.g-list__searchway > li .g-list__searchway__submenuwrap {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 10;
}
@media only screen and (max-width: 767px) {
  .g-list__searchway > li .g-list__searchway__submenuwrap {
    position: static;
  }
}
@media only screen and (max-width: 767px) {
  .g-list__searchway {
    max-width: 40rem;
    width: 100%;
    margin-inline: auto;
    grid-template-columns: 100%;
  }
}

.g-list__searchway__btn {
  max-width: 100%;
}

.g-list__searchway__submenuwrap {
  display: none;
  height: 0;
  overflow: hidden;
}
.is-active .g-list__searchway__submenuwrap {
  display: block;
  animation: slideDown 0.5s ease-in-out forwards;
}
.is-closing .g-list__searchway__submenuwrap {
  display: block;
  animation: slideUp 0.3s ease-in-out forwards;
}

.g-list__searchway__submenu {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
}
.g-list__searchway__submenu > li {
  border-bottom: 1px solid var(--color-lineGray01);
  border-left: 1px solid var(--color-lineGray01);
}
.g-list__searchway__submenu > li:nth-child(odd) {
  margin-right: -1px;
}
.g-list__searchway__submenu > li:nth-child(2n), .g-list__searchway__submenu > li:last-child {
  border-right: 1px solid var(--color-lineGray01);
}
.g-list__searchway__submenu button {
  display: block;
  text-decoration: none;
  width: 100%;
  height: 100%;
  font-size: 1.4rem;
  line-height: 1;
  padding: 0.6em 0.8em;
  text-align: center;
  background-color: var(--color-bgGray02);
}
@media only screen and (max-width: 1023px) {
  .g-list__searchway__submenu button {
    font-size: 1.2rem;
  }
}
.g-list__searchway__submenu button.is-hover {
  background-color: var(--color-bgGray01);
}
.g-list__searchway__submenu button.is-active {
  background-color: var(--color-black);
  color: var(--color-white);
}
.is-active .g-list__searchway__submenu {
  animation: slideDownInner 0.5s ease-in-out forwards;
}
.is-closing .g-list__searchway__submenu {
  animation: slideUpInner 0.3s ease-in-out forwards;
}

@keyframes slideDown {
  0% {
    height: 0;
  }
  3% {
    height: 0;
  }
  100% {
    height: auto;
  }
}
@keyframes slideDownInner {
  0% {
    transform: translateY(-100%);
  }
  3% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes slideUp {
  0% {
    height: auto;
  }
  100% {
    height: 0;
  }
}
@keyframes slideUpInner {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
/*---------------------------------------------------
car list
-----------------------------------------------------*/
.g-list__cars {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.2rem 2.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-list__cars {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2.4rem 1.6rem;
  }
}
@media only screen and (max-width: 520px) {
  .g-list__cars {
    grid-template-columns: 100%;
    gap: 2.6rem;
  }
}

/*-----------------------------------------
[g-list__search] used in page list
- search
-----------------------------------------*/
.g-list__searchresults {
  display: block;
}
.g-list__searchresults li {
  border-bottom: 1px solid var(--color-lineGray02);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-modalnav {
  display: none;
  width: 100vw;
  height: 100dvh;
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1001;
  background-color: var(--color-black);
}
.g-modalnav * {
  color: var(--color-white);
}
.g-modalnav.is-open {
  display: block;
  animation: modalFadeIn 0.5s ease-in-out forwards;
}
@media only screen and (max-width: 767px) {
  .g-modalnav.is-open {
    animation: modalSlideIn 0.3s ease-in-out forwards;
  }
}
.g-modalnav.is-closing {
  display: block;
  animation: modalFadeOut 0.4s ease-in-out forwards;
}
@media only screen and (max-width: 767px) {
  .g-modalnav.is-closing {
    animation: modalSlideOut 0.3s ease-in-out forwards;
  }
}

.g-modalnav__inner {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  padding: 8rem min(10rem, 5.2083333333vw) var(--header-height);
}
@media only screen and (max-width: 767px) {
  .g-modalnav__inner {
    padding: 0 0 11.8rem;
  }
}

.g-modalnav__hamb {
  display: block;
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  width: 8rem;
  aspect-ratio: 1/1;
  z-index: 1002;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__hamb--black span {
    background-color: var(--color-black) !important;
  }
}

/*---------------------------------------------------
head
-----------------------------------------------------*/
.g-modalnav__head {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 6.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-modalnav__head {
    grid-template-columns: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__head {
    padding: 4.6rem var(--side-margin) 3.6rem;
    background-color: var(--color-white);
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__head--toyopet {
    background-color: var(--color-main-toyopet);
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__head--netz {
    background-color: var(--color-main-netz);
  }
}

/*---------------------
logo
-----------------------*/
.g-modalnav__logo {
  display: flex;
  gap: 5.6rem;
  justify-content: flex-start;
}
@media only screen and (max-width: 1440px) {
  .g-modalnav__logo {
    gap: 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo {
    flex-direction: column;
    align-items: center;
    gap: 4.8rem;
  }
}
.g-modalnav__logo .c-logo {
  width: auto;
  height: 3.2rem;
}
@media only screen and (max-width: 1440px) {
  .g-modalnav__logo .c-logo {
    height: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo .c-logo {
    height: 3.2rem;
    background-color: var(--color-black);
  }
}
.g-modalnav__logo .c-logo--toyota-mark {
  height: 5.6rem;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo--toyopet, .g-modalnav__logo--netz {
    gap: 0.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo--toyopet .c-logo, .g-modalnav__logo--netz .c-logo {
    background-color: var(--color-white);
  }
}

.g-modalnav__logo__toyota {
  display: block;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo__toyota {
    display: none;
  }
}
.g-modalnav__logo__toyota--sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo__toyota--sp {
    display: block;
  }
}

.g-modalnav__logo__shops {
  display: flex;
  gap: 5.6rem;
}
@media only screen and (max-width: 1440px) {
  .g-modalnav__logo__shops {
    gap: 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__logo__shops {
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
  }
}

/*---------------------
search
-----------------------*/
.g-modalnav__search {
  width: 100%;
  max-width: 29.4rem;
  justify-self: end;
}
@media only screen and (max-width: 1023px) {
  .g-modalnav__search {
    display: none;
  }
}
.g-modalnav__search--sp {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .g-modalnav__search--sp {
    display: block;
    margin-inline: auto;
    margin-top: 6.4rem;
  }
}

/*---------------------------------------------------
nav
-----------------------------------------------------*/
.g-modalnav__nav {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 6.4rem;
  margin-top: 7.2rem;
}
@media only screen and (max-width: 1023px) {
  .g-modalnav__nav {
    padding-inline: var(--side-margin);
    gap: 0 3.2rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
}
@media only screen and (max-width: 767px) {
  .g-modalnav__nav {
    padding-inline: 0;
    grid-template-columns: 100%;
  }
}
.g-modalnav__nav ul.menu > li {
  position: relative;
}
.g-modalnav__nav ul.menu > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--color-white);
  text-decoration: none;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid var(--color-lineGray01);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__nav ul.menu > li > a {
    padding-inline: var(--side-margin);
  }
}
.g-modalnav__nav ul.menu > li > a.is-hover {
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
  color: var(--color-txt-gray01);
}
.g-modalnav__nav ul.menu > li .g-modalnav__nav__btn {
  position: absolute;
  top: calc(1.6rem + 0.5em);
  right: 0;
  pointer-events: none;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__nav ul.menu > li .g-modalnav__nav__btn {
    padding: 1.6rem;
    top: 0.5em;
    right: calc(var(--side-margin) - 1.6rem);
    transform: translateY(0);
    pointer-events: auto;
  }
}
.g-modalnav__nav ul.sub-menu {
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .g-modalnav__nav ul.sub-menu {
    display: none;
  }
}
.g-modalnav__nav ul.sub-menu > li > a {
  display: block;
  padding-top: 0.4em;
  padding-bottom: 0.4em;
  color: var(--color-txt-gray01);
  text-decoration: none;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-modalnav__nav ul.sub-menu > li > a.is-hover {
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
  color: var(--color-white);
}
@media only screen and (max-width: 767px) {
  .g-modalnav__nav ul.sub-menu > li > a {
    padding-inline: var(--side-margin);
  }
}
.g-modalnav__nav ul.sub-menu.is-active {
  display: block;
  animation: openModalnavSub 0.5s ease forwards;
}
.g-modalnav__nav ul.sub-menu.is-active-close {
  display: block;
  animation: closeModalnavSub 0.3s ease forwards;
}

/*---------------------------------------------------
sns
-----------------------------------------------------*/
.g-modalnav__sns {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .g-modalnav__sns {
    display: flex;
    justify-content: center;
    margin-top: 6.4rem;
  }
}

/*---------------------------------------------------
animation
-----------------------------------------------------*/
@keyframes openModalnavSub {
  0% {
    padding-top: 0;
    padding-bottom: 0;
    height: 0;
  }
  100% {
    padding-top: 1.6rem;
    padding-bottom: 4.4rem;
    height: auto;
  }
}
@keyframes closeModalnavSub {
  0% {
    padding-top: 1.6rem;
    padding-bottom: 4.4rem;
    height: auto;
  }
  100% {
    padding-top: 0;
    padding-bottom: 0;
    height: 0;
  }
}
@keyframes modalSlideIn {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes modalSlideOut {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes modalFadeIn {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes modalFadeOut {
  0% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-mv {
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .g-home-mv {
    margin-top: var(--header-height);
  }
}

/*---------------------------------------------------
movie
-----------------------------------------------------*/
.g-home-mv__movie {
  display: block;
  width: 100vw;
  min-height: 100vh;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw + var(--cvnav-width));
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1023px) {
  .g-home-mv__movie {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    min-height: 0;
    aspect-ratio: 430/430;
  }
}

.g-home-mv__movie__inner {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
}

.g-home-mv__movie__slide {
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.g-home-mv__movie__slide .swiper-slide {
  width: 100%;
  height: 100%;
  position: relative;
}

.g-home-mv__movie__slide__item {
  display: block;
}
.g-home-mv__movie__slide__item.is-image {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: none;
}
.g-home-mv__movie__slide__item.is-image::after {
  display: none;
}
.g-home-mv__movie__slide__item.is-movie::after {
  display: block;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/cmn/tx01.png");
  background-size: 2px 2px;
  background-repeat: repeat;
  opacity: 0.8;
}

.g-home-mv__movie__videowrap {
  aspect-ratio: 16/9;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(1.25);
  display: block;
  background-size: cover;
  background-position: center center;
}
@media (min-aspect-ratio: 16/9) {
  .g-home-mv__movie__videowrap {
    width: 100vw;
  }
}
@media (max-aspect-ratio: 16/9) {
  .g-home-mv__movie__videowrap {
    height: 100vh;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-mv__movie__videowrap {
    aspect-ratio: 1/1;
    transform: translate(-50%, -50%) scale(1.3);
    width: 100vw;
  }
}
.g-home-mv__movie__videowrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.g-home-mv__movie__videowrap--pc {
  display: block;
}
@media only screen and (max-width: 1023px) {
  .g-home-mv__movie__videowrap--pc {
    display: none;
  }
}
.g-home-mv__movie__videowrap--sp {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .g-home-mv__movie__videowrap--sp {
    display: block;
    background-size: contain;
  }
}
.is-image .g-home-mv__movie__videowrap {
  transform: translate(-50%, -50%) scale(1);
  height: 100%;
  position: relative;
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
}
.is-image .g-home-mv__movie__videowrap img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}

/*---------------------------------------------------
catch
-----------------------------------------------------*/
.g-home-mv__catch {
  color: var(--color-white);
  position: absolute;
  bottom: 14rem;
  left: var(--cvnav-width);
  z-index: 1;
}
@media only screen and (max-width: 1440px) {
  .g-home-mv__catch {
    bottom: 12rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-mv__catch {
    display: none;
  }
}

.g-home-mv__catch__en {
  font-size: min(7.2rem, 3.75vw);
  font-family: var(--font-en);
  font-weight: var(--weight-medium);
  line-height: 1.2;
}

.g-home-mv__catch__ja {
  font-size: min(2rem, 1.0416666667vw);
  line-height: 1.5;
  margin-top: 0.8rem;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-pickup {
  display: grid;
  grid-template-columns: 28.4rem 1fr;
  gap: min(6.4rem, 3.3333333333vw);
  padding: 12rem 0;
}
@media only screen and (max-width: 1200px) {
  .g-home-pickup {
    grid-template-columns: 24.8rem 1fr;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup {
    grid-template-columns: 100%;
    gap: 0;
    padding: 7.2rem 0 5.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-home-pickup {
    padding-top: 2.4rem;
  }
}

.g-home-pickup__head {
  padding-top: 4rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__head {
    display: flex;
    gap: 2.4rem;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 0;
  }
}

.g-home-pickup__main {
  width: calc((100vw - var(--cvnav-width) - var(--top-width)) / 2 + 100%);
  min-width: 0;
  padding-left: 3.2rem;
  overflow: hidden;
}
@media only screen and (max-width: 1768px) {
  .g-home-pickup__main {
    width: calc(100% + var(--side-margin));
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__main {
    width: 100%;
    margin-inline: 0;
    padding: 0;
  }
}

/*---------------------------------------------------
more
-----------------------------------------------------*/
.g-home-pickup__more {
  margin-top: 8rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__more {
    margin-top: 0;
  }
}

/*---------------------------------------------------
slide
-----------------------------------------------------*/
.g-home-pickup__tabs {
  display: flex;
  gap: 1.8rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__tabs {
    margin-top: 2.4rem;
  }
}
.g-home-pickup__tabs li {
  max-width: 31rem;
  flex: 1;
}
@media only screen and (max-width: 1440px) {
  .g-home-pickup__tabs li {
    max-width: 16rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__tabs li {
    max-width: 100vw;
  }
}

.g-home-pickup__tabs__btn {
  display: block;
  width: 100%;
  text-align: center;
  font-family: var(--font-btn);
  font-weight: 700;
  font-size: 2.2rem;
  padding-bottom: 1em;
  color: var(--color-lineGray02);
  border-bottom: 1px solid var(--color-lineGray02);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 1440px) {
  .g-home-pickup__tabs__btn {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-home-pickup__tabs__btn {
    font-size: 1.4rem;
  }
}
.g-home-pickup__tabs__btn.is-current {
  color: var(--color-black);
  border-bottom: 1px solid var(--color-black);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.g-home-pickup__sliderwrap {
  width: 100%;
  position: relative;
  margin-top: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .g-home-pickup__sliderwrap {
    padding: var(--side-margin);
  }
}

:root {
  --card-pickup-width: 30.0rem;
}
@media only screen and (max-width: 1440px) {
  :root {
    --card-pickup-width: 20.0rem;
  }
}
@media only screen and (max-width: 1023px) {
  :root {
    --card-pickup-width: 32.0rem;
  }
}
@media only screen and (max-width: 767px) {
  :root {
    --card-pickup-width: 20.0rem;
  }
}
@media only screen and (max-width: 520px) {
  :root {
    --card-pickup-width: calc(100vw - var(--side-margin)*4);
  }
}

.g-home-pickup__slider {
  min-width: 0;
  width: 100%;
  overflow: hidden;
}
@media only screen and (max-width: 520px) {
  .g-home-pickup__slider {
    overflow: visible;
  }
}
.g-home-pickup__slider .swiper-slide {
  width: var(--card-pickup-width);
}

.g-home-pickup__slider__nav {
  width: 2.4rem;
  position: absolute;
  top: calc(var(--card-pickup-width) / 2);
  transform: translateY(-50%);
  z-index: 10;
}
@media only screen and (max-width: 767px) {
  .g-home-pickup__slider__nav {
    transform: translateY(0);
    width: 2rem;
  }
}
.g-home-pickup__slider__nav--prev {
  left: -3.2rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__slider__nav--prev {
    left: 0;
  }
}
.g-home-pickup__slider__nav--prev i {
  transform: rotate(180deg);
}
.g-home-pickup__slider__nav--next {
  right: 4rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-pickup__slider__nav--next {
    right: 0;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-important {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1.6rem 5.6rem;
  align-items: start;
  padding: 10rem min(10rem, 5.2083333333vw);
}
@media only screen and (max-width: 1200px) {
  .g-home-important {
    grid-template-columns: auto 1fr;
  }
  .g-home-important .g-home-important__more {
    grid-column: 1/3;
    justify-self: end;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-important {
    grid-template-columns: 100%;
    gap: 2.4rem;
    padding: 5.6rem calc(var(--side-margin)) 4.8rem;
  }
  .g-home-important .g-home-important__more {
    grid-column: unset;
  }
}

.g-home-important__head * {
  font-weight: 700;
}

.g-home-important__txt {
  padding-right: 3.2rem;
}
.g-home-important__txt * {
  font-weight: 700;
  font-size: 1.5rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-important__txt {
    padding-right: 0;
    font-size: 1.5rem;
  }
  .g-home-important__txt span {
    font-size: 1.2rem;
  }
}

.g-home-important__main {
  padding-left: 5.6rem;
  border-left: 1px solid var(--color-lineGray01);
}
@media only screen and (max-width: 1023px) {
  .g-home-important__main {
    border: none;
    padding-left: 0;
  }
}

.g-home-important__ttl {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media only screen and (max-width: 1023px) {
  .g-home-important__ttl {
    font-size: 1.8rem;
  }
}

.g-home-important__excerpt {
  margin-top: 2.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-important__excerpt {
    margin-top: 1.6rem;
  }
}
.g-home-important__excerpt p {
  font-size: 1.4rem;
  word-break: normal !important;
}
@media only screen and (max-width: 1023px) {
  .g-home-important__excerpt p {
    font-size: 1.4rem;
    text-align: justify;
  }
}

/*---------------------------------------------------
more
-----------------------------------------------------*/
.g-home-important__more {
  align-self: end;
}
@media only screen and (max-width: 1023px) {
  .g-home-important__more {
    justify-self: end;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-lineup {
  padding-bottom: 15.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-lineup {
    padding-bottom: 8rem;
  }
  .g-home-lineup::before {
    display: none;
  }
}

.g-home-lineup__pickup {
  padding: 11.8rem 0 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-lineup__pickup {
    padding: 7.8rem 0 0;
  }
}

.g-home-lineup__pickup__slidewrap {
  position: relative;
  margin-top: 5.6rem;
}
.g-home-lineup__pickup__slidewrap.is-secondary {
  display: grid;
  width: 100%;
  grid-template-columns: 3.2rem 1fr 3.2rem;
  gap: 3.2rem;
  align-items: center;
  margin-top: 0;
  padding: 5.4rem 0;
}
@media only screen and (max-width: 767px) {
  .g-home-lineup__pickup__slidewrap.is-secondary {
    width: calc(100% + var(--side-margin));
    margin-inline: calc(var(--side-margin) / -2);
    grid-template-columns: 2.4rem 1fr 2.4rem;
    gap: 1rem;
    padding: 2.4rem 0;
  }
}

.g-home-lineup__pickup__slider {
  width: calc(100vw - var(--cvnav-width));
  margin-inline: calc((100vw - var(--cvnav-width) - var(--top-width)) / -2);
  min-width: 0;
  overflow: hidden;
}
@media only screen and (max-width: 1768px) {
  .g-home-lineup__pickup__slider {
    margin-inline: calc(var(--side-margin) * -1);
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-lineup__pickup__slider {
    width: 100vw;
  }
}
.g-home-lineup__pickup__slider .swiper-slide {
  width: auto;
  aspect-ratio: 1366/544;
}
.is-secondary .g-home-lineup__pickup__slider {
  width: 100%;
  margin-inline: 0;
}
.is-secondary .g-home-lineup__pickup__slider .swiper-slide {
  width: 24rem;
  aspect-ratio: 1/1;
}
@media only screen and (max-width: 767px) {
  .is-secondary .g-home-lineup__pickup__slider .swiper-slide {
    width: 100%;
  }
}

.g-home-lineup__pickup__slider__nav {
  display: block;
  width: 3.2rem;
  line-height: 0;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.g-home-lineup__pickup__slider__nav.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 1440px) {
  .g-home-lineup__pickup__slider__nav {
    width: 2.4rem;
  }
}
.g-home-lineup__pickup__slider__nav--prev {
  left: calc(50% - 33.3333333333vw + 2.4rem);
}
@media only screen and (max-width: 1023px) {
  .g-home-lineup__pickup__slider__nav--prev {
    left: 1.6rem;
  }
}
.g-home-lineup__pickup__slider__nav--prev i {
  transform: rotate(180deg);
}
.g-home-lineup__pickup__slider__nav--next {
  right: calc(50% - 33.3333333333vw + 2.4rem);
}
@media only screen and (max-width: 1023px) {
  .g-home-lineup__pickup__slider__nav--next {
    left: auto;
    right: 1.6rem;
  }
}
.is-secondary .g-home-lineup__pickup__slider__nav {
  position: static;
  top: 0;
  left: 0;
  right: auto;
  transform: none;
}

/*---------------------------------------------------
link
-----------------------------------------------------*/
.g-home-lineup__pickup__link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-home-lineup__pickup__link.is-hover {
  opacity: 0.8;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.g-home-lineup__pickup__link__img {
  display: block;
  width: 100%;
  aspect-ratio: 1366/544;
  overflow: hidden;
  position: relative;
}
.g-home-lineup__pickup__link__img img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-service {
  padding: 14rem 0 9.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-service {
    padding: 10rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .g-home-service {
    padding: 4.8rem 0 0;
  }
}

.g-home-service__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.g-home-service__main {
  margin: 4.6rem 0 0;
  height: 100%;
}

.g-home-service__list {
  width: calc(100vw - var(--cvnav-width));
  margin-inline: calc((100vw - var(--cvnav-width) - var(--top-width)) / -2);
}
@media only screen and (max-width: 1768px) {
  .g-home-service__list {
    margin-inline: calc(var(--side-margin) * -1);
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-service__list {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
}
@media only screen and (max-width: 767px) {
  .g-home-service__list {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-company {
  position: relative;
  width: calc(100vw - var(--cvnav-width));
  margin-inline: calc((100vw - var(--cvnav-width) - var(--top-width)) / -2);
  margin-top: 8rem;
}
@media only screen and (max-width: 1768px) {
  .g-home-company {
    margin-inline: calc(var(--side-margin) * -1);
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-company {
    margin-top: -1px;
    width: 100%;
    margin-inline: 0;
    margin-bottom: 5.6rem;
  }
}
.g-home-company.is-subpage {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  margin-inline: 0;
  padding: 10.2rem 0 15.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-company.is-subpage {
    display: block;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    padding-top: 0;
    padding-inline: 0;
    padding-bottom: 7.2rem;
  }
}

.g-home-company__main {
  display: block;
  width: 55vw;
  height: 100%;
  margin-left: calc(50% - 50vw);
  background-color: var(--color-main);
  padding: 12.4rem 10vw 10.2rem 10vw;
  color: var(--color-white);
}
@media only screen and (max-width: 1600px) {
  .g-home-company__main {
    padding-left: 7vw;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-company__main {
    width: 100vw;
    padding: 12rem var(--side-margin) 15.6rem;
  }
}
.is-subpage .g-home-company__main {
  order: 2;
  width: 100%;
  height: 100%;
  padding: 10rem 6.25vw;
  margin-left: 0;
  background-color: var(--color-bgGray02);
  color: var(--color-txt);
}
@media only screen and (max-width: 1023px) {
  .is-subpage .g-home-company__main {
    width: 100vw;
    padding: 12rem var(--side-margin) 15.6rem;
  }
}

.g-home-company__main__inner {
  max-width: 60rem;
  position: relative;
  padding-right: var(--side-margin);
}
@media only screen and (max-width: 1023px) {
  .g-home-company__main__inner {
    padding-right: 0;
    margin-inline: auto;
  }
}

.g-home-company__catch {
  margin-top: 3.2rem;
  font-size: 3.4rem;
  line-height: 1.3;
}
@media only screen and (max-width: 1440px) {
  .g-home-company__catch {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 1200px) {
  .g-home-company__catch {
    font-size: 2.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-home-company__catch {
    font-size: 1.9rem;
  }
}

.g-home-company__txt {
  margin-top: 2.4rem;
  font-size: 1.4rem;
}

.g-home-company__more {
  margin-top: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-company__more {
    margin-top: 0;
    position: absolute;
    top: 0;
    right: 0;
  }
}
.is-subpage .g-home-company__more {
  margin-top: 3.2rem;
}

/*---------------------------------------------------
img
-----------------------------------------------------*/
.g-home-company__img {
  width: 52vw;
  height: 100%;
  position: absolute;
  top: -8rem;
  right: 0;
}
@media only screen and (max-width: 1023px) {
  .g-home-company__img {
    position: static;
    max-width: 56rem;
    width: 100%;
    margin-inline: auto;
    margin-top: -10rem;
  }
}
.g-home-company__img picture {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .g-home-company__img picture {
    height: auto;
    aspect-ratio: 372/264;
  }
}
.g-home-company__img picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.is-subpage .g-home-company__img {
  order: 1;
  position: static;
  max-width: 100vw;
  width: 100%;
  padding-inline: 0;
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .is-subpage .g-home-company__img {
    position: static;
    max-width: 56rem;
    width: 100%;
    padding-inline: var(--side-margin);
    margin-inline: auto;
    margin-top: -10rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.home .g-home-shop * {
  color: var(--color-white);
}

.g-home-shop__head {
  padding: 9.6rem 0;
}
@media only screen and (max-width: 767px) {
  .g-home-shop__head {
    padding: 5.6rem 0;
  }
}
.g-home-shop__head * {
  color: var(--color-white);
}

.g-home-shop__ttl {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.g-home-shop__catchwrap {
  width: 50%;
  margin-top: 4.8rem;
  margin-bottom: 6.4rem;
  font-size: 1.6rem;
  text-align: justify;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__catchwrap {
    width: 100%;
    margin-top: 5.6rem;
    margin-bottom: 0;
    font-size: 1.4rem;
  }
}

.g-home-shop__catch {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .g-home-shop__catch {
    font-size: 2rem;
  }
}

.g-home-shop__item {
  width: calc((100vw - var(--cvnav-width) - var(--top-width)) / 2 + 100%);
}
@media only screen and (max-width: 1768px) {
  .g-home-shop__item {
    width: calc(100% + var(--side-margin));
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__item {
    margin-top: 6.4rem;
  }
}
.g-home-shop__item.to-left {
  margin-inline: calc((100vw - var(--cvnav-width) - var(--top-width)) / -2) 0;
}
@media only screen and (max-width: 1768px) {
  .g-home-shop__item.to-left {
    margin-inline: calc(var(--side-margin) * -1);
  }
}

.g-home-shop__main {
  display: flex;
  flex-direction: column;
  gap: 0 8rem;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__main {
    margin-top: 5.6rem;
  }
}

.g-home-shop__list {
  padding: 9.6rem 0 15rem;
}
.home .g-home-shop__list {
  display: grid;
  padding-top: 0;
  gap: 7.2rem;
}

/*---------------------------------------------------
ucar
-----------------------------------------------------*/
.g-home-shop__ucar {
  margin-top: 12rem;
}

.g-home-shop__ucar__inner {
  display: grid;
  grid-template: "main img" 1fr "more img" auto/auto 1fr;
  gap: 5.7291666667vw;
  align-items: center;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__ucar__inner {
    gap: 0rem;
    grid-template: "main" auto "img" auto "more" auto/1fr;
  }
  .g-home-shop__ucar__inner > .c-card__search__img {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
}

.g-home-shop__ucar__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: img;
}

.g-home-shop__ucar__inner > .g-home-shop__ucar__img {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__ucar__img {
    margin-right: calc(var(--side-margin) * -1);
  }
}
.g-home-shop__ucar__img picture {
  display: block;
  width: 100%;
  aspect-ratio: 9/6;
  overflow: hidden;
  position: relative;
}
.g-home-shop__ucar__img picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.g-home-shop__ucar__txt {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: main;
  max-width: 56rem;
  margin-inline: 0 auto;
  position: relative;
  padding-right: 8rem;
}
.g-home-shop__ucar__txt > * {
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__ucar__txt {
    max-width: 100%;
    margin-inline: 0;
    margin-top: 3.2rem;
  }
}

.g-home-shop__ucar__ttl {
  font-size: 3.2rem;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .g-home-shop__ucar__ttl {
    font-size: 2rem;
  }
}
.g-home-shop__ucar__ttl span {
  display: block;
  font-size: 2.4rem;
  font-weight: inherit;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .g-home-shop__ucar__ttl span {
    font-size: 2rem;
  }
}

.g-home-shop__ucar__message {
  margin-top: 5.6rem;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
}
@media only screen and (max-width: 767px) {
  .g-home-shop__ucar__message {
    margin-top: 1.6rem;
    font-size: 1.4rem;
  }
}

.g-home-shop__ucar__more {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: more;
  max-width: 56rem;
  width: 100%;
  margin-top: 4rem;
  margin-inline: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__ucar__more {
    max-width: 30rem;
  }
}

.g-home-shop__ucar__logo {
  display: none;
}

.g-home-shop__ucar__list {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 1;
  grid-area: img;
  display: flex;
  width: 100%;
  gap: 2.4rem;
}

.g-home-shop__ucar__inner > .g-home-shop__ucar__list {
  -ms-grid-row: 1;
  -ms-grid-row-span: 3;
  -ms-grid-column: 3;
}

@media only screen and (max-width: 767px){
  .c-card__search__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .c-card__search__ttl {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .c-card__search__txt {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .g-home-shop__ucar__img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
  .g-home-shop__ucar__list {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 1;
  }
}

@media only screen and (max-width: 1023px){
  .g-home-shop__ucar__inner > .g-home-shop__ucar__img {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
  .g-home-shop__ucar__txt {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .g-home-shop__ucar__more {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
  .g-home-shop__ucar__inner > .g-home-shop__ucar__list {
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
  }
}
@media only screen and (max-width: 1023px) {
  .g-home-shop__ucar__list {
    margin-top: 4rem;
  }
}
.g-home-shop__ucar__list ul {
  width: 100%;
}
.g-home-shop__ucar__list li {
  flex: 1;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-home-searchbanners {
  margin-bottom: 12rem;
}

.g-home-searchbanners__inner {
  display: flex;
  flex: 1;
  gap: var(--space-4);
  justify-content: center;
}
@media only screen and (max-width: 1023px) {
  .g-home-searchbanners__inner {
    flex-direction: column;
    gap: 2.4rem;
    align-items: center;
  }
}
.g-home-searchbanners__inner li {
  max-width: 55rem;
  width: 100%;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-gutenberg {
  font-size: clamp(14px, 0.8vw, 18px);
  font-family: var(--font-main);
  padding-bottom: 120px;
}
.g-gutenberg--btm0 {
  padding-bottom: 0;
}
.g-gutenberg--single {
  padding-bottom: 120px;
}
.g-gutenberg > * {
  margin-top: var(--space-4);
  scroll-margin-top: var(--header-height);
}
.g-gutenberg > *:not(.wp-block-snow-monkey-blocks-section):not(.wp-block-snow-monkey-blocks-section-break-the-grid):not(.wp-block-snow-monkey-blocks-section-with-bgimage):not(.wp-block-snow-monkey-blocks-section-side-heading):not(.g-shop-staff):not(.g-shop-map):not(.u-width__max):not(.g-shop-contents):not(.g-block-topics):not(.g-block-sns) {
  --_container-max-width: var(--_global--container-max-width);
  --_container-margin: var(--_global--container-margin);
  --_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
  --_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
  max-width: var(--_container-max-width) !important;
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .g-gutenberg > *:not(.wp-block-snow-monkey-blocks-section):not(.wp-block-snow-monkey-blocks-section-break-the-grid):not(.wp-block-snow-monkey-blocks-section-with-bgimage):not(.wp-block-snow-monkey-blocks-section-side-heading):not(.g-shop-staff):not(.g-shop-map):not(.u-width__max):not(.g-shop-contents):not(.g-block-topics):not(.g-block-sns) {
    margin-left: calc(var(--_container-margin-left));
    margin-right: calc(var(--_container-margin-right));
  }
}
@media only screen and (max-width: 1023px) {
  .g-gutenberg > *.dms-form-unit {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media only screen and (max-width: 767px) {
  .g-gutenberg .wp-block-group:has(> .wp-block-snow-monkey-blocks-spider-slider) {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
.g-gutenberg p {
  line-height: 2;
}
.g-gutenberg p.is-style-catchcopy {
  font-weight: 700;
  font-size: clamp(22px, 1.8vw, 33px);
}
.g-gutenberg p.is-style-label {
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(16px, 1.8vw, 36px);
  font-weight: 500;
  line-height: 1.2;
  padding: 0.6em 1em;
  border-radius: 0.2em;
}
.g-gutenberg strong {
  font-weight: 700;
  font-size: inherit;
  font-family: inherit;
}
.g-gutenberg span {
  font-size: inherit;
}
.g-gutenberg hgroup p {
  line-height: 1;
}
.g-gutenberg .wp-block-media-text {
  gap: 2.4rem;
  margin-bottom: 2.4rem;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-page__header {
  background-color: var(--color-darkGray);
  color: var(--color-white);
  padding: 7.2rem 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  text-align: center;
}
@media only screen and (max-width: 520px) {
  .g-page__header {
    padding: 4rem 0;
  }
}
.g-page__header h1 {
  font-size: clamp(2.4rem, 1.6666666667vw, 4rem);
  font-family: var(--font-main);
  position: relative;
  line-height: 1.4;
}
@media only screen and (max-width: 1023px) {
  .g-page__header h1 {
    --_container-max-width: var(--_global--container-max-width);
    --_container-margin: var(--_global--container-margin);
    --_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
    --_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
    margin-left: calc(var(--_container-margin-left));
    margin-right: calc(var(--_container-margin-right));
  }
}
.g-page__header--shop {
  position: relative;
}
.g-page__header--shop::before {
  content: "";
  display: block;
  width: auto;
  height: 45%;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translateY(-50%);
  opacity: 0.1;
}
@media only screen and (max-width: 1023px) {
  .g-page__header--shop::before {
    left: var(--side-margin);
  }
}
@media only screen and (max-width: 767px) {
  .g-page__header--shop::before {
    left: 70%;
    top: 84%;
    transform: translate(-50%, -50%);
  }
}
.toyopet-shop .g-page__header--shop, .toyopet-shop.u-car .g-page__header--shop {
  background-color: var(--color-main-toyopet);
}
.toyopet-shop .g-page__header--shop::before, .toyopet-shop.u-car .g-page__header--shop::before {
  aspect-ratio: 604/100;
  background-image: url(../img/cmn/logo-toyopet.svg);
}
.netz-shop .g-page__header--shop, .netz-shop.u-car .g-page__header--shop {
  background-color: var(--color-main-netz);
}
.netz-shop .g-page__header--shop::before, .netz-shop.u-car .g-page__header--shop::before {
  aspect-ratio: 503/100;
  background-image: url(../img/cmn/logo-netz.svg);
  height: 60%;
}
.u-car .g-page__header--shop {
  background-color: var(--color-main-ucar);
}
.u-car .g-page__header--shop::before {
  display: none;
}

.g-page__content {
  padding-top: 5.6rem;
  padding-bottom: 12rem;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-single__main {
  margin-top: var(--space-6);
}

.g-single__meta {
  display: flex;
  justify-content: flex-end;
  max-width: var(--_container-max-width) !important;
  margin-top: var(--space-2);
  margin-bottom: var(--space-4);
  --_container-max-width: var(--_global--container-max-width);
  --_container-margin: var(--_global--container-margin);
  --_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
  --_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
  max-width: var(--_container-max-width) !important;
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .g-single__meta {
    margin-left: calc(var(--_container-margin-left));
    margin-right: calc(var(--_container-margin-right));
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-lower-contact {
  padding-top: var(--space-10);
  padding-bottom: var(--space-10);
  position: relative;
  padding: 13.6rem calc(var(--side-margin) * 0.6 + var(--cvnav-width)) 8rem calc(var(--side-margin) * 0.6);
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact {
    padding-bottom: 0;
    padding: 5.6rem var(--side-margin);
  }
}
.g-lower-contact > * {
  position: relative;
  z-index: 1;
}
.g-lower-contact:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background-color: var(--color-main-light);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.g-lower-contact__head {
  margin-bottom: var(--space-4);
}

.g-lower-contact__head__en {
  font-family: var(--font-en);
  font-size: clamp(3.2rem, 2.0833333333vw, 4.8rem);
  line-height: 1;
}

.g-lower-contact__head__ja {
  font-weight: bold;
}

.g-lower-contact__body {
  margin-top: 3.2rem;
  display: flex;
  flex-wrap: wrap;
  gap: clamp(4rem, 3.3333333333vw, 8rem);
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__body {
    margin-top: 7.2rem;
    flex-direction: column;
  }
}

.g-lower-contact__support {
  display: flex;
  flex-shrink: 0;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__support {
    flex-direction: column;
  }
}

.g-lower-contact__body__itemwrap {
  display: flex;
  justify-content: center;
  padding: 1.6rem clamp(4rem, 2.0833333333vw, 8rem);
  border-right: 1px solid var(--color-lineGray02);
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__body__itemwrap {
    flex-direction: column;
    padding: 4rem calc(var(--side-margin) / 2);
    border-right: none;
    border-bottom: 1px solid var(--color-lineGray02);
  }
}
.g-lower-contact__body__itemwrap:first-child {
  padding-left: 0;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__body__itemwrap:first-child {
    padding-top: 0;
    padding-left: calc(var(--side-margin) / 2);
  }
}

@media only screen and (max-width: 1023px) {
  .g-lower-contact__body__item {
    width: calc(100% + var(--side-margin));
    margin-inline: calc(var(--side-margin) / -2);
  }
}

.g-lower-contact__mail {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 52.7rem;
  width: 32vw;
  padding: 1.6rem 4rem;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__mail {
    width: calc(100% + var(--side-margin));
    margin-inline: calc(var(--side-margin) / -2);
    padding: 4rem calc(var(--side-margin) / 2);
  }
}
@media only screen and (max-width: 767px) {
  .g-lower-contact__mail {
    padding: 5.6rem calc(var(--side-margin) / 2);
  }
}

.g-lower-contact__logo {
  background-color: #000000;
  height: 2.4rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 0.8rem;
}

.g-lower-contact__freedial {
  width: 5.6rem;
}
.g-lower-contact__freedial--toyopet {
  background-color: var(--color-main-toyopet);
}
.g-lower-contact__freedial--netz {
  background-color: var(--color-main-netz);
}

.g-lower-contact__txt {
  font-size: 1.8rem;
}

.g-lower-contact__tel {
  display: flex;
  font-size: clamp(2.4rem, 2.6041666667vw, 5rem);
  line-height: 1;
  text-decoration: none;
  gap: 0.8rem;
  margin-top: 0.8rem;
}

.g-lower-contact__hr {
  width: 3.2rem;
  border-top: 1px solid #000000;
  margin-top: 0.8rem;
  margin-bottom: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__hr {
    margin-top: 3.2rem;
    margin-bottom: 3.2rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__hr--mail {
    margin-top: 1.6rem;
    margin-bottom: 3.2rem;
  }
}

.g-lower-contact__inquirybtn {
  border-top: 1px solid var(--color-darkGray);
  border-bottom: 1px solid var(--color-darkGray);
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
  display: block;
  max-width: 42rem;
  text-decoration: none;
}
.g-lower-contact__inquirybtn div {
  border-right: 1px solid var(--color-darkGray);
  border-left: 1px solid var(--color-darkGray);
  text-align: center;
  text-decoration: none;
  padding-top: 1.6rem;
  padding-bottom: 1.6rem;
  font-size: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__inquirybtn div {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
.g-lower-contact__inquirybtn div i {
  width: 2.8rem;
  background-color: var(--color-black);
}
.g-lower-contact__inquirybtn.is-hover {
  background-color: var(--color-darkGray);
  color: var(--color-white);
}
.g-lower-contact__inquirybtn.is-hover div i {
  background-color: var(--color-white);
}

.g-lower-contact__body__calendar {
  flex-shrink: 0;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact__body__calendar {
    padding-left: 0;
  }
}

.g-lower-contact__body__calendar__note {
  text-align: right;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-lower-contact-co {
  position: relative;
  padding: var(--space-10) calc(var(--side-margin) * 0.6 + var(--cvnav-width)) var(--space-10) calc(var(--side-margin) * 0.6);
  display: flex;
  gap: 12rem;
}
@media only screen and (max-width: 1200px) {
  .g-lower-contact-co {
    flex-direction: column;
    gap: 2.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact-co {
    padding-bottom: 0;
    padding: 5.6rem var(--side-margin);
    flex-direction: column;
  }
}
.g-lower-contact-co > * {
  position: relative;
  z-index: 1;
}
.g-lower-contact-co:before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background-color: var(--color-main-light);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.g-lower-contact-co__heading {
  max-width: 48rem;
}

.g-lower-contact-co__body {
  display: flex;
  gap: clamp(4rem, 2.6041666667vw, 8rem);
}
@media only screen and (max-width: 767px) {
  .g-lower-contact-co__body {
    flex-direction: column;
  }
}

.g-lower-contact-co__support {
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 1023px) {
  .g-lower-contact-co__support {
    margin-inline: auto;
  }
}

.g-lower-contact-co__support__number {
  display: block;
  margin-bottom: 2.4rem;
}

.g-lower-contact-co__body__calendar {
  position: relative;
  padding-left: clamp(4rem, 2.6041666667vw, 8rem);
}
@media only screen and (max-width: 767px) {
  .g-lower-contact-co__body__calendar {
    padding-left: 0;
  }
}
.g-lower-contact-co__body__calendar::before {
  content: "";
  display: block;
  width: 1px;
  background-color: var(--color-lineGray02);
  height: 60%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
  .g-lower-contact-co__body__calendar::before {
    display: none;
  }
}

.g-lower-contact-co__body__calendar__note {
  text-align: right;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-lower-shopinfo {
  padding: 11.2rem 0 7.2rem;
  position: relative;
}
.g-lower-shopinfo::after {
  content: "";
  display: block;
  width: 100vw;
  height: 1px;
  background-color: var(--color-black);
  position: absolute;
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1023px) {
  .g-lower-shopinfo::after {
    display: none;
  }
}
@media only screen and (max-width: 1023px) {
  .g-lower-shopinfo {
    padding: 5.6rem 0;
  }
}

.g-lower-shopinfo__inner {
  position: relative;
}

.g-lower-shopinfo__main {
  margin-top: 7.2rem;
}

/*---------------------------------------------------
more
-----------------------------------------------------*/
.g-lower-shopinfo__more {
  position: absolute;
  top: 0;
  right: 0;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-block-support__inner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  background-color: var(--color-bgGray02);
}
.g-block-support__inner > * {
  margin-top: 0;
}
@media only screen and (max-width: 1023px) {
  .g-block-support__inner {
    grid-template-columns: 100%;
  }
}

.g-block-support__item__wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  border-right: 1px solid var(--color-lineGray03);
  padding: 4.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-support__item__wrap {
    border-right: none;
    border-bottom: 1px solid var(--color-lineGray02);
  }
}
.g-block-support__item__wrap:last-child {
  border-right: none;
}
@media only screen and (max-width: 1023px) {
  .g-block-support__item__wrap:last-child {
    border-bottom: none;
  }
}

.g-block-support__item {
  padding: 1.6rem 3.2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media only screen and (max-width: 1023px) {
  .g-block-support__item {
    width: calc(100% + var(--side-margin));
    margin-inline: calc(var(--side-margin) / -2);
    padding: 4rem calc(var(--side-margin) / 2);
  }
}

.g-block-support__logo {
  background-color: #000000;
  height: 2.4rem;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 0.8rem;
}

.g-block-support__freedial {
  width: 5.6rem;
}
.g-block-support__freedial--toyopet {
  background-color: var(--color-main-toyopet);
}
.g-block-support__freedial--netz {
  background-color: var(--color-main-netz);
}

.g-block-support__txt {
  font-size: 1.8rem;
}

.g-block-support__tel {
  display: flex;
  font-size: clamp(2.4rem, 2.6041666667vw, 5rem);
  line-height: 1;
  text-decoration: none;
  gap: 0.8rem;
  margin-top: 0.8rem;
}

.g-block-support__hr {
  width: 3.2rem;
  border-top: 1px solid #000000;
  margin-top: 0.8rem;
  margin-bottom: 5.6rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-support__hr {
    margin-top: 3.2rem;
    margin-bottom: 3.2rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-block-support__hr--mail {
    margin-top: 1.6rem;
    margin-bottom: 3.2rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-shop-info {
  display: grid;
  width: calc(100vw - var(--cvnav-width));
  margin-left: calc((100vw - var(--cvnav-width) - var(--page-wide-width)) / -2);
  grid-template-columns: 50% 1fr;
}
@media only screen and (max-width: 1708px) {
  .g-shop-info {
    margin-left: calc(var(--side-margin) * -1);
  }
}
@media only screen and (max-width: 1023px) {
  .g-shop-info {
    grid-template-columns: 100%;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
  }
}

.g-shop-info__img {
  position: relative;
  min-height: 40rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__img {
    min-height: 0;
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    aspect-ratio: 430/314;
  }
}
.g-shop-info__img picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.g-shop-info__img picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.g-shop-info__body {
  padding: 2.0833333333vw;
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__body {
    padding: 4.8rem 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-info__body {
    padding: 0 1.6rem 4.8rem;
  }
}
@media only screen and (max-width: 520px) {
  .g-shop-info__body {
    padding: 0 0 4rem;
  }
}

.g-shop-info__localnav {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 3.2rem;
  gap: 0.8rem 0;
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__localnav {
    width: 100%;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-info__localnav {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    background-color: var(--color-bgGray02);
  }
}
.g-shop-info__localnav li {
  border-left: 1px solid var(--color-lineGray02);
  padding: 0 1em;
  line-height: 1.2;
  letter-spacing: 0.05em;
  font-size: 1.6rem;
}
.g-shop-info__localnav li:last-child {
  border-right: 1px solid var(--color-lineGray02);
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__localnav li {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex: 1;
    padding: 0 0.8em;
    flex-basis: 25%;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-info__localnav li {
    border-left: none;
  }
  .g-shop-info__localnav li:last-child {
    border-right: none;
  }
}
.g-shop-info__localnav a {
  text-decoration: none;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__localnav a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-info__localnav a {
    padding: 1.6rem 0;
  }
}
@media only screen and (max-width: 1023px) {
  .g-shop-info__localnav a span {
    display: none;
  }
}
.g-shop-info__localnav a i {
  display: none;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__localnav a i {
    display: inline-block;
    width: 2.4em;
    margin-left: 0.4rem;
    background-color: var(--color-black);
  }
}
.g-shop-info__localnav a.is-hover {
  color: var(--color-txt-gray03);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
.g-shop-info__localnav * {
  font-size: inherit;
}

.g-shop-info__head {
  border-top: 3px solid var(--color-black);
  border-bottom: 3px solid var(--color-black);
  padding: 2.4rem 2.4rem;
  display: flex;
  gap: 1.6rem var(--space-4);
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__head {
    flex-direction: column;
  }
}

.g-shop-info__head__name {
  font-size: 2.4rem;
  font-weight: bold;
  font-family: var(--font-main);
}
@media only screen and (max-width: 767px) {
  .g-shop-info__head__name {
    font-size: 2.2rem;
  }
}

.g-shop-info__head__cvbtns {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem;
  align-items: center;
}
.g-shop-info__head__cvbtns a {
  background-color: var(--color-black);
  color: var(--color-white);
  text-decoration: none;
  padding: 0.8rem 3.2rem;
  font-size: 1.6rem;
  border-radius: 0.4rem;
  display: block;
  border: 2px solid var(--color-black);
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
}
.g-shop-info__head__cvbtns a.is-hover {
  background-color: var(--color-white);
  color: var(--color-black);
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

.g-shop-info__detail {
  display: grid;
  grid-template-columns: auto 1fr;
  padding: 2.4rem 0;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__detail {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }
}
.g-shop-info__detail dt {
  border-top: 1px solid var(--color-lineGray02);
  padding: 1.6rem 0;
}
.g-shop-info__detail dt:first-of-type {
  border-top: none;
}
.g-shop-info__detail dt:last-of-type {
  grid-column: 1/-1;
}
.g-shop-info__detail dd {
  border-top: 1px solid var(--color-lineGray02);
  padding: 1.6rem 2.4rem;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__detail dd {
    padding: 1.6rem;
  }
}
.g-shop-info__detail dd:first-of-type {
  border-top: none;
}
.g-shop-info__detail dd:last-of-type {
  border-top: none;
  grid-column: 1/-1;
  padding-top: 0;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__detail dd:last-of-type {
    padding: 0;
  }
}

.g-shop-info__services__list {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__services__list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media only screen and (max-width: 360px) {
  .g-shop-info__services__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.g-shop-info__services__list li {
  min-width: 9rem;
  background-color: #F0EFEF;
  opacity: 0.3;
  color: #391919;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.2;
  padding: 0.6em 1em;
}
@media only screen and (max-width: 767px) {
  .g-shop-info__services__list li {
    padding: 0.6em;
    min-width: 0;
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 520px) {
  .g-shop-info__services__list li {
    font-size: 1.1rem;
  }
}
.g-shop-info__services__list li.is-active {
  opacity: 1;
}
.g-shop-info__services__list li.is-small {
  font-size: 0.6em;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-shop-staff {
  max-width: initial !important;
  padding: 12rem 3.2rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff {
    padding: 12rem 0;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff {
    padding: 0 8%;
  }
}
@media only screen and (max-width: 520px) {
  .g-shop-staff {
    padding: 0;
  }
}
.cmn-page .g-shop-staff {
  padding: 120px var(--block-padding-inline);
}
.cmn-page .g-shop-staff .g-shop-staff__bg::before {
  left: auto;
  right: 0;
  width: 92%;
}
@media only screen and (max-width: 767px) {
  .cmn-page .g-shop-staff .g-shop-staff__bg::before {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    left: 0;
    right: auto;
  }
}

.g-shop-staff__bg {
  padding-top: var(--space-10);
  padding-bottom: var(--space-10);
  position: relative;
}
.g-shop-staff__bg > * {
  position: relative;
  z-index: 1;
}
.g-shop-staff__bg::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 6.4rem;
  width: calc(100% - 9.6rem);
  height: 100%;
  background-color: var(--color-bgGray02);
  z-index: 0;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__bg::before {
    left: 4rem;
    width: calc(100% - 4rem);
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff__bg::before {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    left: 0;
    right: auto;
  }
}

.g-shop-staff__inner {
  display: grid;
  grid-template-columns: min(47.4rem, 24.6875vw) 1fr;
  gap: var(--space-6);
  padding: 0 8rem 0 0;
  margin-top: -8rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__inner {
    grid-template-columns: min(24rem, 31.25vw) 1fr;
    padding: 0 3.2rem 0 0;
    margin-top: -4rem;
    gap: var(--space-4);
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff__inner {
    grid-template-columns: 100%;
    gap: 0;
    padding: 0;
    margin-top: 7.2rem;
  }
}

@media only screen and (max-width: 767px) {
  .g-shop-staff__img {
    display: block;
    max-width: 48rem;
    width: 100%;
    margin-inline: auto;
  }
}
.g-shop-staff__img figcaption {
  text-align: center;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__img figcaption {
    font-size: 1.3rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff__img figcaption {
    font-size: 1.6rem;
    text-align: left;
  }
}

.g-shop-staff__content {
  padding-top: 12rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__content {
    padding-top: 8rem;
    min-width: 0;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff__content {
    padding-top: 0;
    margin-top: 4.8rem;
  }
}

.g-shop-staff__content__txt {
  margin-bottom: var(--space-6);
  text-align: justify;
}

.g-shop-staff__facilitiesttl {
  margin-left: -0.5em;
  margin-bottom: var(--space-1);
  font-family: var(--font-main);
}

.g-shop-staff__facilities {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
  flex-wrap: wrap;
  gap: 0.8rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__facilities {
    grid-template-columns: repeat(2, 1fr);
  }
}
.g-shop-staff__facilities li {
  border: 1px solid #504F4F;
  color: #646464;
  background-color: var(--color-white);
  padding: 0.4rem 1.2rem;
  text-align: center;
  line-height: 1.6;
  display: flex;
  gap: 0.8rem;
}
.g-shop-staff__facilities li figure {
  width: 2.4rem;
  aspect-ratio: 1/1;
  display: flex;
}
.g-shop-staff__facilities li figure img {
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 1023px) {
  .g-shop-staff__facilities li {
    padding: 0.2rem 1em;
  }
  .g-shop-staff__facilities li p {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-staff__facilities li {
    padding: 0.4rem;
  }
  .g-shop-staff__facilities li p {
    font-size: 1.1rem;
  }
}
@media only screen and (max-width: 360px) {
  .g-shop-staff__facilities li p {
    font-size: 1rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-shop-map {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1.6rem;
  align-items: center;
  margin-top: 0;
  padding: 8rem 0;
}
@media only screen and (max-width: 1023px) {
  .g-shop-map {
    grid-template-columns: 100%;
    gap: 2.4rem;
  }
}

.g-shop-map__txt {
  padding-inline: min(8rem, 4.1666666667vw);
}
@media only screen and (max-width: 1440px) {
  .g-shop-map__txt {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 1023px) {
  .g-shop-map__txt {
    max-width: 50rem;
    width: 100%;
    margin-inline: auto;
    padding-inline: 0;
  }
}

/*---------------------------------------------------
data
-----------------------------------------------------*/
.g-shop-map__data {
  margin-top: 2.4rem;
  padding: 0 2.4rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-map__data {
    margin-top: 4rem;
    padding: 0 1.6rem;
  }
}

.g-shop-map__data__list {
  display: flex;
  gap: 0.8em;
}
.g-shop-map__data__list dt::before {
  content: "【";
}
.g-shop-map__data__list dt::after {
  content: "】";
}

/*---------------------------------------------------
access
-----------------------------------------------------*/
.g-shop-map__access {
  margin-top: 7.2rem;
  padding-top: 5.6rem;
  padding-inline: 2.4rem;
  border-top: 1px solid var(--color-lineGray01);
}
@media only screen and (max-width: 1023px) {
  .g-shop-map__access {
    margin-top: 3.2rem;
    padding-top: 3.2rem;
  }
}

/*---------------------------------------------------
map
-----------------------------------------------------*/
.g-shop-map__item {
  min-height: 60rem;
  width: 100%;
}
@media only screen and (max-width: 1023px) {
  .g-shop-map__item {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    margin-top: 7.2rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-shop-contents {
  padding: 10.2rem 0 8.8rem;
}
.home .g-shop-contents {
  padding-bottom: 14rem;
}
@media only screen and (max-width: 1023px) {
  .g-shop-contents {
    padding: 10.2rem 0 12.4rem;
  }
  .home .g-shop-contents {
    padding-bottom: 8.8rem;
  }
}

.g-shop-contents__banner {
  display: block;
  width: 100%;
  aspect-ratio: 47/18;
}
.g-shop-contents__banner picture {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.g-shop-contents__banner picture img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.g-shop-contents__banner.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}

/*---------------------------------------------------
list
-----------------------------------------------------*/
.g-shop-contents__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.2rem;
  margin-top: 8.8rem;
}
@media only screen and (max-width: 1200px) {
  .g-shop-contents__list {
    margin-top: 6.4rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-shop-contents__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 4rem;
  }
}
@media only screen and (max-width: 520px) {
  .g-shop-contents__list {
    grid-template-columns: 100%;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-block-topics {
  display: grid;
  grid-template-columns: 28.4rem 1fr;
  gap: min(6.4rem, 3.3333333333vw);
  padding: 12rem 0;
}
@media only screen and (max-width: 1200px) {
  .g-block-topics {
    grid-template-columns: 24.8rem 1fr;
  }
}
@media only screen and (max-width: 1023px) {
  .g-block-topics {
    grid-template-columns: 100%;
    gap: 0;
    padding: 0;
  }
}
.g-block-topics--home {
  padding: 22rem 0;
}
@media only screen and (max-width: 1023px) {
  .g-block-topics--home {
    padding: 4rem 0;
  }
}

.g-block-topics__txt {
  padding-top: 4rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-topics__txt {
    display: flex;
    gap: 2.4rem;
    justify-content: space-between;
  }
}

@media only screen and (max-width: 1023px) {
  .g-block-topics__head {
    display: flex;
    gap: 2.4rem;
    justify-content: space-between;
    align-items: flex-start;
  }
}

/*---------------------------------------------------
more
-----------------------------------------------------*/
.g-block-topics__more {
  margin-top: 8rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-topics__more {
    margin-top: 0;
  }
}

/*---------------------------------------------------
list
-----------------------------------------------------*/
@media only screen and (max-width: 1023px) {
  .g-block-topics__main {
    width: calc(100% + 2em);
    margin-top: 6.4rem;
    margin-inline: -1em;
  }
}
@media only screen and (max-width: 767px) {
  .g-block-topics__main {
    margin-top: 4.8rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-block-sns {
  display: grid;
  grid-template-columns: 28.4rem 1fr;
  gap: 0 min(6.4rem, 3.3333333333vw);
  padding: 7.2rem 0 15.2rem;
  position: relative;
}
@media only screen and (max-width: 1200px) {
  .g-block-sns {
    grid-template-columns: 24.8rem 1fr;
  }
}
@media only screen and (max-width: 1023px) {
  .g-block-sns {
    grid-template-columns: 100%;
    gap: 0;
    padding: 6.4rem 0;
  }
}
.g-block-sns::before, .g-block-sns::after {
  content: "";
  display: block;
  width: 100vw;
  height: 1px;
  background-color: var(--color-lineGray02);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width: 1023px) {
  .g-block-sns::before, .g-block-sns::after {
    display: none;
  }
}
.g-block-sns::after {
  top: auto;
  bottom: 0;
}
.shops .g-block-sns::after {
  display: none;
}

.g-block-sns__main {
  width: 100%;
  min-width: 0;
  grid-column: 2/-1;
  grid-row: 1/-3;
}
@media only screen and (max-width: 1023px) {
  .g-block-sns__main {
    grid-column: auto;
    grid-row: auto;
  }
}

@media only screen and (max-width: 1023px) {
  .g-block-sns__head {
    display: flex;
    gap: 2.4rem;
    justify-content: space-between;
    align-items: flex-start;
  }
}

/*---------------------------------------------------
more
-----------------------------------------------------*/
.g-block-sns__more {
  margin-top: 1.8rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-sns__more {
    margin-top: 0;
  }
}

/*---------------------------------------------------
icons
-----------------------------------------------------*/
.g-block-sns__icons {
  margin-top: 2.8rem;
}
@media only screen and (max-width: 1023px) {
  .g-block-sns__icons {
    justify-self: center;
  }
}

/*---------------------------------------------------
slider
-----------------------------------------------------*/
.g-block-sns__sliderwrap {
  width: 100%;
  position: relative;
}
@media only screen and (max-width: 1023px) {
  .g-block-sns__sliderwrap {
    margin-top: 3.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-block-sns__sliderwrap {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
}

.g-block-sns__slider {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.g-block-sns__slider .swiper-slide {
  width: 22.2rem;
}
@media only screen and (max-width: 1440px) {
  .g-block-sns__slider .swiper-slide {
    width: 18rem;
  }
}
@media only screen and (max-width: 767px) {
  .g-block-sns__slider .swiper-slide {
    width: 14.4rem;
  }
}

.g-block-sns__slider__nav {
  display: block;
  width: 3.2rem;
  line-height: 0;
  cursor: pointer;
  transition: 0.5s cubic-bezier(0.26, 0.06, 0, 1) all;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.g-block-sns__slider__nav.is-hover {
  opacity: 0.6;
  transition: 0.25s cubic-bezier(0.18, 0.06, 0.23, 1) all;
}
@media only screen and (max-width: 1440px) {
  .g-block-sns__slider__nav {
    width: 2.4rem;
  }
}
.g-block-sns__slider__nav--prev {
  right: calc(100% + 1.2rem);
}
@media only screen and (max-width: 1440px) {
  .g-block-sns__slider__nav--prev {
    right: calc(100% + 0.4rem);
  }
}
@media only screen and (max-width: 767px) {
  .g-block-sns__slider__nav--prev {
    right: auto;
    left: 1.6rem;
  }
}
.g-block-sns__slider__nav--prev i {
  transform: rotate(180deg);
}
.g-block-sns__slider__nav--next {
  left: calc(100% + 1.2rem);
}
@media only screen and (max-width: 1440px) {
  .g-block-sns__slider__nav--next {
    left: calc(100% + 0.4rem);
  }
}
@media only screen and (max-width: 767px) {
  .g-block-sns__slider__nav--next {
    left: auto;
    right: 1.6rem;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-cars {
  padding: 6.4rem 0 24rem;
  --_container-max-width: var(--_global--container-max-width);
  --_container-margin: var(--_global--container-margin);
  --_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
  --_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
  max-width: var(--_container-max-width) !important;
  margin-inline: auto;
}
@media only screen and (max-width: 1023px) {
  .g-cars {
    margin-left: calc(var(--_container-margin-left));
    margin-right: calc(var(--_container-margin-right));
  }
}

.g-cars__tabs {
  margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1023px) {
  .g-cars__section__title {
    margin-left: 0;
    margin-right: 0;
  }
}

.g-cars__tabs__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
}
@media only screen and (max-width: 767px) {
  .g-cars__tabs__list {
    gap: 0.8rem;
  }
}
.g-cars__tabs__list li {
  align-self: self-end;
}
.g-cars__tabs__list button {
  display: block;
  border-bottom: 2px solid var(--color-lineGray01);
  color: var(--color-lineGray01);
  width: 100%;
  padding: 0.8rem 0.8rem;
}
.g-cars__tabs__list button.active {
  font-weight: 700;
  color: var(--color-black);
  border-bottom: 2px solid var(--color-black);
}

.g-cars__tabcontent {
  display: none;
}
.g-cars__tabcontent.active {
  display: block;
}

.g-cars__searchway__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.g-cars__searchway__list a {
  display: block;
  text-align: center;
  padding: 1.2rem 0;
  border-bottom: 1px solid var(--color-black);
  border-right: 1px solid var(--color-black);
  font-weight: 500;
  text-decoration: none;
}
.g-cars__searchway__list a.is-hover {
  background-color: var(--color-black);
  color: var(--color-white);
}
.g-cars__searchway__list li:nth-of-type(-n + 3) a {
  border-top: 1px solid var(--color-black);
}
.g-cars__searchway__list li:nth-of-type(3n + 1) a {
  border-left: 1px solid var(--color-black);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
@media only screen and (max-width: 1023px) {
  .g-form-dms {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-block-csr {
  position: relative;
}
.g-block-csr > div {
  overflow: hidden;
}

.g-block-csr__slider__nav {
  width: 2.4rem;
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  z-index: 10;
}
@media only screen and (max-width: 767px) {
  .g-block-csr__slider__nav {
    transform: translateY(0);
    width: 2rem;
  }
}
.g-block-csr__slider__nav--prev {
  left: 0;
  transform: translateX(-50%);
}
.g-block-csr__slider__nav--prev i {
  transform: rotate(180deg);
}
.g-block-csr__slider__nav--next {
  right: 0;
  transform: translateX(50%);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-calendar {
  border: 1px solid var(--color-lineGray03);
  padding: clamp(1.6rem, 1.0416666667vw, 2.4rem);
  background-color: #FFF;
}
.g-gutenberg .g-calendar {
  width: 60rem;
  margin-inline: auto !important;
  margin-top: 9rem;
}
@media only screen and (max-width: 767px) {
  .g-gutenberg .g-calendar {
    width: 100%;
    margin-bottom: 5.6rem;
  }
}
.g-calendar .rc-calendar__wrap {
  display: flex;
  align-items: flex-start;
  gap: 2.4rem;
}
.g-calendar .rc-calendar__header {
  flex-shrink: 0;
  display: grid;
  grid-template: "date date" auto "prev next" auto/1fr 1fr;
  width: 5rem;
}
.g-calendar h3[name=rcCalendarMonthTtl] {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: date;
  text-align: center;
  margin-bottom: 1.6rem;
}
.g-calendar h3[name=rcCalendarMonthTtl] .year {
  display: block;
  font-size: clamp(1.4rem, 0.8854166667vw, 2.4rem);
  line-height: 1;
}
.g-calendar h3[name=rcCalendarMonthTtl] .month {
  display: block;
  font-size: clamp(2.4rem, 2.0833333333vw, 4rem);
  line-height: 1;
}
.g-calendar .rc-calendar__btn {
  display: block;
  aspect-ratio: 1/1;
  position: relative;
  text-indent: 200%;
  overflow: hidden;
  white-space: nowrap;
  width: 1.6rem;
}
.g-calendar .rc-calendar__btn::before {
  content: "";
  display: block;
  width: 50%;
  height: 50%;
  border-top: solid 2px var(--color-bgBlack);
  border-right: solid 2px var(--color-bgBlack);
  transform: rotate(45deg);
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.g-calendar .rc-calendar__btn[name=rcPrevBtn] {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: prev;
}
.g-calendar .rc-calendar__btn[name=rcPrevBtn]::before {
  transform: rotate(-135deg);
}
.g-calendar .rc-calendar__btn[name=rcNextBtn] {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
  grid-area: next;
  justify-self: end;
}
.g-calendar .rc-calendar__table {
  flex-basis: 100%;
}
.g-calendar .rc-calendar__table td {
  border: 0.5208333333vw solid #FFF;
}
.g-calendar .rc-calendar__table td div {
  padding: 0.6rem;
  line-height: 1;
}
.g-calendar .rc-calendar__table tr td:nth-of-type(1) div,
.g-calendar .rc-calendar__table tr th:nth-of-type(1) {
  color: #FA2828;
}
.g-calendar .rc-calendar__table tr td:nth-of-type(7) div,
.g-calendar .rc-calendar__table tr th:nth-of-type(7) {
  color: #3B6BA2;
}
.g-calendar .rc_cal_day--end {
  background-color: #FFF;
  opacity: 0.2;
}

.g-calendar__note {
  text-align: right;
}
.g-calendar__note i {
  background-color: #c7c7c7;
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 0.4em;
  vertical-align: baseline;
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-search__head {
  display: flex;
  justify-content: space-between;
  gap: var(--space-2);
}

/*レスポンシブ用*/
/*-----------------------------------------
mixins
-----------------------------------------*/
.g-pagenation {
  padding-top: 2.4rem;
  display: flex;
  gap: 0.8rem;
  justify-content: flex-start;
}
.g-pagenation .pager {
  text-align: center;
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--color-lineGray03);
  background-color: #FFF;
  font-size: clamp(1.4rem, 0.8854166667vw, 2rem);
  color: var(--color-darkGray);
  text-decoration: none;
}
.g-pagenation .pager.current {
  background-color: var(--color-darkGray);
  color: var(--color-white);
  pointer-events: none;
  border: 1px solid var(--color-darkGray);
}
.g-pagenation .next, .g-pagenation .prev {
  flex-shrink: 0;
  text-align: center;
  padding: 0.4rem 0.8rem;
  border: 1px solid var(--color-lineGray03);
  background-color: #FFF;
  font-size: clamp(1.4rem, 0.8854166667vw, 2rem);
  color: var(--color-darkGray);
  text-decoration: none;
}

.u-mat {
  position: relative;
}
.u-mat > * {
  position: relative;
}
.u-mat::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
@media only screen and (max-width: 1023px) {
  .u-mat::before {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
.u-mat--gray::before {
  background-color: var(--color-bgGray01);
}
.u-mat--lightgray::before {
  background-color: var(--color-bgGray02);
}
.u-mat--black::before {
  background-color: var(--color-bgBlack);
}
.u-mat--paleorange::before {
  background-color: var(--color-paleorange);
}
.u-mat--cmn::before {
  background-color: var(--color-main);
}
.u-mat--toyopet::before {
  background-color: var(--color-main-toyopet);
}
.u-mat--toyopet-light::before {
  background-color: var(--color-main-toyopet-light);
}
.u-mat--netz::before {
  background-color: var(--color-main-netz);
}
.u-mat--netz-light::before {
  background-color: var(--color-main-netz-light);
}
.u-mat--u-car::before {
  background-color: var(--color-main-ucar);
}
.u-mat--u-car-light::before {
  background-color: var(--color-main-ucar-light);
}
@media only screen and (max-width: 1023px) {
  .u-mat--spnone::before {
    display: none;
  }
}

.u-m__xs {
  margin: var(--space-1);
}

.u-m__s {
  margin: var(--space-2);
}

.u-m__m {
  margin: var(--space-3);
}

.u-m__l {
  margin: var(--space-4);
}

.u-m__2l {
  margin: var(--space-5);
}

.u-m__3l {
  margin: var(--space-6);
}

.u-m__4l {
  margin: var(--space-7);
}

.u-m__5l {
  margin: var(--space-8);
}

.u-mt__xs {
  margin-top: var(--space-1);
}

.u-mt__s {
  margin-top: var(--space-2);
}

.u-mt__m {
  margin-top: var(--space-3);
}

.u-mt__l {
  margin-top: var(--space-4);
}

.u-mt__2l {
  margin-top: var(--space-5);
}

.u-mt__3l {
  margin-top: var(--space-6);
}

.u-mt__4l {
  margin-top: var(--space-7);
}

.u-mt__5l {
  margin-top: var(--space-8);
}

.u-mb__xs {
  margin-bottom: var(--space-1);
}

.u-mb__s {
  margin-bottom: var(--space-2);
}

.u-mb__m {
  margin-bottom: var(--space-3);
}

.u-mb__l {
  margin-bottom: var(--space-4);
}

.u-mb__2l {
  margin-bottom: var(--space-5);
}

.u-mb__3l {
  margin-bottom: var(--space-6);
}

.u-mb__4l {
  margin-bottom: var(--space-7);
}

.u-mb__5l {
  margin-bottom: var(--space-8);
}

.u-margin-ia {
  margin-inline: auto;
}

.u-p__xs {
  padding: var(--space-1);
}

.u-p__s {
  padding: var(--space-2);
}

.u-p__m {
  padding: var(--space-3);
}

.u-p__l {
  padding: var(--space-4);
}

.u-p__2l {
  padding: var(--space-5);
}

.u-p__3l {
  padding: var(--space-6);
}

.u-p__4l {
  padding: var(--space-7);
}

.u-p__5l {
  padding: var(--space-8);
}

.u-pt__xs {
  padding-top: var(--space-1);
}

.u-pt__s {
  padding-top: var(--space-2);
}

.u-pt__m {
  padding-top: var(--space-3);
}

.u-pt__l {
  padding-top: var(--space-4);
}

.u-pt__2l {
  padding-top: var(--space-5);
}

.u-pt__3l {
  padding-top: var(--space-6);
}

.u-pt__4l {
  padding-top: var(--space-7);
}

.u-pt__5l {
  padding-top: var(--space-8);
}

.u-pb__xs {
  padding-bottom: var(--space-1);
}

.u-pb__s {
  padding-bottom: var(--space-2);
}

.u-pb__m {
  padding-bottom: var(--space-3);
}

.u-pb__l {
  padding-bottom: var(--space-4);
}

.u-pb__2l {
  padding-bottom: var(--space-5);
}

.u-pb__3l {
  padding-bottom: var(--space-6);
}

.u-pb__4l {
  padding-bottom: var(--space-7);
}

.u-pb__5l {
  padding-bottom: var(--space-8);
}

.u-pargin-ia {
  padding-inline: auto;
}

.u-fs__p10s10 {
  font-size: 1rem;
}

.u-fs__p10s11 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p10s12 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p10s13 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p10s14 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p10s15 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p10s16 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p10s17 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p10s18 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p10s19 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p10s20 {
  font-size: 1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p10s20 {
    font-size: 2rem;
  }
}

.u-fs__p11s10 {
  font-size: 1.1rem;
}

.u-fs__p11s11 {
  font-size: 1.1rem;
}

.u-fs__p11s12 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p11s13 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p11s14 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p11s15 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p11s16 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p11s17 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p11s18 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p11s19 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p11s20 {
  font-size: 1.1rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p11s20 {
    font-size: 2rem;
  }
}

.u-fs__p12s10 {
  font-size: 1.2rem;
}

.u-fs__p12s11 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p12s12 {
  font-size: 1.2rem;
}

.u-fs__p12s13 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p12s14 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p12s15 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p12s16 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p12s17 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p12s18 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p12s19 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p12s20 {
  font-size: 1.2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p12s20 {
    font-size: 2rem;
  }
}

.u-fs__p13s10 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s10 {
    font-size: 1rem;
  }
}

.u-fs__p13s11 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p13s12 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p13s13 {
  font-size: 1.3rem;
}

.u-fs__p13s14 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p13s15 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p13s16 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p13s17 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p13s18 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p13s19 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p13s20 {
  font-size: 1.3rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p13s20 {
    font-size: 2rem;
  }
}

.u-fs__p14s10 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s10 {
    font-size: 1rem;
  }
}

.u-fs__p14s11 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p14s12 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p14s13 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p14s14 {
  font-size: 1.4rem;
}

.u-fs__p14s15 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p14s16 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p14s17 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p14s18 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p14s19 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p14s20 {
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p14s20 {
    font-size: 2rem;
  }
}

.u-fs__p15s10 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s10 {
    font-size: 1rem;
  }
}

.u-fs__p15s11 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p15s12 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p15s13 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p15s14 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p15s15 {
  font-size: 1.5rem;
}

.u-fs__p15s16 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p15s17 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p15s18 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p15s19 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p15s20 {
  font-size: 1.5rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p15s20 {
    font-size: 2rem;
  }
}

.u-fs__p16s10 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s10 {
    font-size: 1rem;
  }
}

.u-fs__p16s11 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p16s12 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p16s13 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p16s14 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p16s15 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p16s16 {
  font-size: 1.6rem;
}

.u-fs__p16s17 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p16s18 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p16s19 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p16s20 {
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p16s20 {
    font-size: 2rem;
  }
}

.u-fs__p17s10 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s10 {
    font-size: 1rem;
  }
}

.u-fs__p17s11 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p17s12 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p17s13 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p17s14 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p17s15 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p17s16 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p17s17 {
  font-size: 1.7rem;
}

.u-fs__p17s18 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p17s19 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p17s20 {
  font-size: 1.7rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p17s20 {
    font-size: 2rem;
  }
}

.u-fs__p18s10 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s10 {
    font-size: 1rem;
  }
}

.u-fs__p18s11 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p18s12 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p18s13 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p18s14 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p18s15 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p18s16 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p18s17 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p18s18 {
  font-size: 1.8rem;
}

.u-fs__p18s19 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p18s20 {
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p18s20 {
    font-size: 2rem;
  }
}

.u-fs__p19s10 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s10 {
    font-size: 1rem;
  }
}

.u-fs__p19s11 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p19s12 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p19s13 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p19s14 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p19s15 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p19s16 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p19s17 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p19s18 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p19s19 {
  font-size: 1.9rem;
}

.u-fs__p19s20 {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p19s20 {
    font-size: 2rem;
  }
}

.u-fs__p20s10 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s10 {
    font-size: 1rem;
  }
}

.u-fs__p20s11 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s11 {
    font-size: 1.1rem;
  }
}

.u-fs__p20s12 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s12 {
    font-size: 1.2rem;
  }
}

.u-fs__p20s13 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s13 {
    font-size: 1.3rem;
  }
}

.u-fs__p20s14 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s14 {
    font-size: 1.4rem;
  }
}

.u-fs__p20s15 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s15 {
    font-size: 1.5rem;
  }
}

.u-fs__p20s16 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s16 {
    font-size: 1.6rem;
  }
}

.u-fs__p20s17 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s17 {
    font-size: 1.7rem;
  }
}

.u-fs__p20s18 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s18 {
    font-size: 1.8rem;
  }
}

.u-fs__p20s19 {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .u-fs__p20s19 {
    font-size: 1.9rem;
  }
}

.u-fs__p20s20 {
  font-size: 2rem;
}

.u-color__blue {
  color: var(--color-main);
}

.u-color__black {
  color: var(--color-txt);
}

.u-width__short {
  max-width: 45rem;
  width: 100%;
  margin-inline: auto;
}

.u-width__max {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.u-ta--center {
  text-align: center;
}

.u-ta--right {
  text-align: right;
}

.u-ta--left {
  text-align: left;
}

.u-home__messagemat {
  padding-top: 3.6458333333vw;
  padding-bottom: 3.6458333333vw;
}
@media only screen and (max-width: 767px) {
  .u-home__messagemat {
    padding-top: 18.9189189189vw;
    padding-bottom: 18.9189189189vw;
  }
}

.u-home__policymat {
  padding-bottom: 3.6458333333vw;
}
@media only screen and (max-width: 767px) {
  .u-home__policymat {
    padding-bottom: 18.9189189189vw;
  }
}

.u-home__profilemat {
  padding-right: var(--margin-5l);
  padding-left: var(--margin-5l);
}
@media only screen and (max-width: 767px) {
  .u-home__profilemat {
    padding-right: 1.6rem;
    padding-left: 1.6rem;
  }
}

.u-home__topicsmat {
  text-align: center;
}

.u-home__sns {
  display: block;
}
@media only screen and (max-width: 767px) {
  .u-home__sns {
    display: none;
  }
}

.js-fadein,
.js-fadein-follow {
  opacity: 0;
  transition: all 0.5s ease-out;
}
.js-fadein.to-left, .to-left .js-fadein,
.js-fadein-follow.to-left,
.to-left .js-fadein-follow {
  transform: translateX(50px);
}
.js-fadein.to-right, .to-right .js-fadein,
.js-fadein-follow.to-right,
.to-right .js-fadein-follow {
  transform: translateX(-50px);
}
@media only screen and (max-width: 1023px) {
  .js-fadein.to-right-sp, .to-right-sp .js-fadein,
  .js-fadein-follow.to-right-sp,
  .to-right-sp .js-fadein-follow {
    transform: translateX(-50px);
  }
}
.js-fadein.is-visible, .is-visible .js-fadein,
.js-fadein-follow.is-visible,
.is-visible .js-fadein-follow {
  opacity: 1;
  transform: translateY(0);
  transform: translateX(0);
}

.js-fadein-follow {
  transition: all 0.5s ease-out;
  transition-delay: 0.1s;
}

.js-fadein-late {
  opacity: 0;
  transition: all 0.5s ease-out;
  transition-delay: 0.4s;
}
.is-visible .js-fadein-late {
  opacity: 1;
}

.js-service-scroll li {
  opacity: 0;
  transition: all 0.8s ease-out;
}
.js-service-scroll li:nth-child(odd) {
  transform: translateY(50px);
}
@media only screen and (max-width: 1023px) {
  .js-service-scroll li:nth-child(odd) {
    transform: translateY(0);
  }
}
@media only screen and (max-width: 767px) {
  .js-service-scroll li:nth-child(odd) {
    transform: translateX(-100px);
  }
}
.js-service-scroll li:nth-child(even) {
  transform: translateY(-50px);
}
@media only screen and (max-width: 1023px) {
  .js-service-scroll li:nth-child(even) {
    transform: translateY(0);
  }
}
@media only screen and (max-width: 767px) {
  .js-service-scroll li:nth-child(even) {
    transform: translateX(100px);
  }
}
.js-service-scroll li.is-visible {
  opacity: 1;
}
.js-service-scroll li.is-visible:nth-child(odd) {
  transform: translateX(0) translateY(0);
}
.js-service-scroll li.is-visible:nth-child(even) {
  transform: translateX(0) translateY(0);
}
