@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap";

html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%
}

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

:after,
:before {
  text-decoration: inherit;
  vertical-align: inherit
}

* {
  padding: 0;
  margin: 0
}

audio:not([controls]) {
  display: none;
  height: 0
}

hr {
  overflow: visible
}

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

summary {
  display: list-item
}

small {
  font-size: 80%
}

[hidden],
template {
  display: none
}

abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none
}

li,
ol {
  list-style: none
}

a {
  background-color: rgba(0, 0, 0, 0);
  text-decoration: underline
}

a:active,
a:hover {
  outline-width: 0
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace
}

b,
strong {
  font-weight: bolder
}

dfn {
  font-style: italic
}

mark {
  background-color: #ff0;
  color: #000
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

[role=button],
[type=button],
[type=reset],
[type=submit],
button {
  cursor: pointer
}

[disabled] {
  cursor: default
}

[type=number] {
  width: auto
}

[type=search] {
  -webkit-appearance: textfield
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

textarea {
  overflow: auto;
  resize: vertical
}

button,
input,
optgroup,
select,
textarea {
  font: inherit
}

optgroup {
  font-weight: 700
}

button {
  overflow: visible
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: 0;
  padding: 0
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}

[type=reset],
[type=submit],
button,
html [type=button] {
  -webkit-appearance: button
}

button,
select {
  text-transform: none
}

select {
  -moz-appearance: none;
  -webkit-appearance: none
}

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

select::-ms-value {
  color: currentColor
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

img {
  border-style: none;
  image-rendering: -webkit-optimize-contrast
}

progress {
  vertical-align: baseline
}

svg:not(:root) {
  overflow: hidden
}

audio,
canvas,
progress,
video {
  display: inline-block
}

@media screen {
  [hidden~=screen] {
    display: inherit
  }

  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important
  }
}

[aria-busy=true] {
  cursor: progress
}

[aria-controls] {
  cursor: pointer
}

[aria-disabled] {
  cursor: default
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: clamp(12px, 1.1713030747vw, 16px);
  letter-spacing: 0;
  line-height: 2;
  overflow-y: hidden;
  overflow-x: hidden;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: url("../img/bg.jpg");
  background-position: top;
  background-size: cover;
  color: #000
}

@media(max-width: 767px) {
  body {
    font-size: min(4.1025641026vw, 20.5128205128px);
    line-height: 1.625;
    background-image: url("../img/bg_sp.jpg")
  }
}

body section {
  position: relative
}

body .inner {
  width: calc(100% - clamp(26.3543191801px, 2.9282576867vw, 40px));
  max-width: 1206px;
  margin-left: auto;
  margin-right: auto;
  position: relative
}

@media(max-width: 767px) {
  body .inner {
    width: calc(100% - min(10.2564102564vw, 51.2820512821px));
    max-width: 500px
  }
}

@media(max-width: 767px) {
  body .pc {
    display: none !important
  }
}

@media(min-width: 768px) {
  body .sp {
    display: none !important
  }
}

body a,
body button {
  border: none;
  cursor: pointer;
  transition: .3s
}

@media(any-hover: hover) {

  body a:hover,
  body button:hover {
    opacity: .6
  }
}

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

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

body .square_btn {
  padding: clamp(9.224011713px, 1.0248901903vw, 14px) clamp(39.5314787701px, 4.39238653vw, 60px) clamp(9.224011713px, 1.0248901903vw, 14px) clamp(13.17715959px, 1.4641288433vw, 20px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(11.859443631px, 1.317715959vw, 18px);
  font-weight: 700;
  position: relative;
  text-decoration: none;
  background: #000;
  color: #fff
}

@media(max-width: 767px) {
  body .square_btn {
    padding: min(3.0769230769vw, 15.3846153846px) min(11.5384615385vw, 57.6923076923px) min(3.3333333333vw, 16.6666666667px) min(5.641025641vw, 28.2051282051px);
    font-size: min(3.0769230769vw, 15.3846153846px)
  }
}

body .square_btn::before,
body .square_btn::after {
  content: "";
  margin: auto;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0
}

body .square_btn::before {
  width: clamp(14.494875549px, 1.6105417277vw, 22px);
  height: clamp(14.494875549px, 1.6105417277vw, 22px);
  right: clamp(16.4714494876px, 1.8301610542vw, 25px);
  background: #fff;
  border-radius: 50%
}

@media(max-width: 767px) {
  body .square_btn::before {
    width: min(4.6153846154vw, 23.0769230769px);
    height: min(4.6153846154vw, 23.0769230769px);
    right: min(4.1025641026vw, 20.5128205128px)
  }
}

body .square_btn::after {
  width: clamp(7.906295754px, 0.878477306vw, 12px);
  height: clamp(9.8828696925px, 1.0980966325vw, 15px);
  right: clamp(19.1068814056px, 2.1229868228vw, 29px);
  background-image: url("../img/icon_arrow.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain
}

@media(max-width: 767px) {
  body .square_btn::after {
    width: min(2.5641025641vw, 12.8205128205px);
    height: min(3.0769230769vw, 15.3846153846px);
    right: min(5.1282051282vw, 25.641025641px)
  }
}

header {
  width: 100%;
  position: absolute;
  top: clamp(52.7086383602px, 5.8565153734vw, 80px);
  left: 0;
  z-index: 99;
  translate: 0 -100%
}

@media(max-width: 850px) {
  header {
    position: fixed;
    top: 0;
    translate: 0
  }
}

header .inner {
  max-width: none;
  height: clamp(52.7086383602px, 5.8565153734vw, 80px);
  padding: clamp(6.588579795px, 0.7320644217vw, 10px) 0;
  display: flex;
  align-items: center;
  justify-content: space-between
}

@media(max-width: 850px) {
  header .inner {
    height: auto;
    padding: min(2.5641025641vw, 8.9743589744px) 0
  }
}

header .logo {
  width: clamp(48.0966325037px, 5.3440702782vw, 73px);
  flex-shrink: 0;
  position: relative
}

@media(max-width: 850px) {
  header .logo {
    width: min(12.8205128205vw, 44.8717948718px)
  }
}

header .logo .change_logo {
  margin: auto;
  opacity: 0;
  position: absolute;
  inset: 0
}

header .hamburger_btn {
  display: none
}

@media(max-width: 850px) {
  header .hamburger_btn {
    width: min(11.2820512821vw, 39.4871794872px);
    height: min(11.2820512821vw, 39.4871794872px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: min(1.0256410256vw, 3.5897435897px);
    right: max(-0.5128205128vw, -1.7948717949px);
    z-index: 1;
    background: none
  }
}

header .hamburger_btn span {
  width: min(10.2564102564vw, 35.8974358974px);
  height: min(0.7692307692vw, 2.6923076923px);
  display: block;
  position: absolute;
  right: min(0.5128205128vw, 1.7948717949px);
  background: #222;
  transition: .3s
}

header .hamburger_btn span:nth-of-type(1) {
  top: min(3.0769230769vw, 10.7692307692px)
}

header .hamburger_btn span:nth-of-type(2) {
  top: min(5.641025641vw, 19.7435897436px)
}

header .hamburger_btn span:nth-of-type(3) {
  top: min(8.2051282051vw, 28.7179487179px)
}

header .hamburger_btn.is-open span:nth-of-type(1) {
  top: min(6.1538461538vw, 21.5384615385px);
  rotate: 45deg
}

header .hamburger_btn.is-open span:nth-of-type(2) {
  opacity: 0
}

header .hamburger_btn.is-open span:nth-of-type(3) {
  top: min(6.1538461538vw, 21.5384615385px);
  rotate: -45deg
}

header .global_nav {
  display: grid;
  grid-template-areas: "global lang sns";
  align-items: center;
  justify-content: flex-end
}

@media(max-width: 850px) {
  header .global_nav {
    width: 100vw;
    height: 100dvh;
    padding: min(20.5128205128vw, 71.7948717949px) 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow-y: auto;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    visibility: hidden;
    background: #fff;
    transition: .3s
  }
}

header .global_nav.is-open {
  opacity: 1;
  visibility: visible
}

header .global_list {
  grid-area: global;
  display: flex;
  align-items: center;
  justify-content: center
}

@media(max-width: 850px) {
  header .global_list {
    width: min(76.9230769231vw, 269.2307692308px);
    margin: 0 auto min(20.5128205128vw, 71.7948717949px);
    display: block
  }
}

@media(max-width: 850px) {
  header .global_list li {
    text-align: center
  }
}

header .global_list li+li {
  margin-left: clamp(19.7657393851px, 2.196193265vw, 30px)
}

@media(max-width: 850px) {
  header .global_list li+li {
    margin: min(12.8205128205vw, 44.8717948718px) 0 0 0
  }
}

header .global_list a {
  font-size: clamp(10.541727672px, 1.1713030747vw, 16px);
  font-weight: 700;
  text-decoration: none;
  color: #000
}

@media(max-width: 850px) {
  header .global_list a {
    font-size: min(4.6153846154vw, 16.1538461538px)
  }
}

header .sns_list {
  grid-area: sns;
  margin-left: clamp(13.17715959px, 1.4641288433vw, 20px);
  display: flex;
  align-items: center;
  justify-content: center
}

@media(max-width: 850px) {
  header .sns_list {
    margin: 0 0 min(5.1282051282vw, 17.9487179487px) 0
  }
}

@media(max-width: 850px) {
  header .sns_list li {
    margin: 0 min(2.5641025641vw, 8.9743589744px)
  }
}

@media(min-width: 851px) {
  header .sns_list li+li {
    margin-left: clamp(11.859443631px, 1.317715959vw, 18px)
  }
}

header .sns_list img {
  height: clamp(19.7657393851px, 2.196193265vw, 30px);
  -o-object-fit: contain;
  object-fit: contain
}

@media(max-width: 850px) {
  header .sns_list img {
    height: min(7.6923076923vw, 26.9230769231px)
  }
}

header .lang_list {
  grid-area: lang;
  margin-left: clamp(26.3543191801px, 2.9282576867vw, 40px);
  display: flex;
  align-items: center;
  justify-content: flex-end
}

@media(max-width: 850px) {
  header .lang_list {
    margin: 0;
    justify-content: center
  }
}

header .lang_list li {
  font-size: clamp(11.859443631px, 1.317715959vw, 18px);
  font-weight: 700
}

@media(max-width: 850px) {
  header .lang_list li {
    font-size: min(4.6153846154vw, 16.1538461538px)
  }
}

header .lang_list li+li::before {
  content: "|";
  margin: 0 .25em
}

header .lang_list .current {
  pointer-events: none
}

header .lang_list a {
  text-decoration: none
}

header.is-fixed {
  position: fixed;
  top: 0;
  background: #fff;
  transition: translate .3s, background .3s
}

header.is-fixed .logo img:not[class] {
  opacity: 0
}

header.is-fixed .logo .change_logo {
  opacity: 1
}

header.is-visible {
  translate: 0 0
}

footer {
  padding-bottom: clamp(13.17715959px, 1.4641288433vw, 20px);
  position: relative
}

@media(max-width: 767px) {
  footer {
    padding-bottom: min(5.1282051282vw, 25.641025641px)
  }
}

footer::before {
  content: "";
  width: clamp(487.5549048316px, 54.1727672035vw, 740px);
  height: clamp(390.7027818448px, 43.411420205vw, 593px);
  display: block;
  pointer-events: none;
  position: absolute;
  top: clamp(-295px, -21.5959004392vw, -194.3631039531px);
  right: calc(50% - clamp(583.0893118594px, 64.7877013177vw, 885px));
  rotate: -20deg;
  z-index: -1;
  background-image: url("../img/bg_deco.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain
}

@media(max-width: 767px) {
  footer::before {
    width: min(100vw, 500px);
    height: min(80.5128205128vw, 402.5641025641px);
    top: auto;
    bottom: max(-14.1025641026vw, -70.5128205128px);
    right: calc(50% - min(110.5128205128vw, 552.5641025641px))
  }
}

footer .logo {
  width: clamp(98.1698389458px, 10.9077598829vw, 149px);
  margin: 0 auto clamp(13.17715959px, 1.4641288433vw, 20px)
}

@media(max-width: 767px) {
  footer .logo {
    width: min(38.2051282051vw, 191.0256410256px);
    margin: 0 auto min(6.1538461538vw, 30.7692307692px)
  }
}

footer small {
  display: block;
  font-size: clamp(12px, 1.1713030747vw, 16px);
  text-align: center
}

@media(max-width: 767px) {
  footer small {
    font-size: min(4.1025641026vw, 20.5128205128px)
  }
}

body.home section.mainvis {
  margin-bottom: clamp(69.1800878477px, 7.6866764275vw, 105px)
}

@media(max-width: 767px) {
  body.home section.mainvis {
    margin-bottom: min(15.1282051282vw, 75.641025641px)
  }
}

body.home section.mainvis h1 {
  width: clamp(904.6120058565px, 100.5124450952vw, 1373px);
  margin-top: clamp(-155px, -11.3469985359vw, -102.1229868228px);
  position: relative;
  left: calc(50% - clamp(382.1376281113px, 42.4597364568vw, 580px))
}

@media(max-width: 767px) {
  body.home section.mainvis h1 {
    width: min(194.8717948718vw, 974.358974359px);
    margin: max(-3.5897435897vw, -17.9487179487px) 0 max(-1.7948717949vw, -8.9743589744px);
    left: calc(50% - min(84.1025641026vw, 420.5128205128px))
  }
}

body.home section.mainvis .lead {
  width: clamp(716.8374816984px, 79.6486090776vw, 1088px);
  margin: 0 auto clamp(36.2371888726px, 4.0263543192vw, 55px);
  position: relative;
  left: clamp(-13px, -0.9516837482vw, -8.5651537335px)
}

@media(max-width: 767px) {
  body.home section.mainvis .lead {
    width: min(89.7435897436vw, 448.7179487179px);
    margin: 0 auto min(9.4871794872vw, 47.4358974359px);
    left: 0
  }
}

body.home section.mainvis .logo {
  width: clamp(382.1376281113px, 42.4597364568vw, 580px);
  margin: auto
}

@media(max-width: 767px) {
  body.home section.mainvis .logo {
    width: min(83.3333333333vw, 416.6666666667px)
  }
}

body.home section.news {
  margin-bottom: clamp(192.3865300146px, 21.3762811127vw, 292px)
}

@media(max-width: 767px) {
  body.home section.news {
    margin-bottom: min(17.6923076923vw, 88.4615384615px);
    background: #fff
  }
}

body.home section.news .inner {
  padding: clamp(49.4143484627px, 5.4904831625vw, 75px) clamp(54.6852122987px, 6.0761346999vw, 83px) clamp(40.8491947291px, 4.5387994143vw, 62px) clamp(68.5212298682px, 7.6134699854vw, 104px);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  background: #fff
}

@media(max-width: 767px) {
  body.home section.news .inner {
    padding: min(7.6923076923vw, 38.4615384615px) 0 min(8.9743589744vw, 44.8717948718px);
    display: block
  }
}

body.home section.news .ttl {
  margin-right: clamp(29.6486090776px, 3.2942898975vw, 45px);
  padding-top: clamp(25.6954612006px, 2.8550512445vw, 39px);
  flex-shrink: 0;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.news .ttl {
    margin: 0 0 min(7.6923076923vw, 38.4615384615px);
    padding: 0;
    text-align: left
  }
}

body.home section.news .ttl h2 {
  width: clamp(179.8682284041px, 19.9853587116vw, 273px);
  margin-bottom: clamp(27.0131771596px, 3.0014641288vw, 41px)
}

@media(max-width: 767px) {
  body.home section.news .ttl h2 {
    width: min(48.2051282051vw, 241.0256410256px);
    margin-bottom: min(3.3333333333vw, 16.6666666667px)
  }
}

body.home section.news .ttl .square_btn {
  padding: clamp(1.317715959px, 0.1464128843vw, 2px) clamp(34.2606149341px, 3.8067349927vw, 52px) clamp(1.317715959px, 0.1464128843vw, 2px) clamp(19.7657393851px, 2.196193265vw, 30px)
}

@media(max-width: 767px) {
  body.home section.news .ttl .square_btn {
    padding: min(1.5384615385vw, 7.6923076923px) min(12.5641025641vw, 62.8205128205px) min(1.5384615385vw, 7.6923076923px) min(5.3846153846vw, 26.9230769231px)
  }
}

body.home section.news .ttl .square_btn::before {
  right: clamp(11.859443631px, 1.317715959vw, 18px)
}

@media(max-width: 767px) {
  body.home section.news .ttl .square_btn::before {
    right: min(4.1025641026vw, 20.5128205128px)
  }
}

body.home section.news .ttl .square_btn::after {
  right: clamp(14.494875549px, 1.6105417277vw, 22px)
}

@media(max-width: 767px) {
  body.home section.news .ttl .square_btn::after {
    right: min(4.8717948718vw, 24.358974359px)
  }
}

body.home section.news .news_list_wrap {
  width: 100%;
  height: clamp(263.5431918009px, 29.2825768668vw, 400px);
  overflow-y: auto
}

@media(max-width: 767px) {
  body.home section.news .news_list_wrap {
    height: min(82.0512820513vw, 410.2564102564px)
  }
}

body.home section.news .news_list {
  border-top: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000;
  border-bottom: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000
}

@media(max-width: 767px) {
  body.home section.news .news_list {
    border-width: min(0.2564102564vw, 1.2820512821px)
  }
}

body.home section.news .news_list li+li {
  border-top: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000
}

@media(max-width: 767px) {
  body.home section.news .news_list li+li {
    border-width: min(0.2564102564vw, 1.2820512821px)
  }
}

body.home section.news .news_list a {
  padding: clamp(13.8360175695px, 1.5373352855vw, 21px) clamp(39.5314787701px, 4.39238653vw, 60px) clamp(13.8360175695px, 1.5373352855vw, 21px) clamp(13.17715959px, 1.4641288433vw, 20px);
  display: block;
  text-decoration: none
}

@media(max-width: 767px) {
  body.home section.news .news_list a {
    padding: min(3.3333333333vw, 16.6666666667px) min(6.6666666667vw, 33.3333333333px) min(3.0769230769vw, 15.3846153846px) 0;
    font-size: min(3.5897435897vw, 17.9487179487px);
    line-height: 1.5
  }
}

body.home section.news .news_list .date {
  display: block;
  font-weight: 700;
  letter-spacing: 0
}

@media(max-width: 767px) {
  body.home section.news .news_list .date {
    margin-bottom: min(0.5128205128vw, 2.5641025641px)
  }
}

body.home section.news .news_list .txt {
  display: block;
  letter-spacing: .07em;
  position: relative
}

@media(max-width: 767px) {
  body.home section.news .news_list .txt {
    letter-spacing: 0
  }
}

body.home section.news .news_list .txt::before,
body.home section.news .news_list .txt::after {
  content: "";
  margin: auto;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0
}

body.home section.news .news_list .txt::before {
  width: clamp(14.494875549px, 1.6105417277vw, 22px);
  height: clamp(14.494875549px, 1.6105417277vw, 22px);
  right: clamp(-30px, -2.196193265vw, -19.7657393851px);
  background: #000;
  border-radius: 50%
}

@media(max-width: 767px) {
  body.home section.news .news_list .txt::before {
    width: min(4.6153846154vw, 23.0769230769px);
    height: min(4.6153846154vw, 23.0769230769px);
    right: max(-6.4102564103vw, -32.0512820513px)
  }
}

body.home section.news .news_list .txt::after {
  width: clamp(7.906295754px, 0.878477306vw, 12px);
  height: clamp(9.8828696925px, 1.0980966325vw, 15px);
  right: clamp(-26px, -1.9033674963vw, -17.1303074671px);
  background: #fff;
  -webkit-mask-image: url("../img/icon_arrow.svg");
  mask-image: url("../img/icon_arrow.svg");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain
}

@media(max-width: 767px) {
  body.home section.news .news_list .txt::after {
    width: min(2.5641025641vw, 12.8205128205px);
    height: min(3.0769230769vw, 15.3846153846px);
    right: max(-5.3846153846vw, -26.9230769231px)
  }
}

body.home section.about {
  margin-bottom: clamp(142.3133235725px, 15.8125915081vw, 216px)
}

@media(max-width: 767px) {
  body.home section.about {
    margin-bottom: min(12.8205128205vw, 64.1025641026px)
  }
}

body.home section.about::before {
  content: "";
  width: clamp(849.9267935578px, 94.4363103953vw, 1290px);
  height: clamp(693.1185944363px, 77.0131771596vw, 1052px);
  display: block;
  pointer-events: none;
  position: absolute;
  top: calc(50% - clamp(32.9428989751px, 3.6603221083vw, 50px));
  left: calc(50% - clamp(26.3543191801px, 2.9282576867vw, 40px));
  translate: -50% -50%;
  z-index: -1;
  background-image: url("../img/about_bg.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain
}

@media(max-width: 767px) {
  body.home section.about::before {
    width: min(159.4871794872vw, 797.4358974359px);
    height: min(131.2820512821vw, 656.4102564103px);
    top: max(-35.1282051282vw, -175.641025641px);
    left: calc(50% - min(0.5128205128vw, 2.5641025641px));
    translate: -50% 0
  }
}

body.home section.about h2 {
  width: clamp(738.579795022px, 82.0644216691vw, 1121px);
  margin-bottom: clamp(38.2137628111px, 4.2459736457vw, 58px)
}

@media(max-width: 767px) {
  body.home section.about h2 {
    width: min(69.4871794872vw, 347.4358974359px);
    margin-bottom: min(20.7692307692vw, 103.8461538462px);
    position: relative;
    left: calc(50% - min(40.2564102564vw, 201.2820512821px))
  }
}

@media(max-width: 767px) {
  body.home section.about h2 img {
    width: 100%
  }
}

body.home section.about .lead {
  margin-bottom: clamp(19.7657393851px, 2.196193265vw, 30px);
  font-size: clamp(16.4714494876px, 1.8301610542vw, 25px);
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1.84;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.about .lead {
    margin-bottom: min(6.9230769231vw, 34.6153846154px);
    font-size: min(4.358974359vw, 21.7948717949px);
    line-height: 1.5882352941;
    text-align: left
  }
}

body.home section.about .intro {
  font-size: clamp(13.17715959px, 1.4641288433vw, 20px);
  line-height: 1.9;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.about .intro {
    font-size: min(4.1025641026vw, 20.5128205128px);
    line-height: 1.5
  }
}

body.home section.policy {
  margin-bottom: clamp(59.2972181552px, 6.588579795vw, 90px)
}

@media(max-width: 767px) {
  body.home section.policy {
    margin-bottom: min(18.4615384615vw, 92.3076923077px);
    background: #fff
  }
}

body.home section.policy .inner {
  padding: clamp(61.9326500732px, 6.8814055637vw, 94px) clamp(44.1434846266px, 4.9048316252vw, 67px) clamp(43.4846266471px, 4.831625183vw, 66px);
  background: #fff
}

@media(max-width: 767px) {
  body.home section.policy .inner {
    padding: min(7.6923076923vw, 38.4615384615px) 0 min(15.3846153846vw, 76.9230769231px)
  }
}

body.home section.policy .group {
  width: clamp(647.6573938507px, 71.9619326501vw, 983px);
  margin: 0 auto clamp(25.0366032211px, 2.7818448023vw, 38px);
  position: relative
}

@media(max-width: 767px) {
  body.home section.policy .group {
    width: min(94.1025641026vw, 470.5128205128px);
    margin: 0 0 min(6.9230769231vw, 34.6153846154px);
    left: calc(50% - min(47.9487179487vw, 239.7435897436px))
  }
}

body.home section.policy .lead {
  margin-bottom: clamp(70.4978038067px, 7.8330893119vw, 107px);
  font-size: clamp(17.7891654466px, 1.9765739385vw, 27px);
  font-weight: 700;
  line-height: 1.8888888889;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.policy .lead {
    margin-bottom: min(15.1282051282vw, 75.641025641px);
    font-size: min(4.1025641026vw, 20.5128205128px);
    letter-spacing: .12em;
    line-height: 1.6875;
    text-align: left
  }
}

body.home section.policy h2 {
  margin-bottom: clamp(17.1303074671px, 1.9033674963vw, 26px);
  font-size: clamp(23.0600292826px, 2.5622254758vw, 35px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.policy h2 {
    margin-bottom: min(2.8205128205vw, 14.1025641026px);
    font-size: min(5.641025641vw, 28.2051282051px)
  }
}

body.home section.policy .intro {
  margin-bottom: clamp(46.1200585652px, 5.1244509517vw, 70px);
  font-size: clamp(12px, 1.1713030747vw, 16px);
  line-height: 1.8125;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.policy .intro {
    margin-bottom: min(10.7692307692vw, 53.8461538462px);
    font-size: min(4.1025641026vw, 20.5128205128px);
    text-align: left
  }
}

body.home section.policy .policy_list {
  margin-bottom: clamp(55.3440702782px, 6.149341142vw, 84px);
  display: flex;
  align-items: stretch;
  justify-content: space-between
}

@media(max-width: 767px) {
  body.home section.policy .policy_list {
    margin-bottom: min(14.358974359vw, 71.7948717949px);
    flex-wrap: wrap
  }
}

body.home section.policy .policy_list>li {
  width: 23.8%;
  display: flex;
  flex-direction: column;
  background: #c89e45
}

@media(max-width: 767px) {
  body.home section.policy .policy_list>li {
    width: 48%
  }
}

@media(max-width: 767px) {
  body.home section.policy .policy_list>li:nth-of-type(n + 3) {
    margin-top: min(3.0769230769vw, 15.3846153846px)
  }
}

body.home section.policy .policy_list .ttl {
  padding: clamp(29.6486090776px, 3.2942898975vw, 45px) 0 clamp(30.3074670571px, 3.3674963397vw, 46px);
  font-size: clamp(13.8360175695px, 1.5373352855vw, 21px);
  font-weight: 700;
  line-height: 1.4285714286;
  text-align: center;
  color: #fff
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .ttl {
    padding: min(7.6923076923vw, 38.4615384615px) 0 min(6.6666666667vw, 33.3333333333px);
    font-size: min(3.8461538462vw, 19.2307692308px);
    line-height: 1.5333333333;
    letter-spacing: .07em
  }
}

body.home section.policy .policy_list .ttl .num {
  margin-bottom: clamp(17.7891654466px, 1.9765739385vw, 27px);
  display: block;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .ttl .num {
    margin-bottom: min(4.1025641026vw, 20.5128205128px)
  }
}

body.home section.policy .policy_list .ttl .num img {
  height: clamp(40.1903367496px, 4.4655929722vw, 61px);
  -o-object-fit: contain;
  object-fit: contain
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .ttl .num img {
    height: min(10.2564102564vw, 51.2820512821px)
  }
}

body.home section.policy .policy_list .plan {
  margin-bottom: clamp(-30px, -2.196193265vw, -19.7657393851px);
  padding: clamp(27.0131771596px, 3.0014641288vw, 41px) 0 clamp(26.3543191801px, 2.9282576867vw, 40px);
  font-size: clamp(13.8360175695px, 1.5373352855vw, 21px);
  font-weight: 700;
  line-height: 1.4285714286;
  text-align: center;
  background: #e6c666;
  color: #fff;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% clamp(16.4714494876px, 1.8301610542vw, 25px));
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% clamp(16.4714494876px, 1.8301610542vw, 25px))
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .plan {
    margin-bottom: max(-5.1282051282vw, -25.641025641px);
    padding: min(7.6923076923vw, 38.4615384615px) 0 min(7.4358974359vw, 37.1794871795px);
    font-size: min(3.8461538462vw, 19.2307692308px);
    -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% min(4.358974359vw, 21.7948717949px));
    clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% min(4.358974359vw, 21.7948717949px))
  }
}

body.home section.policy .policy_list .project {
  padding: clamp(28.3308931186px, 3.1478770132vw, 43px) clamp(6.588579795px, 0.7320644217vw, 10px) clamp(19.7657393851px, 2.196193265vw, 30px);
  display: flex;
  flex: 1;
  align-items: center;
  background: #fff5d8;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% clamp(16.4714494876px, 1.8301610542vw, 25px));
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% clamp(16.4714494876px, 1.8301610542vw, 25px))
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .project {
    min-height: min(62.0512820513vw, 310.2564102564px);
    padding: min(6.6666666667vw, 33.3333333333px) min(1.2820512821vw, 6.4102564103px) min(5.1282051282vw, 25.641025641px);
    -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% min(4.358974359vw, 21.7948717949px));
    clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 0, 50% min(4.358974359vw, 21.7948717949px))
  }
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .project ul {
    margin: auto
  }
}

body.home section.policy .policy_list .project li+li {
  margin-top: clamp(15.8125915081px, 1.756954612vw, 24px)
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .project li+li {
    margin-top: min(3.5897435897vw, 17.9487179487px)
  }
}

body.home section.policy .policy_list .project p {
  margin-bottom: clamp(2.635431918px, 0.2928257687vw, 4px);
  font-size: clamp(7.906295754px, 0.878477306vw, 12px);
  font-weight: 700;
  line-height: 1.5
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .project p {
    margin-bottom: 0;
    font-size: min(2.8205128205vw, 14.1025641026px);
    letter-spacing: -0.02em;
    line-height: 1.3636363636
  }
}

body.home section.policy .policy_list .project img {
  width: 100%;
  height: clamp(19.1068814056px, 2.1229868228vw, 29px);
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: left;
  object-position: left
}

@media(max-width: 767px) {
  body.home section.policy .policy_list .project img {
    height: min(4.8717948718vw, 24.358974359px)
  }
}

body.home section.policy .square_btn {
  left: 50%;
  translate: -50% 0
}

body.home section.message {
  margin-bottom: clamp(59.2972181552px, 6.588579795vw, 90px)
}

@media(max-width: 767px) {
  body.home section.message {
    margin-bottom: min(13.3333333333vw, 66.6666666667px)
  }
}

body.home section.message::before,
body.home section.message::after {
  content: "";
  display: block;
  pointer-events: none;
  position: absolute;
  z-index: -1;
  background-image: url("../img/bg_deco.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain
}

body.home section.message::before {
  width: clamp(621.3030746706px, 69.0336749634vw, 943px);
  height: clamp(498.7554904832px, 55.4172767204vw, 757px);
  top: clamp(-611px, -44.729136164vw, -402.5622254758px);
  right: calc(50% - clamp(743.1918008785px, 82.5768667643vw, 1128px));
  rotate: 15deg
}

@media(max-width: 767px) {
  body.home section.message::before {
    width: min(122.3076923077vw, 611.5384615385px);
    height: min(98.2051282051vw, 491.0256410256px);
    top: max(-63.3333333333vw, -316.6666666667px);
    right: calc(50% - min(125.641025641vw, 628.2051282051px))
  }
}

body.home section.message::after {
  width: clamp(564.6412884334px, 62.737920937vw, 857px);
  height: clamp(451.9765739385px, 50.2196193265vw, 686px);
  bottom: clamp(-350px, -25.6222547584vw, -230.6002928258px);
  left: calc(50% - clamp(757.6866764275px, 84.1874084919vw, 1150px))
}

@media(max-width: 767px) {
  body.home section.message::after {
    width: min(103.3333333333vw, 516.6666666667px);
    height: min(82.8205128205vw, 414.1025641026px);
    bottom: max(-16.9230769231vw, -84.6153846154px);
    left: calc(50% - min(94.1025641026vw, 470.5128205128px));
    rotate: 11deg
  }
}

body.home section.message h2 {
  margin-bottom: clamp(59.2972181552px, 6.588579795vw, 90px);
  text-align: center
}

@media(max-width: 767px) {
  body.home section.message h2 {
    margin-bottom: min(11.2820512821vw, 56.4102564103px)
  }
}

body.home section.message h2 img {
  width: clamp(389.3850658858px, 43.2650073206vw, 591px)
}

@media(max-width: 767px) {
  body.home section.message h2 img {
    width: min(89.7435897436vw, 448.7179487179px)
  }
}

body.home section.message .img {
  width: clamp(671.3762811127px, 74.5973645681vw, 1019px);
  margin: 0 auto clamp(139.019033675px, 15.4465592972vw, 211px)
}

@media(max-width: 767px) {
  body.home section.message .img {
    width: min(90vw, 450px);
    margin-bottom: min(53.0769230769vw, 265.3846153846px)
  }
}

body.home section.message .sign {
  width: clamp(89.6046852123px, 9.9560761347vw, 136px);
  pointer-events: none;
  position: absolute;
  bottom: clamp(22.4011713031px, 2.4890190337vw, 34px);
  right: clamp(91.5812591508px, 10.1756954612vw, 139px);
  rotate: 17deg
}

@media(max-width: 767px) {
  body.home section.message .sign {
    width: min(24.1025641026vw, 120.5128205128px);
    bottom: min(15.3846153846vw, 76.9230769231px);
    right: min(2.8205128205vw, 14.1025641026px)
  }
}

body.home section.message .square_btn {
  left: 50%;
  translate: -50% 0
}

body.home section.partner {
  margin-bottom: clamp(113.3235724744px, 12.5915080527vw, 172px)
}

@media(max-width: 767px) {
  body.home section.partner {
    margin-bottom: min(26.9230769231vw, 134.6153846154px);
    background: #fff
  }
}

body.home section.partner::before {
  content: "";
  width: clamp(513.2503660322px, 57.027818448vw, 779px);
  height: clamp(411.1273792094px, 45.6808199122vw, 624px);
  display: block;
  pointer-events: none;
  position: absolute;
  bottom: clamp(-283px, -20.7174231332vw, -186.4568081991px);
  left: calc(50% - clamp(654.2459736457px, 72.6939970717vw, 993px));
  rotate: -20deg;
  z-index: -1;
  background-image: url("../img/bg_deco.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain
}

@media(max-width: 767px) {
  body.home section.partner::before {
    width: min(111.2820512821vw, 556.4102564103px);
    height: min(89.7435897436vw, 448.7179487179px);
    bottom: max(-40.2564102564vw, -201.2820512821px);
    left: calc(50% - min(92.8205128205vw, 464.1025641026px))
  }
}

body.home section.partner .inner {
  padding: clamp(54.0263543192px, 6.0029282577vw, 82px) clamp(51.3909224012px, 5.710102489vw, 78px) clamp(49.4143484627px, 5.4904831625vw, 75px);
  background: #fff
}

@media(max-width: 767px) {
  body.home section.partner .inner {
    padding: min(12.3076923077vw, 61.5384615385px) 0 min(11.0256410256vw, 55.1282051282px)
  }
}

body.home section.partner h2 {
  margin-bottom: clamp(22.4011713031px, 2.4890190337vw, 34px);
  font-size: clamp(23.0600292826px, 2.5622254758vw, 35px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.partner h2 {
    margin-bottom: min(7.9487179487vw, 39.7435897436px);
    font-size: min(7.9487179487vw, 39.7435897436px)
  }
}

body.home section.partner .intro {
  margin-bottom: clamp(25.0366032211px, 2.7818448023vw, 38px);
  font-size: clamp(13.17715959px, 1.4641288433vw, 20px);
  line-height: 1.9;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.partner .intro {
    margin-bottom: min(4.358974359vw, 21.7948717949px);
    font-size: min(4.1025641026vw, 20.5128205128px);
    line-height: 1.8125;
    text-align: left
  }
}

body.home section.partner .img {
  width: clamp(610.7613469985px, 67.8623718887vw, 927px);
  margin: 0 auto clamp(26.3543191801px, 2.9282576867vw, 40px)
}

@media(max-width: 767px) {
  body.home section.partner .img {
    width: min(97.4358974359vw, 487.1794871795px);
    margin: 0 0 min(8.9743589744vw, 44.8717948718px);
    position: relative;
    left: calc(50% - min(48.4615384615vw, 242.3076923077px))
  }
}

body.home section.partner .partner_list {
  margin-bottom: clamp(54.6852122987px, 6.0761346999vw, 83px);
  display: flex;
  align-items: flex-start;
  justify-content: space-between
}

@media(max-width: 767px) {
  body.home section.partner .partner_list {
    margin-bottom: min(14.8717948718vw, 74.358974359px);
    display: block
  }
}

body.home section.partner .partner_list>div {
  width: 48%
}

@media(max-width: 767px) {
  body.home section.partner .partner_list>div {
    width: 100%
  }
}

@media(max-width: 767px) {
  body.home section.partner .partner_list>div+div {
    margin-top: min(5.641025641vw, 28.2051282051px)
  }
}

body.home section.partner .partner_list dt {
  margin-bottom: clamp(11.2005856515px, 1.2445095168vw, 17px);
  display: flex;
  align-items: stretch;
  justify-content: space-between
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dt {
    margin-bottom: min(4.8717948718vw, 24.358974359px)
  }
}

body.home section.partner .partner_list dt span {
  padding: clamp(5.270863836px, 0.5856515373vw, 8px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(11.859443631px, 1.317715959vw, 18px);
  font-weight: 700;
  color: #fff
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dt span {
    padding: min(1.0256410256vw, 5.1282051282px);
    letter-spacing: -0.02em;
    font-size: min(4.358974359vw, 21.7948717949px)
  }
}

body.home section.partner .partner_list dt span:nth-of-type(1) {
  width: 54%;
  margin-right: -6%
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dt span:nth-of-type(1) {
    padding-right: 5%
  }
}

body.home section.partner .partner_list dt span:nth-of-type(2) {
  width: 52%;
  padding-left: 5%;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%, 10% 50%, 0 0);
  clip-path: polygon(100% 0, 100% 100%, 0 100%, 10% 50%, 0 0)
}

body.home section.partner .partner_list dt .your {
  background: #c89e45
}

body.home section.partner .partner_list dt .our {
  background: #e6c666
}

body.home section.partner .partner_list dd {
  font-size: clamp(13.17715959px, 1.4641288433vw, 20px);
  line-height: 1.5
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dd {
    font-size: min(4.1025641026vw, 20.5128205128px);
    line-height: 1.5625
  }
}

body.home section.partner .partner_list dd ul {
  margin-bottom: clamp(7.906295754px, 0.878477306vw, 12px)
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dd ul {
    margin-bottom: min(2.0512820513vw, 10.2564102564px)
  }
}

body.home section.partner .partner_list dd li {
  padding-left: 1em;
  text-indent: -1em
}

body.home section.partner .partner_list dd li::before {
  content: "・"
}

body.home section.partner .partner_list dd li+li {
  margin-top: clamp(7.906295754px, 0.878477306vw, 12px)
}

@media(max-width: 767px) {
  body.home section.partner .partner_list dd li+li {
    margin-top: min(2.0512820513vw, 10.2564102564px)
  }
}

@media(min-width: 768px) {
  body.home section.partner .partner_list div:nth-of-type(2) dd {
    font-size: clamp(11.859443631px, 1.317715959vw, 18px);
    line-height: 1.5
  }
}

body.home section.partner .square_btn {
  padding: clamp(10.541727672px, 1.1713030747vw, 16px) clamp(55.3440702782px, 6.149341142vw, 84px);
  flex-direction: column;
  left: 50%;
  translate: -50% 0
}

@media(max-width: 767px) {
  body.home section.partner .square_btn {
    padding: min(2.3076923077vw, 11.5384615385px) min(9.2307692308vw, 46.1538461538px) min(2.5641025641vw, 12.8205128205px) min(3.8461538462vw, 19.2307692308px)
  }
}

@media(max-width: 767px) {
  body.home section.partner .square_btn::before {
    right: min(1.7948717949vw, 8.9743589744px)
  }
}

@media(max-width: 767px) {
  body.home section.partner .square_btn::after {
    right: min(2.8205128205vw, 14.1025641026px)
  }
}

body.home section.partner .square_btn span {
  margin-bottom: clamp(5.9297218155px, 0.6588579795vw, 9px);
  padding-bottom: clamp(6.588579795px, 0.7320644217vw, 10px);
  display: block;
  border-bottom: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #fff
}

@media(max-width: 767px) {
  body.home section.partner .square_btn span {
    margin-bottom: min(1.7948717949vw, 8.9743589744px);
    padding-bottom: min(1.7948717949vw, 8.9743589744px);
    font-size: min(3.3333333333vw, 16.6666666667px)
  }
}

body.home section.corp {
  margin-bottom: clamp(43.4846266471px, 4.831625183vw, 66px)
}

@media(max-width: 767px) {
  body.home section.corp {
    margin-bottom: min(10.2564102564vw, 51.2820512821px);
    background: #fff
  }
}

body.home section.corp .inner {
  padding: clamp(42.8257686676px, 4.7584187408vw, 65px) clamp(32.2840409956px, 3.5871156662vw, 49px) clamp(64.5680819912px, 7.1742313324vw, 98px);
  background: #fff
}

@media(max-width: 767px) {
  body.home section.corp .inner {
    padding: min(14.358974359vw, 71.7948717949px) 0 min(14.1025641026vw, 70.5128205128px)
  }
}

body.home section.corp h2 {
  margin-bottom: clamp(28.9897510981px, 3.2210834553vw, 44px);
  font-size: clamp(26.3543191801px, 2.9282576867vw, 40px);
  font-weight: 700;
  text-align: center
}

@media(max-width: 767px) {
  body.home section.corp h2 {
    margin-bottom: min(8.4615384615vw, 42.3076923077px);
    font-size: min(6.6666666667vw, 33.3333333333px)
  }
}

body.home section.corp dl {
  margin-bottom: clamp(32.9428989751px, 3.6603221083vw, 50px);
  border-top: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000;
  border-bottom: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000
}

@media(max-width: 767px) {
  body.home section.corp dl {
    margin-bottom: min(10.2564102564vw, 51.2820512821px);
    border-width: min(0.2564102564vw, 1.2820512821px)
  }
}

body.home section.corp dl div {
  min-height: clamp(79.0629575403px, 8.78477306vw, 120px);
  padding: clamp(18.4480234261px, 2.0497803807vw, 28px) clamp(46.1200585652px, 5.1244509517vw, 70px) clamp(18.4480234261px, 2.0497803807vw, 28px) clamp(26.3543191801px, 2.9282576867vw, 40px);
  display: flex;
  align-items: center;
  justify-content: flex-start
}

@media(max-width: 767px) {
  body.home section.corp dl div {
    min-height: 0;
    padding: min(5.8974358974vw, 29.4871794872px) min(2.5641025641vw, 12.8205128205px) min(6.6666666667vw, 33.3333333333px);
    display: block
  }
}

body.home section.corp dl div+div {
  border-top: clamp(0.6588579795px, 0.0732064422vw, 1px) solid #000
}

@media(max-width: 767px) {
  body.home section.corp dl div+div {
    border-width: min(0.2564102564vw, 1.2820512821px)
  }
}

body.home section.corp dl dt {
  width: clamp(105.4172767204px, 11.7130307467vw, 160px);
  flex-shrink: 0;
  font-weight: 700;
  line-height: 1.6875
}

@media(max-width: 767px) {
  body.home section.corp dl dt {
    width: 100%;
    margin-bottom: min(2.5641025641vw, 12.8205128205px)
  }
}

body.home section.corp dl dd {
  width: 100%
}

body.home section.corp .square_btn {
  left: 50%;
  translate: -50% 0
}

body.news {
  background: none
}

@media(min-width: 768px) {
  body.news header {
    position: static;
    translate: 0
  }
}

body.news main {
  max-width: 1050px;
  padding: clamp(46.1200585652px, 5.1244509517vw, 70px) 0 clamp(65.8857979502px, 7.3206442167vw, 100px)
}

@media(max-width: 767px) {
  body.news main {
    padding: min(25.641025641vw, 128.2051282051px) 0 min(15.3846153846vw, 76.9230769231px)
  }
}

body.news .news_ttl {
  margin-bottom: clamp(23.0600292826px, 2.5622254758vw, 35px);
  font-size: clamp(23.0600292826px, 2.5622254758vw, 35px);
  font-weight: 700;
  text-align: center
}

@media(max-width: 767px) {
  body.news .news_ttl {
    margin-bottom: min(5.1282051282vw, 25.641025641px);
    font-size: min(6.6666666667vw, 33.3333333333px)
  }
}

body.news .news_date {
  margin-bottom: clamp(23.0600292826px, 2.5622254758vw, 35px);
  font-size: clamp(10.541727672px, 1.1713030747vw, 16px);
  text-align: right
}

@media(max-width: 767px) {
  body.news .news_date {
    margin-bottom: min(5.1282051282vw, 25.641025641px);
    font-size: min(3.5897435897vw, 17.9487179487px)
  }
}

body.news .news_content>*+* {
  margin-top: clamp(13.17715959px, 1.4641288433vw, 20px)
}

@media(max-width: 767px) {
  body.news .news_content>*+* {
    margin-top: min(5.1282051282vw, 25.641025641px)
  }
}

body.news .news_content a:not([class]) {
  text-decoration: underline;
  color: #b4892d
}

body.news .news_content .img {
  max-width: 832px;
  margin: clamp(26.3543191801px, 2.9282576867vw, 40px) auto;
  text-align: center
}

@media(max-width: 767px) {
  body.news .news_content .img {
    margin: min(7.6923076923vw, 38.4615384615px) auto
  }
}

body.news .news_content .movie {
  max-width: 832px;
  margin: clamp(26.3543191801px, 2.9282576867vw, 40px) auto
}

@media(max-width: 767px) {
  body.news .news_content .movie {
    margin: min(7.6923076923vw, 38.4615384615px) auto
  }
}

body.news .news_content .movie iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9
}

body.news .news_content .square_btn {
  margin: clamp(26.3543191801px, 2.9282576867vw, 40px) auto;
  left: 50%;
  translate: -50% 0
}

@media(max-width: 767px) {
  body.news .news_content .square_btn {
    margin: min(7.6923076923vw, 38.4615384615px) auto
  }
}

body.news footer::before {
  content: none
}