@charset "UTF-8";
/* resset.dev • v5.0.2 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  tab-size: 4;
  margin-top: 0 !important;
}

*,
::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
   # ================================================================= */
hr {
  overflow: visible; /* Show the overflow in Edge and IE */
  height: 0; /* Add the correct box sizing in Firefox */
  color: inherit; /* Correct border color in Firefox. */
}

details,
main {
  display: block; /* Render the `main` element consistently in IE. */
}

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

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

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

abbr[title] {
  border-bottom: none; /* Remove the bottom border in Chrome 57 */
  /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  text-decoration: underline;
  text-decoration: underline dotted;
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
}

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 */
}

pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}

b,
strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}

/* 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;
}

table {
  border-color: inherit; /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0; /* Remove text indentation in Chrome, Edge, and Safari */
}

iframe {
  border-style: none;
}

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

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto; /* Correct the cursor style of increment and decrement buttons in Chrome */
}

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

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* Remove the inner padding in Chrome and Safari on macOS */
}

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 */
}

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

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

/* 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: none;
  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 */
}

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

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
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 */
  max-width: 100%; /* Correct the text wrapping in Edge 18- and IE */
}

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

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

/* # =================================================================
   # 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;
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* 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=true] {
  cursor: default;
}

@keyframes underLineTitleAnimation {
  from {
    width: 0;
    opacity: 0;
  }
  to {
    width: 100%;
    opacity: 1;
  }
}
.-hoverZoom {
  overflow: hidden;
  width: 100%;
}
.-hoverZoom_filter {
  overflow: hidden;
}
.-hoverZoom:hover img {
  transform: scale(1.1);
}
.-hoverZoom img {
  transform: scale(1);
  transition: 0.3s;
}

.-tr03 {
  transition: 0.3s;
}

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

.isPcXl {
  display: block;
}
@media screen and (max-width: 1330px) {
  .isPcXl {
    display: none;
  }
}

.isPcLg {
  display: block;
}
@media screen and (max-width: 1100px) {
  .isPcLg {
    display: none;
  }
}

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

.isLg {
  display: none;
}
@media screen and (max-width: 1100px) {
  .isLg {
    display: block;
  }
}

.isXl {
  display: none;
}
@media screen and (max-width: 1330px) {
  .isXl {
    display: block;
  }
}

@font-face {
  font-family: "SourceHanSansJP";
  src: url("../font/SourceHanSansJP-Regular.otf") format("opentype");
  font-weight: 400;
}
@font-face {
  font-family: "SourceHanSansJP";
  src: url("../font/SourceHanSansJP-Medium.otf") format("opentype");
  font-weight: 500;
}
@font-face {
  font-family: "SourceHanSansJP";
  src: url("../font/SourceHanSansJP-Bold.otf") format("opentype");
  font-weight: 600;
}
@font-face {
  font-family: "SourceHanSansJP";
  src: url("../font/SourceHanSansJP-Heavy.otf") format("opentype");
  font-weight: 900;
}
@font-face {
  font-family: "enfont";
  src: url("../font/AcuminPro-Regular.otf") format("opentype");
  font-weight: 400;
}
@font-face {
  font-family: "enfont";
  src: url("../font/AcuminPro-Medium.otf") format("opentype");
  font-weight: 500;
}
@font-face {
  font-family: "enfont-sub";
  src: url("../font/FuturaCyrillicDemi.ttf") format("opentype");
  font-weight: 700;
}
@font-face {
  font-family: "mv_font";
  src: url("../font/A-OTF-RyuminPro-Bold.otf") format("opentype");
  font-weight: 600;
}
* {
  min-height: 0vw;
  min-height: 0;
}

body {
  color: #000000;
  font-family: kozuka-gothic-pr6n, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.045em;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  body {
    font-size: clamp(0.75rem, 0.1741741742rem + 1.2012012012vw, 1rem);
  }
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 14px;
  }
}

.subFont {
  font-family: serif;
}

.en {
  font-family: "AcuminPro-Regular", sans-serif;
  font-weight: 400;
}

.en-sub {
  font-family: "AcuminPro-Medium", sans-serif;
  font-weight: 500;
}

a {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
}
a.-under-line {
  text-decoration: underline;
}
a.-under-line:hover {
  text-decoration: none;
}

ul {
  list-style: none;
}
ul.-list-style li {
  margin-left: 20px;
  list-style: disc !important;
  margin-bottom: 15px;
}

ol li {
  margin-left: 20px;
}

table {
  border-collapse: collapse;
}

label {
  cursor: pointer;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.nowrap {
  white-space: nowrap;
}

.hidden {
  overflow: hidden;
}

.-bgWhite {
  background: #fff;
}

.-bgMain {
  background: #00ffff;
}

.-bgGray {
  background: #313131;
}

.-bgGray02 {
  background: #f0f0f0;
}

.-bgGray03 {
  background: #717171;
}

.-bgSub {
  background: #58cbcf;
}

.-bgFooter {
  background: #dddddd;
}

.-bgOrange {
  background: #f39c43;
}

.-bgRed {
  background: #fcf2f2;
}

.-fcWhite {
  color: #fff;
}

.-fcMain {
  color: #00ffff;
}

.-fcCatch {
  color: #58cbcf;
}

.-fcGray {
  color: #929292;
}

.-fcRed {
  color: #ff0000;
}

.hoverReverseOpacity > ul li a {
  display: block;
}
.hoverReverseOpacity > ul li a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1137254902);
}
.hoverReverseOpacity > ul li a span {
  display: block;
  width: 100%;
  text-align: center;
}
.hoverReverseOpacity > ul:hover li a {
  display: block;
}
.hoverReverseOpacity > ul:hover li a:not(:hover)::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3803921569);
}

.demo-arrow::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-top: solid 2px #5070e3;
  border-right: solid 2px #5070e3;
}

.arrow-top::before {
  transform: rotate(-45deg) translateY(-50%);
}

.arrow-bottom::before {
  transform: rotate(135deg) translateY(-50%);
}

.arrow-left::before {
  transform: rotate(-135deg) translateY(-50%);
}

.arrow-right::before {
  transform: rotate(45deg) translateY(-50%);
}

.triangle-top {
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-bottom: 30px solid black;
}

.triangle-right {
  width: 0;
  height: 0;
  border-left: 30px solid black;
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
}

.triangle-left {
  width: 0;
  height: 0;
  border-top: 30px solid transparent;
  border-right: 30px solid black;
  border-bottom: 30px solid transparent;
}

.triangle-bottom {
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid black;
}

.cp_arrows {
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
}

.cp_arrows span {
  display: inline-block;
  background: #313131;
  border-radius: 100%;
  width: 35px;
  height: 35px;
  transition: 0.3s;
}

/*矢印の縦線*/
.cp_arrows [class*=cp_arrow] {
  position: relative;
  vertical-align: middle;
  left: -2.5px;
  top: 1.5px;
  display: inline-block;
  width: 1px;
  height: 15px;
  background: #ffffff;
  margin: 0 20px;
}
@media screen and (max-width: 1100px) {
  .cp_arrows [class*=cp_arrow] {
    top: 3px;
  }
}
@media only screen and (max-width: 767px) {
  .cp_arrows [class*=cp_arrow] {
    top: 4px;
  }
}

/*矢印の＜の部分*/
.cp_arrows [class*=cp_arrow]:before,
.cp_arrows [class*=cp_arrow]:after {
  position: absolute;
  content: "";
  top: 0px;
  width: 1px;
  height: 10px;
  background: #ffffff;
}

.cp_arrows [class*=cp_arrow]:before {
  left: 4px;
  transform: rotate(-45deg);
}

.cp_arrows [class*=cp_arrow]:after {
  right: 4px;
  transform: rotate(45deg);
}

/*それぞれの角度*/
.cp_arrows .cp_arrow_left {
  transform: rotate(-90deg);
}

.cp_arrows .cp_arrow_right {
  transform: rotate(90deg);
}

.cp_arrows .cp_arrow_up {
  transform: rotate(0deg);
}

.cp_arrows .cp_arrow_down {
  transform: rotate(180deg);
}

.cp_arrows .cp_arrow_left_up {
  transform: rotate(-45deg);
}

.cp_arrows .cp_arrow_left_down {
  transform: rotate(-135deg);
}

.cp_arrows .cp_arrow_right_up {
  transform: rotate(45deg);
}

.cp_arrows .cp_arrow_right_down {
  transform: rotate(135deg);
}

.circle_arrows span {
  display: inline-block;
  border: 1px solid #dfdfdf;
  border-radius: 100%;
  width: 35px;
  height: 35px;
}

/*矢印の縦線*/
.circle_arrows [class*=circle_arrow] {
  position: relative;
  vertical-align: middle;
  left: -2.5px;
  top: 3px;
  display: inline-block;
  width: 1px;
  height: 15px;
  background: #dfdfdf;
  margin: 0 20px;
}

/*矢印の＜の部分*/
.circle_arrows [class*=circle_arrow]:after {
  position: absolute;
  content: "";
  top: -2px;
  width: 1px;
  height: 8px;
  background: #dfdfdf;
}

.circle_arrows [class*=circle_arrow]:after {
  right: 3px;
  transform: rotate(45deg);
}

/*それぞれの角度*/
.circle_arrows .circle_arrow_right {
  transform: rotate(90deg);
}

.-isArrow {
  position: relative;
  padding-right: 5px;
}
.-isArrow .arrow-block {
  position: absolute;
  top: 60%;
  left: 100%;
  transform: translateY(-50%);
}
.-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #535353;
}
.-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #f0f0f0;
  border-right: solid 1px #f0f0f0;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 8.5px;
  left: 1.5px;
}

.-sideAuto {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .-sideAuto_hasPc {
    margin-left: 0;
    margin-right: 0;
  }
}
.-sideAuto_hasSp {
  margin-left: 0;
  margin-right: 0;
}
@media only screen and (max-width: 767px) {
  .-sideAuto_hasSp {
    margin-left: auto;
    margin-right: auto;
  }
}

.-sideRight {
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .-sideRight_hasPc {
    margin-left: 0;
    margin-right: 0;
  }
}
.-sideRight_SpAuto {
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .-sideRight_SpAuto {
    margin-left: auto;
    margin-right: auto;
  }
}

.-w10 {
  width: 10%;
}
@media only screen and (max-width: 767px) {
  .-w10.-spW100 {
    width: 100%;
  }
  .-w10.-spW50 {
    width: 50%;
  }
}

.-w20 {
  width: 20%;
}
@media only screen and (max-width: 767px) {
  .-w20.-spW100 {
    width: 100%;
  }
  .-w20.-spW50 {
    width: 50%;
  }
}

.-w30 {
  width: 30%;
}
@media only screen and (max-width: 767px) {
  .-w30.-spW100 {
    width: 100%;
  }
  .-w30.-spW50 {
    width: 50%;
  }
}

.-w40 {
  width: 40%;
}
@media only screen and (max-width: 767px) {
  .-w40.-spW100 {
    width: 100%;
  }
  .-w40.-spW50 {
    width: 50%;
  }
}

.-w50 {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .-w50.-spW100 {
    width: 100%;
  }
  .-w50.-spW50 {
    width: 50%;
  }
}

.-w60 {
  width: 60%;
}
@media only screen and (max-width: 767px) {
  .-w60.-spW100 {
    width: 100%;
  }
  .-w60.-spW50 {
    width: 50%;
  }
}

.-w70 {
  width: 70%;
}
@media only screen and (max-width: 767px) {
  .-w70.-spW100 {
    width: 100%;
  }
  .-w70.-spW50 {
    width: 50%;
  }
}

.-w80 {
  width: 80%;
}
@media only screen and (max-width: 767px) {
  .-w80.-spW100 {
    width: 100%;
  }
  .-w80.-spW50 {
    width: 50%;
  }
}

.-w90 {
  width: 90%;
}
@media only screen and (max-width: 767px) {
  .-w90.-spW100 {
    width: 100%;
  }
  .-w90.-spW50 {
    width: 50%;
  }
}

.-w100 {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .-w100.-spW100 {
    width: 100%;
  }
  .-w100.-spW50 {
    width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .-spW100 {
    width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .-spW50 {
    width: 50%;
  }
}

.-m60 {
  margin: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m60 {
    margin: clamp(2.625rem, 0.0337837838rem + 5.4054054054vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m60 {
    margin: 40px;
  }
}

.-m50 {
  margin: 50px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m50 {
    margin: clamp(2.1875rem, 0.0281531532rem + 4.5045045045vw, 3.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m50 {
    margin: 30px;
  }
}

.-m40 {
  margin: 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m40 {
    margin: clamp(2rem, 2.2879129129rem - 0.6006006006vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m40 {
    margin: 30px;
  }
}

.-m30 {
  margin: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m30 {
    margin: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m30 {
    margin: 20px;
  }
}

.-m20 {
  margin: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m20 {
    margin: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m20 {
    margin: 10px;
  }
}

.-m10 {
  margin: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-m10 {
    margin: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-m10 {
    margin: 5px;
  }
}

.-mv60 {
  margin: 60px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv60 {
    margin: clamp(2.625rem, 0.0337837838rem + 5.4054054054vw, 3.75rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv60 {
    margin: 40px 0;
  }
}

.-mv0 {
  margin: 50px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv0 {
    margin: clamp(2.1875rem, 0.0281531532rem + 4.5045045045vw, 3.125rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv0 {
    margin: 30px 0;
  }
}

.-mv40 {
  margin: 40px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv40 {
    margin: clamp(2rem, 2.2879129129rem - 0.6006006006vw, 1.875rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv40 {
    margin: 30px 0;
  }
}

.-mv30 {
  margin: 30px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv30 {
    margin: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv30 {
    margin: 20px 0;
  }
}

.-mv20 {
  margin: 20px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv20 {
    margin: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv20 {
    margin: 10px 0;
  }
}

.-mv10 {
  margin: 10px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mv10 {
    margin: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-mv10 {
    margin: 5px 0;
  }
}

.-mh60 {
  margin: 0 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh60 {
    margin: 0 clamp(2.625rem, 0.0337837838rem + 5.4054054054vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh60 {
    margin: 0 40px;
  }
}

.-mh50 {
  margin: 0 50px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh50 {
    margin: 0 clamp(2.1875rem, 0.0281531532rem + 4.5045045045vw, 3.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh50 {
    margin: 0 30px;
  }
}

.-mh40 {
  margin: 0 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh40 {
    margin: 0 clamp(2rem, 2.2879129129rem - 0.6006006006vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh40 {
    margin: 0 30px;
  }
}

.-mh30 {
  margin: 0 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh30 {
    margin: 0 clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh30 {
    margin: 0 20px;
  }
}

.-mh20 {
  margin: 0 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh20 {
    margin: 0 clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh20 {
    margin: 0 10px;
  }
}

.-mh10 {
  margin: 0 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mh10 {
    margin: 0 clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mh10 {
    margin: 0 5px;
  }
}

.-mt90 {
  margin-top: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt90 {
    margin-top: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt90 {
    margin-top: 60px;
  }
}

.-mt60 {
  margin-top: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt60 {
    margin-top: clamp(2.625rem, 0.0337837838rem + 5.4054054054vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt60 {
    margin-top: 40px;
  }
}

.-mt50 {
  margin-top: 50px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt50 {
    margin-top: clamp(2.1875rem, 0.0281531532rem + 4.5045045045vw, 3.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt50 {
    margin-top: 30px;
  }
}

.-mt40 {
  margin-top: 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt40 {
    margin-top: clamp(2rem, 2.2879129129rem - 0.6006006006vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt40 {
    margin-top: 30px;
  }
}

.-mt30 {
  margin-top: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt30 {
    margin-top: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt30 {
    margin-top: 20px;
  }
}

.-mt20 {
  margin-top: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt20 {
    margin-top: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt20 {
    margin-top: 10px;
  }
}

.-mt10 {
  margin-top: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mt10 {
    margin-top: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mt10 {
    margin-top: 5px;
  }
}

.-mt5 {
  margin-top: 5px;
}

.-mt10_ {
  margin-top: 10px;
}

.-mb60 {
  margin-bottom: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb60 {
    margin-bottom: clamp(2.625rem, 0.0337837838rem + 5.4054054054vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb60 {
    margin-bottom: 40px;
  }
}

.-mb50 {
  margin-bottom: 50px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb50 {
    margin-bottom: clamp(2.1875rem, 0.0281531532rem + 4.5045045045vw, 3.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb50 {
    margin-bottom: 30px;
  }
}

.-mb40 {
  margin-bottom: 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb40 {
    margin-bottom: clamp(2rem, 2.2879129129rem - 0.6006006006vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb40 {
    margin-bottom: 30px;
  }
}

.-mb30 {
  margin-bottom: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb30 {
    margin-bottom: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb30 {
    margin-bottom: 20px;
  }
}

.-mb20 {
  margin-bottom: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb20 {
    margin-bottom: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb20 {
    margin-bottom: 10px;
  }
}

.-mb15 {
  margin-bottom: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb15 {
    margin-bottom: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb15 {
    margin-bottom: 11px;
  }
}

.-mb10 {
  margin-bottom: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-mb10 {
    margin-bottom: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-mb10 {
    margin-bottom: 5px;
  }
}

.-mb3 {
  margin-bottom: 3px;
}

.-pl30 {
  padding-left: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pl30 {
    padding-left: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pl30 {
    padding-left: 20px;
  }
}

.-pl20 {
  padding-left: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pl20 {
    padding-left: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pl20 {
    padding-left: 10px;
  }
}

.-pl15 {
  padding-left: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pl15 {
    padding-left: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pl15 {
    padding-left: 11px;
  }
}

.-pl10 {
  padding-left: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pl10 {
    padding-left: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pl10 {
    padding-left: 5px;
  }
}

.-pr45 {
  padding-right: 45px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pr45 {
    padding-right: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pr45 {
    padding-right: 20px;
  }
}

.-pr30 {
  padding-right: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pr30 {
    padding-right: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pr30 {
    padding-right: 20px;
  }
}

.-pr20 {
  padding-right: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pr20 {
    padding-right: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pr20 {
    padding-right: 10px;
  }
}

.-pr15 {
  padding-right: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pr15 {
    padding-right: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pr15 {
    padding-right: 11px;
  }
}

.-pr10 {
  padding-right: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pr10 {
    padding-right: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pr10 {
    padding-right: 5px;
  }
}

.-pt30 {
  padding-top: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pt30 {
    padding-top: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pt30 {
    padding-top: 20px;
  }
}

.-pt20 {
  padding-top: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pt20 {
    padding-top: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pt20 {
    padding-top: 10px;
  }
}

.-pt15 {
  padding-top: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pt15 {
    padding-top: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pt15 {
    padding-top: 11px;
  }
}

.-pt10 {
  padding-top: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pt10 {
    padding-top: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pt10 {
    padding-top: 5px;
  }
}

.-pb30 {
  padding-bottom: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pb30 {
    padding-bottom: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pb30 {
    padding-bottom: 20px;
  }
}

.-pb20 {
  padding-bottom: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pb20 {
    padding-bottom: clamp(0.8125rem, -0.1951951952rem + 2.1021021021vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pb20 {
    padding-bottom: 10px;
  }
}

.-pb15 {
  padding-bottom: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pb15 {
    padding-bottom: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pb15 {
    padding-bottom: 11px;
  }
}

.-pb10 {
  padding-bottom: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-pb10 {
    padding-bottom: clamp(0.375rem, -0.2008258258rem + 1.2012012012vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-pb10 {
    padding-bottom: 5px;
  }
}

.-pv10 {
  padding: 10px 0;
}

.-textShadow {
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.1568627451), 0 0 10px rgba(0, 0, 0, 0.1568627451), 0 0 10px rgba(0, 0, 0, 0.1568627451), 0 0 10px rgba(0, 0, 0, 0.1568627451);
}

.-fs150 {
  font-size: 150px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs150 {
    font-size: clamp(6.125rem, -1.3607357357rem + 15.6156156156vw, 9.375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs150 {
    font-size: clamp(2.8125rem, 0.6845556745rem + 11.3490364026vw, 6.125rem);
  }
}

.-fs140 {
  font-size: 140px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs140 {
    font-size: clamp(5.5rem, -1.9857357357rem + 15.6156156156vw, 8.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs140 {
    font-size: clamp(2.1875rem, 0.0595556745rem + 11.3490364026vw, 5.5rem);
  }
}

.-fs120 {
  font-size: 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs120 {
    font-size: clamp(4.25rem, -3.2357357357rem + 15.6156156156vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs120 {
    font-size: clamp(2.8125rem, 0.6845556745rem + 11.3490364026vw, 6.125rem);
  }
}

.-fs88 {
  font-size: 88px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs88 {
    font-size: clamp(3.75rem, -0.2807807808rem + 8.4084084084vw, 5.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs88 {
    font-size: clamp(2.1875rem, 1.1837526767rem + 5.3533190578vw, 3.75rem);
  }
}

.-fs68 {
  font-size: 68px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs68 {
    font-size: clamp(2.5rem, -1.5307807808rem + 8.4084084084vw, 4.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs68 {
    font-size: clamp(2.1875rem, 1.9867505353rem + 1.0706638116vw, 2.5rem);
  }
}

.-fs48 {
  font-size: 48px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs48 {
    font-size: clamp(1.875rem, -0.7162162162rem + 5.4054054054vw, 3rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs48 {
    font-size: clamp(1.875rem, -0.7162162162rem + 5.4054054054vw, 3rem);
  }
}

.-fs42 {
  font-size: 32px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs42 {
    font-size: clamp(2.375rem, 1.7991741742rem + 1.2012012012vw, 2.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs42 {
    font-size: clamp(2rem, 1.7591006424rem + 1.2847965739vw, 2.375rem);
  }
}

.-fs36 {
  font-size: 36px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs36 {
    font-size: clamp(1.875rem, 1.0112612613rem + 1.8018018018vw, 2.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs36 {
    font-size: clamp(1.5rem, 1.2591006424rem + 1.2847965739vw, 1.875rem);
  }
}

.-fs30 {
  font-size: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs30 {
    font-size: clamp(1.5rem, 0.6362612613rem + 1.8018018018vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs30 {
    font-size: clamp(1.5rem, 0.6362612613rem + 1.8018018018vw, 1.875rem);
  }
}

.-fs28 {
  font-size: 28px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs28 {
    font-size: clamp(1.5rem, 0.9241741742rem + 1.2012012012vw, 1.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs28 {
    font-size: 26px;
  }
}

.-fs26 {
  font-size: 26px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs26 {
    font-size: clamp(1.375rem, 0.7991741742rem + 1.2012012012vw, 1.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs26 {
    font-size: 24px;
  }
}

.-fs24 {
  font-size: 24px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs24 {
    font-size: clamp(1.25rem, 0.6741741742rem + 1.2012012012vw, 1.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs24 {
    font-size: 22px;
  }
}

.-fs22 {
  font-size: 22px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs22 {
    font-size: clamp(1.125rem, 0.5491741742rem + 1.2012012012vw, 1.375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs22 {
    font-size: 18px;
  }
}

.-fs20 {
  font-size: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs20 {
    font-size: clamp(1rem, 0.4241741742rem + 1.2012012012vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs20 {
    font-size: 18px;
  }
}

.-fs18 {
  font-size: 18px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs18 {
    font-size: clamp(0.875rem, 0.2991741742rem + 1.2012012012vw, 1.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs18 {
    font-size: 18px;
  }
}

.-fs16 {
  font-size: 16px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs16 {
    font-size: clamp(0.75rem, 0.1741741742rem + 1.2012012012vw, 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs16 {
    font-size: 14px;
  }
}

.-fs15 {
  font-size: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs15 {
    font-size: clamp(0.6875rem, 0.1116741742rem + 1.2012012012vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs15 {
    font-size: 13px;
  }
}

.-fs14 {
  font-size: 14px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs14 {
    font-size: clamp(0.625rem, 0.0491741742rem + 1.2012012012vw, 0.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs14 {
    font-size: 12px;
  }
}

.-fs12 {
  font-size: 12px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs12 {
    font-size: clamp(0.5625rem, 0.1306306306rem + 0.9009009009vw, 0.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs12 {
    font-size: 10px;
  }
}

.-fs10 {
  font-size: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-fs10 {
    font-size: clamp(0.5rem, -0.0758258258rem + 1.2012012012vw, 0.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .-fs10 {
    font-size: 10px;
  }
}

.-fwB {
  font-weight: 700;
}

.-fwM {
  font-weight: 500;
}

.-fwR {
  font-weight: 400;
}

.-fsNormal {
  font-style: normal;
}

.-fsItalic {
  font-style: italic;
}

.changeBtn {
  padding: 12px 10px;
  background: #00ffff;
  border: 1px solid #00ffff;
  color: #fff;
  line-height: 1;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .changeBtn {
    padding: clamp(0.4375rem, -0.2822822823rem + 1.5015015015vw, 0.75rem) clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
.changeBtn:hover {
  background: #fff;
  color: #00ffff;
}

.linkTypeBtn {
  margin-right: 10px;
  margin-left: 10px;
  color: #00ffff;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .linkTypeBtn {
    margin-right: clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
    margin-left: clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
.linkTypeBtn:hover {
  text-decoration: underline;
}

.mainColorBtn {
  background: #00ffff;
  border: 1px solid #00ffff;
  line-height: 1;
  text-align: center;
  transition: 0.3s;
  border-radius: 45.5px;
  color: #fff;
}
.mainColorBtn:hover {
  background: #fff;
  color: #00ffff;
}
.mainColorBtn.-is-arrow {
  position: relative;
  gap: 20px;
}
@media screen and (max-width: 1100px) {
  .mainColorBtn.-is-arrow {
    gap: 1.8181818182vw;
  }
}
.mainColorBtn.-is-arrow .arrow {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 15px solid #fff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.whiteColorBtn {
  background: #fff;
  border: 1px solid #c4c4c4;
  line-height: 1;
  text-align: center;
  transition: 0.3s;
}
.grayColorBtn {
  background: #e8e8e8;
  border: 1px solid #e8e8e8;
  line-height: 1;
  text-align: center;
  transition: 0.3s;
  border-radius: 80px;
  position: relative;
}
.grayColorBtn:hover {
  background: #c4c4c4;
}

.searchBtn {
  background: #00ffff;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
}

.-btn_small {
  display: inline-block;
  padding: 3px 5px;
  line-height: 1.3;
  font-weight: 400;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_small {
    padding: clamp(0.125rem, -0.0189564565rem + 0.3003003003vw, 0.1875rem) clamp(0.1875rem, -0.1004129129rem + 0.6006006006vw, 0.3125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-btn_small {
    padding: clamp(0.125rem, 0.0848501071rem + 0.2141327623vw, 0.1875rem) clamp(0.1875rem, 0.1072002141rem + 0.4282655246vw, 0.3125rem);
  }
}

.-btn_normal {
  max-width: 170px;
  min-width: 100px;
  padding: 12px 30px;
  line-height: 1.3;
  display: inline-block;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_normal {
    padding: clamp(0.375rem, -0.4887387387rem + 1.8018018018vw, 0.75rem) clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .-btn_normal {
    padding: clamp(0.3125rem, 0.1117505353rem + 1.0706638116vw, 0.625rem) clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}

.-btn_big {
  display: inline-block;
  width: 100%;
  max-width: 370px;
  padding: 28px 0;
  font-weight: 700;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_big {
    padding: clamp(1.25rem, 0.0983483483rem + 2.4024024024vw, 1.75rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-btn_big {
    padding: clamp(1.25rem, 0.9288008565rem + 1.7130620985vw, 1.75rem);
  }
}

.-btn_top {
  display: block;
  width: 90%;
  max-width: 300px;
  padding: 30px 0;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}
.-btn_top.-isArrow {
  position: relative;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_top.-isArrow {
    padding-right: 5px;
  }
}
.-btn_top.-isArrow:hover .arrow-block {
  left: 88%;
  transition: 0.3s;
}
.-btn_top.-isArrow .arrow-block {
  position: absolute;
  top: 50%;
  left: 85%;
  transform: translateY(-50%);
  transition: 0.3s;
  line-height: 1;
}
.-btn_top.-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #535353;
}
.-btn_top.-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #f0f0f0;
  border-right: solid 1px #f0f0f0;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 8.5px;
  left: 2.5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_top {
    width: clamp(17.1875rem, 3.5116366366rem + 28.5285285285vw, 23.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-btn_top {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.-btn_top.-bgWhite.-isArrow .arrow {
  border: solid 1px #000000;
}
.-btn_top.-bgWhite.-isArrow .arrow::before {
  border-top: solid 1px #000000;
  border-right: solid 1px #000000;
}

.-btn_top_big {
  display: block;
  width: 90%;
  max-width: 350px;
  padding: 30px 0;
  font-weight: 500;
}
.-btn_top_big.-isArrow {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
.-btn_top_big.-isArrow .arrow {
  position: relative;
  left: 0px;
  transform: rotate(45deg);
  display: inline-block;
  width: 15px;
  height: 15px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transition: 0.3s ease-in;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_top_big.-isArrow .arrow {
    width: clamp(0.625rem, -0.0947822823rem + 1.5015015015vw, 0.9375rem);
    height: clamp(0.625rem, -0.0947822823rem + 1.5015015015vw, 0.9375rem);
  }
}
.-btn_top_big.-isArrow:hover .arrow {
  left: 10px;
  border-top: solid 2px #00ffff;
  border-right: solid 2px #00ffff;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_top_big {
    padding: clamp(1.25rem, 0.0983483483rem + 2.4024024024vw, 1.75rem) 0;
    width: clamp(17.1875rem, 3.5116366366rem + 28.5285285285vw, 23.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-btn_top_big {
    padding: clamp(1.25rem, 0.9288008565rem + 1.7130620985vw, 1.75rem);
  }
}

.-btn_entry {
  display: block;
  width: 90%;
  max-width: 550px;
  padding: 45px 0;
  font-weight: 500;
  border-radius: 60px;
}
.-btn_entry.-is-arrow {
  position: relative;
  gap: 20px;
}
@media screen and (max-width: 1100px) {
  .-btn_entry.-is-arrow {
    gap: 1.8181818182vw;
  }
}
.-btn_entry.-is-arrow .arrow {
  position: absolute;
  right: 35px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 25px solid #c4c4c4;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}
@media only screen and (max-width: 767px) {
  .-btn_entry.-is-arrow .arrow {
    border-left: 15px solid #c4c4c4;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_entry {
    padding: clamp(1.25rem, 0.0983483483rem + 2.4024024024vw, 1.75rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .-btn_entry {
    padding: clamp(1.25rem, 0.9288008565rem + 1.7130620985vw, 1.75rem);
  }
}

.-btn_form {
  display: block;
  width: 100%;
  max-width: 300px;
  padding: 30px 0;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}
.-btn_form.-isArrow {
  position: relative;
  padding-right: 5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_form.-isArrow {
    padding-right: 5px;
  }
}
.-btn_form.-isArrow:hover .arrow-block {
  left: 88%;
  transition: 0.3s;
}
.-btn_form.-isArrow .arrow-block {
  position: absolute;
  top: 50%;
  left: 85%;
  transform: translateY(-50%);
  transition: 0.3s;
  line-height: 1;
}
.-btn_form.-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #535353;
}
.-btn_form.-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #f0f0f0;
  border-right: solid 1px #f0f0f0;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 8.5px;
  left: 2.5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_form {
    width: clamp(17.1875rem, 3.5116366366rem + 28.5285285285vw, 23.125rem);
  }
}
@media only screen and (max-width: 767px) {
  .-btn_form {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.-btn_form.-bgWhite.-isArrow .arrow {
  border: solid 1px #000000;
}
.-btn_form.-bgWhite.-isArrow .arrow::before {
  border-top: solid 1px #000000;
  border-right: solid 1px #000000;
}
.-btn_form.-bgGray02.-isArrow .arrow {
  border: solid 1px #000000;
}
.-btn_form.-bgGray02.-isArrow .arrow::before {
  border-top: solid 1px #000000;
  border-right: solid 1px #000000;
}

#openBtn {
  width: 75px;
  height: 40px;
  z-index: 999;
  flex-shrink: 0;
}
@media screen and (max-width: 1100px) {
  #openBtn {
    position: relative;
    display: block;
    width: clamp(2.5rem, 1.0977564103rem + 7.4786324786vw, 4.6875rem);
  }
}
#openBtn span {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  right: 0;
  background: #fff;
  transition: 0.3s;
}
#openBtn span:nth-child(1) {
  top: 14px;
}
#openBtn span:nth-child(2) {
  top: 28px;
}
#openBtn.active span:nth-child(1) {
  top: 20px;
  transform: rotate(45deg);
}
#openBtn.active span:nth-child(2) {
  top: 20px;
  transform: rotate(-45deg);
}

#g-nav .-isArrow .arrow-block {
  top: 50%;
  left: 95%;
  transform: translate(-50%, -50%);
}

.submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

.submenu.show {
  max-height: 500px; /* 十分大きな値を設定 */
}

.pagenation {
  margin: 30px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pagenation {
    margin: clamp(1.875rem, 3.3145645646rem - 3.003003003vw, 1.25rem);
  }
}
.pagenation ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pagenation ul {
    gap: clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .pagenation ul {
    gap: 5px;
  }
}
.pagenation ul a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #58cbcf;
  color: #fff;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pagenation ul a {
    width: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
    height: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .pagenation ul a {
    width: 35px;
    height: 35px;
  }
}
.pagenation ul a.prev, .pagenation ul a.next {
  padding: 0 10px;
  border: none;
}
@media only screen and (max-width: 767px) {
  .pagenation ul a.prev, .pagenation ul a.next {
    padding: 0 5px;
  }
}
.pagenation ul a.prev:hover, .pagenation ul a.next:hover {
  background: #fff;
  color: #000000;
}
.pagenation ul a:hover {
  background: #fff;
  color: #000000;
  opacity: 0.7;
}
.pagenation ul .current {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: #fff;
  color: #000000;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pagenation ul .current {
    width: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
    height: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .pagenation ul .current {
    width: 35px;
    height: 35px;
  }
}

.works .pagenation {
  margin: 80px 0 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works .pagenation {
    margin: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .works .pagenation {
    margin: clamp(2.5rem, -0.3791291291rem + 6.006006006vw, 3.75rem) 0 0;
  }
}
.works .pagenation ul a {
  border-radius: 50%;
  background: none;
  color: #000000;
  font-size: 25px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .works .pagenation ul a {
    font-size: clamp(1.125rem, 0.8439507495rem + 1.4989293362vw, 1.5625rem);
  }
}
.works .pagenation ul a:hover {
  color: #fff;
  background-color: #49a0a3;
}
.works .pagenation ul a.prev, .works .pagenation ul a.next {
  color: #fff;
  background-color: #49a0a3;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  font-size: 16px;
}
.works .pagenation ul .current {
  color: #fff;
  background-color: #49a0a3;
  border-radius: 50%;
  font-size: 25px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .works .pagenation ul .current {
    font-size: clamp(1.125rem, 0.8439507495rem + 1.4989293362vw, 1.5625rem);
  }
}

.bread {
  margin-top: 15px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .bread {
    margin-top: clamp(0.625rem, -0.0947822823rem + 1.5015015015vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .bread {
    margin-top: 10px;
  }
}
.bread ul {
  display: flex;
  flex-wrap: wrap;
}
.bread ul li {
  color: #000000;
  padding-right: 15px;
  margin-right: 15px;
}
.bread ul li a {
  position: relative;
  color: #58cbcf;
}
.bread ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -15px;
  transform: rotate(45deg) translateY(-50%);
  width: 8px;
  height: 8px;
  border-top: solid 1px #dfdfdf;
  border-right: solid 1px #dfdfdf;
}

.badge {
  line-height: 1;
  padding: 0.35em 0.65em;
}

.-badgeMain {
  background: #00ffff;
  color: #fff;
}

.-badgeRed {
  background: #ff0000;
  color: #fff;
}

.-badgeOrange {
  background: #f19149;
  color: #fff;
}

.-badgePrimary {
  background: rgb(13, 110, 253);
  color: #fff;
}

.-badgeSecondary {
  background: rgb(108, 117, 125);
  color: #fff;
}

.-badgeSuccess {
  background: rgb(25, 135, 84);
  color: #fff;
}

.-badgeDanger {
  background: rgb(220, 53, 69);
  color: #fff;
}

.-badgeWarning {
  background: rgb(255, 193, 7);
  color: #fff;
}

.-badgeInfo {
  background: rgb(13, 202, 240);
  color: #fff;
}

.-badgeLight {
  background: rgb(248, 249, 250);
}

.-badgeDark {
  background: rgb(33, 37, 41);
  color: #fff;
}

.-roundedPill {
  border-radius: 50px;
}

.-badge_big {
  padding: 0.6em 1em;
}

.-badge_small {
  padding: 2px 5px;
}

.alert {
  display: inline-block;
  max-width: 100%;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 10px;
}
.alert a {
  text-decoration: underline;
}
.alert a:hover {
  text-decoration: none;
}

.-alertMain {
  background: #e3e5ee;
  border: 1px solid #00ffff;
  color: #00ffff;
}

.-alertPrimary {
  background: #cfe2ff;
  border: 1px solid #9ec5fe;
  color: #052c65;
}

.-alertSecondary {
  background: #e2e3e5;
  border: 1px solid #2b2f32;
  color: #2b2f32;
}

.-alertSuccess {
  background: #d1e7dd;
  border: 1px solid #0a3622;
  color: #0a3622;
}

.-alertDanger {
  background: #f8d7da;
  border: 1px solid #58151c;
  color: #58151c;
}

.-alertWarning {
  background: #fff3cd;
  border: 1px solid #664d03;
  color: #664d03;
}

.-alertInfo {
  background: #cff4fc;
  border: 1px solid #055160;
  color: #055160;
}

.-alertLight {
  background: #fcfcfd;
  border: 1px solid #495057;
  color: #495057;
}

.-alertDark {
  background: #ced4da;
  border: 1px solid #495057;
  color: #495057;
}

select {
  min-width: 70px;
  padding: 5px 16px 5px 12px;
  border: 1px solid #1f1f1f;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  select {
    padding: clamp(0.1875rem, -0.1004129129rem + 0.6006006006vw, 0.3125rem) clamp(0.75rem, 0.1741741742rem + 1.2012012012vw, 1rem) clamp(0.1875rem, -0.1004129129rem + 0.6006006006vw, 0.3125rem) clamp(0.5rem, -0.0758258258rem + 1.2012012012vw, 0.75rem);
  }
}

input[type=text] {
  max-width: 100%;
  padding: 5px 10px 5px 10px;
  border: 1px solid #1f1f1f;
}

input[type=password] {
  max-width: 100%;
  padding: 5px 10px 5px 10px;
  border: 1px solid #1f1f1f;
}

img {
  line-height: 1;
}

.-fit-img img {
  width: 100%;
  object-fit: contain;
  object-position: center;
  vertical-align: bottom;
}

.-max100-img img {
  max-width: 100%;
  object-fit: contain;
  object-position: center;
}

.-cover-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.-vh-img img {
  width: 100%;
  height: 100vh;
  object-fit: cover;
  object-position: center;
}

.-squareImg {
  aspect-ratio: 1/1;
}

.-landscapeImg {
  aspect-ratio: 3/2;
}

.c-flex {
  display: flex;
}
.c-flex.-wrap {
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .c-flex.-sp-wrap {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 767px) {
  .c-flex.-sp-fxd-cr {
    flex-direction: column-reverse;
  }
}
.c-flex.-fxd-c {
  flex-direction: column;
}
.c-flex.-fxd-cr {
  flex-direction: column-reverse;
}
.c-flex.-fxd-r {
  flex-direction: row;
}
.c-flex.-fxd-rr {
  flex-direction: row-reverse;
}
.c-flex.-fxw-n {
  flex-wrap: nowrap;
}
.c-flex.-fxw-w {
  flex-wrap: wrap;
}
.c-flex.-fxw-wr {
  flex-wrap: wrap-reverse;
}
.c-flex.-jc-c {
  justify-content: center;
}
.c-flex.-jc-fe {
  justify-content: flex-end;
}
.c-flex.-jc-fs {
  justify-content: flex-start;
}
.c-flex.-jc-sa {
  justify-content: space-around;
}
.c-flex.-jc-sb {
  justify-content: space-between;
}
.c-flex.-ai-b {
  align-items: baseline;
}
.c-flex.-ai-c {
  align-items: center;
}
.c-flex.-ai-fe {
  align-items: flex-end;
}
.c-flex.-ai-fs {
  align-items: flex-start;
}
.c-flex.-ai-s {
  align-items: stretch;
}
.c-flex.-ac-c {
  align-content: center;
}
.c-flex.-ac-fe {
  align-content: flex-end;
}
.c-flex.-ac-fs {
  align-content: flex-start;
}
.c-flex.-ac-s {
  align-content: stretch;
}
.c-flex.-ac-sa {
  align-content: space-around;
}
.c-flex.-ac-sb {
  align-content: space-between;
}

.c-flex__item.-ord-1 {
  order: 1;
}
.c-flex__item.-ord-2 {
  order: 2;
}
.c-flex__item.-ord-3 {
  order: 3;
}
.c-flex__item.-ord-4 {
  order: 4;
}
.c-flex__item.-ord-5 {
  order: 5;
}
.c-flex__item.-ord-6 {
  order: 6;
}
.c-flex__item.-ord-7 {
  order: 7;
}
.c-flex__item.-ord-8 {
  order: 8;
}
.c-flex__item.-ord-9 {
  order: 9;
}
.c-flex__item.-ord-10 {
  order: 10;
}

.flexEvenly {
  flex: 1;
}

.-col02 {
  gap: 3%;
}
@media only screen and (max-width: 767px) {
  .-col02 {
    gap: 2%;
  }
}
.-col02 > li {
  width: 49.25%;
  margin-bottom: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col02 > li {
    width: 49%;
    margin-bottom: 2%;
  }
}
.-col02 > div {
  width: 49.25%;
  margin-bottom: 1.5%;
}

.-col03 {
  gap: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col03 {
    gap: 2%;
  }
}
.-col03 > li {
  width: 32.3333333333%;
  margin-bottom: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col03 > li {
    width: 49%;
    margin-bottom: 2%;
  }
}
.-col03 > div {
  width: 32.3333333333%;
  margin-bottom: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col03 > div {
    width: 49%;
    margin-bottom: 2%;
  }
}

.-col04 {
  gap: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col04 {
    gap: 2%;
  }
}
.-col04 > li {
  width: 23.875%;
  margin-bottom: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col04 > li {
    width: 49%;
    margin-bottom: 2%;
  }
}
.-col04 > div {
  width: 23.875%;
  margin-bottom: 1.5%;
}
@media only screen and (max-width: 767px) {
  .-col04 > div {
    width: 49%;
    margin-bottom: 2%;
  }
}

.-col05 {
  gap: 1%;
}
.-col05 > li {
  width: 19.2%;
  margin-bottom: 1%;
}
@media only screen and (max-width: 767px) {
  .-col05 > li {
    width: 49%;
    margin-bottom: 2%;
  }
}
.-col05 > div {
  width: 19.2%;
  margin-bottom: 1%;
}
@media only screen and (max-width: 767px) {
  .-col05 > div {
    width: 49%;
    margin-bottom: 2%;
  }
}

.-gap30 {
  gap: 30px;
}

.-gap25 {
  gap: 25px;
}

.-gap20 {
  gap: 20px;
}

.-gap15 {
  gap: 15px;
}

.-gap10 {
  gap: 10px;
}

.-gap5 {
  gap: 10px;
}

.mv .mvCenterSlider .slick-slide {
  margin-left: 10px;
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .mv .mvCenterSlider .slick-slide {
    margin-left: 5px;
    margin-right: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .mv .slick-dots li {
    margin-left: 0;
    margin-right: 0;
  }
}
.mv .slick-dots li button::before {
  font-size: 12px;
}
@media only screen and (max-width: 767px) {
  .mv .slick-dots li button::before {
    font-size: 10px;
  }
}
.mv .slick-dots li.slick-active button::before {
  color: #00ffff;
  opacity: 1;
}

.itemThumbnail {
  margin-top: 15px;
}
.itemThumbnail img {
  cursor: pointer;
}
.itemThumbnail.-col4 .slick-slide {
  width: 23.5% !important;
  margin: 0 1%;
}
.itemThumbnail.-col4 .slick-slide:nth-child(1) {
  margin-left: 0;
}
.itemThumbnail.-col4 .slick-slide:nth-child(4n) {
  margin-right: 0;
}
.itemThumbnail.-col4 .slick-slide:nth-child(5n) {
  margin-left: 0;
}
.itemThumbnail.-col3 .slick-slide {
  width: 32% !important;
  margin: 0 1%;
}
.itemThumbnail.-col3 .slick-slide:nth-child(1) {
  margin-left: 0;
}
.itemThumbnail.-col3 .slick-slide:nth-child(3n) {
  margin-right: 0;
}
.itemThumbnail.-col3 .slick-slide:nth-child(4n) {
  margin-left: 0;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  transition: 0.3;
  background-color: #1f1f1f;
  transition: 0.3s;
}

.hederHeight {
  margin-top: 100px;
}
@media only screen and (max-width: 767px) {
  .hederHeight {
    margin-top: 70px;
  }
}

.hederHeightbig {
  margin-top: 140px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .hederHeightbig {
    margin-top: clamp(6.25rem, 0.4917417417rem + 12.012012012vw, 8.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .hederHeightbig {
    margin-top: 80px;
  }
}

.headerTop_contents {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
}
@media only screen and (max-width: 767px) {
  .headerTop_contents {
    height: 70px;
  }
}
.headerTop nav {
  width: 100%;
}
.headerTop_nav {
  height: 45px;
}
@media screen and (max-width: 1100px) {
  .headerTop_nav {
    display: none;
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .headerTop_nav {
    height: clamp(2rem, 0.1285660661rem + 3.9039039039vw, 2.8125rem);
  }
}
@media only screen and (max-width: 767px) {
  .headerTop_nav {
    height: auto;
    margin-bottom: 50px;
  }
  .headerTop_nav.c-flex {
    padding-top: 50px;
    flex-direction: column;
  }
  .headerTop_nav.c-flex.-ai-c {
    align-items: flex-start;
  }
}
.headerTop_nav > li {
  font-size: 16px;
  padding-right: 45px;
}
@media screen and (min-width: 1100px) and (max-width: 1800px) {
  .headerTop_nav > li {
    padding-right: clamp(0.9375rem, -1.2218468468rem + 4.5045045045vw, 1.875rem);
    font-size: clamp(0.875rem, 0.6785714286rem + 0.2857142857vw, 1rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .headerTop_nav > li {
    font-size: clamp(0.75rem, 0.4620870871rem + 0.6006006006vw, 0.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .headerTop_nav > li {
    width: 100%;
    font-size: 16px;
    text-align: left;
    padding-right: 0px;
  }
}
.headerTop_nav > li:last-child {
  padding-right: 0;
}
.headerTop_nav > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-weight: 700;
}
.headerTop_nav > li > a:hover {
  opacity: 0.5;
  transition: 0.3s ease;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .headerTop_nav > li > a {
    height: clamp(2rem, 0.1285660661rem + 3.9039039039vw, 2.8125rem);
  }
}
@media only screen and (max-width: 767px) {
  .headerTop_nav > li > a {
    width: 100%;
    justify-content: flex-start;
    height: 55px;
  }
}
.headerTop_nav .-isArrow {
  position: relative;
  padding-right: 5px;
}
.headerTop_nav .-isArrow .arrow-block {
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
}
.headerTop_nav .-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #535353;
}
.headerTop_nav .-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #f0f0f0;
  border-right: solid 1px #f0f0f0;
  transition: 0.3s ease-in;
  transform: rotate(135deg) translate(-50%, -50%);
  top: 2px;
  left: -8.5%;
}

.hederLogo .-fit-img {
  width: 70px;
  margin-right: 15px;
}
@media only screen and (max-width: 767px) {
  .hederLogo .-fit-img {
    width: clamp(3.4375rem, 3.2371794872rem + 1.0683760684vw, 3.75rem);
  }
}
.hederLogo a {
  display: flex;
  align-items: center;
}
.hederLogo img {
  width: 100%;
  vertical-align: bottom;
}
.hederLogo p {
  font-size: 24px;
}
@media only screen and (max-width: 767px) {
  .hederLogo p {
    font-size: clamp(1rem, 0.6794871795rem + 1.7094017094vw, 1.5rem);
  }
}

.headerUnder {
  display: none;
  background-color: #1f1f1f;
  color: #fff;
}
@media screen and (max-width: 1100px) {
  .headerUnder {
    display: block;
    position: fixed;
    top: 100px;
    right: -100%;
    width: 100%;
    height: calc(100vh - 70px);
    overflow: auto;
    transition: 0.3s;
  }
}
@media only screen and (max-width: 767px) {
  .headerUnder {
    top: 70px;
  }
}
.headerUnder.panelactive {
  right: 0;
}
.headerUnder nav {
  padding-top: 50px;
}
.headerUnder_nav {
  max-width: 1100px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  height: 45px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .headerUnder_nav {
    height: clamp(2rem, 0.1285660661rem + 3.9039039039vw, 2.8125rem);
  }
}
@media screen and (max-width: 1100px) {
  .headerUnder_nav {
    height: auto;
    padding-bottom: 15px;
    margin-bottom: 30px;
  }
  .headerUnder_nav.c-flex {
    flex-direction: column;
  }
  .headerUnder_nav.c-flex.-ai-c {
    align-items: flex-start;
  }
}
.headerUnder_nav li {
  position: relative;
  font-size: 24px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .headerUnder_nav li {
    font-size: clamp(0.625rem, 0.0491741742rem + 1.2012012012vw, 0.875rem);
  }
}
@media screen and (max-width: 1100px) {
  .headerUnder_nav li {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 20px 0;
    border-bottom: 1px solid #c2c2c2;
  }
}
.headerUnder_nav li a {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 45px;
  font-size: 24px;
  line-height: 1.2;
}
@media screen and (max-width: 1100px) {
  .headerUnder_nav li a {
    width: 100%;
    justify-content: center;
    height: auto;
    font-size: 20px;
  }
}
.headerUnder_nav li a span {
  font-size: 14px;
}
.headerUnder_nav li.has-submenu .submenu li {
  border-bottom: none;
  padding: 10px 0;
}
.headerUnder_nav li.has-submenu .submenu li a {
  font-size: 16px;
  color: #fff;
  padding-left: 25px;
  position: relative;
}
.headerUnder_nav li.has-submenu .submenu li a::after {
  content: "";
  display: block;
  width: 15px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  background: #fff;
}

.isChildren {
  position: relative;
}
.isChildren_list {
  position: absolute;
  background: #1f1f1f;
  opacity: 0;
  z-index: -1;
  transition: 0.3s;
  display: none;
}
@media screen and (max-width: 1100px) {
  .isChildren_list {
    position: static;
    opacity: 1;
    z-index: 1;
    display: none;
    box-shadow: none;
    transition: none;
  }
  .isChildren_list.active {
    display: block;
  }
}
.isChildren_list > li {
  position: relative;
}
.isChildren_list > li a {
  display: block;
  width: 248px;
  padding-top: 7px;
  padding-right: 10px;
  padding-bottom: 7px;
  padding-left: 35px;
  color: #fff;
  font-size: 14px;
}
.isChildren_list > li a::after {
  content: "";
  display: block;
  width: 15px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  background: #fff;
}
.isChildren_list > li a:hover {
  opacity: 0.5;
  transition: 0.3s ease;
}
@media screen and (max-width: 1100px) {
  .isChildren_list > li a {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 14px;
  }
}
.isChildren_list > li::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #929292;
}
.isChildren:hover .isChildren_list {
  opacity: 1;
  z-index: 99;
  display: block;
}
@media only screen and (max-width: 767px) {
  .isChildren:hover .isChildren_list {
    opacity: 1;
    z-index: 99;
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .isChildren_parents {
    position: relative;
  }
  .isChildren_parents::before {
    content: "";
    position: absolute;
    right: 10px;
    top: 50%;
    transform: rotate(45deg) translateY(-50%);
    width: 10px;
    height: 10px;
    border-top: solid 1px #00ffff;
    border-right: solid 1px #00ffff;
    transition: 0.3s;
  }
  .isChildren_parents.close::before {
    top: 25%;
    transform: rotate(135deg) translateY(-50%);
  }
}

.footer {
  background-color: #1f1f1f;
  color: #fff;
  padding-top: 60px;
  padding-bottom: 10px;
  position: relative;
  overflow: hidden;
}
.footer__inner {
  width: 95%;
  max-width: 1430px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1100px) {
  .footer__inner {
    width: 95%;
    padding-left: 0;
    padding-right: 0;
  }
}
.footer__contents {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 60px;
}
@media screen and (max-width: 1100px) {
  .footer__contents {
    display: block;
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 767px) {
  .footer__contents {
    margin-bottom: clamp(1.875rem, 0.670503212rem + 6.4239828694vw, 3.75rem);
  }
}
.footer__contents-left {
  display: flex;
  align-items: center;
  align-self: flex-start;
  z-index: 100;
  position: sticky;
}
@media screen and (max-width: 1100px) {
  .footer__contents-left {
    justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .footer__contents-left {
    display: none;
    text-align: center;
  }
}
.footer__contents-left-logo {
  margin-right: 30px;
  width: 70px;
}
@media only screen and (max-width: 767px) {
  .footer__contents-left-logo {
    margin: 0 auto 10px;
  }
}
.footer__contents-left-logo img {
  width: 100%;
  vertical-align: bottom;
}
.footer__contents-left-txt h3 {
  font-size: 18px;
  margin-bottom: 10px;
  font-weight: 500;
}
.footer__contents-left-txt p {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 300;
}
.footer__contents-left_sp {
  display: none;
  z-index: 100;
  position: sticky;
}
@media only screen and (max-width: 767px) {
  .footer__contents-left_sp {
    display: block;
  }
  .footer__contents-left_sp-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin-bottom: 10px;
  }
  .footer__contents-left_sp-logo img {
    width: 30px;
    vertical-align: bottom;
  }
  .footer__contents-left_sp-logo h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
  }
  .footer__contents-left_sp-txt {
    text-align: center;
    font-size: 16px;
    line-height: 1.5;
  }
}
.footer__contents-right {
  flex-shrink: 0;
  z-index: 100;
  position: sticky;
}
.footer__nav {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 100px;
}
@media screen and (max-width: 1100px) {
  .footer__nav {
    display: block;
    margin-top: 30px;
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav {
    margin-top: clamp(0.625rem, -0.1779978587rem + 4.2826552463vw, 1.875rem);
  }
}
.footer__nav ul li {
  margin-bottom: 15px;
  font-weight: 700;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul li {
    border-bottom: 1px solid #c2c2c2;
    margin-bottom: 0;
  }
}
.footer__nav ul li:last-child {
  margin-bottom: 0;
}
.footer__nav ul li a {
  font-size: 15px;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul li a {
    font-size: 18px;
    display: block;
    width: 100%;
    padding-top: 25px;
    padding-bottom: 25px;
    line-height: 1;
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav ul li a {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.footer__nav ul li a:hover {
  opacity: 0.5;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul .have-child {
    border-bottom: none;
  }
}
.footer__nav ul .have-child .is-parent {
  cursor: text;
  display: block;
  margin-bottom: 5px;
}
@media only screen and (max-width: 767px) {
  .footer__nav ul .have-child .is-parent {
    margin-bottom: 0;
  }
}
.footer__nav ul .have-child .is-parent:hover {
  opacity: inherit;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul .have-child a {
    padding-bottom: 0px;
  }
}
@media screen and (max-width: 1100px) {
  .footer__nav ul .have-child ul {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav ul .have-child ul {
    gap: 5%;
  }
}
.footer__nav ul .have-child ul li {
  margin-bottom: 10px;
  line-height: 1;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul .have-child ul li {
    width: 32.5%;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav ul .have-child ul li {
    width: 47.5%;
  }
}
.footer__nav ul .have-child ul li a {
  font-weight: normal;
  position: relative;
  padding-left: 25px;
  font-size: 13px;
  color: #c2c2c2;
}
@media screen and (max-width: 1100px) {
  .footer__nav ul .have-child ul li a {
    display: block;
    width: 100%;
    padding-top: 25px;
    padding-bottom: 25px;
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav ul .have-child ul li a {
    font-size: clamp(0.875rem, 0.7947002141rem + 0.4282655246vw, 1rem);
  }
}
.footer__nav ul .have-child ul li a::after {
  content: "";
  display: block;
  width: 15px;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  background: #c2c2c2;
}
@media only screen and (max-width: 767px) {
  .footer__nav ul .have-child ul li a::after {
    top: calc(25px + 0.5em);
  }
}
.footer__bg {
  position: absolute;
  bottom: -20%;
  left: -1.5%;
  width: 658px;
  filter: brightness(30%);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .footer__bg {
    bottom: inherit;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 90%;
  }
}
.footer__bg img {
  width: 100%;
  vertical-align: bottom;
}

.copyRights {
  border-top: 1px solid #434343;
  padding-top: 10px;
  font-size: 12px;
}

.mv {
  position: relative;
  overflow: hidden;
}
.mv_catch {
  position: absolute;
  top: 50%;
  left: 10%;
  transform: translateY(-50%);
  z-index: 100;
}
.mv_catch h2 {
  font-family: "mv_font", serif;
  font-weight: 900;
  font-style: normal;
  font-size: 3vw;
  margin-bottom: 30px;
}
@media screen and (min-width: 1800px) {
  .mv_catch h2 {
    font-size: 56px;
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .mv_catch h2 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .mv_catch h2 {
    font-size: 5.5vw;
  }
}
.mv_catch-sub {
  position: absolute;
  top: 43%;
  left: 65%;
}
@media only screen and (max-width: 767px) {
  .mv_catch-sub {
    top: 67.5%;
    left: 10%;
  }
}
.mv_catch-sub p {
  margin-bottom: 30px;
  font-size: 1.2vw;
  font-weight: 700;
  position: relative;
  line-height: 1.2;
}
@media only screen and (max-width: 767px) {
  .mv_catch-sub p {
    font-size: 3.5vw;
  }
}
.mv_catch-sub p::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 100%;
  left: 0;
}
.mv_catch-sub p span {
  font-size: 1.8vw;
}
@media only screen and (max-width: 767px) {
  .mv_catch-sub p span {
    font-size: 5vw;
  }
}
.mv_catch-sub p span.year {
  font-size: 2.2vw;
}
@media only screen and (max-width: 767px) {
  .mv_catch-sub p span.year {
    font-size: 5.4vw;
  }
}
.mv_logo {
  position: absolute;
  top: 45%;
  right: -5%;
  transform: translateY(-50%);
  max-width: 658px;
  width: 34.5vw;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .mv_logo {
    width: 65vw;
    top: 65%;
  }
}
.mv_logo img {
  width: 100%;
  vertical-align: bottom;
}

.-btn_mv {
  display: block;
  width: 300px;
  max-width: 300px;
  padding: 1vw;
  font-weight: 500;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 700;
  padding: 30px 0 30px 30px;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .-btn_mv {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem) 0 clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem) clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
    font-size: clamp(0.875rem, 0.7948717949rem + 0.4273504274vw, 1rem);
    width: 80%;
  }
}
.-btn_mv.-isArrow {
  position: relative;
  padding-right: 5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-btn_mv.-isArrow {
    padding-right: 5px;
  }
}
.-btn_mv.-isArrow:hover .arrow-block {
  left: 88%;
  transition: 0.3s;
}
.-btn_mv.-isArrow .arrow-block {
  position: absolute;
  top: 50%;
  left: 85%;
  transform: translateY(-50%);
  transition: 0.3s;
  line-height: 1;
}
.-btn_mv.-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #535353;
}
.-btn_mv.-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #f0f0f0;
  border-right: solid 1px #f0f0f0;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 8.5px;
  left: 2.5px;
}

.page_mv {
  position: relative;
}
.page_mv_catch {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100;
  text-align: center;
  width: 100%;
}
.page_mv_catch h2 {
  font-size: 40px;
  font-weight: 500;
  line-height: 1.5;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .page_mv_catch h2 {
    font-size: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
  }
}
.page_mv_catch p {
  font-family: futura-pt, sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 20px;
  color: #fff;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .page_mv_catch p {
    font-size: clamp(1rem, 0.8394004283rem + 0.8565310493vw, 1.25rem);
  }
}

.mv-text, .mv-sub, .mv-btn {
  opacity: 0;
  transform: translateX(0);
  transition: all 0.5s ease;
}

/* メインテキスト：左から右 */
.mv-text.animate {
  opacity: 1;
  transform: translate(0, -50%); /* もとの位置 */
}

.mv-text {
  transform: translate(-50px, -50%); /* 初期位置（左にずらす） */
}

/* サブキャッチ：右から左 */
.mv-sub.animate {
  opacity: 1;
  transform: translateX(0);
}

.mv-sub {
  transform: translateX(50px); /* 初期位置（右にずらす） */
}

/* ボタン：そのままフェードイン */
.mv-btn {
  opacity: 0;
  transition: opacity 0.5s ease;
}

.mv-btn.show {
  opacity: 1;
}

.inlineItem {
  display: inline-block;
}

.blockItem {
  display: block;
}

.underLineTitle {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .underLineTitle {
    margin-bottom: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
    padding-bottom: clamp(0.1875rem, -0.1004129129rem + 0.6006006006vw, 0.3125rem);
  }
}
.underLineTitle::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
}

.underLineTitleAnimation {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .underLineTitleAnimation {
    margin-bottom: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
    padding-bottom: clamp(0.1875rem, -0.1004129129rem + 0.6006006006vw, 0.3125rem);
  }
}
.underLineTitleAnimation::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 2px;
}
.underLineTitleAnimation.move::after {
  animation: underLineTitleAnimation 0.3s forwards;
}

.underLineLitle {
  position: relative;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .underLineLitle {
    margin-bottom: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
    padding-bottom: clamp(0.4375rem, 0.0056306306rem + 0.9009009009vw, 0.625rem);
  }
}
.underLineLitle::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
}

.blockTitle {
  width: 100%;
  padding: 15px 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .blockTitle {
    padding: clamp(0.625rem, -0.0947822823rem + 1.5015015015vw, 0.9375rem) clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .blockTitle {
    padding: 10px 5px;
  }
}

.sectionTitle {
  text-align: center;
  margin-bottom: 90px;
}
@media only screen and (max-width: 767px) {
  .sectionTitle {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
  }
}
.sectionTitle h3 {
  letter-spacing: -0.2vw;
  line-height: 1;
  font-size: 46px;
  font-weight: 700;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .sectionTitle h3 {
    font-size: clamp(1.875rem, -0.7162162162rem + 5.4054054054vw, 3rem);
  }
}
@media only screen and (max-width: 767px) {
  .sectionTitle h3 {
    font-size: clamp(1.875rem, -0.7162162162rem + 5.4054054054vw, 3rem);
  }
}

.-borderMain::after {
  background: #00ffff;
}

.-borderGray::after {
  background: #1f1f1f;
}

.-borderTxtColor::after {
  background: #000000;
}

.-lastSection {
  margin-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .-lastSection {
    margin-bottom: clamp(4.375rem, 1.4958708709rem + 6.006006006vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .-lastSection {
    margin-bottom: 45px;
  }
}

.globalInner {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1100px) {
  .globalInner {
    width: 95%;
  }
}
.globalInner-big {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1100px) {
  .globalInner-big {
    width: 95%;
  }
}

.commonInner {
  width: 95%;
  max-width: 1420px;
  margin-left: auto;
  margin-right: auto;
}

.bigInner {
  max-width: 1600px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.midInner {
  width: 95%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.minInner {
  width: 95%;
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
}

.col2 {
  display: flex;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .col2 {
    flex-wrap: wrap;
  }
}
.col2 .leftSide {
  width: 20%;
}
@media only screen and (max-width: 767px) {
  .col2 .leftSide {
    margin-top: 60px;
    width: 100%;
  }
}
.col2 .rightSide {
  width: 70%;
}
@media only screen and (max-width: 767px) {
  .col2 .rightSide {
    width: 100%;
  }
}

.-psRealtive {
  position: relative;
}

.-psAbsolute {
  position: absolute;
}
.-psAbsolute.-psCenter {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.-t-center {
  text-align: center;
}
.-t-center-sp-t-left {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .-t-center-sp-t-left {
    text-align: left;
  }
}

.-t-left {
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .-t-left.-sp-t-left {
    text-align: left;
  }
}

.-t-right {
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .-t-right.-sp-t-left {
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .-sp-t-center {
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .-sp-t-left {
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .-sp-t-right {
    text-align: right;
  }
}

.-brRound {
  border-radius: 50%;
}

.-br50 {
  border-radius: 50px;
}

.-br40 {
  border-radius: 40px;
}

.-br30 {
  border-radius: 30px;
}

.-br20 {
  border-radius: 20px;
}

.-br10 {
  border-radius: 10px;
}

.-br7 {
  border-radius: 7px;
}

.-br5 {
  border-radius: 5px;
}

.-br3 {
  border-radius: 3px;
}

.-lh1 {
  line-height: 1;
}

.-lh1-1 {
  line-height: 1.1;
}

.-lh1-2 {
  line-height: 1.2;
}

.-lh1-3 {
  line-height: 1.3;
}

.-lh1-4 {
  line-height: 1.3;
}

.-lh1-5 {
  line-height: 1.5;
}

.op0 {
  opacity: 0;
}

.borderNone {
  border-top: none !important;
  border-right: none !important;
  border-left: none !important;
  border-bottom: none !important;
}

.fadein-right {
  opacity: 0;
  transform: translateX(100px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  visibility: hidden;
  position: relative;
  left: -100px;
}

.fadein-right.is-active {
  opacity: 1;
  transform: translateX(0);
  visibility: visible;
  left: 0;
}

.fadein-left {
  opacity: 0;
  transform: translateX(-100px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  visibility: hidden;
  position: relative;
  left: 100px;
}

.fadein-left.is-active {
  opacity: 1;
  transform: translateX(0);
  visibility: visible;
  left: 0;
}

.animation-wrapper {
  overflow: visible;
  width: 100%;
  position: relative;
}

.cls-1 {
  fill: #fff;
  opacity: 0.95;
}

.cls-2 {
  opacity: 0;
  transform-origin: center;
  animation: circleAnimation 1s ease-in-out 0.5s forwards;
}

@keyframes circleAnimation {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  20% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 0.95;
    transform: scale(1);
  }
}
.cls-2, .cls-3, .cls-4, .cls-5 {
  fill: #f39800;
}

.cls-3 {
  fill: none;
  stroke: #f39800;
  stroke-width: 0.76px;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  animation: drawAnimation 3s ease-in-out 2.5s forwards, fillColorAnimation 1s ease-in 4s forwards;
}

@keyframes drawAnimation {
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes fillColorAnimation {
  from {
    fill: #f8f8f8;
  }
  to {
    fill: #f39800;
  }
}
.cls-4, .cls-5 {
  opacity: 0;
  animation: opacityAnimation 1s ease-in-out 1.5s forwards;
}

@keyframes opacityAnimation {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.aside-item {
  margin-bottom: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .aside-item {
    margin-bottom: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
.aside-item h6 {
  padding: 10px 0;
}
.aside-item h6::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid #f0f0f0;
  padding: 5px 0;
}
.aside-item_list li a {
  color: #f0f0f0;
}
.aside-item_list li a:hover {
  color: #000;
}
.aside-item_list li a.active {
  color: #000;
}

.searchBox {
  max-width: 700px;
  margin-top: 35px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .searchBox {
    margin-top: clamp(1.5625rem, 0.1229354354rem + 3.003003003vw, 2.1875rem);
  }
}
.searchBox_block {
  display: flex;
}
.searchBox_block input {
  width: 78%;
}
.searchBox_block .searchBtn {
  width: 22%;
}

.topSection {
  padding: 80px 0;
}
@media only screen and (max-width: 767px) {
  .topSection {
    padding: 40px 0;
  }
}
.topSection_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .topSection_contents {
    padding-top: 20px;
  }
}

.topSectionfirst {
  padding: 80px 0 0;
}
@media only screen and (max-width: 767px) {
  .topSectionfirst {
    padding: 40px 0;
  }
}
.topSectionfirst_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .topSectionfirst_contents {
    padding-top: 20px;
  }
}

.topInner {
  max-width: 1280px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.topInner-min {
  max-width: 767px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.topInner-mid {
  max-width: 1100px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.topInner-big {
  max-width: 1600px;
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}
.topInner-max {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.topTitle {
  text-align: center;
  line-height: 1.3;
  font-size: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .topTitle {
    font-size: clamp(1.625rem, 1.0491741742rem + 1.2012012012vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .topTitle {
    font-size: clamp(1.125rem, 0.8038008565rem + 1.7130620985vw, 1.625rem);
  }
}
.topTitle span {
  font-size: 16px;
  font-family: "acumin-pro", sans-serif;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .topTitle span {
    font-size: clamp(0.875rem, 0.5870870871rem + 0.6006006006vw, 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .topTitle span {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .topTitle {
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: clamp(1.875rem, 0.670503212rem + 6.4239828694vw, 3.75rem);
  }
}
.topTitle.-t-center {
  text-align: center;
  margin-left: 0;
}
.topTitle.inlineTitle {
  position: relative;
  padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .topTitle.inlineTitle {
    padding-bottom: 20px;
  }
}
.topTitle.inlineTitle::after {
  content: "";
  display: block;
  width: 15%;
  height: 1px;
  background: #00ffff;
  position: absolute;
  top: 100%;
  left: 0;
}
.topTitle.inlineTitle::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #e9e9e9;
  position: absolute;
  top: 100%;
  left: 0;
}

.backColor {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 550px;
  z-index: -1;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .backColor {
    height: clamp(21.875rem, 7.4793543544rem + 30.03003003vw, 28.125rem);
  }
}

.t-info {
  background-image: url(../img/top/t-info_bg.jpg);
  background-position: center;
  background-size: cover;
  height: 370px;
  margin-top: -50px;
}
@media only screen and (max-width: 767px) {
  .t-info {
    margin-top: -35px;
    height: 315px;
  }
}
.t-info ul {
  padding: 30px 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .t-info ul {
    padding: 10px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .t-info ul {
    padding: 10px 20px;
  }
}
.t-info ul li {
  padding: 20px 0;
  border-bottom: 1px solid #e8e8e8;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .t-info ul li {
    padding: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .t-info ul li {
    padding: 10px 0;
  }
}
.t-info ul li:last-child {
  border-bottom: none;
}
.t-info__contents {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  box-shadow: 0px 0px 20.9px 17.1px rgba(0, 0, 0, 0.04);
}
@media only screen and (max-width: 767px) {
  .t-info__contents {
    display: block;
  }
}
.t-info__contents-left {
  width: 210px;
  background-color: #313131;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  border-radius: 6px 0 0 6px;
}
@media only screen and (max-width: 767px) {
  .t-info__contents-left {
    width: 100%;
    border-radius: 12px 12px 0px 0;
    position: inherit;
    flex-direction: row;
    padding: 15px 20px;
    justify-content: space-between;
  }
}
.t-info__contents-left h3 {
  flex-direction: column;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .t-info__contents-left h3 {
    flex-direction: row;
    justify-content: flex-start;
    gap: 3%;
    font-size: 20px;
    margin: 0;
    width: 50%;
  }
}
.t-info__contents-left-btn {
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translateX(-50%);
  font-weight: 700;
}
.t-info__contents-left-btn:hover {
  opacity: 0.5;
  transition: 0.3s ease;
}
@media only screen and (max-width: 767px) {
  .t-info__contents-left-btn {
    position: inherit;
  }
}
.t-info__contents-right {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 0 6px 6px 0;
  flex-grow: 1;
  width: calc(100% - 230px);
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .t-info__contents-right {
    border-radius: 0 0 12px 12px;
    width: 100%;
  }
}
.t-info__contents-right article {
  width: 100%;
}
.t-info__contents-right h4 {
  font-size: 32px;
  margin-bottom: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .t-info__contents-right h4 {
    font-size: clamp(1.75rem, 1.1741741742rem + 1.2012012012vw, 2rem);
  }
}
@media only screen and (max-width: 767px) {
  .t-info__contents-right h4 {
    font-size: clamp(1.75rem, 1.1741741742rem + 1.2012012012vw, 2rem);
  }
}
@media only screen and (max-width: 767px) {
  .t-info_list a {
    display: block;
  }
}
.t-info_list a:hover {
  transition: 0.3s ease;
}
.t-info_list a:hover.-isArrow .arrow-block {
  left: 98%;
}
@media only screen and (max-width: 767px) {
  .t-info_list a:hover.-isArrow .arrow-block {
    left: inherit;
  }
}
.t-info_list a.-isArrow {
  position: relative;
  padding-right: 5px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .t-info_list a.-isArrow {
    padding-right: 5px;
  }
}
.t-info_list a.-isArrow .arrow-block {
  position: absolute;
  top: 50%;
  left: 96%;
  transform: translateY(-50%);
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .t-info_list a.-isArrow .arrow-block {
    top: calc(50% + 1rem);
    left: inherit;
    right: 10px;
  }
}
.t-info_list a.-isArrow .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 16px;
  height: 16px;
  border: solid 1px #000000;
}
.t-info_list a.-isArrow .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #000000;
  border-right: solid 1px #000000;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 8.5px;
  left: 2.5px;
}
.t-info_list_title {
  flex-grow: 0;
  font-size: 15px;
  margin-right: 6.5%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
.t-info_list_title h1 {
  font-size: 15px;
}
.t-info_list_date {
  color: #c4c4c4;
  width: 90px;
  margin-right: 10px;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .t-info_list_date {
    width: 80px;
    margin-right: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .t-info_list_date {
    font-size: clamp(0.75rem, 0.6697002141rem + 0.4282655246vw, 0.875rem);
  }
}
.t-info_list_cat {
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 4px;
  width: 90px;
  margin-right: 10px;
  font-family: "acumin-pro", sans-serif;
  line-height: 1;
  flex-shrink: 0;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .t-info_list_cat {
    font-size: clamp(0.625rem, 0.5447002141rem + 0.4282655246vw, 0.75rem);
    margin-right: 0;
  }
}
.t-info_list_cat.-info {
  background-color: #313131;
  color: #fff;
}

.t-works {
  overflow: hidden;
}
.t-works .topInner {
  margin-right: 0;
  max-width: 1590px;
}
@media screen and (min-width: 2400px) {
  .t-works .topInner {
    max-width: inherit;
    width: 75%;
  }
}
@media screen and (max-width: 1330px) {
  .t-works .topInner {
    width: 95%;
    max-width: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .t-works .topInner {
    margin-right: 0;
  }
}
.t-works__slider {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  .t-works__slider {
    margin: 0px auto 0;
  }
}
.t-works__slider .slick-list.draggable {
  padding: 0 19.5% 0 0 !important;
}
@media screen and (max-width: 1800px) {
  .t-works__slider .slick-list.draggable {
    padding: 0 5% 0 0 !important;
  }
}
@media only screen and (max-width: 767px) {
  .t-works__slider .slick-list.draggable {
    padding: 0 10% 0 0 !important;
  }
}
.t-works__slider-slide {
  position: relative;
  padding: 0 10px;
}
@media only screen and (max-width: 767px) {
  .t-works__slider-slide {
    padding: 0 5px;
  }
}
.t-works__slider-slide a:hover .t-works__slider-slide-img img {
  scale: 1.1;
  transition: 0.3s;
}
.t-works__slider-slide-img {
  border-radius: 10px;
  overflow: hidden;
}
.t-works__slider-slide-img img {
  width: 100%;
  vertical-align: bottom;
  border-radius: 10px;
  scale: 1;
  transition: 0.3s;
  height: 100%;
  aspect-ratio: 629/429;
  object-fit: cover;
}
.t-works__slider-slide-cat {
  display: inline-block;
  color: #fff;
  background-color: #313131;
  width: 90px;
  text-align: center;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 700;
  position: absolute;
  top: 15px;
  left: 25px;
}
.t-works__slider-slide-name {
  text-align: center;
  font-size: 20px;
  margin-top: 5px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .t-works__slider-slide-name {
    font-size: clamp(0.75rem, 0.5894004283rem + 0.8565310493vw, 1rem);
  }
}

.t-works-slick-prev,
.t-works-slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  z-index: 100;
  background-color: #313131;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  box-shadow: 0 0 29px rgb(255, 255, 255);
}

.t-works-slick-prev {
  left: -5%;
}
@media screen and (min-width: 1800px) {
  .t-works-slick-prev {
    left: -80px;
  }
}

.t-works-slick-next {
  right: 12vw;
}
@media screen and (min-width: 2400px) {
  .t-works-slick-next {
    right: 160px;
  }
}
@media screen and (max-width: 1800px) {
  .t-works-slick-next {
    right: 0;
  }
}

.t-works-slick-prev::before,
.t-works-slick-next::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
}

.t-works-slick-prev:before {
  transform: translate(-35%, -40%) rotate(-135deg);
}

.t-works-slick-next:before {
  transform: translate(-65%, -35%) rotate(45deg);
}

.t-csr {
  background-image: url(../img/top/csr_bg.jpg);
  background-position: center;
  background-size: cover;
}
.t-csr__contents {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents {
    margin-top: 0px;
  }
}
.t-csr__contents-lists {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents-lists {
    display: block;
  }
}
.t-csr__contents-lists-item {
  width: calc(50% - 20px);
  color: #fff;
}
.t-csr__contents-lists-item a:hover .t-csr__contents-lists-item-img img {
  scale: 1.1;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents-lists-item {
    width: 100%;
    margin-bottom: 30px;
  }
  .t-csr__contents-lists-item:last-child {
    margin-bottom: 0;
  }
}
.t-csr__contents-lists-item-img {
  overflow: hidden;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents-lists-item-img {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}
.t-csr__contents-lists-item-img img {
  width: 100%;
  vertical-align: bottom;
  scale: 1;
  transition: 0.3s;
}
.t-csr__contents-lists-item-title {
  text-align: center;
  font-size: 24px;
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents-lists-item-title {
    font-size: clamp(1.0625rem, 0.7820512821rem + 1.4957264957vw, 1.5rem);
    margin-top: 5px;
  }
}
.t-csr__contents-lists-item-txt {
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .t-csr__contents-lists-item-txt {
    margin-top: 0px;
  }
}

.t-recruit .topInner-mid {
  width: 75%;
}
@media only screen and (max-width: 767px) {
  .t-recruit .topInner-mid {
    width: 90%;
  }
}
.t-recruit__contents {
  position: relative;
}
.t-recruit__contents a:hover .arrow-block {
  right: 3%;
  transition: 0.3s;
}
.t-recruit__contents a .arrow-block {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  transition: 0.3s;
}
.t-recruit__contents a .arrow {
  position: relative;
  left: 0px;
  display: inline-block;
  width: 20px;
  height: 20px;
  border: solid 1px #fff;
}
.t-recruit__contents a .arrow::before {
  position: absolute;
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  transition: 0.3s ease-in;
  transform: rotate(45deg) translate(-50%, -50%);
  top: 10.5px;
  left: 4px;
}
.t-recruit__contents .topTitle {
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translateY(-50%);
  z-index: 1;
  width: auto;
  margin-bottom: 0;
}
.t-recruit__contents-img {
  border-radius: 10px;
  overflow: hidden;
  z-index: -1;
}
.t-recruit__contents-img img {
  width: 100%;
  vertical-align: bottom;
  box-shadow: 0px 0px 11.55px 9.45px rgba(0, 0, 0, 0.04);
}

.t-contact {
  background-image: url(../img/common/contact_bg.jpg);
  background-position: center;
  background-size: cover;
}
@media only screen and (max-width: 767px) {
  .t-contact {
    background-image: url(../img/common/contact_bg_sp.jpg);
  }
}
.t-contact__contents {
  text-align: center;
  margin-top: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .t-contact__contents {
    margin-top: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .t-contact__contents {
    margin-top: clamp(1.875rem, 0.670503212rem + 6.4239828694vw, 3.75rem);
  }
}
.t-contact__contents p {
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .t-contact__contents p {
    font-size: 16px;
    line-height: 1.5;
  }
}
.t-contact__contents ul {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1100px) {
  .t-contact__contents ul {
    width: 100%;
    min-width: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .t-contact__contents ul {
    display: block;
  }
}
.t-contact__contents-tel a > div {
  display: flex;
  align-items: center;
  justify-content: center;
}
.t-contact__contents-tel a > div img {
  width: 40px;
  vertical-align: bottom;
  margin-right: 10px;
}
@media only screen and (max-width: 767px) {
  .t-contact__contents-tel a > div img {
    width: clamp(1.75rem, 1.2682012848rem + 2.5695931478vw, 2.5rem);
    margin-right: 2%;
  }
}
.t-contact__contents-tel a > div p {
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .t-contact__contents-tel a > div p {
    font-size: clamp(1.75rem, 1.2682012848rem + 2.5695931478vw, 2.5rem);
  }
}
.t-contact__contents-tel a span {
  font-size: 14px;
}
@media only screen and (max-width: 767px) {
  .t-contact__contents-contact {
    padding-top: 30px;
  }
}

.t-attempt {
  background-image: url(../img/top/csr_bg.jpg);
  background-position: center;
  background-size: cover;
}
.t-attempt__contents {
  margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents {
    margin-top: 0px;
  }
}
.t-attempt__contents-block {
  margin-bottom: 40px;
}
.t-attempt__contents-lists {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents-lists {
    display: block;
  }
}
.t-attempt__contents-lists-title {
  text-align: center;
  font-size: 24px;
  margin-bottom: 10px;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents-lists-title {
    font-size: clamp(1.0625rem, 0.7820512821rem + 1.4957264957vw, 1.5rem);
    margin-top: 5px;
  }
}
.t-attempt__contents-lists-item {
  width: calc(50% - 20px);
  color: #fff;
}
.t-attempt__contents-lists-item a:hover .t-attempt__contents-lists-item-img img {
  scale: 1.05;
  transition: 0.3s;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents-lists-item {
    width: 100%;
    margin-bottom: 15px;
  }
  .t-attempt__contents-lists-item:last-child {
    margin-bottom: 0;
  }
}
.t-attempt__contents-lists-item-img {
  overflow: hidden;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents-lists-item-img {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
  }
}
.t-attempt__contents-lists-item-img img {
  width: 100%;
  vertical-align: bottom;
  scale: 1;
  transition: 0.3s;
}
.t-attempt__contents-lists-item-txt {
  margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  .t-attempt__contents-lists-item-txt {
    margin-top: 0px;
  }
}

.pageSection {
  padding: 40px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageSection {
    padding: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .pageSection {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem) 0;
  }
}
.pageSection_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .pageSection_contents {
    padding-top: 20px;
  }
}

.pageSectionTop {
  padding: 80px 0 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageSectionTop {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0 clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .pageSectionTop {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0 clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.pageSectionTop_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .pageSectionTop_contents {
    padding-top: 20px;
  }
}

.pageSectionOnly {
  padding: 80px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageSectionOnly {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .pageSectionOnly {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0;
  }
}
.pageSectionOnly_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .pageSectionOnly_contents {
    padding-top: 20px;
  }
}

.pageSectionlast {
  padding: 40px 0 80px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageSectionlast {
    padding: clamp(1.875rem, -3.0195195195rem + 10.2102102102vw, 4rem) 0 clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem);
  }
}
@media only screen and (max-width: 767px) {
  .pageSectionlast {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem) 0 clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}
.pageSectionlast_contents {
  padding-top: 30px;
}
@media only screen and (max-width: 767px) {
  .pageSectionlast_contents {
    padding-top: 20px;
  }
}

.Inner {
  max-width: 1400px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.Inner-min {
  max-width: 767px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.Inner-big {
  max-width: 1600px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}

.jump {
  display: block;
  padding-top: 100px;
  margin-top: -100px;
}
@media screen and (max-width: 1100px) {
  .jump {
    padding-top: 70px;
    margin-top: -70px;
  }
}

.popup-wrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}

.popup-inside {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
  padding: 20px;
  border-radius: 5px;
  text-align: center;
  max-width: 500px;
  width: 50%;
  height: 250px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#message {
  margin-bottom: 20px;
  font-size: 16px;
}

#closeBtn {
  padding: 5px 16px;
  cursor: pointer;
  border: 1px solid;
}

.message {
  margin-bottom: 20px;
  font-size: 16px;
}

.closeBtn {
  padding: 5px 16px;
  cursor: pointer;
  border: 1px solid;
}

.pageTitle {
  text-align: center;
  line-height: 1.3;
  font-size: 30px;
}
.pageTitle h3 {
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .pageTitle h3 span {
    font-size: clamp(1rem, 0.8394004283rem + 0.8565310493vw, 1.25rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageTitle {
    font-size: clamp(1.625rem, 1.0491741742rem + 1.2012012012vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .pageTitle {
    font-size: clamp(1.125rem, 0.8038008565rem + 1.7130620985vw, 1.625rem);
  }
}
.pageTitle.inlineTitle {
  position: relative;
  padding-bottom: 40px;
  margin-bottom: 90px;
}
@media only screen and (max-width: 767px) {
  .pageTitle.inlineTitle {
    padding-bottom: 20px;
    margin-bottom: 60px;
  }
}
.pageTitle.inlineTitle::after {
  content: "";
  display: block;
  width: 15%;
  height: 1px;
  background: #00ffff;
  position: absolute;
  top: 100%;
  left: 0;
}
.pageTitle.inlineTitle::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #e9e9e9;
  position: absolute;
  top: 100%;
  left: 0;
}

.pageSubTitle {
  text-align: center;
  line-height: 1.3;
  font-size: 30px;
  position: relative;
  padding-bottom: 30px;
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .pageSubTitle {
    padding-bottom: 20px;
    margin-bottom: 30px;
  }
}
.pageSubTitle::after {
  content: "";
  display: block;
  width: 70px;
  height: 1px;
  background: #00ffff;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.pageSubTitle h4 {
  font-weight: 500;
  color: #fff;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .pageSubTitle h4 {
    font-size: clamp(1.625rem, 1.0491741742rem + 1.2012012012vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .pageSubTitle h4 {
    font-size: clamp(1.125rem, 0.8038008565rem + 1.7130620985vw, 1.625rem);
  }
}

.info__cat {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 20px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .info__cat {
    justify-content: center;
  }
}
.info__cat .select_wrapper {
  position: relative;
}
.info__cat .select_wrapper::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
  transform: translateY(-50%) rotate(45deg);
}
.info__cat .select_wrapper.ml {
  margin-left: 30px;
}
.info__cat .select_wrapper select {
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #dddddd;
  border-radius: 3px;
  min-width: 120px;
  color: #242424;
  font-size: 12px;
  padding: 5px 10px;
}
.info__list {
  border-top: 1px solid #58cbcf;
}
.info__list_item {
  padding: 20px 0;
  border-bottom: 1px solid #dddddd;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .info__list_item {
    padding: 15px 0;
  }
}
.info__list_item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  width: 10px;
  height: 10px;
  border-right: 1px solid #333333;
  border-bottom: 1px solid #333333;
  transform: translateY(-50%) rotate(-45deg);
  transition: 0.3s ease-in;
}
@media only screen and (max-width: 767px) {
  .info__list_item::after {
    top: calc(50% + 1em);
    right: 15px;
  }
}
.info__list_item:hover::after {
  right: 20px;
  transition: 0.3s ease-in;
}
@media only screen and (max-width: 767px) {
  .info__list_item:hover::after {
    right: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .info__list_item a {
    display: block;
  }
}
.info__list_title {
  width: calc(100% - 230px);
  flex-grow: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}
@media only screen and (max-width: 767px) {
  .info__list_title {
    width: calc(100% - 30px);
  }
}
.info__list_date {
  color: #c4c4c4;
  width: 90px;
  margin-right: 10px;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .info__list_date {
    width: 80px;
    margin-right: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .info__list_date {
    font-size: clamp(0.75rem, 0.6697002141rem + 0.4282655246vw, 0.875rem);
  }
}
.info__list_cat {
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 4px;
  width: 90px;
  margin-right: 10px;
  font-family: "acumin-pro", sans-serif;
  line-height: 1;
  flex-shrink: 0;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .info__list_cat {
    font-size: clamp(0.625rem, 0.5447002141rem + 0.4282655246vw, 0.75rem);
    margin-right: 0;
  }
}
.info__list_cat.-info {
  background-color: #313131;
  color: #fff;
}

.info_detail__area {
  box-shadow: 0px 0px 21.12px 10.88px rgba(0, 0, 0, 0.08);
  padding: 50px;
}
@media only screen and (max-width: 767px) {
  .info_detail__area {
    padding: 25px;
  }
}
.info_detail-title {
  border-bottom: 1px solid #58cbcf;
  padding-bottom: 30px;
  margin-bottom: 30px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .info_detail-title {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
}
.info_detail-title_title {
  font-size: 24px;
  flex-grow: 0;
}
@media only screen and (max-width: 767px) {
  .info_detail-title_title {
    font-size: clamp(0.9375rem, 0.5761509636rem + 1.9271948608vw, 1.5rem);
  }
}
.info_detail-title_date {
  color: #c4c4c4;
  width: 90px;
  margin-right: 10px;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .info_detail-title_date {
    width: 80px;
    margin-right: 5px;
  }
}
@media only screen and (max-width: 767px) {
  .info_detail-title_date {
    font-size: clamp(0.75rem, 0.6697002141rem + 0.4282655246vw, 0.875rem);
  }
}
.info_detail-title_cat {
  font-size: 12px;
  padding: 5px 10px;
  border-radius: 4px;
  width: 90px;
  margin-right: 10px;
  font-family: "acumin-pro", sans-serif;
  line-height: 1;
  flex-shrink: 0;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .info_detail-title_cat {
    font-size: clamp(0.625rem, 0.5447002141rem + 0.4282655246vw, 0.75rem);
    margin-right: 0;
  }
}
.info_detail-title_cat.-info {
  background-color: #313131;
  color: #fff;
}
.info_detail-body-img {
  margin-top: 60px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 30px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 767px) {
  .info_detail-body-img {
    margin-top: 30px;
  }
}
.info_detail-pagenavi {
  margin-top: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 120px;
}
@media only screen and (max-width: 767px) {
  .info_detail-pagenavi {
    margin-top: 30px;
    gap: 90px;
  }
}

.message__contents-img {
  width: 80%;
  margin: 90px auto 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .message__contents-img {
    margin-top: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
    margin-bottom: clamp(2.5rem, -0.3791291291rem + 6.006006006vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .message__contents-img {
    width: 100%;
    margin-top: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
    margin-bottom: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
  }
}
.message__contents-img img {
  width: 100%;
  vertical-align: bottom;
}
.message__contents h4 {
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .message__contents h4 {
    font-size: clamp(1.5rem, 0.6362612613rem + 1.8018018018vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .message__contents h4 {
    font-size: clamp(1.25rem, 1.0894004283rem + 0.8565310493vw, 1.5rem);
    line-height: 1.5;
  }
}
.message__contents .sign {
  text-align: right;
  margin-top: 60px;
  font-family: "mv_font", serif;
}
@media only screen and (max-width: 767px) {
  .message__contents .sign {
    margin-top: clamp(1.875rem, 0.670503212rem + 6.4239828694vw, 3.75rem);
  }
}
.message__contents .sign span {
  font-size: 20px;
}

.company-contents {
  border-top: 1px solid #58cbcf;
  margin-top: 30px;
}
.company-table table {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .company-table table tr {
    display: flex;
    flex-direction: column;
  }
}
.company-table table tr th {
  text-align-last: left;
  background-color: #eff4f4;
  width: 300px;
  padding: 30px;
  border-bottom: 1px solid #dfdfdf;
  vertical-align: top;
  font-weight: 700;
}
@media only screen and (max-width: 767px) {
  .company-table table tr th {
    width: 100%;
    padding: 20px;
    border-bottom: none;
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
  }
}
.company-table table tr td {
  padding: 30px;
  border-bottom: 1px solid #dfdfdf;
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media only screen and (max-width: 767px) {
  .company-table table tr td {
    width: 100%;
    padding: 20px;
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
    display: block;
  }
}
.company-table table tr td .commendation {
  width: 500px;
}
@media only screen and (max-width: 767px) {
  .company-table table tr td .commendation {
    width: 100%;
  }
}
.company-table table tr td table {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .company-table table tr td table tr {
    flex-direction: row;
  }
}
.company-table table tr td table tr th {
  width: 150px;
  background: none;
  border: none;
  padding: 0;
  font-weight: 400;
}
.company-table table tr td table tr td {
  border: none;
  padding: 0;
}
@media only screen and (max-width: 767px) {
  .company-table table tr td table tr td {
    width: calc(100% - 150px);
  }
}
.company-table table tr td ul li a {
  color: #0000ee;
  text-decoration: underline;
  text-underline-offset: 8px;
  transition: 0.3s;
  font-weight: 400;
}
.company-table table tr td ul li a:hover {
  text-decoration: none;
  opacity: 0.5;
  transition: 0.3s;
}

.access__contents-map iframe {
  width: 100%;
  height: 550px;
  vertical-align: bottom;
}
.access__contents-txt {
  text-align: center;
}
.access__contents-txt p {
  background-color: #eff4f4;
  font-size: 20px;
  padding: 20px;
  font-weight: 500;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .access__contents-txt p {
    font-size: clamp(1.125rem, 0.8370870871rem + 0.6006006006vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .access__contents-txt p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
    padding: clamp(0.625rem, 0.2235010707rem + 2.1413276231vw, 1.25rem);
  }
}

.customer__contents ul {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.customer__contents ul li {
  width: 33.3333333333%;
  text-align: center;
  padding: 30px;
  border-bottom: 1px solid #dfdfdf;
  border-left: 1px solid #dfdfdf;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .customer__contents ul li {
    width: 50%;
  }
}
@media only screen and (max-width: 480px) {
  .customer__contents ul li {
    width: 100%;
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
  }
}
.customer__contents ul li:nth-child(3n) {
  border-right: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .customer__contents ul li:nth-child(3n) {
    border-right: 0;
  }
}
@media only screen and (max-width: 480px) {
  .customer__contents ul li:nth-child(3n) {
    border-right: 1px solid #dfdfdf;
  }
}
@media only screen and (max-width: 767px) {
  .customer__contents ul li:nth-child(2n) {
    border-right: 1px solid #dfdfdf;
  }
}

#modal-container {
  display: none;
  position: fixed;
  background: rgba(0, 0, 0, 0.6);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 99;
}
#modal-container > div {
  display: flex;
  height: 100vh;
  justify-content: center;
  align-items: center;
}
#modal-container > div > img {
  max-width: 70vw;
  max-height: 70vh;
}
@media only screen and (max-width: 767px) {
  #modal-container > div > img {
    max-width: 95vw;
  }
}

img.popup {
  cursor: pointer;
}

.works__tab {
  margin-bottom: 80px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works__tab {
    margin-bottom: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem);
  }
}
@media only screen and (max-width: 767px) {
  .works__tab {
    margin-bottom: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}
.works__tab ul {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}
@media only screen and (max-width: 767px) {
  .works__tab ul {
    gap: clamp(0.625rem, -0.0947822823rem + 1.5015015015vw, 0.9375rem);
  }
}
@media only screen and (max-width: 767px) {
  .works__tab ul li {
    width: 31%;
  }
}
.works__tab ul li a {
  font-size: 20px;
  border: 1px solid #a5a4a4;
  display: block;
  text-align: center;
  width: 230px;
  padding: 8px 0;
  border-radius: 6px;
}
@media only screen and (max-width: 767px) {
  .works__tab ul li a {
    font-size: clamp(1rem, 0.8394004283rem + 0.8565310493vw, 1.25rem);
    width: 100%;
    line-height: 1;
    padding: clamp(0.625rem, 0.2235010707rem + 2.1413276231vw, 1.25rem);
  }
}
.works__tab ul li a:hover {
  color: #fff;
  background-color: #000;
}
.works__tab ul li.active a {
  color: #fff;
  background-color: #000;
}
.works__contents-list {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works__contents-list {
    gap: clamp(0.625rem, -0.8145645646rem + 3.003003003vw, 1.25rem);
  }
}
.works__contents-list-items {
  width: 32%;
  background-color: #f2f1f1;
  padding: 35px 45px;
  border-radius: 6px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works__contents-list-items {
    padding: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem) clamp(1.25rem, 0.5302177177rem + 1.5015015015vw, 1.5625rem);
  }
}
@media only screen and (max-width: 767px) {
  .works__contents-list-items {
    width: 100%;
    padding: clamp(1.25rem, 0.647751606rem + 3.2119914347vw, 2.1875rem) clamp(1.5625rem, 0.7595021413rem + 4.2826552463vw, 2.8125rem);
  }
}
.works__contents-list-items-img {
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  aspect-ratio: 375/253;
  object-fit: cover;
}
.works__contents-list-items-img:hover img {
  scale: 1.1;
  transition: 0.3s;
}
.works__contents-list-items-img img {
  border-radius: 6px;
  scale: 1;
  transition: 0.3s;
  height: auto;
  aspect-ratio: 375/253;
  object-fit: cover;
}
.works__contents-list-items-img .cat {
  background: #000;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  padding: 5px 30px;
  position: absolute;
  top: 8px;
  left: 8px;
  line-height: 1;
  border-radius: 6px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works__contents-list-items-img .cat {
    font-size: clamp(0.875rem, 0.5870870871rem + 0.6006006006vw, 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .works__contents-list-items-img .cat {
    font-size: 14px;
  }
}
.works__contents-list-items-title {
  margin-top: 18px;
  font-size: 20px;
  text-align: center;
  line-height: 1.3;
}
@media screen and (max-width: 1330px) {
  .works__contents-list-items-title {
    font-size: clamp(0.875rem, -0.0217391304rem + 1.3043478261vw, 1.0625rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works__contents-list-items-title {
    font-size: clamp(1rem, 0.8560435435rem + 0.3003003003vw, 1.0625rem);
  }
}
@media only screen and (max-width: 767px) {
  .works__contents-list-items-title {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.works__contents-list-items-txt {
  font-size: 18px;
  line-height: 1.3em;
  margin-top: 5px;
}
@media screen and (max-width: 1330px) {
  .works__contents-list-items-txt {
    font-size: clamp(1rem, 0.402173913rem + 0.8695652174vw, 1.125rem);
  }
}
@media screen and (max-width: 1100px) {
  .works__contents-list-items-txt {
    border-top: none;
    font-size: 16px;
  }
}
.works__contents-list-items-txt p {
  overflow: hidden;
  max-height: 7.8em;
}
.works__contents-list-items-link {
  margin-top: 20px;
  text-align: right;
}
.works__contents-list-items-link a {
  margin-right: 16px;
}
.works__contents-list-items-link a.-isArrow .arrow-block {
  transition: 0.3s;
}
.works__contents-list-items-link a.-isArrow .arrow::before {
  border-color: #535353;
}
.works__contents-list-items-link a:hover.-isArrow .arrow-block {
  left: 105%;
  transition: 0.3s;
}
.works.pageSectionOnly {
  padding-top: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works.pageSectionOnly {
    padding-top: clamp(2.8125rem, 0.6531531532rem + 4.5045045045vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .works.pageSectionOnly {
    padding-top: clamp(1.875rem, 1.272751606rem + 3.2119914347vw, 2.8125rem);
  }
}

#works02 .works__contents-list {
  gap: 10px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  #works02 .works__contents-list {
    gap: clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
#works02 .works__contents-list-items {
  width: 19%;
  padding: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  #works02 .works__contents-list-items {
    padding: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  #works02 .works__contents-list-items {
    width: 48%;
  }
}
#works02 .works__contents-list-items-title {
  font-size: 18px;
  line-height: 1.3;
  margin-bottom: 10px;
}
@media screen and (max-width: 1330px) {
  #works02 .works__contents-list-items-title {
    font-size: clamp(0.8125rem, -0.3831521739rem + 1.7391304348vw, 1.0625rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  #works02 .works__contents-list-items-title {
    font-size: clamp(0.875rem, 0.4431306306rem + 0.9009009009vw, 1.0625rem);
    margin-bottom: clamp(0.3125rem, -0.4072822823rem + 1.5015015015vw, 0.625rem);
  }
}
@media only screen and (max-width: 767px) {
  #works02 .works__contents-list-items-title {
    margin-bottom: 5px;
  }
}
@media only screen and (max-width: 767px) {
  #works02 .works__contents-list-items-title {
    font-size: clamp(0.875rem, 0.7947002141rem + 0.4282655246vw, 1rem);
  }
}
#works02 .works__contents-list-items-img {
  aspect-ratio: 214/145;
  object-fit: cover;
  position: relative;
}
@media only screen and (max-width: 767px) {
  #works02 .works__contents-list-items-img {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
}
#works02 .works__contents-list-items-img:hover img {
  scale: 1;
}
#works02 .works__contents-list-items-img img:hover {
  scale: 1;
}
#works02 .works__contents-list-items-img .cat {
  display: inline-block;
  color: #fff;
  background-color: #313131;
  text-align: center;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  position: absolute;
  top: 10px;
  left: 10px;
}
@media only screen and (max-width: 767px) {
  #works02 .works__contents-list-items-img .cat {
    padding: 3px 20px;
    top: 5px;
    left: 5px;
  }
}
#works02.pageSection {
  padding-bottom: 18px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  #works02.pageSection {
    padding-bottom: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem);
  }
}
@media only screen and (max-width: 767px) {
  #works02.pageSection {
    padding-bottom: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}

.works_detail__contents-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 80px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top {
    margin-bottom: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top {
    display: block;
    margin-bottom: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}
.works_detail__contents-top-img {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-img {
    width: 100%;
  }
}
.works_detail__contents-top-img img {
  border-radius: 6px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 699.99/476;
}
.works_detail__contents-top-txt {
  width: 50%;
  padding: 0 0 0 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt {
    padding-left: clamp(1.875rem, -2.4436936937rem + 9.009009009vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt {
    width: 100%;
    padding-left: 0;
    margin-top: 40px;
  }
}
.works_detail__contents-top-txt h4 {
  font-size: 30px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt h4 {
    font-size: clamp(1.25rem, -0.1895645646rem + 3.003003003vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt h4 {
    font-size: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.works_detail__contents-top-txt ul {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.works_detail__contents-top-txt .cat {
  color: #fff;
  background: #000;
  padding: 5px;
  border-radius: 6px;
  font-size: 16px;
  width: 110px;
  line-height: 1;
  text-align: center;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt .cat {
    font-size: clamp(0.75rem, 0.1741741742rem + 1.2012012012vw, 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt .cat {
    font-size: 14px;
  }
}
.works_detail__contents-top-txt table {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt table {
    margin-top: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
    margin-bottom: clamp(0.9375rem, 0.2177177177rem + 1.5015015015vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt table {
    margin-top: 15px;
    margin-bottom: 15px;
  }
}
.works_detail__contents-top-txt table tr {
  display: flex;
}
.works_detail__contents-top-txt table tr th {
  font-weight: normal;
  font-size: 20px;
  text-align-last: left;
  flex-shrink: 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt table tr th {
    font-size: clamp(1rem, 0.4241741742rem + 1.2012012012vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt table tr th {
    font-size: 16px;
    line-height: 1.5;
  }
}
.works_detail__contents-top-txt table tr td {
  font-size: 20px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt table tr td {
    font-size: clamp(1rem, 0.4241741742rem + 1.2012012012vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt table tr td {
    font-size: 16px;
    line-height: 1.5;
  }
}
.works_detail__contents-top-txt p {
  font-size: 18px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-top-txt p {
    font-size: clamp(0.875rem, 0.0112612613rem + 1.8018018018vw, 1.25rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-top-txt p {
    font-size: 16px;
  }
}
.works_detail__contents-bottom {
  background-color: #e9e9e9;
  padding: 80px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-bottom {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0;
  }
}
.works_detail__contents-bottom-title ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
.works_detail__contents-bottom-title ul li {
  width: 50%;
  text-align: center;
  font-family: "futura-pt", sans-serif;
  font-size: 45px;
  font-weight: 400;
  font-feature-settings: "liga" 1;
  position: relative;
  line-height: 1.3;
  padding-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-title ul li {
    font-size: clamp(1.875rem, 1.272751606rem + 3.2119914347vw, 2.8125rem);
    padding-bottom: clamp(0.9375rem, 0.335251606rem + 3.2119914347vw, 1.875rem);
  }
}
.works_detail__contents-bottom-title ul li::after {
  content: "";
  display: block;
  width: 35px;
  height: 1px;
  background: #00ffff;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.works_detail__contents-bottom-block {
  margin: 50px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-bottom-block {
    margin: clamp(1.875rem, -1.0041291291rem + 6.006006006vw, 3.125rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-block {
    margin: clamp(0.625rem, -0.1779978587rem + 4.2826552463vw, 1.875rem) 0;
  }
}
.works_detail__contents-bottom-block h4 {
  font-size: 25px;
  text-align: center;
  margin-bottom: 30px;
  gap: 3%;
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-block h4 {
    margin-bottom: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.works_detail__contents-bottom-block ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.works_detail__contents-bottom-block ul li {
  width: 47%;
  margin-bottom: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-bottom-block ul li {
    margin-bottom: clamp(2.5rem, -0.3791291291rem + 6.006006006vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-block ul li {
    margin-bottom: clamp(1.25rem, 0.4470021413rem + 4.2826552463vw, 2.5rem);
  }
}
.works_detail__contents-bottom-block ul li img {
  border-radius: 6px;
  aspect-ratio: 659.99/472;
  object-fit: cover;
}
.works_detail__contents-bottom-block ul li:nth-child(1) > div {
  position: relative;
}
.works_detail__contents-bottom-block ul li:nth-child(1) > div::after {
  content: "";
  display: inline-block;
  width: 5%;
  height: 100%;
  background-image: url(../img/common/arrow.svg);
  background-position: center;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: -8%;
  transform: translateY(-50%);
}
.works_detail__contents-bottom-gallery {
  margin: 50px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-bottom-gallery {
    margin: clamp(1.875rem, -1.0041291291rem + 6.006006006vw, 3.125rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-gallery {
    margin: clamp(0.625rem, -0.1779978587rem + 4.2826552463vw, 1.875rem) 0;
  }
}
.works_detail__contents-bottom-gallery h4 {
  font-size: 25px;
  text-align: center;
  margin-bottom: 30px;
  gap: 3%;
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-bottom-gallery h4 {
    margin-bottom: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.works_detail__contents-bottom-gallery ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
.works_detail__contents-bottom-gallery ul li {
  width: 49%;
  margin-bottom: 25px;
}
.works_detail__contents-bottom-gallery ul li img {
  border-radius: 6px;
  aspect-ratio: 700/472;
  object-fit: cover;
}
.works_detail__contents-btn {
  margin-top: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail__contents-btn {
    margin-top: clamp(2.8125rem, -3.6655405405rem + 13.5135135135vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail__contents-btn {
    margin-top: clamp(1.875rem, 1.272751606rem + 3.2119914347vw, 2.8125rem);
  }
}
.works_detail.pageSectionOnly {
  padding-top: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .works_detail.pageSectionOnly {
    padding-top: clamp(2.8125rem, 0.6531531532rem + 4.5045045045vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .works_detail.pageSectionOnly {
    padding-top: clamp(1.875rem, 1.272751606rem + 3.2119914347vw, 2.8125rem);
  }
}

.sdgs-attempt.pageSection {
  padding: 80px 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .sdgs-attempt.pageSection {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0;
  }
}
@media only screen and (max-width: 767px) {
  .sdgs-attempt.pageSection {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0;
  }
}
.sdgs-attempt__contents {
  max-width: 880px;
  margin: auto;
}
.sdgs-attempt__contents .-fit-img {
  max-width: 418px;
  margin-left: auto;
  margin-right: auto;
}
.sdgs-attempt__contents img {
  box-shadow: 0px 0px 13.6px 2.4px rgba(0, 0, 0, 0.17);
}

.iso-attempt.pageSection {
  padding: 80px 0 40px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .iso-attempt.pageSection {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0 clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .iso-attempt.pageSection {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0 clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem);
  }
}
.iso-attempt__contents {
  max-width: 880px;
  margin: auto;
}
.iso-attempt__contents p {
  text-align: center;
}
.iso-attempt__contents ul {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 5%;
  margin-top: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .iso-attempt__contents ul {
    margin-top: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .iso-attempt__contents ul {
    margin-top: clamp(1.875rem, -2.4436936937rem + 9.009009009vw, 3.75rem);
  }
}
.iso-attempt__contents ul li {
  width: 50%;
  box-shadow: 0px 0px 13.6px 2.4px rgba(0, 0, 0, 0.17);
}
.iso-policy.pageSection {
  padding: 120px 0 45px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .iso-policy.pageSection {
    padding: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem) 0 45px;
  }
}
@media only screen and (max-width: 767px) {
  .iso-policy.pageSection {
    padding: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem) 0 30px;
  }
}
.iso-policy .pageTitle::before {
  background-color: #fff;
}
.iso-policy .pageTitle h3 {
  color: #fff;
}
.iso-policy .message {
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .iso-policy .message {
    text-align: center;
  }
}
.iso-policy .message.policyMeassage {
  width: 88%;
}
@media only screen and (max-width: 767px) {
  .iso-policy .message.policyMeassage {
    width: 100%;
  }
}
.iso-policy .message.purposeMeassage {
  width: 98%;
}
@media only screen and (max-width: 767px) {
  .iso-policy .message.purposeMeassage {
    width: 100%;
  }
}
.iso-policy .message p {
  font-size: 45px;
  font-weight: 700;
  color: #fff;
  width: fit-content;
  position: relative;
  line-height: 1;
  margin-bottom: 60px;
}
@media screen and (min-width: 1100px) and (max-width: 1330px) {
  .iso-policy .message p {
    font-size: clamp(2.125rem, -1.1630434783rem + 4.7826086957vw, 2.8125rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .iso-policy .message p {
    font-size: clamp(1.625rem, 0.4733483483rem + 2.4024024024vw, 2.125rem);
    margin-bottom: clamp(2.5rem, -0.3791291291rem + 6.006006006vw, 3.75rem);
  }
}
@media only screen and (max-width: 767px) {
  .iso-policy .message p {
    font-size: clamp(1.125rem, 0.8038008565rem + 1.7130620985vw, 1.625rem);
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    line-height: 1.5;
    display: inline;
    background: linear-gradient(transparent 85%, rgba(0, 255, 255, 0.55) 0%);
  }
}
.iso-policy .message p::after {
  content: "";
  display: block;
  width: 100%;
  height: 10px;
  background: #00ffff;
  position: absolute;
  top: 100%;
  left: 0;
  transform: translateY(-100%);
  opacity: 55%;
  z-index: -99;
}
@media only screen and (max-width: 767px) {
  .iso-policy .message p::after {
    display: none;
  }
}
.iso-policy .message p.-t-right {
  margin-left: auto;
  margin-bottom: 0;
}
.iso-policy__contents-block {
  margin-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .iso-policy__contents-block {
    margin-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .iso-policy__contents-block {
    margin-bottom: 60px;
  }
}
.iso-policy__contents-block:last-child {
  margin-bottom: 0;
}
.iso-policy ol {
  width: 76%;
  margin: auto;
  list-style: none;
  counter-reset: custom-counter;
  padding-left: 1em; /* 数字とテキストの間のスペース調整 */
}
@media screen and (max-width: 1100px) {
  .iso-policy ol {
    width: 95%;
  }
}
.iso-policy ol li {
  color: #fff;
  font-weight: 500;
  margin-bottom: 30px;
  font-size: 18px;
  counter-increment: custom-counter;
  position: relative;
  padding-left: 1.5em;
}
.iso-policy ol li::before {
  content: counter(custom-counter, decimal-leading-zero) " "; /* → 01, 02, 03 */
  position: absolute;
  top: 5px;
  left: 0;
  transform: translateX(-50%);
  color: #00ffff;
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: italic;
  font-size: 24px;
  line-height: 1;
}
.iso-policy .min-block {
  width: 76%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1100px) {
  .iso-policy .min-block {
    width: 95%;
  }
}
.iso-policy .min-block p {
  font-size: 18px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .iso-policy .min-block p {
    text-align: left;
  }
  .iso-policy .min-block p.-t-right {
    text-align: right;
  }
}

.local-contribution.pageSection {
  padding: 40px 0 80px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .local-contribution.pageSection {
    padding: clamp(1.875rem, 0.4354354354rem + 3.003003003vw, 2.5rem) 0 clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem);
  }
}
@media only screen and (max-width: 767px) {
  .local-contribution.pageSection {
    padding: clamp(1.25rem, 0.8485010707rem + 2.1413276231vw, 1.875rem) 0 clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}
.local-contribution__contents {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents {
    flex-direction: column-reverse;
  }
}
.local-contribution__contents-left {
  display: flex;
  align-items: flex-end;
  gap: 40px;
  width: 45%;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents-left {
    width: 100%;
    justify-content: center;
    margin-top: 40px;
  }
}
.local-contribution__contents-left-img {
  box-shadow: 0px 12px 19.2px 4.8px rgba(0, 0, 0, 0.21);
}
.local-contribution__contents-right {
  width: 50%;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents-right {
    width: 100%;
  }
}
.local-contribution__contents-right-txt {
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents-right-txt {
    margin-bottom: 20px;
  }
}
.local-contribution__contents-right-txt h4 {
  font-size: 25px;
  font-weight: 500;
  border-bottom: 1px solid #00ffff;
  width: fit-content;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents-right-txt h4 {
    font-size: clamp(1.25rem, 1.0492505353rem + 1.0706638116vw, 1.5625rem);
  }
}
.local-contribution__contents-right-txt p {
  margin-top: 5px;
  font-size: 18px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .local-contribution__contents-right-txt p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.local-contribution__contents-right a {
  color: #58cbcf;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.csr-attempt.pageSection {
  padding: 120px 0 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .csr-attempt.pageSection {
    padding: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem) 0 clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .csr-attempt.pageSection {
    padding: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem) 0 clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.csr-attempt__contents {
  max-width: 880px;
  margin: auto;
}
.csr-attempt__contents p {
  text-align: center;
}
.csr-attempt__contents ul {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 5%;
  margin-top: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .csr-attempt__contents ul {
    margin-top: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .csr-attempt__contents ul {
    margin-top: clamp(1.875rem, -2.4436936937rem + 9.009009009vw, 3.75rem);
  }
}
.csr-attempt__contents ul li {
  width: 50%;
  box-shadow: 0px 0px 13.6px 2.4px rgba(0, 0, 0, 0.17);
}

.local-contribution-attempt.pageSection {
  padding: 120px 0 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .local-contribution-attempt.pageSection {
    padding: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem) 0 clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt.pageSection {
    padding: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem) 0 clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.local-contribution-attempt__contents-block {
  margin-bottom: 90px;
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt__contents-block {
    margin-bottom: 60px;
  }
}
.local-contribution-attempt__contents-block:last-child {
  margin: 0;
}
.local-contribution-attempt__contents-block h4 {
  font-size: 25px;
  line-height: 1;
  position: relative;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt__contents-block h4 {
    font-size: clamp(1.25rem, 1.0492505353rem + 1.0706638116vw, 1.5625rem);
  }
}
.local-contribution-attempt__contents-block h4 span {
  color: #00ffff;
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: italic;
  font-size: 30px;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt__contents-block h4 span {
    font-size: clamp(1.5625rem, 1.3617505353rem + 1.0706638116vw, 1.875rem);
    margin-right: 10px;
  }
}
.local-contribution-attempt__contents-block p {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 60px;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt__contents-block p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
    margin-bottom: 30px;
  }
}
.local-contribution-attempt__contents-block ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.local-contribution-attempt__contents-block img {
  border-radius: 6px;
}
.local-contribution-attempt__contents-block .width-fit {
  width: 85%;
}
.local-contribution-attempt__contents-block-flex {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
}
@media only screen and (max-width: 767px) {
  .local-contribution-attempt__contents-block-flex {
    display: block;
  }
}
.local-contribution-attempt__contents-block-flex-left {
  margin-bottom: 60px;
}
.local-contribution-attempt__contents p {
  font-size: 18px;
}

.csr-global-warming.pageSection {
  padding: 120px 0 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .csr-global-warming.pageSection {
    padding: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem) 0 clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .csr-global-warming.pageSection {
    padding: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem) 0 clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.csr-global-warming .pageTitle::before {
  background-color: #fff;
}
.csr-global-warming .pageTitle h3 {
  color: #fff;
}
.csr-global-warming__contents-block {
  margin-bottom: 90px;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block {
    margin-bottom: 60px;
  }
}
.csr-global-warming__contents-block:last-child {
  margin: 0;
}
.csr-global-warming__contents-block h4 {
  font-size: 25px;
  line-height: 1;
  position: relative;
  margin-bottom: 20px;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block h4 {
    font-size: clamp(1.25rem, 1.0492505353rem + 1.0706638116vw, 1.5625rem);
  }
}
.csr-global-warming__contents-block h4 span {
  color: #00ffff;
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: italic;
  font-size: 30px;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block h4 span {
    font-size: clamp(1.5625rem, 1.3617505353rem + 1.0706638116vw, 1.875rem);
    margin-right: 10px;
  }
}
.csr-global-warming__contents-block p {
  color: #fff;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.csr-global-warming__contents-block ul {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 30px;
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block ul {
    margin-top: 20px;
  }
}
.csr-global-warming__contents-block ul li img {
  border-radius: 6px;
}
.csr-global-warming__contents-block table {
  background-color: #fff;
  border-radius: 6px;
  margin-top: 10px;
  width: 60%;
}
@media screen and (max-width: 1330px) {
  .csr-global-warming__contents-block table {
    width: 100%;
  }
}
.csr-global-warming__contents-block table tbody {
  display: flex;
  align-items: stretch;
}
.csr-global-warming__contents-block table tr {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  width: 33.3333333333%;
}
.csr-global-warming__contents-block table tr th {
  width: 100%;
  height: 65px;
  border-bottom: 1px solid #717171;
  border-right: 1px solid #717171;
  font-weight: normal;
  font-size: 18px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block table tr th {
    font-size: clamp(0.875rem, 0.7144004283rem + 0.8565310493vw, 1.125rem);
    height: clamp(2.8125rem, 2.0095021413rem + 4.2826552463vw, 4.0625rem);
  }
}
.csr-global-warming__contents-block table tr td {
  width: 100%;
  height: 65px;
  border-bottom: 1px solid #717171;
  border-right: 1px solid #717171;
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block table tr td {
    font-size: clamp(0.875rem, 0.7144004283rem + 0.8565310493vw, 1.125rem);
    height: clamp(2.8125rem, 2.0095021413rem + 4.2826552463vw, 4.0625rem);
  }
}
.csr-global-warming__contents-block table .after {
  position: relative;
}
.csr-global-warming__contents-block table .after:after {
  content: "";
  display: block;
  width: 101%;
  height: 102%;
  border: 3px solid #00ffff;
  border-radius: 6px;
  position: absolute;
  top: -1%;
  left: -1%;
}
.csr-global-warming__contents-block-first {
  margin-bottom: 60px;
}
@media only screen and (max-width: 767px) {
  .csr-global-warming__contents-block-first {
    margin-bottom: 40px;
  }
}

.bcp-attempt.pageSection {
  padding: 120px 0 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .bcp-attempt.pageSection {
    padding: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem) 0 clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .bcp-attempt.pageSection {
    padding: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem) 0 clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.bcp-attempt__contents-block {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 60px;
}
@media only screen and (max-width: 767px) {
  .bcp-attempt__contents-block {
    display: block;
  }
}
.bcp-attempt__contents-block h4 {
  font-size: 25px;
  line-height: 1;
  position: relative;
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  .bcp-attempt__contents-block h4 {
    font-size: clamp(1.25rem, 1.0492505353rem + 1.0706638116vw, 1.5625rem);
  }
}
.bcp-attempt__contents-block h4 span {
  color: #00ffff;
  font-family: "futura-pt", sans-serif;
  font-weight: 600;
  font-style: italic;
  font-size: 30px;
  margin-right: 20px;
}
@media only screen and (max-width: 767px) {
  .bcp-attempt__contents-block h4 span {
    font-size: clamp(1.5625rem, 1.3617505353rem + 1.0706638116vw, 1.875rem);
    margin-right: 10px;
  }
}
.bcp-attempt__contents-block p {
  font-size: 18px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .bcp-attempt__contents-block p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
    margin-bottom: 20px;
  }
}
.bcp-attempt__contents-block img {
  border-radius: 6px;
}

.recruit.pageSection {
  padding: 80px 0 0;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .recruit.pageSection {
    padding: clamp(3.75rem, 0.8708708709rem + 6.006006006vw, 5rem) 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .recruit.pageSection {
    padding: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem) 0 0;
  }
}
.recruit .pageTitle {
  margin-bottom: 30px;
}
.recruit-block {
  margin-bottom: 120px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .recruit-block {
    margin-bottom: clamp(5.625rem, 1.3063063063rem + 9.009009009vw, 7.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .recruit-block {
    margin-bottom: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.recruit-contents {
  border-top: 1px solid #58cbcf;
}
.recruit-table table {
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .recruit-table table tr {
    display: flex;
    flex-direction: column;
  }
}
.recruit-table table tr th {
  text-align-last: left;
  background-color: #eff4f4;
  width: 300px;
  padding: 30px;
  border-bottom: 1px solid #dfdfdf;
  vertical-align: top;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .recruit-table table tr th {
    width: 100%;
    padding: 20px;
    border-bottom: none;
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
  }
}
.recruit-table table tr td {
  padding: 30px;
  border-bottom: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .recruit-table table tr td {
    width: 100%;
    padding: 20px;
    border-left: 1px solid #dfdfdf;
    border-right: 1px solid #dfdfdf;
  }
}
.recruit-table table tr td ul {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  row-gap: 15px;
  column-gap: 60px;
  flex-wrap: wrap;
}
.recruit-table table tr td ul li {
  padding-left: 15px;
  position: relative;
}
.recruit-table table tr td ul li::after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background: #000;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.recruit .table-title {
  font-size: 20px;
  font-weight: 500;
}
@media only screen and (max-width: 767px) {
  .recruit .table-title {
    font-size: clamp(1.125rem, 1.0447002141rem + 0.4282655246vw, 1.25rem);
  }
}

#mid-career_recruitment .recruit-contents {
  margin-top: 10px;
}

.entry {
  width: 100%;
}
.entry .pageTitle {
  margin-bottom: 30px;
}
.entry .link {
  color: #49a0a3;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.entry__block {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  margin-bottom: 50px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .entry__block {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .entry__block tr {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  .entry__block tr:last-child {
    border-bottom: 1px solid #dfdfdf;
  }
}
.entry__block tr th {
  width: 25%;
  text-align: left;
  border: 1px solid #dfdfdf;
  padding: 15px 15px;
  font-weight: 500;
  background-color: #eff4f4;
}
@media only screen and (max-width: 767px) {
  .entry__block tr th {
    display: block;
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #dfdfdf;
    padding: 10px;
  }
}
.entry__block tr td {
  width: 75%;
  padding: 15px 15px;
  border: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .entry__block tr td {
    display: block;
    width: 100%;
    padding: 10px;
  }
}
.entry__block tr td input[type=text] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.entry__block tr td input[type=text]::placeholder {
  color: #f0f0f0;
}
.entry__block tr td input[type=email] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.entry__block tr td input[type=email]::placeholder {
  color: #f0f0f0;
}
.entry__block tr td input[type=password] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.entry__block tr td input[type=password]::placeholder {
  color: #f0f0f0;
}
.entry__block tr td select {
  border: 1px solid #c4c4c4;
  height: 35px;
  line-height: 35px;
  padding-left: 7px;
  padding-right: 7px;
}
.entry__block tr td textarea {
  border: 1px solid #c4c4c4;
  padding: 10px 7px;
  width: 100%;
}
.entry__block tr td textarea::placeholder {
  color: #f0f0f0;
}
.entry__block tr td p {
  color: #00ffff;
  font-size: 14px;
}
.entry__block tr td span {
  margin: 0 5px;
}

.num {
  align-items: center;
  gap: 10px;
}
.num span {
  line-height: 35px;
}

.wid-with {
  width: 100% !important;
}

.mid-with {
  width: 100%;
  max-width: 750px !important;
}

.min-with {
  width: 80%;
  max-width: 100px !important;
}

.required {
  color: #ff0000;
}
@media only screen and (max-width: 767px) {
  .required {
    font-size: 10px;
  }
}

.contact {
  width: 100%;
}
.contact .pageTitle {
  margin-bottom: 30px;
}
.contact .link {
  color: #49a0a3;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.contact__block {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  margin-bottom: 30px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
  border: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .contact__block {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .contact__block tr {
    display: block;
    width: 100%;
    border-bottom: none;
  }
  .contact__block tr:last-child {
    border-bottom: 1px solid #dfdfdf;
  }
}
.contact__block tr th {
  width: 25%;
  text-align: left;
  border: 1px solid #dfdfdf;
  padding: 15px 15px;
  font-weight: 500;
  background-color: #eff4f4;
}
@media only screen and (max-width: 767px) {
  .contact__block tr th {
    display: block;
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #dfdfdf;
    padding: 10px;
  }
}
.contact__block tr td {
  width: 75%;
  padding: 15px 15px;
  border: 1px solid #dfdfdf;
}
@media only screen and (max-width: 767px) {
  .contact__block tr td {
    display: block;
    width: 100%;
    padding: 10px;
  }
}
.contact__block tr td input[type=text] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.contact__block tr td input[type=text]::placeholder {
  color: #f0f0f0;
}
.contact__block tr td input[type=email] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.contact__block tr td input[type=email]::placeholder {
  color: #f0f0f0;
}
.contact__block tr td input[type=password] {
  border: 1px solid #c4c4c4;
  height: 45px;
  line-height: 45px;
  padding-left: 7px;
  padding-right: 7px;
}
.contact__block tr td input[type=password]::placeholder {
  color: #f0f0f0;
}
.contact__block tr td select {
  border: 1px solid #c4c4c4;
  height: 35px;
  line-height: 35px;
  padding-left: 7px;
  padding-right: 7px;
}
.contact__block tr td textarea {
  border: 1px solid #c4c4c4;
  padding: 10px 7px;
  width: 100%;
}
.contact__block tr td textarea::placeholder {
  color: #f0f0f0;
}
.contact__block tr td p {
  color: #00ffff;
  font-size: 14px;
}
.contact__block tr td span {
  margin: 0 5px;
}
.contact .privacy {
  color: #49a0a3;
  text-decoration: underline;
  text-underline-offset: 5px;
  display: block;
  text-align: right;
}

.num {
  align-items: center;
  gap: 10px;
}
.num span {
  line-height: 35px;
}

.wid-with {
  width: 100% !important;
}

.mid-with {
  width: 100%;
  max-width: 750px !important;
}

.min-with {
  width: 80%;
  max-width: 100px !important;
}

.required {
  color: #ff0000;
}
@media only screen and (max-width: 767px) {
  .required {
    font-size: 10px;
  }
}

.download table {
  width: 100%;
}
.download table tr {
  border-bottom: 1px solid #b5b5b5;
}
@media screen and (max-width: 1100px) {
  .download table tr {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
  }
  .download table tr:first-child {
    border-top: 1px solid #b5b5b5;
  }
}
.download table tr th {
  padding: 20px 5px;
  border-top: 1px solid #b5b5b5;
  border-right: 1px solid #b5b5b5;
  border-left: 1px solid #b5b5b5;
  text-align: center;
  background-color: #eff4f4;
  font-weight: normal;
  font-size: 18px;
}
@media screen and (max-width: 1330px) {
  .download table tr th {
    font-size: clamp(1rem, 0.402173913rem + 0.8695652174vw, 1.125rem);
  }
}
@media screen and (max-width: 1100px) {
  .download table tr th {
    border-top: none;
    font-size: 16px;
  }
}
.download table tr td {
  padding: 20px 5px;
  border-top: 1px solid #b5b5b5;
  border-right: 1px solid #b5b5b5;
  text-align: center;
  font-weight: normal;
  font-size: 18px;
}
@media screen and (max-width: 1330px) {
  .download table tr td {
    font-size: clamp(1rem, 0.402173913rem + 0.8695652174vw, 1.125rem);
  }
}
@media screen and (max-width: 1100px) {
  .download table tr td {
    font-size: 16px;
  }
}
.download table tr td a {
  background-color: #000;
  color: #fff;
  padding: 15px 30px;
  border-radius: 6px;
}
.download table tr td a img {
  margin-left: 5px;
}
.download table tr .document_description {
  text-align-last: left;
  padding: 20px;
}
.download table tr .min {
  width: 30%;
}
@media screen and (max-width: 1100px) {
  .download table tr .min {
    width: 100%;
  }
}
.download table tr .mid {
  width: 20%;
  min-width: 250px;
}
@media screen and (max-width: 1100px) {
  .download table tr .mid {
    width: 250px;
  }
}
@media only screen and (max-width: 767px) {
  .download table tr .mid {
    width: 100%;
    border-left: 1px solid #b5b5b5;
  }
}
.download table tr .wid {
  width: 50%;
}
@media screen and (max-width: 1100px) {
  .download table tr .wid {
    width: calc(100% - 250px);
    border-left: 1px solid #b5b5b5;
  }
}
@media only screen and (max-width: 767px) {
  .download table tr .wid {
    width: 100%;
  }
}

.privacy .pageTitle.inlineTitle {
  margin-bottom: 70px;
}
.privacy p {
  font-size: 18px;
}
@media only screen and (max-width: 767px) {
  .privacy p {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.privacy__contents-block {
  margin-bottom: 40px;
}
.privacy__contents-block:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .privacy__contents-block {
    margin-bottom: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
  }
}
.privacy__contents-block h4 {
  font-size: 25px;
  line-height: 1;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .privacy__contents-block h4 {
    font-size: clamp(1.25rem, 0.5302177177rem + 1.5015015015vw, 1.5625rem);
  }
}
@media only screen and (max-width: 767px) {
  .privacy__contents-block h4 {
    font-size: clamp(1.125rem, 1.0447002141rem + 0.4282655246vw, 1.25rem);
  }
}
.privacy__contents-block ul {
  margin-top: 5px;
  margin-left: 2em;
}
@media only screen and (max-width: 767px) {
  .privacy__contents-block ul {
    margin-left: 1em;
  }
}
.privacy__contents-block ul li {
  line-height: 1.3;
  margin-bottom: 10px;
  font-size: 18px;
  padding-left: 10px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .privacy__contents-block ul li {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.privacy__contents-block ul li::after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background-color: #000000;
  border-radius: 50%;
  position: absolute;
  top: 0.5em;
  left: 0;
}
.privacy__contents-block ul li:last-child {
  margin-bottom: 0;
}
.privacy__contents .sign {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .privacy__contents .sign {
    margin-top: clamp(2.5rem, 1.6970021413rem + 4.2826552463vw, 3.75rem);
  }
}
.privacy__contents .sign h5 {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.3;
}
@media only screen and (max-width: 767px) {
  .privacy__contents .sign h5 {
    font-size: clamp(1rem, 0.9197002141rem + 0.4282655246vw, 1.125rem);
  }
}
.privacy__contents .sign p {
  line-height: 1.3;
}
.privacy#privacy05.pageSection {
  padding-bottom: 90px;
}
@media only screen and (max-width: 767px) {
  .privacy#privacy05.pageSection {
    padding-bottom: 60px;
  }
}

.login {
  position: relative;
}
.login_bg img {
  height: calc(100vh - 100px);
  object-fit: cover;
}
@media only screen and (max-width: 767px) {
  .login_bg img {
    height: calc(100vh - 70px);
  }
}
.login__contents {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .login__contents {
    width: 80%;
  }
}
.login .pageTitle {
  color: #fff;
  font-size: 2.5vw;
}
@media only screen and (max-width: 767px) {
  .login .pageTitle {
    font-size: clamp(1.125rem, 1.0447002141rem + 0.4282655246vw, 1.25rem);
  }
}
.login__form {
  margin-top: 13%;
}
@media only screen and (max-width: 767px) {
  .login__form {
    margin-top: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
  }
}
.login__form-item {
  display: flex;
  flex-direction: column;
  margin-top: 3%;
}
@media only screen and (max-width: 767px) {
  .login__form-item {
    margin-top: 15px;
  }
}
.login__form-item label {
  color: #fff;
  font-size: 1vw;
  font-weight: 700;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .login__form-item label {
    font-size: 14px;
  }
}
.login__form-item input {
  background-color: #fff;
  border-radius: 6px;
  border: none;
  padding: 15px;
}
@media only screen and (max-width: 767px) {
  .login__form-item input {
    padding: clamp(0.3125rem, 0.1117505353rem + 1.0706638116vw, 0.625rem);
  }
}
.login__form-button {
  margin-top: 13%;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .login__form-button {
    margin-top: clamp(1.875rem, 1.4735010707rem + 2.1413276231vw, 2.5rem);
  }
}

.future-attempt_title {
  margin-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt_title {
    margin-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt_title {
    margin-bottom: clamp(1.875rem, -0.533993576rem + 12.8479657388vw, 5.625rem);
  }
}
.future-attempt_title h4 {
  font-size: 30px;
  font-weight: 500;
  padding-left: 30px;
  letter-spacing: 0.2rem;
  padding-bottom: 10px;
  position: relative;
  line-height: 1.3;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt_title h4 {
    font-size: clamp(1.5rem, 0.6362612613rem + 1.8018018018vw, 1.875rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt_title h4 {
    font-size: clamp(1.25rem, 1.0894004283rem + 0.8565310493vw, 1.5rem);
  }
}
.future-attempt_title h4::before {
  content: "";
  display: block;
  width: 15px;
  height: 100%;
  background-color: #00ffff;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 3px 3px 0 0;
}
.future-attempt_title h4::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #00ffff;
  position: absolute;
  top: 100%;
  left: 0;
}
.future-attempt__office {
  margin: 0 0 200px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__office {
    margin: 0 0 clamp(10.625rem, 6.3063063063rem + 9.009009009vw, 12.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__office {
    margin-bottom: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.future-attempt__office__inner {
  width: 88%;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__office__inner {
    width: 95%;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__inner {
    width: 95%;
  }
}
.future-attempt__office__slider {
  padding-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__office__slider {
    padding-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider {
    padding-bottom: 0;
  }
}
.future-attempt__office__slider-slide-item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 60px;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__office__slider-slide-item {
    gap: 5%;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider-slide-item {
    display: block;
    margin: 0 0 0 5%;
  }
}
.future-attempt__office__slider-slide-img {
  width: 60%;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider-slide-img {
    width: 100%;
  }
}
.future-attempt__office__slider-slide-img img {
  border-radius: 10px;
}
.future-attempt__office__slider-slide-txt {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider-slide-txt {
    margin-top: 15px;
  }
}
.future-attempt__office__slider-slide-txt .date {
  font-size: 25px;
  font-weight: 500;
  margin-bottom: 20px;
  margin-bottom: 3%;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__office__slider-slide-txt .date {
    font-size: 1.4vw;
    margin-bottom: 8%;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider-slide-txt .date {
    margin-bottom: clamp(0.625rem, 0.4242505353rem + 1.0706638116vw, 0.9375rem);
    font-size: clamp(1.125rem, 1.0447002141rem + 0.4282655246vw, 1.25rem);
  }
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__office__slider-slide-txt p {
    font-size: 0.9vw;
  }
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__office__slider-slide .-btn_top {
    padding: 11.5% 0;
    max-width: inherit;
    font-size: 0.8vw;
    width: 90%;
  }
}
.future-attempt__office__slider .slick-list {
  padding: 0 0 0 30% !important;
}
@media only screen and (max-width: 767px) {
  .future-attempt__office__slider .slick-list {
    padding: 0 0 0 10% !important;
  }
}
.future-attempt__layout {
  margin: 0 0 200px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__layout {
    margin: 0 0 clamp(10.625rem, 6.3063063063rem + 9.009009009vw, 12.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout {
    margin-bottom: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.future-attempt__layout__inner {
  width: 70%;
  margin-left: auto;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__layout__inner {
    width: 95%;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__inner {
    width: 95%;
  }
}
.future-attempt__layout__slider {
  padding-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__layout__slider {
    padding-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__slider {
    padding-bottom: 0;
  }
}
.future-attempt__layout__slider-slide-item {
  margin: 0 180px 0 0;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__layout__slider-slide-item {
    margin: 0 15% 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__slider-slide-item {
    margin: 0 5% 0 0;
  }
}
.future-attempt__layout__slider-slide-img {
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__slider-slide-img {
    width: 100%;
  }
}
.future-attempt__layout__slider-slide-img img {
  border-radius: 10px;
}
.future-attempt__layout__slider-slide-txt {
  margin-top: 30px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__slider-slide-txt {
    margin-top: 15px;
  }
}
.future-attempt__layout__slider .slick-list {
  padding: 0 30% 0 0 !important;
}
@media only screen and (max-width: 767px) {
  .future-attempt__layout__slider .slick-list {
    padding: 0 10% 0 0 !important;
  }
}
.future-attempt__layout .future-attempt-slick-prev {
  left: calc(28.5% - 45px);
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__layout .future-attempt-slick-prev {
    left: calc(47.5% - 45px);
  }
}
.future-attempt__layout .future-attempt-slick-next {
  left: calc(28.5% + 45px);
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__layout .future-attempt-slick-next {
    left: calc(47.5% + 45px);
  }
}
.future-attempt__innovation {
  margin: 0 0 200px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__innovation {
    margin: 0 0 clamp(10.625rem, 6.3063063063rem + 9.009009009vw, 12.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation {
    margin-bottom: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.future-attempt__innovation__inner {
  width: 100%;
}
.future-attempt__innovation__slider {
  padding-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__innovation__slider {
    padding-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation__slider {
    padding-bottom: 0;
  }
}
.future-attempt__innovation__slider-slide-item {
  margin: 0 120px 0 0;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__innovation__slider-slide-item {
    margin: 0 14% 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation__slider-slide-item {
    margin: 0 2.5% 0 2.5%;
  }
}
.future-attempt__innovation__slider-slide-img {
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation__slider-slide-img {
    width: 100%;
  }
}
.future-attempt__innovation__slider-slide-img img {
  border-radius: 10px;
}
.future-attempt__innovation__slider-slide-txt {
  margin-top: 30px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation__slider-slide-txt {
    margin-top: 15px;
  }
}
.future-attempt__innovation__slider .slick-list {
  padding: 0 25% !important;
}
@media only screen and (max-width: 767px) {
  .future-attempt__innovation__slider .slick-list {
    padding: 0 10% !important;
  }
}
.future-attempt__innovation .future-attempt-slick-prev {
  left: calc(50% - 45px);
  transform: translateX(-50%);
}
.future-attempt__innovation .future-attempt-slick-next {
  left: calc(50% + 45px);
  transform: translateX(-50%);
}
.future-attempt__contribution {
  margin: 0 0 200px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__contribution {
    margin: 0 0 clamp(10.625rem, 6.3063063063rem + 9.009009009vw, 12.5rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution {
    margin-bottom: clamp(3.75rem, 2.545503212rem + 6.4239828694vw, 5.625rem);
  }
}
.future-attempt__contribution__inner {
  width: 85%;
  margin-left: auto;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__contribution__inner {
    width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__inner {
    width: 95%;
  }
}
.future-attempt__contribution__slider {
  padding-bottom: 90px;
}
@media screen and (min-width: 767px) and (max-width: 1100px) {
  .future-attempt__contribution__slider {
    padding-bottom: clamp(3.75rem, -0.5686936937rem + 9.009009009vw, 5.625rem);
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__slider {
    padding-bottom: 0;
  }
}
.future-attempt__contribution__slider-slide-item {
  margin: 0 90px 0 0;
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__contribution__slider-slide-item {
    margin: 0 9% 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__slider-slide-item {
    margin: 0 5% 0 0;
  }
}
.future-attempt__contribution__slider-slide-img {
  border-radius: 10px;
}
.future-attempt__contribution__slider-slide-img img {
  max-height: 710px;
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__slider-slide-img img {
    max-height: 350px;
  }
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__slider-slide-img {
    width: 100%;
  }
}
.future-attempt__contribution__slider-slide-txt {
  margin-top: 30px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution__slider-slide-txt {
    margin-top: 15px;
  }
}
.future-attempt__contribution .future-attempt-slick-prev {
  left: calc(41.25% - 45px);
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__contribution .future-attempt-slick-prev {
    left: calc(44.5% - 45px);
  }
}
.future-attempt__contribution .future-attempt-slick-next {
  left: calc(41.25% + 45.25px);
  transform: translateX(-50%);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt__contribution .future-attempt-slick-next {
    left: calc(44.5% + 45px);
  }
}
.future-attempt__contribution .slick-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px; /* スライド間の余白をここで調整 */
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .future-attempt__contribution .slick-slide {
    display: block;
  }
}

.future-attempt-slick-prev,
.future-attempt-slick-next {
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 100;
  border: 2px solid #00ffff;
  width: 80px;
  height: 80px;
  border-radius: 50%;
}
@media only screen and (max-width: 767px) {
  .future-attempt-slick-prev,
  .future-attempt-slick-next {
    width: clamp(3.75rem, 2.9470021413rem + 4.2826552463vw, 5rem);
    height: clamp(3.75rem, 2.9470021413rem + 4.2826552463vw, 5rem);
  }
}

.future-attempt-slick-prev {
  left: calc(56.75% - 45px);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt-slick-prev {
    left: calc(52.5% - 45px);
  }
}

.future-attempt-slick-next {
  left: calc(56.75% + 45px);
}
@media screen and (min-width: 767px) and (max-width: 1800px) {
  .future-attempt-slick-next {
    left: calc(52.5% + 45px);
  }
}

.future-attempt-slick-prev::before,
.future-attempt-slick-next::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  border-top: 2px solid #00ffff;
  border-right: 2px solid #00ffff;
  position: absolute;
  top: 50%;
  left: 50%;
}

.future-attempt-slick-prev:before {
  transform: translate(-35%, -40%) rotate(-135deg);
}

.future-attempt-slick-next:before {
  transform: translate(-65%, -35%) rotate(45deg);
}

.future-attempt-slick-prev.slick-disabled,
.future-attempt-slick-next.slick-disabled {
  border-color: #c7f1f1;
}
.future-attempt-slick-prev.slick-disabled:before,
.future-attempt-slick-next.slick-disabled:before {
  border-color: #c7f1f1;
}/*# sourceMappingURL=bandle.css.map */