@charset "UTF-8";
/**
* Foundation
* ========================== */ /*
---------------------------------------
reset
---------------------------------------
*/
* {
  word-break: normal !important;
  word-wrap: break-word;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
button {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  font-size: 100%;
  font-style: normal;
  font-weight: normal;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
  margin: 0;
  padding: 0;
}

html {
  min-height: 100%;
  width: 100%;
  font-size: 62.5%;
}

html,
body {
  position: relative;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
}

input,
textarea {
  margin: 0;
  padding: 0;
}

input:focus,
textarea:focus,
button:focus {
  outline: 0;
}

button,
input[type=button],
input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  box-shadow: none;
  background: none;
  font-family: inherit;
}

button {
  background: none;
  line-height: 2;
  cursor: pointer;
}

img {
  border: none;
}

ol,
ul {
  list-style: none;
}

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

table th {
  font-weight: normal;
}

caption,
th {
  text-align: left;
}

p,
dd,
li,
address {
  font-style: normal;
}

figure {
  line-height: 0;
}

em {
  font-weight: inherit;
}

picture {
  display: block;
  line-height: 0;
}

:root {
  --main-color: #148bcf;
}

.logged-in .st-header {
  top: 32px;
}
@media (max-width: 750px) {
  .logged-in .st-header {
    top: 0;
  }
}
.logged-in #case .wrapper .links_wrap {
  top: 211px;
}

body {
  font-family: "游ゴシック", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  word-wrap: break-word;
  color: #333;
  min-width: 375px;
  line-break: normal;
  font-weight: 400;
  -ms-overflow-style: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}

body::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
}

@media screen and (max-width: 1136px) {
  body {
    width: 1136px;
  }
}
@media (max-width: 750px) {
  body {
    width: 100%;
  }
}
/* IE */
#top-of-page {
  position: relative;
  overflow: hidden;
  min-width: 1136px;
}
@media (max-width: 768px) {
  #top-of-page {
    min-width: 0;
    margin-top: 0;
    padding-top: 65px;
  }
}
@media (max-width: 750px) {
  #top-of-page.recruit-header {
    padding-top: 0;
  }
}
.anc {
  padding-top: 96px;
  margin-top: -96px;
}
@media (max-width: 750px) {
  .anc {
    padding-top: 56px;
    margin-top: -56px;
  }
}

.l-contents {
  position: relative;
}

p {
  text-align: justify;
  overflow-wrap: break-word;
}

p,
dt,
dd,
li {
  font-size: 14px;
  line-height: 2;
  font-weight: 500;
  line-break: normal;
  word-break: normal !important;
  word-wrap: break-word;
}
@media (max-width: 750px) {
  p,
  dt,
  dd,
  li {
    font-size: 3.46vw;
    line-height: 1.92;
    font-weight: 400;
  }
}

div {
  line-height: 1;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1;
}

/*
---------------------------------------
link
---------------------------------------
*/
a {
  font-size: inherit;
  font-weight: inherit;
  text-decoration: none;
  color: inherit;
  transition: all 0.2s;
}

a:hover {
  text-decoration: none;
}

/*
---------------------------------------
clear
---------------------------------------
*/
.clearfix:after {
  font-size: 0;
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: ".";
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*/
  /*/
     height: auto;
     overflow: hidden;
     /**/
}

*:first-child + html .clearfix {
  zoom: 1;
}

/* IE7 */
/*
---------------------------------------
common
---------------------------------------
*/
input[type=text],
input[type=search],
input[type=tel],
input[type=number],
input[type=url],
input[type=email],
input[type=password],
input[type=date],
textarea,
select {
  font-size: 16px;
  border: none;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  font-family: inherit;
  background: #fff;
  padding: 0;
}

textarea {
  width: 100%;
  resize: vertical;
}

input::-webkit-input-placeholder {
  color: #ccc;
}

input:-moz-placeholder {
  color: #ccc;
}

textarea::-webkit-input-placeholder {
  color: #ccc;
}

textarea:-moz-placeholder {
  color: #ccc;
}

.logged-in header.normal {
  top: 32px;
}

#wp-admin-bar-customize,
#wp-admin-bar-duplicate-post {
  display: none !important;
}

/*
---------------------------------------
animation
---------------------------------------
*/
@keyframes attentionAnim {
  0% {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(100%);
  }
}
/**
* Object
* ========================== */
/* Library ------------ */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: "";
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[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;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  font-weight: normal;
  font-style: normal;
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
}
/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  outline: none;
  background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  opacity: 0.75;
  color: white;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir=rtl] .slick-prev {
  right: -25px;
  left: auto;
}

.slick-prev:before {
  content: "←";
}

[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir=rtl] .slick-next {
  right: auto;
  left: -25px;
}

.slick-next:before {
  content: "→";
}

[dir=rtl] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: "•";
  text-align: center;
  opacity: 0.25;
  color: black;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  opacity: 0.75;
  color: black;
}

/* Common ------------ */
.l-contents .pc {
  display: block !important;
  margin: 0 auto;
}
@media (max-width: 750px) {
  .l-contents .pc {
    display: none !important;
  }
}
.l-contents .sp {
  display: none !important;
}
@media (max-width: 750px) {
  .l-contents .sp {
    display: block !important;
  }
}
.l-contents .inline-pc {
  display: inline-block !important;
}
@media (max-width: 750px) {
  .l-contents .inline-pc {
    display: none !important;
  }
}
.l-contents .inline-sp {
  display: none !important;
}
@media (max-width: 750px) {
  .l-contents .inline-sp {
    display: inline-block !important;
  }
}
.l-contents .inner {
  max-width: 1064px;
  margin: 0 auto;
  padding: 0 20px;
  word-wrap: break-word;
  word-break: break-all;
}
@media (max-width: 750px) {
  .l-contents .inner {
    padding: 0 7.5%;
  }
}
.l-contents img {
  max-width: 100%;
  height: auto;
}
.l-contents .en {
  font-family: "Poppins", sans-serif;
}
.l-contents .roboto {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
}
.l-contents .min {
  font-family: "EB Garamond", serif;
  font-weight: 400;
}
.l-contents .ofi {
  object-fit: cover;
  font-family: "object-fit: cover;";
}
.l-contents .ofi-contain {
  object-fit: contain;
  font-family: "object-fit: contain;";
}
.l-contents .anc {
  padding-top: 100px;
  margin-top: -100px;
}
@media (max-width: 750px) {
  .l-contents .anc {
    padding-top: 65px;
    margin-top: -65px;
  }
}

/*	form
---------------------------------*/
@media (max-width: 750px) {
  .sec-form .inner {
    padding: 0 5%;
  }
}

.steps_form {
  max-width: 700px;
  margin: 0 auto 20px;
}
@media (max-width: 750px) {
  .steps_form {
    width: 100%;
    margin: 0 auto 3vw;
  }
}

.sec-form__require {
  color: #ba272d;
  font-weight: bold;
  margin-bottom: 2px;
}
@media (max-width: 750px) {
  .sec-form__require {
    font-size: 3.3vw;
    margin-bottom: 0;
  }
}

.wrap_form {
  max-width: 700px;
  margin: 0 auto;
}
.wrap_form .require {
  color: #ba272d;
  font-weight: bold;
}
.wrap_form .btn_send_narrow {
  display: block;
  width: 364px;
  padding: 13px 20px;
  margin: 0 auto;
  border: none;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 18px;
  background-color: #148bcf;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.7s;
  background-image: url(../images/form/btn_arrow.svg);
  background-size: 7px;
  background-repeat: no-repeat;
  background-position: right 26px center;
  border-radius: 50px;
  line-height: 2.142;
}
@media (max-width: 750px) {
  .wrap_form .btn_send_narrow {
    width: 95%;
    padding: 3vw 5vw;
    margin: 0 auto;
    font-size: 4.2vw;
    background-size: 7px;
    background-position: right 8vw center;
  }
}
@media (min-width: 751px) {
  .wrap_form .btn_send_narrow:hover {
    opacity: 0.3;
  }
}
.wrap_form .btn_send_narrow[disabled] {
  opacity: 0.2;
}
.wrap_form button.btn_back_narrow {
  display: block;
  width: 364px;
  padding: 17px 20px;
  margin: 30px auto 0;
  border: none;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 18px;
  background-color: #808080;
  cursor: pointer;
  opacity: 1;
  transition: opacity 0.7s;
  background-image: url(../images/form/btn_arrow_back.svg);
  background-size: 7px;
  background-repeat: no-repeat;
  background-position: left 26px center;
  border-radius: 50px;
  line-height: 2.142;
}
@media (max-width: 750px) {
  .wrap_form button.btn_back_narrow {
    width: 95%;
    padding: 3vw 5vw;
    margin: 7vw auto 0;
    font-size: 4.2vw;
    background-size: 7px;
    background-position: left 8vw center;
  }
}
@media (min-width: 751px) {
  .wrap_form button.btn_back_narrow:hover {
    opacity: 0.3;
  }
}

.table_entry {
  width: 100%;
  line-height: 1.5;
  margin: 0 0 15px;
}
@media (max-width: 750px) {
  .table_entry {
    margin: 0 0 5vw;
    font-size: 3.4vw !important;
  }
}
.table_entry .row {
  display: -ms-flexbox;
  display: flex;
  background: #fff;
  margin-bottom: 4px;
  padding: 6px 0;
}
@media (max-width: 750px) {
  .table_entry .row {
    padding: 7px 0;
  }
}
@media (max-width: 750px) {
  .table_entry .row-2 {
    display: block;
    padding: 5px 4vw;
  }
  .table_entry .row-2 .dt {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #e6e6e6;
    padding: 3.2vw 0 2vw;
  }
  .table_entry .row-2 .dd {
    width: 100%;
    padding: 1.5vw 0;
  }
}
.table_entry .dt {
  font-weight: bold;
  padding: 13px 0 10px 18px;
  font-size: 14px;
  width: 155px;
  line-height: 1;
  border-right: 1px solid #e6e6e6;
  letter-spacing: 0;
}
@media (max-width: 750px) {
  .table_entry .dt {
    padding: 2.7vw 0 2.7vw 4vw;
    width: 28vw;
    font-size: 3.4vw;
    line-height: 1.3;
    letter-spacing: 0;
  }
}
.table_entry .dd {
  flex: 1;
  padding: 4px 18px 0px;
  font-size: 14px;
  line-height: 1;
}
@media (max-width: 750px) {
  .table_entry .dd {
    padding: 1.5vw 3.5vw 0;
    font-size: 3.4vw;
    line-height: 1.3;
    letter-spacing: 0;
  }
}
.table_entry .dd .dd-in {
  display: block;
  box-sizing: border-box;
  padding: 7px 5px;
  line-height: 1.5;
}
.table_entry .mark_zip {
  font-size: 16px;
  padding: 2px 0 0;
}
@media (max-width: 750px) {
  .table_entry .mark_zip {
    font-size: 3.4vw;
    padding: 0;
  }
}
.table_entry input[type=text],
.table_entry input[type=email],
.table_entry input[type=tel] {
  width: 100%;
  font-size: 16px;
  box-sizing: border-box;
  padding: 4px 5px;
  background: none;
  line-height: 1;
}
@media (max-width: 750px) {
  .table_entry input[type=text],
  .table_entry input[type=email],
  .table_entry input[type=tel] {
    width: 100%;
    font-size: 3.4vw;
  }
}
.table_entry input[type=text]#age,
.table_entry input[type=email]#age,
.table_entry input[type=tel]#age {
  width: 100px;
}
@media (max-width: 750px) {
  .table_entry input[type=text]#age,
  .table_entry input[type=email]#age,
  .table_entry input[type=tel]#age {
    width: 32%;
  }
}
.table_entry textarea {
  font-size: 16px;
  padding: 5px 5px;
  width: 100%;
  height: 200px;
}
@media (max-width: 750px) {
  .table_entry textarea {
    height: 26vw;
    font-size: 3.4vw !important;
  }
}
.table_entry .radio-wrap {
  padding: 8px 0;
}
@media (max-width: 750px) {
  .table_entry .radio-wrap {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0;
    padding: 6px 0 0;
  }
}
.table_entry .radio-wrap label {
  cursor: pointer;
  margin-right: 2em;
  line-height: 1.3;
}
@media (max-width: 750px) {
  .table_entry .radio-wrap label {
    margin-right: 0;
    display: inline-block;
  }
}
.table_entry .radio-wrap label input[type=radio],
.table_entry .radio-wrap label input[type=checkbox] {
  margin-right: 0;
  position: relative;
  top: 2px;
}
.table_entry .radio-wrap label input[type=radio].error,
.table_entry .radio-wrap label input[type=checkbox].error {
  display: inline-block;
}
.table_entry #zip {
  height: 32px;
  width: 200px;
  font-size: 16px;
  padding: 0 5px;
}
@media (max-width: 750px) {
  .table_entry #zip {
    height: 8vw;
    width: calc(100% - 5vw);
    font-size: 3.4vw;
  }
}
.table_entry .wpcf7-list-item:first-child {
  margin-left: 0;
}

label.error {
  font-size: 16px;
  color: #ba272d;
  display: block;
  margin: 10px 0 10px;
}
@media (max-width: 750px) {
  label.error {
    line-height: 1.5;
    font-size: 3.4vw;
    margin: 5px 0 0;
  }
}

.form_privacy-policy {
  background: #dfdfdf;
  padding: 20px 20px 15px;
  margin-bottom: 45px;
}
@media (max-width: 750px) {
  .form_privacy-policy {
    padding: 4vw 3vw;
    margin-bottom: 4vw;
  }
}
.form_privacy-policy .ttl {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 10px;
}
@media (max-width: 750px) {
  .form_privacy-policy .ttl {
    font-size: 3.4vw;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 2vw;
  }
}
.form_privacy-policy .agree_text p {
  font-size: 14px;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .form_privacy-policy .agree_text p {
    font-size: 3.4vw;
  }
}
.form_privacy-policy .agree_text a {
  text-decoration: underline;
}
.form_privacy-policy .inner_box {
  height: 130px;
  background: white;
  overflow-y: scroll;
  border: 1px solid #b1b1b1;
  padding: 14px;
  margin-bottom: 10px;
}
@media (max-width: 750px) {
  .form_privacy-policy .inner_box {
    height: 32vw;
    padding: 4vw 3vw;
    margin-bottom: 2vw;
  }
}
.form_privacy-policy .inner_box .ttl {
  font-weight: bold;
  margin-bottom: 0;
}
.form_privacy-policy .inner_box p {
  margin-bottom: 20px;
  line-height: 1.64;
  font-size: 14px;
}
@media (max-width: 750px) {
  .form_privacy-policy .inner_box p {
    font-size: 3.3vw;
    margin-bottom: 3vw;
  }
}
.form_privacy-policy .inner_box ul {
  margin-left: 1em;
  margin-bottom: 20px;
  line-height: 1.64;
  list-style-position: outside;
}
@media (max-width: 750px) {
  .form_privacy-policy .inner_box ul {
    margin-left: 1em;
    margin-bottom: 3vw;
  }
}
.form_privacy-policy .inner_box ul > li {
  line-height: 1.64;
}
.form_privacy-policy .inner_box ul > li > ul {
  margin: 0 0 0 1em;
}
.form_privacy-policy .inner_box ul > li > ul > li {
  line-height: 1.64;
}
.form_privacy-policy .inner_box ul > li > ul > li > ul {
  margin: 0 0 0 1em;
}
.form_privacy-policy .inner_box .right_text {
  text-align: right;
}

.sec-form .sec-form__mailAttention {
  line-height: 1.6;
  text-align: center;
  margin-bottom: 25px;
  font-size: 14px;
}
@media (max-width: 750px) {
  .sec-form .sec-form__mailAttention {
    text-align: left;
    margin-bottom: 8vw;
    font-size: 3.3vw;
  }
}

.require {
  color: #ba272d;
  font-weight: bold;
}

.agree_item {
  margin-right: 0 !important;
  margin-left: 0 !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  display: inline-block;
  margin-top: 4px;
}
.agree_item .wpcf7-list-item {
  margin-left: 0;
}

.wpcf7 form .wpcf7-response-output {
  font-size: 16px;
  font-weight: bold;
}

.wpcf7-not-valid-tip {
  display: none !important;
}

.wpcf7-form.invalid .wpcf7-response-output {
  display: none;
}

.wpcf7-form.sent .wpcf7-response-output {
  display: none;
}

.page-contact .st-footer__pageTop,
.page-entry .st-footer__pageTop {
  display: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 30px;
  background-color: white;
  border: 1px solid #ccc;
  border-radius: 0;
  padding: 0 5px;
  background-image: url(../images/form/arrow-select.png);
  background-repeat: no-repeat;
  background-position: right center;
  width: 200px;
  font-size: 14px;
}
@media all and (-ms-high-contrast: none) {
  select {
    background-image: url(../images/form/arrow-select.png);
  }
}
@media (max-width: 750px) {
  select {
    width: 100%;
  }
}

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

@-moz-document url-prefix() {
  /* firefoxハック */
  #contact-table select {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    text-indent: 0.2em;
    background-image: none;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  /* chromeハック */
  #contact-table select {
    text-indent: 0.2em;
  }
}
@media all and (-ms-high-contrast: none) {
  .wrap_form .btn_send_narrow {
    padding: 17px 20px 12px;
  }
}
.thanks-text {
  margin: 50px 0;
  line-height: 2;
}
@media (max-width: 750px) {
  .thanks-text {
    margin: 9vw 0;
  }
}
.thanks-text.insert {
  font-weight: bold;
}

.thanks_btn {
  text-align: center;
}
.thanks_btn a {
  text-decoration: underline;
}
@media (hover: hover) {
  .thanks_btn a:hover {
    text-decoration: none;
  }
}

#autozip {
  display: none !important;
}

/* Component ------------ */
/*
---------------------------------------
btn
---------------------------------------
*/
.c-btn-01--green .c-btn-01__in {
  border-bottom: 1px solid #28af8f;
}
.c-btn-01--green .c-btn-01__in:before {
  background-image: url(../images/common/arrow-right-green.svg);
}
.c-btn-01--green .c-btn-01__txt {
  color: #28af8f;
}
.c-btn-01--white .c-btn-01__in {
  border-bottom: 1px solid #fff;
}
.c-btn-01--white .c-btn-01__in:before {
  background-image: url(../images/common/arrow-right-white.svg);
}
.c-btn-01--white .c-btn-01__txt {
  color: #fff;
}

.c-btn-01__in {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: max-content;
  padding-block: 13px;
  padding-right: 77px;
  border-bottom: 1px solid #148bcf;
  position: relative;
}
@media (max-width: 750px) {
  .c-btn-01__in {
    padding-block: 2.8vw;
    padding-right: 15.7vw;
  }
}
.c-btn-01__in:before {
  content: "";
  background: url(../images/common/arrow-right-blue.svg) no-repeat center center/cover;
  width: 30px;
  height: 8px;
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 0;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  .c-btn-01__in:before {
    width: 6.53vw;
    height: 1.733vw;
  }
}

@media (hover: hover) {
  .c-btn-01__link:where(:any-link, :enabled, summary):hover .c-btn-01__in:before {
    transform: translate(5px, -50%);
  }
  .c-btn-01__link:where(:any-link, :enabled, summary):hover.c-btn-01__in:before {
    transform: translate(5px, -50%);
  }
}

.c-btn-01__txt {
  display: block;
  overflow: hidden;
  font-size: 16px;
  color: #148bcf;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  .c-btn-01__txt {
    font-size: 3.46vw;
  }
}
.c-btn-01__txt .text-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.c-btn-01__txt .after {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  transform: translateY(105%);
}
.c-btn-01__txt .before {
  display: flex;
  align-items: center;
}

.heading-01 {
  width: max-content;
  background: url(../images/common/heading-01_bg.svg) no-repeat left 10px center/135px;
  padding-block: 50px 50px;
}
@media (max-width: 750px) {
  .heading-01 {
    background-position: left 1vw center;
    background-size: 21.6vw;
    padding-block: 8.4vw 8vw;
  }
}
.heading-01--center {
  text-align: center;
  background-position: center center;
}
.heading-01--green .heading-01__ja {
  color: #28af8f;
}
.heading-01--white {
  background-image: url(../images/common/heading-01_bg-white.svg);
  margin-inline: auto;
}
.heading-01--white .heading-01__ja,
.heading-01--white .heading-01__en {
  color: #fff;
}
.heading-01.popup .heading-01__ja span {
  transform: translateY(0);
}

.heading-01__ja {
  font-size: 42px;
  line-height: 1;
  color: #148bcf;
  letter-spacing: 0.1em;
  margin-bottom: 13px;
  overflow: hidden;
}
@media (max-width: 750px) {
  .heading-01__ja {
    font-size: 6.6vw;
    margin-bottom: 2.3vw;
  }
}
.heading-01__ja span {
  display: inline-block;
  transform: translateY(100%);
}

.heading-01__en {
  font-size: 24px;
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: 0.1em;
  overflow: hidden;
}
@media (max-width: 750px) {
  .heading-01__en {
    font-size: 3.73vw;
  }
}
.heading-01__en span {
  display: inline-block;
  transform: translateY(100%);
}

.heading-02 {
  text-align: center;
}
.heading-02 span {
  display: inline-block;
  font-size: 32px;
  letter-spacing: 0.1em;
  color: #28af8f;
  position: relative;
  padding: 22px 0px;
}
@media (max-width: 750px) {
  .heading-02 span {
    font-size: 5.6vw;
    padding: 3.6vw 0;
  }
}
.heading-02 span:before, .heading-02 span:after {
  content: "";
  width: 35px;
  height: 35px;
  display: block;
  position: absolute;
}
@media (max-width: 750px) {
  .heading-02 span:before, .heading-02 span:after {
    width: 5.2vw;
    height: 5.2vw;
  }
}
.heading-02 span:before {
  background: url(../images/common/heading02_frame_l.svg) no-repeat center center/cover;
  left: -23px;
  top: 0;
}
@media (max-width: 750px) {
  .heading-02 span:before {
    left: -3.6vw;
  }
}
.heading-02 span:after {
  background: url(../images/common/heading02_frame_r.svg) no-repeat center center/cover;
  right: -23px;
  bottom: 0;
}
@media (max-width: 750px) {
  .heading-02 span:after {
    right: -3.6vw;
  }
}
.heading-02--blue span {
  color: #148bcf;
}

.heading-03__en {
  font-size: 160px;
  font-weight: 500;
  letter-spacing: 0.05em;
  opacity: 0.5;
  line-height: 1;
  color: #148bcf;
  margin-bottom: 21px;
}
@media (max-width: 750px) {
  .heading-03__en {
    font-size: 17.3vw;
    margin-bottom: 1.9vw;
  }
}

.heading-03__ja {
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1;
  padding-left: 0.5em;
}
@media (max-width: 750px) {
  .heading-03__ja {
    font-size: 4vw;
    padding-left: 0;
  }
}

.heading-04 {
  position: absolute;
  left: 0;
  top: 0;
}
.heading-04 span {
  display: inline-block;
  background: #28af8f;
  color: #fff;
  font-size: 22px;
  letter-spacing: 0.1em;
  padding: 19px 25px;
  position: relative;
}
@media (max-width: 750px) {
  .heading-04 span {
    font-size: 4vw;
    padding: 2.96vw 4.16vw;
  }
}
.heading-04 span:before {
  content: "";
  display: block;
  position: absolute;
  left: 46px;
  top: calc(100% - 1px);
  width: 20px;
  aspect-ratio: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%);
  background: #28af8f;
}
@media (max-width: 750px) {
  .heading-04 span:before {
    left: 7.16vw;
    width: 4.06vw;
  }
}

.pageTtl {
  margin-top: 100px;
  color: #fff;
  height: 420px;
}
@media (max-width: 750px) {
  .pageTtl {
    margin-top: 0;
    height: 37.33vw;
  }
}
.pageTtl .pageTtl__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
}
@media (max-width: 750px) {
  .pageTtl .pageTtl__inner {
    padding-inline: 5vw;
  }
}
.pageTtl .pageTtl__inner:before {
  content: "";
  background: url(../images/contact/pageTtl_bg@2x.jpg) no-repeat center center/cover;
  width: calc(100% + 50vw - 554px);
  height: 420px;
  display: block;
  position: absolute;
  right: calc(-50vw + 532px);
  top: 0;
  z-index: -1;
  border-radius: 30px 0 0 30px;
}
@media (max-width: 750px) {
  .pageTtl .pageTtl__inner:before {
    width: 95vw;
    height: 37.33vw;
    right: 0;
    border-radius: 15px 0 0 15px;
  }
}
.pageTtl--news .pageTtl__inner:before {
  background-image: url(../images/news/pageTtl_bg@2x.jpg);
}
@media (max-width: 750px) {
  .pageTtl--news .pageTtl__inner:before {
    background-image: url(../images/news/pageTtl_bg_sp@2x.jpg);
  }
}
.pageTtl--company .pageTtl__inner:before {
  background-image: url(../images/company/pageTtl_bg@2x.jpg);
}
@media (max-width: 750px) {
  .pageTtl--company .pageTtl__inner:before {
    background-image: url(../images/company/pageTtl_bg_sp@2x.jpg);
  }
}
.pageTtl--business .pageTtl__inner:before {
  background-image: url(../images/business/pageTtl_bg@2x.jpg);
}
@media (max-width: 750px) {
  .pageTtl--business .pageTtl__inner:before {
    background-image: url(../images/business/pageTtl_bg_sp@2x.jpg);
  }
}
.pageTtl .pageTtl__txtbox {
  padding-left: 52px;
  padding-bottom: 42px;
}
@media (max-width: 750px) {
  .pageTtl .pageTtl__txtbox {
    padding-left: 4vw;
    padding-bottom: 4.8vw;
  }
}
.pageTtl .pageTtl__ja {
  font-size: 28px;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-bottom: 13px;
}
@media (max-width: 750px) {
  .pageTtl .pageTtl__ja {
    font-size: 3.46vw;
    margin-bottom: 0.9vw;
  }
}
.pageTtl .pageTtl__en {
  font-size: 100px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 750px) {
  .pageTtl .pageTtl__en {
    font-size: 9.33vw;
  }
}

.pageTtl-02 {
  background: url(../images/common/pageTtl_bg_top@2x.png) no-repeat center top/100% 100%;
  color: #fff;
  height: 470px;
}
@media (max-width: 750px) {
  .pageTtl-02 {
    background-image: url(../images/common/pageTtl_bg_top_sp@2x.png);
    height: 49.33vw;
  }
}
.pageTtl-02 .pageTtl-02__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
}
@media (max-width: 750px) {
  .pageTtl-02 .pageTtl-02__inner {
    padding-top: 13.5vw;
  }
}
.pageTtl-02 .pageTtl-02__inner:before {
  content: "";
  background: url(../images/recruit/pageTtl_bg@2x.jpg) no-repeat center center/cover;
  width: 530px;
  height: 400px;
  display: block;
  position: absolute;
  right: 20px;
  top: 120px;
  z-index: 0;
  border-radius: 30px;
}
@media (max-width: 750px) {
  .pageTtl-02 .pageTtl-02__inner:before {
    width: 42.4vw;
    height: 32vw;
    right: 7vw;
    top: 20.1vw;
    border-radius: 15px;
  }
}
.pageTtl-02--benefits .pageTtl-02__inner:before {
  background-image: url(../images/benefits/pageTtl_bg@2x.jpg);
}
.pageTtl-02--voice .pageTtl-02__inner:before {
  background-image: url(../images/voice/pageTtl_bg@2x.jpg);
}
.pageTtl-02--case .pageTtl-02__inner:before {
  background-image: url(../images/case/pageTtl_bg@2x.jpg);
}
.pageTtl-02--entry .pageTtl-02__inner:before {
  background-image: url(../images/entry/pageTtl_bg@2x.jpg);
}
.pageTtl-02 .pageTtl-02__ja {
  font-size: 28px;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-bottom: 13px;
}
@media (max-width: 750px) {
  .pageTtl-02 .pageTtl-02__ja {
    font-size: 3.46vw;
    margin-bottom: 0.9vw;
  }
}
.pageTtl-02 .pageTtl-02__en {
  font-size: 100px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 750px) {
  .pageTtl-02 .pageTtl-02__en {
    font-size: 9.33vw;
  }
}

.single-content * {
  max-width: 100%;
}
.single-content h2 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  margin: 50px 0 24px;
  padding: 18px 30px;
  background: var(--main-color);
  color: #fff;
}
@media (max-width: 750px) {
  .single-content h2 {
    font-size: 4.4vw;
    margin: 5vw 0 3vw;
    padding: 3vw;
  }
}
.single-content h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 50px 0 30px;
  line-height: 1.5;
  border-top: 2px solid var(--main-color);
  border-bottom: 2px solid var(--main-color);
  padding: 16px 30px;
}
@media (max-width: 750px) {
  .single-content h3 {
    font-size: 4.2vw;
    margin: 5vw 0 3vw;
    padding: 3vw;
    border-width: 1px;
  }
}
.single-content h4 {
  font-size: 18px;
  font-weight: bold;
  margin: 50px 0 30px;
  line-height: 1.5;
  border-bottom: 2px solid var(--main-color);
  padding: 0 30px 0.2px;
}
@media (max-width: 750px) {
  .single-content h4 {
    font-size: 4.1vw;
    margin: 5vw 0 3vw;
    border-width: 1px;
    padding: 3vw;
  }
}
.single-content h5 {
  font-size: 16px;
  font-weight: bold;
  margin: 50px 0 20px;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .single-content h5 {
    font-size: 3.9vw;
    margin: 5vw 0 3vw;
  }
}
.single-content h6 {
  font-size: 14px;
  font-weight: bold;
  margin: 50px 0 20px;
  line-height: 1.5;
}
@media (max-width: 750px) {
  .single-content h6 {
    font-size: 3.9vw;
    margin: 5vw 0 3vw;
  }
}
.single-content p {
  font-size: 14px;
  margin: 10px 0 10px;
  word-wrap: break-word;
  word-break: break-all;
}
@media (max-width: 750px) {
  .single-content p {
    font-size: 3.9vw;
    margin: 3vw 0 3vw;
  }
}
.single-content p a {
  text-decoration: underline;
  color: var(--main-color);
}
.single-content .full {
  margin: 2em 0;
}
.single-content .wp-caption-text {
  margin-top: 0;
}
.single-content strong,
.single-content b {
  font-weight: bold;
}
.single-content em {
  font-style: italic;
}
.single-content blockquote {
  background: #f3f3f3;
  position: relative;
  padding: 40px 30px;
  margin: 40px 0;
}
@media (max-width: 750px) {
  .single-content blockquote {
    margin: 5vw 0;
    padding: 5vw;
  }
}
.single-content blockquote p {
  padding: 0;
  margin: 0;
  color: #777;
}
.single-content ul,
.single-content ol {
  margin: 0 0 30px;
}
@media (max-width: 750px) {
  .single-content ul,
  .single-content ol {
    margin-bottom: 5vw;
  }
}
.single-content ul li {
  list-style: none;
  line-height: 1.6;
  padding: 0 0 10px 0;
  position: relative;
  font-size: 14px;
}
@media (max-width: 750px) {
  .single-content ul li {
    font-size: 3.9vw;
  }
}
.single-content ul li:before {
  content: "・";
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-right: 10px;
  color: var(--main-color);
}
@media (max-width: 750px) {
  .single-content ul li:before {
    font-size: 3.9vw;
  }
}
.single-content ul li ul {
  padding-top: 10px;
  margin-bottom: 0;
}
.single-content ul li ul li {
  line-height: 1.6;
  padding: 0 0 10px 20px;
}
.single-content ul li ul li:last-child {
  padding: 0 0 0 20px;
}
.single-content ol {
  counter-reset: item;
  list-style-type: none;
}
.single-content ol li {
  list-style-type: none;
  list-style-position: inside;
  counter-increment: cnt;
  line-height: 1.6;
  position: relative;
  padding: 0 0 0 42px;
  margin-bottom: 20px;
  font-size: 14px;
}
@media (max-width: 750px) {
  .single-content ol li {
    font-size: 3.9vw;
    padding-left: 8vw;
    margin-bottom: 3vw;
  }
}
.single-content ol li:before {
  position: absolute;
  left: 0;
  top: -4px;
  counter-increment: item;
  content: counter(item, decimal-leading-zero);
  width: 35px;
  height: 35px;
  font-size: 14px;
  line-height: 35px;
  text-align: center;
  color: white;
  text-align: center;
  border-radius: 50%;
  background: var(--main-color);
}
@media (max-width: 750px) {
  .single-content ol li:before {
    width: 6vw;
    height: 6vw;
    line-height: 6vw;
    font-size: 3.9vw;
  }
}
.single-content hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-top: 1px dashed #bbb;
  margin: 10px 0;
}
.single-content table {
  margin: 40px 0;
  border: 1px solid #e6e6e6;
}
@media (max-width: 750px) {
  .single-content table {
    margin: 5vw 0;
  }
}
.single-content table th {
  background: var(--main-color);
  color: #fff;
  font-weight: bold;
}
.single-content table th,
.single-content table td {
  text-align: center;
  font-size: 16px;
  border: 1px solid #e6e6e6;
  padding: 16px 10px;
}
@media (max-width: 750px) {
  .single-content table th,
  .single-content table td {
    font-size: 3.9vw;
    padding: 3vw;
  }
}
.single-content .aligncenter {
  display: block;
  margin: 0 auto;
}
.single-content .alignright {
  float: right;
  margin-left: 40px;
}
@media (max-width: 750px) {
  .single-content .alignright {
    margin: 0;
    float: none;
  }
}
.single-content .alignleft {
  float: left;
  margin-right: 40px;
}
@media (max-width: 750px) {
  .single-content .alignleft {
    margin: 0;
    float: none;
  }
}
.single-content #image-details-caption {
  display: none;
}
.single-content .wp-caption {
  position: relative;
  width: 100% !important;
  margin-bottom: 0rem !important;
}
@media (max-width: 750px) {
  .single-content .wp-caption {
    padding: 0;
  }
}
.single-content .wp-caption.alignleft, .single-content .wp-caption.alignright {
  width: 48% !important;
}
@media (max-width: 750px) {
  .single-content .wp-caption.alignleft, .single-content .wp-caption.alignright {
    width: 100%;
  }
}
.single-content .wp-caption.alignleft {
  margin-left: 40px;
}
@media (max-width: 750px) {
  .single-content .wp-caption.alignleft {
    margin: 0;
  }
}
.single-content .wp-caption.alignright {
  margin-right: 40px;
}
@media (max-width: 750px) {
  .single-content .wp-caption.alignright {
    margin: 0;
  }
}
.single-content .wp-caption .wp-caption-text {
  margin-bottom: 0;
}
.single-content img[class*=wp-image-],
.single-content img[class*=attachment-] {
  height: auto;
  max-width: 600px;
}
@media (max-width: 750px) {
  .single-content img[class*=wp-image-],
  .single-content img[class*=attachment-] {
    width: 100%;
  }
}
.single-content img[class*=wp-image-].alignright,
.single-content img[class*=attachment-].alignright {
  height: auto;
  width: 48%;
}
@media (max-width: 750px) {
  .single-content img[class*=wp-image-].alignright,
  .single-content img[class*=attachment-].alignright {
    width: 100%;
  }
}
.single-content img[class*=wp-image-].alignleft,
.single-content img[class*=attachment-].alignleft {
  height: auto;
  width: 48%;
}
@media (max-width: 750px) {
  .single-content img[class*=wp-image-].alignleft,
  .single-content img[class*=attachment-].alignleft {
    width: 100%;
  }
}
.single-content .single-content__thumb {
  max-width: 600px;
  margin-inline: auto;
  margin-bottom: 52px;
}
@media (max-width: 750px) {
  .single-content .single-content__thumb {
    margin-bottom: 4vw;
  }
}
.single-content .single-content__thumb img {
  width: 100%;
  max-width: 100%;
}

.wp-pagenavi {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  align-items: stretch;
  -js-display: flex;
  text-align: center;
}

.wp-pagenavi > a,
.wp-pagenavi > span {
  font-size: 16px;
  width: 28px;
  height: 28px;
  font-weight: bold;
  display: inline-block;
  text-align: center;
  margin: 0 4px;
  line-height: 1.6;
}
@media (max-width: 750px) {
  .wp-pagenavi > a,
  .wp-pagenavi > span {
    margin: 0 5px;
  }
}

.wp-pagenavi > a {
  transition: all 0.2s;
}

.wp-pagenavi > a:hover {
  opacity: 0.6;
}

.wp-pagenavi .page,
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  background-color: #333;
  padding: 2px;
  color: #fff;
}

.wp-pagenavi .page .icon,
.wp-pagenavi .previouspostslink .icon,
.wp-pagenavi .nextpostslink .icon {
  font-size: 16px;
  color: #fff;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  background-size: 8px;
  background-position: center;
  background-repeat: no-repeat;
}

.wp-pagenavi .previouspostslink {
  background-image: url(../images/common/navi_arrow_left@2x.png);
}

.wp-pagenavi .nextpostslink {
  background-image: url(../images/common/navi_arrow_right@2x.png);
}

.wp-pagenavi .current {
  background: none;
  color: #333;
  padding: 2px;
}

.secEntry {
  background: url(../images/top/entry_bg@2x.jpg) no-repeat center center/cover;
  padding-block: 75px 76px;
  position: relative;
  z-index: 0;
}
@media (max-width: 750px) {
  .secEntry {
    background-image: url(../images/top/entry_bg_sp@2x.jpg);
    background-position: center top;
    background-size: 100%;
    padding-block: 10.4vw 0;
  }
}
.secEntry:before {
  content: "";
  background: url(../images/top/entry_bg_en.svg) no-repeat center center/cover;
  width: 525px;
  height: 191px;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
}
@media (max-width: 750px) {
  .secEntry:before {
    width: 39.3vw;
    height: 14.3vw;
  }
}
.secEntry:after {
  content: "";
  background: url(../images/top/entry_logo.svg) no-repeat center center/cover;
  width: 812px;
  height: 645px;
  display: block;
  position: absolute;
  left: -120px;
  top: -493px;
  z-index: 0;
}
@media (max-width: 750px) {
  .secEntry:after {
    width: 62.4vw;
    height: 49.3vw;
    left: -9vw;
    top: -39.9vw;
  }
}

.secEntry__heading {
  margin-inline: auto;
  text-align: center;
  background-image: url(../images/common/heading-01_bg-entry.svg);
  margin-bottom: 194px;
}
@media (max-width: 750px) {
  .secEntry__heading {
    margin-bottom: 21.3vw;
  }
}
.secEntry__heading .heading-01__ja {
  color: #333;
}
.secEntry__heading .heading-01__en span {
  background: linear-gradient(to right, rgb(20, 139, 207) 0%, rgb(40, 175, 143) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(255, 255, 255, 0);
  color: #148bcf;
}

.secEntry__btn a {
  width: 340px;
  margin-inline: auto;
  background: #fff;
  border: 1px solid #28af8f;
  border-radius: 30px;
  padding-block: 33px 42px;
  display: flex;
  justify-content: center;
}
@media (max-width: 750px) {
  .secEntry__btn a {
    width: 74vw;
    padding-block: 7.4vw 8.8vw;
    border-radius: 15px;
  }
}

.c-nav__cta {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  gap: 0 25px;
}
@media (max-width: 750px) {
  .c-nav__cta {
    grid-template-columns: 1fr;
    gap: 4vw 0;
  }
}
.c-nav__cta--header {
  display: none;
}
@media (max-width: 750px) {
  .c-nav__cta--header {
    display: block;
  }
  .c-nav__cta--header .c-nav__cta__item a {
    width: 100%;
    border-radius: 8px;
    padding: 7vw 0 7vw 7.5vw;
  }
  .c-nav__cta--header .c-nav__cta__item--contact {
    color: #148bcf;
    margin-bottom: 4vw;
  }
  .c-nav__cta--header .c-nav__cta__item--contact a {
    border-color: #148bcf;
    background: #fff url(../images/common/icn_mail.svg) no-repeat right 5vw top -1px/16.5vw;
    padding-right: 0;
  }
  .c-nav__cta--header .c-nav__cta__item--entry {
    color: #28af8f;
  }
  .c-nav__cta--header .c-nav__cta__item--entry a {
    border-color: #28af8f;
    background: #fff url(../images/common/footer_icn_entry@2x.png) no-repeat right 4.6vw top 2.7vw/21.6vw;
    padding-right: 0;
  }
  .c-nav__cta--header .c-nav__cta__item__ttl {
    margin-bottom: 3.46vw;
    margin-bottom: 1.9vw;
  }
  .c-nav__cta--header .c-nav__cta__item__ttl__en {
    font-size: 6.93vw;
    letter-spacing: 0.05em;
  }
}

.c-nav__cta__item a {
  display: block;
  border: 1px solid #fff;
  border-radius: 15px;
  padding: 28px 30px;
  transition: opacity 0.3s ease-out;
}
@media (hover: hover) {
  .c-nav__cta__item a:where(:any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .c-nav__cta__item a {
    max-width: 66vw;
    border-radius: 8px;
    padding: 7vw 0 7vw 7.5vw;
  }
}
.c-nav__cta__item--contact a {
  padding-right: 20px;
  background: url(../images/common/icn_mail.svg) no-repeat right 17px top/54px;
}
@media (max-width: 750px) {
  .c-nav__cta__item--contact a {
    padding-right: 0;
    background-size: 16.5vw;
    background-position: right 5vw top -1px;
  }
}
.c-nav__cta__item--entry a {
  padding-right: 137px;
  background: url(../images/common/footer_icn_entry@2x.png) no-repeat right 17px top 10px/86px;
}
@media (max-width: 750px) {
  .c-nav__cta__item--entry a {
    padding-right: 0;
    background-size: 21.6vw;
    background-position: right 4.6vw top 2.7vw;
  }
}

.c-nav__cta__item__ttl {
  letter-spacing: 0.03em;
  line-height: 1;
  margin-bottom: 5px;
}
@media (max-width: 750px) {
  .c-nav__cta__item__ttl {
    margin-bottom: 1.2vw;
  }
}

.c-nav__cta__item__ttl__en {
  font-size: 28px;
  letter-spacing: 0.05em;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  line-height: 1;
}
@media (max-width: 750px) {
  .c-nav__cta__item__ttl__en {
    font-size: 6.93vw;
  }
}

/* Structure ------------ */
/*
---------------------------------------
header
---------------------------------------
*/
.st-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  min-width: 1200px;
  transition: all 0.4s;
}
@media (max-width: 750px) {
  .st-header {
    min-width: 0px;
  }
}
.st-header.fixed {
  background: rgba(255, 255, 255, 0.9);
}

.st-header__content {
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 30px 0 23px;
  height: 100px;
}
@media (max-width: 750px) {
  .st-header__content {
    justify-content: flex-start;
    padding: 0 3.6vw;
    height: 65px;
  }
}

.st-header__logo a {
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
@media (max-width: 750px) {
  .st-header__logo img {
    width: 43vw;
    max-width: 162px;
  }
}

.st-header__nav {
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 750px) {
  .st-header__nav {
    display: block;
    padding: 13.3vw 17vw;
  }
}

.st-header__globalNavWrap {
  display: flex;
  align-items: center;
}
@media (max-width: 750px) {
  .st-header__globalNavWrap {
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 11.8vw;
  }
}

.st-header__globalNav {
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}
@media (max-width: 750px) {
  .st-header__globalNav {
    display: block;
    align-items: flex-start;
  }
}
@media (max-width: 750px) {
  .st-header__globalNav li:not(:last-child) {
    margin-bottom: 6.3vw;
  }
}
.st-header__globalNav--recruit {
  position: relative;
  margin-left: 40px;
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit {
    margin-left: 0;
  }
}
.st-header__globalNav--recruit:before {
  content: "";
  background: url(../images/common/header_divide.svg) no-repeat center center/cover;
  width: 2px;
  height: 16px;
  display: block;
  position: absolute;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit:before {
    display: none;
  }
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit li {
    margin-bottom: 3.5vw !important;
  }
}

.st-header__globalNav--recruit__child.sp {
  display: none;
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit__child.sp {
    display: block;
  }
}
.st-header__globalNav--recruit__child.pc {
  display: block;
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit__child.pc {
    display: none;
  }
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit__child {
    display: block;
    margin-bottom: 3.3vw !important;
  }
}
@media (max-width: 750px) {
  .st-header__globalNav--recruit__child .st-header__globalNav__link {
    margin-left: 0.7em;
  }
  .st-header__globalNav--recruit__child .st-header__globalNav__link:before {
    content: "-";
    display: inline-block;
    margin-right: 0.1em;
  }
}

.st-header__globalNav__link {
  display: block;
  padding: 15px 9px;
  transition: all 0.3s;
  position: relative;
  line-height: 1;
  font-weight: bold;
  letter-spacing: 0.03em;
  color: #148bcf;
}
.st-header__globalNav__link.green {
  color: #28af8f;
}
@media (min-width: 751px) {
  .st-header__globalNav__link:hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .st-header__globalNav__link {
    padding: 1vw 0;
    font-size: 3.866vw;
  }
}

.st-header__nav__cta {
  display: none;
}
@media (max-width: 750px) {
  .st-header__nav__cta {
    display: block;
  }
}

.st-header__cta a {
  display: block;
  width: 200px;
  padding: 11px 24px;
  background: #fff;
  color: #148bcf;
  border: 1px solid #148bcf;
  font-weight: bold;
  border-radius: 40px;
  font-size: 16px;
  letter-spacing: 0.05em;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  line-height: 1;
  position: relative;
  transition: all 0.3s ease-out;
}
.st-header__cta a:before {
  content: "";
  background: url(../images/common/header_icn_mail.svg) no-repeat center top/cover;
  width: 54px;
  height: 32px;
  display: block;
  position: absolute;
  right: 24px;
  bottom: 0;
}
@media (min-width: 751px) {
  .st-header__cta a:hover {
    background: #148bcf;
    border-color: #fff;
    color: #fff;
  }
}
@media (max-width: 750px) {
  .st-header__cta {
    display: none;
  }
}

#sp-btn {
  display: none;
}

@media (max-width: 750px) {
  /* sp-btn */
  .scroll-prevent {
    position: fixed;
    width: 100%;
    height: 100%;
  }
  #sp-btn {
    position: fixed;
    z-index: 99999999999;
    top: 0;
    right: 0;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 57px;
    height: 57px;
    transition: all 0.4s;
    padding-bottom: 10px;
  }
  #sp-btn:before {
    content: "MENU";
    font-size: 10px;
    display: block;
    font-family: "Poppins", sans-serif;
    color: #333;
    letter-spacing: 0.1em;
    font-weight: 500;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 7px;
    text-align: center;
    transition: all 0.4s;
  }
  #sp-btn span {
    width: 29px;
    height: 1px;
    transition: all 0.4s;
    background: #333;
  }
  #sp-btn span:not(:last-child) {
    margin-bottom: 7px;
  }
  #sp-btn.active {
    background: none;
  }
  #sp-btn.active:before {
    content: "CLOSE";
  }
  #sp-btn #sp-btn-a,
  #sp-btn #sp-btn-a span {
    display: inline-block;
    box-sizing: border-box;
    transition: all 0.4s;
  }
  #sp-btn #sp-btn-a {
    display: block;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    width: 29px;
    height: 29px;
    background: none;
  }
  #sp-btn #sp-btn-a:hover {
    opacity: 1;
  }
  #sp-btn.active span:nth-of-type(1) {
    -webkit-transform: translateY(8px) rotate(-45deg);
    transform: translateY(8px) rotate(-45deg);
  }
  #sp-btn.active span:nth-of-type(2) {
    opacity: 0;
  }
  #sp-btn.active span:nth-of-type(3) {
    width: 100%;
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg);
  }
  /* g-anv */
  #g-nav {
    position: fixed;
    z-index: 9999999;
    top: 65px;
    left: 0;
    right: 0;
    margin: 0 auto;
    overflow-x: hidden;
    overflow-y: scroll;
    width: 100%;
    height: calc(100% - 65px);
    background: rgba(255, 255, 255, 0.9);
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    display: none;
  }
}
/*
---------------------------------------
footer
--------------------------------------
*/
.st-footer {
  padding: 152px 0 0;
  position: relative;
}
@media (max-width: 750px) {
  .st-footer {
    padding: 15.8vw 0 0;
  }
}
.st-footer .inner {
  max-width: 1064px;
  margin: 0 auto;
  padding: 0 20px;
  word-wrap: break-word;
  word-break: break-all;
}
@media (max-width: 750px) {
  .st-footer .inner {
    padding: 0 3%;
  }
}

.st-footer__box {
  display: -ms-flexbox;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 750px) {
  .st-footer__box {
    display: block;
  }
}

@media (max-width: 750px) {
  .st-footer__left {
    padding-inline: 7vw;
    margin-bottom: 5.2vw;
  }
}

@media (max-width: 750px) {
  .st-footer__logoWrap {
    display: flex;
    align-items: center;
    margin-bottom: 8vw;
  }
}

.st-footer__logo {
  margin-bottom: 48px;
}
@media (max-width: 750px) {
  .st-footer__logo {
    margin-bottom: 0;
    text-align: center;
  }
  .st-footer__logo img {
    width: 24vw;
    height: auto;
    margin: 0 auto;
  }
}

.st-footer__company {
  font-size: 22px;
  margin-bottom: 8px;
}
@media (max-width: 750px) {
  .st-footer__company {
    font-size: 4.8vw;
    margin-bottom: 0;
    flex: 1;
    padding-top: 4vw;
    padding-left: 5.8vw;
  }
}

.st-footer__address {
  line-height: 2;
  margin-bottom: 45px;
}
@media (max-width: 750px) {
  .st-footer__address {
    line-height: 1.923;
    margin-bottom: 8.7vw;
  }
}

.st-footer__copyright small {
  font-size: 12px;
  letter-spacing: 0.05em;
  font-family: "Poppins", sans-serif;
}
@media (max-width: 750px) {
  .st-footer__copyright small {
    font-size: 3.2vw;
  }
}

.st-footer__right {
  flex: 1;
  margin-left: 130px;
  padding: 70px 20px 87px 90px;
  color: #fff;
  position: relative;
}
@media (max-width: 750px) {
  .st-footer__right {
    margin-left: 0;
    padding: 8.2vw 5vw 12vw 8vw;
  }
}
.st-footer__right:before {
  content: "";
  background: linear-gradient(to right, rgba(20, 139, 207, 0.7) 0%, rgba(40, 175, 143, 0.7) 100%);
  width: calc(100% + 50vw - 515px);
  height: 100%;
  display: block;
  position: absolute;
  right: calc(-50vw + 510px);
  top: 0;
  border-radius: 30px 0 0 0;
  z-index: -1;
}
@media (max-width: 750px) {
  .st-footer__right:before {
    width: 103%;
    height: 100%;
    right: -3.1%;
    top: 0;
    border-radius: 0;
    border-radius: 15px 0 0 0;
  }
}

.st-footer__globalNavWrap {
  display: flex;
  gap: 90px;
  margin-bottom: 40px;
}
@media (max-width: 750px) {
  .st-footer__globalNavWrap {
    gap: 18.2vw;
    margin-bottom: 7.8vw;
  }
}

.st-footer__globalNav li:not(:last-child) {
  margin-bottom: 18px;
}
@media (max-width: 750px) {
  .st-footer__globalNav li:not(:last-child) {
    margin-bottom: 5.13vw;
  }
}
.st-footer__globalNav li a {
  font-size: 16px;
  color: #fff;
  transition: opacity 0.3s ease-out;
}
@media (hover: hover) {
  .st-footer__globalNav li a:where(:any-link, :enabled, summary):hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) {
  .st-footer__globalNav li a {
    font-size: 3.73vw;
  }
}
.st-footer__globalNav--recruit li:not(:last-child) {
  margin-bottom: 0;
}
@media (max-width: 750px) {
  .st-footer__globalNav--recruit li:not(:last-child) {
    margin-bottom: 2.7vw;
  }
}
.st-footer__globalNav .st-footer__globalNav--recruit__child {
  margin-left: 0.7em;
  line-height: 1.8;
}
.st-footer__globalNav .st-footer__globalNav--recruit__child:before {
  content: "-";
  display: inline-block;
}

.st-footer__pageTop {
  position: fixed;
  right: 20px;
  bottom: 36px;
  z-index: 10;
  opacity: 0;
  visibility: hidden;
  transition: all 0.2s;
}
@media (max-width: 750px) {
  .st-footer__pageTop {
    right: 3.8%;
    bottom: 5vw;
  }
}
.st-footer__pageTop.fixed {
  opacity: 1;
  visibility: visible;
}
.st-footer__pageTop a {
  display: block;
  width: 12px;
  height: 120px;
  text-align: right;
  text-align: right;
  display: -ms-flexbox;
  display: flex;
  justify-content: flex-end;
  transition: opacity 0.3s ease-out;
  position: relative;
}
.st-footer__pageTop a:before {
  content: "";
  background: url(../images/common/arrow-top-white.svg) no-repeat center center/cover;
  width: 8px;
  height: 40px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  transition: transform 0.3s ease-out;
}
@media (max-width: 750px) {
  .st-footer__pageTop a:before {
    width: 1.73vw;
    height: 8.8vw;
  }
}
@media (min-width: 751px) {
  .st-footer__pageTop a:hover {
    opacity: 0.7;
  }
  .st-footer__pageTop a:hover:before {
    transform: translateY(-5px);
  }
}
@media (max-width: 750px) {
  .st-footer__pageTop a {
    width: 2.63vw;
    height: 25.06vw;
  }
}

.st-footer__pageTop__txt {
  font-size: 12px;
  color: #fff;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  transform: rotate(180deg);
  text-align: left;
  transition: all 0.4s;
}
@media (max-width: 750px) {
  .st-footer__pageTop__txt {
    font-size: 2.66vw;
  }
}

/* Pages ------------ */
/*
---------------------------------------
top
---------------------------------------
*/
#top .secMainView {
  height: 100vh;
  max-height: 750px;
}
@media (max-width: 750px) {
  #top .secMainView {
    height: auto;
    max-height: none;
  }
}
@media (max-width: 750px) {
  #top .secMainView__slider {
    margin-bottom: 0;
  }
}
#top .secMainView__slider .dots-wrap {
  position: absolute;
  bottom: 20px;
  right: 60px;
  z-index: 1;
  display: flex;
  gap: 10px;
}
@media (max-width: 750px) {
  #top .secMainView__slider .dots-wrap {
    right: 6vw;
    bottom: auto;
    top: 132.9vw;
  }
}
#top .secMainView__slider .dots-wrap button {
  color: #fff;
  font-size: 20px;
  letter-spacing: 0.05em;
  padding: 0 13px;
  border-bottom: 4px solid #fff;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  #top .secMainView__slider .dots-wrap button {
    font-size: 3.12vw;
    padding: 0 1.8vw;
    border-width: 2.5px;
  }
}
#top .secMainView__slider .dots-wrap li.slick-active button {
  color: #148bcf;
  border-color: #148bcf;
}
@keyframes slide {
  from {
    transform: scale(1.04) translateX(-2%);
  }
  to {
    transform: scale(1.04) translateX(2%);
  }
}
#top .fade-in-right {
  opacity: 0;
  transform: translateX(40px);
}
#top .secMainView__catch.fade-in-right {
  transition: all 1s ease-out;
}
#top .secMainView__txt.fade-in-right {
  transition: all 1s ease-out 0.2s;
}
#top .secMainView__item {
  position: relative;
}
#top .secMainView__item.animating .secMainView__img img {
  animation: slide 5s linear;
  animation-fill-mode: forwards;
}
#top .secMainView__item.animating .fade-in-right {
  opacity: 1;
  transform: translateX(0);
}
@media (max-width: 750px) {
  #top .secMainView__item.item-01 .secMainView__img {
    margin-bottom: 2vw;
  }
  #top .secMainView__item.item-01 .secMainView__txtbox {
    left: 0;
    bottom: 11vw;
  }
  #top .secMainView__item.item-01 .secMainView__catch img {
    width: 72vw;
    margin-inline: 7.5vw;
  }
}
@media (max-width: 750px) {
  #top .secMainView__item.item-02 .secMainView__img {
    margin-bottom: 4.8vw;
  }
  #top .secMainView__item.item-02 .secMainView__txtbox {
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 38.5vw;
  }
  #top .secMainView__item.item-02 .secMainView__catch img {
    width: 81vw;
    margin-inline: auto;
  }
  #top .secMainView__item.item-02 .secMainView__txt {
    text-align: center;
    margin-top: 2.7vw;
  }
}
#top .secMainView__img {
  width: calc(100% - 230px);
  height: calc(100vh - 40px);
  max-height: 710px;
  overflow: hidden;
  border-radius: 30px;
  margin-left: auto;
  margin-right: 20px;
  margin-top: 20px;
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  #top .secMainView__img {
    width: 94.66vw;
    height: 140vw;
    border-radius: 15px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
#top .secMainView__img picture {
  display: block;
  height: 100%;
}
#top .secMainView__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transform: scale(1.04) translateX(-2%);
}
#top #js-secMainView__img--bg {
  position: relative;
}
#top #js-secMainView__img--bg:before {
  content: "";
  background: linear-gradient(to right, #b8dcf2 0%, #bee8de 100%);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  transition: opacity 1s ease-out;
}
#top #js-secMainView__img--bg.stop:before {
  opacity: 1;
}
#top #js-secMainView__img--bg:not(.stop):before {
  opacity: 0;
}
#top .secMainView__txtbox {
  position: absolute;
  left: 89px;
  bottom: 82px;
  z-index: 1;
}
#top .secMainView__txt {
  margin-top: 33px;
  font-size: 16px;
  letter-spacing: 0.15em;
}
@media (max-width: 750px) {
  #top .secMainView__txt {
    font-size: 3.2vw;
    letter-spacing: 0.08em;
    margin-top: 5.7vw;
    padding-inline: 7.5vw;
    line-height: 1.75;
  }
}
#top .secNews {
  padding-block: 130px 130px;
}
@media (max-width: 750px) {
  #top .secNews {
    padding-block: 11vw 16vw;
  }
}
#top .secNews .inner {
  max-width: 990px;
  display: flex;
}
@media (max-width: 750px) {
  #top .secNews .inner {
    max-width: 100%;
    display: block;
  }
}
@media (max-width: 750px) {
  #top .secNews__heading {
    margin-inline: auto;
    margin-bottom: 8vw;
  }
}
#top .secNews__right {
  flex: 1;
  margin-left: 70px;
  padding-top: 50px;
}
@media (max-width: 750px) {
  #top .secNews__right {
    margin-left: 0;
    padding-top: 0;
  }
}
#top .secNews__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin-bottom: 28px;
}
@media (max-width: 750px) {
  #top .secNews__list {
    gap: 3.5vw;
    margin-bottom: 4.5vw;
  }
}
#top .secNews__item a {
  display: block;
  padding: 25px 32px;
  padding-right: 70px;
  background: #f8f6f0;
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 20px;
  position: relative;
}
@media (max-width: 750px) {
  #top .secNews__item a {
    padding: 6vw 4.8vw;
    padding-right: 13vw;
    gap: 0;
  }
}
#top .secNews__item a:before {
  content: "";
  background: url(../images/common/arrow-right-blue.svg) no-repeat center center/cover;
  width: 30px;
  height: 8px;
  display: block;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  right: 33px;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  #top .secNews__item a:before {
    width: 6.53vw;
    height: 1.733vw;
    right: 3.8vw;
    top: auto;
    transform: translate(0);
    bottom: 8.2vw;
  }
}
@media (hover: hover) {
  #top .secNews__item a:where(:any-link, :enabled, summary):hover:before {
    transform: translate(5px, -50%);
  }
}
#top .secNews__date {
  color: #148bcf;
  letter-spacing: 0.05em;
  line-height: 1.75;
}
@media (max-width: 750px) {
  #top .secNews__date {
    line-height: 1.61;
  }
}
#top .secNews__ttl {
  line-height: 1.75;
}
@media (max-width: 750px) {
  #top .secNews__ttl {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.61;
  }
}
#top .secNews__btn {
  display: flex;
  justify-content: flex-end;
}
#top .secAbout {
  padding-bottom: 165px;
}
@media (max-width: 750px) {
  #top .secAbout {
    padding-bottom: 18.4vw;
  }
}
#top .secAbout .inner {
  max-width: 1070px;
  display: flex;
}
@media (max-width: 750px) {
  #top .secAbout .inner {
    max-width: 100%;
    display: block;
  }
}
#top .secAbout__img {
  padding-top: 30px;
}
@media (max-width: 750px) {
  #top .secAbout__img {
    padding-top: 0;
    margin-bottom: 8vw;
  }
}
#top .secAbout__txtbox {
  flex: 1;
  padding-left: 56px;
}
@media (max-width: 750px) {
  #top .secAbout__txtbox {
    padding-left: 0;
  }
}
#top .secAbout__heading {
  margin-bottom: 42px;
}
@media (max-width: 750px) {
  #top .secAbout__heading {
    margin-left: 1.5vw;
    margin-bottom: 6vw;
  }
}
#top .secAbout__txt {
  margin-bottom: 30px;
}
@media (max-width: 750px) {
  #top .secAbout__txt {
    margin-bottom: 3.6vw;
  }
}
#top .secAbout__btn {
  display: flex;
  justify-content: flex-end;
}
#top .secAbout__btn .c-btn-01__link {
  width: 230px;
}
@media (max-width: 750px) {
  #top .secAbout__btn .c-btn-01__link {
    width: 49.7vw;
  }
}
#top .secRecruit {
  background: url(../images/top/recruit_bg@2x.jpg) no-repeat center top/100%;
  padding-top: 78px;
  padding-bottom: 122px;
  position: relative;
}
@media (max-width: 750px) {
  #top .secRecruit {
    background-image: url(../images/top/recruit_bg_sp@2x.jpg);
    padding-top: 4.7vw;
    padding-bottom: 18.6vw;
  }
}
#top .secRecruit:before {
  content: "";
  background: url(../images/top/recruit_bg_en.svg) no-repeat center top/cover;
  width: 156px;
  height: 743px;
  display: block;
  position: absolute;
  left: 0;
  top: 143px;
}
@media (max-width: 750px) {
  #top .secRecruit:before {
    width: 11.6vw;
    height: 55.8vw;
    top: 11vw;
  }
}
@media (max-width: 750px) {
  #top .secRecruit .inner {
    padding-inline: 4%;
  }
}
#top .secRecruit__heading {
  margin-bottom: 35.4vw;
}
@media (max-width: 750px) {
  #top .secRecruit__heading {
    margin-bottom: 32vw;
  }
}
#top .secRecruit__about {
  background: #fff;
  border-radius: 30px;
  padding: 58px 60px;
  max-width: 760px;
  margin: 0 auto 48px;
}
@media (max-width: 750px) {
  #top .secRecruit__about {
    border-radius: 15px;
    padding: 7.6vw 4.8vw 7vw;
    width: 100%;
    max-width: 92vw;
    margin: 0 auto;
  }
}
#top .secRecruit__about__ttl {
  margin-bottom: 22px;
}
@media (max-width: 750px) {
  #top .secRecruit__about__ttl {
    margin-bottom: 4vw;
  }
}
#top .secRecruit__about__txt {
  max-width: 560px;
  margin-inline: auto;
}
@media (max-width: 750px) {
  #top .secRecruit__about__txt {
    max-width: 100%;
  }
}
#top .secRecruit__point {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-bottom: 45px;
}
@media (max-width: 750px) {
  #top .secRecruit__point {
    grid-template-columns: 1fr;
    margin-bottom: 2.9vw;
    padding-inline: 4vw;
  }
}
#top .secRecruit__point__item {
  text-align: center;
}
@media (max-width: 750px) {
  #top .secRecruit__point__item {
    text-align: left;
    display: grid;
    grid-template-columns: 1fr 1.7fr;
    grid-template-rows: repeat(2, max-content);
    gap: 5.2vw 8vw;
    grid-template-areas: "secRecruit__point__num secRecruit__point__ttl" "secRecruit__point__icn secRecruit__point__txt";
    align-content: center;
    padding-block: 7vw;
  }
}
#top .secRecruit__point__item:not(:last-child) {
  background: url(../images/top/recruit_point_line@2x.png) no-repeat right center/2px;
}
@media (max-width: 750px) {
  #top .secRecruit__point__item:not(:last-child) {
    background: url(../images/top/recruit_point_line_sp@2x.png) no-repeat center bottom/100%;
  }
}
#top .secRecruit__point__num {
  margin-bottom: 16px;
}
@media (max-width: 750px) {
  #top .secRecruit__point__num {
    grid-area: secRecruit__point__num;
    width: 24vw;
    margin-bottom: 0;
    margin-left: 1vw;
  }
}
#top .secRecruit__point__ttl {
  font-size: 32px;
  margin-bottom: 10px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  #top .secRecruit__point__ttl {
    grid-area: secRecruit__point__ttl;
    font-size: 5.6vw;
    margin-bottom: 0;
    line-height: 1;
    text-align: left;
    align-self: end;
    transform: translateY(-2vw);
  }
}
#top .secRecruit__point__txt {
  text-align: center;
  margin-bottom: 43px;
}
@media (max-width: 750px) {
  #top .secRecruit__point__txt {
    grid-area: secRecruit__point__txt;
    margin-bottom: 0;
    text-align: left;
    align-self: start;
    transform: translateY(-2vw);
  }
}
@media (max-width: 750px) {
  #top .secRecruit__point__icn {
    grid-area: secRecruit__point__icn;
    width: 14.5vw;
    margin-inline: auto;
  }
}
#top .secRecruit__btn {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 750px) {
  #top .secRecruit__btn {
    margin-right: 4vw;
  }
}
#top .secLinks {
  position: relative;
  z-index: 1;
  padding-bottom: 150px;
}
@media (max-width: 750px) {
  #top .secLinks {
    padding-bottom: 21.2vw;
  }
}
#top .secLinks__list {
  max-width: 880px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
}
@media (max-width: 750px) {
  #top .secLinks__list {
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 5vw;
  }
}
#top .secLinks__item a {
  display: block;
  padding: 160px 50px 60px 60px;
  border-radius: 30px;
  position: relative;
}
@media (max-width: 750px) {
  #top .secLinks__item a {
    padding: 26.4vw 8vw 8vw 10.2vw;
    border-radius: 15px;
  }
}
#top .secLinks__item.item-01 a {
  background: linear-gradient(135deg, rgb(147, 215, 199) 0%, rgb(40, 175, 143) 100%);
  color: #fff;
}
#top .secLinks__item.item-01 a:before {
  content: "";
  background: url(../images/top/links_icn_01.svg) no-repeat center center/cover;
  width: 90px;
  height: 92px;
  display: block;
  position: absolute;
  right: 51px;
  top: 29px;
}
@media (max-width: 750px) {
  #top .secLinks__item.item-01 a:before {
    width: 15.46vw;
    height: 15.66vw;
    right: 8.06vw;
    top: 4.93vw;
  }
}
#top .secLinks__item.item-02 a {
  background: linear-gradient(135deg, rgb(251, 250, 247) 0%, rgb(248, 246, 240) 100%);
  color: #28af8f;
}
#top .secLinks__item.item-02 a:before {
  content: "";
  background: url(../images/top/links_icn_02.svg) no-repeat center center/cover;
  width: 90px;
  height: 86px;
  display: block;
  position: absolute;
  right: 51px;
  top: 29px;
}
@media (max-width: 750px) {
  #top .secLinks__item.item-02 a:before {
    width: 15.6vw;
    height: 14.66vw;
    right: 6.56vw;
    top: 5.83vw;
  }
}
#top .secLinks__ttl__en {
  display: block;
  font-size: 44px;
  font-weight: 500;
  letter-spacing: 0.03em;
  margin-bottom: 40px;
}
@media (max-width: 750px) {
  #top .secLinks__ttl__en {
    font-size: 7.6vw;
    margin-bottom: 7.3vw;
  }
}
#top .secLinks__ttl {
  font-size: 32px;
  letter-spacing: 0.1em;
  margin-bottom: 7px;
}
@media (max-width: 750px) {
  #top .secLinks__ttl {
    font-size: 5.6vw;
    margin-bottom: 1.5vw;
  }
}
#top .secLinks__txt {
  margin-bottom: 16px;
  padding-right: 10px;
}
@media (max-width: 750px) {
  #top .secLinks__txt {
    margin-bottom: 3.8vw;
    padding-right: 3vw;
  }
}
#top .secLinks__btn {
  display: flex;
  justify-content: flex-end;
}

/*
---------------------------------------
404
---------------------------------------
*/
.error404 .text_404 {
  text-align: center;
  font-size: 18px;
}
@media (max-width: 750px) {
  .error404 .text_404 {
    font-size: 3.8vw;
  }
}
.error404 .btn-404 {
  text-align: center;
  margin: 30px auto 120px;
}
@media (max-width: 750px) {
  .error404 .btn-404 {
    margin: 10vw auto;
  }
}
.error404 .btn-404 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 240px;
  height: 52px;
  box-sizing: border-box;
  padding: 0 10px 0 10px;
  border: 1px solid #000;
  background: #e6e6e6;
  line-height: 1;
  transition: all 0.5s;
  font-size: 14px;
  margin: 0 auto;
}
.error404 .btn-404 a:after {
  content: "▶︎";
  padding: 0 5px 0 0;
}
@media (max-width: 750px) {
  .error404 .btn-404 a {
    font-size: 3.4vw;
    width: 60vw;
    height: 12vw;
    padding: 0 0 0 3vw;
  }
}
@media (min-width: 751px) {
  .error404 .btn-404 a:hover {
    opacity: 0.6;
  }
}

/*
---------------------------------------
contact
---------------------------------------
*/
#contact .pageTtl {
  margin-bottom: 100px;
}
@media (max-width: 750px) {
  #contact .pageTtl {
    margin-bottom: 11vw;
  }
}
@media (max-width: 750px) {
  #contact .pageTtl .pageTtl__inner:before {
    background-image: url(../images/contact/pageTtl_bg_sp@2x.jpg);
  }
}
#contact .sec-form {
  background: #f8f6f0;
  padding: 104px 0 94px;
}
@media (max-width: 750px) {
  #contact .sec-form {
    padding: 10vw 0;
  }
}
#contact .sec-form__desc {
  font-size: 16px;
  line-height: 1.75;
  text-align: center;
  margin-bottom: 88px;
}
@media (max-width: 750px) {
  #contact .sec-form__desc {
    font-size: 3.36vw;
    line-height: 1.64;
    text-align: left;
    margin-bottom: 10vw;
  }
}

/*
---------------------------------------
news-ac
---------------------------------------
*/
#news-ac .pageTtl {
  margin-bottom: 130px;
}
@media (max-width: 750px) {
  #news-ac .pageTtl {
    margin-bottom: 13vw;
  }
}
#news-ac .secNews__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 810px;
  margin-inline: auto;
  margin-bottom: 52px;
}
@media (max-width: 750px) {
  #news-ac .secNews__list {
    gap: 4.8vw;
    margin-bottom: 5vw;
  }
}
#news-ac .secNews__item a {
  display: block;
  padding: 30px 32px;
  padding-right: 70px;
  background: #f8f6f0;
  position: relative;
}
@media (max-width: 750px) {
  #news-ac .secNews__item a {
    padding: 4vw 3.8vw;
    padding-right: 13vw;
    gap: 0;
  }
}
#news-ac .secNews__item a:before {
  content: "";
  background: url(../images/common/arrow-right-blue.svg) no-repeat center center/cover;
  width: 30px;
  height: 8px;
  display: block;
  position: absolute;
  bottom: 41px;
  right: 27px;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  #news-ac .secNews__item a:before {
    width: 6.53vw;
    height: 1.733vw;
    right: 3.8vw;
    top: auto;
    transform: translate(0);
    bottom: 6.1vw;
  }
}
@media (hover: hover) {
  #news-ac .secNews__item a:where(:any-link, :enabled, summary):hover:before {
    transform: translate(5px, 0);
  }
}
#news-ac .secNews__meta {
  display: flex;
  align-items: center;
  margin-bottom: 18px;
}
@media (max-width: 750px) {
  #news-ac .secNews__meta {
    margin-bottom: 3vw;
  }
}
#news-ac .secNews__date {
  color: #148bcf;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-right: 26px;
}
@media (max-width: 750px) {
  #news-ac .secNews__date {
    line-height: 1.61;
    margin-right: 3.5vw;
  }
}
#news-ac .secNews__category {
  font-size: 14px;
  color: #fff;
  display: inline-block;
  background: #148bcf;
  padding: 1px 21px;
}
@media (max-width: 750px) {
  #news-ac .secNews__category {
    grid-area: secNews__category;
    font-size: 3.2vw;
    padding: 0.2vw 4vw;
  }
}
#news-ac .secNews__ttl {
  font-size: 18px;
  line-height: 1.75;
}
@media (max-width: 750px) {
  #news-ac .secNews__ttl {
    font-size: 3.73vw;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-height: 1.785;
  }
}

/*
---------------------------------------
news-dtl
---------------------------------------
*/
#news-dtl .pageTtl {
  margin-bottom: 130px;
}
@media (max-width: 750px) {
  #news-dtl .pageTtl {
    margin-bottom: 11vw;
  }
}
#news-dtl .artNews {
  background: #f8f6f0;
  padding-top: 115px;
  padding-bottom: 100px;
}
@media (max-width: 750px) {
  #news-dtl .artNews {
    padding-top: 11vw;
    padding-bottom: 10vw;
  }
}
#news-dtl .artNews .inner {
  max-width: 850px;
}
@media (max-width: 750px) {
  #news-dtl .artNews .inner {
    max-width: 100%;
  }
}
#news-dtl .artNews__head {
  padding-bottom: 21px;
  border-bottom: 1px solid #333;
  margin-bottom: 57px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 750px) {
  #news-dtl .artNews__head {
    padding-bottom: 4vw;
    margin-bottom: 7vw;
  }
}
#news-dtl .artNews__meta {
  display: flex;
  align-items: center;
  margin-bottom: 21px;
}
@media (max-width: 750px) {
  #news-dtl .artNews__meta {
    margin-bottom: 4vw;
  }
}
#news-dtl .artNews__date {
  color: #148bcf;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-right: 26px;
}
@media (max-width: 750px) {
  #news-dtl .artNews__date {
    line-height: 1.61;
    margin-right: 3.5vw;
  }
}
#news-dtl .artNews__category {
  font-size: 14px;
  color: #fff;
  display: inline-block;
  background: #148bcf;
  padding: 1px 21px;
}
@media (max-width: 750px) {
  #news-dtl .artNews__category {
    grid-area: secNews__category;
    font-size: 3.2vw;
    padding: 0.2vw 4vw;
  }
}
#news-dtl .artNews__ttl {
  width: 100%;
  font-size: 18px;
  line-height: 1.5;
}
@media (max-width: 750px) {
  #news-dtl .artNews__ttl {
    font-size: 3.73vw;
    line-height: 1.75;
  }
}
#news-dtl .artNews__inner {
  max-width: 900px;
}
#news-dtl .artNews__thumb {
  max-width: 600px;
  margin-inline: auto;
  margin-bottom: 52px;
}
@media (max-width: 750px) {
  #news-dtl .artNews__thumb {
    margin-bottom: 4vw;
  }
}
#news-dtl .artNews__thumb img {
  width: 100%;
  max-width: 100%;
}
#news-dtl .c-post__navWrap {
  padding-block: 58px 0px;
}
@media (max-width: 750px) {
  #news-dtl .c-post__navWrap {
    padding-block: 10vw 0;
  }
}
#news-dtl .c-post__nav {
  display: grid;
  grid-template-columns: 1fr 0.85fr 1fr;
  justify-content: space-between;
  align-items: center;
  max-width: 815px;
  margin-inline: auto;
}
@media (max-width: 750px) {
  #news-dtl .c-post__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-inline: 0;
  }
}
#news-dtl .post__nav__btn--prev .c-btn-01__in {
  padding-left: 53px;
  padding-right: 0;
}
#news-dtl .post__nav__btn--prev .c-btn-01__in:before {
  background: url(../images/common/arrow-left-blue.svg) no-repeat center center/cover;
  right: auto;
  left: 0;
}
@media (hover: hover) {
  #news-dtl .post__nav__btn--prev .c-btn-01__link:where(:any-link, :enabled, summary):hover.c-btn-01__in:before {
    transform: translate(-5px, -50%);
  }
}
@media (max-width: 750px) {
  #news-dtl .post__nav__btn--prev {
    order: 1;
  }
}
#news-dtl .post__nav__btn--next {
  display: flex;
  justify-content: flex-end;
}
#news-dtl .post__nav__btn--next .c-btn-01__in {
  padding-right: 53px;
}
@media (max-width: 750px) {
  #news-dtl .post__nav__btn--next {
    order: 2;
  }
}
#news-dtl .post__nav__btn__txt {
  font-size: 16px;
  font-weight: bold;
}
@media (max-width: 750px) {
  #news-dtl .post__nav__btn__txt {
    font-size: 3.5vw;
  }
}
@media (max-width: 750px) {
  #news-dtl .post__nav__back {
    order: 3;
    width: 100%;
    margin-inline: auto;
    margin-top: 8vw;
  }
}
#news-dtl .post__nav__back a {
  border: 1px solid #148bcf;
  border-radius: 30px;
  font-size: 16px;
  display: grid;
  place-items: center;
  padding: 32px 20px;
  color: #148bcf;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  #news-dtl .post__nav__back a {
    width: 53vw;
    margin-inline: auto;
    font-size: 3.46vw;
    border-radius: 15px;
    padding: 6.7vw 3vw;
  }
}
@media (hover: hover) {
  #news-dtl .post__nav__back a:where(:any-link, :enabled, summary):hover {
    background: #148bcf;
    color: #fff;
  }
}

/*
---------------------------------------
company
---------------------------------------
*/
#company .pageTtl {
  margin-bottom: 100px;
}
@media (max-width: 750px) {
  #company .pageTtl {
    margin-bottom: 11vw;
  }
}
#company .c-pageNav {
  margin-bottom: 120px;
}
@media (max-width: 750px) {
  #company .c-pageNav {
    margin-bottom: 10.5vw;
  }
}
#company .c-pageNav__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 12px;
  justify-content: center;
  max-width: 864px;
  margin-inline: auto;
}
@media (max-width: 750px) {
  #company .c-pageNav__list {
    max-width: 100%;
    gap: 2.66vw;
  }
}
#company .c-pageNav__item a {
  background: #f8f6f0;
  display: block;
  text-align: center;
  font-size: 16px;
  color: #148bcf;
  letter-spacing: 0.1em;
  height: 70px;
  display: grid;
  place-items: center;
  position: relative;
}
@media (max-width: 750px) {
  #company .c-pageNav__item a {
    font-size: 3.73vw;
    line-height: 1.428;
    height: 20vw;
  }
}
#company .c-pageNav__item a:before {
  content: "";
  background: url(../images/common/arrow-bottom-blue.svg) no-repeat center center/cover;
  height: 30px;
  width: 8px;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -15px;
  transition: all 0.3s ease-out;
}
@media (max-width: 750px) {
  #company .c-pageNav__item a:before {
    height: 6.53vw;
    width: 1.733vw;
    bottom: -3.6vw;
  }
}
@media (hover: hover) {
  #company .c-pageNav__item a:where(:any-link, :enabled, summary):hover:before {
    transform: translateY(5px);
  }
}
#company .secMessage {
  padding-bottom: 220px;
}
@media (max-width: 750px) {
  #company .secMessage {
    padding-bottom: 17.5vw;
  }
}
#company .secMessage .inner {
  display: flex;
  flex-direction: row-reverse;
  max-width: 984px;
}
@media (max-width: 750px) {
  #company .secMessage .inner {
    display: block;
    max-width: 100%;
  }
}
#company .secMessage__imgWrap {
  position: relative;
  padding-top: 100px;
}
@media (max-width: 750px) {
  #company .secMessage__imgWrap {
    padding-top: 0;
    margin-bottom: 4.4vw;
  }
}
#company .secMessage__imgWrap:before {
  content: "";
  background: #f8f6f0;
  width: 540px;
  height: 420px;
  display: block;
  position: absolute;
  left: -200px;
  top: 200px;
  z-index: -1;
  border-radius: 30px;
}
@media (max-width: 750px) {
  #company .secMessage__imgWrap:before {
    width: 66.13vw;
    height: 51.33vw;
    left: -2.66vw;
    top: 10vw;
    border-radius: 15px;
  }
}
@media (max-width: 750px) {
  #company .secMessage__img {
    text-align: right;
    transform: translateX(3vw);
  }
}
#company .secMessage__img img {
  border-radius: 30px;
}
@media (max-width: 750px) {
  #company .secMessage__img img {
    border-radius: 15px;
    width: 67vw;
    margin-left: auto;
  }
}
#company .secMessage__txtbox {
  flex: 1;
  padding-right: 30px;
}
@media (max-width: 750px) {
  #company .secMessage__txtbox {
    padding-right: 0;
  }
}
#company .secMessage__heading {
  margin-bottom: 77px;
}
@media (max-width: 750px) {
  #company .secMessage__heading {
    margin-bottom: 5.6vw;
  }
}
#company .secMessage__ttl {
  font-size: 22px;
  letter-spacing: 0.1em;
  line-height: 1.81;
  margin-bottom: 16px;
}
@media (max-width: 750px) {
  #company .secMessage__ttl {
    font-size: 4.53vw;
    line-height: 1.764;
    margin-bottom: 4.56vw;
  }
}
#company .secProfile {
  padding-block: 88px 104px;
  position: relative;
  margin-bottom: 249px;
}
@media (max-width: 750px) {
  #company .secProfile {
    padding-block: 15.66vw 13.33vw;
    margin-bottom: 13.53vw;
  }
}
#company .secProfile:before {
  content: "";
  background: linear-gradient(to right, rgba(40, 175, 143, 0.2) 0%, rgba(20, 139, 207, 0.2) 100%);
  width: calc(100% - 80px);
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0 30px 30px 0px;
  z-index: -1;
}
@media (max-width: 750px) {
  #company .secProfile:before {
    width: 97.5vw;
    height: 100%;
    border-radius: 0 15px 15px 0px;
  }
}
@media (max-width: 750px) {
  #company .secProfile:after {
    content: "";
    background: url(../images/company/profile_logo_sp.svg) no-repeat center center/cover;
    width: 37.13vw;
    height: 76vw;
    left: 0;
    top: -19vw;
    display: block;
    position: absolute;
    z-index: -1;
  }
}
#company .secProfile .inner {
  display: flex;
  max-width: 978px;
}
@media (max-width: 750px) {
  #company .secProfile .inner {
    display: block;
    max-width: 100%;
    padding: 0 9.5%;
  }
}
#company .secProfile__head {
  padding-top: 23px;
  padding-left: 8px;
  position: relative;
}
@media (max-width: 750px) {
  #company .secProfile__head {
    padding-top: 0;
    padding-left: 0.5vw;
    margin-bottom: 7vw;
  }
}
#company .secProfile__head:before {
  content: "";
  background: url(../images/company/profile_logo.svg) no-repeat center center/cover;
  width: 404px;
  height: 540px;
  display: block;
  position: absolute;
  left: -205px;
  top: -207px;
}
@media (max-width: 750px) {
  #company .secProfile__head:before {
    display: none;
  }
}
#company .secProfile__heading {
  padding-block: 0;
  background: none;
}
#company .secProfile__txtbox {
  flex: 1;
  padding-left: 100px;
}
@media (max-width: 750px) {
  #company .secProfile__txtbox {
    padding-left: 0;
  }
}
#company .secProfile__dl .row {
  display: grid;
  grid-template-columns: 115px 1fr;
  gap: 0;
  padding-block: 14px;
}
@media (max-width: 750px) {
  #company .secProfile__dl .row {
    grid-template-columns: 1fr;
    gap: 1.9vw;
    padding-block: 4.5vw;
  }
}
#company .secProfile__dl .row:not(:last-child) {
  border-bottom: 1px solid #333;
}
#company .secProfile__dl .row dt,
#company .secProfile__dl .row dd {
  line-height: 2.2;
  letter-spacing: 0.05em;
}
@media (max-width: 750px) {
  #company .secProfile__dl .row dt,
  #company .secProfile__dl .row dd {
    line-height: 1.538;
  }
}
#company .secProfile__dl .row dt {
  font-weight: bold;
  color: #148bcf;
}
#company .secProfile__dl .row dd p {
  line-height: 2.2;
  letter-spacing: 0.05em;
}
@media (max-width: 750px) {
  #company .secProfile__dl .row dd p {
    line-height: 1.538;
  }
}
#company .secProfile__dl .row dd p + p {
  margin-top: 0;
}
@media (max-width: 750px) {
  #company .secProfile__dl .row dd p + p {
    margin-top: 2.6vw;
  }
}
#company .secBase {
  padding-bottom: 149px;
}
@media (max-width: 750px) {
  #company .secBase {
    padding-bottom: 14vw;
  }
}
@media (max-width: 750px) {
  #company .secBase .inner {
    padding-inline: 9.5%;
  }
}
#company .secBase__heading {
  margin-bottom: 98px;
}
@media (max-width: 750px) {
  #company .secBase__heading {
    margin-bottom: 11vw;
  }
}
#company .secBase__list {
  padding-left: 50px;
}
@media (max-width: 750px) {
  #company .secBase__list {
    padding-left: 0;
  }
}
#company .secBase__item {
  display: flex;
}
@media (max-width: 750px) {
  #company .secBase__item {
    display: block;
  }
}
#company .secBase__item:not(:last-child) {
  margin-bottom: 40px;
}
@media (max-width: 750px) {
  #company .secBase__item:not(:last-child) {
    margin-bottom: 14.1vw;
  }
}
#company .secBase__txtbox {
  flex: 1;
  padding-right: 30px;
}
@media (max-width: 750px) {
  #company .secBase__txtbox {
    padding-right: 0;
    margin-bottom: 4.4vw;
  }
}
#company .secBase__ttl {
  font-size: 18px;
  color: #148bcf;
  font-weight: bold;
  border-bottom: 1px solid #148bcf;
  padding-bottom: 30px;
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  #company .secBase__ttl {
    font-size: 3.73vw;
    padding-bottom: 5.5vw;
    margin-bottom: 6.5vw;
  }
}
#company .secBase__imgWrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 20px;
}
@media (max-width: 750px) {
  #company .secBase__imgWrap {
    grid-template-columns: 1fr;
    gap: 4.5vw;
  }
}
@media (max-width: 750px) {
  #company .secBase__img img {
    width: 100%;
  }
}
#company .secBase__map iframe {
  width: 300px;
  height: 220px;
}
@media (max-width: 750px) {
  #company .secBase__map iframe {
    width: 100%;
    height: 58.66vw;
  }
}
#company .secAchievement {
  background: url(../images/company/achievement_bg@2x.jpg) no-repeat center top/cover;
  padding-block: 139px 455px;
  position: relative;
}
@media (max-width: 750px) {
  #company .secAchievement {
    background: url(../images/company/achievement_bg_sp@2x.jpg) no-repeat center top/100%;
    padding-block: 35.33vw 13.33vw;
  }
}
#company .secAchievement:before {
  content: "";
  background: url(../images/company/achievement_bg_grad@2x.png) no-repeat center center/100% 100%;
  width: 100%;
  height: 600px;
  display: block;
  position: absolute;
  left: 0;
  bottom: -1px;
}
@media (max-width: 750px) {
  #company .secAchievement:before {
    height: 32.8vw;
    bottom: auto;
    top: 20vw;
  }
}
@media (max-width: 750px) {
  #company .secAchievement .inner {
    padding-inline: 4.5%;
  }
}
#company .secAchievement__txtbox {
  width: 500px;
  margin-inline: auto;
  background: #fff;
  border-radius: 30px;
  padding-block: 57px 50px;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  #company .secAchievement__txtbox {
    width: 100%;
    border-radius: 15px;
    padding-block: 7.26vw;
  }
}
#company .secAchievement__ttl {
  margin-bottom: 22px;
}
@media (max-width: 750px) {
  #company .secAchievement__ttl {
    margin-bottom: 4.5vw;
  }
}
#company .heading-02 span {
  padding-inline: 12px;
}
@media (max-width: 750px) {
  #company .heading-02 span {
    padding-inline: 2vw;
  }
}
#company .secAchievement__txt {
  text-align: center;
}

/*
---------------------------------------
business
---------------------------------------
*/
#business .pageTtl {
  margin-bottom: 130px;
}
@media (max-width: 750px) {
  #business .pageTtl {
    margin-bottom: 13vw;
  }
}
#business .secBusiness {
  padding-bottom: 146px;
}
@media (max-width: 750px) {
  #business .secBusiness {
    padding-bottom: 15.5vw;
  }
}
#business .secBusiness__head {
  position: relative;
  height: 630px;
  margin-bottom: 78px;
}
@media (max-width: 750px) {
  #business .secBusiness__head {
    height: auto;
    margin-bottom: 21.5vw;
  }
}
#business .secBusiness__head:before {
  content: "";
  background: url(../images/common/heading-01_bg.svg) no-repeat center center/cover;
  width: 404px;
  height: 540px;
  display: block;
  position: absolute;
  right: -203px;
  bottom: -96px;
  z-index: -1;
}
@media (max-width: 750px) {
  #business .secBusiness__head:before {
    width: 69.33vw;
    height: 93.86vw;
    bottom: -10.9vw;
    right: -23.16vw;
  }
}
#business .secBusiness__head__img {
  position: absolute;
  left: calc(-50vw + 512px);
  top: 0;
  width: calc(50vw + 30px);
  height: 630px;
  z-index: -1;
  border-radius: 0px 30px 30px 0;
  overflow: hidden;
}
@media (max-width: 1140px) {
  #business .secBusiness__head__img {
    width: 600px;
    left: -58px;
  }
}
@media (max-width: 750px) {
  #business .secBusiness__head__img {
    position: relative;
    left: -7.5vw;
    width: 80vw;
    height: 74.3vw;
    border-radius: 0 15px 15px 0;
  }
}
#business .secBusiness__head__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
#business .secBusiness__head__txtbox {
  max-width: 420px;
  margin-left: auto;
  padding-top: 98px;
}
@media (max-width: 750px) {
  #business .secBusiness__head__txtbox {
    max-width: 100%;
    padding-top: 7.8vw;
  }
}
#business .secBusiness__heading {
  text-align: left;
  padding-left: 20px;
  margin-bottom: 36px;
}
@media (max-width: 750px) {
  #business .secBusiness__heading {
    padding-left: 3vw;
    margin-bottom: 5.33vw;
  }
}
#business .secBusiness__heading span {
  text-align: left;
  line-height: 1.5625;
  padding: 14px 14px;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  #business .secBusiness__heading span {
    padding: 2.5vw 2.5vw;
  }
}
#business .secBusiness__lead {
  max-width: 350px;
}
@media (max-width: 750px) {
  #business .secBusiness__lead {
    max-width: 70vw;
  }
}
#business .secBusiness__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 45px;
}
@media (max-width: 750px) {
  #business .secBusiness__list {
    grid-template-columns: 1fr;
    gap: 10.5vw;
  }
}
#business .secBusiness__item.item-02 {
  margin-top: 81px;
}
@media (max-width: 750px) {
  #business .secBusiness__item.item-02 {
    margin-top: 0;
  }
}
#business .secBusiness__item.item-03 {
  margin-top: 162px;
}
@media (max-width: 750px) {
  #business .secBusiness__item.item-03 {
    margin-top: 0;
  }
}
#business .secBusiness__num {
  text-align: center;
  font-size: 30px;
  color: #89c5e7;
  letter-spacing: 0.05em;
  position: relative;
  padding-bottom: 11px;
  margin-bottom: 6px;
}
@media (max-width: 750px) {
  #business .secBusiness__num {
    font-size: 6.53vw;
    padding-bottom: 2.3vw;
    margin-bottom: 0.8vw;
  }
}
#business .secBusiness__num:before {
  content: "";
  background: #148bcf;
  width: 30px;
  height: 1px;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
}
@media (max-width: 750px) {
  #business .secBusiness__num:before {
    width: 6.53vw;
  }
}
#business .secBusiness__ttl {
  font-size: 32px;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
@media (max-width: 750px) {
  #business .secBusiness__ttl {
    font-size: 5.6vw;
    margin-bottom: 2.8vw;
  }
}
#business .secBusiness__txt {
  margin-bottom: 56px;
}
@media (max-width: 750px) {
  #business .secBusiness__txt {
    margin-bottom: 11.13vw;
  }
}
#business .secBusiness__img {
  position: relative;
}
@media (max-width: 750px) {
  #business .secBusiness__img {
    width: 100%;
  }
}
#business .secBusiness__img img {
  border-radius: 30px;
}
@media (max-width: 750px) {
  #business .secBusiness__img img {
    border-radius: 15px;
    width: 100%;
  }
}
#business .secBusiness__img:before {
  content: "";
  background: url(../images/common/heading-01_bg.svg) no-repeat center center/cover;
  width: 54px;
  height: 72px;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: -37px;
}
@media (max-width: 750px) {
  #business .secBusiness__img:before {
    width: 14.8vw;
    height: 19.2vw;
    top: -9.33vw;
  }
}
#business .secFeature {
  background: linear-gradient(to right, rgba(40, 175, 143, 0.2) 0%, rgba(20, 139, 207, 0.2) 100%);
  padding-block: 119px 120px;
  margin-bottom: 146px;
}
@media (max-width: 750px) {
  #business .secFeature {
    padding-block: 15.66vw 16.3vw;
    margin-bottom: 15.3vw;
  }
}
#business .secFeature .inner {
  max-width: 884px;
}
#business .secFeature__heading {
  margin-bottom: 34px;
}
@media (max-width: 750px) {
  #business .secFeature__heading {
    margin-bottom: 6.63vw;
  }
}
#business .secFeature__heading span {
  padding-inline: 14px;
}
@media (max-width: 750px) {
  #business .secFeature__heading span {
    padding-inline: 2.5vw;
  }
}
#business .secFeature__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  padding-left: 60px;
}
@media (max-width: 750px) {
  #business .secFeature__list {
    gap: 5.33vw;
    padding-left: 11.66vw;
  }
}
#business .secFeature__item {
  background: #fff;
  border-radius: 30px;
  position: relative;
  padding: 53px 80px 60px 123px;
}
@media (max-width: 750px) {
  #business .secFeature__item {
    border-radius: 15px;
    padding: 7vw 5.33vw 7vw 15.66vw;
  }
}
#business .secFeature__item:before {
  content: "";
  width: 140px;
  height: 140px;
  display: block;
  position: absolute;
  left: -70px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 750px) {
  #business .secFeature__item:before {
    width: 24vw;
    height: 24vw;
    left: -12vw;
  }
}
#business .secFeature__item.item-01:before {
  background: url(../images/business/feature_icn_01.svg) no-repeat center center/cover;
}
#business .secFeature__item.item-02:before {
  background: url(../images/business/feature_icn_02.svg) no-repeat center center/cover;
}
#business .secFeature__item.item-03:before {
  background: url(../images/business/feature_icn_03.svg) no-repeat center center/cover;
}
#business .secFeature__ttl {
  font-size: 22px;
  letter-spacing: 0.1em;
  padding-bottom: 26px;
  border-bottom: 1px solid #148bcf;
  margin-bottom: 24px;
}
@media (max-width: 750px) {
  #business .secFeature__ttl {
    font-size: 4vw;
    line-height: 1.75;
    padding-bottom: 2.2vw;
    margin-bottom: 4vw;
  }
}
#business .secFeature__ttl .blue {
  color: #148bcf;
}
@media (max-width: 750px) {
  #business .secFeature__txt {
    font-size: 3.2vw;
    line-height: 1.75;
  }
}
#business .secWorks__heading {
  margin-inline: auto;
  margin-bottom: 85px;
}
@media (max-width: 750px) {
  #business .secWorks__heading {
    margin-bottom: 5.8vw;
  }
}
#business .secWorks__list {
  max-width: 920px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 0.6fr;
  gap: 0;
  margin-bottom: 64px;
}
@media (max-width: 750px) {
  #business .secWorks__list {
    grid-template-columns: 1.3fr 1fr;
    margin-bottom: 6.66vw;
  }
}
#business .secWorks__list li {
  letter-spacing: 0.07em;
}
#business .secWorks__list li:before {
  content: "●";
  color: #148bcf;
  margin-right: 5px;
}
#business .secWorks__img img {
  width: 100%;
}

/*
---------------------------------------
recruit
---------------------------------------
*/
#recruit .pageTtl-02 {
  margin-bottom: 158px;
}
@media (max-width: 750px) {
  #recruit .pageTtl-02 {
    margin-bottom: 13.4vw;
  }
}
#recruit .secMessage {
  position: relative;
  padding-top: 24px;
  padding-bottom: 144px;
  z-index: 1;
}
@media (max-width: 750px) {
  #recruit .secMessage {
    padding-top: 0;
    padding-bottom: 14vw;
  }
}
#recruit .secMessage__img {
  position: absolute;
  right: 0;
  top: 0;
  border-radius: 30px;
  overflow: hidden;
}
@media (max-width: 750px) {
  #recruit .secMessage__img {
    width: 88vw;
    margin-left: auto;
    position: relative;
    right: 0;
    top: 0;
    border-radius: 0;
    right: 0;
    border-radius: 15px 0 0 15px;
    margin-bottom: 7.3vw;
  }
}
#recruit .secMessage__txtbox {
  max-width: 350px;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  #recruit .secMessage__txtbox {
    max-width: 100%;
  }
}
#recruit .secMessage__heading {
  margin-bottom: 36px;
}
@media (max-width: 750px) {
  #recruit .secMessage__heading {
    width: 37vw;
    margin-bottom: 6.5vw;
  }
}
#recruit .secContents {
  background: linear-gradient(to right, rgba(40, 175, 143, 0.2) 0%, rgba(20, 139, 207, 0.2) 100%);
  padding-top: 310px;
  padding-bottom: 180px;
  position: relative;
}
@media (max-width: 750px) {
  #recruit .secContents {
    padding-top: 16.7vw;
    padding-bottom: 16vw;
  }
}
#recruit .secContents:before {
  content: "";
  background: url(../images/common/heading-01_bg-white.svg) no-repeat center center/cover;
  width: 404px;
  height: 540px;
  display: block;
  position: absolute;
  left: -92px;
  top: 0;
}
@media (max-width: 750px) {
  #recruit .secContents:before {
    width: 70.26vw;
    height: 93.86vw;
    left: -27.66vw;
    top: -10.66vw;
  }
}
#recruit .secContents__heading {
  text-align: center;
  margin-bottom: 100px;
}
@media (max-width: 750px) {
  #recruit .secContents__heading {
    margin-bottom: 10vw;
  }
}
#recruit .secContents__heading__ja {
  font-size: 32px;
  letter-spacing: 0.1em;
  margin-bottom: 14px;
}
@media (max-width: 750px) {
  #recruit .secContents__heading__ja {
    font-size: 5.6vw;
    margin-bottom: 2.6vw;
  }
}
@media (max-width: 750px) {
  #recruit .secContents__heading__en {
    width: 37vw;
    margin-inline: auto;
  }
}
#recruit .secContents__nav__list {
  max-width: 940px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 97px;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__list {
    max-width: 100%;
    grid-template-columns: 1fr;
    gap: 5.6vw;
    margin-bottom: 8.5vw;
  }
}
#recruit .secContents__nav__item a {
  display: block;
  background: #fff;
  font-size: 22px;
  letter-spacing: 0.1em;
  color: #28af8f;
  padding: 50px 0px 50px 150px;
  position: relative;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item a {
    font-size: 3.733vw;
    padding: 8.3vw 0 8.3vw 25.5vw;
  }
}
#recruit .secContents__nav__item a:before {
  content: "";
  background: url(../images/common/arrow-right-green.svg) no-repeat center center/cover;
  width: 30px;
  height: 8px;
  display: block;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease-out;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item a:before {
    width: 6.533vw;
    height: 1.73vw;
    right: 4.3vw;
  }
}
@media (hover: hover) {
  #recruit .secContents__nav__item a:where(:any-link, :enabled, summary):hover:before {
    transform: translate(5px, -50%);
  }
}
#recruit .secContents__nav__item.item-01 a:after {
  content: "";
  background: url(../images/recruit/contents_nav_icn_01@2x.png) no-repeat center center/cover;
  width: 118px;
  height: 127.5px;
  display: block;
  position: absolute;
  left: 13px;
  bottom: 0;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item.item-01 a:after {
    width: 20.4vw;
    height: 22.4vw;
    left: 2.3vw;
  }
}
#recruit .secContents__nav__item.item-02 a:after {
  content: "";
  background: url(../images/recruit/contents_nav_icn_02@2x.png) no-repeat center center/cover;
  width: 83px;
  height: 98px;
  display: block;
  position: absolute;
  left: 36px;
  bottom: 22px;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item.item-02 a:after {
    width: 14.26vw;
    height: 16.8vw;
    left: 5.8vw;
    bottom: 3.3vw;
  }
}
#recruit .secContents__nav__item.item-03 a:after {
  content: "";
  background: url(../images/recruit/contents_nav_icn_03@2x.png) no-repeat center center/cover;
  width: 97.5px;
  height: 97.5px;
  display: block;
  position: absolute;
  left: 23px;
  bottom: 27px;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item.item-03 a:after {
    width: 16.93vw;
    height: 17.1vw;
    left: 4vw;
    bottom: 3.8vw;
  }
}
#recruit .secContents__nav__item.item-04 a:after {
  content: "";
  background: url(../images/recruit/contents_nav_icn_04@2x.png) no-repeat center center/cover;
  width: 107px;
  height: 114px;
  display: block;
  position: absolute;
  left: 23px;
  bottom: 17px;
}
@media (max-width: 750px) {
  #recruit .secContents__nav__item.item-04 a:after {
    width: 18.53vw;
    height: 19.6vw;
    left: 3.4vw;
    bottom: 2.3vw;
  }
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
#recruit .loop_wrap {
  display: flex;
  width: 3127px;
  overflow: hidden;
}
@media (max-width: 750px) {
  #recruit .loop_wrap {
    width: 429.866vw;
  }
}
#recruit .loop_wrap img {
  width: 1563.5px;
  height: 100%;
}
@media (max-width: 750px) {
  #recruit .loop_wrap img {
    width: 214.933vw;
  }
}
#recruit .loop_wrap img:first-child {
  animation: loop 100s -50s linear infinite;
}
#recruit .loop_wrap img:last-child {
  animation: loop2 100s linear infinite;
}
#recruit .secAppeal {
  padding-block: 178px 141px;
}
@media (max-width: 750px) {
  #recruit .secAppeal {
    padding-block: 16vw 16vw;
  }
}
@media (max-width: 750px) {
  #recruit .secAppeal .inner {
    padding-inline: 10vw;
  }
}
#recruit .secAppeal__heading {
  margin-bottom: 99px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__heading {
    margin-bottom: 19vw;
  }
}
#recruit .secAppeal__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__list {
    grid-template-columns: 1fr;
    gap: 19.5vw;
  }
}
#recruit .secAppeal__item {
  position: relative;
  background: #28af8f;
  color: #fff;
  border-radius: 30px;
  padding: 93px 40px 50px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__item {
    border-radius: 15px;
    padding: 14.2vw 6.8vw 5.3vw;
  }
}
#recruit .secAppeal__item:before {
  content: "";
  width: 150px;
  height: 150px;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: -95px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__item:before {
    width: 26.1vw;
    height: 26.1vw;
    top: -16.7vw;
  }
}
#recruit .secAppeal__item.item-01:before {
  background: url(../images/recruit/appeal_icn_01.svg) no-repeat center center/cover;
}
#recruit .secAppeal__item.item-02:before {
  background: url(../images/recruit/appeal_icn_02.svg) no-repeat center center/cover;
}
#recruit .secAppeal__item.item-03:before {
  background: url(../images/recruit/appeal_icn_03.svg) no-repeat center center/cover;
}
#recruit .secAppeal__num {
  font-size: 30px;
  color: #93d7c7;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 5px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__num {
    font-size: 6.533vw;
    margin-bottom: 0.6vw;
  }
}
#recruit .secAppeal__ttl {
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  padding-bottom: 22px;
  border-bottom: 1px solid #fff;
  margin-bottom: 38px;
}
@media (max-width: 750px) {
  #recruit .secAppeal__ttl {
    font-size: 5.6vw;
    padding-bottom: 3.2vw;
    margin-bottom: 4vw;
  }
}
#recruit .secAbout {
  background: linear-gradient(to right, rgba(40, 175, 143, 0.2) 0%, rgba(20, 139, 207, 0.2) 100%);
  position: relative;
}
#recruit .secAbout:before {
  content: "";
  background: url(../images/common/heading-01_bg-white.svg) no-repeat center center/cover;
  width: 404px;
  height: 540px;
  display: block;
  position: absolute;
  right: -21px;
  bottom: 0;
}
@media (max-width: 750px) {
  #recruit .secAbout:before {
    width: 70.26vw;
    height: 93.86vw;
    right: -15.66vw;
    bottom: 0;
  }
}
#recruit .secAbout .inner {
  padding-block: 268px 250px;
  position: relative;
}
@media (max-width: 750px) {
  #recruit .secAbout .inner {
    padding-block: 16vw 16vw;
    padding-inline: 5vw;
  }
}
#recruit .secAbout__txtbox {
  background: #fff;
  border-radius: 30px;
  padding: 80px 120px 80px 80px;
  max-width: 540px;
}
@media (max-width: 750px) {
  #recruit .secAbout__txtbox {
    padding: 6.1vw 8.3vw 9.3vw;
    max-width: 83vw;
    border-radius: 15px;
  }
}
#recruit .secAbout__heading {
  text-align: left;
  margin-left: 20px;
  margin-bottom: 27px;
}
@media (max-width: 750px) {
  #recruit .secAbout__heading {
    margin-left: 3vw;
    margin-bottom: 4.4vw;
  }
}
#recruit .secAbout__heading span {
  line-height: 1.5;
  padding: 14px 5px;
}
@media (max-width: 750px) {
  #recruit .secAbout__heading span {
    padding: 2.3vw 1.3vw;
  }
}
@media (max-width: 750px) {
  #recruit .secAbout__txt {
    letter-spacing: 0.05em;
  }
}
#recruit .secAbout__img {
  position: absolute;
  border-radius: 30px;
}
@media (max-width: 750px) {
  #recruit .secAbout__img {
    display: block;
    position: static;
    border-radius: 15px;
  }
}
#recruit .secAbout__img.item-01 {
  right: 42px;
  top: 100px;
}
@media (max-width: 750px) {
  #recruit .secAbout__img.item-01 {
    width: 43vw;
    margin-left: auto;
    margin-top: -8vw;
  }
}
#recruit .secAbout__img.item-02 {
  right: 258px;
  top: 230px;
}
@media (max-width: 750px) {
  #recruit .secAbout__img.item-02 {
    width: 43vw;
    margin: 0 auto;
    transform: translateX(-5vw);
    margin-top: -13vw;
    margin-bottom: 4vw;
  }
}
#recruit .secAbout__img.item-03 {
  right: 56px;
  top: 478px;
}
@media (max-width: 750px) {
  #recruit .secAbout__img.item-03 {
    width: 43vw;
    margin: 0 auto;
    transform: translateX(7vw);
  }
}
#recruit .secAbout__img.item-04 {
  right: 284px;
  top: 620px;
}
@media (max-width: 750px) {
  #recruit .secAbout__img.item-04 {
    width: 43vw;
    margin-top: -10.6vw;
    transform: translateX(0);
  }
}
#recruit .secWork {
  padding-block: 143px 178px;
}
@media (max-width: 750px) {
  #recruit .secWork {
    padding-block: 11.2vw 13.3vw;
  }
}
@media (max-width: 750px) {
  #recruit .secWork .inner {
    padding-inline: 0;
  }
}
#recruit .secWork__heading {
  margin-bottom: 41px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 750px) {
  #recruit .secWork__heading {
    display: block;
    text-align: center;
    margin-bottom: 7.3vw;
  }
}
#recruit .secWork__heading__en {
  font-size: 250px;
  font-weight: 500;
  letter-spacing: 0;
  opacity: 0.3;
  line-height: 1;
  color: #28af8f;
}
@media (max-width: 750px) {
  #recruit .secWork__heading__en {
    font-size: 20vw;
  }
}
#recruit .secWork__heading__ja {
  font-size: 32px;
  letter-spacing: 0.1em;
  line-height: 1;
  padding-left: 0.9em;
  padding-top: 30px;
}
@media (max-width: 750px) {
  #recruit .secWork__heading__ja {
    font-size: 5.6vw;
    padding-left: 0;
    padding-top: 3vw;
  }
}
#recruit .secWork__figure {
  text-align: center;
  margin-bottom: 82px;
}
@media (max-width: 750px) {
  #recruit .secWork__figure {
    margin-bottom: 8.1vw;
  }
  #recruit .secWork__figure img {
    width: 100%;
  }
}
#recruit .secWork__txtbox {
  display: grid;
  grid-template-columns: 1fr 1.08fr;
  gap: 0 60px;
}
@media (max-width: 750px) {
  #recruit .secWork__txtbox {
    grid-template-columns: 1fr;
    gap: 8vw;
    padding-inline: 7.5%;
  }
}
#recruit .secWork__txt {
  padding-right: 60px;
  border-right: 1px solid #28af8f;
  font-size: 16px;
  line-height: 1.875;
  text-box: trim-both text;
}
@media (max-width: 750px) {
  #recruit .secWork__txt {
    padding-right: 0;
    border-bottom: 1px solid #28af8f;
    border-right: none;
    font-size: 3.466vw;
    line-height: 1.92;
    padding-bottom: 8.4vw;
  }
}
#recruit .secWork__txt .green {
  color: #28af8f;
  font-weight: bold;
}
#recruit .secWork__job__ttl {
  background: #28af8f;
  color: #fff;
  text-align: center;
  font-size: 16px;
  padding: 12px 0;
  margin-bottom: 18px;
  text-box: trim-both text;
}
@media (max-width: 750px) {
  #recruit .secWork__job__ttl {
    font-size: 3.46vw;
    padding: 2.63vw 0;
    margin-bottom: 4vw;
  }
}
#recruit .secWork__job__list {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  grid-auto-flow: column;
}
@media (max-width: 750px) {
  #recruit .secWork__job__list {
    display: block;
  }
}
#recruit .secFlow {
  position: relative;
  z-index: 1;
  margin-bottom: 220px;
}
@media (max-width: 750px) {
  #recruit .secFlow {
    margin-bottom: 16vw;
  }
}
#recruit .secFlow .inner {
  padding-block: 150px 178px;
  max-width: 980px;
  position: relative;
}
@media (max-width: 750px) {
  #recruit .secFlow .inner {
    padding-block: 16vw 0;
    max-width: 100%;
  }
}
#recruit .secFlow .inner:before {
  content: "";
  background: #f8f6f0;
  width: calc(50vw + 50px);
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: calc(-50vw + 490px);
  border-radius: 0 30px 30px 0;
  z-index: -1;
}
@media (max-width: 750px) {
  #recruit .secFlow .inner:before {
    width: 95vw;
    height: 200vw;
    left: 0;
    border-radius: 0 15px 15px 0;
  }
}
#recruit .secFlow__txtbox {
  position: relative;
}
#recruit .secFlow__heading {
  margin-bottom: 55px;
}
@media (max-width: 750px) {
  #recruit .secFlow__heading {
    margin-bottom: 9.3vw;
  }
}
#recruit .secFlow__dl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px 0;
  position: relative;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl {
    gap: 4.4vw 0;
    margin-bottom: 10.7vw;
  }
}
#recruit .secFlow__dl:before {
  content: "";
  background: #28af8f;
  width: 1px;
  height: 100%;
  display: block;
  position: absolute;
  left: 40px;
  top: 0;
  z-index: -1;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl:before {
    left: 0;
  }
}
#recruit .secFlow__dl .row {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 0 25px;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl .row {
    grid-template-columns: 17.4vw 1fr;
    gap: 0 5.1vw;
  }
}
#recruit .secFlow__dl dt {
  font-family: "Roboto", sans-serif;
  color: #fff;
  background: #28af8f;
  text-align: center;
  padding: 6px 0;
  display: grid;
  place-items: center;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl dt {
    padding: 1vw 0;
  }
}
#recruit .secFlow__dl dd {
  font-size: 18px;
  letter-spacing: 0.1em;
  display: grid;
  place-items: center start;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl dd {
    font-size: 3.46vw;
  }
}
#recruit .secFlow__dl dd .green {
  color: #28af8f;
}
#recruit .secFlow__dl dd .big {
  font-size: 22px;
  font-weight: bold;
}
@media (max-width: 750px) {
  #recruit .secFlow__dl dd .big {
    font-size: 4.26vw;
  }
}
#recruit .secFlow__img {
  position: absolute;
  overflow: hidden;
}
@media (max-width: 750px) {
  #recruit .secFlow__img {
    position: relative;
  }
}
#recruit .secFlow__img.item-01 {
  width: calc(50vw + 30px);
  height: 480px;
  border-radius: 30px 0 0 30px;
  right: calc(-50vw + 490px);
  top: 150px;
}
@media (max-width: 750px) {
  #recruit .secFlow__img.item-01 {
    width: 90.6vw;
    height: 64vw;
    border-radius: 15px 0 0 15px;
    right: -2vw;
    top: 0;
    margin-bottom: 5.2vw;
  }
}
#recruit .secFlow__img.item-02 {
  width: 360px;
  height: 360px;
  border-radius: 30px;
  right: 20px;
  top: 690px;
}
@media (max-width: 750px) {
  #recruit .secFlow__img.item-02 {
    width: 48vw;
    height: 48vw;
    border-radius: 15px;
    right: -2.3vw;
    top: 0;
    margin-left: auto;
  }
}
#recruit .secFlow__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*
---------------------------------------
benefits
---------------------------------------
*/
#benefits .pageTtl-02 {
  margin-bottom: 246px;
}
@media (max-width: 750px) {
  #benefits .pageTtl-02 {
    margin-bottom: 18.8vw;
  }
}
@media (max-width: 750px) {
  #benefits .secThought .inner {
    padding-inline: 5vw;
  }
}
#benefits .secThought__txtbox {
  max-width: 800px;
  margin-inline: auto;
  padding: 20px;
  border-radius: 30px;
  background: linear-gradient(to right, rgba(20, 139, 207, 0.2) 0%, rgba(40, 175, 143, 0.2) 100%);
  margin-bottom: 181px;
}
@media (max-width: 750px) {
  #benefits .secThought__txtbox {
    max-width: 100%;
    border-width: 2.66vw;
    border-radius: 15px;
    padding: 2.66vw;
    margin-bottom: 12.6vw;
  }
}
#benefits .secThought__txtbox__in {
  background: #fff;
  border-radius: 10px;
  padding-bottom: 67px;
}
@media (max-width: 750px) {
  #benefits .secThought__txtbox__in {
    border-radius: 5px;
    padding-bottom: 5vw;
  }
}
#benefits .secThought__heading {
  text-align: center;
  margin-bottom: 6px;
}
@media (max-width: 750px) {
  #benefits .secThought__heading {
    margin-bottom: 0;
  }
}
#benefits .secThought__heading__in {
  background: #fff;
  display: inline-block;
  transform: translateY(-50px);
  padding-inline: 20px;
}
@media (max-width: 750px) {
  #benefits .secThought__heading__in {
    transform: translateY(-7.8vw);
    padding-inline: 3.7vw;
  }
}
#benefits .secThought__heading__txt {
  display: block;
  font-size: 32px;
  letter-spacing: 0.1em;
  margin-bottom: 5px;
}
@media (max-width: 750px) {
  #benefits .secThought__heading__txt {
    font-size: 5.6vw;
    margin-bottom: 0.5vw;
  }
}
#benefits .secThought__heading__img {
  display: block;
}
@media (max-width: 750px) {
  #benefits .secThought__heading__img {
    width: 59vw;
    margin-inline: auto;
  }
}
#benefits .secThought__list {
  max-width: 560px;
  margin-inline: auto;
}
@media (max-width: 750px) {
  #benefits .secThought__list {
    max-width: 72vw;
  }
}
#benefits .secThought__list li {
  font-size: 22px;
  letter-spacing: 0.1em;
  border-bottom: 1px solid #28af8f;
  padding: 10px 0px 10px 58px;
  margin-bottom: 20px;
  background: url(../images/benefits/icn_check.svg) no-repeat left top 3px/42px;
}
@media (max-width: 750px) {
  #benefits .secThought__list li {
    font-size: 4vw;
    line-height: 1.66;
    padding: 3vw 0 3vw 10.66vw;
    margin-bottom: 3.1vw;
    background-size: 6.96vw;
    background-position: left top 1.2vw;
  }
}
#benefits .secThought__list li .green {
  color: #28af8f;
  font-weight: bold;
}
#benefits .secContents__nav__list {
  max-width: 940px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 179px;
}
@media (max-width: 750px) {
  #benefits .secContents__nav__list {
    max-width: 85vw;
    grid-template-columns: 1fr;
    gap: 5.6vw;
    margin-bottom: 15.5vw;
  }
}
#benefits .secContents__nav__item a {
  display: block;
  background: #28af8f;
  font-size: 22px;
  letter-spacing: 0.1em;
  color: #fff;
  padding: 0 0 0 150px;
  height: 140px;
  position: relative;
  line-height: 1.54;
  display: grid;
  place-items: center start;
}
@media (max-width: 750px) {
  #benefits .secContents__nav__item a {
    font-size: 3.733vw;
    height: 24vw;
    padding: 0 0 0 26vw;
  }
}
#benefits .secContents__nav__item a:before {
  content: "";
  background: url(../images/common/arrow-right-white.svg) no-repeat center center/cover;
  width: 30px;
  height: 8px;
  display: block;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease-out;
}
@media (max-width: 750px) {
  #benefits .secContents__nav__item a:before {
    width: 6.533vw;
    height: 1.73vw;
    right: 4.3vw;
  }
}
@media (hover: hover) {
  #benefits .secContents__nav__item a:where(:any-link, :enabled, summary):hover:before {
    transform: translate(5px, -50%);
  }
}
#benefits .secContents__nav__item.item-01 a:after {
  content: "";
  background: url(../images/benefits/nav_icn_01@2x.png) no-repeat center center/cover;
  width: 101px;
  height: 100px;
  display: block;
  position: absolute;
  left: 25px;
  top: 17px;
}
@media (max-width: 750px) {
  #benefits .secContents__nav__item.item-01 a:after {
    width: 17.4vw;
    height: 17.33vw;
    left: 4.6vw;
    top: 2.7vw;
  }
}
#benefits .secContents__nav__item.item-02 a:after {
  content: "";
  background: url(../images/benefits/nav_icn_02@2x.png) no-repeat center center/cover;
  width: 102px;
  height: 101px;
  display: block;
  position: absolute;
  left: 30px;
  bottom: 19px;
}
@media (max-width: 750px) {
  #benefits .secContents__nav__item.item-02 a:after {
    width: 17.4vw;
    height: 17.4vw;
    left: 4.9vw;
    bottom: 3.3vw;
  }
}
#benefits .secAllowance {
  background: url(../images/benefits/allowance_bg@2x.png) no-repeat center top/100% 100%;
  padding-top: 181px;
  padding-bottom: 180px;
}
@media (max-width: 750px) {
  #benefits .secAllowance {
    background-image: url(../images/benefits/allowance_bg_sp@2x.png);
    padding-top: 19.5vw;
    padding-bottom: 16.5vw;
  }
}
@media (max-width: 750px) {
  #benefits .secAllowance .inner {
    padding-inline: 7vw;
  }
}
#benefits .secAllowance__heading {
  margin-bottom: 83px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__heading {
    margin-bottom: 12vw;
  }
}
#benefits .secAllowance__heading span {
  padding-inline: 20px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__heading span {
    padding-inline: 3.8vw;
  }
}
#benefits .secAllowance__box-01 {
  max-width: 990px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, auto);
  gap: 50px;
  grid-template-areas: "item-01 item-02" "item-03 item-03";
  margin-bottom: 53px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-01 {
    grid-template-columns: 1fr;
    grid-template-areas: "item-01" "item-02" "item-03";
    gap: 10.7vw;
    margin-bottom: 5.2vw;
  }
}
#benefits .secAllowance__box-01 .secAllowance__item {
  background: #fff;
  position: relative;
  padding: 50px 40px 35px 40px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-01 .secAllowance__item {
    padding: 10vw 5.6vw 6vw;
    width: 84vw;
    margin-left: auto;
  }
}
#benefits .secAllowance__box-01 .secAllowance__item__badge {
  width: 200px;
  height: 200px;
  position: absolute;
  left: -30px;
  top: -30px;
  padding-top: 28px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-01 .secAllowance__item__badge {
    width: 34.66vw;
    height: 34.66vw;
    left: -5.2vw;
    top: -5.23vw;
    padding-top: 4.96vw;
  }
}
#benefits .secAllowance__item.item-01 {
  grid-area: item-01;
}
#benefits .secAllowance__item.item-02 {
  grid-area: item-02;
}
#benefits .secAllowance__item.item-02 .secAllowance__item__head {
  padding-top: 5px;
}
#benefits .secAllowance__item.item-03 {
  grid-area: item-03;
  padding-top: 41px;
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 0 70px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__item.item-03 {
    grid-template-columns: 1fr;
    gap: 0;
    padding-top: 6.66vw;
  }
}
#benefits .secAllowance__item.item-03 .secAllowance__txtbox {
  padding-top: 28px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__item.item-03 .secAllowance__txtbox {
    padding-top: 2vw;
    margin-bottom: 5vw;
  }
}
@media (max-width: 750px) {
  #benefits .secAllowance__item.item-03 .secAllowance__icn {
    width: 13vw;
  }
}
#benefits .secAllowance__item__badge {
  background: #f8f6f0;
  border-radius: 50%;
}
#benefits .secAllowance__ttl {
  font-size: 22px;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 14px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__ttl {
    font-size: 4vw;
    margin-bottom: 2.66vw;
  }
}
#benefits .secAllowance__icn {
  text-align: center;
}
@media (max-width: 750px) {
  #benefits .secAllowance__icn {
    display: block;
    width: 10vw;
    margin-inline: auto;
  }
}
#benefits .secAllowance__item__head {
  height: 145px;
  padding-left: 163px;
  margin-bottom: 10px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__item__head {
    height: 24vw;
    padding-left: 29.5vw;
    margin-bottom: 1.6vw;
  }
}
#benefits .secAllowance__item__num {
  font-size: 32px;
  letter-spacing: 0.1em;
  color: #28af8f;
  line-height: 1.1;
}
@media (max-width: 750px) {
  #benefits .secAllowance__item__num {
    font-size: 4.53vw;
    line-height: 1.2;
  }
}
#benefits .secAllowance__item__num .big {
  font-size: 100px;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media (max-width: 750px) {
  #benefits .secAllowance__item__num .big {
    font-size: 14.66vw;
  }
}
#benefits .income__dl .row:not(:last-child) {
  border-bottom: 1px solid #28af8f;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  #benefits .income__dl .row:not(:last-child) {
    padding-bottom: 3.46vw;
    margin-bottom: 4.13vw;
  }
}
#benefits .income__dl dt,
#benefits .income__dl dd {
  font-size: 14px;
  color: #28af8f;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  #benefits .income__dl dt,
  #benefits .income__dl dd {
    font-size: 3.466vw;
  }
}
#benefits .income__dl dd {
  font-weight: bold;
}
@media (max-width: 750px) {
  #benefits .income__dl dd {
    line-height: 1.66;
  }
}
#benefits .income__dl dd .big {
  font-weight: bold;
  font-size: 22px;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  #benefits .income__dl dd .big {
    font-size: 4.53vw;
  }
}
#benefits .secAllowance__box-02 {
  display: grid;
  grid-template-columns: repeat(4, auto);
  grid-template-rows: repeat(2, 1fr);
  gap: 20px 15px;
  grid-template-areas: "item-04 item-05 item-06 item-07" "item-04 item-08 item-09 item-10";
  margin-bottom: 110px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: 3vw;
    grid-template-areas: "item-04 item-04" "item-05 item-06" "item-07 item-08" "item-09 item-10";
    margin-bottom: 8vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item .secAllowance__item__badge {
  width: 190px;
  height: 190px;
  padding-top: 28px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item .secAllowance__item__badge {
    width: 41.33vw;
    height: 41.33vw;
    padding-top: 8.53vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item .secAllowance__ttl {
  margin-bottom: 11px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item .secAllowance__ttl {
    margin-bottom: 2vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-04 {
  grid-area: item-04;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-04 {
    transform: translateY(3vw);
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__item__badge {
  width: 400px;
  height: 400px;
  padding-top: 51px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__item__badge {
    width: 85.33vw;
    height: 85.33vw;
    padding-top: 6.16vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__icn {
  margin-bottom: 20px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__icn {
    width: 9.8vw;
    margin-bottom: 5.3vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__item__badge__txt {
  max-width: 280px;
  margin-inline: auto;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-04 .secAllowance__item__badge__txt {
    max-width: 58.6vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-05 {
  grid-area: item-05;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-05 .secAllowance__item__badge {
    padding-top: 7.53vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-05 .secAllowance__ttl {
  margin-bottom: 0px;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-05 .secAllowance__icn {
    width: 9vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-06 {
  grid-area: item-06;
}
#benefits .secAllowance__box-02 .secAllowance__item.item-07 {
  grid-area: item-07;
}
#benefits .secAllowance__box-02 .secAllowance__item.item-08 {
  grid-area: item-08;
}
#benefits .secAllowance__box-02 .secAllowance__item.item-09 {
  grid-area: item-09;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-09 .secAllowance__ttl {
    margin-bottom: 2.8vw;
  }
}
#benefits .secAllowance__box-02 .secAllowance__item.item-10 {
  grid-area: item-10;
}
@media (max-width: 750px) {
  #benefits .secAllowance__box-02 .secAllowance__item.item-10 .secAllowance__icn {
    width: 8vw;
  }
}
#benefits .secAllowance__family {
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  line-height: 1.416;
  color: #28af8f;
  margin-top: 10px;
  letter-spacing: 0.1em;
}
@media (max-width: 750px) {
  #benefits .secAllowance__family {
    font-size: 2.93vw;
    margin-top: 1.9vw;
  }
}
#benefits .secAllowance__overtime {
  max-width: 990px;
  margin-inline: auto;
  background: #fff;
  border: 1px solid #28af8f;
  position: relative;
  padding: 72px 40px 55px 87px;
  display: flex;
  align-items: flex-end;
}
@media (max-width: 750px) {
  #benefits .secAllowance__overtime {
    padding: 16.7vw 7.3vw 6vw 5vw;
    display: block;
  }
}
#benefits .overtime__ttl {
  font-size: 32px;
  color: #28af8f;
  letter-spacing: 0.1em;
  line-height: 0.9;
}
@media (max-width: 750px) {
  #benefits .overtime__ttl {
    font-size: 4.53vw;
    margin-bottom: 4.6vw;
  }
}
#benefits .overtime__ttl .en {
  font-size: 100px;
  letter-spacing: 0.05em;
  font-weight: 500;
}
@media (max-width: 750px) {
  #benefits .overtime__ttl .en {
    font-size: 14.66vw;
  }
}
#benefits .overtime__txt {
  flex: 1;
  padding-left: 60px;
}
@media (max-width: 750px) {
  #benefits .overtime__txt {
    padding-left: 0;
  }
}
#benefits .secCareer {
  padding-top: 160px;
}
@media (max-width: 750px) {
  #benefits .secCareer {
    padding-top: 13.2vw;
  }
}
#benefits .secCareer .inner {
  max-width: 1030px;
}
#benefits .secCareer__heading {
  color: #28af8f;
  opacity: 0.3;
  line-height: 1;
  margin-bottom: 57px;
}
@media (max-width: 750px) {
  #benefits .secCareer__heading {
    margin-bottom: 10.4vw;
  }
}
#benefits .secCareer__heading__row-01 {
  font-size: 250px;
  font-weight: 500;
  display: block;
}
@media (max-width: 750px) {
  #benefits .secCareer__heading__row-01 {
    font-size: 20vw;
    letter-spacing: 0;
  }
}
#benefits .secCareer__heading__row-02 {
  font-size: 90px;
  font-weight: 500;
  display: block;
  padding-left: 50px;
}
@media (max-width: 750px) {
  #benefits .secCareer__heading__row-02 {
    font-size: 7.2vw;
    padding-left: 3.3vw;
    letter-spacing: 0;
  }
}
#benefits .secCareer__ttl {
  font-size: 32px;
  letter-spacing: 0.1em;
  margin-bottom: 6px;
}
@media (max-width: 750px) {
  #benefits .secCareer__ttl {
    font-size: 5.6vw;
    line-height: 1.42;
    margin-bottom: 3.7vw;
  }
}
#benefits .secCareer__txt {
  max-width: 555px;
}
@media (max-width: 750px) {
  #benefits .secCareer__txt {
    max-width: 100%;
    margin-bottom: 8.6vw;
  }
}
#benefits .secCareer__figure {
  max-width: none;
  width: 1010px;
  margin-top: -222px;
  margin-bottom: 79px;
  position: relative;
  z-index: -1;
}
@media (max-width: 750px) {
  #benefits .secCareer__figure {
    width: 100%;
    margin-top: 0;
    margin-bottom: 5.7vw;
  }
}
#benefits .secCareer__boxWrap {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 50px;
  margin-bottom: 96px;
}
@media (max-width: 750px) {
  #benefits .secCareer__boxWrap {
    grid-template-columns: 1fr;
    gap: 5vw;
    margin-bottom: 10.6vw;
  }
}
#benefits .secCareer__box {
  position: relative;
  border: 1px solid #28af8f;
  padding: 102px 40px 35px;
}
@media (max-width: 750px) {
  #benefits .secCareer__box {
    padding: 18.6vw 5.7vw 6.8vw;
  }
}
#benefits .secCareer__box__txt strong {
  color: #28af8f;
  font-weight: bold;
}
#benefits .secCareer__imgWrap {
  margin-bottom: 180px;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  #benefits .secCareer__imgWrap {
    margin-bottom: 37.6vw;
  }
}
#benefits .secCareer__img {
  border-radius: 30px;
}
@media (max-width: 750px) {
  #benefits .secCareer__img {
    border-radius: 9px;
  }
}
#benefits .secCareer__img.item-01 {
  margin-left: -55px;
}
@media (max-width: 750px) {
  #benefits .secCareer__img.item-01 {
    width: 37.6vw;
    margin-left: -2.3vw;
  }
}
#benefits .secCareer__img.item-02 {
  margin-top: -240px;
  margin-left: auto;
  display: block;
  margin-right: -57px;
}
@media (max-width: 750px) {
  #benefits .secCareer__img.item-02 {
    width: 54.4vw;
    margin-top: -19.6vw;
    margin-right: -1.1vw;
  }
}

/*
---------------------------------------
voice
---------------------------------------
*/
#voice .pageTtl-02 {
  margin-bottom: 150px;
}
@media (max-width: 750px) {
  #voice .pageTtl-02 {
    margin-bottom: 13.4vw;
  }
}
#voice .seVoice {
  background: #f8f6f0;
  padding-block: 115px 181px;
}
@media (max-width: 750px) {
  #voice .seVoice {
    padding-block: 10.4vw 13.4vw;
  }
}
#voice .seVoice .inner {
  max-width: 1020px;
}
#voice .seVoice__head {
  display: flex;
  align-items: flex-end;
  margin-bottom: 125px;
}
@media (max-width: 750px) {
  #voice .seVoice__head {
    display: block;
    margin-bottom: 10.9vw;
  }
}
@media (max-width: 750px) {
  #voice .seVoice__head__ttl {
    width: 42vw;
    margin-bottom: 6.2vw;
  }
}
#voice .seVoice__head__txt {
  flex: 1;
  padding-left: 74px;
  text-box: trim-both text;
}
@media (max-width: 750px) {
  #voice .seVoice__head__txt {
    padding-left: 0;
  }
}
#voice .seVoice__box.item-01 {
  padding-bottom: 150px;
  border-bottom: 1px solid #333;
  margin-bottom: 150px;
}
@media (max-width: 750px) {
  #voice .seVoice__box.item-01 {
    padding-bottom: 6.4vw;
    margin-bottom: 7.4vw;
  }
}
#voice .seVoice__box.item-02 .seVoice__main__img {
  left: auto;
  right: calc(-50vw + 490px);
  border-radius: 30px 0 0 30px;
}
@media (max-width: 1136px) {
  #voice .seVoice__box.item-02 .seVoice__main__img {
    left: auto;
    right: -80px;
  }
}
@media (max-width: 750px) {
  #voice .seVoice__box.item-02 .seVoice__main__img {
    border-radius: 15px 0 0 15px;
    right: -7.5vw;
  }
}
#voice .seVoice__box.item-02 .seVoice__main__txtbox {
  margin-left: 0;
  margin-right: auto;
}
#voice .seVoice__main {
  position: relative;
  height: 600px;
  display: grid;
  place-items: center end;
  margin-bottom: 80px;
}
@media (max-width: 750px) {
  #voice .seVoice__main {
    display: block;
    height: auto;
    margin-bottom: 8vw;
  }
}
#voice .seVoice__main__img {
  width: calc(50vw + 230px);
  height: 600px;
  position: absolute;
  top: 0;
  left: calc(-50vw + 490px);
  border-radius: 0 30px 30px 0;
  overflow: hidden;
}
@media (max-width: 1136px) {
  #voice .seVoice__main__img {
    width: 798px;
    left: -80px;
  }
}
@media (max-width: 750px) {
  #voice .seVoice__main__img {
    position: relative;
    width: 84.8vw;
    height: auto;
    left: -7.5vw;
    border-radius: 0 15px 15px 0;
  }
}
#voice .seVoice__main__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#voice .seVoice__main__txtbox {
  width: 420px;
  background: #fff;
  margin-left: auto;
  padding: 40px 43px;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  #voice .seVoice__main__txtbox {
    width: 69vw;
    margin-top: -7vw;
    padding: 5vw 5vw 4vw;
  }
}
#voice .seVoice__main__num {
  font-size: 40px;
  font-weight: 500;
  color: #28af8f;
  letter-spacing: 0.05em;
  padding-bottom: 9px;
  border-bottom: 1px solid #28af8f;
  margin-bottom: 24px;
}
@media (max-width: 750px) {
  #voice .seVoice__main__num {
    font-size: 6.93vw;
    padding-bottom: 1.4vw;
    margin-bottom: 4.1vw;
  }
}
#voice .seVoice__main__name {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.07em;
}
@media (max-width: 750px) {
  #voice .seVoice__main__name {
    font-size: 4vw;
  }
}
#voice .seVoice__main__year {
  font-size: 14px;
  color: #28af8f;
  font-weight: bold;
}
@media (max-width: 750px) {
  #voice .seVoice__main__year {
    font-size: 3.46vw;
  }
}
#voice .seVoice__main__before {
  font-size: 14px;
}
@media (max-width: 750px) {
  #voice .seVoice__main__before {
    font-size: 3.46vw;
  }
}
#voice .seVoice__cont {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, auto);
  gap: 57px 62px;
  grid-template-areas: "item-01 item-02" "item-04 item-03" "item-05 item-06";
}
@media (max-width: 750px) {
  #voice .seVoice__cont {
    display: block;
  }
}
@media (max-width: 750px) {
  #voice .seVoice__cont__item:not(:last-child) {
    margin-bottom: 8vw;
  }
}
#voice .seVoice__cont__item.item-01 {
  grid-area: item-01;
}
#voice .seVoice__cont__item.item-02 {
  grid-area: item-02;
}
#voice .seVoice__cont__item.item-03 {
  grid-area: item-03;
}
#voice .seVoice__cont__item.item-04 {
  grid-area: item-04;
}
#voice .seVoice__cont__item.item-05 {
  grid-area: item-05;
}
#voice .seVoice__cont__item.item-06 {
  grid-area: item-06;
}
#voice .seVoice__cont__ttl {
  background: #28af8f;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.07em;
  padding: 17px 40px;
  border-radius: 20px 20px 20px 0;
  margin-bottom: 22px;
}
@media (max-width: 750px) {
  #voice .seVoice__cont__ttl {
    font-size: 3.73vw;
    padding: 3.7vw 8.7vw;
    border-radius: 15px 15px 15px 0;
    margin-bottom: 4.8vw;
  }
}
#voice .seVoice__cont__img {
  border-radius: 30px;
  overflow: hidden;
}
@media (max-width: 750px) {
  #voice .seVoice__cont__img {
    border-radius: 15px;
  }
  #voice .seVoice__cont__img img {
    width: 100%;
  }
}
#voice .secOffering {
  padding-block: 175px 181px;
  position: relative;
  z-index: 1;
}
@media (max-width: 750px) {
  #voice .secOffering {
    padding-block: 16.3vw 34.4vw;
  }
}
#voice .secOffering__heading {
  margin-bottom: 242px;
}
@media (max-width: 750px) {
  #voice .secOffering__heading {
    line-height: 1.65;
    margin-bottom: 20.2vw;
  }
}
#voice .secOffering__heading span {
  padding: 19px 10px;
}
@media (max-width: 750px) {
  #voice .secOffering__heading span {
    padding: 0.7vw 0vw;
  }
}
#voice .secOffering__heading em {
  display: inline-block;
  position: relative;
  color: #fff;
  padding: 4px 15px;
}
@media (max-width: 750px) {
  #voice .secOffering__heading em {
    padding: 1vw 2.2vw;
    line-height: 1;
    transform: translateY(-0.3vw);
  }
}
#voice .secOffering__heading em:before {
  content: "";
  background: linear-gradient(to right, rgb(40, 175, 143) 0%, rgb(20, 139, 207) 100%);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 0;
  z-index: -1;
  transform: skewX(-27deg);
}
#voice .secOffering__img {
  border-radius: 30px;
}
@media (max-width: 750px) {
  #voice .secOffering__img {
    border-radius: 9px;
  }
}
#voice .secOffering__img.item-01 {
  margin-left: -87px;
}
@media (max-width: 750px) {
  #voice .secOffering__img.item-01 {
    width: 37.6vw;
    margin-left: -9.5vw;
  }
}
#voice .secOffering__img.item-02 {
  margin-top: -490px;
  margin-left: auto;
  display: block;
  margin-right: 230px;
}
@media (max-width: 750px) {
  #voice .secOffering__img.item-02 {
    width: 37.6vw;
    margin-top: -38.6vw;
    margin-right: 15.2vw;
  }
}
#voice .secOffering__img.item-03 {
  margin-top: -85px;
  margin-left: auto;
  display: block;
  margin-right: -158px;
}
@media (max-width: 750px) {
  #voice .secOffering__img.item-03 {
    width: 41.46vw;
    margin-top: -8.1vw;
    margin-right: -14.1vw;
  }
}

/*
---------------------------------------
case-ac
---------------------------------------
*/
#case-ac .pageTtl-02 {
  margin-bottom: 143px;
}
@media (max-width: 750px) {
  #case-ac .pageTtl-02 {
    margin-bottom: 13.4vw;
  }
}
#case-ac .secCase__lead {
  text-align: center;
  margin-bottom: 70px;
}
@media (max-width: 750px) {
  #case-ac .secCase__lead {
    margin-bottom: 10.4vw;
  }
}
#case-ac .secCase {
  background: #f8f6f0;
  padding-block: 153px 148px;
}
@media (max-width: 750px) {
  #case-ac .secCase {
    padding-block: 10.4vw 13.4vw;
  }
}
/*
---------------------------------------
case-dtl
---------------------------------------
*/
.single-case #case {
  background: #f8f6f0;
  margin-top: 100px;
  margin-bottom: 30px;
}
@media (max-width: 750px) {
  .single-case #case {
    margin-top: 0;
    margin-bottom: 0;
  }
}

/*
---------------------------------------
entry
---------------------------------------
*/
#contact.entry .pageTtl-02 {
  margin-bottom: 151px;
}
@media (max-width: 750px) {
  #contact.entry .pageTtl-02 {
    margin-bottom: 11vw;
  }
}
#contact.entry .wrap_form .btn_send_narrow {
  background-color: #28af8f;
}

.form_complete .btn-01 {
  text-align: center;
}

#archive_case .wrapper {
  width: 100%;
  margin: 0 auto;
  display: flex;
  display: -ms-flex;
  flex-wrap: wrap;
}
@media (max-width: 750px) {
  #archive_case .wrapper {
    margin: 0 auto;
    display: block;
    flex-wrap: initial;
  }
}
#archive_case .wp-pagenavi {
  margin-top: 80px;
}
@media (max-width: 750px) {
  #archive_case .wp-pagenavi {
    margin-top: 10.4vw;
  }
}

.box_case {
  display: block;
  background-color: white;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  padding: 53px 52px 46px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 750px) {
  .box_case {
    display: block;
    padding: 20px 20px 23px;
    margin: 0 0 6vw;
  }
}
.box_case:not(:last-child) {
  margin-bottom: 20px;
}
.box_case figure {
  order: 2;
  width: 320px;
  height: 240px;
  margin-bottom: 21px;
}
@media (max-width: 750px) {
  .box_case figure {
    width: 100%;
    height: 55.73vw;
    margin: 0 0 4vw;
  }
}
.box_case figure img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.box_case .data {
  order: 1;
  flex: 1;
  padding-right: 30px;
  max-width: calc(100% - 320px);
}
@media (max-width: 750px) {
  .box_case .data {
    padding-right: 0;
    max-width: 100%;
  }
}
.box_case .data .title {
  font-size: 20px;
  text-box: trim-both text;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 0 10px;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media (max-width: 750px) {
  .box_case .data .title {
    font-size: 3.4vw;
    margin: 0 0 2vw;
  }
}
.box_case .data .lead {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 15px;
}
@media (max-width: 750px) {
  .box_case .data .lead {
    font-size: 3.4vw;
    line-height: 1.5;
    margin: 0 0 2vw;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
}
.box_case .data .information {
  margin: 0 0 21px;
}
@media (max-width: 750px) {
  .box_case .data .information {
    margin: 0 0 3vw;
  }
}
.box_case .data .information .info {
  display: flex;
  display: -ms-flex;
  border-bottom: 1px solid #ccc;
  line-height: 1;
}
.box_case .data .information .info:first-child {
  border-top: 1px solid #ccc;
}
.box_case .data .information .info .head {
  width: 5em;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  background: #e6e6e6;
  padding: 10px 0;
  box-sizing: border-box;
  letter-spacing: 0;
}
@media (max-width: 750px) {
  .box_case .data .information .info .head {
    font-size: 3vw;
    padding: 5px 0;
  }
}
.box_case .data .information .info .text {
  font-size: 12px;
  width: calc(100% - 5em);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 10px 0 10px 0.9em;
  letter-spacing: 0;
}
@media (max-width: 750px) {
  .box_case .data .information .info .text {
    font-size: 3vw;
    padding: 5px 0 5px 0.5em;
  }
}
.box_case .btn {
  order: 3;
  width: 100%;
  display: flex;
  display: -ms-flex;
  justify-content: space-between;
}
.box_case .btn a {
  display: block;
  width: calc(50% - 10px);
  font-size: 16px;
  text-align: center;
  padding: 18px 0px 16px 0;
  font-weight: bold;
  border-radius: 50px;
  position: relative;
  transition: all 0.3s;
}
.box_case .btn a:hover {
  opacity: 0.7;
}
@media (max-width: 750px) {
  .box_case .btn a:hover {
    opacity: 1;
  }
}
@media (max-width: 750px) {
  .box_case .btn a {
    width: calc(50% - 3px);
    padding: 12px 8px 12px 0;
    font-size: 14px;
    letter-spacing: 0;
  }
}
.box_case .btn a:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
@media (max-width: 750px) {
  .box_case .btn a:before {
    right: 15px;
  }
}
.box_case .btn a.btn-case--detail {
  border: 1px solid #333;
  background: #333;
  color: #fff;
}
.box_case .btn a.btn-case--entry {
  border: 1px solid #28af8f;
  background: #28af8f;
  color: #fff;
}

#case {
  padding: 80px 0 148px;
}
@media (max-width: 750px) {
  #case {
    padding: 0;
  }
}
#case .wrapper {
  width: 94%;
  max-width: 1064px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 0 20px;
}
@media (max-width: 750px) {
  #case .wrapper {
    width: 100vw;
    padding: 0;
    display: block;
    justify-content: initial;
  }
}
#case .wrapper .contents {
  width: calc(100% - 285px);
  box-sizing: border-box;
  background: white;
  padding: 60px 60px 70px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
@media (max-width: 750px) {
  #case .wrapper .contents {
    width: 100%;
    padding: 22vw 6vw 15vw;
    box-shadow: none;
  }
}
#case .wrapper .contents .primary .label_term {
  margin: 0 0 20px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .primary .label_term {
    margin: 0 0 5vw;
  }
}
#case .wrapper .contents .primary .label_term .inner_text {
  display: inline-block;
  color: white;
  background: #28af8f;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 50px 8px;
}
@media all and (-ms-high-contrast: none) {
  #case .wrapper .contents .primary .label_term .inner_text {
    padding: 14px 50px 8px;
  }
}
@media (max-width: 750px) {
  #case .wrapper .contents .primary .label_term .inner_text {
    font-size: 3.4vw;
    padding: 1vw 6vw;
  }
}
#case .wrapper .contents .primary .title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.4;
  padding: 0 0 15px;
  border-bottom: 1px solid #ccc;
  margin: 0 0 28px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .primary .title {
    font-size: 4.4vw;
    padding: 0 0 3vw;
    margin: 0 0 3vw;
  }
}
#case .wrapper .contents .information .lead {
  color: #28af8f;
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  margin: 0 0 30px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .information .lead {
    font-size: 3.8vw;
    margin: 0 0 3vw;
  }
}
#case .wrapper .contents .single-content {
  margin: 0 auto 30px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .single-content {
    margin: 0 auto 10vw;
  }
}
#case .wrapper .contents .photo_information {
  width: 464px;
  margin: 0 auto 50px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .photo_information {
    width: 86vw;
    margin: 0 auto 10vw;
  }
}
#case .wrapper .contents .photo_information img {
  max-width: 100%;
}
#case .wrapper .contents .btns_s {
  display: none;
}
@media (max-width: 750px) {
  #case .wrapper .contents .btns_s {
    display: flex;
    display: -ms-flex;
    justify-content: space-between;
    margin: 0 0 10vw;
  }
  #case .wrapper .contents .btns_s a {
    display: flex;
    box-sizing: border-box;
    width: 48%;
    font-size: 3.8vw;
    align-items: center;
    justify-content: center;
    height: 12vw;
    font-weight: bold;
    border-radius: 6vw;
    position: relative;
    transition: all 0.3s;
  }
  #case .wrapper .contents .btns_s a:hover {
    opacity: 0.7;
  }
}
@media (max-width: 750px) and (max-width: 750px) {
  #case .wrapper .contents .btns_s a:hover {
    opacity: 1;
  }
}
@media (max-width: 750px) {
  #case .wrapper .contents .btns_s a:before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: 15px;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}
@media (max-width: 750px) {
  #case .wrapper .contents .btns_s a.btn-case--detail {
    border: 1px solid #333;
  }
  #case .wrapper .contents .btns_s a.btn-case--detail:before {
    border-color: #333;
  }
}
@media (max-width: 750px) {
  #case .wrapper .contents .btns_s a.btn-case--entry {
    border: 1px solid #28af8f;
    background: #28af8f;
    color: #fff;
  }
}
#case .wrapper .contents .pr {
  margin: 0 0 70px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr {
    margin: 0 0 15vw;
  }
}
#case .wrapper .contents .pr .box_pr {
  margin: 0 0 40px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr {
    margin: 0 0 10vw;
  }
}
#case .wrapper .contents .pr .box_pr:last-of-type {
  margin: 0;
}
#case .wrapper .contents .pr .box_pr.narrow {
  display: flex;
  display: -ms-flex;
  justify-content: space-between;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr.narrow {
    display: block;
    justify-content: initial;
  }
}
#case .wrapper .contents .pr .box_pr.narrow figure {
  width: 210px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr.narrow figure {
    width: 66vw;
    margin: 5vw auto 0;
  }
}
#case .wrapper .contents .pr .box_pr.narrow figure img {
  max-width: 100%;
}
#case .wrapper .contents .pr .box_pr.narrow .data {
  width: 380px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr.narrow .data {
    width: 100%;
  }
}
#case .wrapper .contents .pr .box_pr .data .ttl_pr {
  color: #28af8f;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.75;
  margin: 0 0 10px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr .data .ttl_pr {
    font-size: 3.8vw;
    margin: 0 0 3vw;
  }
}
#case .wrapper .contents .pr .box_pr .data .text {
  font-size: 14px;
  line-height: 2;
}
@media (max-width: 750px) {
  #case .wrapper .contents .pr .box_pr .data .text {
    font-size: 3.4vw;
  }
}
#case .wrapper .contents .gallery {
  margin: 0 0 40px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .gallery {
    margin: 0 0 15vw;
  }
}
#case .wrapper .contents .gallery ul {
  display: flex;
  display: -ms-flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 750px) {
  #case .wrapper .contents .gallery ul {
    display: block;
    justify-content: initial;
    flex-wrap: initial;
    width: 66vw;
    margin: 0 auto;
  }
}
#case .wrapper .contents .gallery ul li {
  width: 47.8%;
  margin: 0 0 30px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .gallery ul li {
    width: 100%;
    margin: 0 0 5vw;
  }
  #case .wrapper .contents .gallery ul li:last-of-type {
    margin: 0;
  }
}
#case .wrapper .contents .gallery ul li .caption {
  line-height: 1.5;
  font-size: 14px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .gallery ul li .caption {
    font-size: 3.4vw;
  }
}
#case .wrapper .contents .gallery ul li img {
  max-width: 100%;
}
#case .wrapper .contents .requirements .ttl_requirements {
  color: white;
  font-size: 16px;
  font-weight: bold;
  background: #4d4d4d;
  padding: 14px 20px 12px;
  margin: 0 0 7px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .requirements .ttl_requirements {
    font-size: 3.8vw;
    padding: 4vw;
  }
}
#case .wrapper .contents .table_requirements {
  width: 100%;
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
}
@media (max-width: 750px) {
  #case .wrapper .contents .table_requirements {
    font-size: 3.4vw;
  }
}
#case .wrapper .contents .table_requirements tr {
  border-bottom: 1px solid #ccc;
}
#case .wrapper .contents .table_requirements tr th {
  white-space: nowrap;
  text-align: left;
  vertical-align: top;
  padding: 10px 50px 10px 10px;
  font-weight: bold;
  line-height: 2;
}
@media (max-width: 750px) {
  #case .wrapper .contents .table_requirements tr th {
    display: block;
    box-sizing: border-box;
    padding: 4vw 0 0;
  }
}
#case .wrapper .contents .table_requirements tr td {
  padding: 10px 10px 10px 0;
  line-height: 2;
}
@media (max-width: 750px) {
  #case .wrapper .contents .table_requirements tr td {
    display: block;
    box-sizing: border-box;
    padding: 0 0 4vw;
  }
}
#case .wrapper .contents .google {
  margin: 40px 0 0;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google {
    margin: 4vw 0 0;
  }
}
#case .wrapper .contents .google .ttl_map {
  font-size: 14px;
  font-weight: bold;
  margin: 0 0 20px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google .ttl_map {
    font-size: 3.4vw;
    margin: 0 0 3vw;
  }
}
#case .wrapper .contents .google .map {
  margin: 0 0 10px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google .map {
    margin: 0 0 3vw;
  }
}
#case .wrapper .contents .google .map iframe {
  width: 100%;
  height: 220px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google .map iframe {
    height: 60vw;
  }
}
#case .wrapper .contents .google .url {
  text-align: right;
}
#case .wrapper .contents .google .url a {
  font-size: 14px;
  text-decoration: underline;
  transition: all 0.3s;
}
#case .wrapper .contents .google .url a .icon {
  display: inline-block;
  width: 10px;
  margin: 0 0 0 3px;
}
#case .wrapper .contents .google .url a .icon img {
  width: 10px;
  height: 10px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google .url a .icon img {
    width: 100%;
    height: auto;
  }
}
#case .wrapper .contents .google .url a:hover {
  opacity: 0.7;
}
@media (max-width: 750px) {
  #case .wrapper .contents .google .url a:hover {
    opacity: 1;
  }
}
#case .wrapper .contents .btn_entry {
  text-align: center;
  margin: 60px 0 22px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .btn_entry {
    margin: 10vw 0 10vw;
  }
}
#case .wrapper .contents .btn_entry a {
  width: 360px;
  height: 64px;
  border-radius: 32px;
  margin: 0 auto;
  display: flex;
  display: -ms-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  color: white;
  font-size: 18px;
  font-weight: bold;
  background: #28af8f;
  position: relative;
  transition: all 0.3s;
}
@media all and (-ms-high-contrast: none) {
  #case .wrapper .contents .btn_entry a {
    padding: 6px 0 0;
  }
}
@media (max-width: 750px) {
  #case .wrapper .contents .btn_entry a {
    width: 100%;
    height: 15vw;
    border-radius: 7.5vw;
    font-size: 4.2vw;
  }
}
#case .wrapper .contents .btn_entry a:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 28px;
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
#case .wrapper .contents .btn_entry a:hover {
  opacity: 0.7;
}
@media (max-width: 750px) {
  #case .wrapper .contents .btn_entry a:hover {
    opacity: 1;
  }
}
#case .wrapper .contents .display_tel {
  width: 316px;
  margin: 0 auto 31px;
}
@media (max-width: 750px) {
  #case .wrapper .contents .display_tel {
    width: 74vw;
    margin: 0 auto 10vw;
  }
}
#case .wrapper .contents .display_tel .tel {
  display: flex;
  display: -ms-flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 750px) {
  #case .wrapper .contents .display_tel .tel {
    display: none;
  }
}
#case .wrapper .contents .display_tel .tel .label {
  display: flex;
  display: -ms-flex;
  justify-content: center;
  align-items: center;
  width: 135px;
  height: 30px;
  font-size: 14px;
  box-sizing: border-box;
  border: 1px solid #ccc;
}
@media all and (-ms-high-contrast: none) {
  #case .wrapper .contents .display_tel .tel .label {
    padding: 6px 0 0;
  }
}
#case .wrapper .contents .display_tel .tel .number {
  font-size: 20px;
  font-weight: bold;
}
#case .wrapper .contents .display_tel .tel .number .icon {
  display: inline-block;
  width: 15px;
  margin: 0 5px;
}
#case .wrapper .contents .display_tel .tel .number .icon img {
  width: 15px;
  height: 15px;
}
#case .wrapper .contents .display_tel .tel_s {
  display: none;
}
@media (max-width: 750px) {
  #case .wrapper .contents .display_tel .tel_s {
    display: flex;
    display: -ms-flex;
    justify-content: center;
    align-items: center;
  }
  #case .wrapper .contents .display_tel .tel_s .label {
    display: flex;
    display: -ms-flex;
    justify-content: center;
    align-items: center;
    width: 34vw;
    height: 6.6vw;
    font-size: 3.4vw;
    box-sizing: border-box;
    border: 1px solid #ccc;
  }
  #case .wrapper .contents .display_tel .tel_s .number {
    font-size: 4.4vw;
    font-weight: bold;
  }
  #case .wrapper .contents .display_tel .tel_s .number .icon {
    display: inline-block;
    width: 3.6vw;
    margin: 0 2vw;
  }
  #case .wrapper .contents .display_tel .tel_s .number .icon img {
    width: 100%;
    height: auto;
  }
}
#case .wrapper .links_wrap {
  width: 1064px;
  margin: auto;
  box-sizing: border-box;
  padding: 0 20px;
  position: fixed;
  top: 179px;
  left: 0;
  right: 0;
  display: flex;
  display: -ms-flex;
  justify-content: flex-end;
}
@media (max-width: 750px) {
  #case .wrapper .links_wrap {
    display: none !important;
  }
}
#case .wrapper .links {
  width: 254px;
  background: white;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  position: absolute;
  right: 20px;
  top: 0;
}
#case .wrapper .links .ttl {
  color: white;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background: #4d4d4d;
  padding: 28px 0;
}
#case .wrapper .links .inner {
  padding: 20px;
}
#case .wrapper .links .inner .btn {
  display: block;
  color: white;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
  padding: 12px 0;
  border-radius: 20px;
  margin: 0 0 10px;
  position: relative;
  transition: all 0.3s;
}
#case .wrapper .links .inner .btn:hover {
  opacity: 0.7;
}
@media (max-width: 750px) {
  #case .wrapper .links .inner .btn:hover {
    opacity: 1;
  }
}
#case .wrapper .links .inner .btn:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 20px;
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
#case .wrapper .links .inner .btn.n1 {
  background: #4d4d4d;
  color: #fff;
  border: 1px solid #4d4d4d;
}
#case .wrapper .links .inner .btn.n2 {
  background: #28af8f;
  border: 1px solid #28af8f;
}
#case .wrapper .links .inner .tel {
  background: #e6e6e6;
  padding: 20px 0 13px;
}
#case .wrapper .links .inner .tel .title {
  text-align: center;
  margin: 0 0 5px;
  font-size: 14px;
  font-weight: bold;
}
#case .wrapper .links .inner .tel .title .icon {
  display: inline-block;
  width: 14px;
  margin: 0 5px 0 0;
  position: relative;
  top: 1px;
}
#case .wrapper .links .inner .tel .title .icon img {
  width: 14px;
  height: 14px;
}
#case .wrapper .links .inner .tel .number {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}

#historyback {
  text-align: center;
}
#historyback a {
  color: #808080;
  font-size: 14px;
  font-weight: bold;
  position: relative;
  transition: all 0.3s;
}
@media (max-width: 750px) {
  #historyback a {
    font-size: 3.8vw;
  }
}
#historyback a:before {
  position: absolute;
  transform: translateY(-50%) rotate(315deg);
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #808080;
  border-left: 2px solid #808080;
  top: 50%;
  left: -20px;
}
#historyback a i {
  color: #808080;
  padding: 0 10px 0 0;
}
@media (max-width: 750px) {
  #historyback a i {
    padding: 0 1.5vw 0 0;
  }
}
#historyback a:hover {
  opacity: 0.7;
}
@media (max-width: 750px) {
  #historyback a:hover {
    opacity: 1;
  }
}