@charset "UTF-8";
/* 変数の定義
--------------------------------------------------*/
/* 色の定義
--------------------------------------------------*/
/* 色のクラス
--------------------------------------------------*/
.white {
  color: #fff;
}

.black {
  color: #000;
}

.blue {
  color: #0068B5;
}

.yellow {
  color: #E6F21E;
}

/* フォントの定義
--------------------------------------------------*/
html,
body,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
img,
svg,
table,
tr,
th,
td,
a,
figure {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.8;
  color: #000;
}

body,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
img,
svg,
a,
table,
tr,
th,
td,
figure {
  font-size: clamp(1.6rem, 1vw, 1vw);
}
@media screen and (max-width: 999px) {
  body,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
img,
svg,
a,
table,
tr,
th,
td,
figure {
    font-size: 1.4rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: 0.08em;
  line-height: 1.4;
  font-weight: 800;
}

.en {
  font-family: "toppan-bunkyu-midashi-go-std", sans-serif;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.4;
}

.midashi {
  font-family: "toppan-bunkyu-midashi-go-std", sans-serif;
  font-weight: 800;
  line-height: 1.4;
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 共通
--------------------------------------------------*/
body {
  word-break: break-word;
}

a {
  transition-duration: 0.3s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
}

span {
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
}

main {
  overflow: hidden;
}

section {
  position: relative;
  z-index: 1;
}

/* 下層KV
--------------------------------------------------*/
.kv_under {
  background-color: #0068B5;
  background-image: url(../img/common/deco_light_kv_under.svg);
  background-repeat: no-repeat;
  background-position: right -3% top 110px;
  background-size: 53% auto;
  padding-top: 210px;
  padding-bottom: 70px;
}
@media screen and (max-width: 999px) {
  .kv_under {
    padding-top: 140px;
    padding-bottom: 80px;
  }
}
@media screen and (max-width: 750px) {
  .kv_under {
    background-image: none;
  }
}
@media screen and (max-width: 449px) {
  .kv_under {
    padding-bottom: calc(50px + 6.66vw);
  }
}
.kv_under:empty {
  padding-top: 110px;
  background-image: none;
}
@media screen and (max-width: 999px) {
  .kv_under:empty {
    padding-top: 80px;
  }
}
.kv_under .kv_parent {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 30px;
  color: #fff;
  letter-spacing: 0.08em;
  font-size: clamp(2rem, 2.18vw, 2.18vw);
}
@media screen and (max-width: 999px) {
  .kv_under .kv_parent {
    font-size: clamp(1.6rem, 2.13vw, 2.13vw);
  }
}
.kv_under .kv_parent::after {
  content: "";
  position: absolute;
  right: -0.2em;
  top: 50%;
  transform: translate(100%, -50%);
  display: block;
  width: 50px;
  height: auto;
  aspect-ratio: 17/14;
  background-image: url(../img/common/deco_light_right.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}
.kv_under .kv_title {
  font-size: clamp(7rem, 4.37vw, 4.37vw);
  line-height: 1.3;
  color: #fff;
  margin-bottom: 30px;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1399px) {
  .kv_under .kv_title {
    font-size: clamp(5rem, 5vw, 5vw);
  }
}
@media screen and (max-width: 999px) {
  .kv_under .kv_title {
    font-size: clamp(3rem, 4vw, 4vw);
  }
}
.kv_under .breadcrumb {
  overflow: hidden;
  height: 1.8em;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #fff;
}
.kv_under .breadcrumb li,
.kv_under .breadcrumb a,
.kv_under .breadcrumb p {
  color: #fff;
  font-size: clamp(1.4rem, 1vw, 1vw);
}
@media screen and (max-width: 999px) {
  .kv_under .breadcrumb li,
.kv_under .breadcrumb a,
.kv_under .breadcrumb p {
    font-size: clamp(1.2rem, 1.6vw, 1.6vw);
  }
}
.kv_under .breadcrumb a:hover {
  color: #E6F21E;
}
.kv_under .breadcrumb a:hover p {
  transition-duration: 0.3s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  color: #E6F21E;
}
.kv_under .breadcrumb a:hover .child::after {
  background-color: #E6F21E;
}
.kv_under .breadcrumb li {
  position: relative;
  display: inline;
  margin-left: clamp(15px, 1vw, 1vw);
  margin-right: clamp(15px, 1vw, 1vw);
}
@media screen and (max-width: 999px) {
  .kv_under .breadcrumb li {
    margin-left: 12.5px;
    margin-right: 12.5px;
  }
}
.kv_under .breadcrumb li::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: calc(clamp(-15px, -1vw, -1vw) - 2.5px);
  display: block;
  width: clamp(5px, 0.31vw, 0.31vw);
  height: clamp(5px, 0.31vw, 0.31vw);
  background-color: #E6F21E;
  border-radius: 50%;
}
@media screen and (max-width: 999px) {
  .kv_under .breadcrumb li::before {
    right: -15px;
  }
}
.kv_under .breadcrumb li:first-child {
  margin-left: 0;
}
.kv_under .breadcrumb li:last-child {
  margin-right: 0;
}
.kv_under .breadcrumb li:last-child::before {
  display: none;
}
.kv_under .breadcrumb li p {
  display: inline;
}
.kv_under .breadcrumb .current {
  position: relative;
}
.kv_under .breadcrumb .current::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  display: block;
  width: 100%;
  height: 1px;
  background-color: #fff;
}
.kv_under .breadcrumb .child {
  position: relative;
  padding-left: 20px;
}
.kv_under .breadcrumb .child::after {
  transition-duration: 0.3s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
  content: "";
  position: absolute;
  left: 2px;
  top: 50%;
  display: inline-block;
  width: clamp(10px, 0.62vw, 0.62vw);
  height: 1px;
  background-color: #fff;
}
.kv_under .kv_inner {
  position: relative;
}
.kv_under .kv_inner:has(.kv_img) {
  min-height: calc(25.31vw + 50px);
  margin-bottom: 80px;
}
@media screen and (max-width: 999px) {
  .kv_under .kv_inner:has(.kv_img) {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  .kv_under .kv_inner:has(.kv_img) {
    min-height: 0;
  }
}
.kv_under .list_inpage {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: clamp(270px, 16.87vw, 16.87vw);
  background-color: #fff;
  margin: 10px 0 0 auto;
  padding: 25px;
  z-index: 10;
  -webkit-animation: 0.6s ease forwards fadein;
          animation: 0.6s ease forwards fadein;
}
@media screen and (max-width: 750px) {
  .kv_under .list_inpage {
    display: none;
  }
}
.kv_under .list_inpage li,
.kv_under .list_inpage a {
  font-size: clamp(1.4rem, 1vw, 1vw);
  line-height: 1.5;
}
.kv_under .list_inpage li {
  margin-top: 0.5em;
}
.kv_under .list_inpage li:first-child {
  margin-top: 0;
}
.kv_under .list_inpage a:hover {
  opacity: 0.5;
}
.kv_under .kv_img {
  position: absolute;
  left: 0;
  top: 50px;
  width: 100%;
  aspect-ratio: 280/81;
  z-index: 0;
}
@media screen and (max-width: 750px) {
  .kv_under .kv_img {
    position: relative;
    top: auto;
    height: 208px;
    aspect-ratio: initial;
    margin-top: 40px;
  }
}
@media screen and (max-width: 389px) {
  .kv_under .kv_img {
    aspect-ratio: 175/104;
    height: auto;
  }
}
.kv_under .kv_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.kv_under:has(.kv_post) {
  margin-bottom: -150px;
  padding-bottom: 0;
}
@media screen and (max-width: 999px) {
  .kv_under:has(.kv_post) {
    margin-bottom: -100px;
  }
}
@media screen and (max-width: 750px) {
  .kv_under:has(.kv_post) {
    margin-bottom: -80px;
  }
}
.kv_under:has(.kv_post) .w_common .kv_inner {
  min-height: 25.31vw;
  margin-bottom: 0;
}
@media screen and (max-width: 750px) {
  .kv_under:has(.kv_post) .w_common .kv_inner {
    min-height: 0;
  }
}
.kv_under:has(.kv_post) .kv_img {
  top: 0;
  z-index: 10;
}
@media screen and (max-width: 750px) {
  .kv_under:has(.kv_post) .kv_img {
    margin-top: 0;
  }
}
.kv_under .kv_post .kv_en {
  margin-top: calc(60px - 0.07em);
  margin-bottom: -0.07em;
  font-size: clamp(2rem, 1.25vw, 1.25vw);
  color: #E6F21E;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 750px) {
  .kv_under .kv_post .kv_en {
    margin-top: calc(30px - 0.07em);
    font-size: 1.6rem;
  }
}
.kv_under .kv_post .kv_title_post {
  margin-top: calc(30px - 0.08em);
  margin-bottom: 50px;
  padding-bottom: calc(50px - 0.08em);
  border-bottom: 1px solid #fff;
  font-size: clamp(4rem, 1.5vw, 1.5vw);
  color: #fff;
  line-height: 1.6;
}
@media screen and (max-width: 999px) {
  .kv_under .kv_post .kv_title_post {
    font-size: 3rem;
  }
}
@media screen and (max-width: 750px) {
  .kv_under .kv_post .kv_title_post {
    margin-top: calc(15px - 0.07em);
    font-size: 2rem;
    margin-bottom: 30px;
    padding-bottom: calc(30px - 0.07em);
  }
}

.first-content {
  margin-top: -30px;
  background-color: #fff;
}
@media screen and (max-width: 449px) {
  .first-content {
    margin-top: -6.66vw;
  }
}

/* 投稿詳細
--------------------------------------------------*/
.post_common > :first-child {
  margin-top: 0;
}
.post_common > :last-child {
  margin-bottom: 0;
}
.post_common a {
  position: relative;
  color: #0068B5;
  text-decoration: underline;
  text-underline-offset: 4px;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  opacity: 1;
}
.post_common a:hover {
  opacity: 0.5;
}
.post_common img {
  width: auto;
  max-width: 100%;
}
.post_common img.alignright {
  display: block;
  margin-right: 0;
  margin-left: auto;
}
.post_common img.alignleft {
  display: block;
  margin-left: 0;
  margin-right: auto;
}
.post_common img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.post_common h1,
.post_common h2,
.post_common h3,
.post_common h4,
.post_common h5,
.post_common h6 {
  margin-top: 1em;
  margin-bottom: 1em;
}
.post_common h1 {
  font-size: 1.7em;
}
.post_common p {
  margin-top: 20px;
  margin-bottom: 20px;
}
.post_common span {
  text-align: inherit;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  line-height: inherit;
  font-style: inherit;
  font-size: inherit;
  white-space: normal;
}
.post_common strong {
  font-weight: 700;
}
.post_common em {
  font-style: italic;
}
.post_common ol,
.post_common ul {
  margin-top: 10px;
  margin-bottom: 10px;
}
.post_common ol,
.post_common ul,
.post_common li {
  list-style: revert;
  list-style-position: inside;
}
.post_common pre {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
}
@media screen and (max-width: 750px) {
  .post_common pre {
    font-size: 1.4rem;
  }
}
.post_common blockquote {
  position: relative;
  margin: 10px 0;
  padding-left: 25px;
}
.post_common blockquote::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 5px;
  height: 100%;
  background-color: #F5F5F5;
}
.post_common table,
.post_common table * {
  border-width: 1px;
}
.post_common tr,
.post_common th,
.post_common td {
  padding: 10px;
}
.post_common hr {
  display: block;
  width: 100%;
  height: 2px;
  border: 0;
  border-top: 2px solid #F5F5F5;
}

/* ページャー
--------------------------------------------------*/
.archive .wp-pagenavi {
  line-height: 1;
  text-align: center;
}
.archive .wp-pagenavi > span,
.archive .wp-pagenavi > a {
  display: inline-block;
  min-width: 50px;
  height: 50px;
  margin: 5px;
  padding-top: 16px;
  padding-bottom: 16px;
  background-color: #fff;
  border: 1px solid #0068B5;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #0068B5;
}
@media screen and (max-width: 750px) {
  .archive .wp-pagenavi > span,
.archive .wp-pagenavi > a {
    min-width: 30px;
    height: 30px;
    margin: 3px;
    padding-top: 6px;
    padding-bottom: 6px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 449px) {
  .archive .wp-pagenavi > span,
.archive .wp-pagenavi > a {
    min-width: 28px;
    height: 28px;
    margin: 1vw;
    padding-top: 7px;
    padding-bottom: 7px;
  }
}
.archive .wp-pagenavi > span img,
.archive .wp-pagenavi > a img {
  width: 9px;
  height: auto;
}
@media screen and (max-width: 750px) {
  .archive .wp-pagenavi > span img,
.archive .wp-pagenavi > a img {
    width: 6px;
  }
}
.archive .wp-pagenavi .current {
  border: 1px solid #0068B5;
}
.archive .wp-pagenavi .previouspostslink,
.archive .wp-pagenavi .nextpostslink {
  background-color: transparent;
  border: none;
}
.archive .wp-pagenavi .extend {
  background-color: transparent;
  border: none;
}

/* 404
--------------------------------------------------*/
body.error404 .wrap_404 {
  padding: 100px 0;
}
@media screen and (max-width: 750px) {
  body.error404 .wrap_404 {
    padding: 80px 0;
  }
}
body.error404 .wrap_btn {
  margin-top: 40px;
}
@media screen and (max-width: 750px) {
  body.error404 .wrap_btn {
    margin-top: 30px;
  }
}

/* フォーム
--------------------------------------------------*/
#contact_form {
  /* チェックボックスデザイン */
  /* ラジオボタンデザイン */
}
#contact_form .mx1000 {
  width: 100%;
}
#contact_form .entry_form li {
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
}
#contact_form .entry_form li:first-child {
  margin-top: 0;
}
#contact_form .content_ttl {
  position: relative;
  width: 270px;
  font-weight: 500;
  padding: 11px 30px 11px 0;
  text-align: right;
}
@media screen and (max-width: 999px) {
  #contact_form .content_ttl {
    width: 200px;
  }
}
@media screen and (max-width: 750px) {
  #contact_form .content_ttl {
    width: 100%;
    padding: 0 0 10px;
    text-align: left;
  }
}
#contact_form .content_ttl .must {
  display: inline-block;
  margin-left: 10px;
  background-color: red;
  border-radius: 1px;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  padding: 0.5em 1em;
}
@media screen and (max-width: 750px) {
  #contact_form .content_ttl .must {
    font-size: 1rem;
  }
}
#contact_form .mw_wp_form .horizontal-item {
  margin-top: 5px;
  margin-left: 0;
  display: block;
}
#contact_form .mw_wp_form .horizontal-item:first-of-type {
  margin-top: 11px;
}
@media screen and (max-width: 750px) {
  #contact_form .mw_wp_form .horizontal-item:first-of-type {
    margin-top: 0;
  }
}
#contact_form .privacy_ttl {
  align-items: center;
}
#contact_form .privacy_ttl .content_ttl {
  padding: 0px 85px 0px 0;
  text-align: left;
}
@media screen and (max-width: 750px) {
  #contact_form .privacy_ttl .content_ttl {
    padding-right: 0;
  }
}
#contact_form .privacy_ttl .content_ttl a {
  font-weight: 700;
  letter-spacing: 0;
}
#contact_form .privacy_ttl .must {
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 750px) {
  #contact_form .privacy_ttl .must {
    position: relative;
    right: auto;
    top: auto;
    transform: translateY(0);
  }
}
#contact_form .privacy_ttl .horizontal-item:first-of-type {
  margin-top: 0;
}
@media screen and (max-width: 750px) {
  #contact_form .privacy_ttl .horizontal-item:first-of-type {
    margin-top: 10px;
  }
}
#contact_form .privacy_ttl .error {
  font-weight: 500;
}
#contact_form .wrap_input {
  position: relative;
  background-color: #fff;
  width: calc(100% - 270px);
}
@media screen and (max-width: 999px) {
  #contact_form .wrap_input {
    width: calc(100% - 200px);
  }
}
@media screen and (max-width: 750px) {
  #contact_form .wrap_input {
    width: 100%;
  }
}
#contact_form .wrap_input .title {
  height: auto;
  margin-top: 20px;
  margin-bottom: 10px;
}
#contact_form .wrap_input .title:first-child {
  margin-top: 0;
}
#contact_form .wrap_input .title::before {
  border-width: 3px;
}
#contact_form input[type=text],
#contact_form input[type=email] {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  width: 100%;
  background-color: #F4F4F4;
  border: none;
  border-radius: 1px;
  padding: 11px 20px;
  letter-spacing: 0.06em;
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 999px) {
  #contact_form input[type=text],
#contact_form input[type=email] {
    padding: 15px 10px;
    font-size: 1.4rem;
  }
}
#contact_form input[type=text]::-moz-placeholder, #contact_form input[type=email]::-moz-placeholder {
  color: #999;
  font-weight: 400;
}
#contact_form input[type=text]::placeholder,
#contact_form input[type=email]::placeholder {
  color: #999;
  font-weight: 400;
}
#contact_form textarea {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  width: 100%;
  max-width: 100%;
  background-color: #F4F4F4;
  border-radius: 1px;
  border: none;
  padding: 11px 20px;
  min-height: 250px;
  letter-spacing: 0.06em;
  font-size: 1.6rem;
  font-weight: 400;
}
@media screen and (max-width: 999px) {
  #contact_form textarea {
    font-size: 1.4rem;
    padding: 15px 10px;
  }
}
#contact_form textarea::-moz-placeholder {
  color: #999;
  font-weight: 400;
}
#contact_form textarea::placeholder {
  color: #999;
  font-weight: 400;
}
#contact_form .mwform-checkbox-field-text,
#contact_form .mwform-radio-field-text {
  cursor: pointer;
  vertical-align: middle;
}
#contact_form input[type=checkbox] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#contact_form input[type=checkbox] {
  cursor: pointer;
  padding-left: 40px;
  /*label手前にチェックボックス用の余白を開ける*/
  vertical-align: middle;
  position: relative;
  height: 20px;
}
#contact_form input[type=checkbox]::before,
#contact_form input[type=checkbox]::after {
  content: "";
  display: block;
  position: absolute;
  height: 20px;
}
#contact_form input[type=checkbox]::before {
  background-color: #F4F4F4;
  border-radius: 1px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  top: 50%;
  left: 0px;
}
#contact_form input[type=checkbox]::after {
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  opacity: 0;
  height: 6px;
  width: 10px;
  transform: rotate(-45deg);
  top: calc(50% - 4px);
  left: 5px;
}
#contact_form input[type=checkbox]:checked::before {
  background-color: #0068B5;
}
#contact_form input[type=checkbox]:checked::after {
  opacity: 1;
}
#contact_form .mwform-checkbox-field-text {
  font-weight: 500;
}
#contact_form input[type=radio] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#contact_form input[type=radio] {
  cursor: pointer;
  padding-left: 40px;
  /*label手前にチェックボックス用の余白を開ける*/
  vertical-align: middle;
  position: relative;
  height: 20px;
}
#contact_form input[type=radio]::before,
#contact_form input[type=radio]::after {
  content: "";
  display: block;
  position: absolute;
}
#contact_form input[type=radio]::before {
  background-color: #F4F4F4;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  top: 50%;
  left: 0px;
}
#contact_form input[type=radio]::after {
  opacity: 0;
  height: 12px;
  width: 12px;
  top: 4px;
  left: 4px;
  background-color: #f4f4f4;
  border-radius: 50%;
}
#contact_form input[type=radio]:checked::before {
  background-color: #0068B5;
}
#contact_form input[type=radio]:checked::after {
  opacity: 1;
}
#contact_form .mwform-radio-field-text {
  font-weight: 500;
}
#contact_form select {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  width: 100%;
  background-color: #F4F4F4;
  border-radius: 1px;
  border: none;
  padding: 11px 31px 11px 20px;
  letter-spacing: 0.06em;
  font-size: 1.6rem;
  font-weight: 400;
  color: #000;
  background-image: url(../img/common/icon_chevron_down.svg);
  background-repeat: no-repeat;
  background-size: 11px auto;
  background-position: right 10px center;
}
@media screen and (max-width: 999px) {
  #contact_form select {
    font-size: 1.4rem;
    padding: 15px 10px;
  }
}
#contact_form option[selected=selected] {
  opacity: 0.5;
}
#contact_form input[type=file] {
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  font-weight: 400;
  color: #000;
}
#contact_form .error {
  display: block;
  height: auto;
  color: red;
}
#contact_form .js-mw-checkbox .mwform-checkbox-field {
  position: relative;
}
#contact_form .js-mw-checkbox .mwform-checkbox-field::after {
  content: "必須";
  display: inline-block;
  margin-left: 5px;
  background-color: red;
  color: #F4F4F4;
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.3em 0.7em;
  font-weight: 700;
}
#contact_form .wrap_btn {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 80px auto 0;
}
@media screen and (max-width: 999px) {
  #contact_form .wrap_btn {
    margin-top: 30px;
  }
}
#contact_form .wrap_btn .submitbtn {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  #contact_form .wrap_btn .submitbtn {
    width: 100%;
  }
}
@media screen and (max-width: 449px) {
  #contact_form .wrap_btn .submitbtn {
    max-width: 100%;
  }
}
#contact_form .wrap_btn .submitbtn::before {
  position: absolute;
  content: "";
  top: 0;
  left: -200%;
  width: 300%;
  height: 100%;
  background: #0068B5;
  z-index: -1;
  transition-duration: 0.3s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
}
#contact_form .wrap_btn .submitbtn::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translate(0, -50%);
  display: block;
  width: 26px;
  height: 26px;
  background: #fff;
  -webkit-mask-size: 15px auto;
          mask-size: 15px auto;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 26.3.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='レイヤー_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='16px' height='12px' viewBox='0 0 16 12' style='enable-background:new 0 0 16 12;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cpath id='arrow' class='st0' d='M12.5,7H1C0.5,7,0,6.6,0,6s0.5-1,1-1h11.5L9.6,2C9.4,1.9,9.2,1.6,9.3,1.3c0-0.3,0.1-0.5,0.3-0.7 c0.2-0.2,0.5-0.3,0.7-0.3c0.3,0,0.5,0.1,0.7,0.3l4.7,4.7c0.1,0.1,0.2,0.2,0.2,0.3c0.1,0.2,0.1,0.5,0,0.8c0,0.1-0.1,0.2-0.2,0.3 L11,11.4c-0.2,0.2-0.5,0.3-0.7,0.3c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.5-0.3-0.7c0-0.3,0.1-0.5,0.3-0.7L12.5,7z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3C!-- Generator: Adobe Illustrator 26.3.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' id='レイヤー_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='16px' height='12px' viewBox='0 0 16 12' style='enable-background:new 0 0 16 12;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%23FFFFFF;%7D%0A%3C/style%3E%3Cpath id='arrow' class='st0' d='M12.5,7H1C0.5,7,0,6.6,0,6s0.5-1,1-1h11.5L9.6,2C9.4,1.9,9.2,1.6,9.3,1.3c0-0.3,0.1-0.5,0.3-0.7 c0.2-0.2,0.5-0.3,0.7-0.3c0.3,0,0.5,0.1,0.7,0.3l4.7,4.7c0.1,0.1,0.2,0.2,0.2,0.3c0.1,0.2,0.1,0.5,0,0.8c0,0.1-0.1,0.2-0.2,0.3 L11,11.4c-0.2,0.2-0.5,0.3-0.7,0.3c-0.3,0-0.5-0.1-0.7-0.3c-0.2-0.2-0.3-0.5-0.3-0.7c0-0.3,0.1-0.5,0.3-0.7L12.5,7z'/%3E%3C/svg%3E");
  transition-duration: 0.3s;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
}
#contact_form .wrap_btn .submitbtn:hover::before {
  left: -100%;
}
#contact_form .wrap_btn .submitbtn:hover::after {
  transform: translate(5px, -50%);
}
#contact_form .wrap_btn [type=submit].btn {
  min-width: 280px;
  font-family: "toppan-bunkyu-gothic-pr6n", serif;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  cursor: pointer;
  color: #000;
  line-height: 1.6;
  text-align: left;
  padding: 20px 50px 20px 20px;
  color: #fff;
  text-decoration: none;
  overflow: hidden;
  background: transparent;
  border: none;
  z-index: 1;
}
@media screen and (max-width: 999px) {
  #contact_form .wrap_btn [type=submit].btn {
    font-size: 1.6rem;
    padding: 17px 50px 17px 20px;
  }
}
@media screen and (max-width: 750px) {
  #contact_form .wrap_btn [type=submit].btn {
    width: 100%;
    min-width: 0;
  }
}
#contact_form .wrap_btn [type=submit].btn:hover {
  color: #fff;
}
#contact_form .wrap_btn .backbtn {
  position: relative;
}
@media screen and (max-width: 750px) {
  #contact_form .wrap_btn .backbtn {
    width: 100%;
  }
}
#contact_form .wrap_btn .backbtn .btn {
  padding: 20px 20px 20px 50px;
}
@media screen and (max-width: 750px) {
  #contact_form .wrap_btn .backbtn .btn {
    margin: 0 auto;
    padding: 17px 20px 17px 50px;
  }
}
#contact_form .wrap_btn .backbtn .btn::after {
  left: 20px;
  right: auto;
  transform: translate(0, -50%) rotate(180deg);
}
#contact_form .wrap_btn .backbtn .btn:hover::after {
  transform: translate(-5px, -50%) rotate(180deg);
}

/* 入力画面 - エラー
--------------------------------------------------*/
#contact_form .txt_error {
  display: none;
  margin-bottom: 40px;
  color: red;
  text-align: center;
}
#contact_form .mw_wp_form:has(span.error) .txt_error {
  display: block;
}

/* 確認画面
--------------------------------------------------*/
body:has(.mw_wp_form_confirm) #contact_form {
  padding-top: 0;
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form li {
  border-bottom: 1px solid #DDDBDA;
  margin: 0;
  padding: 15px 20px;
}
@media screen and (max-width: 750px) {
  body:has(.mw_wp_form_confirm) #contact_form .entry_form li {
    padding: 15px 0;
  }
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form li:first-child {
  padding-top: 0;
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form .wrap_input {
  padding: 11px 0 11px 20px;
}
@media screen and (max-width: 750px) {
  body:has(.mw_wp_form_confirm) #contact_form .entry_form .wrap_input {
    padding: 0;
  }
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form .wrap_privacy {
  display: none;
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form .privacy_ttl .content_ttl {
  padding-right: 30px;
  margin-right: 0;
  margin-left: auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 750px) {
  body:has(.mw_wp_form_confirm) #contact_form .entry_form .privacy_ttl .content_ttl {
    margin-right: auto;
    width: 100%;
    padding-right: 0;
    padding-bottom: 10px;
  }
}
body:has(.mw_wp_form_confirm) #contact_form .entry_form .must {
  display: none;
}
body:has(.mw_wp_form_confirm) #contact_form .wrap_btn {
  gap: 20px;
}

/* 完了画面
--------------------------------------------------*/
body:has(.mw_wp_form_complete) #contact_form {
  padding-top: 0;
}
body:has(.mw_wp_form_complete) #contact_form .entry_form .wrap_contact {
  padding-top: 20px;
}
@media screen and (max-width: 999px) {
  body:has(.mw_wp_form_complete) #contact_form .entry_form .wrap_contact {
    padding-top: 0;
  }
}
body:has(.mw_wp_form_complete) #contact_form .entry_form a.phone {
  color: #000;
  pointer-events: none;
}
@media screen and (max-width: 750px) {
  body:has(.mw_wp_form_complete) #contact_form .entry_form a.phone {
    pointer-events: all;
  }
}

/*-----------------------------------------

※このスタイルシートはSCSSで生成されています。
cssへの直記入はなさらないようにしてください。

-----------------------------------------*/
/* 動画一覧
--------------------------------------------------*/
#movie_list {
  padding: 50px 0 130px;
}
@media screen and (max-width: 999px) {
  #movie_list {
    padding: 50px 0 100px;
  }
}
@media screen and (max-width: 750px) {
  #movie_list {
    padding: 0 0 80px;
  }
}
#movie_list article {
  padding: 100px 0 20px;
}
@media screen and (max-width: 1399px) {
  #movie_list article {
    padding: 6.25vw 0 1.25vw;
  }
}
@media screen and (max-width: 750px) {
  #movie_list article {
    padding: 60px 0 0;
  }
}
#movie_list .wrap_movie h2 {
  margin-bottom: 40px;
  font-size: clamp(2rem, 1.25vw, 1.25vw);
  line-height: 1.75;
}
@media screen and (max-width: 999px) {
  #movie_list .wrap_movie h2 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 750px) {
  #movie_list .wrap_movie h2 {
    margin-bottom: 20px;
  }
}
#movie_list .wrap_movie .inner_movie {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 750px) {
  #movie_list .wrap_movie .inner_movie {
    display: block;
  }
}
#movie_list .wrap_movie .inner_movie iframe {
  max-width: 100%;
}
#movie_list .wrap_movie .inner_movie .left {
  width: 56%;
  align-self: flex-start;
}
@media screen and (max-width: 999px) {
  #movie_list .wrap_movie .inner_movie .left {
    width: 50%;
  }
}
@media screen and (max-width: 750px) {
  #movie_list .wrap_movie .inner_movie .left {
    width: 100%;
  }
}
#movie_list .wrap_movie .inner_movie .movie {
  aspect-ratio: 676/381;
}
#movie_list .wrap_movie .inner_movie .movie iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#movie_list .wrap_movie .inner_movie .right {
  width: 44%;
  padding-left: 60px;
}
@media screen and (max-width: 999px) {
  #movie_list .wrap_movie .inner_movie .right {
    width: 50%;
    padding-left: 40px;
  }
}
@media screen and (max-width: 750px) {
  #movie_list .wrap_movie .inner_movie .right {
    width: 100%;
    padding-left: 0;
    padding-top: 20px;
  }
}
#movie_list .wrap_movie .inner_movie .right p {
  margin-top: calc(40px - 0.45em);
  margin-bottom: -0.45em;
}
@media screen and (max-width: 750px) {
  #movie_list .wrap_movie .inner_movie .right p {
    margin-top: calc(20px - 0.45em);
  }
}
#movie_list .wrap_movie .inner_movie .right p:first-child {
  margin-top: -0.45em;
}
/*# sourceMappingURL=movie.css.map */