@charset "UTF-8";
/* ==========================================================================
   Foundation
   ========================================================================== */
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  font-size: 62.5%;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible; /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

summary {
  display: list-item; /* Add the correct display in all browsers */
}

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none; /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */
  text-decoration: none; /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic; /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type=number] {
  width: auto; /* Firefox 36+ */
}

[type=search] {
  -webkit-appearance: textfield; /* Safari 8+ */
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* Safari 8 */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

[type=search] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */

::selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

body {
  font-family: Hiragino Sans, "ヒラギノ角ゴ Pro W6", "メイリオ", sans-serif;
  letter-spacing: 0em;
}

img {
  vertical-align: bottom;
}

ul {
  list-style: none;
}

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

.l-header a,
.s63-footer a {
  transition: opacity 0.3s ease-in-out;
}
@media print, screen and (min-width: 640px) {
  .l-header a:hover,
  .s63-footer a:hover {
    opacity: 0.8;
  }
}

.l-header {
  align-items: center;
  background: #000;
  display: flex;
  justify-content: space-between;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

/* 改修箇所 */
.header-tel-button {
  display: flex;
  flex-direction: column;
  color: #ffffff;
  border: 0.07vw solid #ffffff;
}

.header-tel-text {
    font-weight: 500;
}

.header-tel-text-small {
    font-weight: normal;
}

.header-tel-group {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-tel-number {
    font-weight: bold;
}

@media print, screen and (min-width: 640px) {
  .l-header {
    height: 5.19vw;
    padding-left: 2.0833333333vw;
    padding-right: 1.4583333333vw;
  }
  .header-tel-button {
  padding: 0.53vw 0.67vw;
  border-radius: 0.27vw;
  line-height: 0.93vw;
  }

.header-tel-text {
    font-size: 0.7vw;    
    padding-bottom: 0.4vw;
  }

.header-tel-text-small {
    font-size: 0.7vw;
  }

.header-tel-icon {
    width: 0.93vw;
    margin-right: 0.4vw;
  }
  img{
    width: 100%;
  }

.header-tel-number {
    font-size: 1vw;
  }
}
.l-header .l-header__logo {
  font-size: 0;
  line-height: 1;
}
@media only screen and (max-width: 640px) {
    .l-header {
    height: 16.53vw;
    padding-left: 5.3333333333vw;
    padding-right: 3.2vw;
  }
  .l-header .l-header__logo img {
    height: 5.0666666667vw;
  }
  .header-tel-button {
  padding: 2.13vw 3.2vw;
  border-radius: 1.27vw 4.7625px;
  line-height: 1.33vw;
  }

.header-tel-text {
    font-size: 2.13vw;    
    padding-bottom: 2.13vw;
  }

.header-tel-text-small {
    font-size: 2.13vw;
  }

.header-tel-icon {
    width: 3.47vw;
    margin-right: 1.07vw;
  }
  img{
    width: 100%;
  }

.header-tel-number {
    font-size: 3.47vw;
  }
}

@media print, screen and (min-width: 640px) {
  .l-header .l-header__logo img {
    height: 2vw;
  }
/* 改修箇所ここまで */
}

/* .l-header__button {
  display: flex;
}
@media only screen and (max-width: 640px) {
  .l-header__button {
    gap: 0 2vw;
  }
  .l-header .c-btn01,
  .l-header .c-btn02 {
    width: 24vw;
    height: 9.3333vw;
    font-size: 2.6666vw;
    line-height: 1.3;
  }
  .l-header .c-btn02 {
    border-width: 0.2666vw;
  }
  .l-header .c-btn01::after,
  .l-header .c-btn02::after {
    display: none;
  }
}
@media print, screen and (min-width: 640px) {
  .l-header__button {
    gap: 0 0.7812vw;
  }
  .l-header__button br {
    display: none;
  } */
  /* .l-header .c-btn01,
  .l-header .c-btn02 {
    width: 12.5vw;
    height: 2.3437vw;
    font-size: 0.8416vw;
  }
  .l-header .c-btn02 {
    border-width: 0.1041vw;
  }
  .l-header .c-btn01::after,
  .l-header .c-btn02::after {
    right: 0.6510vw;
    width: 0.5729vw;
    height: 0.5729vw;
  } */

/* 以下数値変更 */
@media only screen and (max-width: 640px) {
  .l-main {
    padding-top: 16.53vw;
  }
}
@media print, screen and (min-width: 640px) {
  .l-main {
    padding-top: 5.19vw;
  }
}
.l-main .c-btn01,
.l-main .c-btn02,
.l-main .c-btn03 {
  transition: 0.3s ease-in-out;
}
@media print, screen and (min-width: 640px) {
  .l-main .c-btn01:hover,
  .l-main .c-btn02:hover,
  .l-main .c-btn03:hover {
    box-shadow: none;
    transform: translateY(7px);
  }
}

.s63-footer-content-lead {
  color: #fff;
  font-weight: 800;
}
@media only screen and (max-width: 640px) {
  .s63-footer-content-lead {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    margin-top: 12.5333333333vw;
    text-align: center;
  }
}
@media print, screen and (min-width: 640px) {
  .s63-footer-content-lead {
    font-size: 1.0416666667vw;
    line-height: 1;
    margin-top: 3.6458333333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .s63-footer-content-lead br {
    display: none;
  }
}

.pagetop {
  height: 18.6666666667vw;
  position: relative;
}
@media print, screen and (min-width: 640px) {
  .pagetop {
    height: 3.6458333333vw;
  }
}

.pagetop a {
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  font-size: 0;
  background-image: url("../img/be_s03/icn-pagetop.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 2.9333333333vw auto;
  background-color: #000;
  opacity: 1;
  width: 18.6666666667vw;
  height: 18.6666666667vw;
}
@media print, screen and (min-width: 640px) {
  .pagetop a {
    background-size: 0.5729166667vw auto;
    width: 3.6458333333vw;
    height: 3.6458333333vw;
  }
}

@media screen and (min-width: 640px) {
  .pagetop a:hover {
    background-position: center 1.1979166667vw;
    background-color: #262626;
  }
}
.s63-container {
  padding: 0 5.3333333333vw;
  width: 100%;
}
@media print, screen and (min-width: 640px) {
  .s63-container {
    padding: 0 1.0416666667vw;
  }
}

@media screen and (min-width: 640px) {
  .s63-container {
    margin: 0 auto;
    max-width: 64.5833333333vw;
  }
}
.s63-footer-wrapper {
  margin-top: -16vw;
  color: #fff;
}

@media screen and (min-width: 640px) {
  .s63-footer-wrapper {
    margin-top: -3.6458333333vw;
  }
}
.s63-footer {
  background-color: #000;
  padding-top: 18.4vw;
  padding-bottom: 16vw;
}

@media screen and (min-width: 640px) {
  .s63-footer {
    padding-top: 4.4270833333vw;
    padding-bottom: 3.6979166667vw;
  }
}
.s63-footer-contents {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 640px) {
  .s63-footer-contents {
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between;
  }
}
.s63-footer-content-01 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-01 {
    align-items: flex-start;
  }
}
.s63-footer-content-02 {
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-02 {
    align-items: flex-end;
  }
}
.s63-footer-content-02-inner {
  display: flex;
  align-items: center;
  flex-direction: column;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-02-inner {
    flex-direction: column-reverse;
    align-items: flex-end;
  }
}
.s63-footer-content-logo {
  display: block;
  width: 42.1333333333vw;
  height: 9.0666666667vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-logo {
    width: 9.9479166667vw;
    height: 2.1354166667vw;
  }
}
.s63-footer-content-app-download-cta {
  display: flex;
  margin-top: 8.5333333333vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-app-download-cta {
    margin-top: 3.6979166667vw;
  }
}
.s63-footer-content-app-download-cta-btn {
  flex-shrink: 0;
}

.s63-footer-content-app-download-cta-btn:not(:first-child) {
  margin-left: 3.4666666667vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-app-download-cta-btn:not(:first-child) {
    margin-left: 0.8333333333vw;
  }
}
.s63-footer-content-app-download-cta-btn-image.cta-download-button-app-store {
  width: 40.5333333333vw;
  height: 14.9333333333vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-app-download-cta-btn-image.cta-download-button-app-store {
    width: 9.6875vw;
    height: 3.5416666667vw;
  }
}
.s63-footer-content-app-download-cta-btn-image.cta-download-button-google-play {
  width: 45.0666666667vw;
  height: 14.9333333333vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-app-download-cta-btn-image.cta-download-button-google-play {
    width: 10.78125vw;
    height: 3.5416666667vw;
  }
}
.s63-footer-content-sns {
  display: flex;
}

@media screen and (max-width: 639px) {
  .s63-footer-content-sns {
    margin-top: 8.5333333333vw;
  }
}
.s63-footer-content-sns-link {
  flex: 1;
}

.s63-footer-content-sns-link:not(:first-child) {
  margin-left: 3.2vw;
}
@media print, screen and (min-width: 640px) {
  .s63-footer-content-sns-link:not(:first-child) {
    margin-left: 0.625vw;
  }
}

.s63-footer-content-sns-link-image {
  width: 12vw;
  height: 12vw;
}
@media print, screen and (min-width: 640px) {
  .s63-footer-content-sns-link-image {
    width: 2.34375vw;
    height: 2.34375vw;
  }
}

.s63-footer-content-form-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  margin-top: 8.5333333333vw;
  font-weight: 800;
  font-size: 4.8vw;
  width: 89.3333333333vw;
  border-radius: 7.4666666667vw;
  border: 2px solid #fff;
  height: 14.6666666667vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-form-link {
    font-size: 1.0416666667vw;
    margin-top: 1.5625vw;
    width: 19.3229166667vw;
    height: 3.1770833333vw;
    border-radius: 1.6145833333vw;
  }
}
.s63-footer-content-company {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 12.2666666667vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-company {
    flex-direction: row;
    align-items: baseline;
    margin-top: 1.9791666667vw;
  }
}
.s63-footer-content-company-links {
  display: flex;
  align-items: center;
  justify-content: center;
}

.s63-footer-content-company-link {
  line-height: 1;
  color: #5d5d5d;
  display: block;
  font-size: 3.4666666667vw;
}

.s63-footer-content-company-link:hover {
  color: #fff;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-company-link {
    font-size: 0.7291666667vw;
  }
}
.s63-footer-content-company-link:not(:first-child)::before {
  content: "/";
  margin-left: 3.7333333333vw;
  margin-right: 3.7333333333vw;
}

@media screen and (min-width: 640px) {
  .s63-footer-content-company-link:not(:first-child)::before {
    margin-left: 0.9375vw;
    margin-right: 0.9375vw;
  }
}
.s63-footer-content-copyright {
  line-height: 1;
  color: #5d5d5d;
  font-size: 3.4666666667vw;
}
@media print, screen and (min-width: 640px) {
  .s63-footer-content-copyright {
    font-size: 0.6770833333vw;
  }
}

@media screen and (max-width: 639px) {
  .s63-footer-content-copyright {
    margin-top: 5.0666666667vw;
  }
}
@media screen and (min-width: 640px) {
  .s63-footer-content-copyright {
    margin-left: 1.40625vw;
  }
}

.p-cv__button {
  display: flex;
}
/* 改修箇所 */
.c-btn01,
.c-btn02,.c-btn03 {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  font-weight: 800;
  text-align: center;
}
.c-btn01::after,
.c-btn02::after,.c-btn03::after {
  position: absolute;
  top: 50%;
  right: 40px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  content: "";
  transform: translateY(-50%);
}
.c-btn01 {
  background: #ff2234;
  color: #fff;
  padding-right: 0.93vw;
}
.c-btn01::after {
  background-image: url("../img/re_s03/icon-arrow01.svg");
}
.c-btn02 {
  border: solid #ff2234;
  background: #fff;
  color: #ff2234;
}
.c-btn02::after {
  background-image: url("../img/re_s03/icon-arrow01-r.svg");
}
/* ボタン追加 */
.c-btn03 {
  border: solid #000000;
  background: #ffffff;
  color: #000;
}
.c-btn03::after {
  background-image: url("../img/re_s03/icon-arrow03-r.svg");
}
.btn-tell__text {
    display: inline-block;
    color: #FFF;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    background: #000;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}
.btn-tell__text::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
}

@media only screen and (max-width: 640px) {
  .p-cv__button {
    flex-direction: column;
    gap: 2.9333vw 0;
  }
  .c-btn01,
  .c-btn02,.c-btn03 {
    width: 100%;
    height: 16.5333vw;
    font-size: 4.8vw;
  }
  .c-btn02 {
    border-width: 0.5333vw;
  }
  .c-btn01::after,
  .c-btn02::after,.c-btn03::after {
    right: 3.7333vw;
    width: 3.0666vw;
    height: 3.0666vw;
  }
/* 追記箇所 */
  .c-btn03{
    margin-top: 5.33vw;
  }
  .btn-tell__text {
    font-size: 2.93vw;
    padding: 1.6vw 6.4vw;
    border-radius: 4vw;
    top: -5.33vw;
    border: solid 0.27vw #FFF; 
    border-bottom: none;
  }
  .btn-tell__text::after {
      border-left: 1.6vw solid transparent;
      border-right: 1.6vw solid transparent;
      border-top: 1.6vw solid #000;
  }
}
@media print, screen and (min-width: 640px) {
  .p-cv__button {
    justify-content: space-between;
  }
  .c-btn01,
  .c-btn02,.c-btn03 {
    width: 20.67vw;
    height: 5.73vw;
    font-size: 1.47vw;
  }
  .c-btn02,.c-btn03{
    border-width: 0.2083vw;
  }
  .c-btn01::after,
  .c-btn02::after,.c-btn03::after {
    right: 1.5625vw;
    width: 1.0937vw;
    height: 1.0937vw;
  }
  .btn-tell__text {
      font-size: 0.93vw;
      padding: 0.4vw 1.6vw;
      border-radius: 1.07vw;
      top: -1.6vw;
      border: solid 0.07vw #FFF; 
      border-bottom: none;
  }
  .btn-tell__text::after {
      border-left: 0.53vw solid transparent;
      border-right: 0.53vw solid transparent;
      border-top: 0.53vw solid #000;
      margin-top: -0.07vw;
  }
}
.c-cv .c-btn03 {
  border: #fff;
}
/* 追記箇所 */
.c-cv {
  background: #000;
}
@media only screen and (max-width: 640px) {
  .c-cv {
    padding-bottom: 5.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv {
    padding-bottom: 1.8229vw;
  }
}
.c-cv .c-cv__inner {
  margin: 0 auto;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .c-cv .c-cv__inner {
    padding: 27.2vw 5.3333vw 0;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__inner {
    width: 66.67%;
  }
}
@media only screen and (max-width: 640px) {
  .c-cv .c-cv__top {
    display: flex;
    justify-content: space-between;
    left: 50%;
    position: absolute;
    top: -4vw;
    transform: translate(-50%);
    width: calc(100% - 12.8vw);
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__top {
    padding-left: 0.8333333333vw;
    position: relative;
    padding-bottom: 1.3333333333vw;
  }
}
.c-cv .c-cv__top h3 {
  color: #fff;
  font-weight: 900;
}
@media only screen and (max-width: 640px) {
  .c-cv .c-cv__top h3 {
    padding-top: 8.2666666667vw;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__top h3 {
    padding-top: 1.7708333333vw;
    padding-bottom: 1.4583333333vw;
  }
}
@media only screen and (max-width: 640px) {
  .c-cv .c-cv__top h3 img {
    width: 42.6666666667vw;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__top h3 img {
    width: 27.0833333333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__top figure {
    position: absolute;
    right: 0.625vw;
    top: -2.0833333333vw;
  }
}
@media only screen and (max-width: 640px) {
  .c-cv .c-cv__top figure img {
    width: 43.4666666667vw;
  }
}
@media print, screen and (min-width: 640px) {
  .c-cv .c-cv__top figure img {
    width: 16.875vw;
  }
}

.l-main img {
  width: 100%;
}

.p-mv {
  line-height: 0;
  font-size: 0;
}

.p-consultation {
  background: #e7e7e7;
}
@media only screen and (max-width: 640px) {
  .p-consultation .p-cv__button {
    margin-top: -14.6vw;
    padding: 0 5.3333vw;
  }
  .p-consultation .c-btn01,
  .p-consultation .c-btn02,.p-consultation .c-btn03 {
    box-shadow: 0 2.6666666667vw 4.2666666667vw 0 rgba(0, 0, 0, 0.32);
  }
}
/* 改修箇所 */
@media only screen and (min-width: 640px) {
  .p-consultation .p-cv__button {
    margin: -5vw auto 0;
    width: 66.67%;
  }
  .p-consultation .c-btn01,
  .p-consultation .c-btn02,.p-consultation .c-btn03 {
    box-shadow: 0 0.5208333333vw 0.8333333333vw 0 rgba(0, 0, 0, 0.32);
  }
}

@media print, screen and (min-width: 640px) {
  .p-scene {
    background: linear-gradient(to bottom, #000 50%, #f9be00 50%);
  }
}

@media print, screen and (min-width: 640px) {
  .p-matching {
    background: linear-gradient(to bottom, #f9be00 50%, transparent 50%);
  }
}

.p-voice {
  background: #f6f6f6;
}
@media only screen and (max-width: 640px) {
  .p-voice {
    padding: 6.6666vw 5.4054vw 9.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice {
    padding: 3.3854vw 0 4.9479vw;
  }
}
.p-voice .p-voice__inner {
  margin: 0 auto;
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__inner {
    width: 58.3333vw;
  }
}
.p-voice h2 {
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .p-voice h2 {
    margin-bottom: 6.2666vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice h2 {
    margin-bottom: 2.6041vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-voice h2 img {
    width: 67.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice h2 img {
    width: 46.5104vw;
  }
}
.p-voice .p-voice__item {
  background: #fff;
  box-shadow: 0 0 27px 0 rgba(0, 0, 0, 0.14);
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item {
    padding: 6.6666vw 6.4vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item {
    display: flex;
    padding: 2.8125vw 3.6458vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item:not(:last-child) {
    margin-bottom: 4.8vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item:not(:last-child) {
    margin-bottom: 1.927vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item figure {
    margin-top: 2.8vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item figure {
    flex-shrink: 0;
    margin-left: 2.6041666667vw;
    width: 22.4479vw;
  }
}
.p-voice .p-voice__item figure img {
  width: 100%;
}
.p-voice .p-voice__item h3 {
  font-weight: 800;
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item h3 {
    font-size: 5.3333vw;
    line-height: 1.5;
    margin-bottom: 4.1333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item h3 {
    font-feature-settings: "palt";
    font-size: 2.1875vw;
    line-height: 1.357;
    margin-top: -0.4166vw;
    margin-bottom: 0.7291vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item p {
    font-size: 3.7333vw;
    line-height: 1.6428;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item p {
    font-size: 1.0416666667vw;
    line-height: 1.75;
  }
}
.p-voice .p-voice__item .p-voice__name {
  text-align: right;
}
@media only screen and (max-width: 640px) {
  .p-voice .p-voice__item .p-voice__name {
    margin-top: 2.6666vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-voice .p-voice__item .p-voice__name {
    margin-top: 1.6666vw;
  }
}

@media only screen and (max-width: 640px) {
  .p-qa {
    padding: 6.6666vw 5.4054vw 9.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa {
    padding: 4.1666vw 0 4.4791vw;
  }
}
.p-qa .p-qa__inner {
  margin: 0 auto;
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__inner {
    width: 58.3333vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__title {
    margin-bottom: 8.6666vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__title {
    margin-bottom: 3.3854vw;
  }
}
.p-qa .p-qa__title p {
  font-weight: 800;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__title p {
    font-size: 5.3333vw;
    margin-bottom: 4vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__title p {
    font-size: 2.0833vw;
    margin-bottom: 1.4583vw;
  }
}
.p-qa .p-qa__title h2 {
  font-weight: 900;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__title h2 {
    font-size: 8.8vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__title h2 {
    font-size: 3.4375vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__title h2 small {
    font-size: 6.1333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__title h2 small {
    font-size: 2.3958vw;
  }
}
.p-qa .p-qa__item {
  box-shadow: 0 0 27px 0 rgba(0, 0, 0, 0.14);
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item:not(:last-child) {
    margin-bottom: 4.8vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item:not(:last-child) {
    margin-bottom: 1.9791vw;
  }
}
.p-qa .p-qa__item .p-qa__q a {
  background: url("../img/be_s03/icon-q.svg") no-repeat 1.875vw center/1.4583vw auto;
  display: block;
  font-weight: 800;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a {
    background-size: 5.3333vw;
    background-position: 3.7333vw 1em;
    font-size: 3.7333vw;
    padding: 2.9333vw 12vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a {
    font-size: 1.1458vw;
    padding: 1.5625vw 4.6875vw;
  }
}
.p-qa .p-qa__item .p-qa__q a::before, .p-qa .p-qa__item .p-qa__q a::after {
  background: #000;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.p-qa .p-qa__item .p-qa__q a::before {
  transition: transform 0.3s ease-in-out;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a::before {
    height: 3.8666vw;
    right: 4.6666vw;
    width: 1.2vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a::before {
    height: 1.5104vw;
    right: 2.2395vw;
    width: 0.3125vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a::after {
    height: 1.2vw;
    right: 3.4666vw;
    width: 3.8666vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__q a::after {
    height: 0.3125vw;
    right: 1.6666vw;
    width: 1.5104vw;
  }
}
.p-qa .p-qa__item .p-qa__q a.is-active::before {
  transform: translateY(-50%) rotate(90deg);
}
.p-qa .p-qa__item .p-qa__hidden {
  display: none;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__hidden {
    padding: 3.3333vw 0 6vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__hidden {
    padding: 0.8854vw 0 2.3437vw;
  }
}
.p-qa .p-qa__item .p-qa__a {
  background: url("../img/be_s03/icon-a.svg") no-repeat 1.875vw top/1.4583vw auto;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__a {
    background-position: 3.3333vw top;
    background-size: 4.4vw auto;
    padding-left: 10.4vw;
    padding-right: 5.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__a {
    min-height: 1.4583vw;
    padding-left: 4.6875vw;
    padding-right: 3.9062vw;
  }
}
.p-qa .p-qa__item .p-qa__a p {
  line-height: 1.75;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__a p {
    font-size: 3.2vw;
    transform: translateY(-1.2vw);
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__a p {
    font-size: 0.8333vw;
    transform: translateY(-0.3125vw);
  }
}
.p-qa .p-qa__item .p-qa__a p span {
  background: linear-gradient(to top, #f8ce4c 40%, transparent 41%);
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__job {
    padding: 0 5.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 3.125vw;
    padding: 0 2.6041vw;
    row-gap: 3.5416vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item {
    width: 25vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item:not(:last-child) {
    margin-bottom: 2.6666vw;
  }
}
.p-qa .p-qa__item .p-qa__job .p-qa__job__item h4 {
  background: #f8ce4c;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item h4 {
    font-size: 3.2vw;
    margin-bottom: 1.3333vw;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item h4 {
    font-size: 0.8333vw;
    margin-bottom: 0.4166vw;
    padding: 0.1041vw 0;
  }
}
.p-qa .p-qa__item .p-qa__job .p-qa__job__item ul {
  display: flex;
  flex-wrap: wrap;
}
.p-qa .p-qa__item .p-qa__job .p-qa__job__item li {
  width: 33.3333%;
}
@media only screen and (max-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item li {
    font-size: 2.6666vw;
    line-height: 2;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item li {
    font-size: 0.8333vw;
    line-height: 2.5;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item:last-child li:nth-child(3n+1) {
    width: 28%;
  }
}
@media print, screen and (min-width: 640px) {
  .p-qa .p-qa__item .p-qa__job .p-qa__job__item:last-child li:nth-child(3n) {
    width: 38%;
  }
}

.p-cv {
  position: relative;
}
@media print, screen and (min-width: 640px) {
  .p-cv {
    background: #000;
    height: 9.6354vw;
  }
}
@media only screen and (max-width: 640px) {
  .p-cv img {
    width: 100%;
  }
}
@media print, screen and (min-width: 640px) {
  .p-cv img {
    left: 50%;
    position: absolute;
    top: -1.25vw;
    transform: translate(-50%);
    width: 41.6666vw;
  }
}

/* display */
@media only screen and (max-width: 640px) {
  .u-pc {
    display: none;
  }
}

@media print, screen and (min-width: 640px) {
  .u-sp {
    display: none;
  }
}

.it-shien iframe{
  border-width: 0;
}