@charset "UTF-8";
:root {
  --main: 0, 211, 214;
  --main02: 11, 192, 195;
  --black: 51, 51, 51;
  --dark: 44, 44, 44;
  --gray: 112, 112, 112;
  --lightgray: 225, 225, 225;
  --red: 255, 0, 0;
  --border: rgba(var(--black), 0.6);
  --contents_width: 1100px;
  --contents_wide_width: 1480px;
  --body_padding_side: 100px;
  --contents_width_with_padding: 1200px;
  --contents_wide_width_with_padding: 1580px;
  --sidebar_width: 250px;
  --header_height_sp: 55px;
  --header_height_pc: 120px;
  --line_height_def: 1.8;
  --line_height_wide: 2;
  --line_height_head: 1.5;
  --line_height_tight: 1.2;
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
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 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

html {
  font-size: 62.5%;
  word-break: break-all;
}

body {
  -webkit-text-size-adjust: 100%;
}

article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
menu,
nav,
section {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  word-break: break-word;
  line-break: strict;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

ul:not([class]),
ol:not([class]) {
  padding-left: 1.25em;
}

ul[class],
ol[class] {
  list-style: none;
}

span {
  font-weight: inherit;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  color: inherit;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}
@media all and (min-width: 768px) {
  a:hover {
    text-decoration: none;
  }
}

a[class] {
  text-decoration: none;
}

ins {
  background-color: #ff9;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

address {
  font-style: normal;
}

sup {
  vertical-align: text-top;
  font-size: 0.75em;
}

sub {
  vertical-align: text-bottom;
  font-size: 0.75em;
}

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid rgb(var(--border));
  margin: 1em 0;
  padding: 0;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

iframe {
  max-width: 100%;
}

/* form
================================================== */
input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select,
option {
  display: block;
  width: 100%;
  max-width: 100%;
  font: inherit;
  text-align: inherit;
  outline: none;
  border: 1px solid;
  border-radius: 0;
  background: none;
}
@media all and (max-width: 767px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  textarea,
  select,
  option {
    font-size: 1.6rem;
  }
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

input[type="radio"],
input[type="checkbox"] {
  margin: 0;
  padding: 0;
  vertical-align: middle;
}

select {
  color: inherit;
}

textarea {
  resize: vertical;
}

button {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  outline: none;
  border-radius: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: inherit;
  border: none;
  cursor: pointer;
}

@media (hover: hover) and (pointer: fine) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* 02_base
================================================ */
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src:
    url("../fonts/NotoSansJP-Medium.woff2") format("woff2"),
    url("../fonts/NotoSansJP-Medium.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: block;
  src:
    url("../fonts/NotoSansJP-Bold.woff2") format("woff2"),
    url("../fonts/NotoSansJP-Bold.woff") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src:
    url("../fonts/Inter_18pt-Regular.woff2") format("woff2"),
    url("../fonts/Inter_18pt-Regular.woff") format("woff");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src:
    url("../fonts/Inter_18pt-Medium.woff2") format("woff2"),
    url("../fonts/Inter_18pt-Medium.woff") format("woff");
}
body {
  min-width: 320px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  font-weight: 500;
  color: rgb(var(--black));
  font-size: 1.4rem;
  line-height: var(--line_height_def);
  letter-spacing: 0.06em;
  background: #f6f6f6;
}
@media all and (min-width: 768px) {
  body {
    min-width: var(--contents_width_with_padding);
    font-size: 1.6rem;
  }
}

html[lang="en"] body {
  font-family: "Inter", sans-serif;
  letter-spacing: 0.05em;
  font-weight: 500;
  word-break: break-word;
}

.l-wrapper {
  overflow: clip;
}

@media all and (min-width: 768px) {
  .l-container.is-col2 {
    display: grid;
    grid-template-columns: auto var(--sidebar_width);
    gap: 0 66px;
    width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
  }
  .l-container.is-col2 .l-contents {
    flex: 1;
  }
  .l-container.is-col2 .l-sidebar {
    flex-basis: var(--sidebar_width);
  }
  .l-container.is-col2.is-single {
    grid-template-columns: calc(100% - var(--sidebar_width) - 50px) var(
        --sidebar_width
      );
    width: 100%;
    max-width: var(--contents_wide_width_with_padding);
    padding-left: 50px;
    padding-right: 50px;
    box-sizing: border-box;
  }
  .l-container.is-col2.is-single .l-contents {
    max-width: 1164px;
  }
  .l-container.is-col2.is-single .l-sidebar {
    width: 100%;
    max-width: 250px;
    min-width: 170px;
  }
}

/* sp <--> tb <--> pc
-------------------------------------- */
.u-media-query {
  display: none;
  font-family: "sp";
}
@media all and (min-width: 768px) {
  .u-media-query {
    font-family: "tb";
  }
}
@media all and (min-width: 1200px) {
  .u-media-query {
    font-family: "pc";
  }
}

@media all and (max-width: 1199px) {
  .u-view-pc {
    display: none !important;
  }
}

@media all and (max-width: 767px) {
  .u-view-tb {
    display: none !important;
  }
}
@media all and (min-width: 1200px) {
  .u-view-tb {
    display: none !important;
  }
}

@media all and (min-width: 768px) {
  .u-view-sp {
    display: none !important;
  }
}

@media all and (min-width: 1200px) {
  .u-view-under-tb {
    display: none !important;
  }
}

@media all and (max-width: 767px) {
  .u-view-upper-tb {
    display: none !important;
  }
}

/* overflow
-------------------------------------- */
.u-overflow-wrap {
  overflow: auto;
}
.u-overflow-wrap .u-overflow-sec {
  overflow: hidden;
}
@media all and (min-width: 768px) {
  .u-overflow-wrap .u-overflow-sec {
    min-width: var(--contents_width_with_padding);
  }
}

/* text
-------------------------------------- */
.u-uppercase {
  text-transform: uppercase;
}

.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.u-bold {
  font-weight: 700;
}

.u-en {
  font-family: "Inter", sans-serif;
  line-height: var(--line_height_tight);
  font-weight: 500;
  letter-spacing: 0.05em;
}

/* link
-------------------------------------- */
a.u-alpha {
  display: block;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  a.u-alpha {
    transition: all 0.3s ease;
  }
  a.u-alpha:hover {
    opacity: 0.7;
  }
}

a.u-zoom {
  display: block;
  text-decoration: none;
}
a.u-zoom .u-zoom__img {
  display: block;
}
a.u-zoom .u-zoom__img-wrap {
  display: block;
  overflow: hidden;
}
@media (hover: hover) and (pointer: fine) {
  a.u-zoom .u-zoom__img {
    transition: all 0.3s ease;
  }
  a.u-zoom:hover .u-zoom__img {
    transform: scale(1.1);
  }
}

/* layout
-------------------------------------- */
.u-inner {
  box-sizing: border-box;
  padding-left: 20px;
  padding-right: 20px;
}
@media all and (max-width: 767px) {
  .u-inner.is-thin-sp {
    padding-right: 30px;
    padding-left: 30px;
  }
}
@media all and (min-width: 768px) {
  .u-inner {
    width: 100%;
    max-width: var(--contents_width_with_padding);
    margin-right: auto;
    margin-left: auto;
    padding-left: 50px;
    padding-right: 50px;
  }
  .u-inner.is-wide-pc {
    max-width: var(--contents_wide_width_with_padding);
  }
}

/*  .c-archive01
================================================== */
.c-archive01__item {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: #cfcfcf;
}
.c-archive01__item-in {
  display: block;
  padding: 15px 0;
}
.c-archive01__item-meta {
  display: flex;
  flex-wrap: wrap;
}
.c-archive01__item-date {
  margin: 0 10px 0 0;
  padding: 5px 0;
  color: #707070;
}
.c-archive01__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
}
.c-archive01__item-cat-item {
  margin: 0 5px 5px 0;
  padding: 2px 12px;
  background: #6e6e6e;
  color: #fff;
  font-size: 1.2rem;
}
.c-archive01__item-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 3.6em;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  font-weight: 700;
  margin-top: 5px;
}
@media all and (min-width: 768px) {
  .c-archive01__item {
    display: block;
  }
  .c-archive01__item-head {
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
  .c-archive01__item-in {
    padding: 20px 0;
  }
  .c-archive01__item-date {
    margin-right: 16px;
  }
  .c-archive01__item-cat-item {
    font-size: 1.3rem;
  }
  .c-archive01__item-head {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .c-archive01.is-flex-pc {
    display: flex;
    flex-wrap: wrap;
    margin: -10px -20px;
  }
  .c-archive01.is-flex-pc .c-archive01__item {
    width: calc(50% - 40px);
    margin: 10px 20px;
  }
}

/*  .c-archive02
================================================== */
.c-archive02__item {
  margin-top: 30px;
}
.c-archive02__img {
  position: relative;
}
.c-archive02__img::after {
  content: "";
  background: url(../img/common/img_layer01.png) no-repeat center/cover;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.c-archive02__head {
  margin-top: 10px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-archive02__txt {
  margin-top: 7px;
}
.c-archive02__cats {
  margin-top: 5px;
}
.c-archive02__cats-item {
  margin-right: 8px;
  font-size: 1.2rem;
  color: #707070;
  display: inline-block;
}
.c-archive02__cats-item::before {
  content: "#";
}
@media all and (min-width: 768px) {
  .c-archive02 {
    display: flex;
    flex-wrap: wrap;
    margin: -20px;
  }
  .c-archive02__item {
    width: calc(50% - 40px);
    margin: 20px;
  }
  .c-archive02__img {
    height: 199px;
  }
  .c-archive02__img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .c-archive02__head {
    margin-top: 20px;
    font-size: 2.4rem;
  }
  .c-archive02__cats {
    margin-top: 0;
  }
}

/*  .c-archive03
================================================== */
.c-archive03 + .c-archive03 {
  margin-top: 30px;
  padding-top: 10px;
  border-top: solid 1px;
}
.c-archive03__item {
  margin-top: 20px;
}
.c-archive03__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 10px;
}
.c-archive03__child-item {
  position: relative;
  padding-left: 10px;
  margin: 2px 0;
}
.c-archive03__child-item::before {
  position: absolute;
  content: "";
  width: 5px;
  height: 5px;
  top: 10px;
  left: 0;
  background: rgb(var(--black));
}
.c-archive03__child-link {
  text-decoration: underline !important;
  transition: color 0.3s ease;
}
.c-archive03__child-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 1.8em;
  line-height: 1.8;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
@media all and (min-width: 768px) {
  .c-archive03 + .c-archive03 {
    margin-top: 60px;
  }
  .c-archive03__item {
    margin-top: 40px;
  }
  .c-archive03__head {
    font-size: 3.2rem;
  }
  .c-archive03__child {
    display: flex;
    flex-wrap: wrap;
  }
  .c-archive03__child-item {
    width: 240px;
    padding-left: 15px;
    box-sizing: border-box;
    margin: 5px 0;
    margin-right: 45px;
  }
  .c-archive03__child-item:nth-child(4n) {
    margin-right: 0;
  }
  .c-archive03__child-item::before {
    top: 13px;
  }
  .c-archive03__child-link:hover {
    color: rgb(var(--main));
    text-decoration: none !important;
  }
  .c-archive03__child-head {
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-archive03__child-link:hover {
    color: rgb(var(--main));
    text-decoration: none !important;
  }
}

/*  .c-archive04
================================================== */
.c-archive04__item {
  box-sizing: border-box;
}
.c-archive04__item-main-bnr {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 39%;
}
.c-archive04__item-main-bnr-img {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.c-archive04__item-main-bnr-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-archive04__item-main-bnr-txt {
  position: absolute;
  top: 50%;
  left: 28px;
  right: 28px;
  transform: translateY(-50%);
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  line-height: var(--line_height_head);
}
.c-archive04__item-main-txt {
  margin-top: 15px;
}
.c-archive04__item-foot .c-archive04__item-foot-btn {
  margin-top: 5px;
}
@media all and (max-width: 767px) {
  .c-archive04__item + .c-archive04__item {
    margin-top: 30px;
  }
}
@media all and (min-width: 768px) {
  .c-archive04 {
    display: flex;
    flex-wrap: wrap;
    margin: -40px -20px 0;
  }
  .c-archive04__item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-basis: calc((100% - 120px) / 3);
    max-width: calc((100% - 120px) / 3);
    margin: 40px 20px 0;
  }
  .c-archive04.is-slide {
    display: block;
    margin: 0;
  }
  .c-archive04.is-slide .c-archive04__item {
    display: block;
    margin: 0;
    max-width: unset;
  }
}

/*  .c-archive05
================================================== */
.c-archive05__item {
  padding: 15px 0;
}
.c-archive05__item:not(:first-child) {
  border-top: 1px solid #cfcfcf;
}
.c-archive05__item:last-child {
  border-bottom: 1px solid #cfcfcf;
}
.c-archive05__item-img {
  position: relative;
  width: 100%;
  padding-top: 18.7%;
}
.c-archive05__item-img img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-archive05__item-img-txt {
  position: absolute;
  left: 12px;
  bottom: 12px;
  color: #fff;
  font-weight: 700;
  line-height: var(--line_height_tight);
}
.c-archive05__item-areaTxt {
  margin-top: 8px;
  letter-spacing: 0.03em;
}
.c-archive05__item-areaTxt-head {
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-archive05__item-cat {
  display: flex;
  flex-wrap: wrap;
  margin-top: 5px;
  color: rgb(var(--gray));
  font-size: 1.2rem;
}
.c-archive05__item-cat-item {
  margin-right: 0.5em;
}
.c-archive05__item-cat-item::before {
  content: "#";
}
@media all and (min-width: 768px) {
  .c-archive05 {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -20px;
  }
  .c-archive05__item {
    width: 530px;
    margin: 0 20px;
    padding: 30px 0;
    border-bottom: 1px solid #cfcfcf;
  }
  .c-archive05__item:not(:first-child) {
    border-top: none;
  }
  .c-archive05__item-img {
    position: relative;
    width: 100%;
    padding-top: 18.7%;
  }
  .c-archive05__item-img img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .c-archive05__item-img-txt {
    position: absolute;
    left: 12px;
    bottom: 12px;
    color: #fff;
    font-weight: 700;
    line-height: var(--line_height_tight);
  }
  .c-archive05__item-areaTxt {
    margin-top: 8px;
    letter-spacing: 0.03em;
  }
  .c-archive05__item-areaTxt-head {
    font-weight: 700;
    line-height: var(--line_height_head);
  }
  .c-archive05__item-cat {
    display: flex;
    flex-wrap: wrap;
    margin-top: 5px;
    color: rgb(var(--gray));
    font-size: 1.2rem;
  }
  .c-archive05__item-cat-item {
    margin-right: 0.5em;
  }
  .c-archive05__item-cat-item::before {
    content: "#";
  }
}

/*  .c-archive06
================================================== */
.c-archive06__item:not(:first-child) {
  padding-top: 40px;
  border-top: 1px solid #cfcfcf;
}
.c-archive06__item:not(:last-child) {
  padding-bottom: 40px;
}
.c-archive06__item-img {
  position: relative;
  width: 100%;
  padding-top: 41.3%;
}
.c-archive06__item-img img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-archive06__item-areaTxt {
  margin-top: 15px;
}
.c-archive06__item-areaTxt-head {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-archive06__item-areaTxt-txt {
  overflow: hidden;
  display: -webkit-box;
  max-height: 7.2em;
  line-height: 1.8;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  margin-top: 15px;
  letter-spacing: 0.03em;
}
.c-archive06__item-areaTxt .c-archive06__item-areaTxt-btn {
  margin-top: 20px;
}
@media all and (min-width: 768px) {
  .c-archive06__item {
    display: flex;
    justify-content: space-between;
  }
  .c-archive06__item:not(:first-child) {
    padding-top: 60px;
  }
  .c-archive06__item:not(:last-child) {
    padding-bottom: 60px;
  }
  .c-archive06__item:nth-child(even) {
    flex-direction: row-reverse;
  }
  .c-archive06__item-img {
    flex: 0 0 550px;
    padding-top: 227px;
  }
  .c-archive06__item-areaTxt {
    flex: 0 0 500px;
    margin-top: 0;
  }
  .c-archive06__item-areaTxt-head {
    font-size: 3.2rem;
  }
  .c-archive06__item-areaTxt-txt {
    max-height: 5.4em;
    -webkit-line-clamp: 3;
    margin-top: 20px;
  }
  .c-archive06__item-areaTxt .c-archive06__item-areaTxt-btn {
    margin-top: 50px;
  }
}

/*  .c-archive07
================================================== */
.c-archive07__item {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: #cfcfcf;
}
.c-archive07__item-in {
  display: block;
  padding: 20px 0 15px;
}
.c-archive07__item-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.c-archive07__item-date {
  color: #707070;
  font-size: 1rem;
}
.c-archive07__item-date + .c-archive07__item-date {
  margin-top: 5px;
}
.c-archive07__item-date-wrap {
  margin: 0 0 0 9px;
}
.c-archive07__item-date-ico {
  display: inline-block;
  width: 11px;
  margin-right: 3px;
  vertical-align: middle;
}
.c-archive07__item-date-ico svg {
  display: block;
}
.c-archive07__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
}
.c-archive07__item-cat-item {
  margin: 0 5px 5px 0;
  padding: 0 12px;
  border: 1px solid rgb(var(--gray));
  border-radius: 27px;
  color: rgb(var(--gray));
}
.c-archive07__item-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 3.6em;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  font-weight: 700;
  margin-top: 5px;
}
@media all and (min-width: 768px) {
  .c-archive07__item {
    display: block;
  }
  .c-archive07__item-head {
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
  .c-archive07__item-in {
    padding: 20px 0;
  }
  .c-archive07__item-date + .c-archive07__item-date {
    margin: 0 0 0 15px;
  }
  .c-archive07__item-date-wrap {
    display: flex;
    flex-wrap: wrap;
    margin-right: 16px;
  }
  .c-archive07__item-date-ico {
    position: relative;
    top: -1px;
    margin-right: 5px;
  }
  .c-archive07__item-cat-item {
    font-size: 1.3rem;
  }
  .c-archive07__item-head {
    margin-top: 10px;
  }
}

@media all and (min-width: 768px) {
  .c-archive07.is-flex-pc {
    display: flex;
    flex-wrap: wrap;
    margin: -10px -20px;
  }
  .c-archive07.is-flex-pc .c-archive07__item {
    width: calc(50% - 40px);
    margin: 10px 20px;
  }
}

/*  .c-archive08
================================================== */
.c-archive08.is-first .c-archive08__item:nth-child(-n + 3) {
  display: none;
}
.c-archive08__item {
  padding: 20px 0 32px;
  border-style: solid;
  border-width: 0 0 1px;
  border-color: #cfcfcf;
}
.c-archive08__item:first-child {
  padding-top: 0;
}
.c-archive08__item:nth-child(2) {
  padding-top: 30px;
}
.c-archive08__item-main-in {
  display: block;
}
.c-archive08__item-main-img {
  position: relative;
  display: block;
  height: 0;
  padding-top: 61.64%;
}
.c-archive08__item-main-img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-archive08__item-main-head {
  margin-top: 10px;
  line-height: 1.8;
  font-size: 1.6rem;
  font-weight: 700;
}
.c-archive08__item-areaTxt {
  margin-top: 12px;
}
.c-archive08__item-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.c-archive08__item-date {
  color: rgb(var(--gray));
  font-size: 1rem;
}
.c-archive08__item-date + .c-archive08__item-date {
  margin-top: 3px;
}
.c-archive08__item-date-wrap {
  margin: 0 0 0 9px;
}
.c-archive08__item-date-ico {
  display: inline-block;
  width: 11px;
  margin-right: 3px;
  vertical-align: middle;
}
.c-archive08__item-date-ico svg {
  display: block;
}
.c-archive08__item-author {
  margin-left: 8px;
  margin-bottom: 2px;
  color: rgb(var(--gray));
  font-size: 1.2rem;
}
.c-archive08__item-author::before {
  content: "｜";
  margin-right: 5px;
}
.c-archive08__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
}
.c-archive08__item-cat-item {
  margin: 0 5px 5px 0;
}
.c-archive08__item-cat-item-in {
  display: block;
  padding: 0 12px;
  border: 1px solid currentColor;
  border-radius: 27px;
}
.c-archive08__item-txt {
  overflow: hidden;
  display: -webkit-box;
  max-height: 5.4em;
  line-height: 1.8;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  margin-top: 8px;
}
.c-archive08__item.is-seminar-first {
  position: relative;
  margin: 0 -30px;
  border-bottom: none;
}
.c-archive08__item.is-seminar-first::after {
  content: "";
  position: absolute;
  width: calc(100% - 40px);
  height: 1px;
  left: 20px;
  bottom: 0;
  background-color: #cfcfcf;
}
.c-archive08__item.is-seminar-first .c-archive08__item-main-head {
  padding: 0 20px;
  line-height: 1.5;
}
.c-archive08__item.is-seminar-first .c-archive08__item-areaTxt {
  padding: 0 20px;
}
.c-archive08__item.is-seminar-first .c-archive08__item-cat {
  margin-bottom: 2px;
}
@media all and (max-width: 767px) {
  .c-archive08__item.is-snippet {
    position: relative;
    padding: 24px 0;
    margin: 24px 0;
    border: none;
    z-index: 1;
  }
  .c-archive08__item.is-snippet::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -24px;
    right: -24px;
    z-index: -1;
    background: rgba(var(--gray), 0.08);
  }
}
@media all and (min-width: 768px) {
  .c-archive08__item {
    padding: 23px 0;
    border-width: 0;
  }
  .c-archive08__item::after {
    content: "";
    display: block;
    clear: both;
  }
  .c-archive08__item:last-child {
    padding-bottom: 0;
  }
  .c-archive08__item-main-img {
    float: left;
    width: 305px;
    height: 188px;
    padding-top: 0;
    -o-object-fit: cover;
    object-fit: cover;
    margin-right: 30px;
  }
  .c-archive08__item-main-img.is-width100 {
    float: none;
    width: 100%;
    height: auto;
    margin-right: 0;
  }
  .c-archive08__item-main-img.is-width100 img {
    position: static;
  }
  .c-archive08__item-main-head {
    margin-top: 0;
    font-size: 2.1rem;
  }
  .c-archive08__item-areaTxt {
    margin-top: 6px;
  }
  .c-archive08__item-date {
    font-size: 1.1rem;
  }
  .c-archive08__item-date + .c-archive08__item-date {
    margin: 0 0 0 18px;
  }
  .c-archive08__item-date-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 0 10px;
  }
  .c-archive08__item-date-ico {
    position: relative;
    top: -1px;
    width: 13px;
    margin-right: 5px;
  }
  .c-archive08__item-author {
    margin-left: 15px;
  }
  .c-archive08__item-author::before {
    margin-right: 10px;
  }
  .c-archive08__item-cat-item-in {
    font-size: 1.3rem;
  }
  .c-archive08__item-txt {
    max-height: 6.4em;
    -webkit-line-clamp: 4;
    line-height: 1.6;
    font-size: 1.3rem;
  }
  .c-archive08__item.is-seminar-first {
    margin: 0;
  }
  .c-archive08__item.is-seminar-first::after {
    content: none;
  }
  .c-archive08__item.is-seminar-first .c-archive08__item-main-in img {
    float: none;
    width: 100%;
    height: auto;
  }
  .c-archive08__item.is-seminar-first .c-archive08__item-main-head {
    margin-top: 15px;
    padding: 0;
    font-size: 2.9rem;
  }
  .c-archive08__item.is-seminar-first .c-archive08__item-areaTxt {
    padding: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-archive08__item-main-in .c-archive08__item-main-head {
    transition: opacity 0.3s ease;
  }
  .c-archive08__item-main-in:hover .c-archive08__item-main-head {
    opacity: 0.5;
  }
  .c-archive08__item-cat-item-in {
    transition: all 0.3s ease;
  }
  .c-archive08__item-cat-item-in:hover {
    color: #fff;
    background: rgb(var(--main));
    border-color: rgb(var(--main));
    color: #fff;
  }
}

@media all and (min-width: 768px) {
  .c-archive08.is-related {
    display: flex;
    margin: 0 -1.72% 50px;
  }
  .c-archive08.is-related .c-archive08__item {
    flex-basis: 21.56%;
    max-width: 21.56%;
    margin: 0 1.72%;
    padding: 0;
  }
  .c-archive08.is-related .c-archive08__item:nth-child(2) {
    padding-top: 0;
  }
  .c-archive08.is-related .c-archive08__item-cat {
    margin-bottom: 2px;
  }
  .c-archive08.is-related .c-archive08__item-cat-item-in {
    letter-spacing: 0;
  }
  .c-archive08.is-related .c-archive08__item-main-img {
    float: none;
    width: 100%;
    height: 0;
    padding-top: 61.64%;
    -o-object-fit: none;
    object-fit: none;
    margin: 0;
  }
  .c-archive08.is-related .c-archive08__item-main-head {
    margin: 15px 0;
    font-size: 1.6rem;
  }
}

/*  .c-archive09
================================================== */
.c-archive09 {
  --headHeight: 120px;
}
.c-archive09__head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 4.5em;
  line-height: 1.5;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  box-sizing: border-box;
  height: var(--headHeight);
  display: flex;
  align-items: center;
  color: #fff;
  font-weight: 700;
  line-height: var(--line_height_head);
  padding: 24px 20px;
  background: url(../img/case/bg_archives01.jpg) no-repeat center/cover;
  position: relative;
  overflow: hidden;
}
.c-archive09__head::before {
  position: absolute;
  bottom: -5px;
  right: -4px;
  content: "";
  width: 28px;
  height: 21px;
  background: url(../img/common/bg_bit01_pc.png) no-repeat center top/100% auto;
  -webkit-animation: frame5BitAnim 2s steps(4) infinite;
  animation: frame5BitAnim 2s steps(4) infinite;
}
.c-archive09__cat {
  display: grid;
  grid-template-columns: 4em 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.c-archive09__cat-head {
  font-weight: 700;
  font-size: 1.2rem;
}
.c-archive09__cat-item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 25px;
  padding: 4px 20px;
  font-size: 1.2rem;
  border: 1px solid rgb(var(--black));
}
.c-archive09__support {
  display: grid;
  grid-template-columns: 4em 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.c-archive09__support-head {
  font-weight: 700;
  font-size: 1.2rem;
}
.c-archive09__support-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 10px;
}
.c-archive09__support-item {
  color: #707070;
}
.c-archive09__volume {
  display: grid;
  grid-template-columns: 4em 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.c-archive09__volume-head {
  font-weight: 700;
  font-size: 1.2rem;
}
.c-archive09__volume-item {
  color: #707070;
}
@media all and (min-width: 768px) {
  .c-archive09 {
    --headHeight: 200px;
  }
  .c-archive09__head {
    font-size: 2.4rem;
    padding: 47px 40px 46px;
  }
  .c-archive09__head::before {
    bottom: -2px;
    right: 0;
    width: 28px;
    height: 28px;
  }
  .c-archive09__cat {
    margin-top: 20px;
  }
  .c-archive09__cat-head {
    font-size: 1.4rem;
  }
  .c-archive09__cat-item {
    font-size: 1.4rem;
  }
  .c-archive09__support-head {
    font-size: 1.4rem;
  }
  .c-archive09__support-item {
    font-size: 1.4rem;
  }
  .c-archive09__volume-head {
    font-size: 1.4rem;
  }
  .c-archive09__volume-item {
    font-size: 1.4rem;
  }
}

/*  .c-creative-archive01
================================================== */
.c-creative-archive01 {
  display: grid;
  gap: 40px;
}
.c-creative-archive01__item-img {
  aspect-ratio: 340/192;
  background: #ececec;
}
.c-creative-archive01__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.c-creative-archive01__item-lbl {
  font-size: 1.3rem;
  color: #707070;
  font-weight: 600;
  margin-top: 20px;
}
.c-creative-archive01__item-head {
  font-size: 1.6rem;
  font-weight: bold;
}
.c-creative-archive01__item-cat {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}
.c-creative-archive01__item-cat-in {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 25px;
  padding: 2px 19px;
  font-size: 1.2rem;
  border: 1px solid rgb(var(--black));
}
@media all and (min-width: 768px) {
  .c-creative-archive01 {
    grid-template-columns: repeat(3, 1fr);
  }
  .c-creative-archive01__item-cat {
    margin-top: 20px;
  }
  .c-creative-archive01__item-cat-in {
    font-size: 1.4rem;
  }
}

/* .c-attempt01
================================================== */
.c-attempt01 {
  position: relative;
}
.c-attempt01__top-head {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 15px;
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-attempt01__main {
  position: relative;
  padding: 100px;
  margin: -100px -130px;
  box-sizing: border-box;
}
.c-attempt01__main-bg {
  display: none;
  padding: 100px;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  pointer-events: none;
  z-index: 1;
  background: url(../img/home/bg_attempt01.jpg) no-repeat right center/cover;
  -webkit-clip-path: circle(0px);
  clip-path: circle(0px);
}
.c-attempt01__main-bg-list-item {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-top: max(41.33%, 155px);
}
.c-attempt01__main-bg-list-item::after {
  content: "";
  background: url(../img/common/img_layer01.png) no-repeat center/cover;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.c-attempt01__main-bg-list-item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-attempt01__sub {
  position: relative;
  z-index: 2;
}
@media all and (max-width: 767px) {
  .c-attempt01__main-bg-list {
    transform: scale(1.05);
  }
}
@media all and (min-width: 768px) {
  .c-attempt01 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .c-attempt01__top {
    flex-basis: 24.35%;
  }
  .c-attempt01__top-head {
    margin-bottom: 40px;
    font-size: 3.2rem;
  }
  .c-attempt01__main {
    flex-basis: calc(75.65% + 400px);
    max-width: 1217px;
    margin: -200px;
    padding: 200px;
  }
  .c-attempt01__main-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    padding: 200px;
  }
  .c-attempt01__main-bg-list {
    margin: -35px -30px;
  }
  .c-attempt01__sub {
    flex-basis: 24.35%;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-attempt01__main-bg {
    display: block;
  }
}

@media all and (max-width: 767px) {
  .c-attempt01.is-home .c-attempt01__main {
    margin: -100px -120px;
  }
}
@media all and (min-width: 768px) {
  .c-attempt01.is-home {
    flex-direction: row-reverse;
  }
  .c-attempt01.is-home .c-attempt01__main {
    margin: -170px -200px -230px;
  }
}
@media all and (min-width: 1580px) {
  .c-attempt01.is-home .c-attempt01__main {
    margin: -197px -200px -257px;
  }
}

@media all and (min-width: 768px) {
  .c-attempt01.is-service {
    display: block;
  }
}

.c-attempt01-list {
  position: relative;
}
.c-attempt01-list__item {
  position: relative;
}
.c-attempt01-list__item + .c-attempt01-list__item {
  margin-top: 3px;
}
.c-attempt01-list__item-link {
  position: relative;
  display: flex;
  align-items: flex-end;
  box-sizing: border-box;
  height: 0;
  padding-top: 41.33%;
}
.c-attempt01-list__item-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.c-attempt01-list__item-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.c-attempt01-list__item-detail {
  position: relative;
  padding: 20px 70px 20px 20px;
}
.c-attempt01-list__item-detail-sub {
  font-size: 1.1rem;
  margin-bottom: 3px;
}
.c-attempt01-list__item-detail-main {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-attempt01-list__item-detail-txt {
  overflow: hidden;
  display: -webkit-box;
  max-height: 3.6em;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
.c-attempt01-list__item-ico {
  width: 25px;
  height: 17px;
  position: absolute;
  bottom: 23px;
  right: 20px;
}
@media all and (min-width: 768px) {
  .c-attempt01-list__item + .c-attempt01-list__item {
    margin-top: 30px;
  }
  .c-attempt01-list__item-link {
    padding-top: 37.58%;
  }
  .c-attempt01-list__item-detail {
    padding: 50px 100px 50px 60px;
  }
  .c-attempt01-list__item-detail-sub {
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  .c-attempt01-list__item-detail-main {
    font-size: 3rem;
  }
  .c-attempt01-list__item-detail-txt {
    margin-top: 5px;
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
  .c-attempt01-list__item-ico {
    width: 41px;
    height: 29px;
    bottom: 50px;
    right: 50px;
  }
}

/* .c-bg-bit01
================================================== */
@media all and (min-width: 768px) {
  .c-bg-bit01 {
    position: relative;
  }
  .c-bg-bit01::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 97px;
    width: 220px;
    height: 150px;
    background: url(../img/common/bg_bit03.png) no-repeat 0 100% / cover;
  }
}

/* .c-bg-bit02
================================================== */
@media all and (min-width: 768px) {
  .c-bg-bit02 {
    position: relative;
  }
  .c-bg-bit02::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 97px;
    width: 220px;
    height: 150px;
    background: url(../img/common/bg_bit04.png) no-repeat 0 100% / cover;
  }
}

/* .c-btn01.has-arrow
================================================== */
.c-btn01.has-arrow {
  max-width: 200px;
}
.c-btn01.has-arrow .c-btn01__ico::after {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
  margin-top: -3px;
}

/* .c-btn01.is-bg-black
================================================== */
.c-btn01.is-bg-black .c-btn01__link {
  color: #fff;
  background: #000;
  border-color: #000;
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01.is-bg-black .c-btn01__link:hover,
  .c-btn01.is-bg-black .c-btn01__link:focus-visible {
    background: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/* .c-btn01.is-bg-dark
================================================== */
.c-btn01.is-bg-dark .c-btn01__link {
  color: #fff;
  background: #333;
  border-color: #333;
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01.is-bg-dark .c-btn01__link:hover,
  .c-btn01.is-bg-dark .c-btn01__link:focus-visible {
    background: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/* .c-btn01.is-bg-main
================================================== */
.c-btn01.is-bg-main .c-btn01__link {
  color: #fff;
  background: rgb(var(--main));
  border-color: rgb(var(--main));
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01.is-bg-main .c-btn01__link:hover,
  .c-btn01.is-bg-main .c-btn01__link:focus-visible {
    color: rgb(var(--main));
    background: #fff;
    border-color: #fff;
  }
}

/* .c-btn01.is-border-white
================================================== */
.c-btn01.is-border-white .c-btn01__link {
  color: #fff;
}

/* .c-btn01
================================================== */
.c-btn01 {
  display: flex;
  align-items: stretch;
  max-width: 160px;
  min-height: 70px;
  line-height: var(--line_height_head);
  font-weight: 700;
}
.c-btn01__link {
  position: relative;
  border: 1px solid;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
}
.c-btn01__ico {
  margin: 0.2em 0 0 10px;
}
.c-btn01__ico svg {
  transition: none !important;
}
.c-btn01.is-right {
  margin-left: auto;
}
.c-btn01.is-center {
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 767px) {
  .c-btn01.is-right-sp {
    margin-left: auto;
  }
  .c-btn01.is-center-sp {
    margin-left: auto;
    margin-right: auto;
  }
}
@media all and (min-width: 768px) {
  .c-btn01 {
    max-width: 200px;
    min-height: 88px;
  }
  .c-btn01.is-right-pc {
    margin-left: auto;
  }
  .c-btn01.is-center-pc {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn01__link {
    transition: all 0.3s ease;
  }
  .c-btn01__link:hover,
  .c-btn01__link:focus-visible {
    color: #fff;
    background: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/* .c-btn02.is-border-gray
================================================== */
.c-btn02.is-border-gray .c-btn02__link {
  border-bottom-color: rgba(var(--black), 0.2);
}
@media (hover: hover) and (pointer: fine) {
  .c-btn02.is-border-gray .c-btn02__link:hover {
    border-bottom-color: rgb(var(--main));
  }
}

/* .c-btn02
================================================== */
.c-btn02 {
  display: flex;
  line-height: var(--line_height_head);
  font-weight: 700;
  margin-top: 30px;
}
.c-btn02__link {
  position: relative;
  width: 185px;
  border-bottom: 1px solid;
  padding: 10px 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  box-sizing: border-box;
}
.c-btn02__ico {
  width: 25px;
  height: 17px;
  margin-bottom: 2px;
}
.c-btn02__ico svg {
  transition: none !important;
}
.c-btn02.is-right {
  justify-content: flex-end;
}
.c-btn02.is-center {
  justify-content: center;
}
@media all and (max-width: 767px) {
  .c-btn02.is-right-sp {
    justify-content: flex-end;
  }
  .c-btn02.is-center-sp {
    justify-content: center;
  }
}
@media all and (min-width: 768px) {
  .c-btn02 {
    font-size: 1.7rem;
  }
  .c-btn02__ico {
    width: 41px;
    height: 29px;
    margin-bottom: -2px;
  }
  .c-btn02__link {
    width: 250px;
    padding: 18px 0;
  }
  .c-btn02.is-right-pc {
    justify-content: flex-end;
  }
  .c-btn02.is-center-pc {
    justify-content: center;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn02__link {
    transition: all 0.3s ease;
  }
  .c-btn02__link:hover,
  .c-btn02__link:focus-visible {
    color: rgb(var(--main));
  }
  .c-btn02__link:hover .c-btn02__ico svg.has-multiple use,
  .c-btn02__link:focus-visible .c-btn02__ico svg.has-multiple use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .c-btn02__link:hover .c-btn02__ico svg.has-multiple use:nth-of-type(2),
  .c-btn02__link:focus-visible
    .c-btn02__ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .c-btn02__link:hover .c-btn02__ico svg.has-multiple use:nth-of-type(3),
  .c-btn02__link:focus-visible
    .c-btn02__ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/* .c-btn02.is-large
================================================== */
.c-btn02.is-large {
  margin-top: 5px;
}
.c-btn02.is-large .c-btn02__link {
  width: 150px;
  padding: 15px 0;
}
@media all and (min-width: 768px) {
  .c-btn02.is-large {
    font-size: 1.6rem;
  }
  .c-btn02.is-large .c-btn02__link {
    width: 220px;
    padding: 23px 0;
  }
}

/* .c-btn02.is-wide
================================================== */
.c-btn02.is-wide .c-btn02__link {
  width: 100%;
}
@media all and (min-width: 768px) {
  .c-btn02.is-wide .c-btn02__link {
    width: 320px;
  }
}

/* .c-btn02.is-download
================================================== */
.c-btn02.is-download .c-btn02__ico {
  width: 12px;
  height: 14px;
}
@media all and (min-width: 768px) {
  .c-btn02.is-download .c-btn02__ico {
    margin-bottom: 4px;
  }
}

/* .c-btn02.is-back
================================================== */
.c-btn02.is-back .c-btn02__link {
  flex-direction: row-reverse;
}
.c-btn02.is-back .c-btn02__ico {
  transform: scaleX(-1);
}

/* .c-btn02.is-white
================================================== */
.c-btn02.is-white .c-btn02__link {
  border-color: #fff;
  color: #fff;
}
.c-btn02.is-white .c-btn02__txt {
  color: #fff;
  transition: all 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .c-btn02.is-white .c-btn02__link {
    transition: all 0.3s ease;
  }
  .c-btn02.is-white .c-btn02__link:hover,
  .c-btn02.is-white .c-btn02__link:focus-visible {
    border-color: rgb(var(--main));
    color: rgb(var(--main));
  }
  .c-btn02.is-white .c-btn02__link:hover .c-btn02__txt,
  .c-btn02.is-white .c-btn02__link:focus-visible .c-btn02__txt {
    color: rgb(var(--main));
  }
}

/* .c-btn02-anchor
================================================== */
.c-btn02-anchor .c-btn02 {
  margin: 0;
}
.c-btn02-anchor .c-btn02__link {
  width: 100%;
  padding: 15px 0;
}
.c-btn02-anchor .c-btn02__ico {
  transform: rotate(90deg);
}
@media all and (min-width: 768px) {
  .c-btn02-anchor {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -20px;
  }
  .c-btn02-anchor .c-btn02 {
    margin: 0 20px;
  }
  .c-btn02-anchor .c-btn02__link {
    width: 340px;
    padding: 23px 0;
  }
  .c-btn02-anchor .c-btn02__ico {
    width: 22px;
    height: 18px;
    margin-bottom: 4px;
  }
}

/* .c-btn02.is-blank
================================================== */
.c-btn02.is-blank {
  gap: 5px;
}
.c-btn02.is-blank .c-btn02__txt {
  flex: 1;
}
.c-btn02.is-blank .c-btn02__ico {
  width: 14px;
  height: 14px;
}
@media all and (min-width: 768px) {
  .c-btn02.is-blank .c-btn02__ico {
    width: 18px;
    height: 18px;
    margin-bottom: 2px;
  }
}

/* .c-btn02-list
================================================== */
.c-btn02-list .c-btn02 {
  margin: 0;
}
.c-btn02-list .c-btn02__link {
  width: 100%;
  padding: 15px 0;
}
@media all and (min-width: 768px) {
  .c-btn02-list {
    display: flex;
    flex-wrap: wrap;
    margin: -20px -20px 0;
  }
  .c-btn02-list .c-btn02 {
    margin: 20px 20px 0;
  }
  .c-btn02-list .c-btn02__link {
    width: 340px;
    padding: 23px 0;
  }
  .c-btn02-list .c-btn02__ico {
    width: 41px;
    height: 29px;
  }
}

/* .c-btn03.has-arrow
================================================== */
.c-btn03.has-arrow .c-btn03__link::after {
  display: inline-block;
  width: 11px;
  height: 18px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translateY(-50%);
}
@media all and (max-width: 767px) {
  .c-btn03.has-arrow .c-btn03__link {
    padding: 5px 35px 5px 20px;
  }
  .c-btn03.has-arrow-sp .c-btn03__link {
    padding: 5px 35px 5px 20px;
  }
  .c-btn03.has-arrow-sp .c-btn03__link::after {
    display: inline-block;
    width: 7px;
    height: 11px;
    vertical-align: middle;
    color: currentColor;
    background: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
  }
}
@media all and (min-width: 768px) {
  .c-btn03.has-arrow {
    font-size: 1.9rem;
  }
  .c-btn03.has-arrow .c-btn03__link::after {
    right: 30px;
  }
}

/* .c-btn03.is-bg-white
================================================== */
.c-btn03.is-bg-white .c-btn03__link {
  background-color: #fff;
  color: rgb(var(--main02));
}
@media (hover: hover) and (pointer: fine) {
  .is-bg-white .c-btn03__link:hover,
  .is-bg-white .c-btn03__link:focus-visible {
    color: #fff;
    background: rgb(var(--main02));
  }
}

/* .c-btn03.is-small
================================================== */
.c-btn03.is-small .c-btn03__ico {
  margin-right: 5px;
}
.c-btn03.is-small .c-btn03__ico.c-ico.is-mail02,
.c-btn03.is-small .c-btn03__ico.c-ico.is-document02 {
  width: 16px;
}
@media all and (max-width: 767px) {
  .c-btn03.is-small-sp .c-btn03__ico {
    margin-right: 5px;
  }
  .c-btn03.is-small-sp .c-btn03__ico.c-ico.is-mail02,
  .c-btn03.is-small-sp .c-btn03__ico.c-ico.is-document02 {
    width: 16px;
  }
}

/* .c-btn03
================================================== */
.c-btn03 {
  display: flex;
  align-items: stretch;
  margin: 30px auto 0;
  width: 100%;
  min-height: 52px;
  line-height: var(--line_height_head);
  font-weight: 700;
}
.c-btn03__wrap {
  margin-top: 30px;
}
.c-btn03__wrap .c-btn03 {
  margin-top: 0;
}
.c-btn03__wrap .c-btn03 + .c-btn03 {
  margin-top: 10px;
}
.c-btn03__link {
  position: relative;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  padding: 5px;
  border: 2px solid rgb(var(--main02));
  background-color: rgb(var(--main02));
  color: #fff;
}
.c-btn03__ico {
  margin-top: 1px;
  margin-right: 7px;
}
.c-btn03__ico.c-ico.is-mail02,
.c-btn03__ico.c-ico.is-document02 {
  width: 22px;
}
.c-btn03__ico svg {
  transition: none !important;
}
.c-btn03.is-right {
  margin-left: auto;
}
.c-btn03.is-center {
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 767px) {
  .c-btn03.is-right-sp {
    margin-left: auto;
  }
  .c-btn03.is-center-sp {
    margin-left: auto;
    margin-right: auto;
  }
}
@media all and (min-width: 768px) {
  .c-btn03 {
    max-width: 472px;
    min-height: 80px;
    font-size: 1.8rem;
  }
  .c-btn03__wrap {
    display: flex;
    margin-top: 50px;
  }
  .c-btn03__wrap .c-btn03 {
    margin: 0;
  }
  .c-btn03__wrap .c-btn03 + .c-btn03 {
    margin-top: 0;
    margin-left: 10px;
  }
  .c-btn03.is-right-pc {
    margin-left: auto;
  }
  .c-btn03.is-center-pc {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn03__link {
    transition: all 0.3s ease;
  }
  .c-btn03__link:hover,
  .c-btn03__link:focus-visible {
    background-color: #fff;
    color: rgb(var(--main02));
  }
}

/* en
================================================ */
html[lang="en"] .c-btn03__ico {
  margin-top: -1px;
}

/* .c-btn04.is-white
================================================== */
.c-btn04.is-white .c-btn04__ico::after {
  color: rgb(var(--black));
}
@media (hover: hover) and (pointer: fine) {
  .c-btn04.is-white .c-btn04__link:hover .c-btn04__ico,
  .c-btn04.is-white .c-btn04__link:focus-visible .c-btn04__ico {
    background-color: rgb(var(--black));
  }
}

/* .c-btn04
================================================== */
@-webkit-keyframes borderAnime {
  0% {
    transform: scaleX(1);
    transform-origin: right top;
  }
  49% {
    transform: scaleX(0);
    transform-origin: right top;
  }
  50% {
    transform: scaleX(0);
    transform-origin: left top;
  }
  100% {
    transform: scaleX(1);
    transform-origin: left top;
  }
}
@keyframes borderAnime {
  0% {
    transform: scaleX(1);
    transform-origin: right top;
  }
  49% {
    transform: scaleX(0);
    transform-origin: right top;
  }
  50% {
    transform: scaleX(0);
    transform-origin: left top;
  }
  100% {
    transform: scaleX(1);
    transform-origin: left top;
  }
}
.c-btn04 {
  margin-top: 30px;
  display: flex;
  line-height: var(--line_height_head);
  font-weight: 700;
}
.c-btn04__link {
  position: relative;
  display: flex;
  align-items: center;
  padding-bottom: 6px;
}
.c-btn04__link::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  content: "";
  border-bottom: 1px solid;
}
.c-btn04__ico {
  margin-left: 13px;
  position: relative;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid;
  background-color: currentColor;
  box-sizing: border-box;
}
.c-btn04__ico::after {
  display: inline-block;
  width: 7px;
  height: 11px;
  vertical-align: middle;
  color: #fff;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  margin-left: 1px;
}
.c-btn04.is-right {
  justify-content: flex-end;
}
.c-btn04.is-center {
  justify-content: center;
}
@media all and (max-width: 767px) {
  .c-btn04.is-right-sp {
    justify-content: flex-end;
  }
  .c-btn04.is-center-sp {
    justify-content: center;
  }
}
@media all and (min-width: 768px) {
  .c-btn04 {
    margin-top: 35px;
    font-size: 2rem;
  }
  .c-btn04__link {
    padding-bottom: 14px;
  }
  .c-btn04__ico {
    width: 37px;
    height: 37px;
  }
  .c-btn04__ico::after {
    display: inline-block;
    width: 8px;
    height: 13px;
    vertical-align: middle;
    color: #fff;
    background: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    content: "";
    margin-left: 2px;
  }
  .c-btn04.is-right-pc {
    justify-content: flex-end;
  }
  .c-btn04.is-center-pc {
    justify-content: center;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn04__link:hover::after,
  .c-btn04__link:focus-visible::after {
    -webkit-animation: borderAnime 0.6s ease 0s 1 both;
    animation: borderAnime 0.6s ease 0s 1 both;
  }
  .c-btn04__link:hover .c-btn04__ico,
  .c-btn04__link:focus-visible .c-btn04__ico {
    background-color: #fff;
    border-color: #fff;
  }
  .c-btn04__link:hover .c-btn04__ico::after,
  .c-btn04__link:focus-visible .c-btn04__ico::after {
    color: currentColor;
  }
  .c-btn04__ico {
    transition: all 0.3s ease;
  }
  .c-btn04__ico::after {
    transition: color 0.3s ease;
  }
}

/* .c-card01
================================================== */
.c-card01__img {
  margin-bottom: 13px;
}
.c-card01__head {
  font-weight: 700;
  line-height: var(--line_height_tight);
}
.c-card01__txt {
  margin-top: 8px;
}
@media all and (max-width: 767px) {
  .c-card01__item + .c-card01__item {
    margin-top: 20px;
  }
}
@media all and (min-width: 768px) {
  .c-card01 {
    display: flex;
    flex-wrap: wrap;
    margin: -30px -20px;
  }
  .c-card01__item {
    width: calc(50% - 40px);
    margin: 30px 20px;
  }
  .c-card01__img {
    margin-bottom: 25px;
  }
  .c-card01__head {
    font-size: 2rem;
  }
  .c-card01__txt {
    margin-top: 15px;
  }
}

/* .c-color-black
================================================== */
.c-color-black {
  color: rgb(var(--black));
}

/* .c-color-white
================================================== */
.c-color-white {
  color: #fff;
}

/* .c-color-main
================================================== */
.c-color-main {
  color: rgb(var(--main));
}

/* .c-color-gray
================================================== */
.c-color-gray {
  color: rgb(var(--gray));
}

/* c-company-logos01
================================================== */
.c-company-logos01 {
  --itemWidth: 83px;
  background-color: #fff;
}
.c-company-logos01__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.c-company-logos01__wrapper {
  overflow: hidden;
  display: flex;
  margin-top: 20px;
}
.c-company-logos01__head {
  text-align: center;
  font-weight: 700;
  line-height: var(--line_height_head);
  font-size: 2rem;
}
.c-company-logos01__list {
  display: flex;
  align-items: center;
  white-space: nowrap;
  -webkit-animation: infinity-scroll-left 30s infinite linear 0.5s both;
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
  flex-shrink: 0;
  min-width: calc(var(--itemWidth) * 10);
}
.c-company-logos01__item {
  flex-shrink: 0;
  max-width: var(--itemWidth);
}
@media all and (min-width: 768px) {
  .c-company-logos01 {
    --itemWidth: 200px;
  }
  .c-company-logos01__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .c-company-logos01__wrapper {
    margin-top: 43px;
  }
  .c-company-logos01__head {
    font-size: 3.8rem;
  }
}

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

@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
/* .hbspt-form
================================================== */
.hbspt-form label span {
  font-weight: 700;
}
.hbspt-form .field {
  padding: 10px 0;
}
.hbspt-form .field.hs_contact_privacy {
  padding-top: 15px;
}
.hbspt-form .input {
  margin-right: 0 !important;
}
.hbspt-form input[type="text"],
.hbspt-form input[type="email"],
.hbspt-form input[type="tel"],
.hbspt-form input[type="date"],
.hbspt-form textarea,
.hbspt-form select {
  padding: 8px 10px;
  width: 100% !important;
  border: none;
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 1.6rem;
  font-family: inherit;
  margin-top: 7px;
  min-height: 45px;
}
.hbspt-form input[type="text"]::-moz-placeholder,
.hbspt-form input[type="email"]::-moz-placeholder,
.hbspt-form input[type="tel"]::-moz-placeholder,
.hbspt-form input[type="date"]::-moz-placeholder,
.hbspt-form textarea::-moz-placeholder,
.hbspt-form select::-moz-placeholder {
  color: #b7b7b7;
}
.hbspt-form input[type="text"]::placeholder,
.hbspt-form input[type="email"]::placeholder,
.hbspt-form input[type="tel"]::placeholder,
.hbspt-form input[type="date"]::placeholder,
.hbspt-form textarea::placeholder,
.hbspt-form select::placeholder {
  color: #b7b7b7;
}
.hbspt-form input[type="date"] {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.hbspt-form .hs-fieldtype-select .input {
  position: relative;
}
.hbspt-form .hs-fieldtype-select .input::before {
  position: absolute;
  top: 48%;
  right: 10px;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid rgb(var(--black));
  pointer-events: none;
}
.hbspt-form textarea {
  height: 120px;
}
.hbspt-form .hs-resume .input {
  margin-top: 6px;
}
.hbspt-form input[type="checkbox"] {
  display: none;
}
.hbspt-form input[type="checkbox"] + span {
  font-weight: normal;
  position: relative;
  display: inline-block;
  text-align: left;
  padding-left: 25px;
  box-sizing: border-box;
  cursor: pointer;
}
.hbspt-form input[type="checkbox"] + span::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  width: 15px;
  height: 15px;
  background: #fff;
  border: 1px solid #cfcfcf;
  box-sizing: border-box;
}
.hbspt-form input[type="checkbox"]:checked + span::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 5px;
  width: 4px;
  height: 8px;
  transform: rotate(45deg);
  border-bottom: 2px solid rgb(var(--black));
  border-right: 2px solid rgb(var(--black));
}
.hbspt-form input[type="submit"] {
  position: relative;
  display: block;
  width: 100%;
  padding: 15px 0 !important;
  text-decoration: none;
  color: #fff;
  background: rgb(var(--black));
  box-sizing: border-box;
  overflow: hidden;
  border: 0;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  font-weight: 700;
  font-family: inherit;
  text-align: center;
  outline: none;
  margin: 8px auto 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
}
.hbspt-form .hs-error-msg,
.hbspt-form .hs-main-font-element {
  color: rgb(var(--red));
  font-size: 1.4rem;
}
.hbspt-form .hs-richtext {
  color: rgb(var(--black));
}
.hbspt-form .hs-richtext a {
  transition: color 0.3s ease;
}
.hbspt-form .hs-richtext a[target]::after {
  display: inline-block;
  width: 11px;
  height: 11px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
  transition: none;
  margin: 0 0 3px 3px;
}
.hbspt-form .form-columns-2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.hbspt-form .form-columns-2 .field {
  width: calc(50% - 8px) !important;
}
@media all and (max-width: 767px) {
  .hbspt-form fieldset {
    max-width: 100% !important;
  }
}
@media all and (min-width: 768px) {
  .hbspt-form label .hs-form-required::before {
    font-size: 1.3rem;
    width: 51px;
    height: 27px;
    left: 10px;
  }
  .hbspt-form .field {
    padding: 9px 0;
  }
  .hbspt-form .field.hs_contact_privacy {
    padding: 15px 0 0;
  }
  .hbspt-form input[type="text"],
  .hbspt-form input[type="email"],
  .hbspt-form input[type="tel"],
  .hbspt-form input[type="date"],
  .hbspt-form textarea,
  .hbspt-form select {
    padding: 16px 18px;
    width: 100% !important;
    font-size: 1.6rem;
    margin-top: 10px;
    min-height: 61px;
  }
  .hbspt-form .hs-fieldtype-select .input::before {
    top: 48%;
    right: 20px;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid rgb(var(--black));
  }
  .hbspt-form .hs_error_rollup {
    text-align: center;
  }
  .hbspt-form .hs-richtext {
    font-size: 1.6rem;
  }
  .hbspt-form .hs-richtext a:hover {
    color: rgb(var(--main));
  }
  .hbspt-form input[type="checkbox"] + span {
    padding-left: 30px;
  }
  .hbspt-form input[type="checkbox"] + span::before {
    width: 20px;
    height: 20px;
  }
  .hbspt-form input[type="checkbox"]:checked + span::after {
    top: 7px;
    left: 7px;
    width: 4px;
    height: 11px;
  }
  .hbspt-form input[type="submit"] {
    width: 340px;
    padding: 23px 0 !important;
    font-size: 1.6rem;
    transition: all 0.3s ease;
  }
  .hbspt-form input[type="submit"]:hover {
    background: rgb(var(--main));
  }
  .hbspt-form .actions {
    width: 340px;
    margin: 30px auto 0;
  }
}

/* .is-wide-pc .hbspt-form
================================================== */
@media all and (min-width: 768px) {
  .is-wide-pc .hbspt-form .hs-error-msgs {
    display: block;
    width: 100%;
  }
  .is-wide-pc .hbspt-form .hs-error-msg {
    padding-left: 275px;
  }
  .is-wide-pc .hbspt-form .hs_error_rollup {
    width: 100%;
    display: block;
    text-align: center;
  }
  .is-wide-pc .hbspt-form fieldset {
    max-width: 1100px;
  }
  .is-wide-pc .hbspt-form .field {
    display: flex;
    flex-wrap: wrap;
  }
  .is-wide-pc .hbspt-form label {
    width: 275px;
    margin-top: 16px;
    position: relative;
  }
  .is-wide-pc .hbspt-form .hs_firstname label,
  .is-wide-pc .hbspt-form .hs_firstname_kana label {
    width: 120px;
  }
  .is-wide-pc .hbspt-form .hs_firstname .hs-error-msg,
  .is-wide-pc .hbspt-form .hs_firstname_kana .hs-error-msg {
    padding-left: 120px;
  }
  .is-wide-pc .hbspt-form .input {
    width: calc(100% - 275px);
  }
  .is-wide-pc .hbspt-form input[type="text"],
  .is-wide-pc .hbspt-form input[type="email"],
  .is-wide-pc .hbspt-form input[type="tel"],
  .is-wide-pc .hbspt-form textarea,
  .is-wide-pc .hbspt-form select {
    margin-top: 0;
  }
  .is-wide-pc .hbspt-form .hs-fieldtype-select .input {
    width: 472px !important;
  }
  .is-wide-pc .hbspt-form .hs_dob .input {
    width: 472px !important;
  }
  .is-wide-pc .hbspt-form .hs-resume label {
    margin-top: 10px;
  }
  .is-wide-pc .hbspt-form .hs-resume .input {
    margin-top: 10px;
    margin-bottom: 10px;
  }
  .is-wide-pc .hbspt-form textarea {
    height: 200px;
  }
  .is-wide-pc .hbspt-form .hs-richtext {
    margin-top: 60px;
    text-align: center;
  }
  .is-wide-pc .hbspt-form .hs_contact_privacy {
    margin-top: 10px;
    text-align: center;
  }
  .is-wide-pc .hbspt-form .hs_contact_privacy .input {
    width: 100%;
  }
  .is-wide-pc .hbspt-form .hs_contact_privacy .hs-form-required {
    position: relative;
    top: auto;
    right: auto;
  }
  .is-wide-pc .hbspt-form .hs_contact_privacy .hs-error-msg {
    padding-left: 0;
  }
}

.c-contact-thanks__inner {
  padding-top: 50px;
  padding-bottom: 70px;
}
@media all and (min-width: 768px) {
  .c-contact-thanks__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .c-contact-thanks__head {
    text-align: center;
  }
  .c-contact-thanks__txt {
    text-align: center;
  }
}

/* .c-head01.has-border-top
================================================== */
.c-head01.has-border-top {
  padding-top: 35px;
}
.c-head01.has-border-top::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  content: "";
  border-top: 1px solid;
}
@media all and (min-width: 768px) {
  .c-head01.has-border-top {
    padding-top: 110px;
  }
}
@media all and (min-width: 1200px) {
  .c-head01.has-border-top::before {
    left: max(calc(25% - 25vw), -120px);
    right: max(calc(25% - 25vw), -120px);
  }
}

/* .c-head01
================================================== */
.c-head01 {
  position: relative;
  margin-bottom: 40px;
}
.c-head01__main {
  font-size: 3.8rem;
  font-weight: 700;
  line-height: var(--line_height_tight);
}
.c-head01__lead {
  margin-top: 15px;
}
@media all and (min-width: 768px) {
  .c-head01 {
    margin-bottom: 70px;
  }
  .c-head01__main {
    font-size: 7.4rem;
  }
  .c-head01__lead {
    margin-top: 10px;
    font-size: 1.5rem;
  }
}

/* .c-head02
================================================== */
.c-head02 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_tight);
  margin-bottom: 20px;
}
.c-head02 .is-num {
  font-size: 1.8rem;
}
@media all and (min-width: 768px) {
  .c-head02 {
    font-size: 3.8rem;
    margin-bottom: 30px;
  }
  .c-head02 .is-num {
    font-size: 2rem;
  }
}

/* c-head02.is-center
------------------------------------------------- */
.c-head02.is-center {
  text-align: center;
}

/* .c-head02.is-small
------------------------------------------------- */
.c-head02.is-small {
  font-size: 2rem;
  margin-bottom: 15px;
}
@media all and (min-width: 768px) {
  .c-head02.is-small {
    font-size: 2.8rem;
    margin-bottom: 30px;
  }
}

/* .c-head02.is-medium
------------------------------------------------- */
.c-head02.is-medium {
  font-size: 2rem;
  margin-bottom: 20px;
}
@media all and (min-width: 768px) {
  .c-head02.is-medium {
    font-size: 3.2rem;
  }
}

/* .c-head03  数字＋見出し。中央揃え
================================================== */
.c-head03 {
  text-align: center;
  margin-bottom: 17px;
}
.c-head03__num {
  margin-bottom: 10px;
  font-size: 2rem;
}
.c-head03__main {
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
@media all and (min-width: 768px) {
  .c-head03__num {
    margin-bottom: 20px;
    font-size: 2.4rem;
  }
  .c-head03__main {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
  }
}

/* .c-head04  数字＋見出し。数字に見出しが重なっている
================================================== */
.c-head04 {
  position: relative;
  text-align: center;
  margin-bottom: 17px;
  padding-top: 14px;
  z-index: 1;
}
.c-head04__num {
  line-height: 1;
  font-size: 6rem;
  opacity: 0.3;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.c-head04__en {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  opacity: 0.3;
  line-height: 1;
  font-size: 6rem;
  font-weight: 700;
  white-space: nowrap;
  transform: translateX(-50%);
}
.c-head04__main {
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media all and (min-width: 768px) {
  .c-head04 {
    margin-bottom: 56px;
    padding-top: 36px;
  }
  .c-head04__num {
    font-size: 12.4rem;
  }
  .c-head04__en {
    font-size: 12.4rem;
  }
  .c-head04__main {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
  }
}

/* .c-head05.has-border-bottom
================================================== */
.c-head05.has-border-bottom::after {
  content: "";
  display: block;
  background: currentColor
    linear-gradient(to right, rgb(var(--main)) 108px, transparent 108px);
  width: 100%;
  height: 1px;
  margin-top: 30px;
}
.c-head05.has-border-bottom.is-border-white::after {
  color: rgba(255, 255, 255, 0.35);
}
@media all and (min-width: 768px) {
  .c-head05.has-border-bottom::after {
    background-image: linear-gradient(
      to right,
      rgb(var(--main)) 473px,
      transparent 473px
    );
    margin-top: 60px;
  }
}

/* .c-head05.has-border-top
================================================== */
.c-head05.has-border-top::before {
  content: "";
  display: block;
  background: currentColor
    linear-gradient(to right, rgb(var(--main)) 108px, transparent 108px);
  width: 100%;
  height: 1px;
  margin-bottom: 25px;
}
.c-head05.has-border-top.is-border-white::before {
  color: rgba(255, 255, 255, 0.35);
}
@media all and (min-width: 768px) {
  .c-head05.has-border-top::before {
    background-image: linear-gradient(
      to right,
      rgb(var(--main)) 473px,
      transparent 473px
    );
    margin-bottom: 35px;
  }
}

/* .c-head05.has-txt
================================================== */
@media all and (min-width: 768px) {
  .c-head05.has-txt {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .c-head05.has-txt .c-head05__sub {
    width: 100%;
  }
  .c-head05.has-txt .c-head05__sub + .c-head05__main {
    margin-top: 30px;
  }
  .c-head05.has-txt .c-head05__main {
    margin-right: 55px;
  }
  .c-head05.has-txt .c-head05__sub + .c-head05__main + .c-head05__txt {
    margin-top: 35px;
  }
  .c-head05.has-txt .c-head05__txt {
    flex: 1;
  }
}

/* .c-head05.is-flex
================================================== */
.c-head05.is-flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.c-head05.is-flex .c-head05__sub {
  margin-right: 10px;
}
.c-head05.is-flex .c-head05__sub + .c-head05__main {
  margin-top: -3px;
}
@media all and (max-width: 767px) {
  .c-head05.is-flex-sp {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .c-head05.is-flex-sp .c-head05__sub {
    margin-right: 10px;
  }
  .c-head05.is-flex-sp .c-head05__sub + .c-head05__main {
    margin-top: -3px;
  }
}
@media all and (min-width: 768px) {
  .c-head05.is-flex .c-head05__sub {
    margin-right: 30px;
  }
  .c-head05.is-flex .c-head05__sub + .c-head05__main {
    margin-top: 0px;
  }
}

/* .c-head05
================================================== */
.c-head05 {
  margin-bottom: 40px;
}
.c-head05__sub {
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  line-height: var(--line_height_head);
}
.c-head05__sub::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: rgb(var(--main));
  display: block;
  margin-right: 8px;
}
.c-head05__sub + .c-head05__main {
  margin-top: 12px;
}
.c-head05__sub + .c-head05__main.is-center {
  margin-top: 35px;
}
.c-head05__main {
  font-size: 2.6rem;
  line-height: var(--line_height_head);
}
.c-head05__main.is-center {
  font-size: 2rem;
  text-align: center;
}
.c-head05__txt {
  margin-top: 10px;
  font-weight: 700;
}
@media all and (max-width: 767px) {
  .c-head05__main.is-center-sp {
    text-align: center;
  }
}
@media all and (min-width: 768px) {
  .c-head05 {
    margin-bottom: 80px;
  }
  .c-head05__sub {
    font-size: 2.1rem;
  }
  .c-head05__sub::before {
    width: 10px;
    height: 10px;
    margin-right: 12px;
  }
  .c-head05__sub + .c-head05__main {
    margin-top: 20px;
  }
  .c-head05__sub + .c-head05__main.is-center {
    margin-top: 60px;
  }
  .c-head05__main {
    font-size: 5.6rem;
  }
  .c-head05__main.is-center {
    font-size: 4.6rem;
    text-align: center;
  }
  .c-head05__txt {
    font-size: 1.5rem;
  }
}

/* c-history01
======================================== */
.c-history01__item {
  display: flex;
  flex-wrap: wrap;
}
.c-history01__item + .c-history01__item {
  margin-top: 13px;
}
.c-history01__item:last-child .c-history01__item-year:after {
  content: none;
}
.c-history01__item-year {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 56px;
  margin-right: 53px;
  color: #cfcfcf;
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0;
}
.c-history01__item-year:before {
  content: "";
  display: block;
  position: absolute;
  top: 13px;
  right: -42px;
  width: 29px;
  height: 1px;
  background: #cfcfcf;
}
.c-history01__item-year:after {
  content: "";
  width: 4px;
  height: 100%;
  min-height: 20px;
  margin-top: 14px;
  background: repeating-linear-gradient(
    to bottom,
    rgb(var(--black)) 0px 4px,
    transparent 4px 8px
  );
}
.c-history01__list {
  flex: 1;
}
.c-history01__list-item + .c-history01__list-item {
  margin-top: 6px;
}
.c-history01__list-item-month {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 50px;
  box-sizing: border-box;
  background: #cfcfcf;
  margin-bottom: 3px;
  padding: 2px 10px;
  text-align: center;
  color: #fff;
  font-size: 1.2rem;
}
.c-history01__list-item-txt {
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .c-history01__item + .c-history01__item {
    margin-top: 9px;
  }
  .c-history01__item-year {
    width: 84px;
    margin-right: 96px;
    font-size: 3rem;
  }
  .c-history01__item-year:before {
    top: 18px;
    right: -78px;
    width: 60px;
  }
  .c-history01__item-year:after {
    min-height: 36px;
    margin-top: 10px;
  }
  .c-history01__list {
    margin-top: 3px;
  }
  .c-history01__list-item {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 18px;
  }
  .c-history01__list-item + .c-history01__list-item {
    margin-top: 0;
  }
  .c-history01__list-item:last-child {
    margin-bottom: 44px;
  }
  .c-history01__list-item-month {
    min-width: 53px;
    max-height: 28px;
    margin: 0 18px 0 0;
    font-size: 1.3rem;
  }
  .c-history01__list-item-txt {
    flex: 1;
    letter-spacing: 0.05em;
  }
}

/* en
================================================ */
@media all and (min-width: 768px) {
  html[lang="en"] .c-history01__list-item-month {
    min-width: 95px;
  }
}

/* .c-ico
================================================== */
@-webkit-keyframes svgMultipleAnim {
  0% {
    visibility: visible;
  }
  33% {
    visibility: visible;
  }
  34% {
    visibility: hidden;
  }
  100% {
    visibility: hidden;
  }
}
@keyframes svgMultipleAnim {
  0% {
    visibility: visible;
  }
  33% {
    visibility: visible;
  }
  34% {
    visibility: hidden;
  }
  100% {
    visibility: hidden;
  }
}
.c-ico {
  display: inline-block;
  vertical-align: middle;
}
.c-ico svg {
  transition: all 0.3s ease;
  display: block;
}
.c-ico svg.has-multiple use + use {
  visibility: hidden;
}
.c-ico__part {
  opacity: 0.6;
}
.c-ico.is-document01 {
  width: 14px;
  height: 12px;
}
.c-ico.is-document02 {
  width: 16px;
}
.c-ico.is-mail01 {
  width: 14px;
  height: 10px;
}
.c-ico.is-mail02 {
  width: 16px;
}
.c-ico.is-sns {
  width: 40px;
  height: 40px;
}
@media all and (min-width: 768px) {
  .c-ico.is-sns.is-large-pc {
    width: 55px;
    height: 55px;
  }
}

/* .c-list01
================================================== */
.c-list01__item {
  position: relative;
  padding-left: 20px;
  margin: 5px 0;
}
.c-list01__item::before {
  position: absolute;
  content: "";
  width: 15px;
  height: 12px;
  top: 6px;
  left: 0;
  background: url(../img/common/ico_check01.png) no-repeat 0 100% / cover;
}
@media all and (min-width: 768px) {
  .c-list01__item {
    padding-left: 35px;
    margin: 12px 0;
  }
  .c-list01__item::before {
    width: 25px;
    height: 20px;
    top: 5px;
  }
}

/* .c-list02
================================================== */
.c-list02 {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -7px;
}
.c-list02__item {
  width: calc(50% - 14px);
  margin: 5px 7px;
}
.c-list02__link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  border: solid 1px;
  border-radius: 9999px;
  font-size: 1.1rem;
  padding: 3px 6px;
  box-sizing: border-box;
}
.c-list02__link.is-active {
  color: #fff;
  background: rgb(var(--black));
}
@media all and (min-width: 768px) {
  .c-list02 {
    margin: -5px -4px;
  }
  .c-list02__item {
    width: 176px;
    margin: 5px 4px;
  }
  .c-list02__link {
    font-size: 1.4rem;
    padding: 7px 14px;
    transition: all 0.3s ease;
  }
  .c-list02__link:hover {
    color: #fff;
    border-color: rgb(var(--main));
    background: rgb(var(--main));
  }
}

/* .c-list02.is-wide
================================================== */
@media all and (min-width: 768px) {
  .c-list02.is-wide .c-list02__item {
    width: 208px;
  }
}

/* .c-list02.is-large
================================================== */
.c-list02.is-large .c-list02__link {
  padding: 8px;
}
@media all and (min-width: 768px) {
  .c-list02.is-large .c-list02__item {
    width: 180px;
  }
  .c-list02.is-large .c-list02__link {
    padding: 10px 14px;
    font-size: 1.6rem;
  }
}

/* .c-list02.is-block-sp
================================================== */
@media all and (max-width: 767px) {
  .c-list02.is-block-sp {
    display: block;
    margin: 0 0 -10px;
  }
  .c-list02.is-block-sp .c-list02__item {
    width: 100%;
    margin: 10px 0;
  }
  .c-list02.is-block-sp .c-list02__link {
    font-size: 1.4rem;
    padding: 6px;
  }
}

/* .c-list02.is-col4-pc
================================================== */
@media all and (min-width: 768px) {
  .c-list02.is-col4-pc {
    margin: -10px;
  }
  .c-list02.is-col4-pc .c-list02__item {
    width: 260px;
    margin: 10px;
  }
  .c-list02.is-col4-pc .c-list02__link {
    font-size: 1.6rem;
    padding: 16px;
  }
}

/* .c-list02.is-recruit
================================================== */
.c-list02.is-recruit .c-list02__link {
  min-height: 40px;
  padding: 5px 0;
  line-height: var(--line_height_tight);
  text-align: center;
}
@media all and (min-width: 768px) {
  .c-list02.is-recruit .c-list02__item {
    width: 220px;
  }
  .c-list02.is-recruit .c-list02__link {
    min-height: 50px;
  }
}

/* .c-list02.is-width-auto
================================================== */
.c-list02.is-width-auto .c-list02__item {
  width: auto;
}

/* ..c-list03
================================================== */
.c-list03 {
  line-height: 1.7;
}
.c-list03__item {
  display: flex;
}
.c-list03__item::before {
  content: "";
  position: relative;
  top: 8px;
  flex: 0 0 5px;
  height: 5px;
  background: #009b8f;
  margin-right: 5px;
}
.c-list03__item + .c-list03__item {
  margin-top: 5px;
}
@media all and (min-width: 768px) {
  .c-list03__item::before {
    top: 10px;
    margin-right: 10px;
  }
}

/* .c-pager01
===================================*/
.c-pager01 {
  overflow: hidden;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  text-align: center;
  margin: 30px -5px -10px;
}
.c-pager01 li {
  margin: 0 5px 10px;
}
.c-pager01 li a,
.c-pager01 li span {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  line-height: 1;
  border: 1px solid #707070;
  text-decoration: none;
  font-family: "Inter", sans-serif;
  line-height: var(--line_height_tight);
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.c-pager01 li.pages span {
  width: auto;
  border: 0;
}
.c-pager01 li.current span {
  color: #fff;
  border-color: rgb(var(--black));
  background: rgb(var(--black));
}
.c-pager01 li.first a,
.c-pager01 li.last a {
  width: auto;
  border-color: transparent;
  padding-right: 15px;
  padding-left: 15px;
}
.c-pager01 li.extend span {
  border: 0;
}
.c-pager01 li.previous,
.c-pager01 li.next {
  margin: 0;
  width: 22px;
  height: 40px;
  position: relative;
}
.c-pager01 li.previous::before,
.c-pager01 li.next::before {
  background: rgb(var(--black));
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  display: inline-block;
  width: 41px;
  height: 29px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 29"><path fill="currentColor" d="M24 29v-5h5v5Zm6-6v-5h5v5Zm6-6v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm30-6V6h5v5Zm-6-6V0h5v5Z" /></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 29"><path fill="currentColor" d="M24 29v-5h5v5Zm6-6v-5h5v5Zm6-6v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm30-6V6h5v5Zm-6-6V0h5v5Z" /></svg>');
  content: "";
  transition: all 0.3s ease;
  width: 22px;
  height: 16px;
}
.c-pager01 li.previous a,
.c-pager01 li.next a {
  display: block;
  color: transparent;
  border: none;
  width: 22px;
  height: 40px;
}
.c-pager01 li.previous {
  margin-right: 10px;
}
.c-pager01 li.previous::before {
  transform: translateY(-50%) scale(-1, 1);
}
.c-pager01 li.next {
  margin-left: 10px;
}
@media all and (min-width: 768px) {
  .c-pager01 {
    margin-top: 80px;
  }
  .c-pager01 li a,
  .c-pager01 li span {
    width: 60px;
    height: 60px;
    font-size: 1.6rem;
  }
  .c-pager01 li a {
    transition: all 0.3s ease;
  }
  .c-pager01 li a:hover {
    text-decoration: none;
    border: 1px solid rgb(var(--main));
    background-color: rgb(var(--main));
    color: #fff;
  }
  .c-pager01 li.previous,
  .c-pager01 li.next {
    height: 60px;
  }
  .c-pager01 li.previous a,
  .c-pager01 li.next a {
    height: 60px;
  }
  .c-pager01 li.previous a:hover,
  .c-pager01 li.next a:hover {
    background: transparent;
    color: transparent;
    border: none;
  }
  .c-pager01 li.previous:hover,
  .c-pager01 li.next:hover {
    cursor: pointer;
  }
  .c-pager01 li.previous:hover::before,
  .c-pager01 li.next:hover::before {
    color: rgb(var(--main));
  }
  .c-pager01 li.previous {
    margin-right: 15px;
  }
  .c-pager01 li.next {
    margin-left: 15px;
  }
}

/*  .c-pager02
================================================== */
.c-pager02 {
  position: relative;
  overflow: hidden;
  margin-top: 30px;
  line-height: 1;
}
.c-pager02 a {
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  height: 50px;
  padding: 15px;
  border: 1px solid;
  text-decoration: none;
}
.c-pager02__previous,
.c-pager02__next {
  width: calc(50% - 10px);
}
.c-pager02__previous {
  float: left;
}
.c-pager02__previous a {
  justify-content: flex-start;
  padding-left: 30px;
}
.c-pager02__next {
  float: right;
}
.c-pager02__next a {
  justify-content: flex-end;
  padding-right: 30px;
}
.c-pager02__all {
  width: 100%;
  clear: both;
  padding-top: 10px;
}
.c-pager02__all a {
  position: relative;
  display: block;
  width: 200px;
  padding: 15px 0;
  text-decoration: none;
  box-sizing: border-box;
  overflow: hidden;
  border: 0;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  font-weight: 700;
  font-family: inherit;
  text-align: right;
  outline: none;
  margin: 0 auto;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-bottom: solid 1px rgb(var(--black));
  border-radius: 0;
  cursor: pointer;
  position: relative;
}
.c-pager02__all a::before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) scale(-1, 1);
  left: 0;
  display: inline-block;
  width: 41px;
  height: 29px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 29"><path fill="currentColor" d="M24 29v-5h5v5Zm6-6v-5h5v5Zm6-6v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm30-6V6h5v5Zm-6-6V0h5v5Z" /></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 29"><path fill="currentColor" d="M24 29v-5h5v5Zm6-6v-5h5v5Zm6-6v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm-6 0v-5h5v5Zm30-6V6h5v5Zm-6-6V0h5v5Z" /></svg>');
  content: "";
  transition: all 0.3s ease;
  transition: unset;
  z-index: 2;
  width: 22px;
  height: 16px;
}
@media all and (min-width: 768px) {
  .c-pager02 a {
    transition: all 0.3s ease;
  }
  .c-pager02 a:hover {
    background: rgb(var(--black));
    color: #fff;
    border-color: rgb(var(--black));
  }
  .c-pager02__all a {
    width: 220px;
    padding: 23px 0 !important;
    font-size: 1.6rem;
    transition: all 0.3s ease;
  }
  .c-pager02__all a::before {
    width: 42px;
    height: 29px;
  }
  .c-pager02__all a:hover {
    color: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/*  .c-pager02-card
================================================== */
.c-pager02-card__link {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  background: #f6f6f6;
}
.c-pager02-card__img {
  width: 100px;
  height: 100px;
  background-size: cover;
  background-position: center;
}
.c-pager02-card__area-txt {
  width: calc(100% - 100px);
  padding: 10px 12px;
  box-sizing: border-box;
}
.c-pager02-card__area-txt p {
  overflow: hidden;
  display: -webkit-box;
  max-height: 5.4em;
  line-height: 1.8;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}
@media all and (max-width: 767px) {
  .c-pager02-card__item + .c-pager02-card__item {
    margin-top: 10px;
  }
}
@media all and (min-width: 768px) {
  .c-pager02-card {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 25px;
  }
  .c-pager02-card__item {
    width: 530px;
  }
  .c-pager02-card__item + .c-pager02-card__item .c-pager02-card__link {
    flex-direction: row-reverse;
  }
  .c-pager02-card__link {
    transition: all 0.3s ease;
  }
  .c-pager02-card__link:hover {
    opacity: 0.7;
  }
  .c-pager02-card__img {
    width: 200px;
    height: 124px;
  }
  .c-pager02-card__area-txt {
    width: calc(100% - 200px);
    padding: 15px 20px;
  }
}

/*  .c-pager02-card.is-seminar
================================================== */
@media all and (max-width: 767px) {
  .c-pager02-card.is-seminar .c-pager02-card__item + .c-pager02-card__item {
    margin-top: 20px;
    border-top: 1px solid #cfcfcf;
  }
  .c-pager02-card.is-seminar .c-pager02-card__link {
    background: #fff;
  }
  .c-pager02-card.is-seminar .c-pager02-card__img {
    width: 95px;
    height: 60px;
  }
  .c-pager02-card.is-seminar .c-pager02-card__area-txt {
    padding: 16px 12px;
  }
}

/* .c-privacy01
================================================== */
.c-privacy01.has-mt {
  margin-top: 50px;
}
.c-privacy01.has-mb {
  margin-bottom: 60px;
}
.c-privacy01__box {
  border: solid 1px;
  padding: 25px 20px;
}
.c-privacy01__head {
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 8px;
  margin-top: 20px;
}
.c-privacy01__head.is-large {
  font-size: 1.6rem;
  margin-top: 30px;
}
.c-privacy01__head.has-ico {
  padding-left: 12px;
  position: relative;
}
.c-privacy01__head.has-ico::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  top: 8px;
  left: 0;
  background: rgb(var(--black));
}
.c-privacy01__head.is-indent {
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.c-privacy01__txt {
  font-size: 1.2rem;
}
.c-privacy01__other {
  font-size: 1.2rem;
  color: rgb(var(--gray));
  margin-top: 1.5em;
}
.c-privacy01__table {
  margin: 10px 0;
}
.c-privacy01__link {
  font-size: 1.2rem;
  margin-top: 30px;
}
.c-privacy01__link + .c-privacy01__link {
  margin-top: 15px;
}
@media all and (min-width: 768px) {
  .c-privacy01.has-mt {
    margin-top: 100px;
  }
  .c-privacy01.has-mb {
    margin-bottom: 120px;
  }
  .c-privacy01__box {
    padding: 55px 80px;
  }
  .c-privacy01__head {
    font-size: 2rem;
    margin-top: 30px;
  }
  .c-privacy01__head.is-large {
    font-size: 2.4rem;
    margin-top: 75px;
    margin-bottom: 15px;
  }
  .c-privacy01__head.has-ico {
    padding-left: 16px;
  }
  .c-privacy01__head.has-ico::before {
    width: 8px;
    height: 8px;
    top: 11px;
  }
  .c-privacy01__head + .c-privacy01__table {
    margin-top: 15px;
  }
  .c-privacy01__txt {
    font-size: 1.4rem;
  }
  .c-privacy01__table {
    margin: 15px 0;
  }
  .c-privacy01__link {
    font-size: 1.4rem;
    margin-top: 50px;
  }
  .c-privacy01__link + .c-privacy01__link {
    margin-top: 25px;
  }
}

/* .c-related-company01
================================================== */
.c-related-company01 {
  background: #fff;
}
.c-related-company01__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .c-related-company01__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/*  .c-search01
================================================== */
.c-search01 {
  position: relative;
}
.c-search01__content th {
  display: none;
}
.c-search01__content td {
  width: 100%;
}
.c-search01__content input {
  display: inline-block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  outline: none;
  background: #f6f6f6;
  border-radius: 9999px 0 0 9999px;
  box-sizing: border-box;
  width: calc(100% - 60px);
  height: 60px;
  padding-left: 25px;
  font-size: 1.6rem;
  text-align: left;
}
.c-search01__content ::-moz-placeholder {
  color: rgb(var(--gray));
  font-size: 1.5rem;
}
.c-search01__content ::placeholder {
  color: rgb(var(--gray));
  font-size: 1.5rem;
}
.c-search01__btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
}
.c-search01__btn-link {
  position: relative;
  display: inline-block;
  text-indent: 300px;
  border: none;
  background: none;
  outline: none;
  white-space: nowrap;
  overflow: hidden;
  background: #f6f6f6;
  border-radius: 0 9999px 9999px 0;
  width: 100%;
  height: 100%;
}
.c-search01__btn-link span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #707070;
}
.c-search01__btn-link span svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
}
@media all and (min-width: 768px) {
  .c-search01 {
    max-width: 810px;
    margin: 0 auto;
  }
  .c-search01__content {
    margin-bottom: 50px;
  }
}

/* .c-creative-single01
================================================== */
.c-creative-single01__catch {
  margin-top: 40px;
  width: 100%;
}
.c-creative-single01__catch img {
  width: 100%;
}
.c-creative-single01__table {
  margin-top: 30px;
  background:
    url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2221%22%20height%3D%2214%22%20viewBox%3D%220%200%2021%2014%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_85877%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2085877%22%20transform%3D%22translate(-1489%20-4621)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_48339%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2048339%22%20width%3D%227%22%20height%3D%227%22%20transform%3D%22translate(1503%204621)%22%20fill%3D%22%232a2a2a%22%2F%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_48340%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2048340%22%20width%3D%227%22%20height%3D%227%22%20transform%3D%22translate(1496%204628)%22%20fill%3D%22%232a2a2a%22%2F%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_48341%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2048341%22%20width%3D%227%22%20height%3D%227%22%20transform%3D%22translate(1489%204621)%22%20fill%3D%22%232a2a2a%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E")
      no-repeat right top/21px 14px,
    url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2214%22%20height%3D%2214%22%20viewBox%3D%220%200%2014%2014%22%3E%20%3Cg%20id%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97_85879%22%20data-name%3D%22%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%2085879%22%20transform%3D%22translate(-1503%20-4621)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_48339%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2048339%22%20width%3D%227%22%20height%3D%227%22%20transform%3D%22translate(1503%204621)%22%20fill%3D%22%232a2a2a%22%2F%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_48368%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2048368%22%20width%3D%227%22%20height%3D%227%22%20transform%3D%22translate(1510%204628)%22%20fill%3D%22%232a2a2a%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E")
      no-repeat left bottom/14px;
  background-color: #fff;
  border: 1px solid #cfcfcf;
}
.c-creative-single01__table table tr:not(:first-child) th {
  border-top: 1px solid #cfcfcf;
}
.c-creative-single01__table-ico {
  width: 11px;
  height: 11px;
  margin-left: 6px;
}
.c-creative-single01__bnr {
  margin-top: 50px;
}
.c-creative-single01__bnr-list {
  display: grid;
  gap: 10px;
}
.c-creative-single01__bnr-list + .c-creative-single01__bnr-list {
  margin-top: 10px;
}
.c-creative-single01__bnr-list-img img {
  width: 100%;
}
.c-creative-single01__bnr-list.is-square {
  max-width: 500px;
  margin-inline: auto;
}
.c-creative-single01__bnr-list.is-square li {
  aspect-ratio: 1/1;
  width: 100%;
}
.c-creative-single01__bnr-list.is-square li img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.c-creative-single01__bnr-list.is-vertical {
  max-width: 500px;
  margin-inline: auto;
}
.c-creative-single01__cv {
  margin-top: 50px;
  padding-bottom: 50px;
  margin: 50px -20px 0;
}
.c-creative-single01__cv-link {
  position: relative;
  display: block;
}
.c-creative-single01__cv-content {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 20px 70px 14px 20px;
  box-sizing: border-box;
  bottom: 0;
  right: 0;
}
.c-creative-single01__cv-content-sub {
  font-size: 1.1rem;
}
.c-creative-single01__cv-content-main {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 5px;
}
.c-creative-single01__cv-content-txt {
  font-size: 1.4rem;
  line-height: 1.8;
  font-weight: 500;
}
.c-creative-single01__cv-content-ico {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 25px;
  height: 17px;
}
.c-creative-single01__related {
  padding-bottom: 50px;
  background: url(../img/common/bg_bit08.png) no-repeat bottom left/130px 136px;
}
.c-creative-single01__related-head {
  font-size: 2.4rem;
  margin-bottom: 20px;
}
@media all and (max-width: 767px) {
  .c-creative-single01__table {
    padding: 5px 20px;
  }
  .c-creative-single01__table table tr:not(:first-child) th {
    border-top: 1px solid #cfcfcf;
  }
  .c-creative-single01__table table th,
  .c-creative-single01__table table td {
    display: block;
    text-align: left;
    font-size: 1.4rem;
  }
  .c-creative-single01__table table th {
    padding-top: 13px;
  }
  .c-creative-single01__table table td {
    padding: 0 0 13px;
    line-height: 2;
  }
}
@media all and (min-width: 768px) {
  .c-creative-single01__catch {
    margin-top: 100px;
  }
  .c-creative-single01__table {
    margin-top: 60px;
    padding: 35px 50px;
  }
  .c-creative-single01__table table tr:not(:first-child) th,
  .c-creative-single01__table table tr:not(:first-child) td {
    border-top: 1px solid #cfcfcf;
  }
  .c-creative-single01__table table th,
  .c-creative-single01__table table td {
    text-align: left;
    font-size: 1.6rem;
    padding: 15px 0;
  }
  .c-creative-single01__table table th {
    width: 145px;
    padding-top: 13px;
  }
  .c-creative-single01__table table td {
    padding: 0 0 13px;
    line-height: 1.81;
    padding-left: 25px;
  }
  .c-creative-single01__bnr {
    margin-top: 100px;
  }
  .c-creative-single01__bnr-list {
    display: grid;
    gap: 30px 25px;
  }
  .c-creative-single01__bnr-list + .c-creative-single01__bnr-list {
    margin-top: 30px;
  }
  .c-creative-single01__bnr-list.is-square {
    grid-template-columns: repeat(3, 1fr);
    max-width: none;
    margin-inline: auto;
  }
  .c-creative-single01__bnr-list.is-vertical {
    max-width: 700px;
    margin-inline: auto;
  }
  .c-creative-single01__cv {
    margin: 130px auto 0;
    padding-bottom: 120px;
  }
  .c-creative-single01__cv-inner {
    max-width: 900px !important;
  }
  .c-creative-single01__cv-content {
    width: 100%;
    padding: 49px 100px 45px 90px;
  }
  .c-creative-single01__cv-content-sub {
    font-size: 1.5rem;
  }
  .c-creative-single01__cv-content-main {
    font-size: 3rem;
    margin-bottom: 15px;
  }
  .c-creative-single01__cv-content-txt {
    font-size: 1.6rem;
  }
  .c-creative-single01__cv-content-ico {
    right: 90px;
    bottom: 0;
    width: 43px;
    height: 33px;
    top: 0;
    margin: auto 0;
  }
  .c-creative-single01__related {
    padding-bottom: 120px;
    background-size: 220px 230px;
    background-position-x: 100px;
  }
  .c-creative-single01__related-head {
    font-size: 3.8rem;
    margin-bottom: 30px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-creative-single01__cv-link {
    transition: all 0.3s ease;
  }
  .c-creative-single01__cv-link:hover {
    color: rgb(var(--main));
  }
  .c-creative-single01__cv-link:hover
    .c-creative-single01__cv-content-ico
    svg.has-multiple
    use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .c-creative-single01__cv-link:hover
    .c-creative-single01__cv-content-ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .c-creative-single01__cv-link:hover
    .c-creative-single01__cv-content-ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/*  .c-single01
================================================== */
.c-single01__img {
  margin-bottom: 15px;
}
.c-single01__img.is-wide {
  margin-left: -24px;
  margin-right: -24px;
  margin-bottom: 42px;
}
.c-single01__img.is-wide img {
  width: 100%;
}
.c-single01__item {
  border-style: solid;
  border-width: 0 0 1px;
  border-color: #cfcfcf;
}
.c-single01__item-in {
  display: block;
  padding: 15px 0;
}
.c-single01__item-meta {
  display: flex;
  flex-wrap: wrap;
}
.c-single01__item-date {
  margin: 0 10px 0 0;
  padding: 5px 0;
  color: #707070;
}
.c-single01__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
}
.c-single01__item-cat-item {
  margin: 0 5px 5px 0;
  padding: 2px 12px;
  background: #cfcfcf;
  color: #fff;
  font-size: 1.2rem;
}
.c-single01__item-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 3.6em;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  font-weight: 700;
  margin-top: 5px;
}
@media all and (min-width: 768px) {
  .c-single01 {
    overflow: hidden;
  }
  .c-single01__img {
    margin-bottom: 55px;
  }
  .c-single01__img.is-wide {
    margin-left: 0;
    margin-right: 0;
  }
  .c-single01__item {
    display: block;
  }
  .c-single01__item-head {
    max-height: 3.6em;
    -webkit-line-clamp: 2;
  }
  .c-single01__item-in {
    padding: 20px 0;
  }
  .c-single01__item-date {
    margin-right: 16px;
  }
  .c-single01__item-cat-item {
    font-size: 1.3rem;
  }
  .c-single01__item-head {
    margin-top: 10px;
  }
}

/*  .c-single01-recruit
================================================== */
.c-single01-recruit {
  margin-top: 40px;
}
@media all and (min-width: 768px) {
  .c-single01-recruit {
    margin-top: 60px;
  }
}

/*  .c-single01-share
================================================== */
.c-single01-share {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}
.c-single01-share__item {
  margin-right: 7px;
}
.c-single01-share__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: #6e6e6e;
  text-align: center;
}
.c-single01-share__link {
  cursor: pointer;
}
.c-single01-share .c-ico {
  width: 28px;
  height: 28px;
  color: #fff;
}
.c-single01-share .is-copy {
  width: 12px;
  height: 14px;
}
@media all and (min-width: 768px) {
  .c-single01-share {
    margin-top: 60px;
  }
  .c-single01-share__link {
    width: 40px;
    height: 40px;
  }
  .c-single01-share__link:hover .c-ico {
    color: rgb(var(--main));
  }
  .c-single01-share .c-ico {
    width: 40px;
    height: 40px;
  }
  .c-single01-share .is-copy {
    width: 18px;
    height: 20px;
  }
}

/*  .c-single01-document
================================================== */
.c-single01-document {
  margin-bottom: 60px;
  background: #f6f6f6;
  padding: 25px 20px 20px;
}
.c-single01-document__head {
  font-weight: 700;
  line-height: var(--line_height_head);
  padding-left: 12px;
  position: relative;
}
.c-single01-document__head::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  background: rgb(var(--black));
  top: 8px;
  left: 0;
}
.c-single01-document__txt {
  margin-top: 5px;
}
.c-single01-document__img {
  width: 100%;
  height: auto;
  padding-top: 61.81%;
  background-size: cover;
  background-position: center;
  margin: 0 auto 20px;
}
@media all and (max-width: 767px) {
  .c-single01-document__btn {
    width: 187px;
    margin: 20px 0 0 auto;
  }
  .c-single01-document__btn .c-btn02__link {
    width: 187px !important;
  }
}
@media all and (min-width: 768px) {
  .c-single01-document {
    margin-bottom: 100px;
    display: flex;
    justify-content: center;
    padding: 60px 80px;
  }
  .c-single01-document__area-img {
    flex-basis: 38.72%;
    padding-right: 4.3%;
    box-sizing: border-box;
  }
  .c-single01-document__img {
    margin: 0;
  }
  .c-single01-document__area-txt {
    flex-basis: 61.28%;
  }
  .c-single01-document__head {
    font-size: 2.4rem;
    padding-left: 22px;
    margin-bottom: 15px;
  }
  .c-single01-document__head::before {
    width: 12px;
    height: 12px;
    top: 14px;
  }
  .c-single01-document__btn {
    margin-top: 20px !important;
  }
}

/*  .c-single02
================================================== */
.c-single02__info {
  margin-bottom: 40px;
}
.c-single02__info-head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0;
}
.c-single02__info-logo {
  width: 220px;
  margin-top: 15px;
}
.c-single02__info-txt {
  margin-top: 15px;
}
.c-single02__service {
  margin-top: 15px;
  background: #fff;
  padding: 20px;
}
.c-single02__service-head {
  font-size: 1.6rem;
  font-weight: 700;
}
.c-single02__service-head::before {
  display: inline-block;
  width: 22px;
  height: 22px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22.262 22.262"><path d="M28.3,27.787H26.491V19.818a1,1,0,0,0-.283-.787,1.076,1.076,0,0,0-.8-.3H22.869a.906.906,0,1,0,0,1.811H24.68v7.245H22.869a.906.906,0,1,0,0,1.811H28.3a.906.906,0,1,0,0-1.811" transform="translate(-14.007 -11.946)" fill="currentColor"/><path d="M28.674,11.719a1.167,1.167,0,1,0-1.167-1.167,1.166,1.166,0,0,0,1.167,1.167" transform="translate(-17.543 -5.985)" fill="currentColor"/><path d="M11.131,0A11.131,11.131,0,1,0,22.262,11.131,11.144,11.144,0,0,0,11.131,0m0,20.451a9.32,9.32,0,1,1,9.32-9.319,9.33,9.33,0,0,1-9.32,9.319" transform="translate(0 0)" fill="currentColor"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22.262 22.262"><path d="M28.3,27.787H26.491V19.818a1,1,0,0,0-.283-.787,1.076,1.076,0,0,0-.8-.3H22.869a.906.906,0,1,0,0,1.811H24.68v7.245H22.869a.906.906,0,1,0,0,1.811H28.3a.906.906,0,1,0,0-1.811" transform="translate(-14.007 -11.946)" fill="currentColor"/><path d="M28.674,11.719a1.167,1.167,0,1,0-1.167-1.167,1.166,1.166,0,0,0,1.167,1.167" transform="translate(-17.543 -5.985)" fill="currentColor"/><path d="M11.131,0A11.131,11.131,0,1,0,22.262,11.131,11.144,11.144,0,0,0,11.131,0m0,20.451a9.32,9.32,0,1,1,9.32-9.319,9.33,9.33,0,0,1-9.32,9.319" transform="translate(0 0)" fill="currentColor"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
  margin: 0 7px 3px 0;
}
.c-single02__service-txt {
  margin-top: 5px;
}
.c-single02__service-list {
  padding-top: 20px;
  margin-top: 15px;
  border-top: solid 1px #cfcfcf;
}
.c-single02__service.has-ico {
  position: relative;
}
.c-single02__service.has-ico::before {
  position: absolute;
  content: "";
  width: 21px;
  height: 14px;
  top: 0;
  right: 0;
  background: url(../img/common/bg_bit06.png) no-repeat 0 100% / cover;
}
.c-single02__service.has-ico::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  bottom: 0;
  left: 0;
  background: url(../img/common/bg_bit07.png) no-repeat 0 100% / cover;
}
.c-single02__area-img {
  text-align: center;
  margin-top: 24px;
  position: relative;
}
@media all and (min-width: 768px) {
  .c-single02 {
    overflow: hidden;
  }
  .c-single02__info {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 130px;
  }
  .c-single02__info-area-head {
    flex-basis: 50%;
    padding-right: 87px;
    box-sizing: border-box;
  }
  .c-single02__info-area-txt {
    flex-basis: 50%;
  }
  .c-single02__info-head {
    font-size: 3.8rem;
  }
  .c-single02__info-txt {
    margin-top: 30px;
  }
  .c-single02__info-logo {
    width: 400px;
    margin-top: 0;
  }
  .c-single02__service {
    margin-top: 42px;
    padding: 35px 40px 40px;
  }
  .c-single02__service-head {
    font-size: 2rem;
  }
  .c-single02__service-txt {
    margin-top: 10px;
  }
  .c-single02__service-list {
    margin-top: 20px;
  }
  .c-single02__area-img {
    margin-top: 40px;
  }
}

.c-single02-sec + .c-single02-sec {
  margin-top: 50px;
}
.c-single02-sec__img img {
  display: block;
  width: 100%;
}
.c-single02-sec__head {
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 10px;
}
.c-single02-sec__txt + .c-single02-sec__head {
  margin-top: 20px;
}
@media all and (max-width: 767px) {
  .c-single02-sec__img {
    margin-bottom: 20px;
  }
}
@media all and (min-width: 768px) {
  .c-single02-sec {
    display: flex;
    justify-content: center;
    flex-direction: row-reverse;
    margin: 0 -25px;
  }
  .c-single02-sec.is-img-left-pc {
    flex-direction: row;
  }
  .c-single02-sec__img {
    flex-basis: calc(43% - 50px);
    margin: 0 25px;
  }
  .c-single02-sec__img + .c-single02-sec__areaTxt {
    flex-basis: calc(57% - 50px);
  }
  .c-single02-sec__areaTxt {
    margin: 0 25px;
    flex-basis: 100%;
  }
  .c-single02-sec__head {
    font-size: 2.4rem;
    margin-bottom: 15px;
  }
  .c-single02-sec__txt + .c-single02-sec__head {
    margin-top: 30px;
  }
}

/*  .c-single03
================================================== */
.c-single03-document {
  margin-top: 20px;
  background: #fff;
  padding: 25px 20px 20px;
}
.c-single03-document__head {
  font-weight: 700;
  line-height: var(--line_height_head);
  padding-left: 12px;
  position: relative;
}
.c-single03-document__head::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  background: rgb(var(--black));
  top: 8px;
  left: 0;
}
.c-single03-document__txt {
  margin-top: 5px;
}
.c-single03-document__img {
  width: 100%;
  height: auto;
  padding-top: 61.81%;
  background-size: cover;
  background-position: center;
  margin: 0 auto 20px;
}
@media all and (max-width: 767px) {
  .c-single03-document__btn {
    width: 187px;
    margin: 20px 0 0 auto;
  }
  .c-single03-document__btn .c-btn02__link {
    width: 187px !important;
  }
}
@media all and (min-width: 768px) {
  .c-single03 {
    overflow: hidden;
  }
  .c-single03-document {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 60px;
    margin-top: 60px;
  }
  .c-single03-document__area-img {
    width: 324px;
  }
  .c-single03-document__img {
    margin: 0;
  }
  .c-single03-document__area-txt {
    width: 576px;
    margin-left: 40px;
  }
  .c-single03-document__head {
    font-size: 2.4rem;
    padding-left: 22px;
    margin-bottom: 15px;
  }
  .c-single03-document__head::before {
    width: 12px;
    height: 12px;
    top: 14px;
  }
  .c-single03-document__btn {
    margin-top: 20px !important;
  }
}

/* .c-single04
================================================== */
.c-single04 {
  position: relative;
}
.c-single04__side {
  pointer-events: none;
}
@media all and (max-width: 767px) {
  .c-single04__side {
    display: none;
  }
}
@media all and (min-width: 768px) {
  .c-single04__side {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .c-single04__side-inner {
    height: 100%;
    padding-top: 130px;
    padding-bottom: 130px;
  }
}

.c-single04-nav {
  pointer-events: auto;
}
@media all and (max-width: 767px) {
  .c-single04-nav {
    display: none;
  }
}
@media all and (min-width: 768px) {
  .c-single04-nav {
    position: -webkit-sticky;
    position: sticky;
    top: 130px;
    left: 0;
    width: 170px;
    font-size: 1.4rem;
    line-height: var(--line_height_head);
    transition: color 0.3s ease;
  }
  .c-single04-nav.is-white {
    color: #fff;
  }
  .c-single04-nav__item {
    opacity: 0.4;
    transition: opacity 0.3s ease;
  }
  .c-single04-nav__item + .c-single04-nav__item {
    margin-top: 13px;
  }
  .c-single04-nav__item.is-active {
    opacity: 1;
  }
  .c-single04-nav__item.is-active .c-single04-nav__item-num {
    color: rgb(var(--main));
  }
  .c-single04-nav__item-num {
    min-width: 1.5em;
    display: inline-block;
    transition: color 0.3s ease;
  }
}

.c-single04-section {
  overflow: hidden;
}
.c-single04-section__bg.is-bg-black {
  background: rgb(var(--black)) url(../img/service/bg_black01_sp.jpg) repeat
    left top/100% auto;
  color: #fff;
}
.c-single04-section__bg.is-bg-black.is-bg02 {
  background-image: url(../img/common/bg_black03.jpg);
  background-size: auto auto;
}
.c-single04-section__bg.is-bg-black .c-single04-slide .slick-dots {
  background: rgba(255, 255, 255, 0.1);
}
.c-single04-section__bg:not(.is-bg-black)
  .c-single04-layout
  + .c-single04-layout::before,
.c-single04-section__bg:not(.is-bg-black)
  .c-single04-layout
  .c-single04-layout__txt,
.c-single04-section__bg:not(.is-bg-black)
  .c-single04-layout
  .c-single04-layout__col,
.c-single04-section__bg:not(.is-bg-black)
  .c-single04-slide
  .c-single04-slide__item-txt {
  border-color: rgba(var(--black), 0.2);
}
.c-single04-section__bg.is-bg-white {
  background: #fff url(../img/service/bg_white01_sp.png) no-repeat left top/86px
    86px;
}
.c-single04-section__bg.is-bg-white.is-bg02 {
  background-image: none;
}
.c-single04-section__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.c-single04-section__head {
  margin-bottom: 20px;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-single04-section__head.is-center {
  text-align: center;
}
.c-single04-section__head-num {
  font-size: 1.8rem;
}
.c-single04-section__head-main {
  font-size: 2.4rem;
}
.c-single04-section__lead {
  margin-bottom: 30px;
}
.c-single04-section__lead.is-center {
  text-align: center;
}
.c-single04-section__form .hbspt-form input[type="text"],
.c-single04-section__form .hbspt-form input[type="email"],
.c-single04-section__form .hbspt-form input[type="tel"],
.c-single04-section__form .hbspt-form input[type="date"],
.c-single04-section__form .hbspt-form textarea,
.c-single04-section__form .hbspt-form select {
  border: 1px solid #cfcfcf;
}
.c-single04-section__iframe iframe {
  width: 100%;
  max-height: 75vh;
}
@media all and (min-width: 768px) {
  .c-single04-section__bg.is-bg-black {
    background-image: url(../img/service/bg_black01_pc.jpg);
  }
  .c-single04-section__bg.is-bg-white {
    background-image: url(../img/service/bg_white01_pc.png);
    background-size: auto auto;
  }
  .c-single04-section__bg.is-bg-white.is-bg02 {
    background-image: url(../img/service/bg_white02_pc.png);
    background-position: right 60px bottom;
  }
  .c-single04-section__inner {
    padding-left: 270px;
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .c-single04-section__head {
    margin-bottom: 30px;
  }
  .c-single04-section__head-num {
    font-size: 2rem;
  }
  .c-single04-section__head-main {
    font-size: 3.8rem;
  }
  .c-single04-section__lead {
    margin-bottom: 40px;
  }
  .c-single04-section__lead.is-pc-center {
    text-align: center;
  }
  .c-single04-section__iframe iframe {
    max-height: 896px;
  }
}

.c-single04-layout + .c-single04-layout {
  margin-top: 40px;
}
.c-single04-layout + .c-single04-layout.is-layout01::before,
.c-single04-layout + .c-single04-layout.is-layout02::before {
  display: block;
  content: "";
  width: calc(100% + 60px);
  margin: 0 -30px 40px;
  border-top: 1px solid;
}
.c-single04-layout__head {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 15px;
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-single04-layout__txt h4 {
  margin-bottom: 15px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-single04-layout__txt h5 {
  position: relative;
  margin-bottom: 15px;
  font-weight: 700;
  line-height: var(--line_height_head);
  padding-left: 20px;
}
.c-single04-layout__txt h5::before {
  color: rgb(var(--main));
  content: "";
  position: absolute;
  top: 0.5em;
  left: 1px;
  content: "";
  width: 5px;
  height: 8px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
  margin-top: -3px;
}
.c-single04-layout__txt p {
  margin-top: 15px;
}
.c-single04-layout__txt p.c-single04-layout__txt-note {
  font-size: 1.2rem;
  color: rgb(var(--gray));
  line-height: var(--line_height_head);
}
@media all and (max-width: 767px) {
  .c-single04-layout__img {
    text-align: center;
  }
}
@media all and (min-width: 768px) {
  .c-single04-layout + .c-single04-layout {
    margin-top: 80px;
  }
  .c-single04-layout + .c-single04-layout.is-layout01::before,
  .c-single04-layout + .c-single04-layout.is-layout02::before {
    margin: 20px 0 100px;
  }
  .c-single04-layout__head {
    margin-bottom: 40px;
    font-size: 3.2rem;
  }
  .c-single04-layout__txt h4 {
    margin-bottom: 20px;
    font-size: 2.4rem;
  }
  .c-single04-layout__txt h5 {
    font-size: 1.8rem;
    margin-bottom: 20px;
    padding-left: 23px;
  }
  .c-single04-layout__txt h5::before {
    height: 10px;
    border-right-width: 3px;
    border-bottom-width: 3px;
  }
  .c-single04-layout__txt p {
    margin-top: 20px;
  }
  .c-single04-layout__txt p.c-single04-layout__txt-note {
    font-size: 1.4rem;
  }
}

.c-single04-layout.is-layout01 .c-single04-layout__btn {
  margin-top: 20px;
}
@media all and (max-width: 767px) {
  .c-single04-layout.is-layout01
    .c-single04-layout__col
    + .c-single04-layout__col {
    margin-top: 20px;
  }
}
@media all and (min-width: 768px) {
  .c-single04-layout.is-layout01 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .c-single04-layout.is-layout01 .c-single04-layout__col {
    box-sizing: border-box;
  }
  .c-single04-layout.is-layout01 .c-single04-layout__col:first-of-type {
    flex-basis: 41.27%;
    max-width: 41.27%;
  }
  .c-single04-layout.is-layout01 .c-single04-layout__btn {
    margin-top: 50px;
  }
  .c-single04-layout.is-layout01
    .c-single04-layout__col
    + .c-single04-layout__col {
    flex-basis: 58.73%;
    max-width: 58.73%;
    padding-left: 50px;
  }
  .c-single04-layout.is-layout01.is-img-right-pc {
    flex-direction: row-reverse;
  }
  .c-single04-layout.is-layout01.is-img-right-pc
    .c-single04-layout__col
    + .c-single04-layout__col {
    padding-left: 0;
    padding-right: 50px;
  }
}

.c-single04-layout.is-layout02 .c-single04-layout__txt {
  border-top: 1px solid;
  padding-top: 20px;
  margin-top: 25px;
}
.c-single04-layout.is-layout02 .c-single04-layout__txt h4 {
  margin-bottom: 5px;
}
@media all and (max-width: 767px) {
  .c-single04-layout.is-layout02
    .c-single04-layout__col
    + .c-single04-layout__col {
    margin-top: 25px;
  }
}
@media all and (min-width: 768px) {
  .c-single04-layout.is-layout02 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .c-single04-layout.is-layout02 .c-single04-layout__col {
    box-sizing: border-box;
  }
  .c-single04-layout.is-layout02 .c-single04-layout__col:first-of-type {
    flex-basis: 41.27%;
    max-width: 41.27%;
  }
  .c-single04-layout.is-layout02 .c-single04-layout__txt {
    padding-top: 40px;
    margin-top: 60px;
  }
  .c-single04-layout.is-layout02 .c-single04-layout__txt:first-of-type {
    margin-top: 0;
  }
  .c-single04-layout.is-layout02 .c-single04-layout__txt h4 {
    margin-bottom: 10px;
  }
  .c-single04-layout.is-layout02
    .c-single04-layout__col
    + .c-single04-layout__col {
    flex-basis: 58.73%;
    max-width: 58.73%;
    padding-left: 50px;
  }
  .c-single04-layout.is-layout02.is-img-right-pc {
    flex-direction: row-reverse;
  }
  .c-single04-layout.is-layout02.is-img-right-pc
    .c-single04-layout__col
    + .c-single04-layout__col {
    padding-left: 0;
    padding-right: 50px;
  }
}

.c-single04-layout.is-layout03 {
  background-color: #fff;
  color: rgb(var(--black));
  padding: 24px 20px 25px;
}
.c-single04-layout.is-layout03 .c-single04-layout__head {
  font-size: 1.6rem;
  padding-left: 20px;
}
.c-single04-layout.is-layout03 .c-single04-layout__head::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 15px;
  height: 12px;
  background: url(../img/common/ico_check01.png) no-repeat left top/contain;
  margin-top: -2px;
}
@media all and (min-width: 768px) {
  .c-single04-layout.is-layout03 {
    padding: 65px 80px 60px;
  }
  .c-single04-layout.is-layout03 .c-single04-layout__head {
    font-size: 2rem;
    padding-left: 35px;
    margin-bottom: 17px;
  }
  .c-single04-layout.is-layout03 .c-single04-layout__head::before {
    width: 25px;
    height: 20px;
    margin-top: -3px;
  }
}

.c-single04-layout.is-layout04 .c-single04-layout__col {
  position: relative;
  padding-top: 20px;
  padding-bottom: 25px;
  border-top: 1px solid;
}
.c-single04-layout.is-layout04 .c-single04-layout__col:last-of-type {
  border-bottom: 1px solid;
}
.c-single04-layout.is-layout04 .c-single04-layout__img {
  box-sizing: border-box;
}
.c-single04-layout.is-layout04 .c-single04-layout__txt {
  box-sizing: border-box;
}
@media all and (max-width: 767px) {
  .c-single04-layout.is-layout04
    .c-single04-layout__img
    + .c-single04-layout__txt
    h4 {
    padding-left: 110px;
    min-height: 90px;
    display: flex;
    align-items: center;
  }
  .c-single04-layout.is-layout04 .c-single04-layout__img {
    position: absolute;
    top: 20px;
    left: 0;
    width: 90px;
    height: 90px;
  }
}
@media all and (min-width: 768px) {
  .c-single04-layout.is-layout04 .c-single04-layout__col {
    display: flex;
    align-items: center;
    padding-top: 40px;
    padding-bottom: 50px;
  }
  .c-single04-layout.is-layout04 .c-single04-layout__img {
    flex-basis: 122px;
    height: 122px;
    padding: 10px 0 0 10px;
  }
  .c-single04-layout.is-layout04
    .c-single04-layout__img
    + .c-single04-layout__txt {
    flex-basis: calc(100% - 122px);
    max-width: calc(100% - 122px);
    padding-left: 34px;
  }
}

.c-single04-slide__item {
  width: 230px !important;
  padding-right: 20px;
  box-sizing: border-box;
}
.c-single04-slide__item-img {
  margin-bottom: 15px;
}
.c-single04-slide__item-head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-single04-slide__item-txt {
  margin-top: 5px;
}
.c-single04-slide .slick-dots {
  display: table;
  overflow: hidden;
  width: 100%;
  height: 4px;
  margin-top: 25px;
  background: #fff;
}
.c-single04-slide .slick-dots li {
  display: table-cell;
  height: 100%;
}
.c-single04-slide .slick-dots li button {
  display: block;
  background: currentColor;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  text-indent: -999px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.c-single04-slide .slick-dots li.slick-active button {
  opacity: 1;
}
@media all and (max-width: 767px) {
  .c-single04-slide {
    margin-right: -30px;
  }
  .c-single04-slide .slick-dots {
    width: calc(100% - 30px);
  }
}
@media all and (min-width: 768px) {
  .c-single04-slide {
    margin-right: -50px;
  }
  .c-single04-slide__item {
    width: 570px !important;
    padding-right: 60px;
  }
  .c-single04-slide__item-img {
    margin-bottom: 25px;
  }
  .c-single04-slide__item-head {
    font-size: 2.4rem;
  }
  .c-single04-slide__item-txt {
    margin-top: 5px;
  }
  .c-single04-slide .slick-dots {
    margin-top: 70px;
  }
}
@media all and (min-width: 1580px) {
  .c-single04-slide {
    margin-right: calc((var(--contents_wide_width) - 100vw) / 2);
    margin-right: calc((var(--contents_wide_width) - var(--vw, 1vw) * 100) / 2);
  }
}

.c-single04-slide.is-member .c-single04-slide__item-txt {
  border-top: 1px solid;
  margin-top: 10px;
  padding-top: 10px;
}
@media all and (min-width: 768px) {
  .c-single04-slide.is-member .c-single04-slide__item {
    width: 430px !important;
    padding-right: 30px;
  }
  .c-single04-slide.is-member .c-single04-slide__item-txt {
    margin-top: 20px;
    padding-top: 20px;
  }
}

@media all and (max-width: 767px) {
  .c-single04-slide.is-other .c-single04-slide__item {
    width: 290px !important;
  }
}

.c-single04-results {
  background: #fff;
  padding: 10px 20px 25px;
}
.c-single04-results-list__item {
  margin-top: 15px;
  position: relative;
  font-weight: 700;
  padding-left: 20px;
  line-height: var(--line_height_head);
  box-sizing: border-box;
}
.c-single04-results-list__item::before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 15px;
  height: 12px;
  background: url(../img/common/ico_check01.png) no-repeat left top/contain;
  margin-top: -2px;
}
@media all and (min-width: 768px) {
  .c-single04-results {
    padding: 20px 0 50px 5%;
  }
  .c-single04-results-list {
    font-size: 2rem;
    display: flex;
    flex-wrap: wrap;
  }
  .c-single04-results-list__item {
    margin-top: 20px;
    padding: 0 5% 0 37px;
    flex-basis: 33.33%;
  }
  .c-single04-results-list__item::before {
    width: 25px;
    height: 20px;
    margin-top: -3px;
  }
}

.c-single04-faq-dl {
  margin-top: -18px;
  border-bottom: 1px solid;
}
.c-single04-faq-dl__ico {
  position: absolute;
  top: calc(18px + 0.3em);
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 1.7rem;
  background: #2a2a2a;
  color: #fff;
}
.c-single04-faq-dl__ico.is-a {
  background: rgb(var(--gray));
}
.c-single04-faq-dl__q {
  border-top: 1px solid;
  position: relative;
  min-height: calc(76px + 0.3em);
  padding: 18px 50px;
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.c-single04-faq-dl__q:first-of-type {
  border-top: none;
}
.c-single04-faq-dl__q::before,
.c-single04-faq-dl__q::after {
  position: absolute;
  top: 50%;
  right: 0;
  content: "";
  border-top: 1px solid;
  width: 15px;
  transition: transform 0.3s ease;
}
.c-single04-faq-dl__q:not(.is-active)::before {
  transform: rotate(90deg);
}
.c-single04-faq-dl__q-txt {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.c-single04-faq-dl__a {
  position: relative;
  padding-left: 50px;
  padding-bottom: 20px;
  box-sizing: border-box;
}
.c-single04-faq-dl__a .c-single04-faq-dl__ico {
  top: 0.3em;
}
.c-single04-faq-dl__a-btn {
  margin-top: 10px;
  text-align: right;
}
.c-single04-faq-dl__a-txt {
  min-height: 3.25em;
}
@media all and (min-width: 768px) {
  .c-single04-faq-dl {
    margin-top: -30px;
  }
  .c-single04-faq-dl__ico {
    top: calc(30px + 0.1em);
    width: 50px;
    height: 50px;
    font-size: 2.2rem;
  }
  .c-single04-faq-dl__q {
    min-height: calc(100px + 0.1em);
    padding: 30px 70px 20px;
  }
  .c-single04-faq-dl__q::before,
  .c-single04-faq-dl__q::after {
    width: 19px;
    border-width: 2px;
    margin-top: -1px;
  }
  .c-single04-faq-dl__q-txt {
    font-size: 2rem;
  }
  .c-single04-faq-dl__a {
    position: relative;
    padding-left: 70px;
    padding-bottom: 20px;
  }
  .c-single04-faq-dl__a .c-single04-faq-dl__ico {
    top: 0.1em;
  }
  .c-single04-faq-dl__a-btn {
    margin-top: 20px;
  }
}

@media all and (min-width: 768px) {
  .c-single04-attempt {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

/* .c-single04-fix-bnr
================================================ */
.c-single04-fix-bnr {
  opacity: 0;
  position: fixed;
  right: 15px;
  bottom: 15px;
  border-radius: 50%;
  z-index: 10;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.c-single04-fix-bnr__link {
  position: relative;
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  transition: transform 0.3s ease;
}
.c-single04-fix-bnr__link::before {
  content: "";
  background: url(../img/service/bnr_fix01.png?1220) no-repeat center;
  background-size: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.5s ease 0.1s;
  z-index: 1;
  border-radius: 50%;
  opacity: 0.88;
}
.c-single04-fix-bnr__sub {
  position: relative;
  z-index: 2;
  font-size: 1rem;
  margin-top: 3px;
}
.c-single04-fix-bnr__main {
  position: relative;
  z-index: 2;
  font-size: 1.3rem;
}
.c-single04-fix-bnr__ico {
  position: relative;
  z-index: 2;
  color: rgb(var(--main));
  width: 16px;
  height: 11px;
  display: block;
  margin-top: 8px;
}
.c-single04-fix-bnr.is-shown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media all and (min-width: 768px) {
  .c-single04-fix-bnr__link {
    width: 196px;
    height: 196px;
  }
  .c-single04-fix-bnr__sub {
    font-size: 1.5rem;
    margin-top: 5px;
  }
  .c-single04-fix-bnr__main {
    font-size: 2rem;
  }
  .c-single04-fix-bnr__ico {
    width: 25px;
    height: 19px;
    margin-top: 18px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-single04-fix-bnr__link:hover,
  .c-single04-fix-bnr__link:focus-visible {
    transform: translateY(-10px);
  }
  .c-single04-fix-bnr__link:hover::before,
  .c-single04-fix-bnr__link:focus-visible::before {
    transform: rotate(240deg);
  }
  .c-single04-fix-bnr__link:hover .c-single04-fix-bnr__ico svg.has-multiple use,
  .c-single04-fix-bnr__link:focus-visible
    .c-single04-fix-bnr__ico
    svg.has-multiple
    use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .c-single04-fix-bnr__link:hover
    .c-single04-fix-bnr__ico
    svg.has-multiple
    use:nth-of-type(2),
  .c-single04-fix-bnr__link:focus-visible
    .c-single04-fix-bnr__ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .c-single04-fix-bnr__link:hover
    .c-single04-fix-bnr__ico
    svg.has-multiple
    use:nth-of-type(3),
  .c-single04-fix-bnr__link:focus-visible
    .c-single04-fix-bnr__ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/* .c-single05
================================================== */
.c-single05__area {
  position: relative;
}
.c-single05__side {
  pointer-events: none;
}
@media all and (min-width: 768px) {
  .c-single05__side {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
  }
  .c-single05__side-inner {
    height: 100%;
    padding-top: 100px;
    padding-bottom: 130px;
  }
  .c-single05__side-nav {
    position: -webkit-sticky;
    position: sticky;
    top: 150px;
    pointer-events: auto;
    width: 140px;
  }
}

/* .c-single05-cat
================================================== */
.c-single05-cat {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -2.5px 15px;
}
.c-single05-cat__item {
  margin: 5px 2.5px;
  padding: 1px 12px;
  border: 1px solid;
  font-size: 1.2rem;
}
.c-single05-cat__item.is-cat01 {
  background: rgb(var(--black));
  color: #fff;
}

/* .c-single05-article
================================================== */
.c-single05-article__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .c-single05-article__inner {
    padding-top: 100px;
    padding-bottom: 130px;
    padding-left: 270px;
  }
}

/* .c-single05-detail
================================================== */
.c-single05-detail {
  background: #fff;
}
.c-single05-detail__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.c-single05-detail-table tr:nth-child(even) {
  background: #f6f6f6;
}
.c-single05-detail-table__area-txt > *:first-child {
  margin-top: 0;
}
.c-single05-detail-table__txt {
  margin-top: 1.5em;
}
.c-single05-detail-table-list {
  margin-top: 1.5em;
  padding-left: 1.25em;
}
.c-single05-detail-table-list__item + .c-single05-detail-table-list__item {
  margin-top: 6px;
}
.c-single05-detail-table-list {
  list-style: square;
}
.c-single05-detail-table-note {
  margin-top: 10px;
  color: rgb(var(--gray));
  font-size: 1.2rem;
  line-height: 1.5;
}
.c-single05-detail-table-note__item::before {
  content: "※";
}
.c-single05-detail-table-note__item + .c-single05-detail-table-note__item {
  margin-top: 5px;
}
@media all and (min-width: 768px) {
  .c-single05-detail__inner {
    padding-top: 130px;
    padding-bottom: 130px;
    padding-left: 270px;
  }
  .c-single05-detail-table table th {
    border-right: 0;
  }
  .c-single05-detail-table table th,
  .c-single05-detail-table table td {
    padding: 38px 20px;
  }
  .c-single05-detail-table-note {
    margin-top: 15px;
  }
}

/*  .c-single05-flow
================================================== */
.c-single05-flow__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.c-single05-flow-list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -23px;
  counter-reset: num 0;
}
.c-single05-flow-list__item {
  position: relative;
  width: calc(50% - 46px);
  margin: 10px 23px 0;
  padding-top: calc(50% - 46px);
  background: #fff;
  border-radius: 50%;
  font-weight: 700;
}
.c-single05-flow-list__item::before {
  counter-increment: num 1;
  content: counter(num, decimal-leading-zero);
  position: absolute;
  top: 12px;
  left: 50%;
  transform: translateX(-50%);
  color: #cfcfcf;
  font-family: "Inter", sans-serif;
  font-size: 2rem;
}
.c-single05-flow-list__item-in {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 2px 0.8em 0;
  font-size: 1.6rem;
  line-height: var(--line_height_tight);
}
.c-single05-flow-list__item + .c-single05-flow-list__item::after {
  display: inline-block;
  width: 17px;
  height: 29px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 29"><g transform="translate(-721.5 -4775.5)"><rect width="5" height="5" transform="translate(733.5 4787.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4781.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(721.5 4775.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4798.5) rotate(-90)" fill="currentColor"/><rect width="5" height="5" transform="translate(721.5 4804.5) rotate(-90)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4787.5)" fill="currentColor"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 29"><g transform="translate(-721.5 -4775.5)"><rect width="5" height="5" transform="translate(733.5 4787.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4781.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(721.5 4775.5)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4798.5) rotate(-90)" fill="currentColor"/><rect width="5" height="5" transform="translate(721.5 4804.5) rotate(-90)" fill="currentColor"/><rect width="5" height="5" transform="translate(727.5 4787.5)" fill="currentColor"/></g></svg>');
  content: "";
  transition: all 0.3s ease;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -29px;
}
@media all and (max-width: 767px) {
  .c-single05-flow__inner {
    max-width: 400px;
    box-sizing: border-box;
    margin: 0 auto;
  }
  .c-single05-flow-list__item:nth-child(odd)::after {
    content: none;
  }
}
@media all and (min-width: 768px) {
  .c-single05-flow__inner {
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .c-single05-flow-list {
    justify-content: center;
    margin: 0 -17.5px;
  }
  .c-single05-flow-list__item {
    width: 154px;
    margin: 10px 17.5px 0;
    padding-top: 154px;
  }
  .c-single05-flow-list__item::before {
    top: 14px;
  }
  .c-single05-flow-list__item-in {
    padding: 2px 0 0;
    font-size: 2rem;
  }
  .c-single05-flow-list__item + .c-single05-flow-list__item::after {
    left: -25px;
  }
  .c-single05-flow-list__item:nth-child(7)::after {
    content: none;
  }
}

/* .c-single-content
================================================== */
.c-single-content *:not[class]:first-child {
  margin-top: 0;
}
.c-single-content *:not[class]:last-child {
  margin-bottom: 0;
}
.c-single-content p:not[class] {
  margin: 1em 0;
}
.c-single-content a:not[class] {
  transition: color 0.3s ease;
  color: rgb(var(--black)) !important;
  text-decoration: underline;
}
.c-single-content a:not[class][target="_blank"]::after {
  display: inline-block;
  width: 11px;
  height: 11px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
  margin: 0 3px 3px;
}
.c-single-content h2 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-top: 30px;
  margin-bottom: 15px;
}
.c-single-content h3 {
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-top: 20px;
  margin-bottom: 10px;
}
.c-single-content ul:not[class] {
  margin: 1.5em 0;
  list-style-type: square;
}
.c-single-content ol:not[class] {
  padding-left: 2.2em;
  margin: 1.5em 0;
  list-style-type: decimal-leading-zero;
}
.c-single-content ol:not[class] ::marker {
  font-family: "Inter", sans-serif;
  line-height: var(--line_height_tight);
  font-weight: 500;
  letter-spacing: 0.05em;
}
.c-single-content blockquote {
  margin: 20px 0;
  padding: 15px 20px;
  border: solid 1px;
}
.c-single-content blockquote p {
  margin-bottom: 10px;
}
.c-single-content cite {
  font-style: normal;
  font-size: 1.2rem;
  color: rgb(var(--gray));
  display: block;
}
.c-single-content .wp-caption {
  max-width: 100%;
}
.c-single-content__table {
  margin: 1.5em 0;
  overflow-x: auto;
}
@media all and (min-width: 768px) {
  .c-single-content {
    overflow: hidden;
  }
  .c-single-content h2 {
    font-size: 2.8rem;
    margin-top: 60px;
    margin-bottom: 20px;
  }
  .c-single-content h3 {
    font-size: 2.4rem;
    margin-top: 20px;
    margin-bottom: 15px;
  }
  .c-single-content blockquote {
    margin: 40px 0 60px;
    padding: 45px 80px;
    clear: both;
  }
  .c-single-content blockquote p {
    margin-bottom: 15px;
  }
  .c-single-content cite {
    font-size: 1.6rem;
  }
  .c-single-content a:not[class]:hover {
    color: rgb(var(--main)) !important;
    text-decoration: none;
  }
  .c-single-content .alignleft {
    float: left;
    margin-right: 50px;
  }
  .c-single-content .alignright {
    float: right;
    margin-left: 50px;
  }
  .c-single-content .aligncenter {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-bottom: 40px;
  }
  .c-single-content img.aligncenter {
    display: block;
  }
}

@media all and (max-width: 767px) {
  .c-single-content.is-syllabus {
    font-feature-settings: "palt";
    letter-spacing: normal;
    line-break: strict;
    font-size: 1.6rem;
    line-height: 1.75em;
    overflow-wrap: break-word;
  }
  .c-single-content.is-syllabus h2 {
    font-size: 1.8rem;
  }
  .c-single-content.is-syllabus h2,
  .c-single-content.is-syllabus h3 {
    font-feature-settings: "palt";
    font-style: normal;
    letter-spacing: normal;
    line-break: strict;
    line-height: 1.55556em;
    font-weight: 700;
    overflow-wrap: break-word;
  }
}

/* .c-single-content
================================================== */
.c-single-sidebar-list {
  color: rgba(var(--black), 0.4);
  font-size: 1.4rem;
  line-height: 1.5;
}
.c-single-sidebar-list__item {
  margin-top: 10px;
}
.c-single-sidebar-list__item.is-active a.c-single-sidebar-list__item-in {
  color: rgb(var(--black));
}
.c-single-sidebar-list__item.is-active
  a.c-single-sidebar-list__item-in::before {
  background: rgb(var(--main));
}
.c-single-sidebar-list__item-in {
  display: flex;
  transition: all 0.3s ease;
}
.c-single-sidebar-list__item-in::before {
  content: "";
  position: relative;
  top: 12px;
  flex: 0 0 10px;
  height: 1px;
  margin-right: 10px;
  background: rgba(var(--black), 0.4);
}
@media (hover: hover) and (pointer: fine) {
  .c-single-sidebar-list a.c-single-sidebar-list__item-in:hover {
    color: rgb(var(--black));
  }
  .c-single-sidebar-list a.c-single-sidebar-list__item-in:hover::before {
    background: rgb(var(--main));
  }
}

/* .c-suppliers-slider01 // 企業ロゴスライダー
================================================== */
.c-suppliers-slider01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
.c-suppliers-slider01__item {
  max-width: 200px !important;
  box-sizing: border-box;
}
.c-suppliers-slider01__item img {
  display: block;
  -o-object-fit: contain;
  object-fit: contain;
  background: #fff;
  image-rendering: -webkit-optimize-contrast;
  height: 50px;
  width: auto;
}
@media all and (min-width: 768px) {
  .c-suppliers-slider01 {
    gap: 30px;
  }
  .c-suppliers-slider01__item {
    max-width: 280px !important;
  }
  .c-suppliers-slider01__item img {
    height: 120px;
    width: auto;
  }
}

/* .c-table01
================================================== */
.c-table01 th,
.c-table01 td {
  border: solid 1px #cfcfcf;
  padding: 10px;
  vertical-align: middle;
  font-weight: normal;
}
.c-table01 th {
  color: #fff;
  background: rgb(var(--black));
}
.c-table01 th:first-child {
  width: 130px;
  box-sizing: border-box;
}
.c-table01 td {
  font-size: 1.2rem;
}
.c-table01 td:first-child {
  text-align: center;
}
@media all and (max-width: 767px) {
  .c-table01__scrollBox {
    overflow-x: scroll;
    scrollbar-width: thin;
    scrollbar-color: #00d3d6 #333;
    padding-bottom: 25px;
  }
  .c-table01__scrollBox > table {
    width: 870px;
  }
  .c-table01__scrollBox::-webkit-scrollbar {
    height: 6px;
  }
  .c-table01__scrollBox::-webkit-scrollbar-track {
    background: linear-gradient(
      to bottom,
      #fff 1px,
      #333 2px,
      #333 5px,
      #fff 5px,
      #fff 6px
    );
  }
  .c-table01__scrollBox::-webkit-scrollbar-thumb {
    background: #00d3d6;
  }
}
@media all and (min-width: 768px) {
  .c-table01 th,
  .c-table01 td {
    padding: 15px 20px;
  }
  .c-table01 th:first-child {
    width: 250px;
  }
  .c-table01 td {
    font-size: 1.4rem;
  }
}

/* .c-table02 PCでthとtdの間に隙間あり
================================================== */
.c-table02 th,
.c-table02 td {
  vertical-align: middle;
  font-weight: 500;
  text-align: left;
}
.c-table02 th {
  padding: 10px;
  border-top: 1px solid rgb(var(--black));
}
.c-table02 td {
  padding: 12px 10px;
  border-top: 1px solid #d6d6d6;
}
.c-table02 tr:last-of-type td {
  border-bottom: 1px solid rgb(var(--black));
}
@media all and (max-width: 767px) {
  .c-table02 table,
  .c-table02 thead,
  .c-table02 tbody,
  .c-table02 tr,
  .c-table02 th,
  .c-table02 td {
    display: block;
  }
}
@media all and (min-width: 768px) {
  .c-table02 table {
    table-layout: fixed;
  }
  .c-table02 th,
  .c-table02 td {
    border-top: 1px solid rgb(var(--black));
    border-bottom: 1px solid rgb(var(--black));
    vertical-align: top;
  }
  .c-table02 th {
    padding: 10px 0;
    width: 200px;
    border-right: 20px solid #f6f6f6;
  }
  .c-table02 td {
    padding: 10px 0;
  }
}

/* .c-table03 グレー。縦並び
================================================== */
.c-table03 th,
.c-table03 td {
  vertical-align: middle;
  font-weight: 500;
  text-align: left;
}
.c-table03 th {
  padding: 15px 15px 8px;
  font-weight: 700;
  background: #f6f6f6;
}
.c-table03 td {
  padding: 0 15px 15px;
  background: #f6f6f6;
  border-bottom: 10px solid #fff;
}
.c-table03 tr:last-of-type td {
  border: none;
}
@media all and (max-width: 767px) {
  .c-table03 table,
  .c-table03 thead,
  .c-table03 tbody,
  .c-table03 tr,
  .c-table03 th,
  .c-table03 td {
    display: block;
  }
}
@media all and (min-width: 768px) {
  .c-table03 table {
    table-layout: fixed;
  }
  .c-table03 th,
  .c-table03 td {
    box-sizing: border-box;
    border-bottom: 20px solid #fff;
    vertical-align: top;
  }
  .c-table03 th {
    padding: 40px 30px;
    width: 210px;
  }
  .c-table03 td {
    padding: 40px 30px 40px 0;
  }
  .c-table03 tr:last-of-type th,
  .c-table03 tr:last-of-type td {
    border: none;
  }
}

/* .c-txt-note
================================================== */
.c-txt-note {
  font-size: 1.2rem;
}
@media all and (min-width: 768px) {
  .c-txt-note {
    font-size: 1.4rem;
  }
}

/* .l-breadcrumb
================================================ */
.l-breadcrumb__inner {
  position: relative;
}
.l-breadcrumb__inner::before {
  position: absolute;
  content: "";
  bottom: -36px;
  right: 20px;
  width: 42px;
  height: 36px;
  background: url(../img/common/bg_bit02_pc.png) no-repeat center top/100% auto;
}
@media all and (min-width: 768px) {
  .l-breadcrumb__inner::before {
    bottom: -101px;
    right: 50px;
    width: 118px;
    height: 101px;
  }
}
@media all and (min-width: 1580px) {
  .l-breadcrumb__inner::before {
    right: 220px;
  }
}

.l-breadcrumb-list {
  display: flex;
  flex-wrap: wrap;
  padding-top: 20px;
  padding-bottom: 10px;
  border-bottom: solid 1px;
}
.l-breadcrumb-list__item {
  display: inline-block;
  vertical-align: top;
  font-size: 1rem;
  line-height: var(--line_height_head);
  color: rgb(var(--gray));
  opacity: 0.5;
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item {
  margin-left: 6px;
}
.l-breadcrumb-list__item + .l-breadcrumb-list__item:before {
  content: "/";
  margin-right: 6px;
}
@media all and (max-width: 767px) {
  .l-breadcrumb-list {
    white-space: nowrap;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow: auto;
  }
  .l-breadcrumb-list::-webkit-scrollbar {
    display: none;
  }
}
@media all and (min-width: 768px) {
  .l-breadcrumb-list {
    padding-top: 70px;
    padding-bottom: 30px;
  }
  .l-breadcrumb-list__item {
    font-size: 1.3rem;
  }
  .l-breadcrumb-list__item + .l-breadcrumb-list__item {
    margin-left: 8px;
  }
  .l-breadcrumb-list__item + .l-breadcrumb-list__item:before {
    content: "/";
    margin-right: 8px;
  }
}

.l-breadcrumb.is-attempt-single {
  margin-top: -46px;
}
.l-breadcrumb.is-attempt-single .l-breadcrumb__inner::before {
  content: none;
}
.l-breadcrumb.is-attempt-single .l-breadcrumb-list__item {
  color: #fff;
  opacity: 1;
}
@media all and (min-width: 768px) {
  .l-breadcrumb.is-attempt-single {
    margin-top: -100px;
  }
  .l-breadcrumb.is-attempt-single .l-breadcrumb-list {
    padding-top: 50px;
    border-bottom: none;
  }
}

.l-breadcrumb.is-recruit .l-breadcrumb__inner::before {
  content: none;
}
.l-breadcrumb.is-recruit .l-breadcrumb-list {
  border-bottom: none;
}
@media all and (min-width: 768px) {
  .l-breadcrumb.is-recruit .l-breadcrumb-list {
    padding-top: 20px;
  }
}

.l-breadcrumb.has-no-border .l-breadcrumb-list {
  border-bottom: none;
}
@media all and (min-width: 768px) {
  .l-breadcrumb.has-no-border-pc .l-breadcrumb-list {
    border-bottom: none;
  }
}

/* .l-cursor
================================================== */
.l-cursor {
  display: none;
  position: fixed;
  width: 80px;
  height: 80px;
  background: url(../img/common/ico_more01.png) no-repeat center center/contain;
  z-index: 500;
  margin: -40px 0 0 -40px;
  pointer-events: none;
  opacity: 1;
}
.l-cursor:not(.is-shown) {
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  .l-cursor {
    display: block;
  }
}

/* .l-cv
================================================ */
.l-cv {
  background: url(../img/common/bg_cv01_sp.png.webp) no-repeat center top/cover;
}
.l-cv__inner {
  position: relative;
  padding-top: 60px;
  padding-bottom: 65px;
}
.l-cv__head {
  margin-bottom: 50px;
  text-align: center;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
@media all and (min-width: 768px) {
  .l-cv {
    background-image: url(../img/common/bg_cv01_pc.png.webp);
  }
  .l-cv__inner {
    padding-top: 120px;
    padding-bottom: 94px;
  }
  .l-cv__head {
    margin-bottom: 40px;
    font-size: 5.6rem;
  }
}

.l-cv-list {
  position: relative;
  padding: 10px 21px;
}
.l-cv-list::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  content: "";
  background-color: rgba(217, 217, 217, 0.35);
  mix-blend-mode: multiply;
}
.l-cv-list__item {
  position: relative;
  padding: 35px 0 40px 0;
}
.l-cv-list__item-head {
  margin-bottom: 8px;
  display: flex;
  align-items: flex-start;
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.l-cv-list__item-head::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: rgb(var(--main));
  display: block;
  margin-top: 0.8em;
  margin-right: 9px;
  transform: translateY(-50%);
  flex-shrink: 0;
}
.l-cv-list__item-txt {
  font-size: 1.4rem;
  letter-spacing: 0.02em;
}
.l-cv-list__item-btn {
  margin-top: 25px;
}
.l-cv-list__item-tel {
  margin-top: 25px;
}
.l-cv-list__item-tel-in {
  display: block;
}
.l-cv-list__item-tel-main {
  display: flex;
  align-items: center;
}
.l-cv-list__item-tel-main-ico {
  width: 36px;
  height: 21px;
  margin-right: 8px;
}
.l-cv-list__item-tel-main-ico img {
  display: block;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.l-cv-list__item-tel-main-num {
  font-size: 2.5rem;
}
.l-cv-list__item-tel-sub {
  margin-top: 2px;
  font-size: 1.2rem;
  line-height: var(--line_height_head);
}
@media all and (max-width: 767px) {
  .l-cv-list__item + .l-cv-list__item {
    border-top: 1px solid #aaa;
  }
}
@media all and (min-width: 768px) {
  .l-cv-list {
    padding: 75px 3.8513513514%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 4.0540540541%;
  }
  .l-cv-list__item {
    display: grid;
    align-items: start;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 0 0;
    padding: 0 0 0 30px;
    border-left: 1px solid #858585;
  }
  .l-cv-list__item-head {
    font-size: 2.4rem;
    margin-bottom: 8px;
  }
  .l-cv-list__item-head::before {
    width: 8px;
    height: 8px;
  }
  .l-cv-list__item-txt {
    font-size: 1.8rem;
  }
  .l-cv-list__item-btn {
    margin-top: 23px;
  }
  .l-cv-list__item-tel {
    margin-top: 22px;
  }
  .l-cv-list__item-tel-main-ico {
    width: 44px;
    height: 25px;
    margin-right: 4px;
  }
  .l-cv-list__item-tel-main-num {
    font-size: 3.2rem;
  }
  .l-cv-list__item-tel-sub {
    margin-top: 10px;
    font-size: 1.3rem;
  }
}
@media all and (min-width: 768px) and (max-width: 1239px) {
  .l-cv-list__item-head {
    font-size: 2.1rem;
  }
  .l-cv-list__item-txt {
    font-size: 1.3rem;
  }
  .l-cv-list__item-tel-main-num {
    font-size: 2.9rem;
  }
}

/* .l-footer
================================================ */
.l-footer {
  position: relative;
  color: #fff;
  background: rgb(var(--black)) url(../img/common/bg_black01_sp.jpg.webp)
    no-repeat center top/cover;
}
.l-footer__inner {
  padding: 65px 20px 30px;
  background-image:
    repeating-linear-gradient(
      180deg,
      transparent,
      transparent 100px,
      #474747 100px,
      #474747 101px,
      transparent 101px,
      transparent 145px
    ),
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 120px,
      #474747 120px,
      #474747 121px,
      transparent 121px,
      transparent 145px
    );
}
@media all and (min-width: 768px) {
  .l-footer {
    background-image: url(../img/common/bg_black01_pc.jpg.webp);
  }
  .l-footer__inner {
    padding: 160px 100px 40px;
    background-image:
      repeating-linear-gradient(
        180deg,
        transparent,
        transparent 200px,
        #474747 200px,
        #474747 201px,
        transparent 201px,
        transparent 232px
      ),
      repeating-linear-gradient(
        90deg,
        transparent,
        transparent 40px,
        #474747 40px,
        #474747 41px,
        transparent 41px,
        transparent 232px
      );
    display: grid;
    grid-template-columns: 25.4651162791% auto;
    gap: 0 66px;
  }
}

/* .l-footer-main
================================================== */
@media all and (max-width: 767px) {
  .l-footer-main {
    margin-bottom: 75px;
  }
}
@media all and (min-width: 768px) {
  .l-footer-main {
    order: 2;
    display: grid;
    grid-template-columns: auto -webkit-max-content;
    grid-template-columns: auto max-content;
    gap: 0 53px;
  }
}

.l-footer-main-list {
  position: relative;
  box-sizing: border-box;
}
.l-footer-main-list__item {
  border-bottom: 1px solid;
}
.l-footer-main-list__item-link,
.l-footer-main-list__item-trigger {
  position: relative;
  display: block;
  font-size: 1.6rem;
  min-height: 60px;
  padding: 10px 0;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.l-footer-main-list__item-trigger,
.l-footer-main-list__item-link.is-company {
  transition: color 0.3s ease;
  padding-right: 30px;
}
.l-footer-main-list__item-trigger-ico,
.l-footer-main-list__item-link.is-company-ico {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  margin-top: -5px;
  width: 11px;
  height: 11px;
  transition: none;
}
.l-footer-main-list__item-trigger-ico svg path,
.l-footer-main-list__item-link.is-company-ico svg path {
  transition: transform 0.3s ease;
}
.l-footer-main-list__item-trigger.is-active,
.l-footer-main-list__item-link.is-company.is-active {
  color: rgb(var(--main));
}
.l-footer-main-list__item-trigger.is-active svg path:nth-of-type(2),
.l-footer-main-list__item-link.is-company.is-active svg path:nth-of-type(2) {
  transform: translateY(calc((100% - 2px) / 3 + 1px));
}
.l-footer-main-list__item-trigger.is-active svg path:nth-of-type(3),
.l-footer-main-list__item-link.is-company.is-active svg path:nth-of-type(3) {
  transform: translateY(calc(((100% - 2px) / 3 + 1px) * -1));
}
@media all and (max-width: 767px) {
  .l-footer-main-list:first-of-type {
    border-top: 1px solid;
  }
  .l-footer-main-list__item.is-active {
    color: rgb(var(--main));
  }
  .l-footer-main-list__item.is-active svg path:nth-of-type(2) {
    transform: translateY(calc((100% - 2px) / 3 + 1px));
  }
  .l-footer-main-list__item.is-active svg path:nth-of-type(3) {
    transform: translateY(calc(((100% - 2px) / 3 + 1px) * -1));
  }
  .l-footer-main-list__item-link.is-company {
    position: absolute;
    z-index: 1;
  }
}
@media all and (min-width: 768px) {
  .l-footer-main-list {
    margin-top: -20px;
  }
  .l-footer-main-list.is-list01 .l-footer-main-list__item {
    border-bottom: none;
  }
  .l-footer-main-list__item-link,
  .l-footer-main-list__item-trigger,
  .l-footer-main-list__item-link.is-company {
    font-size: 1.6rem;
    min-height: unset;
    min-width: 190px;
  }
  .l-footer-main-list__item-trigger {
    padding-right: 0;
    padding-bottom: 2px;
    pointer-events: none;
  }
  .l-footer-main-list__child-wrap {
    display: block !important;
    height: auto !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-main-list__item-link,
  .l-footer-main-list__item-link.is-company,
  .l-footer-main-list__item-trigger {
    transition: color 0.3s ease;
  }
  .l-footer-main-list__item-link:hover,
  .l-footer-main-list__item-link:focus-visible,
  .l-footer-main-list__item-link.is-company:hover,
  .l-footer-main-list__item-link.is-company:focus-visible,
  .l-footer-main-list__item-trigger:hover,
  .l-footer-main-list__item-trigger:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-main-list__child-item:last-of-type {
  margin-bottom: 30px;
}
.l-footer-main-list__child-item-link {
  position: relative;
  display: block;
  min-height: 46px;
  padding: 10px 15px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.l-footer-main-list__child-item-link::before {
  display: inline-block;
  content: "-";
  margin: 0 5px 2px 0;
}
.l-footer-main-list__child-item-head {
  padding: 14px 15px;
}
@media all and (max-width: 767px) {
  .l-footer-main-list__child-item {
    background: rgb(var(--dark));
  }
  .l-footer-main-list__child-item + .l-footer-main-list__child-item {
    margin-top: 2px;
  }
}
@media all and (min-width: 768px) {
  .l-footer-main-list__child.is-service {
    display: flex;
    flex-wrap: wrap;
    margin-right: -30px;
  }
  .l-footer-main-list__child.is-service::before {
    content: "";
    display: block;
    border-top: 1px solid;
    width: calc(100% - 30px);
  }
  .l-footer-main-list__child.is-service .l-footer-main-list__child-item {
    margin-top: 15px;
    margin-right: 30px;
  }
  .l-footer-main-list__child.is-service .l-footer-main-list__child-item.is-cdp {
    max-width: 384px;
  }
  .l-footer-main-list__child-item {
    margin-bottom: 0;
  }
  .l-footer-main-list__child-item:last-of-type {
    margin-bottom: 12px;
  }
  .l-footer-main-list__child-item-link {
    min-height: 0;
    padding: 0;
    font-size: 1.4rem;
  }
  .l-footer-main-list__child-item-head {
    padding: 15px 0 10px;
    font-size: 1.5rem;
    font-weight: 700;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-main-list__child-item-link {
    transition: color 0.3s ease;
  }
  .l-footer-main-list__child-item-link:hover,
  .l-footer-main-list__child-item-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-main-list__grandchild {
  font-size: 1.3rem;
  padding: 0 15px 25px;
  margin: -8px -4px 0;
  display: flex;
  flex-wrap: wrap;
  line-height: var(--line_height_head);
}
.l-footer-main-list__grandchild-item {
  margin: 8px 4px 0;
}
.l-footer-main-list__grandchild-item-link {
  display: block;
  border: 1px solid #b5b5b5;
  border-radius: 999px;
  padding: 8px 15px;
}
@media all and (min-width: 768px) {
  .l-footer-main-list__grandchild {
    font-size: 1.4rem;
    padding: 0 0 2px 0;
    margin: -6px -3px 0;
  }
  .l-footer-main-list__grandchild-item {
    margin: 6px 3px 0;
  }
  .l-footer-main-list__grandchild-item-link {
    padding: 4px 12px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-main-list__grandchild-item-link {
    transition: all 0.3s ease;
  }
  .l-footer-main-list__grandchild-item-link:hover,
  .l-footer-main-list__grandchild-item-link:focus-visible {
    background: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/* .l-footer-info
================================================ */
.l-footer-info__logo {
  width: 168px;
  height: 27px;
  margin-bottom: 25px;
}
.l-footer-info__logo-link {
  display: block;
  width: 100%;
  height: 100%;
}
.l-footer-info__logo-ico {
  width: 100%;
  height: 100%;
}
.l-footer-info__logo-ico svg {
  transition: none !important;
}
@media all and (min-width: 768px) {
  .l-footer-info {
    order: 1;
  }
  .l-footer-info__logo {
    width: 270px;
    height: 41px;
    margin-bottom: 84px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-info__logo-link {
    transition: color 0.3s ease;
  }
  .l-footer-info__logo-link:hover,
  .l-footer-info__logo-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-info-lang {
  display: flex;
  align-items: center;
  line-height: var(--line_height_head);
  font-size: 1.4rem;
}
.l-footer-info-lang__item.is-current {
  color: rgb(var(--main));
}
.l-footer-info-lang__item + .l-footer-info-lang__item::before {
  display: inline-block;
  content: "";
  width: 0;
  height: 0.8em;
  border-left: 1px solid;
  margin: 0 10px;
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-info-lang__item-link {
    transition: color 0.3s ease;
  }
  .l-footer-info-lang__item-link:hover,
  .l-footer-info-lang__item-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-info-office {
  margin-top: 30px;
}
.l-footer-info-office__item {
  margin-top: 15px;
  line-height: var(--line_height_head);
}
.l-footer-info-office__item-head {
  font-weight: 700;
  font-size: 1.3rem;
  margin-bottom: 3px;
}
.l-footer-info-office__item-txt {
  font-size: 1.1rem;
  letter-spacing: 0.05em;
}
.l-footer-info-office__item-access {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  font-size: 1rem;
  letter-spacing: 0;
}
.l-footer-info-office__item-access svg {
  transition: none !important;
}
.l-footer-info-office__item-access-map {
  margin-right: 10px;
  font-size: 1.1rem;
}
.l-footer-info-office__item-access-map-ico {
  width: 8px;
  height: 12px;
  margin-right: 3px;
}
.l-footer-info-office__item-access-map-txt {
  display: inline-block;
}
.l-footer-info-office__item-access-tel {
  display: flex;
  flex-wrap: wrap;
}
.l-footer-info-office__item-access-tel-ico {
  width: 8px;
  height: 11px;
  margin-top: -1px;
  margin-right: 2px;
}
.l-footer-info-office__item-access-tel-num {
  display: inline-block;
  font-size: 1.1rem;
}
.l-footer-info-office__item-access-tel-txt {
  display: inline-block;
}
.l-footer-info-office__item-access-tel-fax {
  display: inline-block;
}
.l-footer-info-office__item-group-ico {
  width: 10px;
  height: 10px;
  margin-left: 6px;
}
.l-footer-info-office__item-group-link {
  font-size: 1.1rem;
  width: 100%;
}
.l-footer-info-office__item-group-link
  + .l-footer-info-office__item-group-link {
  margin-top: 5px;
}
.l-footer-info-office__item + .l-footer-info-office__item {
  margin-top: 20px;
}
@media all and (min-width: 768px) {
  .l-footer-info-office {
    margin-top: 35px;
  }
  .l-footer-info-office__item {
    margin-top: 15px;
  }
  .l-footer-info-office__item-head {
    font-size: 1.6rem;
  }
  .l-footer-info-office__item-txt {
    font-size: 1.4rem;
  }
  .l-footer-info-office__item-access {
    margin-top: 2px;
    font-size: 1.3rem;
    letter-spacing: 0.02em;
  }
  .l-footer-info-office__item-access-map {
    margin-bottom: 2px;
  }
  .l-footer-info-office__item-access-map-ico {
    width: 10px;
    height: 13px;
    font-size: 1.3rem;
  }
  .l-footer-info-office__item-access-tel {
    align-items: center;
  }
  .l-footer-info-office__item-access-tel-ico {
    width: 9px;
    height: 12px;
  }
  .l-footer-info-office__item-access-tel-num {
    font-size: 1.3rem;
  }
  .l-footer-info-office__item-access-tel-txt {
    font-size: 1.1rem;
    margin: 0 0.2em;
  }
  .l-footer-info-office__item-access-tel-fax {
    font-size: 1.3rem;
  }
  .l-footer-info-office__item-group-ico {
    width: 11px;
    height: 11px;
    margin-bottom: 2px;
  }
  .l-footer-info-office__item-group-ico svg {
    transition: none;
  }
  .l-footer-info-office__item-group-link {
    font-size: 1.3rem;
  }
  .l-footer-info-office__item + .l-footer-info-office__item {
    margin-top: 25px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-info-office__item-access-map-link,
  .l-footer-info-office__item-access-tel-link {
    transition: color 0.3s ease;
  }
  .l-footer-info-office__item-access-map-link:hover,
  .l-footer-info-office__item-access-map-link:focus-visible,
  .l-footer-info-office__item-access-tel-link:hover,
  .l-footer-info-office__item-access-tel-link:focus-visible {
    color: rgb(var(--main));
  }
  .l-footer-info-office__item-group-link {
    transition: color 0.3s ease;
  }
  .l-footer-info-office__item-group-link:hover,
  .l-footer-info-office__item-group-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-info-badge {
  margin-top: 20px;
}
.l-footer-info-badge-list {
  display: flex;
  flex-wrap: wrap;
  margin-right: -18px;
  height: 72px;
}
.l-footer-info-badge-list__item {
  margin-right: 18px;
  height: 100%;
}
.l-footer-info-badge-list__item img {
  display: flex;
  width: auto;
  height: 100%;
}
.l-footer-info-badge__note {
  margin-top: 13px;
  font-size: 1rem;
  line-height: var(--line_height_head);
}
@media all and (min-width: 768px) {
  .l-footer-info-badge {
    margin-top: 35px;
  }
  .l-footer-info-badge-list {
    margin-right: -20px;
    height: 84px;
    min-height: 60px;
    max-height: 5vw;
  }
  .l-footer-info-badge-list__item {
    margin-right: 20px;
  }
  .l-footer-info-badge__note {
    margin-top: 10px;
    font-size: 1.4rem;
  }
}

.l-footer-info-bnr {
  margin-top: 20px;
  margin-bottom: 30px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.l-footer-info-bnr__item {
  max-width: 161px;
}
.l-footer-info-bnr__item + .l-footer-info-bnr__item {
  margin: 0 0 0 12px;
}
.l-footer-info-bnr__item-link {
  display: block;
}
.l-footer-info-bnr__item-img img {
  display: block;
}
@media all and (min-width: 768px) {
  .l-footer-info-bnr {
    margin-top: 35px;
    margin-bottom: -10px;
    width: auto;
  }
  .l-footer-info-bnr__item {
    max-width: calc((100% - 15px) * 0.5);
  }
  .l-footer-info-bnr__item + .l-footer-info-bnr__item {
    margin: 0 0 0 15px;
  }
}

.l-footer-info-privacy {
  margin-top: 50px;
  display: flex;
  align-items: center;
}
.l-footer-info-privacy__img {
  flex-basis: 75px;
  width: 75px;
  height: 75px;
  margin-right: 18px;
}
.l-footer-info-privacy__txt {
  font-size: 1.1rem;
  flex-basis: calc(100% - 75px - 18px);
  max-width: calc(100% - 75px - 18px);
}
@media all and (min-width: 768px) {
  .l-footer-info-privacy {
    margin-top: 120px;
    margin-bottom: -55px;
    position: relative;
    z-index: 1;
  }
}

/* .l-footer-sub
================================================ */
.l-footer-sub {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 30px;
}
.l-footer-sub__mark {
  display: flex;
  gap: 18px;
}
.l-footer-sub__mark-link {
  width: 64px;
}
.l-footer-sub__cr {
  margin-left: auto;
  text-align: right;
  font-size: 1.4rem;
  color: #858585;
}
@media all and (max-width: 767px) {
  .l-footer-sub {
    align-items: flex-end;
  }
  .l-footer-sub__cr {
    width: 100%;
    margin-top: 25px;
  }
}
@media all and (min-width: 768px) {
  .l-footer-sub {
    grid-column: 1/3;
    order: 3;
    margin-top: 0;
  }
  .l-footer-sub__cr {
    order: 3;
    margin-top: 32px;
    font-size: 1.2rem;
    text-align: right;
  }
}

.l-footer-sub-nav {
  font-size: 1.1rem;
  line-height: var(--line_height_head);
  color: #707070;
}
@media all and (max-width: 767px) {
  .l-footer-sub-nav {
    width: 100%;
    margin-bottom: 30px;
  }
  .l-footer-sub-nav__item + .l-footer-sub-nav__item {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .l-footer-sub-nav {
    order: 2;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    margin-top: 32px;
  }
  .l-footer-sub-nav__item + .l-footer-sub-nav__item::before {
    content: "";
    display: inline-block;
    border-left: 1px solid;
    height: 1em;
    margin: 0px 9px -2px 9px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-sub-nav__item-link {
    transition: color 0.3s ease;
  }
  .l-footer-sub-nav__item-link:hover,
  .l-footer-sub-nav__item-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-footer-sub-sns {
  text-align: right;
}
.l-footer-sub-sns__head {
  font-size: 1.3rem;
  margin-bottom: 12px;
}
.l-footer-sub-sns-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.l-footer-sub-sns-list__item {
  flex-basis: 40px;
  margin-left: 10px;
}
.l-footer-sub-sns-list__item-link {
  display: block;
  background: #2a2a2a;
}
.l-footer-sub-sns-list__item-link svg {
  transition: none !important;
}
@media all and (min-width: 768px) {
  .l-footer-sub-sns {
    width: 100%;
    order: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .l-footer-sub-sns__head {
    font-size: 1.5rem;
    margin: 0 10px 0 0;
  }
  .l-footer-sub-sns-list__item {
    flex-basis: 55px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-sub-sns-list__item-link {
    transition: color 0.3s ease;
  }
  .l-footer-sub-sns-list__item-link:hover,
  .l-footer-sub-sns-list__item-link:focus-visible {
    color: rgb(var(--main));
  }
}

/* .l-footer-page-top
================================================ */
.l-footer-page-top {
  opacity: 0;
  overflow: hidden;
  position: -webkit-sticky;
  position: sticky;
  margin-bottom: -23px;
  padding-top: 23px;
  right: 0;
  bottom: 40px;
  z-index: 10;
  height: 0;
  overflow: visible;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.l-footer-page-top__link {
  position: relative;
  display: block;
  box-sizing: border-box;
  color: rgb(var(--main));
  text-decoration: none;
  width: 25px;
  height: 18px;
  margin: 0 15px 0 auto;
  box-sizing: content-box;
  pointer-events: auto;
}
.l-footer-page-top__ico {
  display: block;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}
.l-footer-page-top.is-shown {
  opacity: 1;
  visibility: visible;
}
@media all and (min-width: 768px) {
  .l-footer-page-top {
    margin-bottom: -56px;
    padding-top: 56px;
    bottom: 64px;
  }
  .l-footer-page-top__link {
    width: 41px;
    height: 29px;
    margin-right: 95px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-page-top__link:hover .l-footer-page-top__ico svg.has-multiple use,
  .l-footer-page-top__link:focus-visible
    .l-footer-page-top__ico
    svg.has-multiple
    use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .l-footer-page-top__link:hover
    .l-footer-page-top__ico
    svg.has-multiple
    use:nth-of-type(2),
  .l-footer-page-top__link:focus-visible
    .l-footer-page-top__ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .l-footer-page-top__link:hover
    .l-footer-page-top__ico
    svg.has-multiple
    use:nth-of-type(3),
  .l-footer-page-top__link:focus-visible
    .l-footer-page-top__ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/* .l-footer-cta
================================================ */
.l-footer-cta {
  opacity: 0;
  position: fixed;
  right: 15px;
  bottom: 15px;
  border-radius: 50%;
  z-index: 10;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.l-footer-cta__link {
  position: relative;
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  transition: transform 0.3s ease;
}
.l-footer-cta__link::before {
  content: "";
  background: url(../img/service/bnr_fix01.png?1220) no-repeat center;
  background-size: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.5s ease 0.1s;
  z-index: 1;
  border-radius: 50%;
  opacity: 0.88;
}
.l-footer-cta__sub {
  position: relative;
  z-index: 2;
  font-size: 1rem;
  margin-top: 3px;
}
.l-footer-cta__main {
  position: relative;
  z-index: 2;
  font-size: 1.3rem;
}
.l-footer-cta__ico {
  position: relative;
  z-index: 2;
  color: #fff;
  width: 16px;
  height: 11px;
  display: block;
  margin-top: 8px;
}
.l-footer-cta.is-shown {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
@media all and (min-width: 768px) {
  .l-footer-cta__link {
    width: 196px;
    height: 196px;
  }
  .l-footer-cta__sub {
    font-size: 1.5rem;
    margin-top: 5px;
  }
  .l-footer-cta__main {
    font-size: 2rem;
  }
  .l-footer-cta__ico {
    width: 25px;
    height: 19px;
    margin-top: 18px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-footer-cta__link:hover,
  .l-footer-cta__link:focus-visible {
    transform: translateY(-10px);
  }
  .l-footer-cta__link:hover::before,
  .l-footer-cta__link:focus-visible::before {
    transform: rotate(240deg);
  }
  .l-footer-cta__link:hover .l-footer-cta__ico svg.has-multiple use,
  .l-footer-cta__link:focus-visible .l-footer-cta__ico svg.has-multiple use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .l-footer-cta__link:hover
    .l-footer-cta__ico
    svg.has-multiple
    use:nth-of-type(2),
  .l-footer-cta__link:focus-visible
    .l-footer-cta__ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .l-footer-cta__link:hover
    .l-footer-cta__ico
    svg.has-multiple
    use:nth-of-type(3),
  .l-footer-cta__link:focus-visible
    .l-footer-cta__ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/* .l-header
================================================ */
.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-width: 320px;
  z-index: 2000;
  box-sizing: border-box;
  transition:
    transform 0.3s ease,
    background 0.3s ease;
}
.l-header.is-loading {
  transition: none !important;
}
.l-header.is-loading a {
  transition: none !important;
}
.l-header.is-active {
  transform: translateY(-7px);
}
.l-header.is-active .l-header-info {
  transition: none;
}
.l-header.is-active.is-shown {
  background: #323232;
  color: #fff;
}
.l-header.is-active.is-shown .l-header-info {
  transition: none;
}
.l-header.is-active:not(.is-shown):not(.is-open) {
  transform: translateY(-80px);
}
@media all and (max-width: 1239px) {
  .l-header {
    padding-top: 7px;
  }
  .l-header.is-open {
    transform: translateY(0);
    background: none;
  }
  .l-header.is-open .l-header-info {
    color: #fff;
  }
  .l-header.is-open .l-header-info__cv {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}
@media all and (min-width: 1240px) {
  .l-header.is-active {
    transform: translateY(0);
  }
  .l-header.is-active:not(.is-shown):not(.is-open) {
    transform: translateY(calc(var(--header_height_pc) * -1));
  }
}

/* .l-header-info
================================================== */
.l-header-info {
  position: relative;
  z-index: 3;
}
.l-header-info.is-color-white {
  color: #fff;
}
.l-header-info__inner {
  height: var(--header_height_sp);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 90px;
  box-sizing: border-box;
}
.l-header-info__logo {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20px;
  display: flex;
  align-items: center;
  margin-top: -2px;
}
.l-header-info__logo-ico {
  width: 123px;
  height: 20px;
}
.l-header.is-recruit .l-header-info__logo {
  top: 8px;
}
.l-header.is-recruit .l-header-info__logo-txt {
  display: block;
  margin-top: 5px;
  line-height: var(--line_height_head);
  font-size: 1rem;
  font-weight: 700;
  transition: color 0.3s ease;
}
.l-header.is-recruit .l-header-info__cv {
  position: absolute;
  top: 8px;
  right: 20px;
}
@media all and (max-width: 1239px) {
  .l-header.is-recruit .l-header-info__cv {
    width: 90px;
    height: 40px;
  }
  .l-header.is-recruit .l-header-info__cv-btn {
    width: 100%;
    height: 100%;
    min-height: 0;
  }
  .l-header.is-recruit .l-header-info__cv-btn .c-btn01__link {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column-reverse;
    line-height: var(--line_height_head);
    text-align: center;
  }
  .l-header.is-recruit .l-header-info__cv-btn .c-btn01__txt {
    font-size: 1rem;
  }
  .l-header.is-recruit .l-header-info__cv-btn .c-btn01__ico {
    margin: 0 0 2px;
  }
}
@media all and (max-width: 1239px) {
  .l-header.is-recruit.is-shown .l-header-info__logo {
    top: 1px;
  }
  .l-header.is-recruit.is-shown .l-header-info__logo-txt {
    margin-top: 2px;
  }
  .l-header.is-recruit.is-shown .l-header-info__cv {
    top: 7px;
  }
}
@media all and (min-width: 1240px) {
  .l-header-info__inner {
    height: var(--header_height_pc);
    padding-right: 35px;
  }
  .l-header-info__logo {
    left: 30px;
  }
  .l-header-info__logo-ico {
    width: 139.2px;
    height: 21.6px;
  }
  .l-header.is-recruit .l-header-info__logo {
    top: 0;
  }
  .l-header.is-recruit .l-header-info__logo-link {
    display: flex;
    align-items: center;
  }
  .l-header.is-recruit .l-header-info__logo-txt {
    margin: 0 0 0 20px;
    font-size: 1.6rem;
  }
  .l-header.is-recruit .l-header-info__cv {
    top: 25px;
    right: 40px;
  }
  .l-header.is-recruit .l-header-info__cv-btn {
    width: 165px;
    min-height: 72px;
    font-size: 1.4rem;
  }
  .l-header.is-recruit.is-shown .l-header-info__cv {
    top: 23px;
  }
}
@media all and (min-width: 1580px) {
  .l-header-info__logo {
    left: 40px;
  }
  .l-header-info__logo-ico {
    width: 174px;
    height: 27px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-header-info__logo-link:hover,
  .l-header-info__logo-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-header-info-lang {
  position: relative;
  display: flex;
  align-items: center;
  line-height: var(--line_height_head);
  font-size: 1.4rem;
  transition: all 0.3s ease;
}
.l-header-info-lang__item.is-current {
  color: rgb(var(--main));
}
.l-header-info-lang__item + .l-header-info-lang__item::before {
  display: inline-block;
  content: "";
  width: 0;
  height: 0.8em;
  border-left: 1px solid;
  margin: 0 10px;
}
@media (hover: hover) and (pointer: fine) {
  .l-header-info-lang__item-link {
    transition: color 0.3s ease;
  }
  .l-header-info-lang__item-link:hover,
  .l-header-info-lang__item-link:focus-visible {
    color: rgb(var(--main));
  }
}

/* .l-nav-btn
================================================== */
.l-nav-btn {
  position: absolute;
  top: 8px;
  right: 20px;
  width: 40px;
  height: 40px;
  border: none;
  cursor: pointer;
}
.l-nav-btn__line {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  content: "";
  background: currentColor;
  transition:
    all 0.3s ease,
    margin 0.3s ease 0.3s;
}
.l-nav-btn__line:nth-child(1) {
  margin-top: -6px;
}
.l-nav-btn__line:nth-child(2) {
  margin-top: 4px;
}
.l-nav-btn.is-open .l-nav-btn__line {
  background: #fff;
  margin-top: 0;
  transition:
    all 0.3s ease,
    transform 0.3s ease 0.3s;
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(1) {
  transform: rotate(-20deg);
}
.l-nav-btn.is-open .l-nav-btn__line:nth-child(2) {
  transform: rotate(20deg);
}
.l-nav-btn__txt {
  position: absolute;
  left: 0;
  bottom: 3px;
  width: 100%;
  font-size: 1rem;
  line-height: 1.2;
  text-align: center;
}
@media all and (min-width: 1240px) {
  .l-nav-btn {
    display: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-nav-btn:hover .l-nav-btn__line,
  .l-nav-btn:focus-visible .l-nav-btn__line {
    background: rgb(var(--main));
  }
}

/* .l-nav
================================================ */
.l-nav {
  position: absolute !important;
  z-index: 3;
  left: 0;
  width: 100%;
  line-height: var(--line_height_head);
  box-sizing: border-box;
}
.l-nav.is-color-white {
  color: #fff;
}
@media all and (max-width: 1239px) {
  .l-nav {
    top: calc(var(--header_height_sp) + 14px);
    max-height: calc(100vh - var(--header_height_sp));
    max-height: calc((var(--vh, 1vh) * 100) - var(--header_height_sp));
    min-width: 320px;
    -webkit-overflow-scrolling: touch;
    visibility: hidden;
    pointer-events: none;
  }
  .l-nav:not(.is-open) .os-scrollbar {
    display: none;
  }
  .l-nav.is-open {
    visibility: visible;
    pointer-events: auto;
    color: #fff;
  }
  .l-nav.is-open .l-nav-list__item {
    opacity: 1;
    transform: none;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(1) {
    transition-delay: 0.05s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(2) {
    transition-delay: 0.1s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(3) {
    transition-delay: 0.15s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(4) {
    transition-delay: 0.2s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(5) {
    transition-delay: 0.25s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(6) {
    transition-delay: 0.3s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(7) {
    transition-delay: 0.35s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(8) {
    transition-delay: 0.4s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(9) {
    transition-delay: 0.45s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(10) {
    transition-delay: 0.5s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(11) {
    transition-delay: 0.55s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(12) {
    transition-delay: 0.6s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(13) {
    transition-delay: 0.65s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(14) {
    transition-delay: 0.7s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(15) {
    transition-delay: 0.75s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(16) {
    transition-delay: 0.8s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(17) {
    transition-delay: 0.85s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(18) {
    transition-delay: 0.9s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(19) {
    transition-delay: 0.95s;
  }
  .l-nav.is-open .l-nav-list__item:nth-of-type(20) {
    transition-delay: 1s;
  }
  .l-nav.is-open .l-nav-cv > div {
    opacity: 1;
    transform: none;
  }
  .l-nav.is-open .l-nav-cv > div:nth-of-type(1) {
    transition-delay: 0.05s;
  }
  .l-nav.is-open .l-nav-cv > div:nth-of-type(2) {
    transition-delay: 0.1s;
  }
  .l-nav.is-open .l-nav-cv > div:nth-of-type(3) {
    transition-delay: 0.15s;
  }
  .l-nav.is-open .l-nav-cv > div:nth-of-type(4) {
    transition-delay: 0.2s;
  }
  .l-nav.is-open .l-nav-cv > div:nth-of-type(5) {
    transition-delay: 0.25s;
  }
  .l-nav__inner {
    padding-bottom: 80px;
  }
  .l-nav::-webkit-scrollbar {
    display: none;
  }
  .l-nav__sub {
    margin-bottom: 20px;
  }
}
@media all and (min-width: 1240px) {
  .l-nav {
    top: 0;
    pointer-events: none;
  }
  .l-nav__inner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-start;
    align-items: center;
    height: var(--header_height_pc);
    padding-right: 110px;
    max-width: unset !important;
  }
  .l-nav__main {
    pointer-events: auto;
  }
  .l-nav__sub {
    pointer-events: auto;
  }
}

/* .l-nav-list
================================================== */
@media all and (max-width: 1239px) {
  .l-nav-list__item {
    position: relative;
    border-top: 1px solid;
    transition:
      transform 0.3s ease,
      opacity 0.3s ease;
    opacity: 0;
    transform: translateY(30px);
  }
  .l-nav-list__item.is-for-pc,
  .l-nav-list__item .is-for-pc {
    display: none;
  }
  .l-nav-list__item.has-children .l-nav-list__item-link {
    display: none;
  }
  .l-nav-list__item-link,
  .l-nav-list__item-trigger {
    position: relative;
    display: block;
    font-size: 1.5rem;
    min-height: 60px;
    padding: 10px 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
  }
  .l-nav-list__item-trigger {
    transition: color 0.3s ease;
    padding-right: 30px;
  }
  .l-nav-list__item-trigger-ico {
    position: absolute;
    top: 50%;
    right: 0;
    display: block;
    margin-top: -5px;
    width: 11px;
    height: 11px;
    transition: none;
  }
  .l-nav-list__item-trigger-ico svg path {
    transition: transform 0.3s ease;
  }
  .l-nav-list__item-trigger.is-active {
    color: rgb(var(--main));
  }
  .l-nav-list__item-trigger.is-active svg path:nth-of-type(2) {
    transform: translateY(calc((100% - 2px) / 3 + 1px));
  }
  .l-nav-list__item-trigger.is-active svg path:nth-of-type(3) {
    transform: translateY(calc(((100% - 2px) / 3 + 1px) * -1));
  }
  .l-nav-list__item-trigger a {
    display: inline-block;
    text-decoration: none;
  }
}
@media all and (min-width: 1240px) {
  .l-nav-list {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .l-nav-list__item {
    margin-right: 15px;
  }
  .l-nav-list__item.is-for-sp,
  .l-nav-list__item .is-for-sp {
    display: none;
  }
  .l-nav-list__item.has-children .l-nav-list__item-trigger {
    display: none;
  }
  .l-nav-list__item-link,
  .l-nav-list__item-trigger {
    font-size: 1.2rem;
  }
}
@media all and (min-width: 1580px) {
  .l-nav-list__item {
    margin-right: 30px;
  }
  .l-nav-list__item-link,
  .l-nav-list__item-trigger {
    font-size: 1.4rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-nav-list__item-link,
  .l-nav-list__item-link.is-company,
  .l-nav-list__item-trigger {
    transition: color 0.3s ease;
  }
  .l-nav-list__item-link:hover,
  .l-nav-list__item-link:focus-visible,
  .l-nav-list__item-link.is-company:hover,
  .l-nav-list__item-link.is-company:focus-visible,
  .l-nav-list__item-trigger:hover,
  .l-nav-list__item-trigger:focus-visible {
    color: rgb(var(--main));
  }
}

.l-nav-list__child-item:last-of-type {
  margin-bottom: 30px;
}
.l-nav-list__child-item-link {
  position: relative;
  display: block;
  min-height: 46px;
  padding: 10px 15px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.l-nav-list__child-item-head {
  padding: 14px 15px;
}
@media all and (max-width: 1239px) {
  .l-nav-list__child-item {
    background: rgb(var(--dark));
  }
  .l-nav-list__child-item + .l-nav-list__child-item {
    margin-top: 2px;
  }
}
@media all and (min-width: 1240px) {
  .l-nav-list__child {
    display: none !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-nav-list__child-item-link {
    transition: color 0.3s ease;
  }
  .l-nav-list__child-item-link:hover,
  .l-nav-list__child-item-link:focus-visible {
    color: rgb(var(--main));
  }
}

.l-nav-list__grandchild {
  font-size: 1.2rem;
  padding: 0 15px 28px;
  margin: -8px -5px 0 0;
  display: flex;
  flex-wrap: wrap;
}
.l-nav-list__grandchild-item {
  margin: 8px 5px 0 0;
}
.l-nav-list__grandchild-item-link {
  display: block;
  border: 1px solid #b5b5b5;
  border-radius: 999px;
  padding: 8px 15px;
}
@media (hover: hover) and (pointer: fine) {
  .l-nav-list__grandchild-item-link {
    transition: all 0.3s ease;
  }
  .l-nav-list__grandchild-item-link:hover,
  .l-nav-list__grandchild-item-link:focus-visible {
    background: rgb(var(--main));
    border-color: rgb(var(--main));
  }
}

/* .l-nav-cv
================================================== */
.l-nav-cv {
  position: relative;
  text-align: center;
}
@media all and (max-width: 1239px) {
  .l-nav-cv__tel {
    margin: 0 11px;
    transition:
      transform 0.3s ease,
      opacity 0.3s ease;
    opacity: 0;
    transform: translateY(30px);
  }
  .l-nav-cv__tel-in {
    display: block;
    position: relative;
    padding: 14px 15px 17px;
    background: #404040;
  }
  .l-nav-cv__tel-in::before {
    position: absolute;
    top: 0;
    right: 28px;
    content: "";
    width: 35px;
    height: 26px;
    background: url(../img/common/bg_bit01_sp.png) no-repeat center
      center/contain;
    opacity: 0.15;
  }
  .l-nav-cv__tel-main {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .l-nav-cv__tel-main-ico {
    width: 34px;
    height: 19px;
    margin-right: 4px;
  }
  .l-nav-cv__tel-main-ico img {
    display: block;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }
  .l-nav-cv__tel-main-num {
    font-size: 2.2rem;
  }
  .l-nav-cv__tel-sub {
    font-size: 1rem;
  }
  .l-nav-cv__btns {
    margin-top: 15px;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    transition:
      transform 0.3s ease,
      opacity 0.3s ease;
    opacity: 0;
    transform: translateY(30px);
  }
  .l-nav-cv__btns-item {
    margin-top: 0 !important;
    max-width: unset;
  }
}
@media all and (min-width: 1240px) {
  .l-nav-cv__tel {
    display: none;
  }
  .l-nav-cv__btns {
    margin-top: 0;
  }
  .l-nav-cv__btns-item {
    margin-top: 0;
    min-height: 62px;
    font-size: 1.3rem;
    min-width: 140px;
    width: 10.3vw;
    max-width: 198px;
  }
  .l-nav-cv__btns-item + .l-nav-cv__btns-item {
    margin-left: 8px !important;
  }
}
@media all and (min-width: 1580px) {
  .l-nav-cv__btns-item {
    font-size: 1.7rem;
  }
}

/* .l-nav-overlay
================================================ */
.l-nav-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(var(--black));
  z-index: 1000;
  overflow: hidden;
}
.l-nav-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url(../img/common/bg_black02_sp.jpg) no-repeat center top/cover;
  background-size: 100% auto;
  z-index: 2;
  pointer-events: none;
  opacity: 0.7;
}
@media all and (min-width: 1240px) {
  .l-nav-overlay {
    display: none !important;
  }
}

/* .l-ie-attention
================================================ */
.l-ie-attention {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 9999;
  font-weight: 700;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  box-sizing: border-box;
}
.l-ie-attention__txt {
  font-size: 3rem;
  margin-bottom: 18px;
}
.l-ie-attention__note {
  color: #989898;
}
.l-ie-attention__note .l-ie-attention__note-link {
  display: inline-block;
}
.l-ie-attention__note-link {
  font-size: 1.8rem;
  border-bottom: 1px solid;
  position: relative;
  margin-right: 25px;
  display: inline-block;
}
.l-ie-attention__note-link::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 13px;
  width: 11px;
  height: 11px;
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%20%3Cg%20id%3D%22link%22%20transform%3D%22translate(0.5%200.5)%22%3E%20%3Crect%20id%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2_23829%22%20data-name%3D%22%E9%95%B7%E6%96%B9%E5%BD%A2%2023829%22%20width%3D%228%22%20height%3D%228%22%20transform%3D%22translate(3)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3Cpath%20id%3D%22%E3%83%91%E3%82%B9_4323%22%20data-name%3D%22%E3%83%91%E3%82%B9%204323%22%20d%3D%22M688%2C718.025h-6v-6%22%20transform%3D%22translate(-682%20-707.025)%22%20fill%3D%22none%22%20stroke%3D%22%23989898%22%20stroke-width%3D%221%22%2F%3E%20%3C%2Fg%3E%3C%2Fsvg%3E")
    no-repeat center/100%;
}

/* .l-main-img HOME
================================================ */
.l-main-img {
  position: relative;
  background: rgb(var(--black)) url(../img/common/bg_black01_sp.jpg.webp)
    no-repeat center top/cover;
  color: #fff;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 600px;
  overflow: hidden;
}
.l-main-img__inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
  box-sizing: border-box;
  padding: 92px 20px 20px;
}
.l-main-img__copy {
  width: 100%;
}
.l-main-img__copy-main {
  font-size: 2.9rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.l-main-img__copy-main img {
  display: block;
  width: 100%;
}
.l-main-img__copy-txt {
  margin-top: 18px;
  font-size: 1.5rem;
}
.l-main-img__nav {
  width: 100%;
}
@media all and (min-width: 768px) {
  .l-main-img {
    background-image: url(../img/common/bg_black01_pc.jpg.webp);
  }
  .l-main-img__inner {
    padding: 192px 11.4583333333% 71px;
  }
  .l-main-img__copy-main {
    font-size: clamp(3.8rem, 4.7vw, 7.2rem);
  }
  .l-main-img__copy-txt {
    margin-top: 28px;
    font-size: clamp(2rem, 3.5vw, 3.2rem);
  }
}
@media all and (min-width: 1580px) {
  .l-main-img__copy-main {
    font-size: 7.2rem;
  }
}

.l-main-img-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.l-main-img-bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* en
================================================ */
html[lang="en"] .l-main-img__copy-main {
  font-size: 2.2rem;
}
@media all and (min-width: 768px) {
  html[lang="en"] .l-main-img__copy-main {
    font-size: 5.5rem;
  }
  html[lang="en"] .l-main-img__copy-txt {
    font-size: 2rem;
  }
}
@media (min-width: 768px) and (max-width: 1940px) {
  html[lang="en"] .l-main-img__copy-main {
    font-size: 4.8rem;
  }
}
@media (min-width: 768px) and (max-width: 1700px) {
  html[lang="en"] .l-main-img__copy-main {
    font-size: 3.3rem;
  }
}

/* .l-sub-img
================================================ */
.l-sub-img__inner {
  padding-top: 90px;
}
.l-sub-img__head {
  font-size: 3.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 19px;
}
.l-sub-img__head.is-small {
  font-size: 2rem;
}
.l-sub-img-cat {
  display: flex;
  flex-wrap: wrap;
  margin: -5px -2.5px 15px;
}
.l-sub-img-cat__item {
  margin: 5px 2.5px;
  padding: 1px 12px;
  border: 1px solid;
  font-size: 1.2rem;
}
.l-sub-img-cat__item.is-cat01 {
  background: rgb(var(--black));
  color: #fff;
}
@media all and (min-width: 768px) {
  .l-sub-img__inner {
    padding-top: 160px;
  }
  .l-sub-img__area-txt {
    display: grid;
    align-items: center;
    justify-content: flex-start;
  }
  .l-sub-img__head {
    grid-column: 1/2;
    font-size: 4.5rem;
    margin: 0 10vw 0 0;
    letter-spacing: 0;
  }
  .l-sub-img__head.is-small {
    font-size: 3.6rem;
  }
  .l-sub-img__lead {
    grid-column: 2/3;
    min-width: 40%;
  }
  .l-sub-img-cat {
    grid-column: 1/3;
  }
}
@media all and (min-width: 1580px) {
  .l-sub-img__head {
    margin: 0 200px 0 0;
    font-size: 6rem;
  }
  .l-sub-img__head.is-small {
    font-size: 4.8rem;
  }
}

@media all and (min-width: 768px) {
  .l-sub-img.is-vertical-tb .l-sub-img__head {
    grid-column: none;
  }
  .l-sub-img.is-vertical-tb .l-sub-img__lead {
    grid-column: none;
    margin-top: 20px;
  }
}

/* .l-sub-img.is-single
================================================ */
.l-sub-img.is-single .l-sub-img__head {
  font-size: 2rem;
  margin-bottom: 10px;
  letter-spacing: 0.1em;
}
.l-sub-img.is-single .l-sub-img__cat {
  display: inline-block;
  margin: 0 5px 10px 0;
  padding: 2px 12px;
  background: #6e6e6e;
  color: #fff;
  font-size: 1.2rem;
}
.l-sub-img.is-single .l-sub-img__date {
  font-size: 1.2rem;
  color: #707070;
}
.l-sub-img.is-single .l-sub-img__txt {
  margin-top: 10px;
}
.l-sub-img.is-single .c-single01-share {
  margin-top: 10px !important;
}
@media all and (min-width: 768px) {
  .l-sub-img.is-single .l-sub-img__area-txt {
    display: block;
  }
  .l-sub-img.is-single .l-sub-img__head {
    font-size: 3.2rem;
    margin-right: 0;
  }
  .l-sub-img.is-single .l-sub-img__cat {
    font-size: 1.3rem;
  }
  .l-sub-img.is-single .l-sub-img__date {
    font-size: 1.6rem;
  }
  .l-sub-img.is-single .l-sub-img__txt {
    margin-top: 15px;
  }
  .l-sub-img.is-single .c-single01-share {
    margin-top: 15px !important;
  }
}

/* .l-sub-img.is-case-single
================================================ */
.l-sub-img.is-creative-single .l-sub-img__subtxt {
  font-size: 1.4rem;
}
@media all and (max-width: 767px) {
  .l-sub-img.is-creative-single + .l-breadcrumb .l-breadcrumb__inner::before {
    bottom: 30px;
  }
}

/* .l-sub-img.is-attempt
================================================ */
.l-sub-img.is-attempt {
  margin-top: 70px;
  color: #fff;
}
.l-sub-img.is-attempt .l-sub-img__inner {
  padding: 0;
}
.l-sub-img.is-attempt .l-sub-img__main {
  background: rgb(var(--black));
}
.l-sub-img.is-attempt .l-sub-img__main-inner {
  padding-top: 20px;
  padding-bottom: 30px;
}
.l-sub-img.is-attempt .l-sub-img__logo {
  text-align: center;
  background: #fff;
}
.l-sub-img.is-attempt .l-sub-img__logo-inner {
  padding-top: 20px;
  padding-bottom: 20px;
}
.l-sub-img.is-attempt .l-sub-img__logo-img {
  max-width: 125px;
}
.l-sub-img.is-attempt .l-sub-img__area-txt {
  background: rgb(var(--black));
}
.l-sub-img.is-attempt .l-sub-img__area-txt-inner {
  padding-top: 16px;
  padding-bottom: 46px;
}
.l-sub-img.is-attempt .l-sub-img__area-txt .c-single01-share {
  margin-top: 25px !important;
}
.l-sub-img.is-attempt .l-sub-img__txt {
  font-size: 1.4rem;
}
.l-sub-img.is-attempt .l-sub-img__cat {
  background: none;
  border: 1px solid #fff;
  margin-bottom: 5px;
}
.l-sub-img.is-attempt .l-sub-img__head {
  font-size: 3.2rem;
  letter-spacing: 0;
  margin-bottom: 5px;
}
.l-sub-img.is-attempt .l-sub-img__list {
  margin-top: 10px;
  font-size: 1.2rem;
}
.l-sub-img.is-attempt .l-sub-img__list-item {
  display: inline-block;
  margin-right: 5px;
  line-height: 1;
}
.l-sub-img.is-attempt .l-sub-img__list-item::before {
  content: "#";
}
@media all and (min-width: 768px) {
  .l-sub-img.is-attempt {
    margin-top: 120px;
    background: linear-gradient(
      90deg,
      rgb(var(--black)) 0%,
      rgb(var(--black)) 50%,
      #fff 50%,
      #fff 100%
    );
  }
  .l-sub-img.is-attempt .l-sub-img__inner {
    display: grid;
    grid-template-columns: repeat(2, 50%);
    grid-template-rows: repeat(2, auto);
    margin: 0 auto;
    max-width: var(--contents_wide_width_with_padding);
  }
  .l-sub-img.is-attempt .l-sub-img__main {
    grid-area: 1/1/2/2;
  }
  .l-sub-img.is-attempt .l-sub-img__main-inner {
    padding-top: 45px;
    padding-bottom: 20px;
  }
  .l-sub-img.is-attempt .l-sub-img__logo {
    display: grid;
    place-items: center;
    grid-area: 1/2/3/3;
  }
  .l-sub-img.is-attempt .l-sub-img__logo-img {
    max-width: 250px;
  }
  .l-sub-img.is-attempt .l-sub-img__area-txt {
    grid-area: 2/1/3/2;
  }
  .l-sub-img.is-attempt .l-sub-img__area-txt-inner {
    padding-top: 0;
    padding-bottom: 100px;
  }
  .l-sub-img.is-attempt .l-sub-img__area-txt .c-single01-share {
    margin-top: 30px !important;
  }
  .l-sub-img.is-attempt .l-sub-img__head {
    font-size: 4.6rem;
    margin-bottom: 0;
  }
  .l-sub-img.is-attempt .l-sub-img__txt {
    max-width: 475px;
    font-size: 1.6rem;
  }
  .l-sub-img.is-attempt .l-sub-img__txt {
    margin-top: 0;
  }
}

/* .l-sub-img.is-service
================================================ */
.l-sub-img.is-service .l-sub-img__cat {
  background: #333;
  margin-bottom: 5px;
}
.l-sub-img.is-service .l-sub-img__head {
  font-size: 3.2rem;
  letter-spacing: 0;
  margin-bottom: 5px;
}
@media all and (min-width: 768px) {
  .l-sub-img.is-service .l-sub-img__inner {
    display: grid;
    justify-content: flex-start;
  }
  .l-sub-img.is-service .l-sub-img__area-txt {
    grid-column: 1/2;
    margin: 0 10vw 0 0;
    letter-spacing: 0;
    max-width: 550px;
  }
  .l-sub-img.is-service .l-sub-img__area-lead {
    grid-column: 2/3;
    min-width: 40%;
    margin-top: 40px;
  }
  .l-sub-img.is-service .l-sub-img__head {
    font-size: 4.6rem;
  }
  .l-sub-img.is-service .l-sub-img__txt {
    margin-top: 0;
  }
}

/* .l-sub-img.is-recruit
================================================ */
.l-sub-img.is-recruit {
  display: flex;
  position: relative;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
}
.l-sub-img.is-recruit.is-color-white {
  color: #fff;
}
.l-sub-img.is-recruit .l-sub-img-bg {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
}
.l-sub-img.is-recruit .l-sub-img-bg__video {
  background: #000;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  width: 100%;
}
.l-sub-img.is-recruit .l-sub-img-bg__video video {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  opacity: 0.7;
}
.l-sub-img.is-recruit .l-sub-img__inner {
  display: flex;
  align-items: flex-end;
  width: 100%;
  padding-bottom: 9%;
  box-sizing: border-box;
}
.l-sub-img.is-recruit .l-sub-img__head {
  font-size: 2.6rem;
  letter-spacing: 0;
  margin-bottom: 12px;
}
.l-sub-img.is-recruit .l-sub-img__lead {
  letter-spacing: 0.03em;
}
.l-sub-img.is-recruit .l-sub-img-intro__inner {
  padding-top: 30px;
  padding-bottom: 68px;
}
.l-sub-img.is-recruit .l-sub-img-intro__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0.1em;
  margin-bottom: 20px;
}
.l-sub-img.is-recruit .l-sub-img-intro__txt {
  line-height: var(--line_height_head);
  letter-spacing: 0.03em;
}
.l-sub-img.is-recruit .l-sub-img-intro__txt + .l-sub-img-intro__txt {
  margin-top: 1.5em;
}
@media all and (min-width: 768px) {
  .l-sub-img.is-recruit .l-sub-img__inner {
    padding-bottom: 12.5%;
  }
  .l-sub-img.is-recruit .l-sub-img__area-txt {
    display: block;
  }
  .l-sub-img.is-recruit .l-sub-img__head {
    font-size: 7rem;
    margin-bottom: 20px;
  }
  .l-sub-img.is-recruit .l-sub-img__lead {
    letter-spacing: 0.05em;
  }
  .l-sub-img.is-recruit .l-sub-img-intro__inner {
    padding-top: 48px;
    padding-bottom: 148px;
  }
  .l-sub-img.is-recruit .l-sub-img-intro__con {
    margin-left: auto;
    margin-right: 0;
    width: 50%;
  }
  .l-sub-img.is-recruit .l-sub-img-intro__head {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
    margin-bottom: 66px;
  }
  .l-sub-img.is-recruit .l-sub-img-intro__txt {
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .l-sub-img.is-recruit .l-sub-img-intro__txt + .l-sub-img-intro__txt {
    margin-top: 1.8em;
  }
}

/* .l-sub-img.is-case-single
================================================ */
.l-sub-img.is-case-single {
  color: #fff;
  position: relative;
  z-index: 0;
}
.l-sub-img.is-case-single::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - var(--header_height_sp));
  position: absolute;
  top: var(--header_height_sp);
  left: 0;
  background: url(../img/case/bg_mv01_sp.jpg) no-repeat center/cover;
  z-index: -1;
}
.l-sub-img.is-case-single .l-sub-img__label {
  display: inline-block;
  box-sizing: border-box;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: rgb(var(--main));
  color: rgb(var(--black));
  font-size: 1.3rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  padding: 3px 12px 5px;
}
.l-sub-img.is-case-single .l-sub-img__head {
  font-size: 2.8rem;
}
.l-sub-img.is-case-single .l-sub-img__support {
  display: flex;
  gap: 10px;
  margin-top: 25px;
}
.l-sub-img.is-case-single .l-sub-img__support-head {
  font-weight: 700;
  flex-shrink: 0;
  font-size: 1.4rem;
}
.l-sub-img.is-case-single .l-sub-img__support-list {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  flex: 1;
}
.l-sub-img.is-case-single .l-sub-img__volume span {
  font-weight: 700;
  display: inline-block;
  margin-right: 10px;
  font-size: 1.4rem;
}
.l-sub-img.is-case-single .l-breadcrumb-list {
  border-bottom: none;
  padding-top: 25px;
}
.l-sub-img.is-case-single .l-breadcrumb-list__item {
  color: #fff;
  opacity: 1;
}
@media all and (min-width: 768px) {
  .l-sub-img.is-case-single::before {
    height: calc(100% - var(--header_height_pc));
    background-image: url(../img/case/bg_mv01_pc.jpg);
    top: var(--header_height_pc);
  }
  .l-sub-img.is-case-single .l-sub-img__case-info {
    padding-bottom: 1em;
  }
  .l-sub-img.is-case-single .l-sub-img__area-txt {
    display: flex;
    align-items: flex-end;
    gap: 160px;
  }
  .l-sub-img.is-case-single .l-sub-img__area-head {
    flex: 1;
  }
  .l-sub-img.is-case-single .l-sub-img__label {
    font-size: 1.4rem;
  }
  .l-sub-img.is-case-single .l-sub-img__head {
    font-size: 4.6rem;
    margin: 0;
  }
}

/* .l-record
================================================ */
.l-record {
  background: #fff;
}
.l-record__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.l-record__head {
  text-align: center;
  font-size: 2.2rem;
  line-height: var(--line_height_head);
  margin-bottom: 20px;
}
.l-record-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}
.l-record-list__item img {
  display: block;
  width: 100%;
}
@media all and (min-width: 768px) {
  .l-record__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .l-record__head {
    font-size: 4.6rem;
    margin-bottom: 30px;
  }
  .l-record-list {
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
  }
}

/* .l-sidebar
================================================== */
.l-sidebar__inner {
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 70px;
}
@media all and (min-width: 768px) {
  .l-sidebar__inner {
    padding: 0;
  }
  .l-sidebar__inner.is-sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    padding-bottom: 100px;
  }
}

.l-sidebar-sec__head {
  border-bottom: 1px solid currentColor;
  padding-bottom: 6px;
  line-height: 1.5;
  font-size: 2rem;
  font-weight: 700;
}
.l-sidebar-sec__list-item {
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid #cfcfcf;
}
.l-sidebar-sec__list-item-date {
  color: rgb(var(--gray));
  font-size: 1rem;
}
.l-sidebar-sec__list-item-cat {
  display: flex;
  margin: 0 -4px;
}
.l-sidebar-sec__list-item-cat-item {
  min-width: 176px;
  margin: 7px 4px 0;
  font-size: 1.2rem;
  text-align: center;
}
.l-sidebar-sec__list-item-cat-item-link {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 0 12px;
  border: 1px solid currentColor;
  border-radius: 27px;
}
.l-sidebar-sec__list-item-head {
  overflow: hidden;
  display: -webkit-box;
  max-height: 3.6em;
  line-height: 1.8;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  margin-top: 5px;
  font-size: 1.3rem;
  font-weight: 700;
}
.l-sidebar-sec__list-item-head-link {
  display: block;
}
@media all and (min-width: 768px) {
  .l-sidebar-sec + .l-sidebar-sec {
    margin-top: 45px;
  }
  .l-sidebar-sec__head {
    font-size: 1.8rem;
  }
  .l-sidebar-sec__list-item {
    padding: 12px 0;
    border-bottom: none;
  }
  .l-sidebar-sec__list-item-date {
    font-size: 1.1rem;
  }
  .l-sidebar-sec__list-item-cat {
    display: block;
    margin: 0;
  }
  .l-sidebar-sec__list-item-cat-item {
    min-width: 100%;
    margin: 5px 0 0;
    font-size: 1.1rem;
  }
  .l-sidebar-sec__list-item-head {
    font-size: 1.2rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .l-sidebar-sec__list-item-cat-item-link {
    transition: all 0.3s ease;
  }
  .l-sidebar-sec__list-item-cat-item-link:hover {
    background: rgb(var(--main));
    border-color: rgb(var(--main));
    color: #fff;
  }
}

/* .l-suppliers //企業ロゴスライダー
================================================ */
.l-suppliers {
  padding: 60px 0;
  background-color: #fff;
}
@media all and (min-width: 768px) {
  .l-suppliers {
    padding: 100px 0;
  }
}

.js-c-anime-elem[data-anime="fadein-up"] {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime="fadein-up"].is-animated {
  opacity: 1;
  transform: translateY(0);
}

.js-c-anime-elem[data-anime="fadein-left"] {
  opacity: 0;
  transform: translateX(-30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime="fadein-left"].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime="fadein-right"] {
  opacity: 0;
  transform: translateX(30px);
  transition: all 0.6s ease;
}
.js-c-anime-elem[data-anime="fadein-right"].is-animated {
  opacity: 1;
  transform: translateX(0);
}

.js-c-anime-elem[data-anime-delay="0.1"] {
  transition-delay: 0.1s;
}
.js-c-anime-elem[data-anime-delay="0.2"] {
  transition-delay: 0.2s;
}
.js-c-anime-elem[data-anime-delay="0.3"] {
  transition-delay: 0.3s;
}
.js-c-anime-elem[data-anime-delay="0.4"] {
  transition-delay: 0.4s;
}
.js-c-anime-elem[data-anime-delay="0.5"] {
  transition-delay: 0.5s;
}
.js-c-anime-elem[data-anime-delay="0.6"] {
  transition-delay: 0.6s;
}
.js-c-anime-elem[data-anime-delay="0.7"] {
  transition-delay: 0.7s;
}
.js-c-anime-elem[data-anime-delay="0.8"] {
  transition-delay: 0.8s;
}
.js-c-anime-elem[data-anime-delay="0.9"] {
  transition-delay: 0.9s;
}
.js-c-anime-elem[data-anime-delay="1"] {
  transition-delay: 1s;
}
.js-c-anime-elem[data-anime-delay="1.1"] {
  transition-delay: 1.1s;
}
.js-c-anime-elem[data-anime-delay="1.2"] {
  transition-delay: 1.2s;
}
.js-c-anime-elem[data-anime-delay="1.3"] {
  transition-delay: 1.3s;
}
.js-c-anime-elem[data-anime-delay="1.4"] {
  transition-delay: 1.4s;
}
.js-c-anime-elem[data-anime-delay="1.5"] {
  transition-delay: 1.5s;
}
.js-c-anime-elem[data-anime-delay="1.6"] {
  transition-delay: 1.6s;
}
.js-c-anime-elem[data-anime-delay="1.7"] {
  transition-delay: 1.7s;
}
.js-c-anime-elem[data-anime-delay="1.8"] {
  transition-delay: 1.8s;
}
.js-c-anime-elem[data-anime-delay="1.9"] {
  transition-delay: 1.9s;
}
.js-c-anime-elem[data-anime-delay="2"] {
  transition-delay: 2s;
}

.js-c-switch-tab {
  cursor: pointer;
}

.js-c-switch-content {
  display: none;
}
.js-c-switch-content.is-active {
  display: block;
}

.js-c-toggle-trigger {
  cursor: pointer;
}

.js-c-toggle-content {
  display: none;
}

@-webkit-keyframes frame5BitAnim {
  70% {
    background-position-y: 0%;
  }
  100% {
    background-position-y: 97.8%;
  }
}

@keyframes frame5BitAnim {
  70% {
    background-position-y: 0%;
  }
  100% {
    background-position-y: 97.8%;
  }
}
/*! 
 * OverlayScrollbars
 * Version: 2.8.3
 * 
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 * 
 * Released under the MIT license.
 */
.os-size-observer,
.os-size-observer-listener {
  scroll-behavior: auto !important;
  direction: inherit;
  pointer-events: none;
  overflow: hidden;
  visibility: hidden;
  box-sizing: border-box;
}

.os-size-observer,
.os-size-observer-listener,
.os-size-observer-listener-item,
.os-size-observer-listener-item-final {
  writing-mode: horizontal-tb;
  position: absolute;
  left: 0;
  top: 0;
}

.os-size-observer {
  z-index: -1;
  contain: strict;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: inherit;
  border: inherit;
  box-sizing: inherit;
  margin: -133px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: scale(0.1);
}

.os-size-observer::before {
  content: "";
  flex: none;
  box-sizing: inherit;
  padding: 10px;
  width: 10px;
  height: 10px;
}

.os-size-observer-appear {
  -webkit-animation: os-size-observer-appear-animation 1ms forwards;
  animation: os-size-observer-appear-animation 1ms forwards;
}

.os-size-observer-listener {
  box-sizing: border-box;
  position: relative;
  flex: auto;
  padding: inherit;
  border: inherit;
  margin: -133px;
  transform: scale(10);
}

.os-size-observer-listener.ltr {
  margin-right: -266px;
  margin-left: 0;
}

.os-size-observer-listener.rtl {
  margin-left: -266px;
  margin-right: 0;
}

.os-size-observer-listener:empty::before {
  content: "";
  width: 100%;
  height: 100%;
}

.os-size-observer-listener:empty::before,
.os-size-observer-listener > .os-size-observer-listener-item {
  display: block;
  position: relative;
  padding: inherit;
  border: inherit;
  box-sizing: content-box;
  flex: auto;
}

.os-size-observer-listener-scroll {
  box-sizing: border-box;
  display: flex;
}

.os-size-observer-listener-item {
  right: 0;
  bottom: 0;
  overflow: hidden;
  direction: ltr;
  flex: none;
}

.os-size-observer-listener-item-final {
  transition: none;
}

@-webkit-keyframes os-size-observer-appear-animation {
  from {
    cursor: auto;
  }
  to {
    cursor: none;
  }
}

@keyframes os-size-observer-appear-animation {
  from {
    cursor: auto;
  }
  to {
    cursor: none;
  }
}
.os-trinsic-observer {
  flex: none;
  box-sizing: border-box;
  position: relative;
  max-width: 0px;
  max-height: 1px;
  padding: 0;
  margin: 0;
  border: none;
  overflow: hidden;
  z-index: -1;
  height: 0;
  top: calc(100% + 1px);
  contain: strict;
}

.os-trinsic-observer:not(:empty) {
  height: calc(100% + 1px);
  top: -1px;
}

.os-trinsic-observer:not(:empty) > .os-size-observer {
  width: 1000%;
  height: 1000%;
  min-height: 1px;
  min-width: 1px;
}

/**
 * hide native scrollbars
 * changes to this styles need to be reflected in the environment styles to correctly detect scrollbar hiding
 */
[data-overlayscrollbars-initialize],
[data-overlayscrollbars-viewport~="scrollbarHidden"] {
  scrollbar-width: none !important;
}

[data-overlayscrollbars-initialize]::-webkit-scrollbar,
[data-overlayscrollbars-initialize]::-webkit-scrollbar-corner,
[data-overlayscrollbars-viewport~="scrollbarHidden"]::-webkit-scrollbar,
[data-overlayscrollbars-viewport~="scrollbarHidden"]::-webkit-scrollbar-corner {
  -webkit-appearance: none !important;
  appearance: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/**
 * elements wont suddenly clip after initialization is done
 */
[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(
    body
  ) {
  overflow: auto;
}

/**
 * applied to body 
 */
html[data-overlayscrollbars-body] {
  overflow: hidden;
}

html[data-overlayscrollbars-body],
html[data-overlayscrollbars-body] > body {
  width: 100%;
  height: 100%;
  margin: 0;
}

html[data-overlayscrollbars-body] > body {
  overflow: visible;
  margin: 0;
}

/**
 * structure setup 
 */
[data-overlayscrollbars] {
  position: relative;
}

[data-overlayscrollbars~="host"],
[data-overlayscrollbars-padding] {
  display: flex;
  align-items: stretch !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  scroll-behavior: auto !important;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  box-sizing: inherit;
  position: relative;
  flex: auto !important;
  height: auto;
  width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: none;
  z-index: 0;
}

[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  --os-vaw: 0;
  --os-vah: 0;
  outline: none;
}

[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus {
  outline: none;
}

[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~="arrange"]::before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: -1;
  min-width: 1px;
  min-height: 1px;
  width: var(--os-vaw);
  height: var(--os-vah);
}

[data-overlayscrollbars],
[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport] {
  overflow: hidden !important;
}

[data-overlayscrollbars~="noClipping"],
[data-overlayscrollbars-padding~="noClipping"] {
  overflow: visible !important;
}

[data-overlayscrollbars-viewport~="measuring"] {
  overflow: hidden !important;
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
}

[data-overlayscrollbars-viewport~="overflowXVisible"]:not(
  [data-overlayscrollbars-viewport~="measuring"]
) {
  overflow-x: visible !important;
}

[data-overlayscrollbars-viewport~="overflowXHidden"] {
  overflow-x: hidden !important;
}

[data-overlayscrollbars-viewport~="overflowXScroll"] {
  overflow-x: scroll !important;
}

[data-overlayscrollbars-viewport~="overflowYVisible"]:not(
  [data-overlayscrollbars-viewport~="measuring"]
) {
  overflow-y: visible !important;
}

[data-overlayscrollbars-viewport~="overflowYHidden"] {
  overflow-y: hidden !important;
}

[data-overlayscrollbars-viewport~="overflowYScroll"] {
  overflow-y: scroll !important;
}

[data-overlayscrollbars-viewport~="noContent"]:not(#osFakeId) {
  font-size: 0 !important;
  line-height: 0 !important;
}

[data-overlayscrollbars-viewport~="noContent"]:not(#osFakeId)::before,
[data-overlayscrollbars-viewport~="noContent"]:not(#osFakeId)::after,
[data-overlayscrollbars-viewport~="noContent"]:not(#osFakeId) > * {
  display: none !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border-width: 0 !important;
}

[data-overlayscrollbars-viewport~="scrollbarPressed"] {
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
}

[data-overlayscrollbars-content] {
  box-sizing: inherit;
}

/**
 * Display contents to bridge any flickering during deferred initialization.
 */
[data-overlayscrollbars-contents]:not(#osFakeId):not(
    [data-overlayscrollbars-padding]
  ):not([data-overlayscrollbars-viewport]):not(
    [data-overlayscrollbars-content]
  ) {
  display: contents;
}

/**
 * optional & experimental grid mode
 */
[data-overlayscrollbars-grid],
[data-overlayscrollbars-grid] [data-overlayscrollbars-padding] {
  display: grid;
  grid-template: 1fr/1fr;
}

[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-viewport],
[data-overlayscrollbars-grid]
  > [data-overlayscrollbars-padding]
  > [data-overlayscrollbars-viewport] {
  height: auto !important;
  width: auto !important;
}

.os-scrollbar {
  contain: size layout;
  contain: size layout style;
  transition:
    opacity 0.15s,
    visibility 0.15s,
    top 0.15s,
    right 0.15s,
    bottom 0.15s,
    left 0.15s;
  pointer-events: none;
  position: absolute;
  opacity: 0;
  visibility: hidden;
}

body > .os-scrollbar {
  position: fixed;
  z-index: 99999;
}

.os-scrollbar-transitionless {
  transition: none;
}

.os-scrollbar-track {
  position: relative;
  padding: 0 !important;
  border: none !important;
}

.os-scrollbar-handle {
  position: absolute;
}

.os-scrollbar-track,
.os-scrollbar-handle {
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,
.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle {
  pointer-events: auto;
  touch-action: none;
}

.os-scrollbar-horizontal {
  bottom: 0;
  left: 0;
}

.os-scrollbar-vertical {
  top: 0;
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-horizontal {
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-vertical {
  right: auto;
  left: 0;
}

.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden {
  opacity: 0;
  visibility: hidden;
}

.os-scrollbar-interaction.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-unusable,
.os-scrollbar-unusable *,
.os-scrollbar-wheel,
.os-scrollbar-wheel * {
  pointer-events: none !important;
}

.os-scrollbar-unusable .os-scrollbar-handle {
  opacity: 0 !important;
  transition: none !important;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  bottom: 0;
  left: 0;
}

.os-scrollbar-vertical .os-scrollbar-handle {
  top: 0;
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle,
.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle {
  right: auto;
  left: 0;
}

.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl {
  left: 0;
  right: 0;
}

.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl {
  top: 0;
  bottom: 0;
}

@media print {
  .os-scrollbar {
    display: none;
  }
}
.os-scrollbar {
  --os-size: 0;
  --os-padding-perpendicular: 0;
  --os-padding-axis: 0;
  --os-track-border-radius: 0;
  --os-track-bg: none;
  --os-track-bg-hover: none;
  --os-track-bg-active: none;
  --os-track-border: none;
  --os-track-border-hover: none;
  --os-track-border-active: none;
  --os-handle-border-radius: 0;
  --os-handle-bg: none;
  --os-handle-bg-hover: none;
  --os-handle-bg-active: none;
  --os-handle-border: none;
  --os-handle-border-hover: none;
  --os-handle-border-active: none;
  --os-handle-min-size: 33px;
  --os-handle-max-size: none;
  --os-handle-perpendicular-size: 100%;
  --os-handle-perpendicular-size-hover: 100%;
  --os-handle-perpendicular-size-active: 100%;
  --os-handle-interactive-area-offset: 0;
}

.os-scrollbar .os-scrollbar-track {
  border: var(--os-track-border);
  border-radius: var(--os-track-border-radius);
  background: var(--os-track-bg);
  transition:
    opacity 0.15s,
    background-color 0.15s,
    border-color 0.15s;
}

.os-scrollbar .os-scrollbar-track:hover {
  border: var(--os-track-border-hover);
  background: var(--os-track-bg-hover);
}

.os-scrollbar .os-scrollbar-track:active {
  border: var(--os-track-border-active);
  background: var(--os-track-bg-active);
}

.os-scrollbar .os-scrollbar-handle {
  border: var(--os-handle-border);
  border-radius: var(--os-handle-border-radius);
  background: var(--os-handle-bg);
}

.os-scrollbar .os-scrollbar-handle:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
}

.os-scrollbar .os-scrollbar-handle:hover {
  border: var(--os-handle-border-hover);
  background: var(--os-handle-bg-hover);
}

.os-scrollbar .os-scrollbar-handle:active {
  border: var(--os-handle-border-active);
  background: var(--os-handle-bg-active);
}

.os-scrollbar-horizontal {
  padding: var(--os-padding-perpendicular) var(--os-padding-axis);
  right: var(--os-size);
  height: var(--os-size);
}

.os-scrollbar-horizontal.os-scrollbar-rtl {
  left: var(--os-size);
  right: 0;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  min-width: var(--os-handle-min-size);
  max-width: var(--os-handle-max-size);
  height: var(--os-handle-perpendicular-size);
  transition:
    opacity 0.15s,
    background-color 0.15s,
    border-color 0.15s,
    height 0.15s;
}

.os-scrollbar-horizontal .os-scrollbar-handle:before {
  top: calc(
    (
        var(--os-padding-perpendicular) +
          var(--os-handle-interactive-area-offset)
      ) *
      -1
  );
  bottom: calc(var(--os-padding-perpendicular) * -1);
}

.os-scrollbar-horizontal:hover .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-hover);
}

.os-scrollbar-horizontal:active .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-active);
}

.os-scrollbar-vertical {
  padding: var(--os-padding-axis) var(--os-padding-perpendicular);
  bottom: var(--os-size);
  width: var(--os-size);
}

.os-scrollbar-vertical .os-scrollbar-handle {
  min-height: var(--os-handle-min-size);
  max-height: var(--os-handle-max-size);
  width: var(--os-handle-perpendicular-size);
  transition:
    opacity 0.15s,
    background-color 0.15s,
    border-color 0.15s,
    width 0.15s;
}

.os-scrollbar-vertical .os-scrollbar-handle:before {
  left: calc(
    (
        var(--os-padding-perpendicular) +
          var(--os-handle-interactive-area-offset)
      ) *
      -1
  );
  right: calc(var(--os-padding-perpendicular) * -1);
}

.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before {
  right: calc(
    (
        var(--os-padding-perpendicular) +
          var(--os-handle-interactive-area-offset)
      ) *
      -1
  );
  left: calc(var(--os-padding-perpendicular) * -1);
}

.os-scrollbar-vertical:hover .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-hover);
}

.os-scrollbar-vertical:active .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-active);
}

/* NONE THEME: */
[data-overlayscrollbars-viewport~="measuring"] > .os-scrollbar,
.os-theme-none.os-scrollbar {
  display: none !important;
}

/* DARK & LIGHT THEME: */
.os-theme-dark,
.os-theme-light {
  box-sizing: border-box;
  --os-size: 10px;
  --os-padding-perpendicular: 2px;
  --os-padding-axis: 2px;
  --os-track-border-radius: 10px;
  --os-handle-interactive-area-offset: 4px;
  --os-handle-border-radius: 10px;
}

.os-theme-dark {
  --os-handle-bg: rgba(0, 0, 0, 0.44);
  --os-handle-bg-hover: rgba(0, 0, 0, 0.55);
  --os-handle-bg-active: rgba(0, 0, 0, 0.66);
}

.os-theme-light {
  --os-handle-bg: rgba(255, 255, 255, 0.44);
  --os-handle-bg-hover: rgba(255, 255, 255, 0.55);
  --os-handle-bg-active: rgba(255, 255, 255, 0.66);
}

.os-scrollbar {
  display: none;
  --os-handle-bg: rgba(var(--main), 0.5);
  --os-handle-bg-hover: rgba(var(--main), 0.8);
  --os-handle-bg-active: rgba(var(--main), 1);
}
.os-scrollbar .os-scrollbar-handle {
  transition: all 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .os-scrollbar {
    display: block;
  }
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* about-info
======================================= */
.about-info__inner {
  padding-top: 55px;
  padding-bottom: 50px;
}
.about-info__txt {
  letter-spacing: 0.03em;
}
.about-info__txt + .about-info__txt {
  margin-top: 7px;
}
.about-info__link {
  font-weight: 700;
  color: rgb(var(--main));
  transition: color 0.3s ease;
}
.about-info__link-pin {
  width: 10px;
  height: 12px;
  vertical-align: baseline;
  margin-right: 3px;
}
.about-info__link[target="_blank"]:after {
  display: inline-block;
  width: 11px;
  height: 11px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
  margin: 0 0 2px 3px;
}
.about-info__dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.about-info__dl dt {
  box-sizing: border-box;
  width: 89px;
  padding-right: 1em;
}
.about-info__dl dd {
  width: calc(100% - 89px);
}
.about-info__list {
  display: flex;
  flex-wrap: wrap;
}
.about-info__list li {
  width: 50%;
  padding-right: 1em;
  box-sizing: border-box;
}
@media all and (max-width: 767px) {
  .about-info__table th {
    font-weight: 700;
  }
}
@media all and (min-width: 768px) {
  .about-info__inner {
    padding-top: 105px;
    padding-bottom: 100px;
  }
  .about-info__table td.has-qr {
    position: relative;
    padding-right: 120px;
  }
  .about-info__table td.has-qr .about-info__qr {
    position: absolute;
    top: 15px;
    right: 0;
    width: 80px;
    height: 80px;
  }
  .about-info__table td.has-qr .about-info__qr img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    font-family: "object-fit: contain;";
  }
  .about-info__table td.has-qr .about-info__area-txt {
    min-height: 120px;
  }
  .about-info__txt {
    letter-spacing: 0.05em;
  }
  .about-info__txt + .about-info__txt {
    margin-top: 10px;
  }
  .about-info__link-pin {
    width: 12px;
    height: 14px;
  }
  .about-info__dl dt {
    width: 102px;
  }
  .about-info__dl dd {
    width: calc(100% - 102px);
  }
  .about-info__list {
    display: block;
  }
  .about-info__list li {
    display: inline-block;
    width: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .about-info__link:hover,
  .about-info__link:focus-visible {
    color: rgb(var(--black));
  }
}

/* about-group
======================================= */
.about-group__inner {
  padding-bottom: 50px;
}
.about-group-sec {
  display: flex;
  padding: 30px;
  background: #fff;
  flex-direction: column;
}
.about-group-sec__imgarea {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 10%;
}
.about-group-sec__txt {
  margin-top: 24px;
}
.about-group-sec__btn {
  margin-top: 24px;
}
@media all and (min-width: 768px) {
  .about-group__inner {
    padding-bottom: 100px;
  }
  .about-group-sec {
    padding: 50px 0 50px 50px;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .about-group-sec__imgarea {
    padding: 0;
    width: 100%;
    text-align: center;
  }
  .about-group-sec__img {
    width: 420px;
  }
  .about-group-sec__info {
    flex: 1;
    white-space: nowrap;
  }
  .about-group-sec__txt {
    margin-top: 30px;
  }
  .about-group-sec__btn {
    margin-top: 30px;
  }
}

/* about-agency
====================================== */
.about-agency {
  position: relative;
}
.about-agency::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/about/bg_agency01_sp.jpg) no-repeat center 0 / cover;
}
.about-agency__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.about-agency__lead {
  margin-bottom: 16px;
  letter-spacing: 0.03em;
}
.about-agency__imgs {
  display: flex;
  flex-wrap: wrap;
  max-width: 650px;
  margin-right: -10px;
}
.about-agency__imgs-item {
  display: flex;
  align-items: flex-end;
}
.about-agency__imgs-item.is-google {
  width: 25.8461538462%;
  margin-right: 10px;
}
.about-agency__imgs-item.is-yahoo {
  width: 32.6153846154%;
  margin-right: 3px;
}
.about-agency__imgs-item.is-amazon {
  width: 36.9230769231%;
}
.about-agency__imgs-item.is-amazon img {
  margin-bottom: -6%;
}
@media all and (min-width: 768px) {
  .about-agency:before {
    background: url(../img/about/bg_agency01_pc.jpg) no-repeat center 0 / cover;
  }
  .about-agency__inner {
    display: flex;
    flex-wrap: wrap;
    padding-top: 107px;
    padding-bottom: 107px;
  }
  .about-agency__area-txt {
    width: 50%;
    box-sizing: border-box;
    padding-right: 90px;
  }
  .about-agency__lead {
    margin: 0;
  }
  .about-agency__imgs {
    width: 50%;
    margin: 0;
  }
  .about-agency__imgs-item.is-google {
    width: 140px;
    margin-right: 20px;
  }
  .about-agency__imgs-item.is-yahoo {
    width: 176px;
    margin-right: 5px;
  }
  .about-agency__imgs-item.is-amazon {
    width: 199px;
  }
  .about-agency__imgs-item a {
    transition: opacity 0.3s ease;
  }
  .about-agency__imgs-item a:hover {
    opacity: 0.7;
  }
}

/* about-history
=============================================== */
.about-history__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.about-history__head {
  margin-bottom: 33px;
}
@media all and (min-width: 768px) {
  .about-history__inner {
    padding-top: 100px;
    padding-bottom: 80px;
  }
  .about-history__head {
    margin-bottom: 73px;
  }
}

/* en
================================================ */
html[lang="en"] .about-info__dl dt {
  width: 190px;
}
html[lang="en"] .about-info__dl dd {
  width: calc(100% - 190px);
}
@media all and (min-width: 768px) {
  html[lang="en"] .about-info__dl dt {
    width: 360px;
  }
  html[lang="en"] .about-info__dl dd {
    width: calc(100% - 360px);
  }
}

/* .attempt-industry
================================================ */
.attempt-industry__inner {
  padding-top: 50px;
}
.attempt-industry__nopost {
  margin-bottom: 50px;
}
@media all and (min-width: 768px) {
  .attempt-industry__inner {
    padding-top: 100px;
  }
  .attempt-industry__archive {
    padding-top: 35px;
  }
  .attempt-industry__nopost {
    margin-bottom: 100px;
  }
}

/* .attempt-work
================================================ */
.attempt-work__inner {
  padding-top: 30px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .attempt-work__inner {
    padding-top: 80px;
    padding-bottom: 150px;
  }
}

/* .attempt-other
================================================ */
.attempt-other {
  background: #fff;
}
.attempt-other__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.attempt-other__head {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  text-align: center;
  margin-bottom: 20px;
}
.attempt-other-slider {
  margin: 20px 0 0;
}
.attempt-other-slider__img {
  width: 84px !important;
  padding: 0 5px;
}
@media all and (min-width: 768px) {
  .attempt-other__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .attempt-other__head {
    font-size: 3.8rem;
  }
  .attempt-other-slider {
    margin: 50px 0 0;
  }
  .attempt-other-slider__img {
    width: 200px !important;
    padding: 0 10px;
  }
  .attempt-other .feature-suppliers-list__item {
    width: 200px !important;
  }
}

/* .attempt-single
================================================ */
.attempt-single {
  position: relative;
}
.attempt-single::after {
  position: absolute;
  content: "";
  width: 83px;
  height: 83px;
  bottom: 0;
  left: 0;
  background: url(../img/attempt/bg_attempt03.png) no-repeat 0 100% / cover;
}
.attempt-single__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .attempt-single::after {
    width: 237px;
    height: 237px;
  }
  .attempt-single__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* .attempt-after
================================================ */
.attempt-after {
  background: #fff;
}
.attempt-after__inner {
  padding-top: 50px;
  padding-bottom: 50px;
  position: relative;
}
.attempt-after__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.attempt-after__txt {
  margin-top: 15px;
}
@media all and (min-width: 768px) {
  .attempt-after__inner {
    padding-top: 130px;
    padding-bottom: 130px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .attempt-after__head {
    flex-basis: 50%;
    padding-right: 87px;
    box-sizing: border-box;
    font-size: 3.2rem;
  }
  .attempt-after__txt {
    flex-basis: 50%;
    margin-top: 0;
  }
}

/* case-industry
================================================ */
.case-industry__inner {
  padding-top: 55px;
  padding-bottom: 50px;
}
.case-industry__archive-wrap {
  padding-top: 40px;
}
.case-industry__archive {
  display: grid;
  gap: 30px;
}
@media all and (min-width: 768px) {
  .case-industry__inner {
    padding-top: 100px;
    padding-bottom: 130px;
  }
  .case-industry__archive-wrap {
    padding-top: 60px;
  }
  .case-industry__archive {
    grid-template-columns: 1fr 1fr;
    gap: 40px;
  }
}

/* case-single
================================================ */
.case-single__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .case-single__inner {
    padding-top: 90px;
    padding-bottom: 90px;
    display: grid;
    grid-template-columns: 140px 1fr;
    align-items: start;
    gap: 50px;
  }
  .case-single__side {
    position: -webkit-sticky;
    position: sticky;
    top: calc(var(--header_height_pc) / 2);
  }
  .case-single__side-list {
    display: grid;
    gap: 13px;
  }
  .case-single__side-item {
    position: relative;
    padding-left: calc(1em + 10px);
    font-size: 1.4rem;
    color: #707070;
    transition: all 0.3s ease;
  }
  .case-single__side-item::before {
    content: "";
    display: inline-block;
    height: 1px;
    width: 1em;
    background-color: #707070;
    position: absolute;
    top: 15px;
    left: 0;
    transition: all 0.3s ease;
  }
  .case-single__side-item:hover {
    color: rgb(var(--black));
  }
  .case-single__side-item:hover::before {
    background-color: rgb(var(--main));
  }
  .case-single__side-doc {
    background: url(../img/case/bg_side01.png) no-repeat center/cover;
    margin-top: 30px;
    padding: 20px 19px 0;
  }
  .case-single__side-doc a {
    text-decoration: none !important;
    transition: all 0.3s ease;
  }
  .case-single__side-doc a:hover {
    opacity: 0.7;
  }
  .case-single__side-doc-head {
    font-weight: 700;
    text-align: center;
    color: #fff;
  }
  .case-single__side-doc-txt {
    margin-top: 20px;
    font-size: 1.2rem;
    color: #cfcfcf;
  }
  .case-single__side-doc-img {
    margin-top: 19px;
  }
  .case-single__side-doc-img img {
    box-shadow: 0 3px 10px 0 #000001;
  }
  .case-single__side-doc-btn {
    margin: 20px -20px 0;
    padding: 8px 10px;
    background-color: rgb(var(--main));
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .case-single__side-doc-btn-txt {
    color: rgb(var(--black));
    font-weight: 700;
    font-size: 1.4rem;
  }
  .case-single__side-doc-btn-ico {
    width: 22px;
    height: 16px;
  }
}

/* .case-single-content
================================================ */
/* .case-single-content-doc
================================================ */
.case-single-content-doc {
  background: #fff;
  padding: 20px;
  position: relative;
}
.case-single-content-doc::before {
  position: absolute;
  content: "";
  width: 21px;
  height: 14px;
  top: 0;
  right: 0;
  background: url(../img/common/bg_bit06.png) no-repeat 0 100% / cover;
}
.case-single-content-doc::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 14px;
  bottom: 0;
  left: 0;
  background: url(../img/common/bg_bit07.png) no-repeat 0 100% / cover;
}
.case-single-content-doc__inner {
  display: grid;
  gap: 25px;
}
.case-single-content-doc__head {
  font-size: 1.8rem;
  line-height: var(--line_height_head);
  font-weight: 700;
  padding-bottom: 10px;
  border-bottom: 1px solid #cfcfcf;
}
.case-single-content-doc__txt {
  margin-top: 15px;
}
.case-single-content-doc__img {
  text-align: center;
}
@media all and (min-width: 768px) {
  .case-single-content-doc {
    padding: 40px;
  }
  .case-single-content-doc__inner {
    grid-template-columns: 1fr 307px;
    gap: 60px;
  }
  .case-single-content-doc__head {
    font-size: 2.4rem;
    padding-bottom: 15px;
  }
  .case-single-content-doc__txt {
    margin-top: 20px;
  }
}

/* .case-single-content-issue
================================================ */
.case-single-content-issue {
  margin-top: 23px;
}
.case-single-content-issue__header {
  background-color: rgb(var(--black));
  overflow: hidden;
  position: relative;
  padding: 20px 20px 25px;
}
.case-single-content-issue__img {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(-50%, -50%);
}
.case-single-content-issue__cat {
  border: 1px solid #fff;
  font-weight: 700;
  display: inline-block;
  padding: 4px 12px 5px;
  color: #fff;
}
.case-single-content-issue__subhead {
  color: #fff;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-top: 10px;
  font-size: 2.2rem;
}
.case-single-content-issue__main {
  padding: 25px 20px;
  background-color: #fff;
  border: 1px solid rgb(var(--black));
}
.case-single-content-issue__head {
  font-weight: 700;
  line-height: var(--line_height_head);
  font-size: 2.4rem;
}
.case-single-content-issue__head::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/case/ico_head01.png) no-repeat center/contain;
  margin-right: 10px;
}
.case-single-content-issue__txt {
  margin-top: 20px;
}
@media all and (min-width: 768px) {
  .case-single-content-issue {
    margin-top: 63px;
    display: grid;
    grid-template-columns: 275px 1fr;
  }
  .case-single-content-issue__header {
    padding: 50px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .case-single-content-issue__img {
    position: static;
    transform: none;
    text-align: center;
  }
  .case-single-content-issue__cat {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 30px;
  }
  .case-single-content-issue__subhead {
    font-size: 2.6rem;
    text-align: center;
  }
  .case-single-content-issue__main {
    padding: 50px 60px;
  }
  .case-single-content-issue__txt {
    margin-top: 40px;
  }
}

/* case-single-content-result
================================================ */
.case-single-content-result {
  margin-top: 50px;
  position: relative;
}
.case-single-content-result::before {
  content: "";
  display: block;
  width: 25px;
  height: 17px;
  background: url(../img/common/ico_arrow01.png) no-repeat center/contain;
  rotate: 90deg;
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}
.case-single-content-result__header {
  background: rgb(var(--black)) url(../img/case/bg_head01_sp.png) no-repeat
    center/cover;
  padding: 25px 25px 20px;
}
.case-single-content-result__head {
  text-align: center;
}
.case-single-content-result__subhead {
  text-align: center;
  color: #fff;
  font-weight: 700;
  line-height: var(--line_height_head);
  font-size: 2.2rem;
}
.case-single-content-result__textarea {
  background-color: #fff;
  padding: 25px 20px 30px;
  border: 1px solid rgb(var(--black));
}
@media all and (min-width: 768px) {
  .case-single-content-result {
    margin-top: 77px;
    display: grid;
    grid-template-columns: 275px 1fr;
  }
  .case-single-content-result::before {
    width: 41px;
    height: 29px;
    top: -30px;
  }
  .case-single-content-result__header {
    background-image: url(../img/case/bg_head01.png);
    padding: 60px 30px 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .case-single-content-result__subhead {
    margin-top: 16px;
  }
  .case-single-content-result__textarea {
    padding: 50px 60px;
  }
}

/* .case-single-content-effect
================================================ */
.case-single-content-effect {
  margin-top: 40px;
  background-color: #fff;
  padding: 25px 20px 30px;
}
.case-single-content-effect__head {
  font-weight: 700;
  text-align: center;
  line-height: var(--line_height_head);
  padding-bottom: 20px;
  border-bottom: 1px solid #cfcfcf;
  font-size: 2.4rem;
  margin-bottom: 20px;
}
.case-single-content-effect .c-list01__item {
  font-weight: 700;
}
@media all and (min-width: 768px) {
  .case-single-content-effect {
    margin-top: 60px;
    padding: 50px 60px 60px;
  }
  .case-single-content-effect__head {
    font-size: 3.8rem;
  }
}

/* .case-single-content-effect
================================================ */
.case-single-content-wysiwyg {
  padding-top: 50px;
  padding-bottom: 50px;
}
.case-single-content-wysiwyg .c-single-content *:first-child {
  margin-top: 0;
}
.case-single-content-wysiwyg .c-single-content *:last-child {
  margin-bottom: 0;
}
.case-single-content-wysiwyg .c-single-content p {
  margin: 1em 0;
}
.case-single-content-wysiwyg .c-single-content a {
  transition: color 0.3s ease;
  color: rgb(var(--black)) !important;
  text-decoration: underline;
}
.case-single-content-wysiwyg .c-single-content a[target="_blank"]::after {
  display: inline-block;
  width: 11px;
  height: 11px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
  margin: 0 3px 3px;
}
.case-single-content-wysiwyg .c-single-content ul {
  margin: 1.5em 0;
  list-style-type: square;
}
.case-single-content-wysiwyg .c-single-content ol {
  padding-left: 2.2em;
  margin: 1.5em 0;
  list-style-type: decimal-leading-zero;
}
.case-single-content-wysiwyg .c-single-content ol ::marker {
  font-family: "Inter", sans-serif;
  line-height: var(--line_height_tight);
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media all and (min-width: 768px) {
  .case-single-content-wysiwyg {
    padding-top: 120px;
    padding-bottom: 130px;
  }
  .case-single-content-wysiwyg .c-single-content a:hover {
    color: rgb(var(--main)) !important;
    text-decoration: none;
  }
}

/* .company-content
======================================= */
.company-content__inner {
  position: relative;
  padding-top: 10px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .company-content__inner {
    padding-top: 40px;
    padding-bottom: 130px;
  }
}

.company-content-list__item {
  margin-top: 40px;
}
.company-content-list__item-img img {
  width: 100%;
}
.company-content-list__item-head {
  margin-top: 20px;
  border-bottom: 1px solid;
  padding-bottom: 10px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  box-sizing: border-box;
}
.company-content-list__item-head-main {
  font-weight: 700;
  line-height: var(--line_height_head);
}
.company-content-list__item-head-ico {
  width: 25px;
  height: 17px;
  margin-bottom: 2px;
}
.company-content-list__item-head-ico svg {
  transition: none !important;
}
@media all and (min-width: 768px) {
  .company-content-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -1.3157894737%;
  }
  .company-content-list__item {
    flex-basis: 22.3684210526%;
    margin: 60px 1.3157894737% 0;
  }
  .company-content-list__item-head {
    margin-top: 25px;
    padding-bottom: 18px;
  }
  .company-content-list__item-head-ico {
    width: 41px;
    height: 29px;
    margin-bottom: -2px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .company-content-list__item-link {
    transition: all 0.3s ease;
  }
  .company-content-list__item-link:hover {
    color: rgb(var(--main));
  }
  .company-content-list__item-link:hover
    .company-content-list__item-head-ico
    svg.has-multiple
    use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .company-content-list__item-link:hover
    .company-content-list__item-head-ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .company-content-list__item-link:hover
    .company-content-list__item-head-ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
}

/* .contact-intro
================================================ */
.contact-intro__inner {
  padding-top: 50px;
}
.contact-intro-box {
  border: solid 1px;
  padding: 15px 20px;
}
.contact-intro-box__head {
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  padding-bottom: 20px;
}
.contact-intro-box__txt-link {
  position: relative;
  display: block;
  text-decoration: underline !important;
}
.contact-intro-box__txt-link[target="_blank"]:after {
  content: "";
  margin-left: 3px;
  display: inline-block;
  width: 11px;
  height: 11px;
  vertical-align: middle;
  color: currentColor;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 11"><g fill="currentColor"><path d="M0 1.126v9.873h9.86V5.508H8.73v4.357h-7.6V2.257h4.354V1.126Z"/><path d="M10.994 0H6.563v1.178h2.42l-4.68 4.68.833.833 4.684-4.68v2.42h1.178Z"/></g></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  transition: all 0.3s ease;
}
@media all and (max-width: 767px) {
  .contact-intro-box__head {
    position: relative;
  }
  .contact-intro-box__head::after {
    position: absolute;
    content: "";
    width: 85px;
    height: 1px;
    background: rgb(var(--black));
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media all and (min-width: 768px) {
  .contact-intro__inner {
    padding-top: 100px;
  }
  .contact-intro-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 24px 0;
  }
  .contact-intro-box__head {
    width: 230px;
    padding: 0;
    font-size: 2rem;
  }
  .contact-intro-box__txt {
    width: calc(100% - 230px);
    border-left: solid 1px;
    box-sizing: border-box;
    padding: 16px 70px 16px 45px;
  }
  .contact-intro-box__txt-link {
    transition: color 0.3s ease;
  }
  .contact-intro-box__txt-link:hover {
    color: rgb(var(--main));
  }
}

/* .contact-form
================================================ */
.contact-form__inner {
  padding-top: 20px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .contact-form__inner {
    padding-top: 40px;
    padding-bottom: 120px;
  }
  .contact-form__txt {
    margin-bottom: 10px;
  }
}

/* .contact-tel
================================================ */
.contact-tel {
  background: url(../img/contact/bg_contact-tel01_sp.jpg) no-repeat 0 100% /
    cover;
  text-align: center;
}
.contact-tel__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.contact-tel__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 15px;
}
.contact-tel-box {
  padding: 15px 0 20px;
  background: rgba(255, 255, 255, 0.4);
}
.contact-tel-box .l-cv-list__item-tel-main-ico {
  width: 36px;
  height: 20px;
}
@media all and (min-width: 768px) {
  .contact-tel {
    background: url(../img/contact/bg_contact-tel01_pc.jpg) no-repeat 0 100% /
      cover;
  }
  .contact-tel__inner {
    padding-top: 115px;
    padding-bottom: 115px;
  }
  .contact-tel__head {
    font-size: 3.8rem;
  }
  .contact-tel-box {
    position: static;
    padding: 35px 0 43px;
    width: 840px;
    margin: 35px auto 0;
  }
  .contact-tel-box .l-cv-list__item-tel-main-ico {
    width: 54px;
    height: 31px;
  }
  .contact-tel-box .l-cv-list__item-tel-main {
    justify-content: center;
    font-size: 4.8rem;
  }
  .contact-tel-box .l-cv-list__item-tel-sub {
    margin-top: 10px;
    font-size: 1.6rem;
  }
}

/* .creative-archive
======================================= */
.creative-archive {
  padding: 40px 0 50px;
}
@media all and (min-width: 768px) {
  .creative-archive {
    padding: 100px 0 130px;
    background: url(../img/common/bg_bit08.png) no-repeat bottom 15px left
      100px/220px 230px;
  }
}

/* .document-company
================================================ */
.document-company__inner {
  padding-top: 50px;
  padding-bottom: 20px;
}
@media all and (max-width: 767px) {
  .document-company__img {
    margin: 0 auto 15px;
    text-align: center;
  }
}
@media all and (min-width: 768px) {
  .document-company__inner {
    display: grid;
    grid-template-columns: 340px 720px;
    grid-template-rows: auto auto 1fr;
    grid-column-gap: 40px;
    padding-top: 100px;
    padding-bottom: 80px;
  }
  .document-company__head {
    grid-area: 1/1/2/2;
  }
  .document-company__img {
    grid-area: 1/2/4/3;
    margin-bottom: 35px;
  }
  .document-company__txt {
    grid-area: 2/1/3/2;
  }
  .document-company .document-company__btn {
    grid-area: 3/1/4/2;
    margin-top: 7px;
    align-items: flex-start;
  }
}

/* .document-useful
================================================ */
.document-useful__inner {
  padding-top: 30px;
  padding-bottom: 60px;
}
@media all and (min-width: 768px) {
  .document-useful {
    position: relative;
  }
  .document-useful__inner {
    padding-top: 80px;
    padding-bottom: 130px;
  }
}

/* .download-form
================================================ */
.download-form__inner {
  padding-top: 50px;
}
@media all and (min-width: 768px) {
  .download-form__inner {
    padding-top: 100px;
    padding-bottom: 120px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

/* .download-form-info
================================================ */
.download-form-info {
  padding-bottom: 30px;
}
.download-form-info__img {
  margin-bottom: 15px;
}
.download-form-info__sample {
  margin-top: 20px;
}
@media all and (min-width: 768px) {
  .download-form-info {
    width: 530px;
  }
  .download-form-info__list {
    margin-top: 35px;
  }
  .download-form-info__sample {
    margin-top: 35px;
  }
}

/* .download-form-box
================================================ */
.download-form-box {
  padding: 25px 20px 60px;
  background: #ececec;
}
@media all and (max-width: 767px) {
  .download-form-box {
    margin: 0 -20px;
  }
}
@media all and (min-width: 768px) {
  .download-form-box {
    padding: 40px 30px 50px;
    width: 530px;
    box-sizing: border-box;
  }
  .download-form-box__txt {
    font-size: 1.3rem;
  }
}

/* .entry-intro
================================================ */
.entry-intro__inner {
  padding-top: 50px;
}
.entry-intro-box {
  border: solid 1px;
  padding: 15px 20px;
}
.entry-intro-box__head {
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  padding-bottom: 20px;
}
@media all and (max-width: 767px) {
  .entry-intro-box__head {
    position: relative;
  }
  .entry-intro-box__head::after {
    position: absolute;
    content: "";
    width: 85px;
    height: 1px;
    background: rgb(var(--black));
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media all and (min-width: 768px) {
  .entry-intro__inner {
    padding-top: 100px;
  }
  .entry-intro-box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 24px 0;
  }
  .entry-intro-box__head {
    width: 230px;
    padding: 0;
    font-size: 2rem;
  }
  .entry-intro-box__txt {
    width: calc(100% - 230px);
    border-left: solid 1px;
    box-sizing: border-box;
    padding: 16px 70px 16px 45px;
  }
}

/* .entry-form
================================================ */
.entry-form__inner {
  padding-top: 20px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .entry-form__inner {
    padding-top: 40px;
    padding-bottom: 120px;
  }
  .entry-form__txt {
    margin-bottom: 10px;
  }
}

/* .entry-tel
================================================ */
.entry-tel {
  background: url(../img/contact/bg_contact-tel01_sp.jpg) no-repeat 0 100% /
    cover;
  text-align: center;
}
.entry-tel__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.entry-tel__head {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 15px;
}
.entry-tel-box {
  padding: 15px 0 20px;
  background: rgba(255, 255, 255, 0.4);
}
.entry-tel-box .l-cv-list__item-tel-main-ico {
  width: 36px;
  height: 21px;
}
@media all and (min-width: 768px) {
  .entry-tel {
    background: url(../img/contact/bg_contact-tel01_pc.jpg) no-repeat 0 100% /
      cover;
  }
  .entry-tel__inner {
    padding-top: 115px;
    padding-bottom: 115px;
  }
  .entry-tel__head {
    font-size: 3.8rem;
  }
  .entry-tel-box {
    position: static;
    padding: 35px 0 43px;
    width: 840px;
    margin: 35px auto 0;
  }
  .entry-tel-box .l-cv-list__item-tel-main-ico {
    width: 54px;
    height: 31px;
  }
  .entry-tel-box .l-cv-list__item-tel-main {
    justify-content: center;
    font-size: 4.8rem;
  }
  .entry-tel-box .l-cv-list__item-tel-sub {
    margin-top: 10px;
    font-size: 1.6rem;
  }
}

/* .error-page404
================================================ */
.error-page404__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .error-page404__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* feature-intro
======================================= */
.feature-intro {
  overflow: hidden;
}
.feature-intro__inner {
  padding-top: 50px;
}
.feature-intro__lead {
  margin-bottom: 30px;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .feature-intro {
    position: relative;
  }
  .feature-intro::before {
    position: absolute;
    content: "";
    width: 474px;
    height: 474px;
    bottom: 606px;
    right: 0;
    background: url(../img/feature/bg_improve01.png) no-repeat 0 100% / cover;
  }
  .feature-intro__inner {
    padding-top: 100px;
    padding-bottom: 48px;
  }
  .feature-intro__lead {
    margin-bottom: 136px;
    text-align: center;
  }
}

/* feature-intro-approach
----------------------------------------- */
.feature-intro-approach {
  padding-bottom: 18px;
}
.feature-intro-approach__head {
  margin: 0 -3px 19px 0;
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.feature-intro-approach__arrow {
  display: block;
  width: 29px;
  height: 86px;
  margin: 20px auto;
  background: url(../img/feature/img_arrow01_sp.png) no-repeat 0 0 / contain;
}
.feature-intro-approach__txt {
  line-height: 1.5;
  font-weight: 700;
  font-size: 1.6rem;
  text-align: center;
  letter-spacing: 0.1em;
}
.feature-intro-approach__txt + .feature-intro-approach__txt {
  margin-top: 10px;
}
.feature-intro-approach__txt.is-large {
  position: relative;
  font-size: 2.4rem;
}
.feature-intro-approach__txt.is-large:before {
  content: "";
  position: absolute;
  top: -35px;
  right: -77px;
  z-index: -1;
  width: 174px;
  height: 174px;
  background: url(../img/feature/bg_approach01.png) no-repeat 0 0 / contain;
}
@media (max-width: 374px) {
  .feature-intro-approach__head {
    font-size: 1.8rem;
  }
  .feature-intro-approach__txt.is-large {
    font-size: 1.8rem;
  }
}
@media all and (min-width: 768px) {
  .feature-intro-approach {
    padding-bottom: 77px;
  }
  .feature-intro-approach__head {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
  }
  .feature-intro-approach__arrow {
    height: 146px;
    margin: -80px auto 52px;
    background: url(../img/feature/img_arrow01_pc.png) no-repeat 0 0 / contain;
  }
  .feature-intro-approach__txt {
    font-size: 2.4rem;
  }
  .feature-intro-approach__txt + .feature-intro-approach__txt {
    margin-top: 20px;
  }
  .feature-intro-approach__txt.is-large {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
  }
  .feature-intro-approach__txt.is-large:before {
    top: -325px;
    right: -410px;
    width: 474px;
    height: 474px;
  }
}

/* feature-intro-approach-list
-------------------------------------- */
.feature-intro-approach-list__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 315px;
  height: 315px;
  padding: 30px;
  padding-top: 10px;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
  border-radius: 50%;
  border: 1px solid currentColor;
}
.feature-intro-approach-list__item + .feature-intro-approach-list__item {
  margin-top: -40px;
}
.feature-intro-approach-list__item-head {
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 10px;
  line-height: 1.5;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.1em;
}
.feature-intro-approach-list__item-head:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 40px;
  height: 1px;
  background: currentColor;
}
.feature-intro-approach-list__item-txt {
  font-size: 1.4rem;
}
@media (max-width: 374px) {
  .feature-intro-approach-list__item {
    width: 290px;
    height: 290px;
    padding: 30px 40px;
  }
}
@media all and (min-width: 768px) {
  .feature-intro-approach-list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    margin-top: -114px;
  }
  .feature-intro-approach-list__item {
    width: 400px;
    height: 400px;
    margin: 0;
    padding: 60px;
  }
  .feature-intro-approach-list__item:nth-child(2) {
    margin: 130px -50px 0;
  }
  .feature-intro-approach-list__item:nth-child(3) {
    margin-top: 260px;
  }
  .feature-intro-approach-list__item-head {
    margin-bottom: 20px;
    padding-bottom: 13px;
    font-size: 2.4rem;
  }
  .feature-intro-approach-list__item-txt {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}

/* feature-sec
---------------------------------------- */
.feature-sec {
  position: relative;
  padding: 40px 0 50px;
}
.feature-sec:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% + 20px);
  height: 1px;
  background: rgb(var(--black));
}
.feature-sec.has-and::after {
  position: absolute;
  content: "";
  width: 33px;
  height: 50px;
  top: -32px;
  left: 50%;
  transform: translateX(-50%);
  background: #f6f6f6 url(../img/feature/ico_and01.png) no-repeat 0 100% / cover;
}
.feature-sec__head {
  margin-bottom: 18px;
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.feature-sec__sub {
  line-height: 1.5;
  font-size: 2rem;
  margin-bottom: 15px;
}
.feature-sec__lead {
  margin-bottom: 28px;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
.feature-sec__cross {
  position: relative;
  display: block;
  width: 70px;
  height: 70px;
  margin: -41px auto 9px;
}
.feature-sec__cross:before,
.feature-sec__cross:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 1px;
  height: 100%;
  background: rgb(var(--black));
}
.feature-sec__cross:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media all and (max-width: 767px) {
  .feature-sec__head {
    margin-right: -3px;
  }
  .feature-sec__figure {
    margin: 0 -10px;
  }
}
@media (max-width: 374px) {
  .feature-sec__head {
    font-size: 2rem;
  }
}
@media all and (min-width: 768px) {
  .feature-sec {
    padding: 60px 0 80px;
  }
  .feature-sec:before {
    width: 100%;
  }
  .feature-sec__head {
    margin-bottom: 28px;
    font-size: 3.8rem;
    letter-spacing: 0.02em;
  }
  .feature-sec__sub {
    margin-bottom: 20px;
  }
  .feature-sec__lead {
    margin-bottom: 36px;
    letter-spacing: 0.05em;
  }
  .feature-sec__cross {
    width: 100px;
    height: 100px;
    margin: -58px auto 46px;
  }
}

/* feature-sec-list
---------------------------------------- */
.feature-sec-list__item {
  margin-bottom: 17px;
}
.feature-sec-list__item:last-child {
  margin-bottom: 0;
}
.feature-sec-list__item-area-img {
  position: relative;
}
.feature-sec-list__item-area-img .feature-sec-list__item-head {
  position: absolute;
  top: 50%;
  left: 28px;
  transform: translateY(-50%);
  color: #fff;
}
.feature-sec-list__item-img {
  margin-bottom: 15px;
}
.feature-sec-list__item-head {
  margin-bottom: 6px;
  line-height: 1.5;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
.feature-sec-list__item-head span {
  display: block;
  font-size: 1.4rem;
}
.feature-sec-list__item-txt {
  letter-spacing: 0.03em;
}
@media all and (max-width: 767px) {
  .feature-sec-list {
    max-width: 630px;
    margin: 0 auto;
  }
}
@media all and (min-width: 768px) {
  .feature-sec-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -40px 0 0;
  }
  .feature-sec-list.is-col2-pc .feature-sec-list__item {
    width: 530px;
  }
  .feature-sec-list.is-col2-pc
    .feature-sec-list__item:nth-of-type(2n + 1):nth-last-of-type(-n + 2) {
    margin-bottom: 0;
  }
  .feature-sec-list.is-col2-pc
    .feature-sec-list__item:nth-of-type(2n + 1):nth-last-of-type(-n + 2)
    ~ .feature-sec-list__item {
    margin-bottom: 0;
  }
  .feature-sec-list.is-col2-pc .feature-sec-list__item-img {
    margin-bottom: 28px;
  }
  .feature-sec-list.is-col3-pc .feature-sec-list__item {
    width: 340px;
  }
  .feature-sec-list.is-col3-pc
    .feature-sec-list__item:nth-of-type(3n + 1):nth-last-of-type(-n + 3) {
    margin-bottom: 0;
  }
  .feature-sec-list.is-col3-pc
    .feature-sec-list__item:nth-of-type(3n + 1):nth-last-of-type(-n + 3)
    ~ .feature-sec-list__item {
    margin-bottom: 0;
  }
  .feature-sec-list__item {
    margin: 0 40px 40px 0;
  }
  .feature-sec-list__item-area-img .feature-sec-list__item-head {
    font-size: 1.6rem;
  }
  .feature-sec-list__item-img {
    margin-bottom: 21px;
  }
  .feature-sec-list__item-head {
    font-size: 2.4rem;
    left: 30px;
  }
  .feature-sec-list__item-head span {
    display: inline-block;
    font-size: 2rem;
  }
  .feature-sec-list__item-txt {
    letter-spacing: 0.05em;
  }
}

/* feature-partner
=================================== */
.feature-partner {
  background: #fff;
  position: relative;
}
.feature-partner::before {
  position: absolute;
  content: "";
  width: 188px;
  height: 188px;
  top: 0;
  left: 0;
  background: url(../img/feature/bg_partner03_sp.png) no-repeat 0 100% / cover;
}
.feature-partner__inner {
  padding-top: 47px;
  position: relative;
}
.feature-partner__lead {
  margin-bottom: 40px;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
.feature-partner__btn.c-btn02.is-large .c-btn02__link {
  min-width: 172px;
}
.feature-partner__btn.c-btn02.is-large .c-btn02__ico {
  margin-left: auto;
}
@media all and (min-width: 768px) {
  .feature-partner::before {
    width: 358px;
    height: 358px;
    background: url(../img/feature/bg_partner03.png) no-repeat 0 100% / cover;
  }
  .feature-partner::after {
    position: absolute;
    content: "";
    width: 290px;
    height: 290px;
    bottom: 278px;
    right: 0;
    background: url(../img/feature/bg_partner03.png) no-repeat 0 100% / cover;
  }
  .feature-partner__inner {
    padding-top: 127px;
    padding-bottom: 60px;
  }
  .feature-partner__lead {
    margin-bottom: 60px;
    text-align: center;
  }
  .feature-partner__btn.c-btn02.is-large {
    margin-top: 42px;
  }
}

/* feature-partner-set
----------------------------------------- */
.feature-partner-set + .feature-partner-set {
  margin-top: 30px;
}
.feature-partner-set__img {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  min-height: 150px;
  margin: 0 auto 20px;
  text-align: center;
  border-radius: 50%;
}
.feature-partner-set__img-txt {
  display: block;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.feature-partner-set__img-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 150px;
  height: 150px;
}
.feature-partner-set__area-txt dl dt {
  display: inline-block;
  margin-bottom: 7px;
  padding: 6px 19px;
  background: rgb(var(--black));
  line-height: 1.5;
  color: #fff;
  font-weight: 700;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
.feature-partner-set__area-txt dl dd {
  letter-spacing: 0.03em;
}
.feature-partner-set__area-txt dl dd + dt {
  margin-top: 17px;
}
@media (max-width: 374px) {
  .feature-partner-set__area-txt dl dt {
    font-size: 1.5rem;
  }
}
@media all and (min-width: 768px) {
  .feature-partner-set {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .feature-partner-set + .feature-partner-set {
    margin-top: 65px;
  }
  .feature-partner-set__img {
    width: 220px;
    min-height: 220px;
    margin: 0 60px 0 0;
  }
  .feature-partner-set__img-bg {
    width: 220px;
    height: 220px;
  }
  .feature-partner-set__area-txt {
    flex: 1;
  }
  .feature-partner-set__area-txt dl dt {
    font-size: 2.1rem;
  }
  .feature-partner-set__area-txt dl dd + dt {
    margin-top: 35px;
  }
}

/* feature-partner-list
-------------------------------------- */
.feature-partner-list__item {
  margin-bottom: 10px;
  background: url(../img/feature/pattern_parter01.jpg) 0 100% / cover;
}
.feature-partner-list__item:last-child {
  margin-bottom: 0;
}
.feature-partner-list__item-link {
  display: block;
  padding: 20px 20px 47px;
  box-sizing: border-box;
  position: relative;
}
.feature-partner-list__item-head {
  margin-bottom: 8px;
  line-height: 1.5;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
.feature-partner-list__item-txt {
  letter-spacing: 0.03em;
}
.feature-partner-list__item-ico {
  position: absolute;
  bottom: 20px;
  right: 20px;
  width: 25px;
  height: 17px;
}
@media all and (min-width: 768px) {
  .feature-partner-list {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    margin-right: -40px;
  }
  .feature-partner-list__item {
    display: flex;
    width: 530px;
    margin: 0 40px 40px 0;
  }
  .feature-partner-list__item:nth-of-type(2n + 1):nth-last-of-type(-n + 2) {
    margin-bottom: 0;
  }
  .feature-partner-list__item:nth-of-type(2n + 1):nth-last-of-type(-n + 2)
    ~ .feature-partner-list__item {
    margin-bottom: 0;
  }
  .feature-partner-list__item-link {
    padding: 40px 40px 65px;
    transition: all 0.3s ease;
  }
  .feature-partner-list__item-link:hover .feature-partner-list__item-ico,
  .feature-partner-list__item-link:focus-visible
    .feature-partner-list__item-ico {
    color: rgb(var(--main));
  }
  .feature-partner-list__item-link:hover
    .feature-partner-list__item-ico
    svg.has-multiple
    use,
  .feature-partner-list__item-link:focus-visible
    .feature-partner-list__item-ico
    svg.has-multiple
    use {
    -webkit-animation: svgMultipleAnim 0.6s linear infinite;
    animation: svgMultipleAnim 0.6s linear infinite;
  }
  .feature-partner-list__item-link:hover
    .feature-partner-list__item-ico
    svg.has-multiple
    use:nth-of-type(2),
  .feature-partner-list__item-link:focus-visible
    .feature-partner-list__item-ico
    svg.has-multiple
    use:nth-of-type(2) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
  }
  .feature-partner-list__item-link:hover
    .feature-partner-list__item-ico
    svg.has-multiple
    use:nth-of-type(3),
  .feature-partner-list__item-link:focus-visible
    .feature-partner-list__item-ico
    svg.has-multiple
    use:nth-of-type(3) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
  }
  .feature-partner-list__item-head {
    margin-bottom: 11px;
    font-size: 2rem;
  }
  .feature-partner-list__item-txt {
    letter-spacing: 0.05em;
  }
  .feature-partner-list__item-ico {
    bottom: 30px;
    right: 30px;
    width: 41px;
    height: 29px;
  }
}

/* feature-suppliers
=========================================== */
.feature-suppliers {
  overflow: hidden;
}
.feature-suppliers__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .feature-suppliers__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* feature-suppliers-slider
-------------------------------------- */
@media all and (min-width: 768px) {
  .feature-suppliers-slider {
    margin-top: 50px;
  }
}

/* feature-suppliers-list
-------------------------------------- */
/* .feature-suppliers-list {
	&__item {
		width: 211px !important;
		height: 82px;
		padding-right: 10px;
		box-sizing: border-box;
		img {
			width: 100%;
			height: 100%;
			display: block;
			object-fit: contain;
			background: #fff;
		}
	}
	@include mixin.mq(tb) {
		margin-top: 50px;
		&__item {
			width: 320px !important;
			height: 120px;
			padding-right: 20px;
		}
	}
} */
/* feature-message
============================================== */
.feature-message {
  background: url(../img/feature/bg_message01_sp.jpg) no-repeat 0 0 / cover;
}
.feature-message__inner {
  padding-top: 40px;
  padding-bottom: 40px;
}
.feature-message__txt {
  position: relative;
  z-index: 1;
  line-height: 1.5;
  text-align: center;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .feature-message {
    background: url(../img/feature/bg_message01_pc.jpg) no-repeat 0 0 / cover;
  }
  .feature-message__inner {
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .feature-message__txt {
    font-size: 3.2rem;
    letter-spacing: 0.02em;
  }
}

/* history-content
=============================================== */
.history-content__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.history-content__head {
  margin-bottom: 33px;
}
@media all and (min-width: 768px) {
  .history-content__inner {
    padding-top: 100px;
    padding-bottom: 80px;
  }
  .history-content__head {
    margin-bottom: 73px;
  }
}

/* .home-record
================================================== */
.home-record__inner {
  padding-top: 40px;
  padding-bottom: 60px;
}
.home-record__head {
  text-align: center;
  font-size: 2.2rem;
  line-height: var(--line_height_head);
  margin-bottom: 20px;
}
.home-record-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
}
.home-record-list__item img {
  display: block;
  width: 100%;
}
@media all and (min-width: 768px) {
  .home-record__inner {
    padding-top: 70px;
    padding-bottom: 100px;
  }
  .home-record__head {
    font-size: 4.6rem;
    margin-bottom: 30px;
  }
  .home-record-list {
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
  }
}

/* .home-bg
================================================== */
.home-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.home-bg__wrap {
  position: relative;
}
.home-bg__in {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  max-height: 100%;
  overflow: hidden;
}
.home-bg img {
  display: block;
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 100lvh;
  max-width: unset;
  -o-object-fit: cover;
  object-fit: cover;
}

/* .home-strength
================================================== */
.home-strength {
  position: relative;
}
.home-strength__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
.home-strength__head {
  color: #fff;
  margin-bottom: 30px;
}
.home-strength__head-main-x {
  color: rgb(var(--main));
}
@media all and (max-width: 767px) {
  .home-strength .home-strength__head-main {
    margin-top: 30px;
    font-size: 1.8rem;
  }
  .home-strength .home-strength__head-main-x {
    display: block;
    line-height: 1;
    padding-bottom: 0.1em;
  }
}
@media all and (min-width: 768px) {
  .home-strength__inner {
    padding-top: 150px;
    padding-bottom: 120px;
  }
  .home-strength__content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 29px;
  }
  .home-strength__head {
    margin-bottom: 60px;
  }
  .home-strength__head-main-x {
    font-size: 75%;
    margin: -0.3em 0.35em 0;
    vertical-align: middle;
    display: inline-block;
  }
}
@media all and (min-width: 768px) and (max-width: 1579px) {
  .home-strength .home-strength__head-main {
    font-size: 4rem;
  }
}

.home-strength-sec {
  position: relative;
  overflow: hidden;
  z-index: 1;
  margin-top: 10px;
  padding: 30px 15px;
}
.home-strength-sec__bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.home-strength-sec__bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.home-strength-sec__head {
  text-align: center;
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: var(--line_height_head);
}
.home-strength-sec__img {
  text-align: center;
  width: 72.6315789474%;
  margin: 0 auto;
}
.home-strength-sec__txt {
  margin-top: 25px;
  line-height: var(--line_height_wide);
}
@media all and (min-width: 768px) {
  .home-strength-sec {
    margin-top: 0;
    padding: 40px 40px 50px;
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 3;
    gap: 0;
  }
  .home-strength-sec__head {
    margin: 0 -1em 15px;
    font-size: 2.8rem;
    align-self: center;
  }
  .home-strength-sec__img {
    width: 87.5634517766%;
    align-self: center;
  }
  .home-strength-sec__txt {
    margin-top: 40px;
    font-size: 1.4rem;
  }
}
@media all and (min-width: 768px) and (max-width: 1239px) {
  .home-strength-sec__head {
    font-size: 2.4rem;
  }
}

/* .home-promise
================================================== */
.home-promise {
  position: relative;
  color: #fff;
}
.home-promise__inner {
  padding-bottom: 40px;
}
@media all and (max-width: 767px) {
  .home-promise .home-promise__head {
    margin-bottom: 30px;
  }
}
@media all and (min-width: 768px) {
  .home-promise__inner {
    padding-bottom: 150px;
  }
  .home-promise__head {
    margin-bottom: 60px;
  }
}

.home-promise-list__item {
  border-top: 1px solid;
  padding-top: 15px;
  padding-bottom: 40px;
}
.home-promise-list__item-head {
  margin-bottom: 15px;
  font-size: 1.6rem;
  color: rgb(var(--lightgray));
}
.home-promise-list__item-head-num {
  display: block;
  margin-bottom: 10px;
  color: rgb(var(--main));
  font-size: 1.2rem;
}
.home-promise-list__item-head-main {
  display: block;
  font-weight: 500;
  letter-spacing: 0;
}
.home-promise-list__item-txt {
  letter-spacing: 0.02em;
  text-align: justify;
  opacity: 0.5;
}
@media all and (max-width: 767px) {
  .home-promise-list {
    padding: 0 10px;
  }
}
@media all and (min-width: 768px) {
  .home-promise-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 40px;
  }
  .home-promise-list__item {
    padding-top: 25px;
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 3;
    gap: 0;
  }
  .home-promise-list__item-head {
    margin-bottom: 25px;
    font-size: 2.2rem;
  }
  .home-promise-list__item-head-num {
    font-size: 1.3rem;
  }
  .home-promise-list__item-txt {
    font-size: 1.4rem;
  }
}

/* .home-service
================================================== */
.home-service__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media all and (min-width: 768px) {
  .home-service__inner {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.home-service-list__item {
  background-color: #efefef;
  padding: 35px 22px 40px;
  box-sizing: border-box;
}
.home-service-list__item-head-num {
  color: rgb(var(--main));
  font-size: 1.2rem;
}
.home-service-list__item-head-main {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: var(--line_height_head);
}
.home-service-list__item-head-main span {
  font-size: 1.4rem;
}
@media all and (max-width: 767px) {
  .home-service-list__item {
    margin-top: 10px;
  }
  .home-service-list__item:nth-of-type(n + 3) {
    display: none;
  }
  .home-service-list__item-head {
    display: flex;
    align-items: center;
    padding-bottom: 25px;
    margin-bottom: 30px;
    border-bottom: 1px solid #d0d0d0;
  }
  .home-service-list__item-head-num {
    margin: 3px 8px 0 0;
  }
}
@media all and (min-width: 768px) {
  .home-service-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px 10px;
  }
  .home-service-list__item {
    display: grid;
    grid-template-columns: 230px auto;
    padding: 40px min(30px, calc(30 / 1920 * 100svw));
    min-height: 182px;
  }
  .home-service-list__item.is-digital-ad,
  .home-service-list__item.is-creative,
  .home-service-list__item.is-sns {
    grid-column: 1/3;
  }
  .home-service-list__item-head {
    display: grid;
    align-content: center;
    border-right: 1px solid #d0d0d0;
  }
  .home-service-list__item-head-num {
    font-size: 1.4rem;
  }
  .home-service-list__item-head-main {
    margin-top: 5px;
    font-size: 2.1rem;
  }
  .home-service-list__item-head-main span {
    font-size: 1.6rem;
  }
}

.home-service-child {
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0.04em;
}
.home-service-child__item {
  display: flex;
}
.home-service-child__item-link {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 10px;
  border-radius: 999px;
  background-color: #fff;
}
@media all and (max-width: 767px) {
  .home-service-child {
    font-size: 1.2rem;
    display: grid;
    grid-template-columns: repeat(2, auto) repeat(2, calc(25% - 3.75px));
    gap: 6px 5px;
  }
  .home-service-child__item {
    grid-column: 1/3;
  }
  .home-service-child__item:nth-of-type(even) {
    grid-column: 3/5;
  }
  .home-service-child__item.is-listing {
    grid-column: 1/2;
    min-width: unset;
  }
  .home-service-child__item.is-google-shopping {
    grid-column: 2/5;
  }
  .home-service-child__item.is-ec-shopify,
  .home-service-child__item.is-ec-futuershop {
    grid-column: 1/5;
  }
}
@media all and (min-width: 768px) {
  .home-service-child {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    padding-left: min(40px, calc(40 / 1920 * 100svw));
    margin: 0 -8px -10px 0;
  }
  .home-service-child__item {
    margin: 0 8px 10px 0;
  }
  .home-service-child__item-link {
    padding: 8px 20px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-service-child__item-link {
    transition: all 0.3s ease;
  }
  .home-service-child__item-link:hover,
  .home-service-child__item-link:focus-visible {
    background-color: rgb(var(--black));
    color: #fff;
  }
}

/* .home-creative
================================================== */
.home-creative {
  background:
    url(../img/home/bg_creative01.png) no-repeat left top/264px,
    url(../img/home/bg_creative01.png) no-repeat right bottom/207px;
  background-color: #fff;
  padding: 60px 0;
}
.home-creative__list {
  gap: 30px !important;
}
@media all and (min-width: 768px) {
  .home-creative {
    padding: 120px 0;
    background-size: 681px, 409px;
  }
  .home-creative__list {
    gap: 60px 25px !important;
  }
}

/* .home-testimonial
================================================== */
.home-testimonial {
  position: relative;
  overflow: hidden;
}
.home-testimonial__inner {
  position: relative;
  padding-top: 60px;
  padding-bottom: 80px;
}
@media all and (min-width: 768px) {
  .home-testimonial::before {
    height: 662px;
  }
  .home-testimonial__inner {
    padding-top: 120px;
    padding-bottom: 75px;
  }
  .home-testimonial__btn {
    margin-top: 10px;
  }
}

.home-testimonial-slider__item {
  display: flex !important;
  width: auto !important;
  padding: 0 7px;
}
.home-testimonial-slider__item-in {
  position: relative;
  display: block;
  width: 315px !important;
  background-color: #fff;
}
.home-testimonial-slider__item-content {
  padding: 26px 22px 70px;
}
.home-testimonial-slider__item-logo {
  margin-bottom: 15px;
}
.home-testimonial-slider__item-logo img {
  height: 30px;
}
.home-testimonial-slider__item-head {
  margin-bottom: 10px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-testimonial-slider__item-cat {
  position: absolute;
  bottom: 30px;
  left: 22px;
  right: 22px;
  color: #858585;
  font-size: 1.2rem;
  line-height: var(--line_height_head);
  display: flex;
  flex-wrap: wrap;
  margin-right: -10px;
}
.home-testimonial-slider__item-cat-item {
  margin-right: 10px;
}
.home-testimonial-slider .slick-list {
  overflow: visible !important;
}
.home-testimonial-slider .slick-track {
  display: flex;
}
.home-testimonial-slider .slick-slide {
  height: auto !important;
  display: flex;
}
.home-testimonial-slider .slick-slide > div {
  display: flex;
}
.home-testimonial-slider .slick-arrow {
  position: absolute;
  top: 285px;
  z-index: 1;
  text-indent: -9999px;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid;
  background-color: currentColor;
  box-sizing: border-box;
}
.home-testimonial-slider .slick-arrow::after {
  display: inline-block;
  width: 7px;
  height: 11px;
  vertical-align: middle;
  color: #fff;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  margin-left: 1px;
}
.home-testimonial-slider .slick-arrow.slick-prev {
  left: 0;
  transform: scaleX(-1);
}
.home-testimonial-slider .slick-arrow.slick-next {
  right: 0;
}
.home-testimonial-slider .slick-dots {
  margin-top: 20px;
  display: flex;
  justify-content: center;
}
.home-testimonial-slider .slick-dots li {
  margin: 0 5px;
}
.home-testimonial-slider .slick-dots li.slick-active button {
  background: rgb(var(--black));
}
.home-testimonial-slider .slick-dots button {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  text-indent: -9999px;
  background: #d9d9d9;
  transition: background 0.3s ease;
}
@media all and (min-width: 768px) {
  .home-testimonial-slider__item {
    padding: 0 12px;
  }
  .home-testimonial-slider__item-in {
    width: 350px !important;
  }
  .home-testimonial-slider__item-content {
    padding: 30px 25px 70px;
  }
  .home-testimonial-slider__item-logo img {
    height: 40px;
  }
  .home-testimonial-slider__item-head {
    font-size: 2.1rem;
  }
  .home-testimonial-slider__item-cat {
    bottom: 25px;
    left: 25px;
    right: 25px;
    font-size: 1.4rem;
    margin-right: -8px;
  }
  .home-testimonial-slider__item-cat-item {
    margin-right: 8px;
  }
  .home-testimonial-slider .slick-arrow {
    display: none !important;
  }
  .home-testimonial-slider .slick-dots {
    margin-top: 22px;
  }
  .home-testimonial-slider .slick-dots button {
    width: 9px;
    height: 9px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-testimonial-slider .slick-arrow {
    transition: all 0.3s ease;
  }
  .home-testimonial-slider .slick-arrow::after {
    transition: color 0.3s ease;
  }
  .home-testimonial-slider .slick-arrow:hover,
  .home-testimonial-slider .slick-arrow:focus-visible {
    background-color: #fff;
    border-color: #fff;
  }
  .home-testimonial-slider .slick-arrow:hover::after,
  .home-testimonial-slider .slick-arrow:focus-visible::after {
    color: currentColor;
  }
  .home-testimonial-slider .slick-dots button:hover,
  .home-testimonial-slider .slick-dots button:focus-visible {
    background: rgb(var(--black));
  }
}

/* .home-method
================================================== */
.home-method {
  background-color: #fff;
}
.home-method__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media all and (min-width: 768px) {
  .home-method__inner {
    padding-top: 120px;
    padding-bottom: 120px;
  }
}

.home-method-list {
  position: relative;
  z-index: 1;
}
.home-method-list__item {
  margin-top: 10px;
}
.home-method-list__item-in {
  position: relative;
  display: block;
  padding: 40px 30px;
}
.home-method-list__item-bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
.home-method-list__item-bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.home-method-list__item-cat {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 15px;
  margin-right: -5px;
}
.home-method-list__item-cat-item {
  margin-right: 5px;
  padding: 5px 15px;
  background-color: #565656;
  color: #fff;
}
.home-method-list__item-head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-method-list__item-tag {
  margin-top: 30px;
  color: #858585;
  font-size: 1.2rem;
  line-height: var(--line_height_head);
  display: flex;
  flex-wrap: wrap;
  margin-right: -20px;
}
.home-method-list__item-tag-item {
  margin-right: 20px;
}
.home-method-list__item-volume {
  color: #858585;
  font-size: 1.2rem;
  line-height: var(--line_height_wide);
}
@media all and (min-width: 768px) {
  .home-method-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 30px;
  }
  .home-method-list__item {
    margin-top: 0;
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 4;
    gap: 0 0;
  }
  .home-method-list__item-in {
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 4;
    padding: 60px 40px;
  }
  .home-method-list__item-cat {
    font-size: 1.6rem;
    margin-bottom: 30px;
  }
  .home-method-list__item-cat-item {
    padding: 4px 20px;
  }
  .home-method-list__item-head {
    font-size: 2.8rem;
  }
  .home-method-list__item-tag {
    font-size: 1.4rem;
    margin-right: -8px;
  }
  .home-method-list__item-tag-item {
    margin-right: 8px;
  }
  .home-method-list__item-volume {
    margin-top: 5px;
    font-size: 1.4rem;
  }
}
@media all and (min-width: 768px) and (max-width: 1239px) {
  .home-method-list__item-head {
    font-size: 2.4rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-method-list__item-in {
    transition: color 0.3s ease;
  }
  .home-method-list__item-in:hover,
  .home-method-list__item-in:focus-visible {
    color: rgb(var(--main));
  }
}

/* .home-company
================================================== */
.home-company {
  position: relative;
}
.home-company__bg {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 63.2%;
}
.home-company__bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.home-company__inner {
  position: relative;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media all and (min-width: 768px) {
  .home-company__inner {
    padding-top: 120px;
    padding-bottom: 150px;
  }
}

.home-company-list__item {
  margin-top: 15px;
}
.home-company-list__item-in {
  display: block;
  padding-bottom: 15px;
  border-bottom: 1px solid #e4e4e4;
}
.home-company-list__item-img {
  margin-bottom: 15px;
}
.home-company-list__item-img img {
  display: block;
  width: 100%;
}
.home-company-list__item-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-company-list__item-btn-ico {
  position: relative;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: currentColor;
  box-sizing: border-box;
}
.home-company-list__item-btn-ico::after {
  display: inline-block;
  width: 7px;
  height: 11px;
  vertical-align: middle;
  color: #fff;
  background: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  content: "";
  margin-left: 1px;
}
@media all and (min-width: 768px) {
  .home-company-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 31px;
  }
  .home-company-list__item {
    margin-top: 0;
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 2;
    gap: 0;
  }
  .home-company-list__item-in {
    display: grid;
    grid-template-rows: subgrid;
    align-items: start;
    grid-row: span 2;
    padding-bottom: 32px;
  }
  .home-company-list__item-img {
    margin-bottom: 30px;
  }
  .home-company-list__item-btn {
    font-size: 2.4rem;
  }
  .home-company-list__item-btn-ico {
    width: 37px;
    height: 37px;
  }
  .home-company-list__item-btn-ico::after {
    display: inline-block;
    width: 8px;
    height: 13px;
    vertical-align: middle;
    color: #fff;
    background: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 11 18"><path d="m0 1.77 6.9 6.9L0 15.55l1.77 1.76 8.66-8.66L1.77 0 0 1.77Z"/></svg>');
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    content: "";
    margin-left: 2px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-company-list__item-in:hover .home-company-list__item-btn-ico,
  .home-company-list__item-in:focus-visible .home-company-list__item-btn-ico {
    background-color: #fff;
  }
  .home-company-list__item-in:hover .home-company-list__item-btn-ico::after,
  .home-company-list__item-in:focus-visible
    .home-company-list__item-btn-ico::after {
    color: currentColor;
  }
  .home-company-list__item-btn-ico {
    transition: background-color 0.3s ease;
  }
  .home-company-list__item-btn-ico::after {
    transition: color 0.3s ease;
  }
}

/* .home-syllabus
================================================== */
.home-syllabus {
  position: relative;
  color: #fff;
}
.home-syllabus__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media all and (min-width: 768px) {
  .home-syllabus__inner {
    padding-top: 150px;
    padding-bottom: 150px;
  }
}

.home-syllabus-list__item {
  margin-top: 30px;
}
.home-syllabus-list__item-in {
  display: block;
}
.home-syllabus-list__item-img {
  margin-bottom: 20px;
}
.home-syllabus-list__item-img img {
  display: block;
  width: 100%;
}
.home-syllabus-list__item-cat {
  margin: 0 -6px 9px 0;
  display: flex;
  flex-wrap: wrap;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-syllabus-list__item-cat-item {
  margin: 0 6px 6px 0;
  padding: 3px 20px;
  border: 1px solid;
  border-radius: 999px;
}
.home-syllabus-list__item-head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-syllabus-list__item-date {
  margin-top: 15px;
  font-size: 1.3rem;
  opacity: 0.35;
}
@media all and (min-width: 768px) {
  .home-syllabus-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 60px 25px;
  }
  .home-syllabus-list__item {
    margin-top: 0;
  }
  .home-syllabus-list__item-img {
    margin-bottom: 37px;
  }
  .home-syllabus-list__item-cat {
    margin: 0 -8px 6px 0;
    font-size: 1.4rem;
  }
  .home-syllabus-list__item-cat-item {
    margin: 0 8px 8px 0;
    padding: 5px 20px;
  }
  .home-syllabus-list__item-head {
    font-size: 2rem;
  }
  .home-syllabus-list__item-date {
    margin-top: 22px;
    font-size: 1.4rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-syllabus-list__item-head {
    transition: color 0.3s ease;
  }
  .home-syllabus-list__item-in:hover .home-syllabus-list__item-head,
  .home-syllabus-list__item-in:focus-visible .home-syllabus-list__item-head {
    color: rgb(var(--main));
  }
}

/* .home-news
================================================== */
.home-news {
  background-color: #fff;
}
.home-news__inner {
  padding-top: 60px;
  padding-bottom: 80px;
}
@media all and (min-width: 768px) {
  .home-news__inner {
    padding-top: 120px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: calc(229px + 11.22%) auto;
  }
}

.home-news-list::before {
  content: "";
  display: block;
  background: #d0d0d0
    linear-gradient(to right, rgb(var(--main)) 58px, transparent 58px);
  width: 100%;
  height: 1px;
}
.home-news-list__item::after {
  content: "";
  display: block;
  background: #d0d0d0
    linear-gradient(to right, rgb(var(--main)) 58px, transparent 58px);
  width: 100%;
  height: 1px;
}
.home-news-list__item-in {
  display: block;
  padding: 27px 0 22px;
}
.home-news-list__item-meta {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 5px;
}
.home-news-list__item-date {
  margin: 0 10px 0 0;
  padding: 5px 0;
  color: #858585;
  font-size: 1.2rem;
}
.home-news-list__item-cat {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin: 0 -5px -5px 0;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.home-news-list__item-cat-item {
  margin: 0 5px 5px 0;
  padding: 1px 12px 2px;
  background-color: rgb(var(--black));
  color: #fff;
}
.home-news-list__item-head {
  line-height: var(--line_height_head);
  font-weight: 700;
}
@media all and (min-width: 768px) {
  .home-news-list::before {
    background-image: linear-gradient(
      to right,
      rgb(var(--main)) 40px,
      transparent 40px
    );
  }
  .home-news-list__item::after {
    background-image: linear-gradient(
      to right,
      rgb(var(--main)) 40px,
      transparent 40px
    );
  }
  .home-news-list__item-in {
    display: flex;
    padding: 30px 0;
  }
  .home-news-list__item-meta {
    margin-bottom: 0;
    margin-right: 20px;
  }
  .home-news-list__item-date {
    margin-right: 10px;
    padding-top: 7px;
    font-size: 1.4rem;
  }
  .home-news-list__item-cat {
    margin: 0 -10px -10px 0;
  }
  .home-news-list__item-cat-item {
    margin: 0 10px 10px 0;
    padding: 4px 10px;
    font-size: 1.4rem;
  }
  .home-news-list__item-head {
    font-size: 1.8rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .home-news-list__item-head {
    transition: color 0.3s ease;
  }
  .home-news-list__item-in:hover .home-news-list__item-head,
  .home-news-list__item-in:focus-visible .home-news-list__item-head {
    color: rgb(var(--main));
  }
}

/* en
================================================ */
@media all and (min-width: 768px) {
  html[lang="en"] .home-news__inner {
    grid-template-columns: calc(300px + 11.22%) auto;
  }
  html[lang="en"] .home-news__head .c-head05__main {
    font-size: 4rem;
  }
}

/* message-content
============================================ */
.message-content__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.message-content__img {
  width: 180px;
  margin: 0 auto 30px;
}
.message-content__txt {
  letter-spacing: 0.03em;
}
.message-content__txt + .message-content__txt {
  margin-top: 23px;
}
.message-content__name {
  margin-top: 18px;
  text-align: right;
  letter-spacing: 0.03em;
}
.message-content__name .is-img {
  display: inline-block;
  vertical-align: middle;
  width: 150px;
}
@media all and (max-width: 767px) {
  .message-content__inner {
    padding-right: 30px;
    padding-left: 30px;
  }
}
@media all and (min-width: 768px) {
  .message-content__inner {
    padding-top: 100px;
    padding-bottom: 180px;
  }
  .message-content__box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .message-content__img {
    flex-basis: 300px;
    margin: 0;
  }
  .message-content__area-txt {
    flex-basis: calc(100% - 360px);
  }
  .message-content__txt {
    letter-spacing: 0.05em;
  }
  .message-content__txt + .message-content__txt {
    margin-top: 30px;
  }
  .message-content__name {
    margin-top: 25px;
  }
  .message-content__name .is-img {
    width: 201px;
    margin-left: 12px;
    transform: translateY(5px);
  }
}

/* .news-archive
================================================ */
.news-archive__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.news-archive__archive {
  padding-top: 15px;
}
@media all and (min-width: 768px) {
  .news-archive__inner {
    padding-top: 100px;
    padding-bottom: 120px;
  }
  .news-archive__archive {
    padding-top: 60px;
    margin-bottom: -20px !important;
  }
}

/* .news-single
================================================ */
.news-single__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .news-single__inner {
    padding-top: 110px;
    padding-bottom: 60px;
  }
}

/* .news-other
================================================ */
.news-other__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .news-other__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

/* origin-content
=========================================== */
.origin-content {
  position: relative;
  overflow: hidden;
}
.origin-content__inner {
  padding-top: 88px;
  padding-bottom: 50px;
  position: relative;
}
.origin-content__box {
  padding: 0 10px;
}
.origin-content__area-head {
  position: relative;
  margin-bottom: 60px;
}
.origin-content__head {
  width: 227px;
  margin: 0 auto;
}
.origin-content__head-deco {
  position: absolute;
  top: 100px;
  right: -95px;
  z-index: -1;
  width: 497px;
  height: 311px;
  background: url(../img/company/origin/bg_digimarl01_sp.png) no-repeat 0 0 /
    contain;
}
.origin-content__sub {
  display: flex;
  flex-direction: column;
  margin-bottom: 13px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.origin-content__sub-ico {
  position: relative;
  width: 12px;
  height: 12px;
  margin: 3px auto;
}
.origin-content__sub-ico:before,
.origin-content__sub-ico:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 2px;
  height: 15px;
  background: currentColor;
}
.origin-content__sub-ico:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.origin-content__txt {
  letter-spacing: 0.03em;
}
.origin-content__txt + .origin-content__txt {
  margin-top: 24px;
}
@media all and (min-width: 768px) {
  .origin-content__inner {
    padding-top: 100px;
    padding-bottom: 130px;
  }
  .origin-content__box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    padding: 0;
  }
  .origin-content__area-head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    margin: 0;
    padding-left: 130px;
    box-sizing: border-box;
  }
  .origin-content__head {
    width: 420px;
    margin: 0;
  }
  .origin-content__head-deco {
    top: -126px;
    right: -220px;
    width: 323px;
    height: 323px;
    background: url(../img/company/origin/bg_digimarl01_pc.png) no-repeat 0 0 /
      contain;
  }
  .origin-content__area-txt {
    width: 50%;
  }
  .origin-content__sub {
    flex-direction: row;
    align-items: center;
    margin-bottom: 20px;
    font-size: 2.5rem;
    letter-spacing: 0.02em;
  }
  .origin-content__sub-ico {
    margin: 0 10px;
  }
  .origin-content__sub-ico:before,
  .origin-content__sub-ico:after {
    width: 3px;
    height: 20px;
  }
  .origin-content__txt {
    letter-spacing: 0.05em;
  }
  .origin-content__txt + .origin-content__txt {
    margin-top: 30px;
  }
}
@media all and (min-width: 1580px) {
  .origin-content__sub {
    font-size: 3.2rem;
  }
  .origin-content__sub-ico {
    margin: 0 15px;
  }
  .origin-content__sub-ico:before,
  .origin-content__sub-ico:after {
    width: 5px;
    height: 25px;
  }
}

#philosophy main {
  overflow: hidden;
}

#philosophy .l-breadcrumb-list {
  border-bottom: none;
}

/* philosophy-intro
=========================================== */
.philosophy-intro {
  position: relative;
  z-index: 1;
  margin-top: -1px;
}
.philosophy-intro:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/philosophy/bg_intro01_sp.jpg) no-repeat 0 0 / cover;
}
.philosophy-intro__inner {
  padding-top: 50px;
  padding-bottom: 45px;
}
.philosophy-intro__inner::after {
  content: "";
  background: url(../img/common/bg_bit03_pc.png) no-repeat center top/100% auto;
  position: absolute;
  top: 0;
  right: 20px;
  width: 42px;
  height: 36px;
  -webkit-animation: frame5BitAnim 2s steps(4) infinite;
  animation: frame5BitAnim 2s steps(4) infinite;
}
.philosophy-intro__box {
  position: relative;
  box-sizing: border-box;
  padding: 0 10px;
}
.philosophy-intro__head {
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.philosophy-intro__txt {
  margin-top: 17px;
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .philosophy-intro:before {
    background: url(../img/philosophy/bg_intro01_pc.jpg) no-repeat 0 0 / cover;
    width: 88.54%;
    height: 623px;
    min-width: 1700px;
  }
  .philosophy-intro__inner {
    position: relative;
    padding-top: 160px;
    padding-bottom: 160px;
  }
  .philosophy-intro__inner::after {
    right: 154px;
    width: 118px;
    height: 101px;
  }
  .philosophy-intro__box {
    padding: 0;
  }
  .philosophy-intro__box:before {
    top: -160px;
    right: -20px;
    width: 100px;
    height: 100px;
  }
  .philosophy-intro__head {
    font-size: 3.8rem;
    letter-spacing: 0.02em;
  }
  .philosophy-intro__txt {
    margin-top: 15px;
    letter-spacing: 0.05em;
  }
}
@media all and (min-width: 1200px) {
  .philosophy-intro__inner:before {
    width: 100vw;
    margin-right: 50px;
    margin-left: calc(50% - 50vw);
  }
}
@media all and (min-width: 1580px) {
  .philosophy-intro__box {
    max-width: 1290px;
  }
}

/* philosophy-digimarl
=========================================== */
.philosophy-digimarl {
  position: relative;
}
.philosophy-digimarl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #fff;
}
.philosophy-digimarl__inner {
  padding-top: 111px;
  padding-bottom: 91px;
  position: relative;
}
.philosophy-digimarl__inner::before {
  position: absolute;
  content: "";
  top: 220px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 497px;
  height: 311px;
  background: url(../img/philosophy/bg_digimarl01_sp.png) no-repeat 0 0 /
    contain;
}
.philosophy-digimarl__box {
  padding: 0 10px;
}
.philosophy-digimarl__area-head {
  position: relative;
  margin-bottom: 24px;
}
.philosophy-digimarl__head {
  width: 227px;
  margin: 0 auto;
}
.philosophy-digimarl__head-deco {
  position: absolute;
  top: -160px;
  right: -43px;
  z-index: -1;
  width: 134px;
  height: 134px;
  background: url(../img/philosophy/bg_digimarl02_sp.png) no-repeat 0 0 /
    contain;
}
.philosophy-digimarl__sub {
  display: flex;
  flex-direction: column;
  margin-bottom: 13px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
}
.philosophy-digimarl__sub-ico {
  position: relative;
  width: 12px;
  height: 12px;
  margin: 3px auto;
}
.philosophy-digimarl__sub-ico:before,
.philosophy-digimarl__sub-ico:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 2px;
  height: 15px;
  background: currentColor;
}
.philosophy-digimarl__sub-ico:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.philosophy-digimarl__txt {
  letter-spacing: 0.03em;
}
.philosophy-digimarl__txt + .philosophy-digimarl__txt {
  margin-top: 24px;
}
@media all and (min-width: 768px) {
  .philosophy-digimarl__inner {
    padding-top: 165px;
    padding-bottom: 165px;
  }
  .philosophy-digimarl__inner::before {
    display: none;
  }
  .philosophy-digimarl__box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    padding: 0;
  }
  .philosophy-digimarl__area-head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
    margin: 0;
    padding-left: 130px;
    box-sizing: border-box;
  }
  .philosophy-digimarl__head {
    width: 420px;
    margin: 0;
  }
  .philosophy-digimarl__head-deco {
    top: -126px;
    right: -220px;
    width: 323px;
    height: 323px;
    background: url(../img/philosophy/bg_digimarl01_pc.png) no-repeat 0 0 /
      contain;
  }
  .philosophy-digimarl__area-txt {
    width: 50%;
  }
  .philosophy-digimarl__sub {
    flex-direction: row;
    align-items: center;
    margin-bottom: 20px;
    font-size: 2.5rem;
    letter-spacing: 0.02em;
  }
  .philosophy-digimarl__sub-ico {
    margin: 0 10px;
  }
  .philosophy-digimarl__sub-ico:before,
  .philosophy-digimarl__sub-ico:after {
    width: 3px;
    height: 20px;
  }
  .philosophy-digimarl__txt {
    letter-spacing: 0.05em;
  }
  .philosophy-digimarl__txt + .philosophy-digimarl__txt {
    margin-top: 30px;
  }
}
@media all and (min-width: 1580px) {
  .philosophy-digimarl__sub {
    font-size: 3.2rem;
  }
  .philosophy-digimarl__sub-ico {
    margin: 0 15px;
  }
  .philosophy-digimarl__sub-ico:before,
  .philosophy-digimarl__sub-ico:after {
    width: 5px;
    height: 25px;
  }
}

/* philosophy-sec
=========================================== */
.philosophy-sec {
  position: relative;
  padding: 90px 0;
  -webkit-clip-path: polygon(0 40px, 100% 0, 100% 100%, 0 calc(100% - 40px));
  clip-path: polygon(0 40px, 100% 0, 100% 100%, 0 calc(100% - 40px));
}
.philosophy-sec.is-vision:before {
  background: url(../img/philosophy/bg_vision01_sp.jpg) no-repeat 0 0 / cover;
}
.philosophy-sec.is-value {
  margin-top: -45px;
}
.philosophy-sec.is-value:before {
  background: url(../img/philosophy/bg_value01_sp.jpg) no-repeat 0 0 / cover;
}
.philosophy-sec:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.philosophy-sec__inner {
  position: relative;
  z-index: 1;
  padding-right: 30px;
  padding-left: 30px;
  background: rgba(255, 255, 255, 0.8);
}
.philosophy-sec__box {
  box-sizing: border-box;
  margin-right: -20px;
  padding-top: 50px;
  padding-bottom: 50px;
}
.philosophy-sec__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 19px;
}
.philosophy-sec__head-main {
  margin-right: 20px;
  line-height: 1.5;
  font-size: 2.4rem;
}
.philosophy-sec__head-num {
  display: inline-block;
  color: rgb(var(--gray));
  font-size: 1rem;
  letter-spacing: 0.05em;
}
.philosophy-sec__head-num-txt.is-active {
  color: rgb(var(--main));
}
.philosophy-sec__head-num-txt + .philosophy-sec__head-num-txt:before {
  content: "-";
  margin: 0 2px;
}
@media all and (min-width: 768px) {
  .philosophy-sec {
    padding: 0;
    -webkit-clip-path: polygon(
      0 100px,
      100% 0,
      100% 100%,
      0 calc(100% - 100px)
    );
    clip-path: polygon(0 100px, 100% 0, 100% 100%, 0 calc(100% - 100px));
  }
  .philosophy-sec.is-vision:before {
    background: url(../img/philosophy/bg_vision01_pc.png) no-repeat 0 0 / cover;
  }
  .philosophy-sec.is-vision .philosophy-sec__box {
    background: #f6f6f6;
  }
  .philosophy-sec.is-value {
    margin-top: -110px;
  }
  .philosophy-sec.is-value:before {
    background: url(../img/philosophy/bg_value01_pc.jpg) no-repeat 0 0 / cover;
  }
  .philosophy-sec:before {
    top: 0;
    height: 100%;
  }
  .philosophy-sec__inner {
    width: 62.5%;
    margin-left: auto;
    padding: 0;
  }
  .philosophy-sec__box {
    margin-right: 0;
    padding: 210px 0 195px 100px;
  }
  .philosophy-sec__head {
    margin-bottom: 28px;
  }
  .philosophy-sec__head-main {
    margin-right: 60px;
    font-size: 3.8rem;
  }
  .philosophy-sec__head-num {
    font-size: 1.2rem;
  }
  .philosophy-sec__head-num-txt + .philosophy-sec__head-num-txt:before {
    margin: 0 8px;
  }
}

/* philosophy-sec-list
-------------------------------------------------- */
.philosophy-sec-list {
  display: flex;
  flex-wrap: nowrap;
  white-space: nowrap;
  overflow: auto;
  padding-bottom: 40px;
}
.philosophy-sec-list__item {
  min-width: 275px;
  margin-right: 20px;
  padding-top: 20px;
  border-top: 1px solid rgb(var(--black));
}
.philosophy-sec-list__item-head {
  white-space: normal;
  margin-bottom: 5px;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
}
.philosophy-sec-list__item-head span {
  display: block;
  font-size: 1.2rem;
}
.philosophy-sec-list__item-txt {
  white-space: normal;
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .philosophy-sec-list {
    padding-right: 30px;
    scrollbar-width: thin;
    scrollbar-color: rgb(var(--gray)) rgba(var(--black), 0.1);
  }
  .philosophy-sec-list::-webkit-scrollbar {
    width: 0;
    height: 10px;
  }
  .philosophy-sec-list::-webkit-scrollbar-track {
    background: rgba(var(--black), 0.1);
  }
  .philosophy-sec-list::-webkit-scrollbar-thumb {
    background: rgb(var(--gray));
    border-radius: 500px;
    width: 130px;
  }
  .philosophy-sec-list__item {
    min-width: 590px;
    margin-right: 60px;
    padding-top: 50px;
  }
  .philosophy-sec-list__item-head {
    margin-bottom: 15px;
    font-size: 2.4rem;
  }
  .philosophy-sec-list__item-head span {
    display: inline-block;
    font-size: 1.4rem;
  }
  .philosophy-sec-list__item-txt {
    letter-spacing: 0.05em;
  }
}

/* philosophy-identity
========================================== */
.philosophy-identity {
  position: relative;
}
.philosophy-identity:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/philosophy/bg_identity01_sp.jpg) no-repeat 0 0 / cover;
}
.philosophy-identity__inner {
  padding-top: 80px;
  padding-bottom: 95px;
}
.philosophy-identity__box {
  padding: 0 10px;
}
.philosophy-identity__head {
  margin-bottom: 19px;
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.philosophy-identity__note {
  margin-bottom: 30px;
}
.philosophy-identity__sub {
  margin-bottom: 20px;
  line-height: 1.5;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
.philosophy-identity__txt {
  letter-spacing: 0.03em;
}
.philosophy-identity__txt + .philosophy-identity__txt {
  margin-top: 24px;
}
@media all and (min-width: 768px) {
  .philosophy-identity:before {
    background: url(../img/philosophy/bg_identity01_pc.jpg) no-repeat 0 0 /
      cover;
  }
  .philosophy-identity__inner {
    padding-top: 187px;
    padding-bottom: 242px;
  }
  .philosophy-identity__box {
    display: flex;
    flex-wrap: wrap;
    max-width: 701px;
    margin-left: auto;
    padding: 0;
  }
  .philosophy-identity__head {
    width: 100%;
    margin-bottom: 20px;
    font-size: 3.8rem;
  }
  .philosophy-identity__note {
    width: 100%;
    margin-bottom: 28px;
    font-size: 1.3rem;
  }
  .philosophy-identity__col:first-of-type {
    max-width: 210px;
    margin-right: 30px;
  }
  .philosophy-identity__sub {
    font-size: 2.4rem;
  }
  .philosophy-identity__txt + .philosophy-identity__txt {
    margin-top: 28px;
  }
}

/* philosophy-message
============================================ */
.philosophy-message__inner {
  padding-top: 50px;
  padding-bottom: 60px;
}
.philosophy-message__head {
  margin-bottom: 19px;
  line-height: 1.5;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}
.philosophy-message__img {
  width: 180px;
  margin: 0 auto 30px;
}
.philosophy-message__txt {
  letter-spacing: 0.03em;
}
.philosophy-message__txt + .philosophy-message__txt {
  margin-top: 23px;
}
.philosophy-message__name {
  margin-top: 18px;
  text-align: right;
  letter-spacing: 0.03em;
}
.philosophy-message__name .is-img {
  display: inline-block;
  vertical-align: middle;
  width: 150px;
}
@media all and (max-width: 767px) {
  .philosophy-message__inner {
    padding-right: 30px;
    padding-left: 30px;
  }
}
@media all and (min-width: 768px) {
  .philosophy-message__inner {
    padding-top: 79px;
    padding-bottom: 180px;
  }
  .philosophy-message__head {
    margin-bottom: 28px;
    font-size: 3.8rem;
  }
  .philosophy-message__box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .philosophy-message__img {
    width: 20.2702702703%;
    margin: 0;
  }
  .philosophy-message__area-txt {
    width: 75.6756756757%;
  }
  .philosophy-message__txt {
    letter-spacing: 0.05em;
  }
  .philosophy-message__txt + .philosophy-message__txt {
    margin-top: 30px;
  }
  .philosophy-message__name {
    margin-top: 25px;
  }
  .philosophy-message__name .is-img {
    width: 201px;
    margin-left: 12px;
    transform: translateY(5px);
  }
}

#purpose .l-sub-img__inner {
  padding-left: 30px;
  padding-right: 30px;
}
#purpose .l-sub-img__inner .l-sub-img__head {
  margin-bottom: 13px;
  letter-spacing: 0;
}
@media all and (min-width: 768px) {
  #purpose .l-sub-img__inner {
    padding-left: 50px;
  }
}

/* .purpose-content-first
======================================= */
.purpose-content-first__inner {
  padding-top: 50px;
  padding-bottom: 32px;
}
.purpose-content-first__head-main {
  font-size: 3rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  text-align: center;
  letter-spacing: 0.1em;
}
.purpose-content-first__copy {
  font-size: 2rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
@media all and (max-width: 767px) {
  .purpose-content-first__copy {
    margin-top: 30px;
  }
}
@media all and (min-width: 768px) {
  .purpose-content-first__inner {
    padding-top: 95px;
    padding-bottom: 60px;
  }
  .purpose-content-first__head-main {
    font-size: 4rem;
  }
}

/* .purpose-content-second
======================================= */
.purpose-content-second__inner {
  position: relative;
  padding-bottom: 50px;
}
.purpose-content-second__inner::before,
.purpose-content-second__inner::after {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  background: url(../img/company/purpose/bg_purpose01.png) no-repeat center
    center/contain;
}
.purpose-content-second__inner::before {
  top: -27px;
  left: 0;
}
.purpose-content-second__inner::after {
  top: 470px;
  right: 0;
  background-image: url(../img/company/purpose/bg_purpose02.png);
}
.purpose-content-second__txt + .purpose-content-second__txt {
  margin-top: 24px;
}
.purpose-content-second__txt-str {
  font-weight: 700;
}
.purpose-content-second__img {
  margin: 26px -10px 0;
  padding: 20px 10px;
  border: 1px solid #cfcfcf;
}
@media all and (min-width: 768px) {
  .purpose-content-second {
    text-align: center;
  }
  .purpose-content-second__inner {
    padding-bottom: 130px;
  }
  .purpose-content-second__inner::before,
  .purpose-content-second__inner::after {
    width: 200px;
    height: 200px;
  }
  .purpose-content-second__inner::before {
    top: 50px;
    left: -200px;
  }
  .purpose-content-second__inner::after {
    top: 493px;
    right: -200px;
  }
  .purpose-content-second__txt {
    text-align: left;
  }
  .purpose-content-second__txt + .purpose-content-second__txt {
    margin-top: 30px;
  }
  .purpose-content-second__img {
    margin-top: 53px;
    padding: 60px 100px;
  }
}

.recruit-line {
  border-top: 1px solid rgb(var(--black));
}

/* .recruit-search
================================================ */
.recruit-search__inner {
  padding-top: 50px;
}
.recruit-search__con {
  border-style: solid;
  border-width: 1px 0;
  padding: 30px 10px;
}
.recruit-search__head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
@media all and (min-width: 768px) {
  .recruit-search__inner {
    padding-top: 114px;
  }
  .recruit-search__con {
    padding: 40px 60px;
  }
  .recruit-search__head {
    font-size: 2.4rem;
  }
}

.recruit-search-sec__head {
  font-size: 1.4rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0.03em;
  margin-bottom: 14px;
}
.recruit-search-sec__wrap {
  display: grid;
  gap: 30px;
  position: relative;
}
@media all and (min-width: 768px) {
  .recruit-search-sec.is-sec01 {
    grid-area: sec01;
  }
  .recruit-search-sec.is-sec02 {
    grid-area: sec02;
  }
  .recruit-search-sec.is-sec03 {
    grid-area: sec03;
  }
  .recruit-search-sec__head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 2rem;
    margin: 0 40px 0 0;
    min-height: 50px;
    min-width: 170px;
  }
  .recruit-search-sec__list {
    flex: 1;
  }
  .recruit-search-sec__wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "sec01 sec01" "sec02 sec03";
    gap: 30px 80px;
  }
}

/* .recruit-about
================================================ */
.recruit-about {
  position: relative;
  z-index: 1;
}
.recruit-about__deco {
  position: absolute;
  z-index: -1;
}
.recruit-about__deco::before {
  content: "";
  display: block;
  padding-top: 100%;
}
.recruit-about__deco img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.recruit-about__deco.is-item01 {
  right: 30px;
  width: 76px;
}
.recruit-about__deco.is-item02 {
  top: 76px;
  right: -20px;
  width: 50px;
}
.recruit-about__deco.is-item03 {
  left: 0;
  bottom: 20px;
  width: 50px;
}
.recruit-about__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
.recruit-about__lead {
  box-sizing: border-box;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
  padding: 0 10px;
}
@media all and (min-width: 768px) {
  .recruit-about__deco.is-item01 {
    top: 153px;
    right: 0;
    width: 220px;
  }
  .recruit-about__deco.is-item02 {
    top: 427px;
    right: 9%;
    width: 171px;
  }
  .recruit-about__deco.is-item03 {
    left: 6%;
    bottom: 94px;
    width: 103px;
  }
  .recruit-about__inner {
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .recruit-about__lead {
    padding: 0;
    text-align: center;
  }
}

.recruit-about-sec {
  margin-top: 28px;
}
.recruit-about-sec + .recruit-about-sec {
  margin-top: 28px;
}
.recruit-about-sec__area-txt {
  box-sizing: border-box;
  margin-top: 20px;
  padding: 0 10px;
}
.recruit-about-sec__head {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 8px;
  line-height: var(--line_height_head);
}
.recruit-about-sec__txt {
  font-size: 1.2rem;
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .recruit-about-sec {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 52px;
  }
  .recruit-about-sec + .recruit-about-sec {
    margin-top: 60px;
  }
  .recruit-about-sec:nth-child(even) {
    flex-direction: row-reverse;
  }
  .recruit-about-sec__img {
    flex: 0 0 530px;
  }
  .recruit-about-sec__area-txt {
    flex: 0 0 530px;
    margin-top: 0;
    padding: 0;
  }
  .recruit-about-sec__head {
    font-size: 2.4rem;
  }
  .recruit-about-sec__txt {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
  }
}

/* .recruit-numbers
================================================ */
.recruit-numbers {
  background: url(../img/recruit/bg_numbers01_sp.png) no-repeat center/cover
    #fff;
}
.recruit-numbers__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
.recruit-numbers__con {
  box-sizing: border-box;
  display: grid;
  gap: 40px;
  padding: 0 10px;
}
.recruit-numbers-sec__head {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  letter-spacing: 0.1em;
  margin-bottom: 20px;
}
.recruit-numbers-sec__head::after {
  content: "";
  border-top: 1px solid #cfcfcf;
  flex: 1;
  margin-left: 10px;
}
.recruit-numbers-sec__img picture + picture {
  margin-top: 15px;
  display: inline-block;
}
@media all and (min-width: 768px) {
  .recruit-numbers {
    background-image: url(../img/recruit/bg_numbers01_pc.png);
  }
  .recruit-numbers__inner {
    padding-top: 130px;
    padding-bottom: 120px;
  }
  .recruit-numbers__con {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr auto;
    grid-template-areas: "sec01 sec02" "sec03 sec02";
    gap: 80px 40px;
    padding: 0;
  }
  .recruit-numbers-sec__head {
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
  .recruit-numbers-sec:nth-child(1) {
    grid-area: sec01;
  }
  .recruit-numbers-sec:nth-child(2) {
    grid-area: sec02;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .recruit-numbers-sec:nth-child(2) .recruit-numbers-sec__img {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .recruit-numbers-sec:nth-child(2)
    .recruit-numbers-sec__img
    picture
    + picture {
    margin-top: 40px;
  }
  .recruit-numbers-sec:nth-child(3) {
    grid-area: sec03;
  }
  .recruit-numbers__con > .recruit-search-sec.is-sec01 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .recruit-numbers__con > .recruit-search-sec.is-sec02 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .recruit-numbers__con > .recruit-search-sec.is-sec03 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
@media all and (min-width: 768px) {
  .recruit-search-sec.is-sec01 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .recruit-search-sec.is-sec02 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .recruit-search-sec.is-sec03 {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .recruit-numbers-sec:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  .recruit-numbers__con > .recruit-numbers-sec:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .recruit-numbers-sec:nth-child(2) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .recruit-numbers__con > .recruit-numbers-sec:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .recruit-numbers-sec:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  .recruit-numbers__con > .recruit-numbers-sec:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}

/*  .recruit-voice
================================================== */
.recruit-voice__inner {
  padding-top: 60px;
  padding-bottom: 60px;
}
.recruit-voice-slider .slick-dots {
  display: table;
  overflow: hidden;
  width: 100%;
  height: 4px;
  margin-top: 25px;
  background: #fff;
}
.recruit-voice-slider .slick-dots li {
  display: table-cell;
  height: 100%;
}
.recruit-voice-slider .slick-dots li button {
  display: block;
  background: currentColor;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  text-indent: -999px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.recruit-voice-slider .slick-dots li.slick-active button {
  opacity: 1;
}
.recruit-voice-slider__item {
  box-sizing: border-box;
  padding-right: 20px;
  width: 230px !important;
}
.recruit-voice-slider__img {
  margin-bottom: 15px;
  position: relative;
  width: 100%;
}
.recruit-voice-slider__img::before {
  content: "";
  display: block;
  padding-top: 39.0476190476%;
}
.recruit-voice-slider__img img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.recruit-voice-slider__info {
  color: rgb(var(--gray));
  font-size: 1.2rem;
  letter-spacing: 0.03em;
  line-height: var(--line_height_head);
  margin-bottom: 10px;
}
.recruit-voice-slider__head {
  border-bottom: 1px solid rgb(var(--border));
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 8px;
  padding-bottom: 14px;
}
.recruit-voice-slider__txt {
  letter-spacing: 0.03em;
}
@media all and (min-width: 768px) {
  .recruit-voice__inner {
    padding-top: 130px;
    padding-bottom: 130px;
  }
  .recruit-voice-slider {
    margin-right: -50px;
  }
  .recruit-voice-slider .slick-dots {
    margin-top: 70px;
  }
  .recruit-voice-slider__item {
    padding-right: 30px;
    width: 430px !important;
  }
  .recruit-voice-slider__img {
    margin-bottom: 30px;
  }
  .recruit-voice-slider__info {
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 1.8;
    margin-bottom: 20px;
  }
  .recruit-voice-slider__head {
    font-size: 2.4rem;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
  .recruit-voice-slider__txt {
    letter-spacing: 0.05em;
  }
}
@media all and (min-width: 1580px) {
  .recruit-voice-slider {
    margin-right: calc((var(--contents_width) - 100vw) / 2);
    margin-right: calc((var(--contents_width) - var(--vw, 1vw) * 100) / 2);
  }
}

/*  .recruit-office
================================================== */
.recruit-office {
  padding-bottom: 80px;
  background: #fff;
}
.recruit-office__inner {
  padding-top: 60px;
  padding-bottom: 40px;
}
.recruit-office__lead {
  box-sizing: border-box;
  font-size: 1.6rem;
  letter-spacing: 0.03em;
  padding: 0 10px;
  word-break: normal;
}
.recruit-office__img {
  display: flex;
  overflow: hidden;
}
.recruit-office__img-item {
  width: 1550px;
  height: 320px;
  -webkit-animation: recruit-office 40s infinite linear;
  animation: recruit-office 40s infinite linear;
}
.recruit-office__img-item img {
  width: 1550px;
  max-width: none;
}
@media all and (min-width: 768px) {
  .recruit-office {
    padding-bottom: 170px;
  }
  .recruit-office__inner {
    padding-top: 130px;
    padding-bottom: 60px;
  }
  .recruit-office__lead {
    text-align: center;
  }
  .recruit-office__img-item {
    width: 3100px;
    height: 640px;
    -webkit-animation: recruit-office 60s infinite linear;
    animation: recruit-office 60s infinite linear;
  }
  .recruit-office__img-item img {
    width: 3100px;
  }
}

@-webkit-keyframes recruit-office {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes recruit-office {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
/* .recruit-archive
================================================ */
.recruit-archive__inner {
  padding-top: 30px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .recruit-archive__inner {
    padding-top: 80px;
    padding-bottom: 130px;
  }
}

/* .recruit-cat-archive
================================================ */
.recruit-cat-archive__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .recruit-cat-archive__inner {
    padding-top: 100px;
    padding-bottom: 130px;
  }
}

/* .recruit-entry
================================================ */
.recruit-entry {
  position: relative;
}
.recruit-entry__link {
  background: url(../img/recruit/bg_entry01_sp.jpg) no-repeat center/cover;
  display: block;
  padding-top: 67px;
  padding-bottom: 76px;
}
.recruit-entry__btn {
  width: 100%;
  max-width: 275px;
  margin: 0 auto;
  box-sizing: border-box;
  display: block;
  width: 100%;
  padding: 15px 50px;
  background: rgba(255, 255, 255, 0.25);
  border: 1px solid #fff;
  text-align: center;
  color: #fff;
  letter-spacing: 0;
  font-weight: 700;
  position: relative;
}
.recruit-entry__btn-ico {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  width: 25px;
  height: 17px;
  margin-bottom: 2px;
}
.recruit-entry__btn-ico svg {
  transition: none !important;
}
@media all and (min-width: 768px) {
  .recruit-entry__link {
    background-image: url(../img/recruit/bg_entry01_pc.jpg);
    padding-top: 175px;
    padding-bottom: 175px;
  }
  .recruit-entry__txt {
    position: absolute;
    bottom: -5px;
    right: 40px;
    width: 423.5px;
  }
  .recruit-entry__btn {
    max-width: 440px;
    padding: 25px 60px;
    font-size: 2rem;
  }
  .recruit-entry__btn-ico {
    right: 25px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .recruit-entry__link {
    transition: all 0.3s ease;
  }
  .recruit-entry__link:hover {
    background-image: url(../img/recruit/bg_entry01_pc_hover.jpg);
  }
  .recruit-entry__link:hover .recruit-entry__btn {
    background: #fff;
    color: rgb(var(--black));
  }
}

/* .service-intro
================================================ */
.service-intro {
  overflow: hidden;
  padding-bottom: 60px;
  margin-top: -1px;
}
.service-intro__inner {
  position: relative;
  z-index: 1;
  padding-top: 50px;
}
.service-intro__head {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: var(--line_height_head);
  margin-bottom: 25px;
  text-align: center;
}
.service-intro__note {
  margin-top: 10px;
  font-size: 1.2rem;
  color: #ccc;
}
@media all and (min-width: 768px) {
  .service-intro {
    padding-bottom: 130px;
  }
  .service-intro__inner {
    padding-top: 100px;
  }
  .service-intro__img {
    margin: 0 -30px;
  }
  .service-intro__head {
    font-size: 3.2rem;
    margin-bottom: 50px;
  }
  .service-intro__note {
    text-align: right;
  }
}
@media all and (min-width: 1580px) {
  .service-intro__img {
    margin: 0 -63px;
  }
}

.service-intro-nav__item {
  width: 190px;
  height: 190px;
}
.service-intro-nav__item-in {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 10px 18px 5px;
  background: #fff;
  border-radius: 50%;
}
.service-intro-nav__item-head {
  margin-bottom: 5px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.service-intro-nav__item-txt {
  font-size: 1.2rem;
  word-break: break-word;
  line-height: var(--line_height_head);
}
.service-intro-nav__item-ico {
  margin-top: 12px;
  width: 22px;
  height: 15px;
  transform: rotate(90deg);
}
.service-intro-nav__item-ico svg {
  transition: none;
}
@media all and (max-width: 767px) {
  .service-intro-nav__item + .service-intro-nav__item {
    margin-top: 20px;
  }
}
@media all and (min-width: 768px) {
  .service-intro-nav {
    display: flex;
    justify-content: center;
    margin: 0 -35px;
  }
  .service-intro-nav__item {
    width: 320px;
    height: 320px;
    background: #fff;
    border-radius: 50%;
    margin: 0 35px;
  }
  .service-intro-nav__item-in {
    padding: 10px 20px;
  }
  .service-intro-nav__item-head {
    margin-bottom: 15px;
    font-size: 2.4rem;
  }
  .service-intro-nav__item-txt {
    font-size: 1.6rem;
  }
  .service-intro-nav__item-ico {
    position: absolute;
    left: 50%;
    bottom: 25px;
    margin: 0 0 0 -20px;
    width: 41px;
    height: 29px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .service-intro-nav__item-in {
    transition: all 0.3s ease;
  }
  .service-intro-nav__item-in:hover,
  .service-intro-nav__item-in:focus-visible {
    background: rgb(var(--main));
    color: #fff;
  }
}

/* .service-anchor
================================================ */
.service-anchor__inner {
  padding-bottom: 10px;
}
@media all and (min-width: 768px) {
  .service-anchor__inner {
    padding-bottom: 40px;
  }
}

/* .service-section
================================================ */
.service-section:first-of-type .service-section__inner::before {
  display: none;
}
.service-section__inner {
  position: relative;
  padding-top: 50px;
  padding-bottom: 50px;
}
.service-section__inner::before {
  position: absolute;
  top: 0;
  left: 20px;
  right: 20px;
  content: "";
  display: block;
  border-top: 1px solid;
}
.service-section__lead {
  margin-bottom: 50px;
}
@media all and (min-width: 768px) {
  .service-section:last-of-type .service-section__inner {
    padding-bottom: 130px;
  }
  .service-section__inner {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .service-section__inner::before {
    left: 50px;
    right: 50px;
  }
  .service-section__lead {
    margin-bottom: 40px;
  }
}

/* .tips-archive
================================================ */
.tips-archive__inner {
  padding-top: 50px;
  padding-bottom: 50px;
  position: relative;
  z-index: 2;
}
@media all and (min-width: 768px) {
  .tips-archive__inner {
    padding-top: 100px;
    padding-bottom: 120px;
  }
}

/* .tips-archive-anchor
================================================ */
.tips-archive-anchor {
  background: #fff;
  padding: 15px 20px 20px;
}
.tips-archive-anchor__head {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: var(--line_height_head);
}
.tips-archive-anchor__list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 8px;
}
.tips-archive-anchor__item {
  margin: 1px;
}
.tips-archive-anchor__link {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  border: solid 1px;
  border-radius: 4px;
  box-sizing: border-box;
  line-height: 0.5;
}
@media all and (min-width: 768px) {
  .tips-archive-anchor {
    padding: 45px 80px 50px;
    margin-bottom: 65px;
  }
  .tips-archive-anchor__head {
    font-size: 2rem;
    margin-bottom: 15px;
  }
  .tips-archive-anchor__list {
    margin-top: 6px;
  }
  .tips-archive-anchor__item {
    margin: 2px;
  }
  .tips-archive-anchor__link {
    width: 32px;
    height: 32px;
    transition: all 0.3s ease;
  }
  .tips-archive-anchor__link:hover {
    color: #fff;
    border-color: rgb(var(--main));
    background: rgb(var(--main));
  }
}

/* .tips-single
================================================ */
.tips-single__inner {
  padding-top: 50px;
  padding-bottom: 30px;
}
@media all and (min-width: 768px) {
  .tips-single__inner {
    padding-top: 140px;
    padding-bottom: 120px;
  }
}

/* .tips-other
================================================ */
.tips-other {
  background: #fff;
}
.tips-other__inner {
  padding-top: 50px;
  padding-bottom: 50px;
}
.tips-other .c-single04-slide .slick-dots {
  background: #cfcfcf;
}
@media all and (min-width: 768px) {
  .tips-other {
    overflow: hidden;
  }
  .tips-other__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .tips-other .c-single04-slide {
    margin-right: calc(50% - 50vw);
  }
}

/* .tips-back
================================================ */
.tips-back {
  padding-top: 5px;
  padding-bottom: 50px;
}
@media all and (min-width: 768px) {
  .tips-back {
    padding-top: 50px;
    padding-bottom: 120px;
  }
}

/* .value-content
======================================= */
@media all and (max-width: 767px) {
  .value-content__img {
    margin-top: 50px;
    margin-bottom: 53px;
  }
}
@media all and (min-width: 768px) {
  .value-content__inner {
    padding-left: 0;
    padding-right: 0;
    max-width: 1100px;
    box-sizing: border-box;
  }
}

.value-content-sec {
  position: relative;
  padding-top: 50px;
  padding-bottom: 50px;
}
.value-content-sec__head {
  margin-bottom: 12px !important;
  line-height: 1.5;
}
.value-content-sec__head-note {
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}
.value-content-sec .value-content__img {
  margin-top: 0;
  margin-bottom: 25px;
}
.value-content-sec .value-content__img.has-padding {
  padding: 0 30px;
}
@media all and (max-width: 767px) {
  .value-content-sec:first-child {
    padding-top: 0;
  }
  .value-content-sec + .value-content-sec::before {
    content: "";
    position: absolute;
    top: 0;
    left: -30px;
    right: -30px;
    border-top: 1px solid #cfcfcf;
  }
}
@media all and (min-width: 768px) {
  .value-content-sec {
    padding-top: 94px;
    padding-bottom: 72px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: end;
  }
  .value-content-sec + .value-content-sec {
    border-top: 1px solid #cfcfcf;
  }
  .value-content-sec__head {
    margin-bottom: 19px !important;
  }
  .value-content-sec__head-note {
    font-size: 1.6rem;
  }
  .value-content-sec .value-content__img {
    grid-column: 2/3;
    grid-row: 1/3;
    max-width: 529px;
    margin-left: 23px;
    margin-bottom: 0;
  }
}

#vision .l-sub-img__head {
  margin-right: 115px;
}

/* .vision-sec
======================================= */
.vision-sec__inner {
  position: relative;
  padding-top: 50px;
  padding-bottom: 50px;
}
.vision-sec__head {
  margin-right: -5px;
  margin-bottom: 13px !important;
  font-size: 1.8rem !important;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 1.5;
}
.vision-sec__areaTxt + .vision-sec__areaTxt {
  margin-top: 28px;
}
.vision-sec__img {
  margin-top: 30px;
}
.vision-sec__img.is-mb0 {
  margin-bottom: 0;
}
@media all and (max-width: 767px) {
  .vision-sec + .vision-sec {
    border-top: 1px solid #cfcfcf;
  }
  .vision-sec__inner {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
  .vision-sec__img {
    margin-bottom: 30px;
  }
  .vision-sec__img.is-mt0 {
    margin-top: 0;
  }
  .vision-sec-container {
    margin-bottom: 30px;
  }
}
@media all and (min-width: 768px) {
  .vision-sec__inner {
    padding: 100px 0;
    max-width: 1100px !important;
  }
  .vision-sec-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .vision-sec__wrapper {
    grid-column: 1/2;
    grid-row: 1/3;
  }
  .vision-sec__head {
    font-size: 2.4rem !important;
  }
  .vision-sec__head.is-large {
    margin-top: 10px;
    margin-bottom: 30px !important;
    font-size: 3.8rem !important;
  }
  .vision-sec__areaTxt + .vision-sec__areaTxt {
    margin-top: 55px;
  }
  .vision-sec__areaTxt.has-large-margin {
    margin-top: 30px;
  }
  .vision-sec + .vision-sec .vision-sec__inner::before {
    position: absolute;
    top: 15px;
    left: 0;
    right: 0;
    content: "";
    width: 100%;
    display: block;
    border-top: 1px solid #cfcfcf;
  }
  .vision-sec:last-of-type .vision-sec__inner {
    padding-bottom: 130px;
  }
  .vision-sec__img {
    margin-top: 40px;
  }
  .vision-sec__img.is-mt0 {
    grid-column: 2/3;
    grid-row: 1/3;
    margin-top: 42px;
    margin-left: 22px;
  }
}
