@charset "utf-8";

/*
Theme Name:JCI_NAGOYA_76
Description:76年度公益社団法人名古屋青年会議所　
Author: Catwork株式会社
*/

/* reset
============================================================*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video,
a {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic,
    sans-serif;
}
html {
  scroll-behavior: smooth;
  overflow-wrap: break-word;
  word-break: break-all;
}
body {
  position: relative;
  text-align: left;
  font-size: 16px;
  line-height: 1.6em;
  color: #333;
  -webkit-text-size-adjust: none;
}
p {
  font-size: 16px;
  line-height: 1.6em;
  font-weight: 400;
}
img {
  vertical-align: bottom;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #333;
  font-weight: normal;
  transition: 0.3s;
  font-weight: 400;
}
a.op {
  transition: 0.3s;
}
a:hover {
  text-decoration: none;
  transition: 0.3s;
}
a.op:hover,
a img:hover {
  opacity: 0.6;
  transition: 0.3s;
}
a img {
  transition: 0.3s;
}
a:focus,
a:hover {
  outline: none;
  text-decoration: none;
}
@media (min-width: 431px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
i {
  position: relative;
  top: 6px;
}
.btn.focus,
.btn:focus {
  box-shadow: none !important;
}

li.side-txt {
  margin-top: -10px;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
#wap {
  height: 100%;
  position: relative;
  overflow: hidden;
}
.img_block {
  display: block;
  margin: auto;
}
.left {
  float: left;
}
.right {
  float: right;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
.txt_center {
  text-align: center;
}
.f_en {
}

@media (max-width: 1240px) {
  html,
  body {
    width: 1240px;
  }
}
@media (max-width: 768px) {
  html,
  body {
    width: 768px;
  }
}
@media (max-width: 430px) {
  html,
  body {
    width: 430px;
  }
}

/* フェードアニメーション */
.mv01_on {
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -ms-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 0;
}
.mv01_off {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

.mv02_on {
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -ms-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  -webkit-transform: scale(1, 1) translate3d(0, 30px, 0);
  -moz-transform: scale(1, 1) translate3d(0, 30px, 0);
  -ms-transform: scale(1, 1) translate3d(0, 30px, 0);
  -o-transform: scale(1, 1) translate3d(0, 30px, 0);
  transform: scale(1, 1) translate3d(0, 30px, 0);
  opacity: 0;
}
.mv02_off {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

.mv03_on {
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -ms-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  -webkit-transform: scale(1, 1) translate3d(100px, 0, 0);
  -moz-transform: scale(1, 1) translate3d(100px, 0, 0);
  -ms-transform: scale(1, 1) translate3d(100px, 0, 0);
  -o-transform: scale(1, 1) translate3d(100px, 0, 0);
  transform: scale(1, 1) translate3d(100px, 0, 0);
  opacity: 0;
}
.mv03_off {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

.mv04_on {
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -ms-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  -webkit-transform: scale(1, 1) translate3d(-100px, 0, 0);
  -moz-transform: scale(1, 1) translate3d(-100px, 0, 0);
  -ms-transform: scale(1, 1) translate3d(-100px, 0, 0);
  -o-transform: scale(1, 1) translate3d(-100px, 0, 0);
  transform: scale(1, 1) translate3d(-100px, 0, 0);
  opacity: 0;
}
.mv04_off {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
}

.mv05_on {
  -webkit-transition: all 0.8s ease-out;
  -moz-transition: all 0.8s ease-out;
  -ms-transition: all 0.8s ease-out;
  -o-transition: all 0.8s ease-out;
  transition: all 0.8s ease-out;
  -webkit-transform: scale(1, 1) translate3d(0, -100px, 0);
  -moz-transform: scale(1, 1) translate3d(0, -100px, 0);
  -ms-transform: scale(1, 1) translate3d(0, -100px, 0);
  -o-transform: scale(1, 1) translate3d(0, -100px, 0);
  transform: scale(1, 1) translate3d(0, -100px, 0);
  opacity: 0;
}
.mv05_off {
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-transform: scale(1, 1) translate3d(0, 0, 0);
  -moz-transform: scale(1, 1) translate3d(0, 0, 0);
  -ms-transform: scale(1, 1) translate3d(0, 0, 0);
  -o-transform: scale(1, 1) translate3d(0, 0, 0);
  transform: scale(1, 1) translate3d(0, 0, 0);
  opacity: 1;
}
/* フェードアニメーション end */

/* パンくず */
.pan {
  margin: 20px auto 80px;
  max-width: 1080px;
}
.pan li {
  display: inline-block;
}
.pan li::after {
  content: ">";
  display: inline-block;
  padding: 0 10px;
}
.pan li:last-of-type::after {
  content: "";
}

/* 430px以上
----------------------------------------------------------*/
@media screen and (min-width: 431px) {
  .sp_blocl {
    display: none;
  }
  .pc_blocl {
    display: block;
  }

  /* フォント */
  .f_bold {
    font-weight: 900;
  }
  .f_wh {
    color: #fff;
    transition: 0.3s;
  }
  .f_12 {
    font-size: 12px;
  }
  .f_14 {
    font-size: 14px;
  }
  .f_16 {
    font-size: 16px;
  }
  .f_18 {
    font-size: 18px;
  }
  .f_20 {
    font-size: 20px;
  }
  .f_21 {
    font-size: 21px;
  }
  .f_22 {
    font-size: 22px;
  }
  .f_24 {
    font-size: 24px;
  }
  .f_25 {
    font-size: 25px;
  }
  .f_26 {
    font-size: 26px;
  }
  .f_28 {
    font-size: 28px;
  }
  .f_32 {
    font-size: 32px;
  }
  .f_36 {
    font-size: 36px;
  }
  .f_48 {
    font-size: 48px;
  }

  /* タイトル */
  h3.ttl02 {
    border-bottom: solid 2px #c5c5c5;
    position: relative;
    padding-bottom: 7px;
    margin-bottom: 30px;
    line-height: 1.4;
  }
  h3.ttl02:after {
    content: "";
    display: block;
    line-height: 0;
    overflow: hidden;
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 10%;
    border-bottom: 2px solid #0099dd;
  }
  #report h4 {
    position: relative;
    padding: 15px;
    color: #0099dd;
    font-size: 20px;
    font-weight: bold;
  }
  #report h4::before {
    position: absolute;
    top: 18px;
    left: 0;
    content: "";
    width: 4px;
    height: 20px;
    background: #0099dd;
  }

  /* padding margin */
  .mt_60 {
    margin-top: 60px;
  }
  .mt_30 {
    margin-top: 30px;
  }
  .mb_60 {
    margin-bottom: 60px;
  }
  .mb_30 {
    margin-bottom: 30px;
  }

  /* ボタン */
  .btn {
    display: inline-block;
    text-decoration: none !important;
    font-size: 14px;
    letter-spacing: 3px;
  }
  #front .btn {
    letter-spacing: 0;
  }
  .btn_main {
    background-color: #0099dd;
    border: 2px solid #0099dd;
    color: #fff !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    padding: 5px 30px;
    border-radius: 5px;
    font-weight: 900;
  }
  .about_fot_btn .btn_wh {
    margin: 0 10px 15px;
  }

  /* テーブル */
  table.sub_table01 th {
    padding: 10px 0;
    border-right: 1px solid #c5c5c5;
    width: 14%;
    text-align: center;
  }
  table.sub_table01 td {
    padding-left: 5%;
  }

  /* 下層メインビジュアル */
  .sub_ttl01 {
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
  }
  #about .sub_ttl01 {
    background: url(img/about/about_key_bg.png) center center/cover no-repeat;
  }
  #greeting .sub_ttl01 {
    background: url(img/about/greeting_key_bg.png) center center/cover no-repeat;
  }
  #jaycee .sub_ttl01 {
    background: url(img/about/jaycee_key_bg.png) center center/cover no-repeat;
  }
  #jci-japan .sub_ttl01 {
    background: url(img/about/jci-japan_key_bg.png) center center/cover
      no-repeat;
  }
  #access .sub_ttl01 {
    background: url(img/about/access_key_bg.png) center center/cover no-repeat;
  }
  #data .sub_ttl01 {
    background: url(img/about/data_key_bg.png) center center/cover no-repeat;
  }
  #organization .sub_ttl01 {
    background: url(img/about/organization_key_bg.png) center center/cover
      no-repeat;
  }
  #keizoku .sub_ttl01 {
    background: url(img/keizoku/keizoku_key_bg.png) center center/cover
      no-repeat;
  }
  #sdgs .sub_ttl01 {
    background: url(img/sdgs/sdgs_bg.png) center center/cover no-repeat;
  }
  #about_nagoya .sub_ttl01 {
    background: url(img/at_nagoya/about_nagoya_key.png) center center/cover
      no-repeat;
  }
  #schedule .sub_ttl01 {
    background: url(img/common/schedule_key_bg.png) center center/cover
      no-repeat;
  }
  #report .sub_ttl01 {
    background: url(img/common/report_key_bg.png) center center/cover no-repeat;
  }
  #contact .sub_ttl01 {
    background: url(img/common/contact_key_bg.png) center center/cover no-repeat;
  }
  #privacypolicy .sub_ttl01 {
    background: url(img/common/privacypolicy_key_bg.png) center center/cover
      no-repeat;
  }
  #mazmotte .sub_ttl01 {
    background: url(img/about/mazmotte_key_bg.png) center center/cover no-repeat;
  }
  #ningenryoku .sub_ttl01 {
    background: url(img/ningenryoku/ningenryoku_key_bg.png) center center/cover
      no-repeat;
  }
  #supporting .sub_ttl01 {
    background: url(img/supporting/supporting_key.png) no-repeat center / cover;
  }
  #th_75 .sub_ttl01 {
    background: url(img/th_75/75th_bg.png) center center/cover no-repeat;
  }
  #world2027 .sub_ttl01 {
    background: url(img/world2027/world2027_bg.png) center center/cover no-repeat;
  }
  #international .sub_ttl01 {
    background: url(img/international/international_bg.png) center center/cover no-repeat;
  }
  #sister-jci .sub_ttl01 {
    background: url(img/sister-jci/sister-jci_bg.png) center center/cover no-repeat;
  }
  #member .sub_ttl01 {
    background: url(img/member/member_key_bg.png) center center/cover no-repeat;
  }
  #member.partner .sub_ttl01 {
    background: url(img/partner/pertner_key_bg.png) center center/cover
      no-repeat;
  }
  #roomcalendar .sub_ttl01 {
    background: url(img/member/roomcalendar_key_bg.png) center center/cover
      no-repeat;
  }
  #material .sub_ttl01 {
    background: url(img/member/material_key_bg.png) center center/cover
      no-repeat;
  }
  #hotline .sub_ttl01 {
    background: url(img/member/hotline_key_bg.png) center center/cover no-repeat;
  }
  #archive .sub_ttl01 {
    background: url(img/member/archive_key_bg.png) center center/cover no-repeat;
  }
  #document .sub_ttl01 {
    background: url(img/member/document_key.png) no-repeat center / cover;
  }
  #member_report .sub_ttl01 {
    background: url(img/member/member_report_key_bg.png) center center/cover
      no-repeat;
  }
  #member_report.member_seminar .sub_ttl01 {
    background: url(img/member/member_seminar_key_bg.png) center center/cover
      no-repeat;
  }
  #club .sub_ttl01 {
    background: url(img/club/club_key.png) no-repeat center / cover;
  }
  #admission .sub_ttl01 {
    background: url(img/admission/admission_key_bg.png) center center/cover
      no-repeat;
  }
  #flow .sub_ttl01 {
    background: url(img/admission/flow_key_bg.png) center center/cover no-repeat;
  }
  #interview .sub_ttl01,
  #apply .sub_ttl01 {
    background: url(img/admission/interview_key_bg.png) center center/cover
      no-repeat;
  }
  #interview.interview_single .sub_ttl01 {
    background: url(img/admission/interview_single_key_bg.png) center
      center/cover no-repeat;
  }

  #member-list .sub_ttl01 {
    background: url(img/member/member-list_key.png) no-repeat center / cover;
  }
  #world .sub_ttl01 {
    background: url(img/world/world_key_bg.png) no-repeat center / cover;
  }

  .sub_ttl01 h2.f_main {
    padding-top: 60px;
    line-height: 1;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    position: relative;
    letter-spacing: 1px;
    width: 100%;
  }
  .sub_ttl01 h2.f_main::before {
    content: "";
    font-size: 46px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    text-align: center;
    letter-spacing: 1px;
    line-height: 1;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  }
  #about .sub_ttl01 h2.f_main::before {
    content: "ABOUT US";
  }
  #greeting .sub_ttl01 h2.f_main::before {
    content: "GREETING & SLOGAN";
  }
  #jaycee .sub_ttl01 h2.f_main::before {
    content: "ABOUT JCI";
  }
  #jci-japan .sub_ttl01 h2.f_main::before {
    content: "ABOUT JCI JAPAN";
  }
  #access .sub_ttl01 h2.f_main::before {
    content: "LOCATION";
  }
  #data .sub_ttl01 h2.f_main::before {
    content: "DOCUMENTS";
  }
  #organization .sub_ttl01 h2.f_main::before {
    content: "ORGANiZATION";
  }
  #sdgs .sub_ttl01 h2.f_main::before {
    content: "Initiatives for SDGs";
  }
  #about_nagoya .sub_ttl01 h2.f_main::before {
    content: "ABOUT アットナゴヤモニュメント";
  }
  #th_75 .sub_ttl01 h2.f_main::before {
    content: "75th Anniversary";
    font-size: 35px;
    text-shadow: none;
  }
  #world2027 .sub_ttl01 h2.f_main::before {
  content: "WORLD CONGRESS";
  }
  #international .sub_ttl01 h2.f_main::before {
  content: "INTERNATIONAL EXCHANGE";
  }
  #sister-jci .sub_ttl01 h2.f_main::before {
  content: "SISTER JC";
  }
  #bcp02 .sub_ttl01 h2.f_main::before {
    content: "BUSINESS CONTINUITY PLANNING";
  }
  #schedule .sub_ttl01 h2.f_main::before {
    content: "EVENT SCHEDULE";
  }
  #report .sub_ttl01 h2.f_main::before {
    content: "REPORT";
  }
  #admission .sub_ttl01 h2.f_main::before {
    content: "ADMISSION";
  }
  #interview .sub_ttl01 h2.f_main::before {
    content: "MEMBER INTERVIEW";
  }
  #flow .sub_ttl01 h2.f_main::before {
    content: "FLOW";
  }
  #apply.entry .sub_ttl01 h2.f_main::before {
    content: "ADMISSION ENTRY";
  }
  #contact .sub_ttl01 h2.f_main::before {
    content: "CONTACT";
  }
  #member .sub_ttl01 h2.f_main::before {
    content: "MEMBER'S PAGE";
  }
  #member.partner .sub_ttl01 h2.f_main::before {
    content: "PARTNER PAGE";
  }
  #roomcalendar .sub_ttl01 h2.f_main::before {
    content: "HALL BOOKING";
  }
  #material .sub_ttl01 h2.f_main::before {
    content: "MATERIAL";
  }
  #hotline .sub_ttl01 h2.f_main::before {
    content: "HOTLINE";
  }
  #archive .sub_ttl01 h2.f_main::before {
    content: "PAST WEBPAGE";
  }
  #archive.kaihou .sub_ttl01 h2.f_main::before {
    content: "PAST ANNUAL REPORT";
  }
  #document .sub_ttl01 h2::before {
    content: "BASIC MATERIAL";
  }
  #member_report .sub_ttl01 h2.f_main::before {
    content: "EVENT MOVIES";
  }
  #member_report.member_seminar .sub_ttl01 h2.f_main::before {
    content: "COVID SEMINER";
  }
  #club .sub_ttl01 h2.f_main::before {
    content: "CLUB";
  }
  #member-list .sub_ttl01 h2.f_main::before {
    content: "MEMBER LIST / ORGANIZATION CHART";
  }
  #privacypolicy .sub_ttl01 h2.f_main::before {
    content: "PRIVACY POLICY";
  }
  #keizoku .sub_ttl01 h2.f_main::before {
    content: "EVENTS PRODUCED BY NAGOYA JC";
  }
  #ningenryoku .sub_ttl01 h2.f_main::before {
    content: "OUTSTANDING YOUNG PERSONG";
  }
  #supporting .sub_ttl01 h2.f_main::before {
    content: "SUPPORTING COMPANY";
  }
  #mazmotte .sub_ttl01 h2.f_main::before {
    content: "MAZ-MOTTE PUBLISHED BY NAGOYA JC";
  }
  #world .sub_ttl01 h2.f_main::before {
    content: "WORLD CONGRESS";
  }
}

@media screen and (max-width: 768px) {
  /* パンくず */
  .pan {
    width: 90%;
    margin: 5px auto 40px;
  }

  /* 下層メインビジュアル */
  #keizoku .sub_ttl01 h2.f_main::before {
    font-size: 36px;
  }
  #about_nagoya .sub_ttl01 h2.f_main::before {
    font-size: 36px;
  }
  #member-list .sub_ttl01 h2.f_main {
    padding-top: 55px;
  }
  #member-list .sub_ttl01 h2.f_main::before {
    font-size: 34px;
  }
  #ningenryoku .sub_ttl01 h2.f_main::before {
    font-size: 38px;
  }
  #bcp02 .sub_ttl01 h2.f_main::before {
    font-size: 40px;
  }
  #mazmotte .sub_ttl01 h2.f_main {
    padding-top: 45px;
  }
  #mazmotte .sub_ttl01 h2.f_main::before {
    font-size: 32px;
  }
}

/* #load
----------------------------------------------------------*/

.load_on {
  text-align: center;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  width: 100%;
  height: 100%;
  background: #fff;
  transition: opacity 1s linear 0.5s, z-index 1s linear 1.5s;
  opacity: 1;
}
.load_off {
  z-index: -10000;
  opacity: 0;
}
.load_on img {
  display: block;
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
@media (max-width: 430px) {
  .load_on img {
    width: 300px;
  }
}

/* 430px以下
----------------------------------------------------------*/
@media screen and (max-width: 431px) {
  .sp_blocl {
    display: block;
  }
  .pc_blocl {
    display: none;
  }

  /* フォント */
  .f_bold {
    font-weight: 900;
  }
  .f_wh {
    color: #fff;
    font-size: 14px;
  }
  .f_12 {
    font-size: 12px;
  }
  .f_14 {
    font-size: 14px;
  }
  .f_16 {
    font-size: 16px;
  }
  .f_18 {
    font-size: 18px;
  }
  .f_20 {
    font-size: 20px;
  }
  .f_21 {
    font-size: 20px;
  }
  .f_22 {
    font-size: 20px;
  }
  .f_24 {
    font-size: 22px;
  }
  .f_25 {
    font-size: 22px;
  }
  .f_26 {
    font-size: 24px;
  }
  .f_28 {
    font-size: 26px;
  }
  .f_32 {
    font-size: 28px;
  }
  .f_36 {
    font-size: 30px;
  }
  .f_48 {
    font-size: 32px;
  }

  /* タイトル */
  h3.ttl02 {
    border-bottom: solid 2px #c5c5c5;
    position: relative;
    padding-bottom: 7px;
    margin-bottom: 20px;
    line-height: 1.4;
  }
  h3.ttl02:after {
    content: "";
    display: block;
    line-height: 0;
    overflow: hidden;
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 10%;
    border-bottom: 2px solid #0099dd;
  }
  #report h4 {
    position: relative;
    padding: 15px;
    color: #0099dd;
    font-size: 20px;
    font-weight: bold;
  }
  #report h4::before {
    position: absolute;
    top: 18px;
    left: 0;
    content: "";
    width: 4px;
    height: 20px;
    background: #0099dd;
  }

  /* padding margin */
  .mt_60 {
    margin-top: 30px;
  }
  .mt_30 {
    margin-top: 15px;
  }
  .mb_60 {
    margin-bottom: 30px;
  }
  .mb_30 {
    margin-bottom: 15px;
  }

  /* ボタン */
  .btn {
    padding: 7px 20px;
    display: inline-block;
    text-decoration: none !important;
    font-size: 14px;
    letter-spacing: 3px;
  }
  .btn_main {
    background-color: #0099dd;
    border: 2px solid #0099dd;
    color: #fff !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    padding: 5px 30px;
    border-radius: 5px;
    font-weight: 900;
  }
  .about_fot_btn .btn_wh {
    margin: 0 0 10px;
    padding: 0;
    width: 100%;
  }

  /* テーブル */
  table.sub_table01 {
    font-size: 14px;
  }
  table.sub_table01 th {
    border-right: 1px solid #c5c5c5;
    text-align: center;
    width: 30%;
    padding: 8px 0;
  }
  table.sub_table01 td {
    padding-left: 5%;
  }

  /* 下層メインビジュアル */
  .sub_ttl01 {
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  #about .sub_ttl01 {
    background: url(img/about/about_key_bg_sp.png) center center/cover no-repeat;
  }
  #greeting .sub_ttl01 {
    background: url(img/about/greeting_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #jaycee .sub_ttl01 {
    background: url(img/about/jaycee_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #jci-japan .sub_ttl01 {
    background: url(img/about/jci-japan_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #access .sub_ttl01 {
    background: url(img/about/access_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #data .sub_ttl01 {
    background: url(img/about/data_key_bg_sp.png) center center/cover no-repeat;
  }
  #organization .sub_ttl01 {
    background: url(img/about/organization_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #keizoku .sub_ttl01 {
    background: url(img/keizoku/keizoku_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #sdgs .sub_ttl01 {
    background: url(img/sdgs/sdgs_bg_sp.png) center center/cover no-repeat;
  }
  #about_nagoya .sub_ttl01 {
    background: url(img/at_nagoya/about_nagoya_key_sp.png) no-repeat center /
      cover;
  }
  #schedule .sub_ttl01 {
    background: url(img/common/schedule_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #th_75 .sub_ttl01 {
    background: url(img/th_75/75th_bg_sp.png) center center/cover no-repeat;
  }
  #world2027 .sub_ttl01 {
    background: url(img/world2027/world2027_bg_sp.png) center center/cover no-repeat;
  }
  #international .sub_ttl01 {
    background: url(img/international/international_bg_sp.png) center center/cover no-repeat;
  }
  #sister-jci .sub_ttl01 {
    background: url(img/sister-jci/sister-jci_bg_sp.png) center center/cover no-repeat;
  }
  #report .sub_ttl01 {
    background: url(img/common/report_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #contact .sub_ttl01 {
    background: url(img/common/contact_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #privacypolicy .sub_ttl01 {
    background: url(img/common/privacypolicy_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #mazmotte .sub_ttl01 {
    background: url(img/about/mazmotte_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #ningenryoku .sub_ttl01 {
    background: url(img/ningenryoku/ningenryoku_key_bg_sp.png) center
      center/cover no-repeat;
  }
  #supporting .sub_ttl01 {
    background: url(img/supporting/supporting_key_sp.png) no-repeat center /
      cover;
  }
  #member .sub_ttl01 {
    background: url(img/member/member_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #member.partner .sub_ttl01 {
    background: url(img/partner/pertner_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #roomcalendar .sub_ttl01 {
    background: url(img/member/roomcalendar_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #material .sub_ttl01 {
    background: url(img/member/material_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #hotline .sub_ttl01 {
    background: url(img/member/hotline_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #archive .sub_ttl01 {
    background: url(img/member/archive_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #document .sub_ttl01 {
    background: url(img/member/document_key_sp.png) no-repeat center / cover;
  }
  #member_report .sub_ttl01 {
    background: url(img/member/member_report_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #member_report.member_seminar .sub_ttl01 {
    background: url(img/member/member_seminar_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #club .sub_ttl01 {
    background: url(img/club/club_key_sp.png) no-repeat center / cover;
  }
  #admission .sub_ttl01 {
    background: url(img/admission/admission_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #flow .sub_ttl01 {
    background: url(img/admission/flow_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #interview .sub_ttl01,
  #apply .sub_ttl01 {
    background: url(img/admission/interview_key_bg_sp.png) center center/cover
      no-repeat;
  }
  #interview.interview_single .sub_ttl01 {
    background: url(img/admission/interview_single_key_bg_sp.png) center
      center/cover no-repeat;
  }

  .sub_ttl01 h2.f_main {
    padding-top: 35px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    letter-spacing: 1px;
    width: 100%;
  }
  .sub_ttl01 h2.f_main::before {
    content: "";
    position: absolute;
    font-size: 32px;
    top: 0;
    left: 0;
    text-align: center;
    width: 100%;
    letter-spacing: 1px;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  }
  #about .sub_ttl01 h2.f_main::before {
    content: "ABOUT US";
  }
  #greeting .sub_ttl01 h2.f_main::before {
    content: "GREETING & SLOGAN";
  }
  #jaycee .sub_ttl01 h2.f_main::before {
    content: "ABOUT JCI";
  }
  #jci-japan .sub_ttl01 h2.f_main::before {
    content: "ABOUT JCI JAPAN";
  }
  #access .sub_ttl01 h2.f_main::before {
    content: "LOCATION";
  }
  #data .sub_ttl01 h2.f_main::before {
    content: "DOCUMENTS";
  }
  #organization .sub_ttl01 h2.f_main::before {
    content: "ORGANiZATION";
  }
  #about_nagoya .sub_ttl01 h2.f_main {
    padding-top: 75px;
  }
  #about_nagoya .sub_ttl01 h2.f_main::before {
    white-space: pre;
    content: "ABOUT \Aアットナゴヤモニュメント";
    font-size: 30px;
    line-height: 1.1;
  }
  #schedule .sub_ttl01 h2.f_main::before {
    content: "EVENT SCHEDULE";
  }
  #report .sub_ttl01 h2.f_main::before {
    content: "REPORT";
  }
  #admission .sub_ttl01 h2.f_main::before {
    content: "ADMISSION";
  }
  #interview .sub_ttl01 h2.f_main::before {
    content: "MEMBER INTERVIEW";
  }
  #flow .sub_ttl01 h2.f_main::before {
    content: "FLOW";
  }
  #world .sub_ttl01 h2.f_main::before {
    content: "WORLD CONGRESS";
  }
  #apply.entry .sub_ttl01 h2.f_main::before {
    content: "ADMISSION ENTRY";
  }
  #contact .sub_ttl01 h2.f_main::before {
    content: "CONTACT";
  }
  #member .sub_ttl01 h2.f_main::before {
    content: "MEMBER'S PAGE";
  }
  #member.partner .sub_ttl01 h2.f_main::before {
    content: "PARTNER PAGE";
  }
  #roomcalendar .sub_ttl01 h2.f_main::before {
    content: "HALL BOOKING";
  }
  #material .sub_ttl01 h2.f_main::before {
    content: "MATERIAL";
  }
  #hotline .sub_ttl01 h2.f_main::before {
    content: "HOTLINE";
  }
  #archive .sub_ttl01 h2.f_main::before {
    content: "PAST WEBPAGE";
  }
  #archive.kaihou .sub_ttl01 h2.f_main::before {
    content: "PAST ANNUAL REPORT";
  }
  #document .sub_ttl01 h2::before {
    content: "BASIC MATERIAL";
  }
  #member_report .sub_ttl01 h2.f_main::before {
    content: "EVENT MOVIES";
  }
  #member_report.member_seminar .sub_ttl01 h2.f_main::before {
    content: "COVID SEMINER";
  }
  #club .sub_ttl01 h2.f_main::before {
    content: "CLUB";
  }
  #member-list .sub_ttl01 h2.f_main {
    padding-top: 75px;
  }
  #member-list .sub_ttl01 h2.f_main::before {
    white-space: pre;
    content: "MEMBER LIST / \A ORGANIZATION CHART";
    font-size: 30px;
    line-height: 1.1;
  }
  #privacypolicy .sub_ttl01 h2.f_main::before {
    content: "PRIVACY POLICY";
  }

  #keizoku .sub_ttl01 h2.f_main {
    padding-top: 75px;
  }
  #keizoku .sub_ttl01 h2.f_main::before {
    white-space: pre;
    content: "EVENTS PRODUCED \A BY NAGOYA JC";
    font-size: 30px;
    line-height: 1.1;
  }
  #supporting .sub_ttl01 h2.f_main::before {
    content: "SUPPORTING COMPANY";
    font-size: 30px;
  }
  #sdgs .sub_ttl01 h2.f_main::before {
    content: "Initiatives for SDGs";
  }
  #ningenryoku .sub_ttl01 h2.f_main {
    padding-top: 75px;
  }
  #ningenryoku .sub_ttl01 h2.f_main::before {
    white-space: pre;
    content: "OUTSTANDING \A YOUNG PERSONG";
    font-size: 30px;
    line-height: 1.1;
  }
  #th_75 .sub_ttl01 h2.f_main::before {
    content: "75th Anniversary";
  }
  #world2027 .sub_ttl01 h2.f_main::before {
    content: "WORLD CONGRESS";
  }
  #international .sub_ttl01 h2.f_main::before {
    content: "INTERNATIONAL EXCHANGE";
    font-size: 24px;
  }
  #international .sub_ttl01 h2.f_main {
    padding-top: 30px;
  }
  #sister-jci .sub_ttl01 h2.f_main::before {
    content: "SISTER JC";
  }
  #bcp02 .sub_ttl01 h2.f_main {
    padding-top: 75px;
  }
  #bcp02 .sub_ttl01 h2.f_main::before {
    white-space: pre;
    font-size: 30px;
    line-height: 1.1;
    content: "BUSINESS CONTINUITY \A PLANNING";
  }
  #mazmotte .sub_ttl01 h2.f_main {
    padding-top: 70px;
  }
  #mazmotte .sub_ttl01 h2.f_main::before {
    content: "MAZ-MOTTE PUBLISHED \A BY NAGOYA JC";
    font-size: 28px;
    white-space: pre;
    line-height: 1.1;
  }
}

.f_main {
  color: #0099dd;
  transition: 0.3s;
}

#club .f_main,
#member-list .sub_ttl01 .f_main {
  color: #fff;
}

.f_main02 {
  color: #0099dd;
  transition: 0.3s;
}

a.f_main:hover {
  color: #0099dd;
  transition: 0.3s;
  opacity: 0.6;
}
.f_sub {
  color: #333;
}

a.f_wh:hover {
  color: #fff;
  transition: 0.3s;
  opacity: 0.6;
}
.f_gray {
  color: #b9b9b9;
  transition: 0.3s;
}
.f_gray:hover {
  color: #b9b9b9;
  transition: 0.3s;
  opacity: 0.6;
}

.f_red {
  color: #e0241f;
}

i.i_18 {
  font-size: 18px;
  top: 4px;
  margin-right: 5px;
}

.slick-dots li button:before {
  font-size: 12px;
}

.fl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
}

.wh_bg {
  background: #fff;
  width: 1150px;
  margin: auto;
}
.btn-wap {
  text-align: center;
  margin: 60px auto 0;
}

#flow .btn-wap{
  margin-bottom: 60px;
}


#ningenryoku .btn-wap {
  margin-bottom: 150px;
}
@media (max-width: 430px) {
  #ningenryoku .btn-wap {
    margin-bottom: 60px;
    margin-top: 20px;
  }
}

.btn .arrow {
  margin-top: -6px;
  position: relative;
  top: 7px;
}
.btn_sub {
  background-color: #f3c338;
  border: 2px solid #f3c338;
  color: #0099dd !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  padding: 5px 30px;
  border-radius: 5px;
  font-weight: 900;
}
.btn_green {
  padding: 3px 10px;
  line-height: 24px;
  color: #fff;
  background: #619c4a;
  text-align: center;
  display: inline-block;
}
a.btn_green {
  border: 1px #619c4a solid;
  transition: 0.3s;
  padding: 0 10px 5px;
}
.btn_pink {
  padding: 3px 10px;
  line-height: 24px;
  color: #fff;
  background: #cf6289;
  text-align: center;
  display: inline-block;
}
.btn_red {
  padding: 3px 10px;
  line-height: 24px;
  color: #fff;
  background: #df3c3e;
  text-align: center;
  display: inline-block;
}

.btn_og {
  padding: 0 10px 5px;
  line-height: 24px;
  color: #fff;
  background: #e4884a;
  text-align: center;
  display: inline-block;
  border: 1px #e4884a solid;
}
.btn_blue {
  padding: 0 10px 5px;
  line-height: 24px;
  color: #fff;
  background: #60aee0;
  text-align: center;
  display: inline-block;
  border: 1px #60aee0 solid;
}
.btn_power {
  padding: 0 10px 5px;
  line-height: 24px;
  color: #fff;
  background: #d24625;
  text-align: center;
  display: inline-block;
  border: 1px #d24625 solid;
}
.btn_blue i,
.btn_og i,
.btn_green i,
.btn_red i {
  position: relative;
  top: 6px;
}

.btn_yellow {
  padding: 0 30px;
  line-height: 24px;
  border-radius: 20px;
  color: #fff;
  background: #f3d300;
  text-align: center;
  display: inline-block;
  border: 1px #f3d300 solid;
}
.btn_wh {
  padding: 0 20px 0 10px;
  line-height: 40px;
  color: #000;
  background: #fff;
  text-align: center;
  display: inline-block;
  border: 1px #fff solid;
  font-weight: 900;
}

.main_stripe_bg {
  background: #028cd7;
  background-size: 18px 18px;
}

.sub_stripe_bg {
  background-image: linear-gradient(
    -45deg,
    #fff 6.25%,
    #c3e9fe 6.25%,
    #c3e9fe 12.5%,
    #c3e9fe 12.5%,
    #c3e9fe 18.75%,
    #c3e9fe 18.75%,
    #c3e9fe 25%,
    #fff 25%,
    #fff 31.25%,
    #c3e9fe 31.25%,
    #c3e9fe 37.5%,
    #c3e9fe 37.5%,
    #c3e9fe 43.75%,
    #c3e9fe 43.75%,
    #c3e9fe 50%,
    #fff 50%,
    #fff 56.25%,
    #c3e9fe 56.25%,
    #c3e9fe 62.5%,
    #c3e9fe 62.5%,
    #c3e9fe 68.75%,
    #c3e9fe 68.75%,
    #c3e9fe 75%,
    #fff 75%,
    #fff 81.25%,
    #c3e9fe 81.25%,
    #c3e9fe 87.5%,
    #c3e9fe 87.5%,
    #c3e9fe 93.75%,
    #c3e9fe 93.75%,
    #c3e9fe
  );
  background-size: 18px 18px;
}

.sub_bg {
  background: #c3e9fe;
}

i.keyboard_arrow_right {
  position: relative;
  top: 6px;
}

/* Sink */
.hvr-sink {
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

#container {
  margin: 80px auto 60px;
}
#front #container {
  margin-top: 0;
}
.container_1080 {
  max-width: 1080px;
  width: 90%;
  margin: auto;
}
.fl.container_1080 {
  max-width: none;
}
h3.ttl01 {
  line-height: 0.8;
  position: relative;
  top: -14px;
  margin-bottom: 20px;
}
#member-list h3.ttl02:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 7%;
  border-bottom: 2px solid #0099dd;
}
h3.ttl02 span {
  margin-right: 10px;
}
h3.ttl03 {
  position: relative;
  line-height: 2.4;
}
h3.ttl03:before {
  content: "";
  position: absolute;
  bottom: 0px;
  display: inline-block;
  width: 60px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #0099dd;
  border-radius: 2px;
}

@media (max-width: 768px) {
  .btn_blue i,
  .btn_og i,
  .btn_green i,
  .btn_red i {
    font-size: 18px;
    top: 4px;
    margin-right: 3px;
  }
  .wh_bg {
    width: 90%;
  }
  .btn_pink,
  .btn_green {
    padding: 0 10px;
  }

  .txt_left_sp {
    text-align: left;
  }
  #container {
    margin: 60px auto 30px;
  }
}

/*---------------------/header---------------------*/
header {
  top: 0;
  width: 100%;
	position: relative;
}
header .inner {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 14px 0 20px;
  background: #fff;
  z-index: 1000;
}
#front header .inner {
  background: transparent;
  padding: 14px 0 20px;
  height: 75px;
  transition: all 0.5s;
}
@media screen and (max-width: 1240px) {
  header .inner {
    width: 1240px;
  }
}
#front header .inner:hover {
  background: #fff;
  transition: all 0.5s;
}
#front header.white .inner {
  background: #fff;
  transition: all 0.5s;
  height: 50px;
}

#front header .inner .nav_wap {
  height: 75px;
  transition: all 0.5s;
  margin-top: 0;
}

#front header .inner:hover .nav_wap {
  margin-top: 10px;
}
#front header.white .inner:hover .nav_wap {
  margin-top: 0;
}

header .inner .flex02 {
  height: 45px;
  display: flex;
  margin: 0 20px;
  justify-content: space-between;
  position: relative;
  z-index: 10000;
}
header h1 a {
  width: 350px;
  display: block;
  padding: 40px 0 0;
  margin-top: 7px;
  overflow: hidden;
  height: 0;
  background: url(img/common/header_logo02.svg) center center no-repeat;
}
#front header h1 a {
  width: 195px;
  padding: 110px 0 0;
  background: #fff url("img/top/front_header_logo.svg") center center no-repeat;
  background-size: 155px;
  border-radius: 0 0 50px 0;
  margin-top: 6px;
  position: relative;
  top: -21px;
  left: -20px;
}
#front header.white h1 a {
  width: 350px;
  padding: 40px 0 0;
  margin-top: 8px;
  background: url(img/common/header_logo02.svg) center center no-repeat;
  border-radius: 0;
  top: 0;
  left: 0;
}
@media (max-width: 768px) {
  #front header.white h1 a {
    margin-top: -3px;
  }
}

@media (max-width: 431px) {
  #front header.white h1 a {
    margin-top: -1px;
  }
}

header #nav01 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header #nav01 li a {
  font-size: 14px;
  color: #fff;
  text-align: center;
  line-height: 1;
  padding: 6px 15px 0;
  height: 24px;
  line-height: 1;
	box-sizing: border-box;
  min-width: 90px;
  /* font-weight: bold; */
}
header #nav01 li.slogan {
  margin-right: 20px;
}
header #nav01 li.slogan a {
  position: relative;
  padding-left: 15px;
  color: #333;
}
#front header #nav01 li.slogan a {
  color: #fff;
}
#front header .inner:hover #nav01 li.slogan a,
#front header.white #nav01 li.slogan a {
  color: #333;
}
header #nav01 li a:hover {
  opacity: 0.7;
}
header #nav01 li.slogan a::before {
  content: "";
  position: absolute;
  top: 16px;
  right: 0px;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 1.5px;
  height: 6px;
  background: #333;
  transition: background 0.3s;
}
header #nav01 li.slogan a::after {
  content: "";
  position: absolute;
  top: 12px;
  right: 0px;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 1.5px;
  height: 6px;
  background: #333;
  transition: background 0.3s;
}
#front header #nav01 li.slogan a::before,
#front header #nav01 li.slogan a::after {
  background: #fff;
}
#front header .inner:hover #nav01 li.slogan a::before,
#front header .inner:hover #nav01 li.slogan a::after,
#front header.white #nav01 li.slogan a::before,
#front header.white #nav01 li.slogan a::after {
  background: #333;
}
header #nav01 li.partner a {
  display: block;
  background: #0f73eb;
}
header #nav01 li.login a {
  display: block;
  background: #009ade;
}
header #nav01 li.english a {
  display: block;
  background: #013384;
}
header #nav01 li.header_btn01 {
  background: #0099dd;
  line-height: 24px;
  border-radius: 0 0 8px 8px;
}
header #nav02 {
  display: flex;
  width: 605px;
  height: 60px;
  box-sizing: border-box;
  padding: 7px 0 0;
  justify-content: space-between;
}
#front header #nav02 {
  width: 720px;
  height: 50px;
  background: #fff;
  border-radius: 50px;
  line-height: 50px;
  margin-top: 10px;
  padding: 0 50px 0 60px;
}
#front header .inner:hover #nav02,
#front header.white #nav02 {
  width: 605px;
  height: 60px;
  background: transparent;
  line-height: 1.6em;
  margin-top: 0;
  padding: 7px 0 0;
}
header.white #nav02 {
  display: flex;
  width: 605px;
  height: 50px;
  box-sizing: border-box;
  justify-content: space-between;
}
header #nav02 > li:hover .menu {
  max-height: 9999px;
  opacity: 1;
}
header #nav02 > li > a {
  display: block;
  transition: all 0.2s ease-in;
  color: #333;
  font-size: 14px;
}
header #nav02 li a:hover {
  color: #4299cb;
}
header #nav02 .menu {
  transition: all 0.2s ease-in;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  width: 100vw;
  min-width: 1200px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  position: absolute;
  top: 65px;
  color: #fff;
  background-color: #ccebf8;
}
#front header #nav02 .menu {
  top: 94px;
}
#front header.white #nav02 .menu {
  top: 70px;
}

header #nav02 .menu .flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  max-width: 1200px;
  width: 100%;
  margin: auto;
  padding: 30px 0 60px;
  box-sizing: border-box;
  height: 500px;
  color: #333;
}
header #nav02 .menu .flex h2 {
  width: 195px;
}
header #nav02 .menu .flex h2 span {
  font-weight: bold;
  font-size: 22px;
  position: relative;
}
header #nav02 .menu .flex h2 span::before {
  content: "";
  position: absolute;
  right: 50%;
  bottom: -8px;
  width: 50%;
  height: 2px;
  background: #0099dd;
}
header #nav02 .menu .flex h2 span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  width: 50%;
  height: 2px;
  background: #bbbbbb;
}
header #nav02 .menu .flex .box {
  width: 250px;
  margin-right: 25px;
  display: block;
  text-align: left;
}
header #nav02 .menu .flex .box .img {
  width: 250px;
  margin-bottom: 15px;
  height: 150px;
  overflow: hidden;
}
header #nav02 .menu .flex .box .text span {
  position: relative;
  font-weight: bold;
  color: #333333;
  font-size: 16px;
}

header #nav02 .menu .flex .box .text span::before {
  content: "";
  position: absolute;
  right: 50%;
  bottom: -8px;
  width: 50%;
  height: 2px;
  background: #0099dd;
}
header #nav02 .menu .flex .box .text span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  width: 50%;
  height: 2px;
  background: #bbbbbb;
}
header #nav02 .menu .flex .box:hover .img img {
  transform: scale(1.3);
  opacity: 1;
}
header #nav02 .menu .flex .box:hover .text {
  opacity: 0.7;
}
header #nav02 .menu ul.list_ul {
  display: block;
  text-align: left;
}
header #nav02 ul.list_ul li a {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
  display: inline-block;
  color: #333333;
  position: relative;
}
header #nav02 ul.list_ul li:last-of-type a {
  margin-bottom: 0;
}
header #nav02 ul.list_ul li a:hover {
  opacity: 1;
  color: #333333;
}
header #nav02 ul.list_ul li a::before {
  content: "-";
  padding-right: 15px;
}
header #nav02 ul.list_ul li a::after {
  position: absolute;
  content: "";
  left: 0;
  bottom: -2px;
  height: 1.5px;
  width: 0;
  background: #0099dd;
  transition: 0.3s;
}
header #nav02 ul.list_ul li a:hover::after {
  width: 100%;
  transition: 0.3s;
}
header #nav02 .menu ul.sns_ul {
  display: flex;
  justify-content: space-between;
  width: 680px;
  height: auto;
  align-items: center;
  text-align: center;
}
header #nav02 .menu ul.sns_ul li a {
  display: block;
  padding: 135px 0 0;
  min-width: 120px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  background: url(img/common/nav_icon01.png) no-repeat top center / 110px;
}
header #nav02 .menu ul.sns_ul li:nth-of-type(2) a {
  background: url(img/common/nav_icon02.png) no-repeat top center / 110px;
}
header #nav02 .menu ul.sns_ul li:nth-of-type(3) a {
  background: url(img/common/nav_icon03.png) no-repeat top center / 110px;
  font-size: 20px;
}
header #nav02 .menu ul.sns_ul li:nth-of-type(4) a {
  background: url(img/common/nav_icon05.png) no-repeat top center / 110px;
}
header #nav02 .menu ul.sns_ul li:nth-of-type(5) a {
  background: url(img/common/nav_icon06.png) no-repeat top center / 110px;
}
header #nav02 .menu ul.sns_ul li a:hover {
  opacity: 0.7;
  color: #0099dd;
}

header #nav02 .menu ul.contact_ul {
  display: flex;
  justify-content: space-between;
  /* width: 400px; */
  width: 260px;
  height: auto;
  align-items: center;
  text-align: center;
}
header #nav02 .menu ul.contact_ul li a {
  display: block;
  padding: 135px 0 0;
  min-width: 120px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  background: url(img/common/nav_icon07.png) no-repeat top center / 110px;
}
/* header #nav02 .menu ul.contact_ul li:nth-of-type(2) a {
  background: url(img/common/nav_icon08.png) no-repeat top center / 110px;
} */
header #nav02 .menu ul.contact_ul li:nth-of-type(3) a {
  background: url(img/common/nav_icon09.png) no-repeat top center / 110px;
}
header #nav02 .menu ul.sns_ul li a:hover {
  opacity: 0.7;
  color: #0099dd;
}

header #nav02 li.arrow > a {
  padding: 0 20px 0 0;
  position: relative;
}
header #nav02 li.arrow:last-of-type > a{
  padding: 0;
}


header #nav02 li.arrow > a::before {
  content: ">";
  position: absolute;
  top: 25%;
  right: -5px;
  transform: scaleY(0.5) translate(-50%, -50%) rotate(90deg);
}
header #nav02 li.arrow:last-child > a::before {
  display: none;
}
header #nav02 > li > a {
  position: relative;
}
header #nav02 > li > a::after {
  content: "";
  width: 0;
  height: 2px;
  background: #0099dd;
  position: absolute;
  bottom: -2px;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.3s;
}

@media (max-width: 1200px) {
  header #nav02 .menu {
    width: 100%;
    min-width: none;
    left: 50%;
  }
}

@media (max-width: 768px) {
  header .pc_blocl {
    display: none;
  }
  header .inner {
    height: 60px;
    padding: 0;
  }
}

header .menu-trigger {
  display: none;
}
@media (max-width: 768px) {
  #front header .inner {
    height: 60px;
    padding: 0;
  }
  #front header.white .inner {
    height: 60px;
	  padding: 4px 0 0;
	  box-sizing: border-box;
  }
  header .inner .flex02 {
    height: 60px;
    position: fixed;
    z-index: 10000;
    top: 0;
    left: 0;
    right: 0;
  }
  header .inner .flex02 h1 {
    position: relative;
    z-index: 3;
    margin-top: 5px;
  }
  header.white .inner .flex02 h1 {
    margin-top: 15px;
  }
  header .inner .flex02 .ham {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 2;
  }

  header .inner .flex02 .ham::before {
    content: "";
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: #fff;
  }
  #front header h1 a {
    background: url(img/common/header_logo02.svg) center center no-repeat;
    width: 350px;
    padding: 40px 0 0;
    position: static;
    border-radius: 0;
  }
  header h1 a {
    background: url(img/common/header_logo02.svg) center left no-repeat;
    background-size: 300px;
  }
  header .menu-trigger {
    display: block;
  }
}

header .menu-trigger {
  position: absolute;
  top: 0;
  right: 0;
  background: #0099dd;
  cursor: pointer;
  width: 60px;
  height: 60px;
  transition: all 0.5s;
}
header .menu-btn,
header .menu-btn span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
header .menu-btn {
  position: absolute;
  width: 30px;
  height: 23px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}
header .menu-btn span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background: #fff;
}
header .menu-btn span:nth-of-type(1) {
  top: 0;
}
header .menu-btn span:nth-of-type(2) {
  top: 10px;
}
header .menu-btn span:nth-of-type(3) {
  bottom: 0;
}
header .menu-trigger.active .menu-btn span:nth-of-type(1) {
  -webkit-transform: translateY(15px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}
header .menu-trigger.active .menu-btn span:nth-of-type(2) {
  opacity: 0;
}
header .menu-trigger.active .menu-btn span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-10px) rotate(45deg);
}
header nav {
  display: none;
}

@media (max-width: 768px) {
  header nav {
    background-color: #0099dd;
    position: absolute;
    top: -1000px;
    left: 0;
    right: 0;
    bottom: 0;
    height: 960px;
    max-height: 100vh;
    display: block;
    padding: 35px;
    transition: 0.5s;
    width: 100%;
    z-index: -5;
    transition: all 0.5s;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
  }
}
header nav.open {
  top: 60px;
  bottom: 0;
  transition: 0.5s;
}
@media (min-width: 769px) {
  header nav.open {
    display: none;
  }
}
header nav ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-bottom: 35px;
}
header nav ul li {
  text-align: left;
  width: 47.5%;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  padding: 10px 0 10px 20px;
  box-sizing: border-box;
  line-height: 1.5;
  margin-bottom: 15px;
  position: relative;
}
header nav ul.border li {
  border-bottom: 1px solid #fff;
  padding: 10px 0;
}
header nav ul li::before {
  position: absolute;
  top: 10px;
  left: 0;
  content: "-";
  font-weight: bold;
  color: #fff;
}
header nav ul.border li::before {
  content: none;
}
header nav ul li a {
  font-weight: bold;
  color: #fff;
}
header nav .flex_icon {
  display: flex;
  justify-content: center;
}
header nav .flex_icon .icon {
  width: 17%;
  text-align: center;
  color: #fff;
}
header nav .flex_icon .icon:nth-of-type(4) {
  display: none;
}
header nav .flex_icon .icon a {
  color: #fff;
  display: block;
  line-height: 1;
  font-size: 14px;
  text-align: center;
}
header nav .flex_icon .icon:nth-of-type(3) a {
  font-size: 18px;
}
header nav .flex_icon .icon a img {
  width: 100px;
  height: auto;
  padding: 0 0 15px;
  display: block;
  margin: auto;
}
header nav ul li a .sp {
  display: none;
}
@media (max-width: 430px) {
  header nav ul li {
    font-size: 14px;
    width: 190px;
    padding: 15px 0 15px 15px;
    margin: 0;
  }
  header nav ul.border li {
    border-bottom: 1px solid #fff;
    padding: 15px 10px 15px;
    font-size: 16px;
  }
  header nav ul li::before {
    top: 15px;
    left: 3px;
  }
  header nav ul li.small a {
    letter-spacing: -1px;
  }
  header nav {
    padding: 10px 10px 75px;
  }
  header nav ul li a .sp {
    display: block;
  }
  header nav .flex_icon {
    flex-wrap: wrap;
  }
  header nav .flex_icon .icon {
    width: 30%;
  }
  header nav .flex_icon .icon:nth-of-type(n + 4) {
    margin-top: 30px;
  }
}
/*---------------------header sp/---------------------*/

/*---------------------/footer---------------------*/
footer {
  margin-top: 100px;
  color: #fff;
  position: relative;
  background: #0a0f29;
  padding-bottom: 60px;
}
#front footer {
  margin: -60px auto 0;
}
footer.en h4 {
  margin: 20px 10px 10px;
}
footer.en h5 {
  margin: 0 10px 10px;
}

/* バナースライダー */
footer .swiper {
  padding: 120px 0 40px;
  width: 1200px;
  margin: auto;
}
footer .swiper .swiper-pagination {
  bottom: 0 !important;
}
footer .swiper .swiper-pagination .swiper-pagination-bullet {
  background: #999999 !important;
  opacity: 1;
}
footer .swiper .swiper-pagination .swiper-pagination-bullet-active {
  background: #0099dd !important;
}
footer .swiper .swiper-slide {
  display: block;
  width: 220px !important;
  height: 100px;
}
footer .swiper .swiper-slide img {
  display: block;
  width: 220px;
  height: 100px;
}

/* サイトマップ上 */
footer .cont {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 60px;
  padding: 60px 0 50px;
  width: 1200px;
  margin: auto;
  border-bottom: 1px solid #fff;
}
footer .cont p {
  line-height: 2;
}

/* サイトマップ */
footer #sitemap {
  width: 1200px;
  padding: 50px 0 70px;
  margin: auto;
  display: flex;
  justify-content: center;
  gap: 0 80px;
}
footer #sitemap a {
  color: hsl(0, 0%, 100%);
}
footer #sitemap .list01 {
  font-weight: normal;
  margin: 0 0 15px 0;
}
footer #sitemap li.list01 a {
  font-weight: bold;
  color: #0099dd;
  position: relative;
}
footer #sitemap li.list02 a {
  position: relative;
  font-size: 14px;
}
footer #sitemap .list02 {
  margin: 0 0 10px 0;
}

/* コピーライト */
footer .copy {
  text-align: center;
  font-size: 14px;
  color: #999999;
}

footer .copy .sp{
  display: none;
}

footer .copy a{
  color:#999;
}


/* ページトップ　*/

footer .page_top {
  transition: 10s;
  opacity: 0;
  position: fixed;
  bottom: 50px;
  right: 20px;
  z-index: 11111;
}

footer .page_top.active {
  transition: 10s;
  opacity: 1;
}

footer .page_top a {
  display: block;
  height: 0;
  width: 14px;
  padding: 107px 0 0;
  background: url(img/common/to_top.png) center center no-repeat;
  overflow: hidden;
}

@media (max-width: 431px) {
  footer .page_top a {
    display: none;
  }
}

@media (min-width: 769px) {
  footer #sitemap li.list01 a::before {
    content: "";
    width: 0;
    height: 1px;
    background: #0099dd;
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    transition: all 0.5s;
  }
  footer #sitemap li.list01 a:hover::before {
    width: 100%;
    transition: all 0.5s;
  }
  footer #sitemap li.list02 a::before {
    content: "";
    width: 0;
    height: 1px;
    background: #fff;
    position: absolute;
    bottom: -1px;
    left: 50%;
    transform: translateX(-50%);
    transition: all 0.5s;
  }
  footer #sitemap li.list02 a:hover::before {
    width: 100%;
    transition: all 0.5s;
  }
}

@media (max-width: 768px) {
  footer .pc_blocK {
    display: none;
  }
  footer .swiper {
    width: 768px;
  }
  footer .cont {
    width: 768px;
    flex-direction: column;
    align-items: center;
    border-bottom: none;
  }
  footer .cont h2 {
    width: 100%;
    text-align: center;
    padding: 0 0 45px;
    margin: 0;
  }
  footer .cont p {
    font-size: 18px;
    margin-left: 0px;
    text-align: center;
    margin: auto;
    line-height: 2;
  }
}

@media (max-width: 430px) {
  footer .swiper {
    width: 400px;
    position: relative;
  }
  footer .cont {
    flex-wrap: wrap;
  }
  footer .swiper .swiper-slide {
    width: 200px !important;
  }
  footer .swiper .swiper-slide {
    display: block;
    width: 200px !important;
    height: 90px;
    margin: 0;
    padding: 0 5px;
    box-sizing: border-box;
  }
  footer .cont {
    width: 400px;
  }
  footer .cont p {
    font-size: 16px;
  }
  footer .swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 90px;
    text-align: center;
    margin: 0;
    padding: 0;
  }
  footer .cont h2 img {
    max-width: 100%;
    height: auto;
  }
  footer .copy {
    font-size: 14px;
  }
}
/* ページトップ　*/
/*---------------------footer/---------------------*/

/*---------------------top/---------------------*/
#front {
  color: #333333;
}


/* ボタンアクション */
#front .mo_crop {
	display: block;
	position: relative;
	overflow: hidden;
  clip-path: inset(0 0 0 0);
}
#front .mo_crop .mo_crop_text {
	display: inline-block;
	width: 100%;
	position: relative;
}
#front .mo_crop .mo_crop_text_inner {
	display: block;
	font-weight: bold;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
  overflow: hidden;
}
#front .mo_crop .mo_crop_text::after {
  padding-left: 40px;
	content: attr(data-text);
	width: 100%;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0.8;
	position: absolute;
	top: 100%;
	left: 0;
}


#front .mo_crop .arrow {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 10px;
	bottom: 0;
	width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #fff;
	margin: auto 0;
  line-height: 1;
}
#front .mo_crop .arrow::before,
#front .mo_crop .arrow::after {
	content: "";
	background: url("img/top/home_btn_arrow01.svg") center/contain no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: 50%;
  transform: translateY(-50%);
	right: 7px;
	animation-fill-mode: forwards;
	animation-duration: 0.25s;
	animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
#front .cont06 .mo_crop .arrow::before,
#front .cont06 .mo_crop .arrow::after {
	background: url("img/top/home_btn_arrow02.svg") center/contain no-repeat;
}
#front .mo_crop .arrow::before {
  opacity: 1;
  animation-duration: .25s;
}
#front .mo_crop .arrow::after {
  opacity: 0;
  transform: translate(-120%, -50%) scale(.7);
  animation-duration: .35s;
}

@keyframes arrowOut {
  0% {
    transform: translateY(-50%) translateX(0) scale(1); opacity: 1;
  }
  100% {
    transform: translateY(-50%) translateX(120%) scale(1);
    opacity: 0;
  }
}
@keyframes arrowIn {
  0% {
    transform: translate(-120%, -50%) scale(.7); opacity: 0;
  }
  100% {
    transform: translate(0, -50%) scale(1);
    opacity: 1;
  }
}

@media (max-width: 431px) {
  #front .cont03 .mo_crop .mo_crop_text::after {
    padding-left: 25px;
  }
  #front .cont03 .mo_crop:hover .mo_crop_text::after {
    padding-left: 25px;
  }
}


/*---------- hover ----------*/
@media (min-width: 769px) {
  #front .mo_crop .mo_crop_text:hover {
    opacity: 1;
  }
  #front .mo_crop:hover .mo_crop_text_inner {
    transform: translateY(-100%);
    opacity: 0;
  }
  #front .mo_crop:hover .mo_crop_text::after {
    padding-left: 40px;
    transform: translateY(-100%);
    opacity: 1;
  }
  #front .mo_crop:hover .arrow::before {
    animation-name: arrowOut;
  }
  #front .mo_crop:hover .arrow::after {
    animation-name: arrowIn;
    animation-delay: .15s;
  }
}



/* ローディング */
#front .loading {
  position: fixed;
  inset: 0;
  background: #fff;
  pointer-events: none;
  overflow: hidden;
  z-index: 1000;
}
#front .loading .fill {
  position: absolute;
  left: -25vw;
  width: 0;
  height: 55vh;

  background: #2792f2;
  transform: rotate(-12deg);
  transform-origin: left center;
  animation: fillAnim 1.2s ease-out forwards;
}

#front .loading .f1 {
  top: 10vh;
  animation-delay: calc(0 * 0.15s);
}
#front .loading .f2 {
  top: 40vh;
  animation-delay: calc(1 * 0.15s);
}
#front .loading .f3 {
  top: 70vh;
  animation-delay: calc(2 * 0.15s);
}
#front .loading .f4 {
  top: 100vh;
  animation-delay: calc(3 * 0.15s);
}

@keyframes fillAnim {
  0%   {
    width: 0;
  }
  100% {
    width: 200%;
  }
}

#front .loading.active {
  animation-name: fadeoutAnime;
  animation-fill-mode: forwards;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-delay: 1s;
}
@keyframes fadeoutAnime {
  0% {
    opacity: 1;
    z-index: 1000;
  }
  100% {
    opacity: 0;
    z-index: -100;
  }
}

@media (max-width: 768px) {
  #front .loading .f1 {
    top: 0vh;
  }
  #front .loading .f2 {
    top: 30vh;
  }
  #front .loading .f3 {
    top: 60vh;
  }
  #front .loading .f4 {
    top: 90vh;
  }
}


/* key */
#front .section.upper {
  overflow: visible !important;
}
#front .key {
  width: 100%;
  height: 100vh;
  position: fixed;
	top: 0;
}
#front .key .pc {
	display: block;
}
#front .key .sp {
	display: none;
}
#front .key .video{
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
  overflow: hidden;
}
#front .key .video video{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
}

@media (max-width: 768px) {
  #front .key .video video.pc {
    display: none;
  }
  #front .key .video video.sp {
    display: block;
  }
  #front .key .video video {
    width: 100%;
  }
}


#front .key_aux {
  margin-bottom: 360px;
}
#front .key_aux .inner {
  margin-top: 100vh;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  gap: 0 100px;
}
#front .key_aux .inner .ttl {
  font-size: 44px;
  line-height: 1;
}
#front .key_aux .inner .ttl .span01 {
  display: inline-block;
  background: #fff;
  font-weight: bold;
  border-radius: 3px;
  margin-bottom: 20px;
  padding: 16px 25px 13px 30px;
  letter-spacing: 2px;
  box-sizing: border-box;
}
#front .key_aux .inner .ttl .span02 {
  margin: 0 -10px 0 -20px;
  font-weight: bold;
}

@media (min-width: 769px) {
  .key_aux picture img {
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    min-width: 1600px;
  }
}

@media (max-width: 768px) {
  #front .key_aux {
    margin-top: 60px;
    margin-bottom: 250px;
  }
  #front .key_aux .inner {
    gap: 0 60px;
  }
  #front .key_aux .inner .ttl {
    font-size: 24px;
  }
  #front .key_aux .inner .ttl .span01 {
    margin-bottom: 12px;
    padding: 11px 20px 8px 25px;
  }
  #front .key_aux .inner .text_img img {
    width: 275px;
    height: auto;
  }
}

@media (max-width: 431px) {
  #front .key_aux .inner {
    margin-left: 50px;
    flex-direction: column-reverse;
    gap: 50px;
  }
}


/* cont05 */
#front .cont05 {
  margin-bottom: 50px;
  position: relative;
}
#front .cont05::before {
  content: "";
  width: 75%;
  height: 100%;
  background: #e9edf1;
  border-radius: 0 10px 10px 0;
  position: absolute;
  top: 0;
  left: 0;
}

@media (max-width: 1240px) {
  #front .cont05::before {
    width: 85%;
  }
}

#front .cont05 .inner {
	display: flex;
  align-items: center;
	width: 100%;
	position: relative;
}
#front .cont05 .head_box {
	width: 320px;
	margin: 0 95px 0 120px;
	box-sizing: border-box;
}
#front .cont05 .head_box h2 {
  line-height: 1;
  font-size: 32px;
  font-weight: bold;
  padding-top: 50px;
  background: url("img/top/home_cont05_ttl01.svg")left top no-repeat;
  background-size: 75px;
}
#front .cont05 .head_box .text01 {
  line-height: 1.875;
  margin: 45px 0 0;
}
#front .cont05 .head_box .button {
  margin-top: 45px;
}
#front .cont05 .head_box .button a {
  width: 300px;
  height: 45px;
	color: #fff;
	background: #009ade;
  background-size: 25px;
	border-radius: 45px;
	font-size: 16px;
	font-weight: bold;
	line-height: 46px;
  padding-left: 40px;
	box-sizing: border-box;
}
#front .cont05 .text01 .sp {
  display: none;
}
#front .cont05 .content_wrap {
	/* width: calc(100vw - 496px); */
  width: 100vw;
	overflow-x: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
#front .cont05 .content_wrap::-webkit-scrollbar{
	display: none;
}
#front .cont05 .content_box {
  display: flex;
  justify-content: flex-start;
  margin-right: 40px;
}
#front .cont05 .content_box .swiper-slide {
  width: 420px;
}
#front .cont05 .content_box .cont {
  width: 100%;
  border-radius: 5px;
  padding: 20px;
  margin: 80px 30px 80px 0;
  background: #fff;
  box-shadow: 25px 25px 25px rgba(0, 0, 0, 0.07);
  box-sizing: border-box;
}
#front .cont05 .content_box .cont a {
  overflow: hidden;
  width: 380px;
  height: 250px;
  display: block;
}
#front .cont05 .content_box .cont a:hover img {
  transform: scale(1.1);
}
#front .cont05 .content_box .cont .cate_box {
  margin: 15px 0 0;
  font-size: 14px;
  display: flex;
  line-height: 1;
}
#front .cont05 .content_box .cont .cate_box span {
  text-align: center;
  display: inline-block;
  min-width: 80px;
  padding: 5px 0;
  color: #fff;
  margin-right: 5px;
}
#front .cont05 .content_box .cont .cate_box .span01 {
  background: #1d9add;
}
#front .cont05 .content_box .cont .cate_box .span02 {
  background: #004299;
}
#front .cont05 .content_box .cont h3 {
  font-size: 16px;
  font-weight: bold;
	line-height: 1.875;
  margin: 13px 0;
		overflow: hidden;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 1;
}
#front .cont05 .content_box .cont .text02 {
	line-height: 1.875;
}
#front .cont05 .content_box .cont .text02 span {
  font-weight: bold;
  color: #19a3e0;
}
#front .cont05 .content_box .cont .text03 {
	line-height: 1.875;
}
#front .cont05 .content_box .cont .text03 span {
  font-weight: bold;
  color: #19a3e0;
}


@media (max-width: 768px) {
  #front .cont05::before {
    width: 90%;
  }
	#front .cont05 .inner {
		display: flex;
    align-items: normal;
		flex-direction: column;
		width: 100%;
		position: relative;
	}
	#front .cont05 .head_box {
		width: 100%;
		margin: 60px 60px 0;
		position: relative;
	}
	#front .cont05 .head_box .button {
    margin-top: 35px;
  }
	#front .cont05 .head_box .button a {
		width: 260px;
	}
	#front .cont05 .text01 .sp {
	  display: none;
	}
	#front .cont05 .content_wrap {
		/* width: calc(100% - 120px); */
    width: 100%;
    overflow: visible;
	}
  #front .cont05 .content_box .cont {
    margin: 50px 30px 60px 0;
  }
}

@media (max-width: 431px) {
  #front .cont05 {
    background: #e9edf1;
  }
  #front .cont05::before {
    content: none;
  }
	#front .cont05 .pc {
		display: none;
	}
	#front .cont05 .head_box {
  	width: 100%;
		display: flex;
		flex-direction: column;
		gap: 20px 0;
    margin: 0;
		padding: 70px 20px 0;
	}
	#front .cont05 .head_box h2 {
		line-height: 1;
		font-size: 26px;
		font-weight: bold;
		text-align: center;
		padding-top: 36px;
		background: url("img/top/home_cont05_ttl01.svg")center top no-repeat;
		background-size: 49px;
	}
	#front .cont05 .head_box .text01 {
		line-height: 1.875;
		margin: 22px 0 0;
	}
  #front .cont05 .head_box .button {
    position: absolute;
    bottom: -528px;
    left: 50%;
    transform: translateX(-50%);
  }
	#front .cont05 .head_box .button a {
		width: 260px;
    margin: 0 auto;
	}
  #front .cont05 .content_wrap {
    margin-bottom: 92px;
  }
  #front .cont05 .content_box .swiper-slide {
    width: 350px;
  }
  #front .cont05 .content_box .cont {
    margin: 40px 20px 60px;
  }
  #front .cont05 .content_box .cont a {
    width: 310px;
    height: auto;
  }
  #front .cont05 .content_box .cont a img {
    width: 100%;
    height: auto;
  }
}


/* cont01 */
#front .cont01 {
  background: url("img/top/home_cont_bg01.png")top center no-repeat;
  margin-bottom: 420px;
  padding: 440px 0 0;
  position: relative;
}
@media (min-width: 1801px) {
  #front .cont01 {
    margin-bottom: 0;
    padding: 440px 0 420px;
    background-size: cover;
  }
}
#front .cont01 .pc{
	display: block;
}
#front .cont01 .sp{
	display: none;
}
#front .cont01 .box01 {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 0 110px;
  color: #fff;
  position: relative;
}
#front .cont01 .box01 .ttl_box {
  width: 320px;
  margin-left: 15px;
}
#front .cont01 .box01 .ttl_box h2 {
	background: url("img/top/home_cont01_ttl01.svg")left top no-repeat;
  background-size: 320px;
	padding: 325px 0 0;
  font-size: 20px;
	font-weight: bold;
	line-height: 1.8;
}
#front .cont01 .box01 .text_box {
  margin-top: -5px;
}
#front .cont01 .box01 .text_box .ttl {
	font-size: 32px;
	font-weight: bold;
	line-height: 1.625;
	text-indent: -0.5em;
	margin-bottom: 40px;
}
#front .cont01 .box01 .text_box .text01 {
	font-size: 16px;
	line-height: 2.25;
}
#front .cont01 .box01 .text_box .text01 + .text01 {
	margin-top: 20px;
}
#front .cont01 .box01 .img {
  position: absolute;
}
#front .cont01 .box01 .img img {
  width: 100%;
  height: auto;
  border-radius: 5px;
}
#front .cont01 .box01 .img01 {
  top: -400px;
  right: -185px;
}
#front .cont01 .box01 .img02 {
  top: -110px;
  left: -180px;
}
#front .cont01 .box01 .img03 {
  top: 110px;
  left: -100px;
}
#front .cont01 .box01 .img04 {
  top: 240px;
  right: -185px;
}
#front .cont01 .video {
  text-align: center;
	margin: 65px auto 70px;
}
#front .cont01 .video video {
	width: 710px;
}
#front .cont01 .box02 {
  width: 1400px;
  margin: 0 auto;
  padding: 90px 100px 100px;
  background: #e9edf1;
  border-radius: 10px;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
}
#front .cont01 .box02::after {
	content: "";
	background: url("img/top/home_cont01_text02.svg");
  background-size: 3210px;
	width: 100%;
	height: 110px;
	animation: textMove 40s linear infinite;
	position: absolute;
	top: 100px;
	left: 0;
  z-index: -1;
}

@keyframes textMove {
	0% {background-position: 3210px 0;}
	50% {background-position: 1605px 0;}
	100% {background-position: 0 0;}
}

#front .cont01 .box02 h3 {
  width: 100%;
	background: url("img/top/home_cont01_text01.svg")center top no-repeat;
  background-size: 210px;
	padding: 37px 0 0;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
  text-align: center;
}
#front .cont01 .box02 .merit_box {
  max-width: 1200px;
  margin: 60px auto 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#front .cont01 .box02 .merit_box .text_box .text02 {
	font-size: 16px;
	line-height: 2.25;
}
#front .cont01 .button {
  margin-top: 55px;
}
#front .cont01 .button a {
	display: block;
  width: 300px;
  height: 45px;
	color: #fff;
	background: #009ade;
  background-size: 25px;
	border-radius: 45px;
	font-size: 16px;
	font-weight: bold;
	line-height: 46px;
  padding-left: 40px;
	box-sizing: border-box;
}
#front .cont01 .box02 .merit_box .text_box .button {
  margin-top: 40px;
}
#front .cont01 .box02 .merit_box .text_box .button a {
  width: 340px;
}
#front .cont01 .box02 .merit_box ul {
  display: flex;
  justify-content: flex-end;
  gap: 0 20px;
}
#front .cont01 .box02 ul li {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 17px;
  width: 250px;
  height: 290px;
  background: #fff;
  box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  padding: 10px;
  text-align: center;
  box-sizing: border-box;
}
#front .cont01 .box02 ul li img {
  width: 230px;
  height: 230px;
  border-radius: 5px;
}
#front .cont01 .box02 ul li .merit_ttl {
  font-size: 18px;
  line-height: 1;
  font-weight: bold;
}

@media (max-width: 1500px) {
  #front .cont01 .box01 .img01 {
    right: 0;
  }
  #front .cont01 .box02 {
    width: calc(100% - 40px);
    padding: 90px 50px 100px;
  }
  #front .cont01 .box02 ul li {
    width: 240px;
    height: 280px;
  }
  #front .cont01 .box02 ul li img {
    width: 220px;
    height: 220px;
  }
  #front .cont01 .box02 .merit_box ul {
    gap: 0 15px;
  }
}

@media (max-width: 1240px) {
  #front .cont01 .box02 ul li {
    width: 230px;
    height: 270px;
  }
  #front .cont01 .box02 ul li img {
    width: 210px;
    height: 210px;
  }
}

@media (max-width: 768px) {
  #front .cont01 .pc {
    display: none;
  }
  #front .cont01 .sp {
    display: none;
  }
	#front .cont01 .box01 {
		width: 100%;
    justify-content: space-between;
    gap: 0;
	}
  #front .cont01 .box01 .ttl_box {
    width: 265px;
    margin-left: 30px;
  }
  #front .cont01 .box01 .ttl_box h2 {
    background: url("img/top/home_cont01_ttl01.svg")left top no-repeat;
    background-size: 265px;
    padding: 280px 0 0;
    font-size: 18px;
  }
  #front .cont01 .box01 .text_box {
    margin-right: 30px;
  }
  #front .cont01 .box01 .text_box .ttl {
		font-size: 28px;
  	margin-bottom: 30px;
	}
  #front .cont01 .box01 .img01 {
    width: 180px;
    top: -400px;
    right: 20px;
  }
  #front .cont01 .box01 .img02 {
    width: 150px;
    top: -285px;
    left: 20px;
  }
  #front .cont01 .box01 .img03 {
    width: 100px;
    top: -170px;
    left: 120px;
  }
  #front .cont01 .box01 .img04 {
    display: none;
  }
  #front .cont01 .video {
		margin: 60px auto 65px;
	}
  #front .cont01 .video video {
		width: 600px;
  }
  #front .cont01 .button {
    margin-top: 45px;
  }
  #front .cont01 .button a {
		width: 265px;
    font-size: 14px;
    padding-left: 30px;
	}
  #front .cont01 .box02 {
    padding: 80px 50px 70px;
  }
  #front .cont01 .box02::after {
    top: 85px;
  }
  #front .cont01 .box02 .merit_box .text_box .button {
    margin-top: 30px;
  }
  #front .cont01 .box02 .merit_box .text_box .button a {
    width: 320px;
    margin: 0 auto;
  }
  #front .cont01 .box02 .merit_box {
    margin: 45px auto 0;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
  }
  #front .cont01 .box02 .merit_box .text_box .text02 {
    text-align: center;
  }
  #front .cont01 .box02 ul li {
    width: 200px;
    height: 240px;
  }
  #front .cont01 .box02 ul li img {
    width: 180px;
    height: 180px;
  }
}

@media (max-width: 431px) {
  #front .cont01 .pc02 {
    display: none;
  }
  #front .cont01 .sp {
    display: block;
  }
	#front .cont01 .box01 {
    display: block;
	}
  #front .cont01 .box01 .ttl_box {
    width: 100%;
    margin-left: 0;
  }
  #front .cont01 .box01 .ttl_box h2 {
    background: url("img/top/home_cont01_ttl01_sp.svg")center top no-repeat;
		background-size: 300px;
		padding: 120px 0 0;
		font-size: 14px;
    text-align: center;
	}
  #front .cont01 .box01 .text_box {
    width: 100%;
    margin-top: 40px;
    margin-right: 0;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #front .cont01 .box01 .text_box .ttl {
		font-size: 24px;
  	margin-bottom: 25px;
	}
  #front .cont01 .box01 .text_box .text01 {
    font-size: 16px;
    line-height: 2.2;
  }
  #front .cont01 .box01 .text_box .text01 + .text01 {
		margin-top: 15px;
	}
  #front .cont01 .box01 .img01 {
    width: 150px;
  }
  #front .cont01 .video {
		margin: 40px auto 125px;
	}
  #front .cont01 .video video {
		width: 390px;
  }
  #front .cont01 .button {
    margin-top: 0;
    position: absolute;
    bottom: -340px;
    left: 50%;
    transform: translateX(-50%);
  }
  #front .cont01 .button a {
		width: 265px;
    margin: 0 auto;
    padding-left: 30px;
	}
  #front .cont01 .box02 {
    padding: 60px 20px 125px;
  }
  #front .cont01 .box02 h3 {
    background-size: 190px;
		font-size: 20px;
		line-height: 1.5;
    padding: 30px 0 0;
  }
  #front .cont01 .box02 .merit_box {
    margin-top: 30px;
    gap: 30px;
  }
  #front .cont01 .box02 .merit_box .text_box .text02 {
    font-size: 16px;
    text-align: center;
  }
  #front .cont01 .box02 .merit_box .text_box .text02 .pc {
    display: block;
  }
  #front .cont01 .box02 .merit_box .text_box .button {
    margin-top: 0;
    bottom: 50px;
  }
  #front .cont01 .box02 .merit_box .text_box .button a {
    width: 295px;
  }
  #front .cont01 .box02 .merit_box ul {
    flex-direction: column;
    gap: 20px;
  }
  #front .cont01 .box02 ul li {
    width: 320px;
    height: 360px;
  }
  #front .cont01 .box02 ul li img {
    width: 300px;
    height: 300px;
  }
}


#front .fixed_bg01 {
  clip-path: inset(0);
  width: 100%;
  height: 100%;
  padding-top: 120px;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
}
#front .fixed_bg01::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background: url("img/top/home_cont_bg02.png")top center no-repeat;
  background-size: cover;
}

@media (max-width: 768px) {
  #front .fixed_bg01 {
    padding-top: 80px;
  }
}


/* cont03 */
#front .cont03 {
  width: calc(100% - 60px);
  height: 910px;
	margin: 0 auto 120px;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}
#front .cont03 .inner {
  width: 1680px;
  height: 100%;
	margin: 0 auto;
	padding: 140px 500px;
	background: #fff;
	text-align: center;
	overflow: hidden;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1750px) {
  #front .cont03 {
    width: 100%;
  }
  #front .cont03 .inner {
    border-radius: 10px;
  }
}
#front .cont03 .inner .sp {
	display: none;
}
#front .cont03 .inner h2 {
	background: url("img/top/home_cont03_ttl01.svg")center top no-repeat;
  background-size: 380px;
	padding: 180px 0 0;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.8);
}
#front .cont03 .inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 500px;
  height: 100%;
  background: url("img/top/home_cont03_slideimg01.png") repeat-y 0 0;
  animation: BgImgloopR 40s linear infinite;
}
#front .cont03 .inner h2::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 500px;
  height: 100%;
  background: url("img/top/home_cont03_slideimg02.png") repeat-y 0 0;
  animation: BgImgloop 40s linear infinite;
}
@keyframes BgImgloop {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 -1035px;
  }
}
@keyframes BgImgloopR {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 1035px;
  }
}
#front .cont03 .inner .text01 {
	font-size: 16px;
	line-height: 2.25;
	margin-top: 60px;
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.8);
}
#front .cont03 .inner .text02 {
	font-size: 16px;
	line-height: 2.25;
	margin-top: 37px;
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.8);
}
#front .cont03 .inner .button {
  margin-top: 40px;
}
#front .cont03 .inner .button a {
  display: inline-block;
  width: 340px;
  height: 45px;
  line-height: 45px;
  color: #fff;
  background: #009ade;
  background-size: 25px;
  border-radius: 45px;
  font-size: 14px;
  padding-left: 40px;
  font-weight: bold;
  text-align: left;
  box-sizing: border-box;
}
#front .cont03 .inner .earth {
  position: absolute;
  top: 130px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  opacity: 0.6;
}

@media (max-width: 768px) {
	#front .cont03 {
		height: auto;
		margin: 0 auto 80px;
	}
	#front .cont03 .inner {
    width: 100%;
		position: relative;
		top: auto;
		left: auto;
		transform: none;
    border-radius: 0;
    z-index: 0;
		padding: 290px 0;
	}
  #front .cont03 .inner::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 180px;
		background: url("img/top/home_cont03_slideimg01_sp.png");
    background-size: 1027px;
		animation: BgImgSloop 40s linear infinite;
	}
	#front .cont03 .inner::after {
		content: "";
		position: absolute;
		top: auto;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 180px;
		background: url("img/top/home_cont03_slideimg02_sp.png");
    background-size: 1027px;
		animation: BgImgSloop 40s reverse linear infinite;
	}
	@keyframes BgImgSloop {
		0% {background-position: 1003px 0;}
		50% {background-position: 501.5px 0;}
		100% {background-position: 0 0;}
	}
	#front .cont03 .inner h2::before {
	  content: none;
	}
  #front .cont03 .inner .earth {
    top: 310px;
  }
}

@media (max-width: 431px) {
  #front .cont03 {
    width: calc(100% - 40px);
  }
	#front .cont03 .inner {
		padding: 270px 0;
	}
	#front .cont03 .inner .pc {
		display: none;
	}
	#front .cont03 .inner .sp {
		display: block;
	}
	#front .cont03 .inner h2 {
		background-size: 250px;
    font-size: 14px;
		padding: 115px 0 0;
	}
	#front .cont03 .inner .text01 {
		font-size: 16px;
		line-height: 2;
		margin-top: 40px;
	}
	#front .cont03 .inner .text02 {
		font-size: 16px;
		line-height: 2;
		margin-top: 25px;
	}
  #front .cont03 .inner .button a {
    width: 300px;
    background: #009ade;
    padding-left: 25px;
  }
  #front .cont03 .inner .earth {
    width: 85%;
    top: 290px;
  }
}


/* cont04 */
#front .cont04 {
  width: calc(100% - 60px);
  margin: 120px auto;
  padding: 160px 0 100px;
  overflow: hidden;
  position: relative;
}
#front .cont04::before {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #00286a 0%, #003791 100%);
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media (min-width: 1750px) {
  #front .cont04 {
    max-width: 1680px;
  }
  #front .cont04::before {
    width: 1680px;
  }
}
#front .cont04::after {
  content: "";
  width: 1910px;
  height: 715px;
  background: url("img/top/home_cont_bg03.png")no-repeat;
  mix-blend-mode: soft-light;
  position: absolute;
  top: -215px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#front .cont04 .inner {
  width: 1380px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#front .cont04 .inner .text_box h2 {
  width: 300px;
	font-size: 16px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  background: url("img/top/home_cont04_ttl01.svg")top left no-repeat;
  background-size: 270px;
  padding-top: 168px;
}
#front .cont04 .inner .text_box .text01 {
  font-size: 16px;
  line-height: 2;
  color: #fff;
  margin: 50px 0;
}
#front .cont04 .inner .text_box .button a {
	display: block;
	width: 290px;
  height: 45px;
	color: #fff;
	background: #009ade;
  background-size: 25px;
	border-radius: 45px;
	font-size: 16px;
	font-weight: bold;
	line-height: 46px;
  padding-left: 40px;
	box-sizing: border-box;
}
#front .cont04 .inner .img_set {
  display: flex;
  justify-content: flex-end;
  gap: 0 70px;
}
#front .cont04 .inner .img_box_wrap {
  position: relative;
}
#front .cont04 .inner .img_box_wrap .ttl {
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.5;
  margin-top: 15px;
  padding-left: 15px;
  box-sizing: border-box;
  position: relative;
}
#front .cont04 .inner .img_box_wrap:nth-of-type(1) .ttl {
  font-size: 18px;
}
#front .cont04 .inner .img_box_wrap .ttl::before {
  content: "";
  width: 4px;
  height: 100%;
  background: #009ade;
  border-radius: 2px;
  position: absolute;
  left: 0;
}
#front .cont04 .inner .img_box {
  width: 430px;
  height: 430px;
  border-radius: 5px;
  position: relative;
  overflow: hidden;
}
#front .cont04 .inner .img_box img {
  width: 100%;
  height: auto;
}
#front .cont04 .inner .img_box_wrap .swiper-pagination {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 7px !important;
  position: absolute;
  left: auto !important;
	right: -14px !important;
	bottom: 63px !important;
}
#front .cont04 .inner .img_box_wrap .swiper-pagination-bullet {
	width: 7px;
	height: 7px;
	background: #009ade;
	opacity: 1;
}
#front .cont04 .inner .img_box_wrap .swiper-pagination-bullet-active {
  background: #fff;
}
#front .cont04 .inner .img_box .swiper-slide-active .img,
#front .cont04 .inner .img_box .swiper-slide-duplicate-active .img,
#front .cont04 .inner .img_box .swiper-slide-prev .img {
  animation: zoomUp 10s linear 0s normal both;
}

@keyframes zoomUp {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.15);
	}
}

@media (max-width: 1500px) {
  #front .cont04 .inner {
    width: 1100px;
  }
  #front .cont04 .inner .img_box {
    width: 340px;
    height: 340px;
  }
}

@media (max-width: 768px) {
  #front .cont04 {
    margin: 100px auto;
    padding: 140px 0 80px;
  }
  #front .cont04 .inner {
		width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 50px;
		padding: 0 30px;
		box-sizing: border-box;
	}
  #front .cont04::after {
    width: 910px;
    height: 325px;
    background-size: 910px;
    top: -75px;
  }
  #front .cont04 .inner .text_box {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #front .cont04 .inner .img_set {
    gap: 0 50px;
  }
  #front .cont04 .inner .img_box_wrap .ttl {
    font-size: 14px;
    margin-top: 10px;
    padding-left: 14px;
  }
  #front .cont04 .inner .img_box_wrap:nth-of-type(1) .ttl {
    font-size: 16px;
  }
  #front .cont04 .inner .img_box {
    width: 290px;
    height: 290px;
  }
	#front .cont04 .inner .text_box h2 {
    width: 100%;
  	font-size: 14px;
		background-size: 210px;
    padding-top: 130px;
  }
  #front .cont04 .inner .text_box .text01 {
    font-size: 14px;
    margin: 0 0 20px 0;
  }
  #front .cont04 .inner .text_box .button a {
    width: 290px;
    font-size: 14px;
    margin: 0 auto;
  }
}

@media (max-width: 431px) {
  #front .cont04 {
    width: calc(100% - 40px);
    margin: 70px auto;
    padding: 90px 0 165px;
  }
  #front .cont04 .inner {
    padding: 0 20px;
  }
  #front .cont04::after {
    top: -65px;
  }
  #front .cont04 .inner .text_box h2 {
    background: url("img/top/home_cont04_ttl01_mid.svg")top center no-repeat;
    background-size: 345px;
    padding-top: 58px;
    text-align: center;
  }
  #front .cont04 .inner .text_box {
    display: block;
  }
  #front .cont04 .inner .img_set {
    flex-wrap: wrap;
    justify-content: center;
    gap: 40px;
  }
  #front .cont04 .inner .text_box .text01 {
    margin: 30px 0 0;
    text-align: center;
    font-size: 16px;
  }
  #front .cont04 .inner .text_box .button {
    position: absolute;
    bottom: 70px;
    left: 50%;
    transform: translateX(-50%);
  }
}


/* cont06 */
#front .cont06 {
  margin: 120px auto;
  padding: 120px 0 0;
  position: relative;
  z-index: 1;
}
@media (min-width: 1800px) {
  #front .cont06 {
    margin-bottom: 3%;
  }
}
#front .cont06::before {
  content: "";
  width: calc(100% - 60px);
  height: 100%;
  background: linear-gradient(90deg, #115dbd 0%, #009ade 100%);
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1750px) {
  #front .cont06::before {
    width: 1680px;
  }
}
#front .cont06 .sp {
  display: none;
}
#front .cont06 .head_box {
  width: 1380px;
  margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
#front .cont06 .head_box h2 {
  width: 320px;
	font-size: 16px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  background: url("img/top/home_cont06_ttl01.svg")top left no-repeat;
  background-size: 270px;
  padding-top: 85px;
}
#front .cont06 .head_box .text01 {
  width: 660px;
  font-size: 16px;
  line-height: 1.75;
  color: #fff;
}
#front .cont06 .head_box .button a {
	display: block;
	width: 290px;
  height: 45px;
	color: #fff;
	background: #013384;
	border-radius: 45px;
	font-size: 16px;
	font-weight: bold;
	line-height: 46px;
  padding-left: 40px;
	box-sizing: border-box;
}
#front .cont06 .lom_box {
	margin-top: 60px;
  padding-bottom: 120px;
}
#front .cont06 .swiper01 .swiper-wrapper {
  transition-timing-function: linear;
}
#front .cont06 .swiper01 .swiper-slide {
  position: relative;
  width: 400px !important;
}
#front .cont06 .swiper01 .swiper-slide .img {
  width: 100%;
  height: auto;
  box-shadow: 20px 20px 20px rgba(0, 0, 0, 0.1);
}
#front .cont06 .swiper01 .swiper-slide .img img {
  width: 100%;
  height: auto;
  border-radius: 5px;
}
#front .cont06 .swiper01 .swiper-slide .text {
  width: 100%;
  color: #fff;
  background: #013384;
	font-size: 16px;
	line-height: 1;
  font-weight: bold;
  margin-top: -40px;
  padding: 12px 20px;
  border-radius: 0 0 5px 5px;
  box-sizing: border-box;
  position: relative;
}

@media (max-width: 1500px) {
  #front .cont06 .pc {
    display: none;
  }
  #front .cont06 .head_box {
    width: 1100px;
  }
  #front .cont06 .head_box h2 {
    width: 340px;
    padding-bottom: 10px;
  }
  #front .cont06 .head_box .text01 {
    width: 500px;
    margin-right: 20px;
  }
  #front .cont06 .head_box .button a {
  	width: 240px;
  }
}

@media (max-width: 768px) {
	#front .cont06 {
		padding: 100px 0 0;
	}
  #front .cont06::before {
    background: linear-gradient(180deg, #115dbd 0%, #009ade 100%);
  }
	#front .cont06 .head_box {
		width: 100%;
		padding: 0 60px;
    flex-wrap: wrap;
    align-items: center;
		box-sizing: border-box;
	}
	#front .cont06 .head_box h2 {
    width: 200px;
		font-size: 14px;
		background-size: 190px;
    padding-top: 60px;
	}
  #front .cont06 .head_box .text01 {
    width: 420px;
    margin-right: 0;
  }
  #front .cont06 .head_box .button {
    width: 100%;
    margin-top: 25px;
  }
	#front .cont06 .head_box .button a {
    margin: 0 0 0 auto;
		width: 290px;
    font-size: 14px;
	}
	#front .cont06 .lom_box {
		margin-top: 40px;
    padding-bottom: 100px;
	}
	#front .cont06 .swiper01 .swiper-slide {
	  width: 340px !important;
	}
  #front .cont06 .swiper01 .swiper-slide .text {
    font-size: 12px;
    margin-top: -36px;
  }
}

@media (max-width: 431px) {
 	#front .cont06 {
    margin: 70px auto 65px;
    padding: 70px 0 105px;
  }
 	#front .cont06::before {
    width: calc(100% - 40px);
  }
	#front .cont06 .head_box {
		justify-content: center;
		align-items: center;
		gap: 25px 0;
		padding: 0 40px;
	}
	#front .cont06 .head_box h2 {
		padding: 55px 0 0;
    background: url("img/top/home_cont06_ttl01.svg")top center no-repeat;
		background-size: 190px;
	}
  #front .cont06 .head_box .text01 {
    width: 100%;
    margin-top: 5px;
    font-size: 16px;
    text-align: center;
  }
  #front .cont06 .lom_box {
    padding-bottom: 35px;
  }
	#front .cont06 .swiper01 .swiper-slide {
	  position: relative;
	  width: 230px !important;
	}
	#front .cont06 .swiper01 .swiper-slide img {
	  width: 230px;
	}
	#front .cont06 .swiper01 .swiper-slide .text {
    line-height: 1.4;
    margin-top: -20px;
    padding: 12px 15px;
	}
  #front .cont06 .head_box .button {
    margin-top: 0;
    position: absolute;
    bottom: -307px;
    left: 50%;
    transform: translateX(-50%);
  }
  #front .cont06 .head_box .button a {
    margin: 0 auto;
  }
  #front .cont06 .pc {
    display: none;
  }
  #front .cont06 .sp {
    display: block;
  }
}


#front .fixed_bg02 {
  position: relative;
  z-index: 1;
}
#front .fixed_bg02::before {
  content: "";
  background: url("img/top/home_cont_bg04.svg")top center no-repeat;
  background-size: auto 100%;
  width: 1800px;
  height: 425px;
  background-size: contain;
  pointer-events: none;
  position: absolute;
  top: -300px;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1800px) {
  #front .fixed_bg02::before {
    width: 100%;
    background: url("img/top/home_cont_bg04.svg") bottom center no-repeat;
    background-size: cover;
    top: -270px;
    transform: translate(-50%,15%);
  }
}
@media (max-width: 768px) {
  #front .fixed_bg02::before {
    background: url("img/top/home_cont_bg04_sp.svg")top center no-repeat;
    background-size: auto 100%;
    width: 800px;
    height: 300px;
    top: -200px;
  }
}


/* cont11 */
#front .cont11 {
  padding: 235px 0 220px;
  background: rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
	position: relative;
}
#front .cont11 h2 {
	background: url("img/top/home_cont11_ttl01.svg")center top no-repeat;
  background-size: 750px;
  color: #fff;
	padding: 90px 0 0;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
  text-align: center;
}
#front .cont11 .inner {
  width: 1200px;
  margin: 0 auto;
  padding: 80px 0 0;
	color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
	box-sizing: border-box;
}
#front .cont11 .inner .sp {
	display: none;
}
#front .cont11 .inner .ttl {
	font-size: 18px;
	line-height: 2;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
}
#front .cont11 .inner .text01 {
	font-size: 22px;
	line-height: 1.818;
	font-weight: bold;
	margin-top: 30px;
}
#front .cont11 .inner .btn_box {
  width: 670px;
	display: flex;
  flex-wrap: wrap;
	gap: 30px;
}
#front .cont11 .inner .btn_box li a {
	display: flex;
	align-items: center;
	width: 320px;
	height: 100px;
	border-radius: 5px;
  padding-left: 40px;
	box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
#front .cont11 .inner .btn_box li a .btn_blur {
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  position: absolute;
  inset: 0;
  z-index: 1;
}
#front .cont11 .inner .btn_box li a .btn_bg {
  background: #009ade;
  position: absolute;
  inset: 0;
  opacity: 0.8;
  z-index: 2;
}
#front .cont11 .inner .btn_box li a .btn_bg::before {
  content: "";
  background: rgba(0,0,255,0.7);
  mix-blend-mode: soft-light;
  position: absolute;
  inset: 0;
  z-index: 3;
}
#front .cont11 .inner .btn_box li a .btn_text {
  width: 100%;
  color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
  position: relative;
  z-index: 4;
}
#front .cont11 .inner .btn_box .mo_crop .mo_crop_text {
  color: #fff;
	font-size: 18px;
	font-weight: bold;
}
#front .cont11 .inner .btn_box .mo_crop .mo_crop_text::after {
	transform: translateY(-43px);
  opacity: 0;
  z-index: 4;
}
#front .cont11 .inner .btn_box li a .arrow {
  right: 15px;
  z-index: 4;
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #front .cont11 .inner .btn_box .mo_crop:hover .mo_crop_text::after {
    transform: translateY(-63px);
    opacity: 1;
  }
}

@media (max-width: 768px) {
	#front .cont11 {
		padding: 150px 0 120px;
	}
  #front .cont11 h2 {
    background-size: 550px;
		padding: 70px 0 0;
		font-size: 20px;
	}
	#front .cont11 .inner {
		width: 100%;
		padding: 60px 20px 0;
	}
  #front .cont11 .inner .ttl {
    font-size: 16px;
  }
  #front .cont11 .inner .text01 {
    font-size: 20px;
  }
	#front .cont11 .inner .btn_box {
    width: 320px;
		gap: 20px;
	}
}

@media (max-width: 431px) {
	#front .cont11 {
    padding: 130px 0 100px;
	}
	#front .cont11 h2 {
    background: url("img/top/home_cont11_ttl01_sp.svg")center top no-repeat;
		background-size: 320px;
		padding: 114px 0 0;
		font-size: 14px;
	}
	#front .cont11 .inner {
    flex-direction: column;
    gap: 20px;
    padding: 35px 0 0;
	}
	#front .cont11 .inner .pc {
		display: none;
	}
	#front .cont11 .inner .sp {
		display: block;
	}
	#front .cont11 .inner .ttl {
		font-size: 16px;
		line-height: 1.8;
    text-align: center;
	}
	#front .cont11 .inner .text01 {
		font-size: 18px;
		margin-top: 25px;
    text-align: center;
	}
	#front .cont11 .inner .btn_box {
    width: calc(100% - 40px);
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 10px;
		margin: 0 auto;
	}
	#front .cont11 .inner .btn_box li a {
    width: 190px;
    height: 80px;
    padding-left: 20px;
	}
  #front .cont11 .inner .btn_box li a .btn_text {
    font-size: 16px;
  }
  #front .cont11 .inner .btn_box .mo_crop .mo_crop_text {
    font-size: 16px;
  }
  #front .cont11 .inner .btn_box li a .arrow {
    width: 23px;
    height: 23px;
    right: 13px;
  }
  #front .cont11 .inner .btn_box .mo_crop .arrow::before,
  #front .cont11 .inner .btn_box .mo_crop .arrow::after {
    width: 7px;
    height: 7px;
  }
}

@media (max-width: 768px) {
  #front header .inner {
    position: fixed;
    top: 0;
    padding-top: 0;
    transition: 0.5s;
  }
  header .inner .flex02 {
    height: 60px;
  }
  #front header:hover .inner .flex02,
  #front header.fixed .inner .flex02 {
    background: #fff;
  }
}

@media (max-width: 430px) {
  header .inner .flex02 {
    margin: 0 14px;
  }
  #front header.white h1 {
    margin-top: 12px;
  }
  #front header h1 a,
  #front header.white h1 a {
    width: 300px;
    background-size: 300px;
  }
}

/* more_info */
.more_info {
  background: #19a3e0;
  padding: 100px 0 80px;
  margin: 60px auto;
  color: #fff;
}
.more_info a {
  color: #fff;
}
#top .more_info {
  margin: auto;
  position: relative;
}
.more_info .fl {
  margin: auto;
  width: 1200px;
}
.more_info h2 {
  padding: 55px 0 0;
  margin-bottom: 50px;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  background: url(img/common/more-info_ttl.png) no-repeat top center;
}
.more_info .more_info_box img {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}
.more_info .more_info_box p {
  margin-top: 20px;
}

@media (max-width: 768px) {
	.more_info {
		padding: 80px 0;
		margin: 60px auto;
		color: #fff;
	}
	.more_info .fl {
		flex-wrap: wrap;
		gap: 25px;
		justify-content: center;
		width: 100%;
	}
}
@media (max-width: 431px) {
  .more_info {
    margin: 30px auto 0;
  }
  .more_info h2 {
    font-size: 18px;
  }
  .more_info .fl {
    gap: 30px 20px;
    width: 400px;
  }
  .more_info .more_info_box {
    width: 21%;
  }
  .more_info .more_info_box p {
    font-size: 12px;
  }
  .more_info .more_info_box img {
    max-width: 100%;
    height: auto;
  }
}

/* sns */
.sns {
  padding: 95px 0 90px;
  background: #fff;
  position: relative;
}
.sns::before {
  content: "";
  width: 100%;
  height: 138px;
  background: url(img/common/home_sns_bg.png) repeat-x center;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
}
.sns .br-tab {
  display: none;
}
.sns .fl {
  width: 1030px;
  margin: 0 auto;
  position: relative;
  align-items: center;
}
.sns h3 {
  line-height: 1.5;
  position: relative;
  font-size: 22px;
}
.sns .fl .sns_box_wrap {
  display: flex;
  justify-content: space-between;
  gap: 0 30px;
  position: relative;
  z-index: 1;
}
.sns .fl .sns_box:nth-of-type(5) p {
  font-size: 22px;
  line-height: 1;
}

.sns .fl .sns_box p {
  padding-top: 10px;
}
.admission-bnr {
  text-align: center;
}

@media (max-width: 768px) {
  /* sns */
  .sns .br-pc {
    display: none;
  }
  .sns .br-tab {
    display: block;
  }
  .sns {
    padding: 70px 15px;
  }
  .sns::before {
    background: url(img/common/home_sns_bg.png) repeat-x center / 600px;
    bottom: -10px;
    height: 60px;
  }
  .sns h3 {
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
  }
  .sns .fl .sns_box_wrap {
    flex-wrap: wrap;
    width: 100%;
  }
  .sns .sns_box {
    width: 95px;
  }
  .sns .sns_box a img {
    max-width: 100%;
    height: auto;
  }
  .sns .fl .sns_box:nth-of-type(5) p {
    font-size: 20px;
    line-height: 1.1;
  }

  /* メンバー募集 */
  img.bn_member {
    width: 90%;
    height: auto;
  }
}

@media (max-width: 431px) {
  /* sns */
  .sns h3 {
    width: 100%;
    text-align: center;
    font-size: 20px;
    margin-bottom: 40px;
  }
  .sns .fl .sns_box_wrap {
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px 40px;
  }
}

/* 協賛企業 */
#front .kyousan .tablet{
	display: none;
}
#front .kyousan .sp{
	display: none;
}
#front .kyousan {
  position: relative;
  text-align: center;
  padding: 150px 0 120px;
  z-index: 1;
  background: #fff;
}
#front .kyousan::before {
  content: "";
  width: 100%;
  height: 440px;
  background: url(img/top/home_kyosan_bg.png) no-repeat center / cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#front .kyousan h2 {
  font-size: 16px;
  font-weight: bold;
  padding-top: 45px;
  background: url(img/top/home_kyosan_ttl.png) no-repeat top center;
  margin-bottom: 40px;
}
#front .kyousan .inner {
  max-width: 1200px;
  margin: auto;
  background: #fff;
}
#front .kyousan .inner .box {
  padding: 94px 0 0;
  box-sizing: border-box;
}
#front .kyousan .inner .box .kyousanbox {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
@media (max-width: 430px) {
  #front .kyousan .inner .box .kyousanbox {
    transform: scale(0.8);
  }
}
#front .kyousan .inner .box .ttl{
	font-size: 20px;
	font-weight: bold;
	line-height: 1.6;
}
#front .kyousan .inner .box .text01{
	font-size: 16px;
	line-height: 2;
	margin-top: 33px;
}
.wp-block-image img {
  max-width: 100%;
  height: auto;
}
#front .kyousan .button a{
	display: block;
	width: 400px;
	background: #1d9add;
	border: 1px solid #1d9add;
	border-radius: 30px;
	padding: 17px 0;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	margin: 41px auto 0;
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #front .kyousan .button a:hover {
    background: #fff;
    color: #1d9add;
  }
}

@media (max-width: 768px) {
	#front .kyousan {
		padding: 150px 0 50px;
	}
	#front .kyousan .pc{
		display: none;
	}
	#front .kyousan .tablet{
		display: block;
	}
	#front .kyousan .inner .box {
		padding: 70px 15px 50px;
	}
	#front .kyousan .inner {
		width: 90%;
	}
	#front .kyousan .img {
		width: 100%;
	}
}

@media (max-width: 430px) {
	#front .kyousan .pc{
		display: none;
	}
	#front .kyousan .tablet{
		display: none;
	}
	#front .kyousan .sp{
		display: block;
	}
	#front .kyousan .inner .box {
		padding: 50px 10px;
	}
	#front .kyousan .inner .box .text01{
		font-size: 14px;
		line-height: 2;
		margin-top: 30px;
	}
	#front .kyousan .button a{
		display: block;
		width: 300px;
		background: #1d9add;
		border: 1px solid #1d9add;
		border-radius: 30px;
		padding: 17px 0;
		box-sizing: border-box;
		color: #fff;
		font-weight: bold;
		line-height: 1;
		text-align: center;
		margin: 35px auto 0;
	}
}
/*---------------------/top---------------------*/

/*---------------------/hover---------------------*/

@media (min-width: 768px) {
  .btn_main:hover {
    background-color: #fff;
    border: 2px solid #0099dd;
    color: #0099dd !important;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  .btn_main:hover i {
    color: #0099dd !important;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  .btn_sub:hover {
    background-color: #0099dd;
    border: 2px solid #f3c338;
    color: #f3c338 !important;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  .btn_sub:hover i {
    color: #f3c338 !important;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
  }
  a.btn_green:hover {
    border: 1px #619c4a solid;
    background: #fff;
    color: #619c4a;
    transition: 0.3s;
    opacity: 1;
  }
  a.btn_red:hover {
    border: 1px #df3c3e solid;
    background: #fff;
    color: #df3c3e;
    transition: 0.3s;
    opacity: 1;
  }
  a.btn_og:hover {
    border: 1px #e4884a solid;
    background: #fff;
    color: #e4884a;
    transition: 0.3s;
    opacity: 1;
  }
  a.btn_blue:hover {
    color: #60aee0;
    background: #fff;
    transition: 0.3s;
    opacity: 1;
  }
  .hvr-sink:hover,
  .hvr-sink:focus,
  .hvr-sink:active {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
  }
  header nav li.menu_01 a:hover {
    opacity: 1;
  }
  header #nav02 ul li.side-txt p:hover:after,
  header nav li.menu_01 a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }
}

#access h2.f_main,
#access h2.f_main span,
#jaycee h2.f_main,
#jaycee h2.f_main span,
#schedule h2.f_main,
#schedule h2.f_main span,
#contact h2.f_main,
#contact h2.f_main span,
#mazmotte h2.f_main,
#mazmotte h2.f_main span,
#interview h2.f_main,
#interview h2.f_main span,
#interview.interview_single h2.f_main,
#interview.interview_single h2.f_main span,
#interview h2.f_main,
#interview h2.f_main span,
#ningenryoku h2.f_main,
#ningenryoku h2.f_main span {
  color: #fff;
}
#interview.interview_single h2.f_main,
#interview.interview_single h2.f_main span {
  color: #fff;
}

/* フォーム
------------------------------------------------------------------*/
table.form {
  width: 90%;
  max-width: 860px;
  margin: 50px auto 160px;
}
table.form th {
  padding: 0 0px 15px;
  vertical-align: top;
}
table.form td {
  padding: 0px 15px 30px;
  width: 78%;
}
table.form td .con_frame01 {
  width: 100%;
  height: 40px;
  border: 1px solid #000;
  padding-left: 10px;
  box-sizing: border-box;
  font-size: 14px;
}
table.form td .con_frame03 {
  width: 100%;
  height: 240px;
  border: 1px solid #000;
  padding: 20px 0 0 10px;
  box-sizing: border-box;
  font-size: 16px;
}
table.form td .con_frame02 {
  height: 40px;
}
table.form .btn_main {
  padding: 10px 0;
  width: 150px;
  text-align: center;
  margin-top: 30px;
}
table.form .btn_back {
  padding: 10px 0;
  width: 150px;
  text-align: center;
  margin-top: 30px;
  background-color: #fff;
  border: 2px solid #0099dd;
  color: #0099dd !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  border-radius: 5px;
  font-weight: 900;
}
#contact p.contact_txt {
  margin-bottom: 20px;
}
.keizoku_fot_btn .container_1080 {
  max-width: 1120px;
}
.en h3.ttl01 {
  line-height: 1;
}
.en .about_fot_btn .container_1080 {
  max-width: 820px;
}
#keizoku.en .about_fot_btn .container_1080 {
  max-width: 1380px;
}

@media (max-width: 768px) {
  table.form {
    margin: 20px auto 40px;
  }
  table.form th {
    display: block;
    width: 100%;
    padding-bottom: 5px;
  }
  table.form td {
    display: block;
    width: 100%;
    padding: 0 0 20px 0;
  }
  table.form .btn_main {
    margin-top: 10px;
  }
}

/* 人間力
------------------------------------------------------------------*/
#ningenryoku .container_1200 {
  width: 1200px;
  margin: 0 auto;
}
/* 2024.10追加 */
#ningenryoku .container_1200 .img {
  text-align: center;
}
#ningenryoku .container_1200 h3 {
  font-size: 30px;
  line-height: 1.2;
  position: relative;
  margin: 0 0 45px;
  color: #1d9add;
  font-weight: bold;
  padding: 0 ;
}
#ningenryoku .container_1200 h3::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #bdbdbd;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 1;
}
#ningenryoku .container_1200 h3::after {
  content: "";
  width: 100px;
  height: 2px;
  background: #1d9add;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 2;
}
#ningenryoku .container_1200 table {
  border-spacing: 2px;
  width: 100%;
  border-collapse: separate;
}
#ningenryoku .container_1200 table tr th {
  width: 200px;
  color: #fff;
  background: #1d9add;
  padding: 25px 0;
  font-size: 20px;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
}
#ningenryoku .container_1200 table tr td {
  background: #e1f2fa;
  padding: 25px;
  vertical-align: middle;
  text-align: left;
  font-size: 20px;
  font-weight: bold;
}

#ningenryoku .container_1200 .cont01 {
  padding: 0 20px;
}
#ningenryoku .container_1200 .cont01 h3 {
  color: #0099dd;
  font-weight: bold;
  font-size: 36px;
  line-height: 1.2;
  margin-top: 100px;
}
#ningenryoku .container_1200 .cont01 .text {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  line-height: 2;
  position: relative;
}
#ningenryoku .container_1200 .cont01 .button {
  margin: 0 auto 50px;
  text-align: center;
}
#ningenryoku .container_1200 .cont01 .button a {
  display: inline-block;
  text-align: center;
  padding: 15px 0;
  color: #1d9add;
  font-weight: bold;
  border: 2px solid #1d9add;
  font-size: 16px;
  width: 390px;
}
#ningenryoku .container_1200 .cont01 .text::before {
  content: url(img/ningenryoku/ningenryoku_bg01.png);
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#ningenryoku .container_1200 .cont01 .text .sp,
#ningenryoku .container_1200 .cont01 .text .tablet {
  display: none;
}
#ningenryoku .container_1200 .cont01 .img {
  text-align: center;
}
#ningenryoku .container_1200 .cont01 .box {
  display: flex;
  justify-content: center;
  margin: 0 0 90px;
}
#ningenryoku .container_1200 .cont01 .box .img {
  max-width: 45%;
  margin: 0 30px;
  text-align: center;
}
#ningenryoku .container_1200 .cont01 .box .img img {
  padding-bottom: 10px;
}
#ningenryoku .container_1200 .cont01 .img02 {
  text-align: center;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #ningenryoku .container_1200 {
    width: 100%;
  }
  #ningenryoku .container_1200 .cont01 .text .tablet {
    display: inline;
  }
  #ningenryoku .container_1200 .cont01 .img img {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  #ningenryoku .container_1200 {
    width: 430px;
    margin-top: 50px;
  }
  #ningenryoku .container_1200 .cont01 {
    padding: 0 15px 120px;
  }
  #ningenryoku .container_1200 .cont01 .text::before {
    content: url(img/ningenryoku/ningenryoku_bg01.png);
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%) scale(0.6);
    z-index: -1;
  }
  #ningenryoku .container_1200 .cont01 .button a {
    width: 300px;
  }
  #ningenryoku .f_48 {
    font-size: 6vw;
  }
  #ningenryoku .container_1200 .cont01 h3 {
    font-size: 20px;
    letter-spacing: -0.5px;
    margin-top: 60px;
  }
  #ningenryoku .container_1200 .cont01 .text {
    font-size: 16px;
  }
  #ningenryoku .container_1200 .cont01 .text .sp {
    display: inline;
  }
  #ningenryoku .container_1200 .cont01 .box .img img {
    max-width: 100%;
  }
  #ningenryoku .container_1200 .cont01 .img img {
    max-width: 100%;
  }
}

#ningenryoku .container_1200 .cont02 {
  position: relative;
  padding: 25px 0 0;
  margin: 0 0 -50px;
}
#ningenryoku .container_1200 .cont02::after {
  position: absolute;
  content: "";
  height: 88%;
  width: 125vw;
  min-width: 1600px;
  background: #e1f2fa;
  top: 0;
  left: 50%;
  transform: translateX(-50%) rotate(-9deg);
  z-index: -1;
}
#ningenryoku .container_1200 .cont02 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 20px 0;
}
#ningenryoku .container_1200 .cont02 .video {
  width: 50%;
  padding: 0 0 30px;
}
#ningenryoku .container_1200 .cont02 .video img {
  width: 100%;
}
#ningenryoku .container_1200 .cont02 .text_box {
  width: 50%;
  box-sizing: border-box;
  padding: 0 0 0 2%;
}
#ningenryoku .container_1200 .cont02 .text_box h3 {
  font-size: 28px;
  line-height: 1.8;
  padding: 35px 0 25px;
  font-weight: bold;
  color: #1d9add;
}
#ningenryoku .container_1200 .cont02 .text_box .text {
  font-size: 18px;
  letter-spacing: -0.5px;
  line-height: 1.8;
}
#ningenryoku .container_1200 .cont02 .img {
  width: 32%;
}
#ningenryoku .container_1200 .cont02 .img img {
  width: 100%;
}
#ningenryoku .container_1200 .cont02 .text_box .text .sp {
  display: none;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* 2024.10追加 */
  #ningenryoku .container_1200 .cont01 {
    padding: 0 20px;
  }
  #ningenryoku .container_1200 .cont01 h3 {
    font-size: 24px;
    margin-top: 80px;
  }
  #ningenryoku .container_1200 table tr th {
    width: 30%;
    font-size: 16px;
  }
  #ningenryoku .container_1200 table tr td {
    font-size: 16px;
  }
  
  #ningenryoku .container_1200 .cont02 .video {
    width: 100%;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .video img {
    max-width: 600px;
  }
  #ningenryoku .container_1200 .cont02 .text_box {
    width: 100%;
    padding: 0 0 35px;
  }
  #ningenryoku .container_1200 .cont02 .text_box h3 {
    font-size: 24px;
    padding: 0px 0 25px;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .text_box .text {
    font-size: 15px;
    line-height: 2;
    letter-spacing: 0;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .text_box .text .pc {
    display: none;
  }
}

@media (max-width: 430px) {
  #ningenryoku .container_1200 .cont02 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 15px 0;
  }
  #ningenryoku .container_1200 .cont02 .video {
    width: 100%;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .video img {
    max-width: 600px;
  }
  #ningenryoku .container_1200 .cont02 .text_box {
    width: 100%;
    padding: 0 0 35px;
  }
  #ningenryoku .container_1200 .cont02 .text_box h3 {
    font-size: 20px;
    padding: 0px 0 25px;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .text_box .text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0;
    text-align: center;
  }
  #ningenryoku .container_1200 .cont02 .text_box .text .pc {
    display: none;
  }
  #ningenryoku .container_1200 .cont02 .text_box .text .sp {
    display: block;
  }
}

#ningenryoku .container_1200 .cont03 {
  padding: 80px 20px 0;
}
#ningenryoku .container_1200 .cont03 .text06 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 40px;
}
#ningenryoku .container_1200 .cont03 h3 {
  font-size: 30px;
  line-height: 1.2;
  position: relative;
  margin: 0 0 45px;
  color: #1d9add;
  font-weight: bold;
}
#ningenryoku .container_1200 .cont03 h3.nijisenkou {
  margin-top: 130px;
}
#ningenryoku .container_1200 .cont03 h3::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #bdbdbd;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 1;
}
#ningenryoku .container_1200 .cont03 h3::after {
  content: "";
  width: 100px;
  height: 2px;
  background: #1d9add;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 2;
}
#ningenryoku .container_1200 .cont03 table {
  border-spacing: 2px;
  width: 100%;
  border-collapse: separate;
}
#ningenryoku .container_1200 .cont03 table tr th {
  width: 200px;
  color: #fff;
  background: #1d9add;
  padding: 25px 0;
  font-size: 20px;
  vertical-align: middle;
  text-align: center;
  font-weight: bold;
}
#ningenryoku .container_1200 .cont03 table tr td {
  background: #e1f2fa;
  padding: 25px;
  vertical-align: middle;
  text-align: left;
  font-size: 20px;
  font-weight: bold;
}
#ningenryoku .container_1200 .cont03 table tr td a {
  font-weight: bold;
  text-decoration: underline;
}
#ningenryoku .container_1200 .cont03 table tr td.font16 {
  font-size: 16px;
}
#ningenryoku .container_1200 .cont03 .button_box {
  display: flex;
  justify-content: center;
}
#ningenryoku .container_1200 .cont03 .button_box .button {
  width: 390px;
  margin: -60px 25px 25px;
}
#ningenryoku .container_1200 .cont03 .button_box .button a {
  display: block;
  text-align: center;
  padding: 15px 0;
  color: #1d9add;
  font-weight: bold;
  border: 2px solid #1d9add;
  font-size: 16px;
}
#ningenryoku .container_1200 .cont03 .text {
  font-weight: bold;
  font-size: 16px;
  padding: 0 0 100px;
  text-align: center;
}
#ningenryoku .container_1200 .cont03 .text .sp {
  display: none;
}
#ningenryoku .container_1200 .cont03 .text:last-of-type {
  padding: 0 0 20px;
}
#ningenryoku .container_1200 .cont03 .box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#ningenryoku .container_1200 .cont03 .box .cont {
  position: relative;
  width: 570px;
  min-height: 180px;
  padding-left: 200px;
  box-sizing: border-box;
  margin: 0 0 30px;
}
#ningenryoku .container_1200 .cont03 .box .cont .img {
  position: absolute;
  top: 0;
  left: 0;
}
#ningenryoku .container_1200 .cont03 .text02 {
  font-size: 20px;
  margin: 0 0 30px;
  font-weight: bold;
}
#ningenryoku .container_1200 .cont03 .box .cont .text03 {
  font-size: 20px;
  margin: 5px 0 0;
  font-weight: bold;
}
#ningenryoku .container_1200 .cont03 .box .cont .text04 {
  font-size: 16px;
  line-height: 1.8;
  margin: 5px 0 10px;
}
#ningenryoku .container_1200 .cont03 .box .cont .text05 {
  letter-spacing: 0.5px;
}
#ningenryoku .container_1200 .cont03 .box .cont .button {
  margin: 10px 0 0;
}
#ningenryoku .container_1200 .cont03 .box .cont .button a {
  display: inline-block;
  position: relative;
  font-size: 16px;
  padding: 3px 0;
  width: 215px;
  text-align: center;
  line-height: 1.5;
  background: #1d9add;
  font-weight: bold;
  color: #fff;
  border-radius: 30px;
}
#ningenryoku .container_1200 .cont03 table tr td .sp {
  display: none;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #ningenryoku .container_1200 .cont03 h3 {
    font-size: 24px;
  }
  .ningenryoku_break {
    display: none;
  }
  #ningenryoku .container_1200 .cont03 table tr th {
    width: 30%;
    font-size: 16px;
  }
  #ningenryoku .container_1200 .cont03 table tr td {
    font-size: 16px;
  }
  #ningenryoku .container_1200 .cont03 table tr td .pc {
    display: none;
  }
  /* #ningenryoku .container_1200 .cont03 .button_box{
		display: flex;
		justify-content: center;
	}
	#ningenryoku .container_1200 .cont03 .button_box .button{
		width: 46%;
		margin: -60px 2% 25px;
	}
	#ningenryoku .container_1200 .cont03 .button_box .button a{
		font-size: 2vw;
	}
	#ningenryoku .container_1200 .cont03 .box .cont{
		position: relative;
		box-sizing: border-box;
		margin: 0 0 50px;
	}
	#ningenryoku .container_1200 .cont03  .text02{
		font-size: 16px;
	}
	#ningenryoku .container_1200 .cont03 .box .cont .text03{
		font-size: 20px;
		margin: 5px 0 0;
		font-weight: bold;
	}
	#ningenryoku .container_1200 .cont03 .box .cont .text04{
		font-size: 16px;
		line-height: 1.8;
		margin: 5px 0 10px;
	}
	#ningenryoku .container_1200 .cont03 .box .cont .text05{
		font-size: 16px;
	}
	#ningenryoku .container_1200 .cont03 .box .cont .button{
		margin: 5px 0 0;
	}
	#ningenryoku .container_1200 .cont03 .box .cont .button a{
		display: inline-block;
		position: relative;
		font-size: 16px;
		padding: 4px 0;
		width: 215px;
		box-sizing: border-box;
		line-height: 1.8;
		background: #1d9add;
		font-weight: bold;
		color: #fff;
		border-radius: 20px;
	}*/
}

@media (max-width: 430px) {
  /* 2024.10追加 */
  #ningenryoku .container_1200 .cont01 {
    padding: 0 15px;
  }
  #ningenryoku .container_1200 table tr th {
    width: 30%;
    font-size: 12px;
    padding: 25px 10px;
  }
  #ningenryoku .container_1200 table tr td {
    font-size: 14px;
  }
  #ningenryoku .container_1200 .cont03 {
    padding: 100px 15px 0;
  }
  #ningenryoku .container_1200 .cont03 h3 {
    font-size: 20px;
  }
  .ningenryoku_break {
    display: none;
  }
  #ningenryoku .container_1200 .cont03 table tr th {
    width: 30%;
    font-size: 12px;
    padding: 25px 10px;
  }
  #ningenryoku .container_1200 .cont03 table tr td {
    font-size: 14px;
  }
  #ningenryoku .container_1200 .cont03 table tr td .pc {
    display: none;
  }
  #ningenryoku .container_1200 .cont03 table tr td .sp {
    display: block;
  }
  #ningenryoku .container_1200 .cont03 table tr td.font16 {
    font-size: 14px;
  }
  #ningenryoku .container_1200 .cont03 .button_box {
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  #ningenryoku .container_1200 .cont03 .button_box .button {
    width: 300px;
    margin: 0 auto 25px;
  }
  #ningenryoku .container_1200 .cont03 .button_box .button a {
    font-size: 16px;
  }
  #ningenryoku .container_1200 .cont03 .box .cont {
    position: relative;
    box-sizing: border-box;
    margin: 0 0 50px;
    width: 100%;
  }
  #ningenryoku .container_1200 .cont03 .text02 {
    font-size: 16px;
  }
  #ningenryoku .container_1200 .cont03 .box .cont .text03 {
    font-size: 18px;
    margin: 5px 0 0;
    font-weight: bold;
  }
  #ningenryoku .container_1200 .cont03 .box .cont .text04 {
    font-size: 14px;
    line-height: 1.8;
    margin: 5px 0 10px;
  }
  #ningenryoku .container_1200 .cont03 .box .cont .text05 {
    font-size: 14px;
  }
  #ningenryoku .container_1200 .cont03 .box .cont .button {
    margin: 15px 0 0;
  }
  #ningenryoku .container_1200 .cont03 .box .cont .button a {
    display: inline-block;
    position: relative;
    font-size: 14px;
    padding: 4px 0;
    width: 100%;
    box-sizing: border-box;
    line-height: 1.8;
    background: #1d9add;
    font-weight: bold;
    color: #fff;
    border-radius: 20px;
  }
  #ningenryoku .container_1200 .cont03 .text .sp {
    display: block;
  }
  #ningenryoku .container_1200 .cont03 table {
    border-spacing: 2px;
    width: 100%;
    border-collapse: separate;
  }
  #ningenryoku .container_1200 .cont03 .text06 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 40px;
  }
}

#ningenryoku .cont04 {
  margin: 100px 20px;
}
#ningenryoku .cont04 h3 {
  font-size: 30px;
  line-height: 1.2;
  position: relative;
  margin: 0 0 30px;
  color: #1d9add;
  font-weight: bold;
}
#ningenryoku .cont04 h3::before {
  content: "";
  width: 100%;
  height: 2px;
  background: #bdbdbd;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 1;
}
#ningenryoku .cont04 h3::after {
  content: "";
  width: 100px;
  height: 2px;
  background: #1d9add;
  position: absolute;
  bottom: -7px;
  left: 0;
  z-index: 2;
}
#ningenryoku .cont04 .bnr {
  margin: 0 auto 60px;
  padding: 10px 0 0;
  max-width: 100%;
}
#ningenryoku .cont04 .bnr img {
  max-width: 100%;
}

#ningenryoku .cont04 .cont {
  width: 48%;
  float: left;
  margin-bottom: 50px;
}
#ningenryoku .cont04 .cont:nth-of-type(2n) {
  float: right;
}

#ningenryoku .cont04 .img {
  max-width: 180px;
  width: 28%;
  float: left;
}
#ningenryoku .cont04 .img img {
  width: 100%;
}
#ningenryoku .cont04 .text_box {
  width: 68%;
  float: right;
}
#ningenryoku .cont04 .text_box h4 {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 5px;
}
#ningenryoku .cont04 .text_box .text01 {
  padding-bottom: 5px;
}
#ningenryoku .cont04 .text_box .text02 {
  padding-bottom: 10px;
}
#ningenryoku .cont04 .text_box .button {
  display: inline-block;
}
#ningenryoku .cont04 .text_box .button a {
  display: inline-block;
  position: relative;
  font-size: 16px;
  padding: 2px 20px;
  line-height: 1.8;
  background: #1d9add;
  font-weight: bold;
  color: #fff;
  border-radius: 20px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #ningenryoku .cont04 h3 {
    font-size: 24px;
  }
  #ningenryoku .cont04 .cont {
    width: 100%;
    max-width: 650px;
    float: none;
    margin: 0 auto 50px;
  }
  #ningenryoku .cont04 .cont:nth-of-type(2n) {
    float: none;
  }
  #ningenryoku .cont04 .text_box .text01 {
    font-size: 2vw;
    padding-bottom: 10px;
    line-height: 2;
  }
  #ningenryoku .cont04 .text_box .text02 {
    font-size: 14px;
    padding-bottom: 10px;
    line-height: 2;
  }
}

@media (max-width: 430px) {
  #ningenryoku .cont04 {
    margin: 50px 15px 0;
  }
  #ningenryoku .cont04 h3 {
    font-size: 20px;
  }
  #ningenryoku .cont04 .cont {
    width: 100%;
    max-width: 520px;
    float: none;
    margin: 0 auto 50px;
  }
  #ningenryoku .cont04 .cont:nth-of-type(2n) {
    float: none;
  }
  #ningenryoku .cont04 .text_box .text01 {
    font-size: 14px;
    padding-bottom: 5px;
    line-height: 2;
  }
  #ningenryoku .cont04 .text_box .text02 {
    font-size: 14px;
    padding-bottom: 10px;
    line-height: 2;
  }
  #ningenryoku .cont04 .text_box h4 {
    font-size: 16px;
    font-weight: bold;
    padding-bottom: 10px;
  }
  #ningenryoku .cont04 .cont:nth-of-type(1) .text_box h4 {
    font-size: 16px;
    font-weight: bold;
    padding-bottom: 0;
  }
  #ningenryoku .cont04 .text_box .button {
    display: block;
  }
  #ningenryoku .cont04 .text_box .button.button02 {
    margin-top: 10px;
  }
  #ningenryoku .cont04 .text_box .button a {
    display: inline-block;
    position: relative;
    font-size: 14px;
    padding: 3px 25px;
    line-height: 1.8;
    background: #1d9add;
    font-weight: bold;
    color: #fff;
    border-radius: 20px;
  }
}

/* 理事長挨拶・スローガン
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #greeting .greeting_cont01 img {
    width: 20%;
    height: auto;
  }
  #greeting .greeting_cont01 p {
    width: 76%;
  }
  #greeting .greeting_txt01 {
    margin: 80px auto 80px;
    font-size: 24px;
  }
  #greeting.en .greeting_txt01 {
    margin: 100px auto;
    line-height: 1.1;
    font-size: 40px;
  }
  #greeting .greeting_cont02 {
    margin-bottom: 100px;
  }
  #greeting .greeting_cont02 .fl {
    padding: 40px 0 200px;
    position: relative;
    width: 90%;
    max-width: 1300px;
    margin: auto;
  }
  #greeting .greeting_cont02 h4 {
    width: 70%;
    min-width: 720px;
    line-height: 2;
    padding: 60px 0;
    position: absolute;
    bottom: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.8);
  }
  #greeting .greeting_cont02 .greeting_cont02_txt01 {
    text-align: left;
    line-height: 1.8;
  }
  #greeting .greeting_cont02 h5 {
    line-height: 2;
    padding: 60px 0;
  }
  #greeting .greeting_cont02 .greeting_img03 {
    text-align: right;
  }
  #greeting .greeting_cont02 img {
    max-width: 100%;
    padding: 20px 0;
  }
}

@media screen and (max-width: 431px) {
  #greeting .greeting_txt01 img {
    width: 80%;
  }
  #greeting .greeting_txt01 {
    margin: 50px auto;
  }
  #greeting .greeting_cont01 p {
    width: 100%;
    margin-top: 20px;
  }
  #greeting .greeting_cont01 img {
    width: 100%;
  }
  #greeting .greeting_cont02 .fl {
    padding: 40px 0 200px;
  }
  #greeting.en .greeting_cont02 .fl {
    padding: 40px 0 350px;
  }
  #greeting .greeting_cont02 .fl img {
    width: 80%;
    height: auto;
  }
  #greeting .greeting_cont02 h4 {
    min-width: 74%;
    padding: 20px 4% 20px 6%;
    text-align: left;
    font-size: 5vw;
  }
  #greeting .greeting_cont02 h5 {
    padding: 20px 0;
    font-size: 4.6vw;
  }
  #greeting .greeting_cont02 .container_1080 img {
    width: 100%;
    height: auto;
    margin-top: 60px;
  }
  #greeting .greeting_cont02 {
    margin-bottom: 80px;
  }
  #greeting .greeting_cont02 img {
    max-width: 100%;
    padding: 20px 0;
  }
}

/* 青年会議所とは
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #jaycee .jaycee_cont01 img {
    width: 40%;
    height: auto;
  }
  #jaycee .jaycee_cont01 p {
    width: 58%;
    height: auto;
  }

  .jaycee_cont02.fl {
    margin: 40px auto 0;
  }
  .jaycee_cont02.fl .jaycee_cont02_box {
    width: calc((100% - 90px) / 4);
  }
  .jaycee_cont02.fl .jaycee_cont02_box img {
    max-width: 100%;
  }
  .jaycee_cont02.fl .jaycee_cont02_box .jaycee_cont02_ttl01 {
    margin-top: 15px;
    text-align: center;
    font-weight: bold;
    font-size: 14px;
  }

  .jaycee_cont03 {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
    margin-top: 70px;
    box-sizing: border-box;
    padding: 40px 0 50px;
  }
  .jaycee_cont03 .jaycee_cont03_ttl {
    text-align: center;
    font-size: 24px;
    color: #0099dd;
    font-weight: bold;
    margin-bottom: 30px;
  }
  .jaycee_cont03 .fl {
    justify-content: center;
    gap: 0 20px;
  }
  .jaycee_cont03 .fl li {
    font-size: 15px;
    font-weight: bold;
  }
  .jaycee_cont03 .fl li:nth-of-type(n + 2) {
    margin-top: 5px;
  }

  .jaycee_cont03_btn a {
    margin: 50px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    width: 370px;
    height: 60px;
    color: #fff;
    background: #19a3e0;
    position: relative;
    border: 1px solid #19a3e0;
    transition: all 0.3s;
  }
  .jaycee_cont03_btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: #19a3e0;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
    transition: all 0.3s;
  }
  .jaycee_cont03_btn a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: -1px;
    transform: translateY(-50%);
    transition: all 0.3s;
  }

  #jaycee h3.ttl02 .sp {
    display: none;
  }

  .jaycee_cont04_img {
    margin-top: 50px;
  }
  .jaycee_cont04_img img {
    max-width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .jaycee_cont03_btn a:hover {
    background: #fff;
    color: #19a3e0;
    transition: all 0.3s;
  }
  .jaycee_cont03_btn a:hover::before {
    transform: translate(-1px, -50%);
    transition: all 0.3s;
  }
  .jaycee_cont03_btn a:hover::after {
    opacity: 0;
    transition: all 0.3s;
  }
}

@media screen and (max-width: 768px) {
  .jaycee_cont03 .fl {
    padding-left: 100px;
    justify-content: flex-start;
  }
}

@media screen and (max-width: 431px) {
  #jaycee .jaycee_cont01 img {
    width: 100%;
    height: auto;
    margin-top: 20px;
  }
  #jaycee .jaycee_cont01 p {
    width: 100%;
  }

  .jaycee_cont02.fl {
    margin: 40px auto 0;
    gap: 20px 0;
  }
  .jaycee_cont02.fl .jaycee_cont02_box {
    width: calc((100% - 20px) / 2);
  }
  .jaycee_cont02.fl .jaycee_cont02_box img {
    max-width: 100%;
  }
  .jaycee_cont02.fl .jaycee_cont02_box .jaycee_cont02_ttl01 {
    margin-top: 10px;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
  }

  .jaycee_cont03 {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    margin-top: 50px;
    box-sizing: border-box;
    padding: 40px 0 30px;
  }
  .jaycee_cont03 .jaycee_cont03_ttl {
    text-align: center;
    font-size: 18px;
    color: #0099dd;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .jaycee_cont03 .fl {
    justify-content: center;
    padding: 0 20px;
  }
  .jaycee_cont03 .fl li {
    font-size: 12px;
    font-weight: bold;
  }
  .jaycee_cont03 .fl li:nth-of-type(n + 2) {
    margin-top: 5px;
  }

  .jaycee_cont03_btn a {
    margin: 50px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    width: 320px;
    height: 60px;
    color: #fff;
    background: #19a3e0;
    position: relative;
    border: 1px solid #19a3e0;
    transition: all 0.3s;
    font-size: 14px;
  }
  .jaycee_cont03_btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: #19a3e0;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
    transition: all 0.3s;
  }
  .jaycee_cont03_btn a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: -1px;
    transform: translateY(-50%);
    transition: all 0.3s;
  }

  #jaycee h3.ttl02 .sp {
    display: block;
  }

  .jaycee_cont04_img {
    margin-top: 30px;
  }
  .jaycee_cont04_img img {
    max-width: 100%;
  }
}

/* 日本青年会議所とは
------------------------------------------------------------------*/
#jci-japan .container_1080 .sp {
  display: none;
}
#jci-japan .container_1080 .fl {
  flex-wrap: nowrap;
}
#jci-japan .jaycee_cont03_btn a {
  margin: 30px auto 40px 25px;
}
#jci-japan .container_1080 .cont {
  margin-bottom: 120px;
}
#jci-japan .container_1080 .cont .fl {
  gap: 50px;
}
#jci-japan .container_1080 .cont03 {
  padding: 40px;
}
#jci-japan .container_1080 .cont03 .fl {
  gap: 20px;
}
#jci-japan .container_1080 .cont03 ul li {
  position: relative;
  padding-left: 20px;
}
#jci-japan .container_1080 .cont03 ul li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #jci-japan .container_1080 .cont {
    margin-bottom: 50px;
  }
  #jci-japan .container_1080 .cont .fl {
    flex-direction: column;
    align-items: center;
    align-content: center;
    gap: 0px;
  }
  #jci-japan .container_1080 .cont03 .fl {
    padding-left: 0px;
    align-items: flex-start;
    gap: 4px;
  }
  #jci-japan .jaycee_cont03_btn a {
    margin: 30px auto 40px;
  }
  #jci-japan .cont05 p {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 431px) {
  #jci-japan .container_1080 .sp {
    display: block;
  }
  #jci-japan .container_1080 .cont {
    margin-bottom: 50px;
  }
  #jci-japan .container_1080 .cont .fl {
    flex-direction: column;
    gap: 20px;
  }
  #jci-japan .container_1080 .cont img {
    width: 100%;
  }
  #jci-japan .container_1080 .cont .fl {
    flex-direction: column;
    gap: 3px;
  }
  #jci-japan .container_1080 .cont03 .fl {
    padding: 0 0px;
  }
  #jci-japan .container_1080 .cont03 {
    padding: 20px;
  }
  #jci-japan .container_1080 .cont03 ul li {
    padding-left: 15px;
  }
  #jci-japan .cont05 p {
    margin-bottom: 30px;
  }
}

/* 名古屋青年会議所とは
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #about .about_cont01 {
    background: url("../img/about/bg01.jpg");
    background-size: cover;
    background-attachment: fixed;
    padding: 100px 0;
  }
  #about .about_cont01 p {
    margin: 60px auto;
    line-height: 2;
  }
  #about .about_cont02_box {
    width: 48%;
    margin-bottom: 20px;
  }
  #about .about_cont02_box iframe {
    width: 100%;
  }
  #about .about_cont03 {
    justify-content: flex-start;
  }
  .about_cont03_box {
    display: block;
    width: 340px;
    margin: 0 30px 0 0;
  }
  #about .about_cont03_box img {
    max-width: 100%;
  }
  #about .about_cont03_box p {
    padding: 10px 0 0;
    font-weight: bold;
  }

  #about .about_cont04 .fl {
    margin-top: 30px;
    gap: 35px;
    justify-content: center;
  }
  #about .about_cont04 .fl .about_cont04_box {
    width: calc((100% - 90px) / 4);
  }
  #about .about_cont04 .fl .about_cont04_box .about_cont04_ttl01 {
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    margin-top: 15px;
  }
  #about .about_cont04 .fl .about_cont04_box img {
    max-width: 100%;
  }
  #about .about_cont04 .about_cont04_text02 {
    text-align: center;
    margin: 40px auto 35px;
  }
  #about .about_cont04 .about_cont04_text02 .tab {
    display: none;
  }
  #about .about_cont04 .about_cont04_btn a {
    margin: auto;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    width: 350px;
    text-align: center;
    box-sizing: border-box;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 30px / 30px;
  }
}

@media screen and (max-width: 768px) {
  .about_cont03_box {
    width: 300px;
  }
  #about .about_cont01 .f_22 {
    font-size: 20px;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #about .about_cont01 .f_22 .br-tab {
    display: none;
  }

  #about .about_cont04 .about_cont04_text02 .tab {
    display: block;
  }
}

@media screen and (max-width: 431px) {
  #about .about_cont01 {
    background: url("../img/about/bg01.jpg");
    background-size: cover;
    background-attachment: fixed;
    padding: 60px 0 40px;
  }
  #about .about_cont01 .f_22 {
    padding: 0;
  }
  #about .about_cont01 p {
    margin: 0 4% 20px 6%;
    width: 90%;
    text-align: left;
    line-height: 2;
  }
  #about .about_cont01 img {
    width: 14%;
  }
  #about .about_cont02_box {
    width: 100%;
    margin-bottom: 20px;
  }
  #about .about_cont02_box iframe {
    width: 100%;
    height: 200px;
  }
  #about .about_cont03 {
    justify-content: space-between;
  }
  #about .about_cont03_box {
    display: block;
    width: 48%;
    margin: 0;
  }
  #about .about_cont03_box p {
    padding: 10px 0 0;
    font-weight: bold;
    font-size: 14px;
  }
  #about .about_cont03_box img {
    max-width: 100%;
  }

  #about .about_cont04 .fl {
    margin-top: 20px;
    gap: 30px 0;
  }
  #about .about_cont04 .fl .about_cont04_box {
    width: calc((100% - 20px) / 2);
  }
  #about .about_cont04 .fl .about_cont04_box .about_cont04_ttl01 {
    font-weight: bold;
    font-size: 12px;
    margin-top: 10px;
  }
  #about .about_cont04 .fl .about_cont04_box img {
    max-width: 100%;
  }
  #about .about_cont04 .about_cont04_text02 {
    text-align: center;
    margin: 30px auto 25px;
  }
  #about .about_cont04 .about_cont04_text02 .tab {
    display: none;
  }
  #about .about_cont04 .about_cont04_btn a {
    margin: 0 auto 50px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    width: 350px;
    text-align: center;
    box-sizing: border-box;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 30px / 30px;
  }
}

/* 交通アクセス
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #access iframe {
    margin: 20px auto 0;
  }
}

@media screen and (max-width: 768px) {
  #access p .sp_blocl {
    display: block;
  }
}

@media screen and (max-width: 431px) {
  #access table.sub_table01 th {
    width: auto;
    padding-right: 10px;
  }
  #access table.sub_table01 td {
    word-break: break-all;
  }
  #access iframe {
    height: 200px;
    margin: 20px auto 0;
  }
}

/* 情報公開資料
------------------------------------------------------------------*/

#data .data_wap {
  margin: 30px auto 120px;
}
#data .data_box {
  width: 49%;
  box-sizing: border-box;
  margin-bottom: 20px;
  padding: 0 2% 0 6%;
  background: #cef0fb url(img/about/data_icon01.png) center left 20px no-repeat;
}
#data .data_box_l {
  width: 80%;
  margin: auto;
}
#data .data_box p {
  line-height: 70px;
}
#data .data_box p:nth-of-type(2) {
  padding-left: 25px;
  background: url(img/about/data_icon02.png) center left no-repeat;
}

#data.en .data_box {
  width: 60%;
  margin: 0 auto 20px;
}

@media screen and (max-width: 768px) {
  #data .data_box {
    width: 100%;
    padding: 5px 4% 10px 9%;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 431px) {
  #data .data_wap {
    margin: 30px auto;
  }
  #data .data_top_txt {
    text-align: left;
    margin-top: 0;
  }
  #data .data_box {
    padding: 8px 4% 8px 15%;
  }

  #data .data_box p:nth-of-type(2) {
    padding-left: 0;
    padding-top: 70px;
    width: 25px;
    height: 0;
    overflow: hidden;
    background: url(img/about/data_icon02.png) center left no-repeat;
  }
}

/* 組織構成
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #organization .data_box {
    width: 45%;
    margin-bottom: 20px;
    padding: 0 2%;
    background: #cef0fb;
  }
  #organization .data_box_l {
    width: 80%;
    margin: auto;
  }
  #organization .data_box p {
    line-height: 70px;
  }
  #organization .data_box i.pdf {
    font-size: 30px;
    margin-right: 10px;
    top: 9px;
    color: #e0241f;
  }

  #organization .organization_riji_box {
    gap: 60px 40px;
    justify-content:flex-start;
  }
  #organization .organization_riji_box .organization_box_img {
    width: 180px;
  }
  #organization .organization_riji_box .organization_box_img img {
    max-width: 100%;
  }
  #organization .organization_riji_box .organization_box_ttl {
    text-align: center;
    font-weight: bold;
    margin-top: 10px;
    font-size: 22px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  }
  #organization .organization_riji_box .organization_box_ttl span {
    font-size: 16px;
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体",
      YuGothic, sans-serif;
  }

  #organization .organization_box {
    margin: 0 auto 50px;
  }
  #organization .organization_box .fl {
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 0 40px;
  }
  #organization .organization_box .fl img {
    height: auto;
  }
  #organization .organization_box .fl .organization_box_txt_box {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_up
    .f_20 {
    margin-bottom: 20px;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_up
    .organization_box_txt_box_text {
    line-height: 1.8;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_ttl {
    text-align: right;
    margin-top: 20px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_ttl
    span {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    margin-left: 5px;
    font-size: 24px;
  }
}

@media screen and (max-width: 431px) {
  #organization .data_box {
    width: 92%;
    padding: 5px 4% 10px;
    background: #cef0fb;
    margin-bottom: 20px;
  }
  #organization .data_box i {
    font-size: 24px;
    margin: 0 10px;
  }
  #organization .data_box i.pdf {
    font-size: 25px;
    top: 7px;
  }
  #organization .data_box p {
    line-height: 1.6;
  }
  #organization .data_box p.f_18 {
    font-size: 14px;
    width: 100%;
  }
  #organization .data_box i.pdf {
    font-size: 30px;
    margin-right: 10px;
    top: 9px;
    color: #e0241f;
  }

  #organization .organization_riji_box {
    gap: 25px 0;
  }
  #organization .organization_riji_box .organization_box_img {
    width: 180px;
  }
  #organization .organization_riji_box .organization_box_img img {
    max-width: 100%;
  }
  #organization .organization_riji_box .organization_box_ttl {
    text-align: center;
    font-weight: bold;
    margin-top: 10px;
    font-size: 20px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  }
  #organization .organization_riji_box .organization_box_ttl span {
    font-size: 14px;
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体",
      YuGothic, sans-serif;
  }

  #organization .organization_box {
    margin: 0 auto 30px;
  }
  #organization .organization_box .fl {
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 0 20px;
  }
  #organization .organization_box .img {
    width: 120px;
    height: auto;
    flex-shrink: 0;
  }
  #organization .organization_box .img img {
    max-width: 100%;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_up
    .f_20 {
    margin-bottom: 10px;
    font-size: 16px;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_up
    .organization_box_txt_box_text {
    line-height: 1.8;
    font-size: 12px;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_ttl {
    text-align: right;
    margin-top: 15px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-size: 12px;
  }
  #organization
    .organization_box
    .fl
    .organization_box_txt_box
    .organization_box_txt_box_ttl
    span {
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
      "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: bold;
    margin-left: 5px;
    font-size: 16px;
  }
}

/* 入会案内の流れ
------------------------------------------------------------------*/
.about_fot_btn {
  padding-bottom: 40px;
  margin: 100px auto 100px;
}
.about_fot_btn .container_1080 {
  margin-top: 40px;
  max-width: 970px;
}
.about_fot_btn h3.ttl01 {
  top: -8px;
}

@media screen and (max-width: 768px) {
  .about_fot_btn {
    margin: 60px auto 40px;
    padding-bottom: 20px;
  }
  .about_fot_btn .container_1080 {
    margin-top: 20px;
  }
}

/* 入会案内
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #admission {
    background: #e7f4fb;
  }
  #admission .key {
    background: url(img/admission/adm_key_bg.png) no-repeat top center / cover;
    padding-top: 36%;
    margin-top: 80px;
  }
  #admission .key h2 {
    height: 0;
    overflow: hidden;
  }

  #admission .cont01 {
    padding-bottom: 110px;
  }
  #admission .cont01 .inner {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #admission .cont01 .inner::before {
    content: '';
    background: url(img/admission/adm_cont01_illust01.png) no-repeat center;
    width: 447px;
    height: 439px;
    position: absolute;
    top: -285px;
    right: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont01 .inner .lead {
    font-size: 28px;
    font-weight: bold;
    line-height: 2.4;
    text-align: center;
    background: url(img/admission/adm_cont01_logo.png) no-repeat center 115px;
    height: 565px;
    padding-top: 310px;
    position: relative;
    z-index: 1;
  }
  #admission .cont01 .inner .lead::before {
    content: '';
    background: url(img/admission/adm_cont01_illust02.png) no-repeat center;
    width: 509px;
    height: 260px;
    position: absolute;
    bottom: 35px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont01 .inner .nagoya_img {
    position: absolute;
    top: 495px;
    right: 30px;
  }
  #admission .cont01 .inner .nagoya_img::before {
    content: "";
    position: absolute;
    left: 67px;
    top: 111px;
    background: #bbe4f8;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    opacity: 1;
    animation: 2s circleanime1 infinite forwards;
  }
  /*波形が広がるアニメーション*/
  @keyframes circleanime1 {
    0% {
      transform: scale(0);
    }
    100% {
      transform: scale(8);
      opacity: 0;
    }
  }
  #admission .cont01 .inner .box01,
  #admission .cont01 .inner .box02 {
    display: flex;
    justify-content: center;
  }
  #admission .cont01 .inner .box01 {
    flex-direction: row-reverse;
    margin-top: 120px;
  }
  #admission .cont01 .inner .box01 .img {
    margin-left: -300px;
  }
  #admission .cont01 .inner .box02 {
    margin-top: 110px;
  }
  #admission .cont01 .inner .box02 .img {
    margin-right: -300px;
  }
  #admission .cont01 .inner .box01 .text-box {
    background: #fff;
    margin-top: 50px;
    margin-left: -100px;
    padding: 80px 130px 70px 150px;
    position: relative;
  }
  #admission .cont01 .inner .box02 .text-box {
    background: #fff;
    margin-top: 50px;
    margin-right: -100px;
    padding: 80px 150px 70px 130px;
    position: relative;
  }
  #admission .cont01 .inner .box01 h3,
  #admission .cont01 .inner .box02 h3 { 
    width: 540px;
    font-size: 24px;
    color: #19a3e0;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 50px;
  }
  #admission .cont01 .inner .box02 h3 {
    line-height: 1.6;
  }
  #admission .cont01 .inner .box01 p,
  #admission .cont01 .inner .box02 p {
    line-height: 1.8;
  }
  #admission .cont01 .inner .box01 p:nth-of-type(1),
  #admission .cont01 .inner .box01 p:nth-of-type(2) {
    margin-bottom: 30px;
  }
  #admission .cont01 .inner .box02 p:nth-of-type(1) {
    margin-bottom: 30px;
  }
  #admission .cont01 .inner .box01 .img {
    position: relative;
  }
  #admission .cont01 .inner .box01 .img::before {
    content: '';
    background: url(img/admission/adm_cont01_img03.png);
    width: 845px;
    height: 97px;
    position: absolute;
    bottom: 18px;
    left: 50px;
  }
  #admission .cont01 .inner .box02 .img {
    position: relative;
  }
  #admission .cont01 .inner .box02 .img::before {
    content: '';
    background: url(img/admission/adm_cont01_img04.png);
    width: 444px;
    height: 97px;
    position: absolute;
    bottom: 165px;
    right: 50px;
  }
  #admission .cont01 .inner .box01 .text-box .btn,
  #admission .cont01 .inner .box02 .text-box .btn {
    display: inline-block;
    text-decoration: none !important;
    font-size: 16px;
    font-weight: bold;
    margin-top: 50px;
  }
  #admission .cont01 .inner .box01 .text-box .btn a,
  #admission .cont01 .inner .box02 .text-box .btn a {
    width: 400px;
    line-height: 1;
    padding: 22px 0;
    text-align: center;
    display: inline-block;
    border: 1px solid #bbbbbb;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_cont01_btn_icon01.png) no-repeat center right 30px;
    transition: all 0.3s;
  }
  #admission .cont01 .inner .box01 .text-box .btn a:hover,
  #admission .cont01 .inner .box02 .text-box .btn a:hover {
    background: #999 url(img/admission/adm_cont01_btn_icon02.png) no-repeat center right 20px;
    color: #fff;
  }

  #admission .cont02 {
    background: #fff;
    padding: 120px 0;
    text-align: center;
  }
  #admission .cont02 h2 {
    font-size: 32px;
    line-height: 1;
    font-weight: bold;
    background: url(img/admission/adm_cont02_ttl.png) no-repeat top center;
    padding: 50px;
  }
  #admission .cont02 p {
    line-height: 2;
  }
  #admission .cont02 .inner {
    display: flex;
    flex-wrap: wrap;
    row-gap: 85px;
    column-gap: 25px;
    max-width: 1200px;
    margin: 0 auto;
    margin-top: 65px;
    position: relative;
  }
  #admission .cont02 .inner::before {
    content: '';
    background: url(img/admission/adm_cont02_illust01.png) no-repeat center;
    width: 133px;
    height: 167px;
    position: absolute;
    top: -292px;
    left: 34px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont02 .inner::after {
    content: '';
    background: url(img/admission/adm_cont02_illust02.png) no-repeat center;
    width: 315px;
    height: 370px;
    position: absolute;
    top: -503px;
    right: 17px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont02 .inner .act-box {
    width: 380px;
    text-align: left;
  }
  #admission .cont02 .inner .act-box .ttl {
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont02_ttl01.png) no-repeat top left;
    padding-top: 25px;
    margin: 37px 0;
  }
  #admission .cont02 .inner .act-box .text {
    overflow-y: scroll;
    height: 125px;
    padding-right: 17px;
  }
  #admission .cont02 .inner .act-box:nth-of-type(2) .ttl {
    background: url(img/admission/adm_cont02_ttl02.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(3) .ttl {
    background: url(img/admission/adm_cont02_ttl03.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(4) .ttl {
    background: url(img/admission/adm_cont02_ttl04.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(5) .ttl {
    background: url(img/admission/adm_cont02_ttl05.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(6) .ttl {
    background: url(img/admission/adm_cont02_ttl06.png) no-repeat top left;
  }

  #admission .cont03 {
    padding: 120px 0;
    text-align: center;
  }
  #admission .cont03 h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont03_ttl.png) no-repeat top center;
    padding: 50px;
  }
  #admission .cont03 .inner {
    display: flex;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #admission .cont03 .inner::before {
    content: '';
    background: url(img/admission/adm_cont03_illust01.png) no-repeat center;
    width: 157px;
    height: 328px;
    position: absolute;
    top: -355px;
    left: 50px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont03 .inner::after {
    content: '';
    background: url(img/admission/adm_cont03_illust02.png) no-repeat center;
    width: 283px;
    height: 246px;
    position: absolute;
    top: -315px;
    right: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont03 .inner .cont {
    background: #fff;
    width: 380px;
    text-align: left;
  }
  #admission .cont03 .inner .cont .cate_box {
    padding: 22px 0 22px 18px;
  }
  #admission .cont03 .inner .cont .cate_box .span01 {
    color: #fff;
    font-size: 14px;
    background: #1d9add;
    padding: 6px 12px;
    margin-right: 5px;
  }
  #admission .cont03 .inner .cont .cate_box .span02 {
    color: #fff;
    font-size: 14px;
    background: #004299;
    padding: 6px 12px;
  }
  #admission .cont03 .inner .cont h3 {
    margin-bottom: 30px;
    padding-left: 20px;
    font-weight: bold;
  }
  #admission .cont03 .inner .cont .text02 {
    font-weight: bold;
    padding-left: 20px;
  }
  #admission .cont03 .inner .cont .text02:nth-of-type(2) {
    padding-bottom: 40px;
  }
  #admission .cont03 .inner .cont .text02 span {
    color: #19a3e0;
    font-weight: bold;
  }

  #admission .cont04 {
    background: #fff;
    padding: 120px 0;
    text-align: center;
  }
  #admission .cont04 h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont04_ttl.png) no-repeat top center;
    padding: 50px;
  }
  #admission .cont04 p {
    line-height: 2;
  }
  #admission .cont04 .inner {
    display: flex;
    justify-content: center;
    gap: 90px;
    max-width: 1200px;
    margin: 70px auto 0;
    position: relative;
  }
  #admission .cont04 .inner::before {
    content: '';
    background: url(img/admission/adm_cont04_illust01.png) no-repeat center;
    width: 171px;
    height: 143px;
    position: absolute;
    top: -313px;
    left: 182px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont04 .inner::after {
    content: '';
    background: url(img/admission/adm_cont04_illust02.png) no-repeat center;
    width: 259px;
    height: 167px;
    position: absolute;
    top: -250px;
    right: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont04 .inner .merit {
    width: 320px;
    text-align: left;
    position: relative;
  }
  #admission .cont04 .inner .merit h3 {
    color: #fff;
    font-weight: bold;
    position: absolute;
    top: 46px;
    left: 12px;
    z-index: 1;
  }
  #admission .cont04 .inner .merit:nth-of-type(1) h3::before,
  #admission .cont04 .inner .merit:nth-of-type(2) h3::before {
    content: '';
    background: #19a3e0;
    opacity: 0.9;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    position: absolute;
    top: -55px;
    left: -32px;
    z-index: -1;
  }
  #admission .cont04 .inner .merit:nth-of-type(3) h3::before {
    content: '';
    background: #19a3e0;
    opacity: 0.9;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    position: absolute;
    top: -55px;
    left: -26px;
    z-index: -1;
  }
  #admission .cont04 .inner .merit:nth-of-type(1) h3::after,
  #admission .cont04 .inner .merit:nth-of-type(2) h3::after {
    content: '';
    background: rgba(255,255,255,.5);
    width: 145px;
    height: 145px;
    border-radius: 50%;
    position: absolute;
    top: -62px;
    left: -40px;
    z-index: -2 ;
  }
  #admission .cont04 .inner .merit:nth-of-type(3) h3::after {
    content: '';
    background: rgba(255,255,255,.5);
    width: 145px;
    height: 145px;
    border-radius: 50%;
    position: absolute;
    top: -62px;
    left: -34px;
    z-index: -2 ;
  }
  #admission .cont04 .inner .merit .text {
    margin-top: 47px;
  }

  #admission .cont05 {
    padding: 120px 0;
    text-align: center;
    position: relative;
  }
  #admission .cont05::before {
    content: '';
    background: url(img/admission/adm_cont05_illust01.png) no-repeat center;
    width: 793px;
    height: 899px;
    position: absolute;
    top: 0;
    left: 0px;
  }
  #admission .cont05 h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont05_ttl.png) no-repeat top center;
    padding: 50px;
  }
  #admission .cont05 p {
    line-height: 2;
  }
  #admission .cont05 .inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    text-align: left;
    max-width: 1200px;
    margin: 66px auto 0;
    position: relative;
  }
  #admission .cont05 .inner::before {
    content: '';
    background: url(img/admission/adm_cont05_illust02.png) no-repeat center;
    width: 469px;
    height: 163px;
    position: absolute;
    top: -325px;
    right: -160px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont05 .inner .charm-box {
    width: 380px;
    background: #fff;
    border: 1px solid #19a3e0;
    box-sizing: border-box;
    padding: 38px;
    position: relative;
  }
  #admission .cont05 .inner .charm-box::before {
    content: '';
    background: url(img/admission/adm_cont05_illust04.png) no-repeat center;
    width: 45px;
    height: 86px;
    position: absolute;
    bottom: -15px;
    left: 40px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(2):before {
    background: url(img/admission/adm_cont05_illust05.png) no-repeat center;
    width: 98px;
    height: 76px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(3):before {
    background: url(img/admission/adm_cont05_illust06.png) no-repeat center;
    width: 75px;
    height: 72px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(4):before {
    background: url(img/admission/adm_cont05_illust07.png) no-repeat center;
    width: 47px;
    height: 103px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(5):before {
    background: url(img/admission/adm_cont05_illust08.png) no-repeat center;
    width: 62px;
    height: 71px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(6):before {
    background: url(img/admission/adm_cont05_illust09.png) no-repeat center;
    width: 87px;
    height: 58px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(7):before {
    background: url(img/admission/adm_cont05_illust10.png) no-repeat center;
    width: 74px;
    height: 77px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(8):before {
    background: url(img/admission/adm_cont05_illust11.png) no-repeat center;
    width: 83px;
    height: 108px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(9):before {
    background: url(img/admission/adm_cont05_illust12.png) no-repeat center;
    width: 47px;
    height: 65px;
  }

  #admission .cont05 .inner .charm-box h3 {
    font-size: 18px;
    font-weight: bold;
    color: #19a3e0;
    line-height: 1;
  }
  #admission .cont05 .inner .charm-box .text {
    margin: 26px 0 53px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(1) .text,
  #admission .cont05 .inner .charm-box:nth-of-type(2) .text {
    margin: 26px 0 80px;
  }
  #admission .cont05 .inner .charm-box .name {
    line-height: 1;
    text-align: right;
  }

  #admission .contact-box {
    background: #fff;
    padding: 110px 0;
    text-align: center;
    position: relative;
  }
  #admission .contact-box .inner {
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 80px 0;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #admission .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center;
    width: 236px;
    height: 171px;
    position: absolute;
    top: 57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .contact-box .inner::after {
    content: '';
    background: url(img/admission/adm_contact-box_illust02.png) no-repeat center;
    width: 344px;
    height: 440px;
    position: absolute;
    top: -443px;
    right: -283px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .contact-box .inner h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center;
    padding-top: 100px;
  }
  #admission .contact-box .inner .lead {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.8;
    margin: 50px 0;
  }
  #admission .contact-box .inner .contact-inner {
    display: flex;
    gap: 14px;
    justify-content: center;
  }
  #admission .contact-box .inner .contact-inner .guid,
  #admission .contact-box .inner .contact-inner .flow,
  #admission .contact-box .inner .contact-inner .interview,
  #admission .contact-box .inner .contact-inner .form {
    width: 252px;
    height: 135px;
    position: relative;
  }
  #admission .contact-box .inner .contact-inner .guid::after,
  #admission .contact-box .inner .contact-inner .flow::after,
  #admission .contact-box .inner .contact-inner .interview::after,
  #admission .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.5s all;
  }
  #admission .contact-box .inner .contact-inner .guid::after {
    bottom: 27px;
  }
  #admission .contact-box .inner .contact-inner .guid:hover::after,
  #admission .contact-box .inner .contact-inner .flow:hover::after,
  #admission .contact-box .inner .contact-inner .interview:hover::after,
  #admission .contact-box .inner .contact-inner .form:hover::after {
    transform: translate(0, 5px);
  }
  #admission .contact-box .inner .contact-inner .guid a,
  #admission .contact-box .inner .contact-inner .flow a,
  #admission .contact-box .inner .contact-inner .interview a,
  #admission .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 22px;
    padding: 49px 77px 50px;
  }
  #admission .contact-box .inner .contact-inner .flow a {
    padding: 29px 19px 35px;
    line-height: 1.4;
  }
  #admission .contact-box .inner .contact-inner .flow a span {
    font-size: 16px;
    font-weight: bold;
  }
  #admission .contact-box .inner .contact-inner .interview a,
  #admission .contact-box .inner .contact-inner .form a {
    padding: 45px 50px 55px;
    font-size: 18px;
  }
  #admission .contact-box .inner .contact-inner .guid a:hover,
  #admission .contact-box .inner .contact-inner .flow a:hover,
  #admission .contact-box .inner .contact-inner .interview a:hover,
  #admission .contact-box .inner .contact-inner .form a:hover {
    opacity: 0.8;
  }
  #admission .contact-box .inner .cont {
    display: flex;
    background: #fff;
    color: #333;
    border: 4px solid #1d9add;
    width: 1054px;
    height: 200px;
    margin: 13px auto 0;
    box-sizing: border-box;
  }
  #admission .contact-box .inner .cont .contact {
    width: 340px;
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat 60px top ;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #admission .contact-box .inner .cont .contact::before {
    content: '';
    background: #1a8ad0;
    width: 1px;
    height: 100px;
    position: absolute;
    top: -13px;
    right: 0;
  }
  #admission .contact-box .inner .cont .tel {
    width: 305px;
    margin-top: 45px;
  }
  #admission .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 36px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 38px;
  }
  #admission .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #admission .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 15px;
  }
  #admission .contact-box .inner .cont .mail {
    width: 365px;
    margin-top: 45px;
  }
  #admission .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
  }
  #admission .contact-box .inner .cont .mail .btn {
    margin-top: 18px;
  }
  #admission .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 330px;
    line-height: 1;
    padding: 19px 0;
    text-align: center;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    transition: all 0.3s;
  }
  #admission .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}
/*----- 横幅1800px以下 -----*/
@media screen and (max-width: 1800px) and (min-width: 431px) {
  #admission .cont01 .inner .box01 .img::before {
    background: url(img/admission/adm_cont01_img03.png) no-repeat center / contain;
    width: 845px;
    height: 63px;
    bottom: 33px;
    left: 193px;
  }
  #admission .cont01 .inner .box02 .img::before {
    background: url(img/admission/adm_cont01_img04.png) no-repeat center / contain;
    width: 444px;
    height: 63px;
    bottom: 179px;
    right: 265px;
  }
  #admission .cont05::before {
    left: -260px;
  }
  #admission .contact-box .inner::after {
    top: -233px;
    right: 0;
  }
}
/* --------------------------------------------------------------------------------------------- タブレット */
@media screen and (min-width: 431px) and (max-width: 768px) {
  #admission .cont01 .inner {
    width: 90%;
    margin: auto;
  }
  #admission .cont01 .inner::before {
    background: url(img/admission/adm_cont01_illust01.png) no-repeat center / contain;
    width: 307px;
    height: 289px;
    top: -160px;
    right: 0;
  }
  #admission .cont01 .inner .lead {
    font-size: 18px;
    height: 415px;
  }
  #admission .cont01 .inner .lead::before {
    background: url(img/admission/adm_cont01_illust02.png) no-repeat center / contain;
    width: 409px;
    height: 210px;
    bottom: 0;
  }
  #admission .cont01 .inner .nagoya_img {
    top: 155px;
  }
  #admission .cont01 .inner .box01,
  #admission .cont01 .inner .box02 {
    flex-direction: column;
  }
  #admission .cont01 .inner .box01 {
    margin-top: 80px;
  }
  #admission .cont01 .inner .box01 .text-box,
  #admission .cont01 .inner .box02 .text-box {
    margin-top: 0;
    margin-left: -40px;
    margin-right: 0;
    padding: 40px;
  }
  #admission .cont01 .inner .box01 .img {
    margin-right: -40px;
    margin-left: 0;
  }
  #admission .cont01 .inner .box01 .img::before {
    background: url(img/admission/adm_cont01_img03.png) no-repeat center / contain;
    width: 675px;
    height: 77px;
    bottom: -37px;
    left: 0;
  }
  #admission .cont01 .inner .box02 .img::before {
    background: url(img/admission/adm_cont01_img04.png) no-repeat center / contain;
    width: 900px;
    height: 77px;
    bottom: -36px;
    right: 0;
  }
  #admission .cont01 .inner .box01 .img img,
  #admission .cont01 .inner .box02 .img img {
    width: 720px
  }
  #admission .cont02 .lead {
    width: 90%;
    margin: 0 auto;
  }
  #admission .cont02 .inner {
    width: 90%;
    margin: 65px auto 0;
    justify-content: center;
  }
  #admission .cont02 .inner::before {
    top: -390px
  }
  #admission .cont02 .inner::after {
    background: url(img/admission/adm_cont02_illust02.png) no-repeat center / contain;
    width: 265px;
    height: 320px;
    top: -503px;
    right: -13px;
  }
  #admission .cont02 .inner .act-box {
    width: 330px;
  }
  #admission .cont02 .inner .act-box .img img {
    width: 330px;
    object-fit: cover;
  }
  #admission .cont02 .inner .act-box .ttl {
    font-size: 16px;
  }
  #admission .cont03 .inner {
    flex-direction: column;
  }
  #admission .cont03 .inner .cont {
    margin: auto;
  }
  #admission .cont04 .inner {
    width: 90%;
    gap: 20px;
  }
  #admission .cont04 .inner::before {
    top: -373px;
    left: 62px;
  }
  #admission .cont04 .inner::after {
    top: -470px;
    right: 10px;
  }
  #admission .cont04 .inner .merit h3 {
    top: 10px;
  }
  #admission .cont04 .inner .merit .img img {
    width: 220px;
    height: 220px;
  }
  #admission .cont05 .inner {
    justify-content: center;
    padding: 0 30px;
    justify-content: space-between;
  }
  #admission .cont05 .inner .charm-box:last-child {
    margin-right: auto;
  }
  #admission .cont05 h2 {
    color: #333;
    position: relative;
    z-index: 1;
  }
  #admission .cont05::before {
    left: -440px;
  }
  #admission .cont05 .inner .charm-box {
    width: 335px;
  }

  #admission .contact-box .inner {
    width: 90%;
    margin: auto;
  }
  #admission .contact-box .inner h2 {
    font-size: 26px;
  }
  #admission .contact-box .inner .lead {
    font-size: 18px;
    padding: 0 100px;
  }
  #admission .contact-box .inner::before {
    bottom: -43px;
    top: auto;
  }
  #admission .contact-box .inner::after {
    right: 50px;
    top: -453px;
  }
  #admission .contact-box .inner .contact-inner {
    flex-wrap: wrap;
  }
  #admission .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    width: 100%;
    border: none;
    background: none;
    height: auto;
  }
  #admission .contact-box .inner .cont .contact {
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top;
    color: #fff;
    width: 100%;
    position: relative;
  }
  #admission .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #admission .contact-box .inner .cont .tel {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #admission .contact-box .inner .cont .mail {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
  


}
/* --------------------------------------------------------------------------------------------- sp */
@media screen and (max-width: 431px) {
  #admission {
    background: #e7f4fb;
  }
  #admission .key {
    background: url(img/admission/adm_key_bg_sp.png) no-repeat top center / cover;
    padding-top: 100%;
    margin-top: 60px;
  }
  #admission .key h2 {
    height: 0;
    overflow: hidden;
  }
  #admission .cont01 {
    padding-bottom: 70px;
  }
  #admission .cont01 .inner {
    width: 90%;
    margin: 0 auto;
    position: relative;
  }
  #admission .cont01 .inner::before {
    content: '';
    background: url(img/admission/adm_cont01_illust01.png) no-repeat center / contain;
    width: 157px;
    height: 149px;
    position: absolute;
    top: -95px;
    right: 5px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont01 .inner .lead {
    font-size: 18px;
    font-weight: bold;
    line-height: 2.2;
    text-align: center;
    height: 450px;
    background: url(img/admission/adm_cont01_logo.png) no-repeat center 75px / 50%;
    padding-top: 230px;
    position: relative;
    z-index: 2;
  }
  #admission .cont01 .inner .lead::before {
    content: '';
    background: url(img/admission/adm_cont01_illust02.png) no-repeat center / contain;
    width: 349px;
    height: 180px;
    position: absolute;
    bottom: 0;
    left: 10px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }

  /* ここから次年度のページ */
  #admission .cont01 .inner .lead::before {
    content: '';
    background: url(img/admission/adm_cont01_illust02.png) no-repeat center / contain;
    width: 349px;
    height: 180px;
    position: absolute;
    bottom: -20px!important;
    left: 10px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont01 .inner .nagoya_img {
    position: absolute;
    top: 47px;
    right: -88px;
    z-index: 1;
    transform: scale(0.7);
  }
  #admission .cont01 .inner .nagoya_img::before {
    content: "";
    position: absolute;
    left: 67px;
    top: 111px;
    background: #bbe4f8;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    opacity: 1;
    animation: 2s circleanime1 infinite forwards;
  }
  /*波形が広がるアニメーション*/
  @keyframes circleanime1 {
    0% {
      transform: scale(0);
    }
    100% {
      transform: scale(8);
      opacity: 0;
    }
  }
  #admission .cont01 .inner .box01,
  #admission .cont01 .inner .box02 {
    display: flex;
    flex-direction: column;
  }
  #admission .cont01 .inner .box01 .text-box {
    background: #fff;
    margin: 50px auto 0;
    padding: 40px 20px;
    position: relative;
  }
  #admission .cont01 .inner .box02 .text-box {
    width: 90%;
    background: #fff;
    margin-top: 70px;
    padding: 40px 20px;
    position: relative;
  }
  #admission .cont01 .inner .box01 h3,
  #admission .cont01 .inner .box02 h3 { 
    font-size: 18px;
    font-weight: bold;
    color: #19a3e0;
    line-height: 1;
    margin-bottom: 20px;
  }
  #admission .cont01 .inner .box02 h3 {
    line-height: 1.6;
  }
  #admission .cont01 .inner .box01 p,
  #admission .cont01 .inner .box02 p {
    line-height: 2;
    font-size: 14px;
  }
  #admission .cont01 .inner .box01 p:nth-of-type(1),
  #admission .cont01 .inner .box01 p:nth-of-type(2) {
    margin-bottom: 10px;
  }
  #admission .cont01 .inner .box02 p:nth-of-type(1) {
    margin-bottom: 10px;
  }
  #admission .cont01 .inner .box01 .img {
    position: relative;
  }
  #admission .cont01 .inner .box01 .img::before {
    content: '';
    background: url(img/admission/adm_cont01_img03.png) no-repeat left / contain;
    opacity: 0.6;
    width: 755px;
    height: 44px;
    position: absolute;
    bottom: -22px;
    left: 0;
  }
  #admission .cont01 .inner .box02 .img {
    position: relative;
  }
  #admission .cont01 .inner .box02 .img::before {
    content: '';
    background: url(img/admission/adm_cont01_img04.png) no-repeat right / contain;
    opacity: 0.6;
    width: 444px;
    height: 44px;
    position: absolute;
    bottom: -21px;
    right: 0;
  }
  #admission .cont01 .inner .img img {
    width: 100%;
  }
  #admission .cont01 .inner .box01 .text-box .btn,
  #admission .cont01 .inner .box02 .text-box .btn {
    font-weight: bold;
    margin-top: 30px;
  }
  #admission .cont01 .inner .box01 .text-box .btn a,
  #admission .cont01 .inner .box02 .text-box .btn a {
    display: inline-block;
    width: 290px;
    line-height: 1;
    padding: 20px 0;
    border: 1px solid #bbbbbb;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_cont01_btn_icon01.png) no-repeat center right 30px;
    padding-right: 10px;
    transition: all 0.3s;
  }
  #admission .cont01 .inner .box01 .text-box .btn a:hover,
  #admission .cont01 .inner .box02 .text-box .btn a:hover {
    background: #999 url(img/admission/adm_cont01_btn_icon02.png) no-repeat center right 20px;
    color: #fff;
  }

  #admission .cont02 {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #admission .cont02 h2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont02_ttl.png) no-repeat top center;
    padding: 40px 0 30px;
  }
  #admission .cont02 p {
    width: 100%;
    font-size: 14px;
    margin: 0 auto;
    line-height: 2;
  }
  #admission .cont02 .inner {
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 40px auto 0;
    position: relative;
  }
  #admission .cont02 .inner::before {
    content: '';
    background: url(img/admission/adm_cont02_illust01.png) no-repeat center / contain;
    width: 100px;
    height: 111px;
    position: absolute;
    top: -100px;
    left: -15px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont02 .inner::after {
    content: '';
    background: url(img/admission/adm_cont02_illust02.png) no-repeat center / contain;
    width: 155px;
    height: 164px;
    position: absolute;
    top: -400px;
    right: -10px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont02 .inner .act-box {
    width: 100%;
    text-align: left;
  }
  #admission .cont02 .inner .act-box .ttl {
    font-size: 17px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont02_ttl01.png) no-repeat top left;
    padding-top: 25px;
    margin: 20px 0;
  }
  #admission .cont02 .inner .act-box:nth-of-type(2) .ttl {
    background: url(img/admission/adm_cont02_ttl02.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(3) .ttl {
    background: url(img/admission/adm_cont02_ttl03.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(4) .ttl {
    background: url(img/admission/adm_cont02_ttl04.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(5) .ttl {
    background: url(img/admission/adm_cont02_ttl05.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box:nth-of-type(6) .ttl {
    background: url(img/admission/adm_cont02_ttl06.png) no-repeat top left;
  }
  #admission .cont02 .inner .act-box .text {
    overflow-y: scroll;
    width: 370px;
    height: 125px;
    padding-right: 17px;
    margin-bottom: 45px;
  }
  #admission .cont02 .inner .act-box:nth-of-type(6) .text {
    margin-bottom: 0;
  }

  #admission .cont03 {
    padding: 70px 0;
    text-align: center;
  }
  #admission .cont03 h2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont03_ttl.png) no-repeat top center;
    padding: 40px 0 30px
  }
  #admission .cont03 .inner {
    display: flex;
    flex-direction: column;
    gap: 25px 0;
    width: 90%;
    margin: 0 auto;
    position: relative;
  }
  #admission .cont03 .inner::before {
    content: '';
    background: url(img/admission/adm_cont03_illust01.png) no-repeat center / contain;
    width: 97px;
    height: 208px;
    position: absolute;
    top: -205px;
    left: -10px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont03 .inner::after {
    content: '';
    background: url(img/admission/adm_cont03_illust02.png) no-repeat center / contain;
    width: 173px;
    height: 127px;
    position: absolute;
    top: -220px;
    right: -15px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;

  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont03 .inner .cont {
    background: #fff;
    width: 380px;
    text-align: left;
  }
  #admission .cont03 .inner .cont .cate_box {
    padding: 22px 0 22px 18px;
  }
  #admission .cont03 .inner .cont .cate_box .span01 {
    color: #fff;
    font-size: 14px;
    background: #1d9add;
    padding: 6px 12px;
    margin-right: 5px;
  }
  #admission .cont03 .inner .cont .cate_box .span02 {
    color: #fff;
    font-size: 14px;
    background: #004299;
    padding: 6px 12px;
  }
  #admission .cont03 .inner .cont h3 {
    margin-bottom: 18px;
    padding-left: 20px;
    font-weight: bold;
  }
  #admission .cont03 .inner .cont .text02 {
    font-weight: bold;
    padding-left: 20px;
    font-size: 14px;
  }
  #admission .cont03 .inner .cont .text02:nth-of-type(2) {
    padding-bottom: 22px;
  }
  #admission .cont03 .inner .cont .text02 span {
    color: #19a3e0;
    font-weight: bold;
  }

  #admission .cont04 {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #admission .cont04 h2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    background: url(img/admission/adm_cont04_ttl.png) no-repeat top center;
    padding: 40px 0 30px
  }
  #admission .cont04 p {
    line-height: 2;
    font-size: 14px;
  }
  #admission .cont04 .inner {
    display: flex;
    flex-direction: column;
    gap: 50px;
    width: 90%;
    margin: 40px auto 0;
    position: relative;
  }
  #admission .cont04 .inner::before {
    content: '';
    background: url(img/admission/adm_cont04_illust01.png) no-repeat center / contain;
    width: 131px;
    height: 103px;
    position: absolute;
    top: -320px;
    left: -15px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont04 .inner::after {
    content: '';
    background: url(img/admission/adm_cont04_illust02.png) no-repeat center / contain;
    width: 219px;
    height: 127px;
    position: absolute;
    top: -390px;
    right: -30px;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont04 .inner .merit {
    position: relative;
  }
  #admission .cont04 .inner .merit h3 {
    color: #fff;
    font-weight: bold;
    position: absolute;
    top: 46px;
    left: 50px;
    z-index: 1;
  }
  #admission .cont04 .inner .merit h3:nth-of-type(2) {
    position: absolute;
    right: 50px;
  }
  #admission .cont04 .inner .merit .img img {
    width: 240px;
    height: 240px;
  }
  #admission .cont04 .inner .merit:nth-of-type(1) h3::before,
  #admission .cont04 .inner .merit:nth-of-type(2) h3::before {
    content: '';
    background: #19a3e0;
    opacity: 0.9;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    position: absolute;
    top: -55px;
    left: -32px;
    z-index: -1;
  }
  #admission .cont04 .inner .merit:nth-of-type(3) h3::before {
    content: '';
    background: #19a3e0;
    opacity: 0.9;
    width: 130px;
    height: 130px;
    border-radius: 50%;
    position: absolute;
    top: -55px;
    left: -26px;
    z-index: -1;
  }
  #admission .cont04 .inner .merit:nth-of-type(1) h3::after,
  #admission .cont04 .inner .merit:nth-of-type(2) h3::after {
    content: '';
    background: rgba(255,255,255,.5);
    width: 145px;
    height: 145px;
    border-radius: 50%;
    position: absolute;
    top: -62px;
    left: -40px;
    z-index: -2 ;
  }
  #admission .cont04 .inner .merit:nth-of-type(3) h3::after {
    content: '';
    background: rgba(255,255,255,.5);
    width: 145px;
    height: 145px;
    border-radius: 50%;
    position: absolute;
    top: -62px;
    left: -34px;
    z-index: -2 ;
  }
  #admission .cont04 .inner .merit .text {
    margin-top: 15px;
    text-align: left;
  }

  #admission .cont05 {
    padding: 70px 0;
    text-align: center;
    position: relative;
  }
  #admission .cont05::before {
    content: '';
    background: url(img/admission/adm_cont05_illust01.png) no-repeat center / contain;
    width: 633px;
    height: 719px;
    position: absolute;
    top: 0;
    left: -345px;
    z-index: 1;
  }
  #admission .cont05 h2 {
    font-size: 24px;
    line-height: 1;
    font-weight: bold;
    color: #000;
    text-shadow: 0 0 2px #e7f4fb, 0 0 2px #e7f4fb, 0 0 2px #e7f4fb, 0 0 2px #e7f4fb;
    background: url(img/admission/adm_cont05_ttl.png) no-repeat top center;
    padding: 40px 0;
    position: relative;
    z-index: 1;
  }
  #admission .cont05 .lead {
    line-height: 2;
  }
  #admission .cont05 .lead::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: -20px;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
    border-width: 20px 20px 0 20px;
  }
  #admission .cont05 .inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    text-align: left;
    width: 90%;
    margin: 66px auto 0;
    position: relative;
    z-index: 1;
  }
  #admission .cont05 .inner::before {
    content: '';
    background: url(img/admission/adm_cont05_illust02.png) no-repeat center / contain;
    width: 419px;
    height: 113px;
    position: absolute;
    top: -45px;
    right: -170px;
    z-index: 1;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .cont05 .inner .charm-box {
    width: 380px;
    background: #fff;
    opacity: 0.9;
    border: 1px solid #19a3e0;
    box-sizing: border-box;
    padding: 38px;
    position: relative;
  }
  #admission .cont05 .inner .charm-box::before {
    content: '';
    background: url(img/admission/adm_cont05_illust04.png) no-repeat center;
    width: 45px;
    height: 86px;
    position: absolute;
    bottom: -15px;
    left: 40px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(2):before {
    background: url(img/admission/adm_cont05_illust05.png) no-repeat center;
    width: 98px;
    height: 76px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(3):before {
    background: url(img/admission/adm_cont05_illust06.png) no-repeat center;
    width: 75px;
    height: 72px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(4):before {
    background: url(img/admission/adm_cont05_illust07.png) no-repeat center;
    width: 47px;
    height: 103px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(5):before {
    background: url(img/admission/adm_cont05_illust08.png) no-repeat center;
    width: 62px;
    height: 71px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(6):before {
    background: url(img/admission/adm_cont05_illust09.png) no-repeat center;
    width: 87px;
    height: 58px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(7):before {
    background: url(img/admission/adm_cont05_illust10.png) no-repeat center;
    width: 74px;
    height: 77px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(8):before {
    background: url(img/admission/adm_cont05_illust11.png) no-repeat center;
    width: 83px;
    height: 108px;
  }
  #admission .cont05 .inner .charm-box:nth-of-type(9):before {
    background: url(img/admission/adm_cont05_illust12.png) no-repeat center;
    width: 47px;
    height: 65px;
  }
  #admission .cont05 .inner .charm-box h3 {
    font-size: 18px;
    font-weight: bold;
    color: #19a3e0;
    line-height: 1;
  }
  #admission .cont05 .inner .charm-box .text {
    margin: 17px 0 40px;
  }
  #admission .cont05 .inner .charm-box .name {
    line-height: 1;
    text-align: right;
  }

  #admission .contact-box {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #admission .contact-box .inner {
    width: 90%;
    margin: auto;
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 60px 0;
    position: relative;
  }
  #admission .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center / contain;
    width: 197px;
    height: 151px;
    position: absolute;
    bottom: -57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .contact-box .inner::after {
    content: '';
    background: url(img/admission/adm_contact-box_illust02.png) no-repeat center / contain;
    width: 174px;
    height: 220px;
    position: absolute;
    top: -125px;
    right: 0;
    z-index: 1;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #admission .contact-box .inner h2 {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center / contain;
    padding-top: 100px;
    transform: scale(0.9);
    position: relative;
    z-index: 9;
  }
  #admission .contact-box .inner .lead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    margin: 30px 0;
  }
  #admission .contact-box .inner .contact-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
  }
  #admission .contact-box .inner .contact-inner .guid,
  #admission .contact-box .inner .contact-inner .flow,
  #admission .contact-box .inner .contact-inner .interview,
  #admission .contact-box .inner .contact-inner .form {
    position: relative;
    width: 170px;
  }
  #admission .contact-box .inner .contact-inner .guid::after,
  #admission .contact-box .inner .contact-inner .flow::after,
  #admission .contact-box .inner .contact-inner .interview::after,
  #admission .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #admission .contact-box .inner .contact-inner .guid a,
  #admission .contact-box .inner .contact-inner .flow a,
  #admission .contact-box .inner .contact-inner .interview a,
  #admission .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 18px;
    padding: 44px 44px 60px
  }
  #admission .contact-box .inner .contact-inner .flow a {
    padding: 20px 36px 35px;
    line-height: 1.4;
  }
  #admission .contact-box .inner .contact-inner .flow a span {
    font-size: 14px;
    font-weight: bold;
  }
  #admission .contact-box .inner .contact-inner .interview a {
    padding: 35px 27px 45px;
  }
  #admission .contact-box .inner .contact-inner .form a {
    padding: 40px 44px;
  }
  #admission .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    color: #333;
  }
  #admission .contact-box .inner .cont .contact {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top ;
    color: #fff;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #admission .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #admission .contact-box .inner .cont .tel {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #admission .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 34px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 37px;
  }
  #admission .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #admission .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 8px;
  }
  #admission .contact-box .inner .cont .mail {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
  #admission .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
    line-height: 1;
  }
  #admission .contact-box .inner .cont .mail .btn {
    margin-top: 11px;
    text-align: center;
  }
  #admission .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 260px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    padding: 20px 0;
    transition: all 0.3s;
  }
  #admission .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

/* インタビュー一覧
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #interview a img {
    max-width: 100%;
    height: auto;
  }
  /* cont01 */
  #interview .interview_cont01 {
    max-width: 1080px;
    margin: auto;
  }
  #interview .interview01_wrap {
    background: url("../img/admission/interview07_02.png") no-repeat;
    padding: 8% 0 8% 5%;
    background-size: 60%;
    background-position: top right;
    margin-top: 100px;
  }
  #interview .interview02_wrap {
    background: url("../img/admission/interview08_02.png") no-repeat;
    background-size: 60%;
    background-position: top right;
    margin-top: 100px;
    padding: 8% 0 0 0;
  }
  #interview .interview03_wrap {
    background: url("../img/admission/interview09_02.png") no-repeat;
    background-size: 60%;
    background-position: top right;
    margin-top: 100px;
    padding: 8% 0 8% 5%;
  }
  #interview .interview01_wrap ul {
    width: 65%;
    max-width: 560px;
    background: rgba(255, 255, 255, 0.5);
    padding: 5%;
    line-height: 2;
  }
  #interview .interview01_wrap ul li {
    position: relative;
  }
  #interview .interview01_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview01_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview01_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview01_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview01_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview01_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview01_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview01_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview01_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview01_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* cont02 */
  #interview .interview02_wrap ul {
    width: 60%;
    max-width: 560px;
    background: rgba(255, 255, 255, 0.5);
    padding: 5%;
    line-height: 1.8;
  }
  #interview .interview02_wrap ul li {
    position: relative;
  }
  #interview .interview02_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview02_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview02_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview02_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview02_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview02_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview02_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview02_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview02_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview02_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* cont03 */
  #interview .interview03_wrap ul {
    width: 60%;
    max-width: 560px;
    background: rgba(255, 255, 255, 0.5);
    padding: 5%;
  }
  #interview .interview03_wrap ul li {
    position: relative;
  }
  #interview .interview03_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview03_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview03_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview03_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview03_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview03_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview03_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview03_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview03_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview03_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }
  /* cont04 */
  #interview .interview04_wrap ul {
    width: 60%;
    max-width: 560px;
    background: rgba(255, 255, 255, 0.5);
    padding: 5%;
  }
  #interview .interview04_wrap ul li {
    position: relative;
  }
  #interview .interview04_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview04_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview04_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview04_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview04_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview04_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview04_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview04_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview04_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview04_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  #interview .interview01_wrap,
  #interview .interview02_wrap,
  #interview .interview03_wrap,
  #interview .interview04_wrap {
    padding: 8% 0 8% 5%;
  }
  #interview .interview01_wrap ul,
  #interview .interview02_wrap ul,
  #interview .interview03_wrap ul,
  #interview .interview04_wrap ul {
    width: 100%!important;
    max-width: 1040px!important;
    padding: 10px 0 0 40px!important;
  }
  #interview .interview01_wrap,
  #interview .interview02_wrap,
  #interview .interview03_wrap,
  #interview .interview04_wrap {
    margin-top: 0!important;
    padding-left: 0 !important;
  }
  @media screen and (max-width: 768px) {
    #interview .interview01_wrap ul,
    #interview .interview02_wrap ul,
    #interview .interview03_wrap ul,
    #interview .interview04_wrap ul {
      max-width: 94%!important;
    }
  }

  /* インタビュー動画追加 */
  #interview .interview_cont01 video {
    width: 1080px;
    height: auto;
    filter: drop-shadow(0px 0px rgba(0,0,0,0));
  }
  #interview .interview_bnr {
    margin: 120px 0 20px;
  }
  #interview .interview_bnr a {
    display: contents;
  }

  #interview .contact-box {
    background: #fff;
    padding: 110px 0;
    text-align: center;
    position: relative;
  }
  #interview .contact-box .inner {
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 80px 0;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #interview .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center;
    width: 236px;
    height: 171px;
    position: absolute;
    top: 57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #interview .contact-box .inner h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center;
    padding-top: 100px;
  }
  #interview .contact-box .inner .lead {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.8;
    margin: 50px 0;
  }
  #interview .contact-box .inner .contact-inner {
    display: flex;
    gap: 14px;
    justify-content: center;
  }
  #interview .contact-box .inner .contact-inner .guid,
  #interview .contact-box .inner .contact-inner .flow,
  #interview .contact-box .inner .contact-inner .interview,
  #interview .contact-box .inner .contact-inner .form {
    width: 252px;
    height: 135px;
    position: relative;
  }
  #interview .contact-box .inner .contact-inner .guid::after,
  #interview .contact-box .inner .contact-inner .flow::after,
  #interview .contact-box .inner .contact-inner .interview::after,
  #interview .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.5s all;
  }
  #interview .contact-box .inner .contact-inner .guid::after {
    bottom: 27px;
  }
  #interview .contact-box .inner .contact-inner .guid:hover::after,
  #interview .contact-box .inner .contact-inner .flow:hover::after,
  #interview .contact-box .inner .contact-inner .interview:hover::after,
  #interview .contact-box .inner .contact-inner .form:hover::after {
    transform: translate(0, 5px);
  }
  #interview .contact-box .inner .contact-inner .guid a,
  #interview .contact-box .inner .contact-inner .flow a,
  #interview .contact-box .inner .contact-inner .interview a,
  #interview .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 22px;
    padding: 49px 77px 50px;
  }
  #interview .contact-box .inner .contact-inner .flow a {
    padding: 29px 19px 35px;
    line-height: 1.4;
  }
  #interview .contact-box .inner .contact-inner .flow a span {
    font-size: 16px;
    font-weight: bold;
  }
  #interview .contact-box .inner .contact-inner .interview a,
  #interview .contact-box .inner .contact-inner .form a {
    padding: 45px 50px 55px;
    font-size: 18px;
  }
  #interview .contact-box .inner .contact-inner .guid a:hover,
  #interview .contact-box .inner .contact-inner .flow a:hover,
  #interview .contact-box .inner .contact-inner .interview a:hover,
  #interview .contact-box .inner .contact-inner .form a:hover {
    opacity: 0.8;
  }
  #interview .contact-box .inner .cont {
    display: flex;
    background: #fff;
    color: #333;
    border: 4px solid #1d9add;
    width: 1054px;
    height: 200px;
    margin: 13px auto 0;
    box-sizing: border-box;
  }
  #interview .contact-box .inner .cont .contact {
    width: 340px;
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat 60px top ;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #interview .contact-box .inner .cont .contact::before {
    content: '';
    background: #1a8ad0;
    width: 1px;
    height: 100px;
    position: absolute;
    top: -13px;
    right: 0;
  }
  #interview .contact-box .inner .cont .tel {
    width: 305px;
    margin-top: 45px;
  }
  #interview .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 36px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 38px;
  }
  #interview .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #interview .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 15px;
  }
  #interview .contact-box .inner .cont .mail {
    width: 365px;
    margin-top: 45px;
  }
  #interview .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
  }
  #interview .contact-box .inner .cont .mail .btn {
    margin-top: 18px;
  }
  #interview .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 330px;
    line-height: 1;
    padding: 19px 0;
    text-align: center;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    transition: all 0.3s;
  }
  #interview .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #interview .interview_cont01 {
    width: 90%;
  }
  #interview .interview01_wrap ul li {
    font-size: 14px;
  }
  #interview .interview02_wrap ul li {
    font-size: 14px;
  }
  #interview .interview03_wrap ul li {
    font-size: 14px;
  }

  /* インタビュー動画追加 */
  #interview .interview_cont01 video {
    width: 692px;
  }
  #interview .interview_bnr {
    margin-top: 70px;
  }

  #interview .contact-box .inner {
    width: 90%;
    margin: auto;
  }
  #interview .contact-box .inner h2 {
    font-size: 26px;
  }
  #interview .contact-box .inner .lead {
    font-size: 18px;
    padding: 0 100px;
  }
  #interview .contact-box .inner::before {
    bottom: -43px;
    top: auto;
  }
  #interview .contact-box .inner .contact-inner {
    flex-wrap: wrap;
  }
  #interview .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    width: 100%;
    border: none;
    background: none;
    height: auto;
  }
  #interview .contact-box .inner .cont .contact {
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top;
    color: #fff;
    width: 100%;
    position: relative;
  }
  #interview .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #interview .contact-box .inner .cont .tel {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #interview .contact-box .inner .cont .mail {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
}

@media screen and (max-width: 431px) {
  #interview .interview_cont01 {
    width: 100%;
  }
  #interview .interview_cont01 {
    width: 95%!important;
    margin: auto!important;
  }
  #interview .interview_img {
    width: 100%;
    height: auto;
  }

  /* cont01 */
  #interview .interview01_wrap {
    background: none;
    padding: 20px 0 0;
    margin-top: 0;
  }
  #interview .interview01_wrap ul {
    background: none;
    width: 85%;
    margin: auto;
    padding: 0;
    left: 0;
    line-height: 2;
    font-size: 16px;
    padding-left: 20px;
  }
  #interview .interview01_wrap ul li {
    font-size: 14px;
    line-height: 2;
    position: relative;
  }
  #interview .interview01_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview01_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview01_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview01_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview01_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview01_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview01_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview01_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview01_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview01_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* cont02 */
  #interview .interview02_wrap {
    background: none;
    padding: 20px 0 0;
    margin-top: 0;
  }
  #interview .interview02_wrap ul {
    background: none;
    width: 85%;
    margin: auto;
    padding: 0;
    left: 0;
    line-height: 2;
    font-size: 16px;
    padding-left: 20px;
  }
  #interview .interview02_wrap ul li {
    font-size: 14px;
    line-height: 2;
    position: relative;
  }
  #interview .interview02_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview02_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview02_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview02_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview02_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview02_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview02_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview02_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview02_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview02_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* cont03 */
  #interview .interview03_wrap {
    background: none;
    padding: 20px 0 0;
    margin-top: 0;
  }
  #interview .interview03_wrap ul {
    background: none;
    width: 85%;
    margin: auto;
    padding: 0;
    left: 0;
    line-height: 2;
    font-size: 16px;
    padding-left: 20px;
  }
  #interview .interview03_wrap ul li {
    font-size: 14px;
    line-height: 2;
    position: relative;
  }
  #interview .interview03_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview03_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview03_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview03_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview03_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview03_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview03_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview03_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview03_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview03_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* cont04 */
  #interview .interview04_wrap {
    background: none;
    padding: 20px 0 0;
    margin-top: 0;
  }
  #interview .interview04_wrap ul {
    background: none;
    width: 85%;
    margin: auto;
    padding: 0;
    left: 0;
    line-height: 2;
    font-size: 16px;
    padding-left: 20px;
  }
  #interview .interview04_wrap ul li {
    font-size: 14px;
    line-height: 2;
    position: relative;
  }
  #interview .interview04_wrap ul li::before {
    content: "Q1";
    position: absolute;
    top: 0;
    left: -35px;
    color: #fff;
    font-weight: normal;
    background: #0099dd;
    width: 30px;
    text-align: center;
    height: 30px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview04_wrap ul li:nth-of-type(2n):before {
    content: "A";
    position: absolute;
    top: 0;
    left: -35px;
    color: #0099dd;
    font-weight: normal;
    background: #fff;
    border: 1px solid #0099dd;
    width: 28px;
    text-align: center;
    height: 28px;
    line-height: 30px;
    border-radius: 50%;
    font-size: 14px;
  }
  #interview .interview04_wrap ul li:nth-of-type(3):before {
    content: "Q2";
  }
  #interview .interview04_wrap ul li:nth-of-type(5):before {
    content: "Q3";
  }
  #interview .interview04_wrap ul li:nth-of-type(7):before {
    content: "Q4";
  }
  #interview .interview04_wrap ul li:nth-of-type(9):before {
    content: "Q5";
  }
  #interview .interview04_wrap ul li:nth-of-type(11):before {
    content: "Q6";
  }
  #interview .interview04_wrap ul li:nth-of-type(2n + 1) {
    margin-top: 30px;
  }
  #interview .interview04_wrap ul li:nth-of-type(2n) {
    margin-top: 10px;
  }
  #interview .interview04_wrap ul li:nth-of-type(1) {
    margin-top: 0;
  }

  /* インタビュー動画追加 */
  #interview .interview_cont01 .video {
    text-align: center;
    margin-top: 30px;
  }
  #interview .interview_cont01 video {
    width: 90%;
    height: auto;
    filter: drop-shadow(0px 0px rgba(0,0,0,0));
  }

  #interview .interview_bnr {
    margin-top: 30px;
    justify-content: center;
  }
  #interview .interview_bnr img {
    width: 90%;
    margin-bottom: 10px;
  }
  #interview .interview_bnr a {
    width: 90%!important;
  }
  #interview .interview_bnr img {
    width: 100%!important;
  }

  #interview .contact-box {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #interview .contact-box .inner {
    width: 90%;
    margin: auto;
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 60px 0;
    position: relative;
  }
  #interview .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center / contain;
    width: 197px;
    height: 151px;
    position: absolute;
    bottom: -57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #interview .contact-box .inner h2 {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center / contain;
    padding-top: 100px;
    transform: scale(0.9);
    position: relative;
    z-index: 9;
  }
  #interview .contact-box .inner .lead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    margin: 30px 0;
  }
  #interview .contact-box .inner .contact-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
  }
  #interview .contact-box .inner .contact-inner .guid,
  #interview .contact-box .inner .contact-inner .flow,
  #interview .contact-box .inner .contact-inner .interview,
  #interview .contact-box .inner .contact-inner .form {
    position: relative;
    width: 170px;
  }
  #interview .contact-box .inner .contact-inner .guid::after,
  #interview .contact-box .inner .contact-inner .flow::after,
  #interview .contact-box .inner .contact-inner .interview::after,
  #interview .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #interview .contact-box .inner .contact-inner .guid a,
  #interview .contact-box .inner .contact-inner .flow a,
  #interview .contact-box .inner .contact-inner .interview a,
  #interview .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 18px;
    padding: 44px 44px 60px
  }
  #interview .contact-box .inner .contact-inner .flow a {
    padding: 20px 36px 35px;
    line-height: 1.4;
  }
  #interview .contact-box .inner .contact-inner .flow a span {
    font-size: 14px;
    font-weight: bold;
  }
  #interview .contact-box .inner .contact-inner .interview a {
    padding: 35px 27px 45px;
    font-size: 18px;
  }
  #interview .contact-box .inner .contact-inner .form a {
    padding: 40px;
  }
  #interview .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    color: #333;
  }
  #interview .contact-box .inner .cont .contact {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top ;
    color: #fff;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #interview .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #interview .contact-box .inner .cont .tel {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #interview .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 34px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 37px;
  }
  #interview .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #interview .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 8px;
  }
  #interview .contact-box .inner .cont .mail {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
  #interview .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
    line-height: 1;
  }
  #interview .contact-box .inner .cont .mail .btn {
    margin-top: 11px;
    text-align: center;
  }
  #interview .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 260px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    padding: 20px 0;
    transition: all 0.3s;
  }
  #interview .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

/*　入会の流れ
------------------------------------------------------------------*/
#flow .sp {
  display: none;
}
#flow .bg-video {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
}
#flow .bg-video video {
  width: auto;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
#flow .pan-wrap {
  padding: 5px 5% 40px;
  background: #fff;
}
#flow .pan-wrap .pan {
  margin: 0;
}
#flow .cont01 {
  padding-top: 1px;
  background: #fff;
}
#flow h3.ttl03:before {
  bottom: 40px;
  width: 40px;
}
@keyframes loop_pc {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -2500px 0;
  }
}
#flow .slide {
  position: absolute;
  top: 1150px;
  margin: 0 0 120px;
  width: 100%;
  height: 290px;
  background: url(img/admission/admission-flow_slide.png) repeat-x 0 0 / auto
    100%;
  animation: loop_pc 50s linear infinite;


}
@media screen and (min-width: 431px) {
  #flow .tab {
    display: none;
  }

  #flow .pan-wrap {
    background: #fff;
    text-align: center;
  }
  #flow .pan {
    margin: 0 auto;
    padding: 7px 0 10px;
    text-align: left;
  }
  #flow .container_1080 {
    padding-bottom: 135px;
  }
  #flow .container_1080 .ttl03 {
    margin-top: 60px;
    padding-top: 10px;
    padding-bottom: 74px;
    font-size: 32px;
    font-weight: bold;
    text-align: center;
    background: url(img/admission/flow_text01.png) no-repeat center top;
  }
  #flow .container_1080 .text01 {
    margin-bottom: 524px;
    font-size: 18px;
    text-align: center;
    line-height: 2.1;
  }
  #flow .flow_cont01 i.f_sub {
    font-size: 60px;
  }
  #flow .flow_cont01 > p {
    margin: 30px 0;
  }
  #flow .flow_cont01_ttl {
    border: 2px solid #0099dd;
    text-align: center;
    width: 30%;
    margin: auto;
  }
  #flow .flow_cont01_ttl.flow_cont01_ttl_s {
    width: 15%;
  }
  #flow .flow_cont01_ttl .flow_cont01_ttl01 {
    background: #0099dd;
    padding: 10px 0;
  }
  #flow .flow_cont01_ttl .flow_cont01_ttl02 {
    background: #fff;
    padding: 20px 0;
  }
  #flow .flow_cont01_ttl_s .flow_cont01_ttl02 {
    padding: 20px 0 0;
    line-height: 1;
    height: 60px;
  }
  #flow .flow_cont01 .fl > i.f_sub {
    position: relative;
    top: 35px;
    font-size: 50px;
  }
  #flow .flow_cont01 .fl > i.f_sub.sp_blocl {
    display: none;
  }

  #flow .contact-box {
    background: #fff;
    padding: 110px 0;
    text-align: center;
    position: relative;
  }
  #flow .contact-box .inner {
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 80px 0;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #flow .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center;
    width: 236px;
    height: 171px;
    position: absolute;
    top: 57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #flow .contact-box .inner h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center;
    padding-top: 100px;
  }
  #flow .contact-box .inner .lead {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.8;
    margin: 50px 0;
  }
  #flow .contact-box .inner .contact-inner {
    display: flex;
    gap: 14px;
    justify-content: center;
  }
  #flow .contact-box .inner .contact-inner .guid,
  #flow .contact-box .inner .contact-inner .flow,
  #flow .contact-box .inner .contact-inner .interview,
  #flow .contact-box .inner .contact-inner .form {
    width: 252px;
    height: 135px;
    position: relative;
  }
  #flow .contact-box .inner .contact-inner .guid::after,
  #flow .contact-box .inner .contact-inner .flow::after,
  #flow .contact-box .inner .contact-inner .interview::after,
  #flow .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.5s all;
  }
  #flow .contact-box .inner .contact-inner .guid::after {
    bottom: 27px;
  }
  #flow .contact-box .inner .contact-inner .guid:hover::after,
  #flow .contact-box .inner .contact-inner .flow:hover::after,
  #flow .contact-box .inner .contact-inner .interview:hover::after,
  #flow .contact-box .inner .contact-inner .form:hover::after {
    transform: translate(0, 5px);
  }
  #flow .contact-box .inner .contact-inner .guid a,
  #flow .contact-box .inner .contact-inner .flow a,
  #flow .contact-box .inner .contact-inner .interview a,
  #flow .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 22px;
    padding: 49px 77px 50px;
  }
  #flow .contact-box .inner .contact-inner .flow a {
    padding: 29px 19px 35px;
    line-height: 1.4;
  }
  #flow .contact-box .inner .contact-inner .flow a span {
    font-size: 16px;
    font-weight: bold;
  }
  #flow .contact-box .inner .contact-inner .interview a,
  #flow .contact-box .inner .contact-inner .form a {
    padding: 45px 50px 55px;
    font-size: 18px;
  }
  #flow .contact-box .inner .contact-inner .guid a:hover,
  #flow .contact-box .inner .contact-inner .flow a:hover,
  #flow .contact-box .inner .contact-inner .interview a:hover,
  #flow .contact-box .inner .contact-inner .form a:hover {
    opacity: 0.8;
  }
  #flow .contact-box .inner .cont {
    display: flex;
    background: #fff;
    color: #333;
    border: 4px solid #1d9add;
    width: 1054px;
    height: 200px;
    margin: 13px auto 0;
    box-sizing: border-box;
  }
  #flow .contact-box .inner .cont .contact {
    width: 340px;
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat 60px top ;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #flow .contact-box .inner .cont .contact::before {
    content: '';
    background: #1a8ad0;
    width: 1px;
    height: 100px;
    position: absolute;
    top: -13px;
    right: 0;
  }
  #flow .contact-box .inner .cont .tel {
    width: 305px;
    margin-top: 45px;
  }
  #flow .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 36px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 38px;
  }
  #flow .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #flow .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 15px;
  }
  #flow .contact-box .inner .cont .mail {
    width: 365px;
    margin-top: 45px;
  }
  #flow .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
  }
  #flow .contact-box .inner .cont .mail .btn {
    margin-top: 18px;
  }
  #flow .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 330px;
    line-height: 1;
    padding: 19px 0;
    text-align: center;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    transition: all 0.3s;
  }
  #flow .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #flow .container_1080 .text01 {
    margin-bottom: 434px;
  }
  #flow .flow_cont01_ttl .flow_cont01_ttl01.f_20 {
    font-size: 16px;
  }
  #flow .flow_cont01_ttl_s .flow_cont01_ttl02.f_18 {
    font-size: 14px;
    height: 45px;
  }
  #flow .flow_cont01 i.f_sub {
    font-size: 40px;
  }
  #flow .flow_cont01 .fl > i.f_sub {
    font-size: 30px;
  }
  table.sub_table01 th {
    width: 20%;
  }

  #flow .contact-box .inner {
    width: 90%;
    margin: auto;
  }
  #flow .contact-box .inner h2 {
    font-size: 26px;
  }
  #flow .contact-box .inner .lead {
    font-size: 18px;
    padding: 0 100px;
  }
  #flow .contact-box .inner::before {
    bottom: -43px;
    top: auto;
  }
  #flow .contact-box .inner::after {
    right: 50px;
    top: -453px;
  }
  #flow .contact-box .inner .contact-inner {
    flex-wrap: wrap;
  }
  #flow .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    width: 100%;
    border: none;
    background: none;
    height: auto;
  }
  #flow .contact-box .inner .cont .contact {
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top;
    color: #fff;
    width: 100%;
    position: relative;
  }
  #flow .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #flow .contact-box .inner .cont .tel {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #flow .contact-box .inner .cont .mail {
    width: 460px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
}

@media screen and (max-width: 431px) {
  #flow .container_1080 .ttl03 {
    padding-top: 20px;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    background: url(img/admission/flow_text01.png) no-repeat left top / 300px;
  }
  #flow .container_1080 .ttl03:before {
    left: 5%;
    bottom: -10px;
    height: 2px;
  }
  #flow .cont01 {
    margin-top: -1px;
    padding-bottom: 70px;
  }
  #flow .cont01 .text01 {
    padding: 24px 0 170px;
  }
  #flow .flow_cont01 > p {
    text-align: left;
    margin: 30px 0;
  }
  #flow .flow_cont01_ttl {
    border: 2px solid #0099dd;
    text-align: center;
    margin: auto;
    width: 100%;
  }
  #flow .flow_cont01 .fl {
    text-align: center;
    display: block;
  }
  #flow .flow_cont01 i.f_sub,
  #flow .flow_cont01 .fl > i.f_sub {
    top: 0;
    font-size: 40px;
  }
  #flow .flow_cont01_ttl .flow_cont01_ttl01 {
    background: #0099dd;
    padding: 5px 0;
  }
  #flow .flow_cont01_ttl .flow_cont01_ttl02 {
    background: #fff;
    padding: 10px;
  }
  #flow .flow_cont01_ttl_s .flow_cont01_ttl02 {
    height: auto;
    font-size: 4.4vw;
    line-height: 1.6;
  }
  #flow .flow_cont01 .fl > i.f_sub.pc_blocl {
    display: none;
  }
  #flow .slide {
    top: 930px;
    background: url(img/admission/admission-flow_slide.png) repeat-x 0 0 / auto
      50%;
  }

  #flow .contact-box {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #flow .contact-box .inner {
    width: 90%;
    margin: auto;
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 60px 0;
    position: relative;
  }
  #flow .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center / contain;
    width: 197px;
    height: 151px;
    position: absolute;
    bottom: -57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #flow .contact-box .inner h2 {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center / contain;
    padding-top: 100px;
    transform: scale(0.9);
    position: relative;
    z-index: 9;
  }
  #flow .contact-box .inner .lead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    margin: 30px 0;
  }
  #flow .contact-box .inner .contact-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
  }
  #flow .contact-box .inner .contact-inner .guid,
  #flow .contact-box .inner .contact-inner .flow,
  #flow .contact-box .inner .contact-inner .interview,
  #flow .contact-box .inner .contact-inner .form {
    position: relative;
    width: 170px;
  }
  #flow .contact-box .inner .contact-inner .guid::after,
  #flow .contact-box .inner .contact-inner .flow::after,
  #flow .contact-box .inner .contact-inner .interview::after,
  #flow .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #flow .contact-box .inner .contact-inner .guid a,
  #flow .contact-box .inner .contact-inner .flow a,
  #flow .contact-box .inner .contact-inner .interview a,
  #flow .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 18px;
    padding: 44px 44px 60px
  }
  #flow .contact-box .inner .contact-inner .flow a {
    padding: 20px 36px 35px;
    line-height: 1.4;
  }
  #flow .contact-box .inner .contact-inner .flow a span {
    font-size: 14px;
    font-weight: bold;
  }
  #flow .contact-box .inner .contact-inner .interview a{
    padding: 35px 27px 45px;
    font-size: 18px;
  }
   #flow .contact-box .inner .contact-inner .form a {
    padding: 40px 44px;
   }
  #flow .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    color: #333;
  }
  #flow .contact-box .inner .cont .contact {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top ;
    color: #fff;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #flow .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #flow .contact-box .inner .cont .tel {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #flow .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 34px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 37px;
  }
  #flow .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #flow .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 8px;
  }
  #flow .contact-box .inner .cont .mail {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
  #flow .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
    line-height: 1;
  }
  #flow .contact-box .inner .cont .mail .btn {
    margin-top: 11px;
    text-align: center;
  }
  #flow .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 260px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    padding: 20px 0;
    transition: all 0.3s;
  }
  #flow .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

/************ kido #flow 体裁整える用 */
#container {
  margin-bottom: 0;
}
#flow .more_info {
  margin: 0 auto;
}
.kaiin-btn.btn-wap {
  margin-top: 0;
  padding-top: 60px;
  padding-bottom: 100px;
  background: #fff;
}
footer {
  margin-top: 0;
}
/************ kido #flow 体裁整える用 */

/* cont02 */
#flow .cont02 .box {
  background: rgba(51 51 51 / 0.9);
  padding: 120px 0 125px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
#flow .cont02 .box .inner {
  width: 1200px;
  margin: auto;
  position: relative;
}
#flow .cont02 .box h2 {
  text-align: center;
  padding-top: 45px;
  font-size: 36px;
  font-weight: bold;
  background: url(img/top/home_cont03_ttl.png) no-repeat top center;
  color: #fff;
  line-height: 1.7;
}
#flow .cont02 .box .text {
  font-size: 16px;
  line-height: 2;
  margin-top: 12px;
  text-align: center;
  color: #fff;
}
#flow .cont02 .box .fl {
  margin-top: 55px;
  padding-left: 20px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  box-sizing: border-box;
}
#flow .cont02 .box .fl .img_box {
  width: 458px;
  height: 574px;
  position: relative;
}
#flow .cont02 .box .fl .img_box .link-img-bg {
  position: absolute;
  top: 0;
  left: 0;
}
#flow .cont02 .box .fl .img_box .link-img {
  position: absolute;
  top: 27px;
  left: 40px;
  opacity: 0;
  transform: rotateZ(3deg);
  transition: all 0.5s;
  transition-duration: opacity 1s;
}
#flow .cont02 .box .fl .img_box .link-img.active {
  opacity: 1;
  transition: all 0.5s;
}

#flow .cont02 .box .fl .btn_box {
  width: 480px;
  margin-left: 120px;
}
#flow .cont02 .box .fl .btn_box p {
  line-height: 1;
}
#flow .cont02 .box .fl .btn_box .hover_btn a {
  display: block;
  padding: 50px 0 30px;
  line-height: 1;
  border-top: 1px solid #26a4e1;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  position: relative;
  background: url(img/top/home_cont03_btn_text01.png) no-repeat top 30px left;
  transition: all 0.5s;
}
#flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(2) a {
  background: url(img/top/home_cont03_btn_text02.png) no-repeat top 30px left;
}
#flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(3) a {
  background: url(img/top/home_cont03_btn_text03.png) no-repeat top 30px left;
}
#flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(4) a {
  background: url(img/top/home_cont03_btn_text04.png) no-repeat top 30px left;
  border-bottom: 1px solid #26a4e1;
}
#flow .cont02 .box .fl .btn_box a::after {
  content: "";
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.2) url(img/top/home_cont03_row_w.png)
    no-repeat center;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border-radius: 50%;
  transition: all 0.5s;
}
#flow .cont02 .box .fl .slide-btn {
  display: none;
}

@media (min-width: 769px) {
  #flow .cont02 .box .fl .btn_box a.active {
    color: #fff;
    transition: all 0.5s;
  }
  #flow .cont02 .box .fl .btn_box a.black {
    color: #000;
    background: url(img/top/home_cont03_btn_text01_r.png) no-repeat top 30px
      left;
    transition: all 0.5s;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(2) a.black {
    background: url(img/top/home_cont03_btn_text02_r.png) no-repeat top 30px
      left;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(3) a.black {
    background: url(img/top/home_cont03_btn_text03_r.png) no-repeat top 30px
      left;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(4) a.black {
    background: url(img/top/home_cont03_btn_text04_r.png) no-repeat top 30px
      left;
  }
  #flow .cont02 .box .fl .btn_box a.black::after {
    background: rgba(255, 255, 255, 0.2) url(img/top/home_cont03_row_b.png)
      no-repeat center;
    transition: all 0.5s;
  }
}
@media (max-width: 768px) {
  #flow .tab {
    display: block;
  }
  #flow .cont02 {
    padding: 0;
  }
  #flow .cont02 .box {
    padding: 100px 0;
  }
  #flow .cont02 .box h2 {
    font-size: 26px;
    line-height: 1.3;
  }
  #flow .cont02 .box .text {
    width: 85%;
    text-align: left;
    margin: 30px auto 0;
  }
  #flow .cont02 .box .inner {
    width: 100%;
  }
  #flow .cont02 .box .fl {
    padding: 0;
    justify-content: center;
    margin-top: 50px;
  }
  #flow .cont02 .box .fl .img_box {
    width: 300px;
    height: 376px;
  }
  #flow .cont02 .box .fl .img_box img {
    width: 100%;
    height: auto;
  }
  #flow .cont02 .box .fl .img_box .link-img {
    top: 18px;
    left: 25px;
    width: 250px;
  }

  #flow .cont02 .box .fl .btn_box {
    width: 300px;
    margin-left: 50px;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn a {
    padding: 45px 0 25px;
    font-size: 16px;
    background-position: top 25px left;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(2) a {
    background-position: top 25px left;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(3) a {
    background-position: top 25px left;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn:nth-of-type(4) a {
    background-position: top 25px left;
  }
}

@media (max-width: 431px) {
  #flow .tab {
    display: none;
  }
  #flow .cont02 .box {
    height: auto;
    padding: 80px 0;
  }
  #flow .cont02 .box .inner {
    padding: 0 15px;
  }
  #flow .cont02 .box h2 {
    font-size: 24px;
  }
  #flow .cont02 .box .text {
    font-size: 14px;
    width: 100%;
    margin: 30px auto 0;
  }
  #flow .cont02 .box .fl {
    margin-top: 40px;
    position: relative;
  }
  #flow .cont02 .box .fl .img_box {
    width: 300px;
    height: 376px;
  }
  #flow .cont02 .box .fl .img_box .link-img-bg {
    width: 300px;
    height: 376px;
  }
  #flow .cont02 .box .fl .btn_box {
    width: 320px;
    height: 87px;
    margin-left: 0;
    margin-top: 50px;
    position: relative;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn.active {
    opacity: 1;
  }
  #flow .cont02 .box .fl .btn_box .hover_btn a {
    border-top: 1px solid #26a4e1;
    border-bottom: 1px solid #26a4e1;
  }
  #flow .cont02 .box .fl .slide-btn {
    position: absolute;
    top: 180px;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
  }
  #flow .cont02 .box .fl .slide-btn span {
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.2) url(img/top/home_cont03_row_w.png)
      no-repeat center;
    border-radius: 50%;
  }
  #flow .cont02 .box .fl .slide-btn span.slide-btn-prev {
    transform: rotateZ(180deg);
  }
}

/*　入会申し込み
------------------------------------------------------------------*/
#apply table.form input[type="text"],
#apply table.form input[type="file"],
#apply table.form input[type="checkbox"],
#apply table.form select {
  -webkit-appearance: none;
  border-radius: 0;
  color: #000;
}
#apply table {
  width: 90%;
  margin: auto;
  table-layout: fixed;
  max-width: none;
}
#apply table.form select {
  height: 40px;
  width: 100px;
  text-align: center;
}
#apply table.form th {
  width: 230px;
  padding-right: 10px;
}
#apply table.form th span {
  line-height: 1.5;
}
#apply table.form select[name="birth-year"],
#apply table.form select[name="graduation"] {
  width: 100px;
  text-align: center;
}
#apply table.form select[name="birth-month"],
#apply table.form select[name="birth-day"] {
  width: 50px;
  text-align: center;
}
#apply .mwform-checkbox-field {
  display: flex;
  flex-direction: column;
}
#apply .mw_wp_form .horizontal-item + .horizontal-item {
  margin: 0;
}
#apply .mw_wp_form .mwform-checkbox-field label {
  display: flex;
  align-items: flex-start;
}
#apply .mw_wp_form .mwform-checkbox-field label input {
  margin: 0;
  margin-top: 7px;
}
#apply .mw_wp_form .horizontal-item + .horizontal-item:nth-of-type(n + 2) {
  margin-top: 15px;
}
#apply .mw_wp_form .horizontal-item label .mwform-checkbox-field-text {
  padding-left: 20px;
  position: relative;
  margin-left: 15px;
}
#apply .mw_wp_form .horizontal-item label .mwform-checkbox-field-text::before {
  content: "1.";
  position: absolute;
  top: 0;
  left: 0;
}


#apply
  .mw_wp_form
  .horizontal-item:nth-of-type(2)
  label
  .mwform-checkbox-field-text::before {
  content: "2.";
}
#apply
  .mw_wp_form
  .horizontal-item:nth-of-type(3)
  label
  .mwform-checkbox-field-text::before {
  content: "3.";
}
#apply
  .mw_wp_form
  .horizontal-item:nth-of-type(4)
  label
  .mwform-checkbox-field-text::before {
  content: "4.";
}
#apply
  .mw_wp_form
  .horizontal-item:nth-of-type(5)
  label
  .mwform-checkbox-field-text::before {
  content: "5.";
}
#apply
  .mw_wp_form
  .horizontal-item:nth-of-type(6)
  label
  .mwform-checkbox-field-text::before {
  content: "6.";
}
#apply .apply-text {
  width: 90%;
  margin: 50px auto 20px;
  font-weight: bold;
  font-size: 18px;
}
#apply .apply-text a {
  text-decoration: underline;
  color: red;
  font-weight: bold;
}
#apply .apply-box {
  width: 90%;
  margin: auto;
}
#apply .apply-box + p{
  margin: 30px 0;
}
#apply .apply-box + p .mwform-checkbox-field-text{
  padding-left: 0 !important;
}
#apply .apply-box + p .mwform-checkbox-field-text::before {
  content: "" !important;
}


#apply .table02 {
  margin-top: 50px;
  margin-bottom: 100px;
}
#apply .table02 th {
  width: 0 !important;
}
#apply .table02 .mwform-checkbox-field {
  display: inline-block;
}
#apply .table02 #submit {
  margin-top: 30px;
}
#apply .table02 .horizontal-item label .mwform-checkbox-field-text {
  padding-left: 5px;
  margin-left: 0;
}
#apply .table02 .horizontal-item label .mwform-checkbox-field-text::before {
  display: none;
}
#apply table.form input[name="identification02"],
#apply table.form input[name="identification03"],
#apply
  table.form
  input[name="family_register02"]
  #apply
  table.form
  input[name="family_register03"] {
  margin-top: 15px;
}
#apply table.form input[name="identification02"],
#apply table.form input[name="identification03"],
#apply table.form input[name="family_register02"],
#apply table.form input[name="family_register03"] {
  margin-top: 15px;
}
.apply-box input[type="checkbox"] {
  flex-shrink: 0 !important;
}

#apply .contact-box {
    background: #fff;
    padding: 110px 0;
    text-align: center;
    position: relative;
}
#apply .contact-box .inner {
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 80px 0;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}
#apply .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center;
    width: 236px;
    height: 171px;
    position: absolute;
    top: 57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
@keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
#apply .contact-box .inner h2 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center;
    padding-top: 100px;
}
#apply .contact-box .inner .lead {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.8;
    margin: 50px 0;
}
#apply .contact-box .inner .contact-inner {
    display: flex;
    gap: 14px;
    justify-content: center;
}
#apply .contact-box .inner .contact-inner .guid,
#apply .contact-box .inner .contact-inner .flow,
#apply .contact-box .inner .contact-inner .interview,
#apply .contact-box .inner .contact-inner .form {
    width: 252px;
    height: 135px;
    position: relative;
}
#apply .contact-box .inner .contact-inner .guid::after,
#apply .contact-box .inner .contact-inner .flow::after,
#apply .contact-box .inner .contact-inner .interview::after,
#apply .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.5s all;
}
#apply .contact-box .inner .contact-inner .guid::after {
    bottom: 27px;
}
#apply .contact-box .inner .contact-inner .guid:hover::after,
#apply .contact-box .inner .contact-inner .flow:hover::after,
#apply .contact-box .inner .contact-inner .interview:hover::after,
#apply .contact-box .inner .contact-inner .form:hover::after {
    transform: translate(0, 5px);
}
#apply .contact-box .inner .contact-inner .guid a,
#apply .contact-box .inner .contact-inner .flow a,
#apply .contact-box .inner .contact-inner .interview a,
#apply .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 22px;
    padding: 49px 77px 50px;
}
#apply .contact-box .inner .contact-inner .flow a {
    padding: 29px 19px 35px;
    line-height: 1.4;
}
#apply .contact-box .inner .contact-inner .flow a span {
    font-size: 16px;
    font-weight: bold;
}
#apply .contact-box .inner .contact-inner .interview a,
#apply .contact-box .inner .contact-inner .form a {
    padding: 45px 50px 55px;
    font-size: 18px;
}
#apply .contact-box .inner .contact-inner .guid a:hover,
#apply .contact-box .inner .contact-inner .flow a:hover,
#apply .contact-box .inner .contact-inner .interview a:hover,
#apply .contact-box .inner .contact-inner .form a:hover {
    opacity: 0.8;
}
#apply .contact-box .inner .cont {
    display: flex;
    background: #fff;
    color: #333;
    border: 4px solid #1d9add;
    width: 1054px;
    height: 200px;
    margin: 13px auto 0;
    box-sizing: border-box;
}
#apply .contact-box .inner .cont .contact {
    width: 340px;
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat 60px top ;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
}
#apply .contact-box .inner .cont .contact::before {
    content: '';
    background: #1a8ad0;
    width: 1px;
    height: 100px;
    position: absolute;
    top: -13px;
    right: 0;
}
#apply .contact-box .inner .cont .tel {
    width: 305px;
    margin-top: 45px;
}
#apply .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 36px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 38px;
}
#apply .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
}
#apply .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 15px;
}
#apply .contact-box .inner .cont .mail {
    width: 365px;
    margin-top: 45px;
}
#apply .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
}
#apply .contact-box .inner .cont .mail .btn {
    margin-top: 18px;
}
#apply .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 330px;
    line-height: 1;
    padding: 19px 0;
    text-align: center;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    transition: all 0.3s;
}
#apply .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
}

@media (max-width: 768px) {
  #apply table.form td.radio > .horizontal-item {
    display: block;
    margin-top: 5px;
  }
  #apply .contact-box .inner {
    width: 90%;
    margin: auto;
  }
  #apply .contact-box .inner h2 {
      font-size: 26px;
  }
  #apply .contact-box .inner .lead {
      font-size: 18px;
      padding: 0 100px;
  }
  #apply .contact-box .inner::before {
      bottom: -43px;
      top: auto;
  }
  #apply .contact-box .inner .contact-inner {
      flex-wrap: wrap;
  }
  #apply .contact-box .inner .cont {
      display: flex;
      flex-direction: column;
      width: 100%;
      border: none;
      background: none;
      height: auto;
  }
  #apply .contact-box .inner .cont .contact {
      background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top;
      color: #fff;
      width: 100%;
      position: relative;
  }
  #apply .contact-box .inner .cont .contact::before {
      content: '';
      background: #fff;
      height: 2px;
      width: 55px;
      position: absolute;
      top: 105px;
      right: 0;
      left: 0;
      margin: auto;
  }
  #apply .contact-box .inner .cont .tel {
      width: 460px;
      background: #fff;
      border: 4px solid #1d9add;
      padding: 20px;
      margin: 45px auto 0;
  }
  #apply .contact-box .inner .cont .mail {
      width: 460px;
      background: #fff;
      border: 4px solid #1d9add;
      padding: 20px;
      margin: 15px auto 0;
  }
}

@media screen and (max-width: 431px) {
  #apply
    table
    td.radio
    .mwform-checkbox-field
    .mwform-radio-field:first-of-type {
    margin-left: 5px;
  }
  #apply .table02 {
    margin-bottom: 70px;
  }
  #apply .apply-text {
    font-size: 14px;
  }
  #apply .apply-box li {
    font-size: 14px;
  }
  #apply .contact-box {
    background: #fff;
    padding: 70px 0;
    text-align: center;
  }
  #apply .contact-box .inner {
    width: 90%;
    margin: auto;
    background: linear-gradient(90deg, rgba(1,140,216,0.9) 0%, rgba(0,66,153,0.9) 100%);
    border-radius: 20px;
    color: #fff;
    padding: 60px 0;
    position: relative;
  }
  #apply .contact-box .inner::before {
    content: '';
    background: url(img/admission/adm_contact-box_illust01.png) no-repeat center / contain;
    width: 197px;
    height: 151px;
    position: absolute;
    bottom: -57px;
    left: 0;
    pointer-events: none;
    animation-name: pyokopyoko;
    animation-fill-mode: backwards;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
  }
  @keyframes pyokopyoko {
    0% {
      transform: rotateZ(0);
    }
    25% {
      transform: rotateZ(3deg);
    }
    50% {
      transform: rotateZ(0deg);
    }
    75% {
      transform: rotateZ(-3deg);
    }
    100% {
      transform: rotateZ(0);
    }
  }
  #apply .contact-box .inner h2 {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl01.png) no-repeat top center / contain;
    padding-top: 100px;
    transform: scale(0.9);
    position: relative;
    z-index: 9;
  }
  #apply .contact-box .inner .lead {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.8;
    margin: 30px 0;
  }
  #apply .contact-box .inner .contact-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 14px;
  }
  #apply .contact-box .inner .contact-inner .guid,
  #apply .contact-box .inner .contact-inner .flow,
  #apply .contact-box .inner .contact-inner .interview,
  #apply .contact-box .inner .contact-inner .form {
    position: relative;
    width: 170px;
  }
  #apply .contact-box .inner .contact-inner .guid::after,
  #apply .contact-box .inner .contact-inner .flow::after,
  #apply .contact-box .inner .contact-inner .interview::after,
  #apply .contact-box .inner .contact-inner .form::after {
    content: '';
    background: url(img/admission/adm_contact-box_btn_icon01.png) no-repeat center;
    width: 14px;
    height: 9px;
    position: absolute;
    bottom: 21px;
    left: 0;
    right: 0;
    margin: auto;
  }
  #apply .contact-box .inner .contact-inner .guid a,
  #apply .contact-box .inner .contact-inner .flow a,
  #apply .contact-box .inner .contact-inner .interview a,
  #apply .contact-box .inner .contact-inner .form a {
    display: inline-block;
    border: 4px solid #1d9add;
    background: #fff;
    box-sizing: border-box;
    font-weight: bold;
    color: #333;
    font-size: 18px;
    padding: 44px 44px 60px
  }
  #apply .contact-box .inner .contact-inner .flow a {
    padding: 20px 36px 35px;
    line-height: 1.4;
  }
  #apply .contact-box .inner .contact-inner .flow a span {
    font-size: 14px;
    font-weight: bold;
  }
  #apply .contact-box .inner .contact-inner .interview a {
    padding: 35px 27px 45px;
    font-size: 18px;
  }
  #apply .contact-box .inner .contact-inner .form a {
    padding: 40px;
  }

  #apply .contact-box .inner .cont {
    display: flex;
    flex-direction: column;
    color: #333;
  }
  #apply .contact-box .inner .lead {
    padding: 0;
  }
  #apply .contact-box .inner .cont .contact {
    font-size: 20px;
    font-weight: bold;
    background: url(img/admission/adm_contact-box_ttl02.png) no-repeat center top ;
    color: #fff;
    padding-top: 55px;
    margin-top: 60px;
    position: relative;
  }
  #apply .contact-box .inner .cont .contact::before {
    content: '';
    background: #fff;
    height: 2px;
    width: 55px;
    position: absolute;
    top: 105px;
    right: 0;
    left: 0;
    margin: auto;
  }
  #apply .contact-box .inner .cont .tel {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 45px auto 0;
  }
  #apply .contact-box .inner .cont .tel .number a {
    color: #1955a4;
    font-size: 34px;
    line-height: 1;
    background: url(img/admission/adm_contact-box_tel_icon.png) no-repeat  left center;
    padding-left: 37px;
  }
  #apply .contact-box .inner .cont .tel .tel-ttl {
    font-weight: bold;
    line-height: 1;
    margin-bottom: 18px;
  }
  #apply .contact-box .inner .cont .tel .time {
    font-weight: bold;
    margin-top: 8px;
  }
  #apply .contact-box .inner .cont .mail {
    width: 300px;
    background: #fff;
    border: 4px solid #1d9add;
    padding: 20px;
    margin: 15px auto 0;
  }
  #apply .contact-box .inner .cont .mail .mail-ttl {
    font-weight: bold;
    line-height: 1;
  }
  #apply .contact-box .inner .cont .mail .btn {
    margin-top: 11px;
    text-align: center;
  }
  #apply .contact-box .inner .cont .mail .btn a {
    display: inline-block;
    width: 260px;
    font-size: 14px;
    line-height: 1;
    border: 1px solid #1955a4;
    font-weight: bold;
    border-radius: 60px;
    background: url(img/admission/adm_contact-box_btn_icon02.png) no-repeat center right 30px;
    padding: 20px 0;
    transition: all 0.3s;
  }
  #apply .contact-box .inner .cont .mail .btn a:hover {
    background: #1955a4 url(img/admission/adm_contact-box_btn_icon03.png) no-repeat center right 20px;
    color: #fff;
    opacity: 1;
  }
}

/*　スケジュール・活動報告
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #report,
  #schedule {
    padding-bottom: 60px;
  }
  #schedule img {
    max-width: 100%;
    height: auto;
  }
  #report .box,
  #schedule .box {
    margin-bottom: 50px;
  }
  #report .box .img_box,
  #schedule .box .img_box {
    width: 380px;
    height: auto;
  }
  #report .box .txt_box,
  #schedule .box .txt_box {
    width: 670px;
  }
  #schedule .report_txt01,
  #report .report_txt01 {
    margin-top: 20px;
  }
  #report .report_txt01 iframe {
    max-width: 100%;
  }
  #schedule .box .txt_box h4 {
    margin-bottom: 5px;
  }
  #schedule .box .txt_box .jigyo_gaiyou {
    margin: 5px 0;
  }
  #schedule .btn-wap {
    margin: 80px 0 20px;
  }
  #schedule iframe {
    margin: 20px auto 0;
    display: block;
  }
  #schedule .other_text_area_img {
    margin: 20px 10px 20px 0;
    height: 400px;
    display: block;
    margin: 30px auto;
  }
  #report .box .txt_box h4 {
    margin: 10px 0 5px;
  }
  #report .box .txt_box .btn_red {
    float: right;
  }
  #schedule .btn_red {
    padding: 8px 15px 0 25px;
    line-height: 1;
    height: 24px;
    color: #fff;
    background: #df3c3e;
    text-align: center;
    display: inline-block;
    border: 1px #df3c3e solid;
    position: relative;
  }
  #schedule .btn_red:hover {
    background: #fff;
    color: #df3c3e;
  }
  #schedule .btn_red::after {
    content: "";
    display: block;
    background: #fff;
    height: calc(tan(60deg) * 12px / 2);
    width: 6px;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    margin: auto 0;
  }
  #schedule .btn_red:hover::after {
    background: #df3c3e;
  }
  #report .box .txt_box p {
    transition: 0.3s;
  }
  #report .box .txt_box a:hover p {
    opacity: 0.6;
    transition: 0.3s;
  }
  #report .report_txt01 p {
    margin: 0 0 20px;
  }
  #report .report_txt01 p img {
    max-width: 100%;
    height: auto;
  }
  #report .report_txt01 p a {
    color: #0099dd;
    transition: 0.3s;
    font-weight: 900;
  }
  #report .report_txt01 p a:hover {
    transition: 0.3s;
    opacity: 0.6;
  }
  #report .btn_wap {
    margin-bottom: 30px;
  }
  #report .report_img img {
    width: 32%;
    height: auto;
    margin: 0 1% 20px 0;
  }
}

@media screen and (max-width: 431px) {
  #report,
  #schedule {
    padding-bottom: 10px;
  }
  #report .box,
  #schedule .box {
    margin-bottom: 50px;
  }
  #report .box .txt_box h4 a,
  #schedule .box .txt_box h4 a {
    font-size: 18px;
  }
  #schedule .main_img img {
    width: 100%;
    object-fit: contain;
    height: auto;
  }
  #report .box .img_box,
  #schedule .box .img_box {
    width: 100%;
  }
  #report .box .txt_box,
  #schedule .box .txt_box {
    width: 100%;
    margin-top: 10px;
  }
  #schedule .btn-wap {
    margin: 40px 0 20px;
  }
  #schedule iframe {
    height: 200px;
    max-width: 100%;
  }
  #schedule .other_text_area_img {
    width: 80%;
    height: auto;
    margin: 10px 1% 10px 0;
  }
  #schedule .other_text_area_img {
    width: 80%;
    height: auto;
    margin: 30px auto 10px auto;
    display: block;
    max-height: 400px;
    object-fit: contain;
  }
  #schedule .box .txt_box .jigyo_gaiyou {
    margin: 5px 0;
  }
  #schedule .box .txt_box h4 {
    margin-bottom: 5px;
  }
  #report .box .txt_box h4 {
    margin: 10px 0 5px;
  }
  #report .box .txt_box p {
    font-size: 14px;
  }
  #report .box .txt_box .btn_red {
    float: right;
  }
  #report .report_img img {
    width: 47%;
    margin: 0 1% 10px;
  }
}

/*　会員専用ページ
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #member .f_20 {
    font-size: 20px;
  }
  #member .btn_member {
    padding: 3%;
    justify-content: flex-start;
    margin-bottom: 20px;
    align-items: center;
  }
  #member a.hvr-sink {
    display: inline-block;
    width: 49%;
  }
  #member .btn_member_txt_box {
    margin: 0 0 0 20px;
  }
  #member a:hover .btn_member img {
    opacity: 1;
  }

  /* 例会映像集 */
  #member_report iframe {
    max-width: 100%;
  }

  /* 素材集 */
  #material a.material_box01 {
    display: block;
    width: 80%;
    margin: auto;
  }
  #material a.material_box01:hover img {
    opacity: 1;
  }
  #material a.material_box01 .fl {
    padding: 3%;
    border: 2px solid #e8e3e5;
  }
  #material .material_txt01 {
    width: 80%;
    margin: 20px auto 0;
  }
  #material .material_box02 {
    width: 80%;
    margin: 20px auto 0;
    padding: 3% 3% 1% 3%;
    align-items: center;
    border-bottom: 2px solid #e8e3e5;
  }
  #material .material_box02 img {
    width: 14%;
    height: auto;
  }
  #material .material_box02 p {
    width: 56%;
  }
  #material .material_box02 .material_box02_btn_box {
    width: 28%;
    text-align: right;
  }
  #material .material_box02 .material_box02_btn_box a {
    margin-bottom: 10px;
    line-height: 1;
    padding: 8px 10px 0 30px;
    height: 24px;
  }
  #material .material_box02 .material_box02_btn_box a.btn_og {
    background: #e4884a url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }
  #material .material_box02 .material_box02_btn_box a.btn_blue {
    background: #60aee0 url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }
  #material .material_box02 .material_box02_btn_box a.btn_red,
  #material .material_box02 .material_box02_btn_box a.btn_power {
    background: #df3c3e url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }

  /* 過去年度HP */
  #archive .container_1080 .txt_center img {
    margin-bottom: 20px;
    width: 100%;
    height: auto;
    max-width: 1000px;
  }

  /* 会員名簿 */
  #member-list .list_container {
    width: 1000px;
    margin: 100px auto 120px;
  }
  #member-list .list_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #member-list .list_inner p {
    width: 320px;
    height: 80px;
  }
  #member-list .list_inner p:nth-of-type(n + 4) {
    margin-top: 20px;
  }

  #member-list .list_inner p a {
    display: inline-block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 80px;
    font-size: 20px;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 15px;
  }

  /* 基本資料 */
  #document .sp {
    display: none;
  }
  #document .pan {
    width: 1200px;
    margin: 0 auto;
  }
  #document .list_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  #document .container_1080 h3 {
    font-size: 24px;
  }
  #document .list_inner .list_inner_btn:nth-of-type(n + 4) {
    margin-top: 15px;
  }
  #document .list_inner .list_inner_btn a {
    line-height: 1.5;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 60px;
    padding: 10px 20px 10px 60px;
    width: 350px;
    font-size: 16px;
    box-sizing: border-box;
    letter-spacing: 0;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 15px / 30px;
  }
  #document .list_inner:nth-of-type(2) .list_inner_btn:last-of-type,
  #document .list_inner:nth-of-type(4) .list_inner_btn:last-of-type {
    margin-left: 15px;
    margin-right: auto;
  }
  #document .list_inner:nth-of-type(4) {
    margin-bottom: 100px;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #member a.hvr-sink {
    width: 100%;
  }
  #member-list .list_container {
    width: 100%;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #member-list .list_inner p {
    width: 345px;
  }
  #member-list .list_inner p:nth-of-type(n + 3) {
    margin-top: 20px;
  }


  #document .pan {
    width: 90%;
  }
  #document .list_inner .list_inner_btn a {
    width: 337px;
    font-size: 14px;
  }
  #document .list_inner .list_inner_btn:nth-of-type(n + 3) {
    margin-top: 15px;
  }
  #document .list_inner:nth-of-type(2) .list_inner_btn:last-of-type {
    margin-left: 0;
  }
}

@media screen and (max-width: 431px) {
  #member .f_20 {
    font-size: 16px;
  }
  #member .f_18 {
    font-size: 16px;
  }
  #member a.hvr-sink {
    width: 100%;
  }
  #member .btn_member {
    padding: 3%;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 10px;
  }
  #member .btn_member img {
    width: 100px;
    height: auto;
  }
  #member .btn_member_txt_box {
    margin: 2px 0 0 20px;
  }

  /* カレンダー */
  #roomcalendar iframe {
    height: 350px;
  }

  /* 例会映像集 */
  #member_report iframe {
    max-width: 100%;
    height: 200px;
  }
  #member_report .f_21 {
    font-size: 16px;
  }

  /* 各種素材 */
  #material a.material_box01 {
    width: 100%;
    text-align: center;
  }
  #material a.material_box01 .fl {
    display: block;
    padding: 3%;
    border: 2px solid #e8e3e5;
  }
  #material .material_txt01 {
    width: 100%;
    margin: 20px auto 0;
  }
  #material .material_box02 {
    width: 100%;
    padding: 2% 0 1%;
    margin: 20px auto 0;
    align-items: center;
    border-bottom: 2px solid #e8e3e5;
  }
  #material .material_box02 img {
    width: 30%;
  }
  #material .material_box02 p {
    width: 68%;
  }
  #material .material_box02 .material_box02_btn_box {
    width: 100%;
    margin-top: 5px;
    text-align: center;
  }
  #material .material_box02 .material_box02_btn_box a {
    margin-bottom: 10px;
  }
  #material .material_box02 .material_box02_btn_box a {
    margin-bottom: 10px;
    line-height: 1;
    padding: 8px 10px 0 30px;
    height: 24px;
  }
  #material .material_box02 .material_box02_btn_box a.btn_og {
    background: #e4884a url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }
  #material .material_box02 .material_box02_btn_box a.btn_blue {
    background: #60aee0 url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }
  #material .material_box02 .material_box02_btn_box a.btn_red,
  #material .material_box02 .material_box02_btn_box a.btn_power {
    background: #df3c3e url(img/member/material_icon01.png) center left 10px
      no-repeat;
  }

  /* 過去年度HP */
  #archive .container_1080 .txt_center img {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
  }
  #archive .container_1080 .f_24 {
    font-size: 18px;
  }

  /* 会員名簿 */
  #member-list .list_container {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
    margin: 60px auto 100px;
  }
  #member-list .list_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #member-list h3:nth-of-type(2) {
    margin-top: 50px;
  }
  #member-list .list_inner p {
    width: 190px;
    height: 60px;
  }
  #member-list .list_inner p:nth-of-type(n + 3) {
    margin-top: 20px;
  }
  #member-list .list_inner p a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding-left: 45px;
    box-sizing: border-box;
    line-height: 60px;
    font-size: 16px;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 5px / 25px;
  }

  /* 基本資料 */
  #document .sp {
    display: block;
  }
  #document .container_1080 {
    width: 100%;
    box-sizing: border-box;
    padding: 0 15px;
  }
  #document .container_1080 h3 span {
    font-size: 18px;
  }
  #document .list_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #document .list_inner:last-of-type {
    margin-bottom: 70px;
  }
  #document h3:nth-of-type(2) {
    margin-top: 50px;
  }
  #document .list_inner p {
    width: 192px;
  }
  #document .list_inner p:nth-of-type(n + 3) {
    margin-top: 15px;
  }
  #document .list_inner p a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    min-height: 45px;
    box-sizing: border-box;
    padding: 10px 15px 8px 35px;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0;
    font-weight: bold;
    background: #c3e9fe url(img/member/member-list_img01.png) no-repeat center
      left 7px / 17px;
  }
}

/*　部会紹介
------------------------------------------------------------------*/
@media (min-width: 431px) {
  #club .inner {
    width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
  }

  #club .club_cont01 {
    margin-top: 130px;
  }
  #club .club_cont01 .inner {
    padding-left: 600px;
    position: relative;
  }
  #club .club_cont01 .inner::before {
    content: url(img/club/club_img49.png);
    position: absolute;
    top: -30px;
    left: -300px;
  }
  #club .club_cont01 h2 {
    font-size: 34px;
    font-weight: bold;
    background: url(img/club/club_text01.png) no-repeat center left 280px;
  }
  #club .club_cont01 .text {
    margin-top: 30px;
    line-height: 2;
  }

  #club .club_cont02 {
    margin-top: 150px;
  }
  #club .club_cont02 .inner {
    position: relative;
  }
  #club .club_cont02 .inner::before {
    content: url(img/club/club_img50.png);
    position: absolute;
    top: -50px;
    right: -300px;
    z-index: -1;
  }
  #club .club_cont02 .inner::after {
    content: url(img/club/club_img51.png);
    position: absolute;
    bottom: -90px;
    left: -300px;
    z-index: -1;
  }
  #club .club_cont02 h2 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding-top: 60px;
    background: url(img/club/club_text02.png) no-repeat top center;
  }
  #club .club_cont02 ul {
    margin-top: 50px;
  }
  #club .club_cont02 ul li {
    width: 1100px;
    height: 200px;
    box-sizing: border-box;
    margin: 0 auto 25px;
    padding-left: 350px;
    padding-top: 30px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background: url(img/club/club_text03.png) no-repeat center left 235px,
      url(img/club/club_img03.png) no-repeat top left;
    background-color: #fff;
  }
  #club .club_cont02 ul li:nth-of-type(2) {
    background: url(img/club/club_text04.png) no-repeat center left 235px,
      url(img/club/club_img04.png) no-repeat top left;
    padding-top: 50px;
    background-color: #fff;
  }
  #club .club_cont02 ul li:nth-of-type(3) {
    background: url(img/club/club_text05.png) no-repeat center left 235px,
      url(img/club/club_img05.png) no-repeat top left;
    padding-top: 50px;
    background-color: #fff;
  }
  #club .club_cont02 ul li:last-of-type {
    margin-bottom: 0;
    background: url(img/club/club_text06.png) no-repeat center left 235px,
      url(img/club/club_img06.png) no-repeat top left;
    background-color: #fff;
  }
  #club .club_cont02 ul li h3 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 20px;
  }
  #club .club_cont02 ul li .text {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 1px;
  }

  #club .club_cont03 {
    margin: 350px auto 100px;
    position: relative;
  }
  #club .club_cont03::before {
    content: "";
    width: 100%;
    height: 215px;
    background: url(img/club/club_img08.png) no-repeat center / cover;
    position: absolute;
    top: -150px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
  #club .club_cont03 h2 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding-top: 60px;
    background: url(img/club/club_text07.png) no-repeat top center;
  }
  #club .club_cont03 .inner {
    background: #fff;
    padding-top: 60px;
    width: 1160px;
  }
  #club .club_cont03 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 65px;
  }
  #club .club_cont03 ul li,
  #club .club_cont03 ul li a {
    display: flex;
    flex-direction: column-reverse;
  }
  #club .club_cont03 ul li:nth-of-type(n + 5) {
    margin-top: 35px;
  }
  #club .club_cont03 ul li p.text {
    text-align: center;
    margin-top: 15px;
  }
  #club .club_cont03 .button {
    text-align: center;
    margin-top: 100px;
  }
  #club .club_cont03 .button a {
    display: inline-block;
    line-height: 1;
    padding: 20px 0;
    box-sizing: border-box;
    padding-left: 20px;
    width: 310px;
    background: #0099dd;
    color: #fff;
    position: relative;
    border: 1px solid #0099dd;
  }
  #club .club_cont03 .button a::before {
    content: "";
    width: 25px;
    height: 2px;
    background: #0099dd;
    position: absolute;
    top: 50%;
    left: -25px;
    transform: translateY(-50%);
    transition: all 0.5s;
  }
  #club .club_cont03 .button a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: all 0.5s;
  }
  #club .club_cont03 .button a:hover {
    background: #fff;
    color: #0099dd;
  }
  #club .club_cont03 .button a:hover::before {
    width: 0;
    left: 0;
    transition: all 0.5s;
  }
  #club .club_cont03 .button a:hover::after {
    width: 0;
    transition: all 0.5s;
    background: #0099dd;
    width: 50px;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #club .inner {
    width: 100%;
  }
  #club .club_cont01 {
    margin-top: 80px;
  }
  #club .club_cont01 .inner {
    padding: 300px 15px 0;
    box-sizing: border-box;
  }
  #club .club_cont01 .inner::before {
    content: "";
    width: calc(100% - 30px);
    height: 250px;
    background: url(img/club/club_img49.png) no-repeat center / 100%;
    left: 15px;
    top: 0;
  }
  #club .club_cont01 h2 {
    font-size: 30px;
    background: url(img/club/club_text01.png) no-repeat bottom 1px left 250px /
      150px;
  }
  #club .club_cont01 .text .club-pc {
    display: none;
  }

  /* cont02 */
  #club .club_cont02 {
    margin-top: 100px;
  }
  #club .club_cont02 .inner::before,
  #club .club_cont02 .inner::after {
    display: none;
  }
  #club .club_cont02 ul {
    padding: 0 30px;
  }
  #club .club_cont02 ul li {
    width: 100%;
    height: auto;
    background: url(img/club/club_img52.png) no-repeat center / cover;
    position: relative;
    padding: 30px 25px 30px 100px;
  }
  #club .club_cont02 ul li:nth-of-type(2) {
    background: url(img/club/club_img53.png) no-repeat center / cover;
    padding-top: 30px;
  }
  #club .club_cont02 ul li:nth-of-type(3) {
    background: url(img/club/club_img54.png) no-repeat center / cover;
    padding-top: 30px;
  }
  #club .club_cont02 ul li:nth-of-type(4) {
    background: url(img/club/club_img55.png) no-repeat center / cover;
  }
  #club .club_cont02 ul li::before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  #club .club_cont02 ul li::after {
    content: url(img/club/club_text03.png);
    position: absolute;
    top: 10px;
    left: 20px;
    z-index: 11;
    transform: scale(0.7);
  }
  #club .club_cont02 ul li:nth-of-type(2)::after {
    content: url(img/club/club_text04.png);
  }
  #club .club_cont02 ul li:nth-of-type(3)::after {
    content: url(img/club/club_text05.png);
  }
  #club .club_cont02 ul li:nth-of-type(4)::after {
    content: url(img/club/club_text06.png);
  }
  #club .club_cont02 ul li h3 {
    font-size: 18px;
  }
  #club .club_cont02 ul li h3,
  #club .club_cont02 ul li .text {
    position: relative;
    z-index: 10;
  }
  #club .club_cont02 ul li .text {
    font-size: 14px;
  }
  #club .club_cont02 ul li .text .club-pc {
    display: none;
  }

  /* cont03 */
  #club .club_cont03 {
    margin-top: 250px;
  }
  #club .club_cont03 .inner {
    width: calc(100% - 30px);
    padding: 50px 30px;
    box-sizing: border-box;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  }
  #club .club_cont03 ul li {
    width: 32%;
  }
  #club .club_cont03 ul li img {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  #club .club-pc {
    display: none;
  }
  #club .inner {
    width: 100%;
    padding: 0 15px;
    margin: 0 auto;
    box-sizing: border-box;
  }
  #club .club_cont01 {
    margin-top: 70px;
  }
  #club .club_cont01 .inner {
    padding-top: 300px;
    position: relative;
  }
  #club .club_cont01 .inner::before {
    content: url(img/club/club_img01.png);
    position: absolute;
    top: 0;
    left: -43px;
    transform: scale(0.8);
  }
  #club .club_cont01 h2 {
    font-size: 26px;
    font-weight: bold;
    background: url(img/club/club_text01.png) no-repeat bottom left 220px / 40%;
  }
  #club .club_cont01 .text {
    margin-top: 30px;
    line-height: 2;
    font-size: 15px;
    letter-spacing: -0.5px;
  }

  #club .club_cont02 {
    margin-top: 100px;
  }
  #club .club_cont02 .inner {
    position: relative;
  }
  /* #club .club_cont02 .inner::before {
	content: url(img/club/club_img50.png);
	position: absolute;
	top: -50px;
	right: -300px;
	z-index: -1;
	}
	#club .club_cont02 .inner::after {
	content: url(img/club/club_img51.png);
	position: absolute;
	bottom: -90px;
	left: -300px;
	z-index: -1;
	} */
  #club .club_cont02 h2 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding-top: 60px;
    background: url(img/club/club_text02.png) no-repeat top center / 55%;
  }
  #club .club_cont02 ul {
    margin-top: 50px;
  }
  #club .club_cont02 ul li {
    position: relative;
    width: 100%;
    height: 310px;
    box-sizing: border-box;
    margin: 0 auto 25px;
    padding-left: 70px;
    padding-right: 25px;
    padding-top: 30px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background: url(img/club/club_img52.png) no-repeat center / cover;
  }
  #club .club_cont02 ul li::before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  #club .club_cont02 ul li::after {
    content: url(img/club/club_text03.png);
    position: absolute;
    top: 5px;
    left: 0px;
    z-index: 11;
    transform: scale(0.6);
  }
  #club .club_cont02 ul li:nth-of-type(2):after {
    content: url(img/club/club_text04.png);
  }
  #club .club_cont02 ul li:nth-of-type(3):after {
    content: url(img/club/club_text05.png);
  }
  #club .club_cont02 ul li:nth-of-type(4):after {
    content: url(img/club/club_text06.png);
  }
  #club .club_cont02 ul li:nth-of-type(2) {
    background: url(img/club/club_img53.png) no-repeat center / cover;
    padding-top: 30px;
    height: 280px;
  }
  #club .club_cont02 ul li:nth-of-type(3) {
    background: url(img/club/club_img54.png) no-repeat center / cover;
    padding-top: 30px;
    height: 250px;
  }
  #club .club_cont02 ul li:last-of-type {
    margin-bottom: 0;
    background: url(img/club/club_img55.png) no-repeat center / cover;
  }
  #club .club_cont02 ul li h3 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.5;
    position: relative;
    z-index: 10;
  }
  #club .club_cont02 ul li .text {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0;
    position: relative;
    z-index: 10;
  }

  #club .club_cont03 {
    margin: 220px auto 100px;
    position: relative;
  }
  #club .club_cont03::before {
    content: "";
    width: 100%;
    height: 215px;
    background: url(img/club/club_img08.png) no-repeat center / cover;
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
  #club .club_cont03 h2 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding-top: 60px;
    background: url(img/club/club_text07.png) no-repeat top center / 30%;
  }
  #club .club_cont03 .inner {
    background: #fff;
    padding: 60px 12.5px 0;
    width: 400px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  }
  #club .club_cont03 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 65px;
  }
  #club .club_cont03 ul li,
  #club .club_cont03 ul li a {
    width: 180px;
    display: flex;
    flex-direction: column-reverse;
  }
  #club .club_cont03 ul li .img img {
    max-width: 100%;
  }
  #club .club_cont03 ul li:nth-of-type(n + 3) {
    margin-top: 35px;
  }
  #club .club_cont03 ul li p.text {
    text-align: center;
    margin-top: 15px;
  }
  #club .club_cont03 .button {
    text-align: center;
    margin-top: 70px;
  }
  #club .club_cont03 .button a {
    display: inline-block;
    line-height: 1;
    padding: 20px 0;
    box-sizing: border-box;
    padding-left: 20px;
    width: 310px;
    background: #0099dd;
    color: #fff;
    position: relative;
    border: 1px solid #0099dd;
  }
  #club .club_cont03 .button a::before {
    content: "";
    width: 25px;
    height: 2px;
    background: #0099dd;
    position: absolute;
    top: 50%;
    left: -25px;
    transform: translateY(-50%);
    transition: all 0.5s;
  }
  #club .club_cont03 .button a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transition: all 0.5s;
  }
}

/*　名古屋青年会議所から生まれた事業
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #keizoku .keizoku_box {
    width: 48%;
    border-bottom: #c5c5c5 1px solid;
    padding-bottom: 20px;
    margin-bottom: 50px;
  }
  #keizoku .keizoku_box > a {
    width: 100%;
  }
  #keizoku .keizoku_box .keizoku_box_txt_box {
    width: 100%;
    margin-top: 20px;
  }
  #keizoku .keizoku_box .keizoku_box_txt_box p {
    margin: 10px 0 20px;
  }
  #keizoku .keizoku_box_txt_box02 {
    width: 48%;
  }
}

@media screen and (max-width: 431px) {
  #keizoku .keizoku_box {
    width: 100%;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: #c5c5c5 1px solid;
  }
  #keizoku .keizoku_box .keizoku_box_txt_box {
    margin-top: 10px;
  }
  #keizoku .keizoku_box .keizoku_box_txt_box p {
    margin: 3px 0 0;
  }
  #keizoku .keizoku_main_img {
    width: 100%;
  }
  #keizoku .keizoku_box_txt_box02 {
    width: 100%;
  }
  #keizoku .btn-wap {
    width: 100%;
    margin-top: 30px;
  }
  #keizoku .keizoku_box_txt_box02_img {
    width: 100%;
    margin-top: 20px;
  }
}

/*　マズモッテ
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #mazmotte .mazmotte_box {
    margin-bottom: 30px;
  }
  #mazmotte .mazmotte_box .fl > a {
    width: 20%;
  }
  #mazmotte .mazmotte_box img {
    width: 100%;
    height: auto;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box {
    width: 78%;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box a {
    display: block;
    margin: 10px 0 30px;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box p {
    margin-bottom: 30px;
  }
  #mazmotte .bb-custom-icon-arrow-right,
  #mazmotte .bb-custom-icon-arrow-left {
    background-color: #0099dd;
    border: 1px solid #0099dd;
    margin: 20px 10px 0;
  }
  #mazmotte .bb-custom-icon-arrow-right i,
  #mazmotte .bb-custom-icon-arrow-left i {
    top: -2px;
  }
  #mazmotte .bb-custom-icon-arrow-right:hover,
  #mazmotte .bb-custom-icon-arrow-left:hover {
    opacity: 0.6;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  .bb-bookblock {
    padding-top: 70%;
  }
  #mazmotte .bb-bookblock img {
    width: 100%;
    height: auto;
  }
}

@media screen and (max-width: 431px) {
  #mazmotte .mazmotte_box {
    margin-bottom: 30px;
  }
  #mazmotte .mazmotte_box .fl > a {
    width: 80%;
    margin: auto;
  }
  #mazmotte .mazmotte_box img {
    width: 100%;
    height: auto;
  }
  #mazmotte .bb-bookblock {
    padding-top: 70.65%;
  }
  #mazmotte .bb-bookblock img {
    width: 100%;
    height: auto;
  }
  #mazmotte .bb-custom-icon-arrow-right,
  #mazmotte .bb-custom-icon-arrow-left {
    margin: 0 5px 0;
    height: 30px;
    width: 30px;
    vertical-align: middle;
    background-color: #0099dd;
    border: 1px solid #0099dd;
  }
  #mazmotte .bb-custom-icon-arrow-right i,
  #mazmotte .bb-custom-icon-arrow-left i {
    top: -7px;
    vertical-align: top;
  }
  #mazmotte .mazmotte_box .fl > a {
    width: 80%;
    margin: auto;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box {
    width: 100%;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box a {
    display: block;
    margin: 20px 0 10px;
  }
  #mazmotte .mazmotte_box .mazmotte_box_txt_box p {
    margin-bottom: 0;
  }
}

/*　SDGs
------------------------------------------------------------------*/
#sdgs .cont01 {
  height: 400px;
  position: relative;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
}
#sdgs .cont01 .text_box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 600px;
  transform: translateY(-50%);
}
#sdgs .cont01 .text_box::after {
  content: url(img/sdgs/sdgs_img01.png);
  position: absolute;
  top: 50%;
  right: 645px;
  transform: translateY(-50%);
}
#sdgs .cont01 .text_box h3 {
  font-size: 34px;
  font-weight: bold;
  background: url(img/sdgs/sdgs_text01.png) left 180px bottom no-repeat;
}
#sdgs .cont01 .text_box p {
  font-size: 18px;
  line-height: 2;
  color: #333;
  padding: 30px 0 0;
}
#sdgs .cont02 {
  padding: 130px 0 90px;
  background: url(img/sdgs/sdgs_bg01.png) right -40px top 40px no-repeat,
    url(img/sdgs/sdgs_bg02.png) left 10px bottom 250px no-repeat,
    url(img/sdgs/sdgs_bg03.png) center bottom repeat-x;
}
#sdgs .cont02 h3 {
  padding: 65px 0 50px;
  background: url(img/sdgs/sdgs_text02.png) center top no-repeat;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}
#sdgs .cont02 .flex_box {
  width: 1065px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#sdgs .cont02 .flex_box .cont {
  display: flex;
  width: 520px;
  padding: 25px;
  box-sizing: border-box;
  flex-direction: row-reverse;
  justify-content: flex-end;
  background: #fff;
  margin-bottom: 20px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}
#sdgs .cont02 .flex_box .cont h4 {
  font-size: 20px;
  font-weight: bold;
  margin: 0 0 10px;
}
#sdgs .cont02 .flex_box .cont .text {
  font-size: 16px;
  color: #333;
  line-height: 1.5;
}
#sdgs .cont02 .flex_box .cont .sp {
  display: none;
}
#sdgs .cont02 .flex_box .cont .img {
  padding: 0 20px 0 0;
}

#sdgs .cont03 {
  padding: 100px 0 60px;
}
#sdgs .cont03 h3 {
  padding: 85px 0 50px;
  background: url(img/sdgs/sdgs_text03.png) center top no-repeat;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}
#sdgs .cont03 .cont {
  margin-top: 45px;
  height: 610px;
  position: relative;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
}
#sdgs .cont03 .cont:nth-of-type(2n) {
  background: linear-gradient(-90deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
}
#sdgs .cont03 .cont .text_box {
  position: absolute;
  width: 600px;
  left: 50%;
  top: 50%;
  transform: translateY(-50%);
}
#sdgs .cont03 .cont:nth-of-type(2) .text_box {
  left: auto;
  right: 50%;
  width: 580px;
}
#sdgs .cont03 .cont .text_box::before {
  position: absolute;
  top: 50%;
  right: 650px;
  content: url(img/sdgs/sdgs_img02.png);
  transform: translateY(-50%);
}
#sdgs .cont03 .cont:nth-of-type(2) .text_box::before {
  content: url(img/sdgs/sdgs_img03.png);
  left: 650px;
  right: auto;
}
#sdgs .cont03 .cont:nth-of-type(3) .text_box::before {
  content: url(img/sdgs/sdgs_img04.png);
}
#sdgs .cont03 .text {
  text-align: center;
  line-height: 2;
  font-size: 16px;
}
#sdgs .cont03 h4 {
  line-height: 1.6;
  font-size: 22px;
  margin: 0 0 15px;
  font-weight: bold;
}
#sdgs .cont03 h4 span {
  font-size: 18px;
  display: block;
  font-weight: bold;
}
#sdgs .cont03 .cont:nth-of-type(2) h4,
#sdgs .cont03 .cont:nth-of-type(3) h4 {
  padding-bottom: 25px;
  position: relative;
}
#sdgs .cont03 .cont:nth-of-type(2) h4::after,
#sdgs .cont03 .cont:nth-of-type(3) h4::after {
  position: absolute;
  bottom: 2px;
  left: 0;
  height: 2px;
  width: 50px;
  background: #0099dd;
  content: "";
}
#sdgs .cont03 .text01 {
  font-size: 16px;
  line-height: 2;
  font-weight: bold;
  padding-bottom: 50px;
  position: relative;
}
#sdgs .cont03 .text01::after {
  position: absolute;
  bottom: 25px;
  left: 0;
  height: 2px;
  width: 50px;
  background: #0099dd;
  content: "";
}
#sdgs .cont03 .text02 {
  font-size: 14px;
  line-height: 2;
  margin-bottom: 20px;
}
#sdgs .cont03 .cont .text_box .flex_box {
  display: flex;
  justify-content: flex-start;
}
#sdgs .cont03 .cont .text_box .flex_box .img {
  padding-right: 20px;
}
#sdgs .cont03 .cont .text_box .flex_box .img:last-of-type {
  padding-right: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #sdgs .cont01 {
    height: 650px;
    padding-top: 150px;
    box-sizing: border-box;
  }
  #sdgs .cont01 .text_box {
    width: auto;
    position: static;
    padding: 0 50px;
  }
  #sdgs .cont01 .text_box::after {
    right: 0px;
    transform: scale(0.8);
    top: auto;
    bottom: -440px;
  }
  #sdgs .cont01 .text_box h3 {
    font-size: 30px;
    background: url(img/sdgs/sdgs_text01.png) no-repeat bottom 3px left 150px /
      140px;
  }
  #sdgs .cont01 .text_box p .pc {
    display: none;
  }

  /* cont02 */
  #sdgs .cont02 .flex_box {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #sdgs .cont02 .flex_box .cont {
    width: 48.5%;
    padding: 15px;
  }
  #sdgs .cont02 .flex_box .cont h4 {
    font-size: 18px;
  }
  #sdgs .cont02 .flex_box .cont .text {
    font-size: 14px;
  }

  /* cont03 */
  #sdgs .cont03 h3 {
    font-size: 22px;
    background: url(img/sdgs/sdgs_text03.png) no-repeat top center / 600px;
    padding-top: 65px;
  }
  #sdgs .cont03 .cont {
    height: auto;
    padding: 50px 15px;
    box-sizing: border-box;
  }
  #sdgs .cont03 .cont .text_box {
    width: auto;
    position: relative;
    transform: none;
    left: auto;
    top: auto;
    padding-top: 400px;
  }
  #sdgs .cont03 .cont:nth-of-type(2) .text_box {
    width: auto;
    right: auto;
  }
  #sdgs .cont03 .cont .text_box::before {
    content: "";
    width: calc(100% + 20px);
    height: 380px;
    top: 0;
    left: 0;
    transform: none;
    right: auto;
    background: url(img/sdgs/sdgs_img02.png) no-repeat center / 100%;
  }
  #sdgs .cont03 .cont:nth-of-type(2) .text_box::before {
    content: "";
    background: url(img/sdgs/sdgs_img03.png) no-repeat center / 100%;
    left: auto;
    right: 5px;
  }
  #sdgs .cont03 .cont:nth-of-type(3) .text_box::before {
    content: "";
    background: url(img/sdgs/sdgs_img04.png) no-repeat center / 100%;
  }
}

@media (max-width: 430px) {
  #sdgs .cont01 {
    padding-top: 50px;
    padding-bottom: 330px;
    height: auto;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
  }
  #sdgs .cont01 .text_box {
    position: relative;
    top: auto;
    left: auto;
    margin: auto;
    width: 410px;
    transform: translateY(0);
  }
  #sdgs .cont01 .text_box::after {
    position: absolute;
    top: auto;
    bottom: -280px;
    right: auto;
    left: 10px;
    content: "";
    z-index: -1;
    width: 410px;
    height: 270px;
    transform: translateY(0);
    background: url(img/sdgs/sdgs_img01.png) center center/contain no-repeat;
  }
  #sdgs .cont01 .text_box h3 {
    font-size: 22px;
    line-height: 1;
    text-shadow: 0 0 3px rgba(255, 255, 255, 0.5);
    background: url(img/sdgs/sdgs_text01.png) left 120px bottom no-repeat;
  }
  #sdgs .cont01 .text_box p {
    font-size: 14px;
  }
  #sdgs .cont01 .text_box p .pc {
    display: none;
  }
  #sdgs .cont02 {
    padding: 60px 0 40px;
    background: url(img/sdgs/sdgs_bg01.png) right -40px top 40px no-repeat,
      url(img/sdgs/sdgs_bg02.png) left 10px bottom 250px no-repeat,
      url(img/sdgs/sdgs_bg03.png) center bottom repeat-x;
  }
  #sdgs .cont02 h3 {
    padding: 45px 0 30px;
    background: url(img/sdgs/sdgs_text02.png) center top/190px no-repeat;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
  }
  #sdgs .cont02 .flex_box {
    width: 410px;
    display: block;
  }
  #sdgs .cont02 .flex_box .cont {
    display: flex;
    width: 410px;
    padding: 10px;
    margin-bottom: 20px;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  }
  #sdgs .cont02 .flex_box .cont h4 {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 10px;
  }
  #sdgs .cont02 .flex_box .cont .text {
    font-size: 14px;
    color: #333;
    line-height: 1.5;
  }
  #sdgs .cont02 .flex_box .cont .sp {
    display: block;
  }
  #sdgs .cont02 .flex_box .cont .img {
    padding: 0 10px 0 0;
  }

  #sdgs .cont03 {
    padding: 60px 0 60px;
  }
  #sdgs .cont03 h3 {
    padding: 40px 0 30px;
    background: url(img/sdgs/sdgs_text03.png) center top/ 390px no-repeat;
    font-size: 20px;
  }
  #sdgs .cont03 .text {
    text-align: left;
    padding: 0 10px;
  }
  #sdgs .cont03 .pc {
    display: none;
  }
  #sdgs .cont03 .cont {
    margin-top: 45px;
    height: auto;
    position: relative;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
  }
  #sdgs .cont03 .cont:nth-of-type(2n) {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, #e1f2fa 100%);
  }
  #sdgs .cont03 .cont .text_box {
    position: relative;
    width: 410px;
    padding-top: 250px;
    left: auto;
    top: auto;
    margin: auto;
    transform: translateY(0);
  }
  #sdgs .cont03 .cont:nth-of-type(2) .text_box {
    left: auto;
    right: auto;
    width: 410px;
  }
  #sdgs .cont03 .cont .text_box::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    width: 410px;
    height: 220px;
    background: url(img/sdgs/sdgs_img02.png) left top -12px/424px no-repeat;
    transform: translateY(0);
  }
  #sdgs .cont03 .cont:nth-of-type(2) .text_box::before {
    content: "";
    background: url(img/sdgs/sdgs_img03.png) right top -12px/424px no-repeat;
    left: 0;
    right: 0;
  }
  #sdgs .cont03 .cont:nth-of-type(3) .text_box::before {
    content: "";
    background: url(img/sdgs/sdgs_img04.png) left top -12px/424px no-repeat;
  }

  #sdgs .cont03 h4 {
    line-height: 1.6;
    font-size: 20px;
    margin: 0 0 15px;
    font-weight: bold;
  }
  #sdgs .cont03 h4 span {
    font-size: 18px;
    display: block;
    font-weight: bold;
  }
  #sdgs .cont03 .cont:nth-of-type(2) h4,
  #sdgs .cont03 .cont:nth-of-type(3) h4 {
    padding-bottom: 25px;
    position: relative;
  }
  #sdgs .cont03 .cont:nth-of-type(2) h4::after,
  #sdgs .cont03 .cont:nth-of-type(3) h4::after {
    position: absolute;
    bottom: 2px;
    left: 0;
    height: 2px;
    width: 50px;
    background: #0099dd;
    content: "";
  }
  #sdgs .cont03 .text01 {
    font-size: 16px;
    line-height: 2;
    font-weight: bold;
    padding-bottom: 50px;
    position: relative;
  }
  #sdgs .cont03 .text01::after {
    position: absolute;
    bottom: 25px;
    left: 0;
    height: 2px;
    width: 50px;
    background: #0099dd;
    content: "";
  }
  #sdgs .cont03 .text02 {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 20px;
  }
  #sdgs .cont03 .cont .text_box .flex_box {
    padding-bottom: 30px;
  }
  #sdgs .cont03 .cont .text_box .flex_box .img {
    width: 22%;
    padding-right: 4%;
  }
  #sdgs .cont03 .cont .text_box .flex_box .img img {
    width: 100%;
  }
  #sdgs .cont03 .cont .text_box .flex_box .img:last-of-type {
    padding-right: 0;
  }
}

@media (min-width: 431px) {
  #about_nagoya .inner {
    width: 1200px;
    margin: 0 auto;
  }
  #about_nagoya .cont01 .box {
    box-sizing: border-box;
    padding-left: 600px;
    position: relative;
    min-height: 360px;
  }
  #about_nagoya .cont01 .box h2 {
    font-size: 30px;
    font-weight: bold;
    padding-bottom: 45px;
    background: url(img/at_nagoya/about_nagoya_img02.png) no-repeat bottom left;
  }
  #about_nagoya .cont01 .box .text {
    margin-top: 20px;
    line-height: 2;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) .text {
    margin-top: 0;
    padding-left: 20px;
    letter-spacing: -0.3px;
  }
  #about_nagoya .cont01 .box .img {
    position: absolute;
    top: 0;
    left: -300px;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) {
    margin-top: 100px;
    padding: 90px 580px 0 0;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) .img {
    left: auto;
    right: -300px;
  }
  #about_nagoya .cont01 .bnr {
    text-align: center;
    margin-top: 100px;
  }
  #about_nagoya .cont01 .bnr img {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }
  #about_nagoya .cont02 {
    margin-top: 100px;
  }
  #about_nagoya .cont02 h2 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding-top: 50px;
    background: url(img/at_nagoya/about_nagoya_img30.png) no-repeat top center;
  }
  #about_nagoya .cont02 .text {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 2;
    margin-top: 25px;
  }
  #about_nagoya .cont02 .box {
    display: flex;
    justify-content: center;
    margin-top: 45px;
  }
  #about_nagoya .cont02 .box .inner_box {
    text-align: center;
  }
  #about_nagoya .cont02 .box .inner_box:nth-of-type(2) {
    margin: 0 60px;
  }
  #about_nagoya .cont02 .box .inner_box h3 {
    font-size: 20px;
    font-weight: bold;
    color: #1f9bde;
  }
  #about_nagoya .cont02 .box .inner_box .tel {
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
    margin-top: 15px;
  }
  #about_nagoya .cont02 .box .inner_box .tel a {
    font-weight: bold;
  }
  #about_nagoya .cont02 .box .inner_box .text01 {
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
  }
  #about_nagoya .cont02 .box .inner_box .btn {
    margin-top: 18px;
    padding: 0;
  }
  #about_nagoya .cont02 .box .inner_box .btn a {
    display: inline-block;
    width: 350px;
    height: 60px;
    line-height: 60px;
    background: #0099dd;
    text-align: center;
    color: #fff;
    font-size: 16px;
    position: relative;
    letter-spacing: 1px;
    box-sizing: border-box;
    border: 1px solid #0099dd;
  }
  #about_nagoya .cont02 .box .inner_box .btn a:hover {
    color: #0099dd;
    background: #fff;
  }
  #about_nagoya .cont02 .box .inner_box .btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: #0099dd;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
  }
  #about_nagoya .cont02 .box .inner_box .btn a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  #about_nagoya .cont02 .box .inner_box .btn a:hover::after {
    background: #0099dd;
  }

  #about_nagoya .cont03 {
    margin: 120px auto 0;
    padding: 120px 0 200px;
    background: url(img/at_nagoya/about_nagoya_img33.png) no-repeat top 3630px
      center / 100% #e1f2fa;
  }
  #about_nagoya .cont03 h2 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 65px;
    background: url(img/at_nagoya/about_nagoya_img31.png) no-repeat top center;
  }
  #about_nagoya .cont03 .text {
    line-height: 2;
    margin-top: 50px;
    text-align: center;
  }
  #about_nagoya .cont03 h3 {
    margin-top: 100px;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 35px;
    background: url(img/at_nagoya/about_nagoya_img05.png) no-repeat bottom
      center;
  }
  #about_nagoya .cont03 h3:nth-of-type(2) {
    background: url(img/at_nagoya/about_nagoya_img18.png) no-repeat bottom
      center;
  }
  #about_nagoya .cont03 h3:nth-of-type(3) {
    background: url(img/at_nagoya/about_nagoya_img19.png) no-repeat bottom
      center;
  }
  #about_nagoya .cont03 .box {
    margin-top: 90px;
  }
  #about_nagoya .cont03 .box .inner_box {
    background: #fff;
    width: 820px;
    min-height: 380px;
    margin-left: auto;
    padding: 90px 0 0 305px;
    box-sizing: border-box;
    position: relative;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  }
  #about_nagoya .cont03 .box .inner_box::before {
    content: url(img/at_nagoya/about_nagoya_img12.png);
    position: absolute;
    top: 5px;
    right: 45px;
    transform: translateY(-50%);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(2):before {
    content: url(img/at_nagoya/about_nagoya_img13.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(3):before {
    content: url(img/at_nagoya/about_nagoya_img14.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(4):before {
    content: url(img/at_nagoya/about_nagoya_img15.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5):before {
    content: url(img/at_nagoya/about_nagoya_img16.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(6):before {
    content: url(img/at_nagoya/about_nagoya_img17.png);
  }
  #about_nagoya .cont03 .box .inner_box h4 {
    font-size: 22px;
    font-weight: bold;
  }
  #about_nagoya .cont03 .box .inner_box .text01 {
    margin-top: 25px;
    line-height: 2;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5) .text01 {
    margin-top: 50px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(n + 2) {
    margin-top: 100px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(2),
  #about_nagoya .cont03 .box .inner_box:nth-of-type(3) {
    padding-top: 60px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5) {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(6) {
    padding-top: 55px;
  }
  #about_nagoya .cont03 .box .inner_box .img {
    position: absolute;
    top: -50px;
    left: -380px;
  }
  #about_nagoya .cont03 table {
    margin: 40px auto 0;
    width: 1050px;
    border-collapse: separate;
    border-spacing: 5px;
  }
  #about_nagoya .cont03 table th {
    text-align: center;
    color: #fff;
    vertical-align: middle;
    background: #0099dd;
    width: 265px;
    height: 60px;
  }
  #about_nagoya .cont03 table td {
    vertical-align: middle;
    background: #fff;
    box-sizing: border-box;
    padding-left: 40px;
  }
  #about_nagoya .cont03 table td span {
    display: inline-block;
    margin-left: 50px;
  }
  #about_nagoya .cont03 table tr:nth-of-type(2) td span {
    margin-left: 34px;
  }
  #about_nagoya .cont03 table tr:nth-of-type(3) td span {
    margin-left: 51px;
  }
  #about_nagoya .cont03 table tr:nth-of-type(4) td span {
    margin-left: 33px;
  }
  #about_nagoya .cont03 table tr:nth-of-type(6) td span {
    margin-left: 35px;
  }
  #about_nagoya .cont03 .swiper {
    width: 1800px;
    position: relative;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin: 40px 0 0 !important;
    letter-spacing: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-slide {
    width: 800px !important;
    background: #1094d5;
    color: #fff;
    box-sizing: border-box;
    padding: 515px 60px 0 40px;
    height: 1045px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) {
    background: #e99d27;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box {
    display: flex;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box:nth-of-type(n + 2) {
    margin-top: 20px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box:nth-of-type(1),
  #about_nagoya .cont03 .swiper .swiper-slide .text_box:nth-of-type(2) {
    align-items: center;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .ttl {
    background: #fff;
    color: #1094d5;
    width: 120px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    flex-shrink: 0;
    font-size: 14px;
    font-weight: bold;
    margin-right: 20px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text02 {
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text03 {
    font-weight: bold;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text04 {
    font-size: 14px;
    line-height: 1.9;
    letter-spacing: 0.5px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) .text_box .ttl {
    color: #e99d27;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img span {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    background: #0099dd;
    color: #fff;
    font-weight: bold;
    font-style: italic;
    width: 160px;
    height: 35px;
    line-height: 35px;
    text-align: center;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) .img span {
    background: #e99d27;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev {
    left: 445px;
  }
  #about_nagoya .cont03 .swiper .swiper-button-next {
    right: 445px;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
  }
  #about_nagoya .cont03 .swiper .swiper-button-next::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
    transform: rotateY(180deg);
  }
  #about_nagoya .cont03 .box02 {
    position: relative;
    background: #fff;
    margin-top: 170px;
    padding: 25px 0 45px 675px;
    box-sizing: border-box;
  }
  #about_nagoya .cont03 .box02::before {
    content: "";
    width: 800px;
    height: 100%;
    box-sizing: border-box;
    border: 3px solid #0099dd;
    position: absolute;
    top: -20px;
    right: 20px;
  }
  #about_nagoya .cont03 .box02 .ttl {
    font-size: 22px;
    font-weight: bold;
  }
  #about_nagoya .cont03 .box02 .text04 {
    margin-top: 5px;
    line-height: 2;
  }
  #about_nagoya .cont03 .box02 .img {
    position: absolute;
    top: -60px;
    left: 0;
  }
  #about_nagoya .cont04 {
    margin-top: 120px;
  }
  #about_nagoya .cont04 h2 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 65px;
    background: url(img/at_nagoya/about_nagoya_img32.png) no-repeat top center;
  }
  #about_nagoya .cont04 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    margin-top: 50px;
  }
  #about_nagoya .cont04 .inner .box {
    display: flex;
    flex-direction: column-reverse;
    position: relative;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(2) {
    margin: 0 30px;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(4) {
    margin-right: 30px;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(n + 4) {
    margin-top: 45px;
  }
  #about_nagoya .cont04 .inner .box h3 {
    width: 250px;
    line-height: 1;
    padding-top: 15px;
    background: #fff;
    color: #0099dd;
    font-size: 20px;
    font-weight: bold;
    padding-left: 20px;
    position: absolute;
    top: 245px;
    left: 0;
    letter-spacing: 0.5px;
  }
  #about_nagoya .cont04 .inner .box .text {
    margin-top: 15px;
    line-height: 1.8;
    box-sizing: border-box;
    padding-left: 20px;
  }
  #about_nagoya .cont04 iframe {
    margin-top: 50px;
    width: 100%;
    max-height: 75vh;
  }
  #about_nagoya .cont05 {
    margin-top: 140px;
    margin-bottom: 80px;
    letter-spacing: 0;
  }
  #about_nagoya .cont05 h2 {
    text-align: center;
  }
  #about_nagoya .cont05 .text {
    margin-top: 30px;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.7;
    text-align: center;
  }
  #about_nagoya .cont05 #sbi_images {
    margin: 50px auto 0 !important;
    width: 100% !important;
    max-width: 1800px !important;
    position: relative !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }
  #about_nagoya .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 60px;
    font-size: 16px;
    padding: 0;
  }
  #about_nagoya .cont05 .btn a {
    display: inline-block;
    width: 350px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    color: #fff;
    background: #0099dd;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #0099dd;
    font-size: 16px;
    letter-spacing: 1px;
  }
  #about_nagoya .cont05 .btn a:hover {
    background: #fff;
    color: #0099dd;
  }
  #about_nagoya .cont05 .btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: #0099dd;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
  }
  #about_nagoya .cont05 .btn a::after {
    content: "";
    width: 25px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  #about_nagoya .cont05 .btn a:hover::after {
    background: #0099dd;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #about_nagoya .sub_ttl01 {
    padding-top: 70px;
  }

  #about_nagoya .inner {
    width: auto;
  }

  /* cont01 */
  #about_nagoya .cont01 .box {
    padding-left: 0;
    padding: 390px 15px 0;
    box-sizing: border-box;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) {
    padding: 390px 15px 0;
    margin-top: 70px;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) .text {
    padding: 0;
  }
  #about_nagoya .cont01 .box .text .pc {
    display: none;
  }
  #about_nagoya .cont01 .box .img {
    left: 15px;
    width: calc(100% - 30px);
  }
  #about_nagoya .cont01 .box:nth-of-type(2) .img {
    right: auto;
  }
  #about_nagoya .cont01 .box .img img {
    max-width: 100%;
  }
  #about_nagoya .cont01 .bnr {
    margin-top: 70px;
  }
  #about_nagoya .cont01 .bnr img {
    width: 90%;
    height: auto;
  }

  /* cont02 */
  #about_nagoya .cont02 .box {
    flex-direction: column;
  }
  #about_nagoya .cont02 .box .inner_box:nth-of-type(n + 2) {
    margin-top: 30px;
  }

  /* cont03 */
  #about_nagoya .cont03 {
    margin: 90px auto 0;
    padding: 80px 15px 100px;
  }
  #about_nagoya .cont03 h2 {
    font-size: 22px;
  }
  #about_nagoya .cont03 .box .inner_box {
    max-width: 640px;
    background: #fff;
    margin: auto;
    padding: 415px 30px 30px;
    box-sizing: border-box;
    position: relative;
    box-shadow: 0 0 30px rgb(0 0 0 / 10%);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(2),
  #about_nagoya .cont03 .box .inner_box:nth-of-type(3) {
    padding-top: 415px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5) {
    padding-top: 600px;
    padding-bottom: 30px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(6) {
    padding-top: 415px;
  }
  #about_nagoya .cont03 .box .inner_box::before {
    content: url(img/at_nagoya/about_nagoya_img12.png);
    transform: scale(0.8);
    position: absolute;
    top: 355px;
    right: -10px;
    z-index: 10;
  }
  #about_nagoya .cont03 .box .inner_box .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #about_nagoya .cont03 .box .inner_box .img img {
    max-width: 100%;
    height: auto;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5) .text01 {
    margin-top: 25px;
  }
  #about_nagoya .cont03 .box .inner_box .text01 .pc {
    display: none;
  }
  #about_nagoya .cont03 table {
    width: 100%;
  }
  #about_nagoya .cont03 table th {
    width: 180px;
  }
  #about_nagoya .cont03 .swiper {
    width: 100%;
  }
  #about_nagoya .cont03 .swiper .swiper-slide {
    width: 90% !important;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img img {
    max-width: 100%;
  }
  #about_nagoya .cont03 .swiper .swiper-button-next {
    right: 30px;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev {
    left: 30px;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
    transform: scale(0.7);
  }
  #about_nagoya .cont03 .swiper .swiper-button-next::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
    transform: scale(0.7) rotateY(180deg);
  }
  #about_nagoya .cont03 .box02 {
    padding: 320px 20px 30px;
    width: 650px;
  }
  #about_nagoya .cont03 .box02::before {
    display: none;
  }
  #about_nagoya .cont03 .box02 .img {
    width: 650px;
  }
  #about_nagoya .cont03 .box02 .img iframe {
    width: 100%;
  }
  #about_nagoya .cont03 .box02 .text04 .pc {
    display: none;
  }

  /* cont04 */
  #about_nagoya .cont04 {
    margin-top: 100px;
    padding: 0 15px;
  }
  #about_nagoya .cont04 .inner {
    justify-content: space-between;
  }
  #about_nagoya .cont04 .inner .box {
    width: 48%;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(2) {
    margin: 0;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(4) {
    margin-right: 0;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(n + 3) {
    margin-top: 45px;
  }
  #about_nagoya .cont04 .inner .box .img img {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  #about_nagoya .pc {
    display: none;
  }
  #about_nagoya .cont01 .inner {
    padding: 0 10px;
  }
  #about_nagoya .cont01 .box {
    box-sizing: border-box;
    position: relative;
    padding-top: 195px;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) {
    margin-top: 50px;
  }
  #about_nagoya .cont01 .box h2 {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 35px;
    background: url(img/at_nagoya/about_nagoya_img02.png) no-repeat bottom left /
      300px;
  }
  #about_nagoya .cont01 .box .text {
    margin-top: 20px;
    line-height: 2;
    font-size: 14px;
  }
  #about_nagoya .cont01 .box .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 410px;
  }
  #about_nagoya .cont01 .box .img img {
    max-width: 100%;
    height: auto;
  }
  #about_nagoya .cont01 .box:nth-of-type(2) .text {
    margin-top: 0;
    letter-spacing: -0.3px;
  }
  #about_nagoya .cont01 .bnr {
    text-align: center;
    margin-top: 50px;
  }
  #about_nagoya .cont01 .bnr img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }

  #about_nagoya .cont02 {
    margin-top: 80px;
    padding: 0 10px;
  }
  #about_nagoya .cont02 h2 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/at_nagoya/about_nagoya_img30.png) no-repeat top center /
      200px;
  }
  #about_nagoya .cont02 .text {
    font-size: 14px;
    font-weight: bold;
    line-height: 2;
    margin-top: 20px;
    padding: 0 10px;
  }
  #about_nagoya .cont02 .box {
    display: flex;
    flex-direction: column;
    margin-top: 30px;
  }
  #about_nagoya .cont02 .box .inner_box {
    text-align: center;
  }
  #about_nagoya .cont02 .box .inner_box:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  #about_nagoya .cont02 .box .inner_box h3 {
    font-size: 20px;
    font-weight: bold;
    color: #1f9bde;
  }
  #about_nagoya .cont02 .box .inner_box .tel {
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
    margin-top: 15px;
  }
  #about_nagoya .cont02 .box .inner_box .tel a {
    font-weight: bold;
  }
  #about_nagoya .cont02 .box .inner_box .text01 {
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
  }
  #about_nagoya .cont02 .box .inner_box .btn {
    margin-top: 18px;
    padding: 0;
  }
  #about_nagoya .cont02 .box .inner_box .btn a {
    display: inline-block;
    width: 250px;
    height: 50px;
    line-height: 50px;
    background: #0099dd;
    text-align: center;
    color: #fff;
    font-size: 16px;
    position: relative;
    letter-spacing: 1px;
    box-sizing: border-box;
    border: 1px solid #0099dd;
  }
  #about_nagoya .cont02 .box .inner_box .btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: linear-gradient(
      -90deg,
      #fff 0%,
      #fff 50%,
      #0099dd 50%,
      #0099dd 100%
    );
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
  }
  #about_nagoya .cont03 {
    margin: 70px auto 0;
    padding: 70px 10px 90px;
    background: url(img/at_nagoya/about_nagoya_img33.png) no-repeat top 3630px
      center / 100% #e1f2fa;
  }
  #about_nagoya .cont03 h2 {
    letter-spacing: -0.5px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    background: url(img/at_nagoya/about_nagoya_img31.png) no-repeat top center /
      200px;
  }
  #about_nagoya .cont03 .text {
    line-height: 2;
    margin-top: 40px;
    font-size: 14px;
    letter-spacing: -0.3px;
  }
  #about_nagoya .cont03 h3 {
    margin-top: 70px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding-bottom: 30px;
    background: url(img/at_nagoya/about_nagoya_img05.png) no-repeat bottom
      center / 80px;
  }
  #about_nagoya .cont03 h3:nth-of-type(2) {
    background: url(img/at_nagoya/about_nagoya_img18.png) no-repeat bottom
      center;
  }
  #about_nagoya .cont03 h3:nth-of-type(3) {
    background: url(img/at_nagoya/about_nagoya_img19.png) no-repeat bottom
      center;
  }
  #about_nagoya .cont03 .box {
    margin-top: 40px;
  }
  #about_nagoya .cont03 .box .inner_box {
    background: #fff;
    margin-left: auto;
    padding: 285px 10px 30px;
    box-sizing: border-box;
    position: relative;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5) {
    padding-top: 400px;
  }
  #about_nagoya .cont03 .box .inner_box::before {
    content: url(img/at_nagoya/about_nagoya_img12.png);
    transform: scale(0.8);
    position: absolute;
    top: 220px;
    right: -35px;
    z-index: 10;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(2):before {
    content: url(img/at_nagoya/about_nagoya_img13.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(3):before {
    content: url(img/at_nagoya/about_nagoya_img14.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(4):before {
    content: url(img/at_nagoya/about_nagoya_img15.png);
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(5):before {
    content: url(img/at_nagoya/about_nagoya_img16.png);
    top: 335px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(6):before {
    content: url(img/at_nagoya/about_nagoya_img17.png);
    right: -20px;
  }
  #about_nagoya .cont03 .box .inner_box h4 {
    font-size: 18px;
    font-weight: bold;
  }
  #about_nagoya .cont03 .box .inner_box .text01 {
    margin-top: 15px;
    line-height: 2;
    font-size: 14px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(1) .text01 {
    letter-spacing: -0.3px;
  }
  #about_nagoya .cont03 .box .inner_box:nth-of-type(n + 2) {
    margin-top: 50px;
  }
  #about_nagoya .cont03 .box .inner_box .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #about_nagoya .cont03 .box .inner_box .img img {
    max-width: 100%;
    height: auto;
  }
  #about_nagoya .cont03 table {
    margin: 30px 0 0 -5px;
    width: 420px;
    border-collapse: separate;
    border-spacing: 5px;
  }
  #about_nagoya .cont03 table th {
    text-align: center;
    color: #fff;
    vertical-align: middle;
    background: #0099dd;
    width: 100px;
    height: 50px;
  }
  #about_nagoya .cont03 table td {
    vertical-align: middle;
    background: #fff;
    box-sizing: border-box;
    padding-left: 40px;
    padding: 15px 0 15px 10px;
  }
  #about_nagoya .cont03 table td span {
    display: block;
    margin-left: 10px;
  }
  #about_nagoya .cont03 .swiper {
    width: 100%;
    /* position: relative;
		top: 0;
		left: 50%;
		transform: translateX(-50%); */
    margin: 40px 0 0 !important;
    letter-spacing: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-slide {
    /* width: 800px !important; */
    background: #e99d27;
    color: #fff;
    box-sizing: border-box;
    padding: 270px 10px 40px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) {
    background: #1094d5;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box {
    display: flex;
    flex-direction: column;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .ttl {
    background: #fff;
    color: #e99d27;
    width: 110px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    flex-shrink: 0;
    font-size: 12px;
    font-weight: bold;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text02 {
    font-size: 18px;
    font-weight: bold;
    margin-top: 10px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text03 {
    font-weight: bold;
    font-size: 14px;
    margin-top: 10px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .text_box .text04 {
    font-size: 14px;
    line-height: 2;
    margin-top: 15px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) .text_box .ttl {
    color: #1094d5;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img img {
    max-width: 100%;
    height: auto;
  }
  #about_nagoya .cont03 .swiper .swiper-slide .img span {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    background: #e99d27;
    color: #fff;
    font-weight: bold;
    font-style: italic;
    width: 140px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-size: 14px;
  }
  #about_nagoya .cont03 .swiper .swiper-slide:nth-of-type(2n) .img span {
    background: #0099dd;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev {
    top: 245px;
    left: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-button-next {
    top: 245px;
    right: 0;
  }
  #about_nagoya .cont03 .swiper .swiper-button-prev::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
    transform: scale(0.3);
  }
  #about_nagoya .cont03 .swiper .swiper-button-next::after {
    content: url(img/at_nagoya/about_nagoya_img22.png);
    transform: scale(0.3) rotateY(180deg);
  }
  #about_nagoya .cont03 .box02 {
    position: relative;
    background: #fff;
    margin-top: 100px;
    padding: 255px 20px 30px;
    box-sizing: border-box;
  }
  /* #about_nagoya .cont03 .box02::before {
			content: '';
			width: 100%;
			height: 100%;
			box-sizing: border-box;
			border: 3px solid #0099dd;
			position: absolute;
			top: -20px;
			right: 20px;
		} */
  #about_nagoya .cont03 .box02 .ttl {
    font-size: 18px;
    font-weight: bold;
  }
  #about_nagoya .cont03 .box02 .text04 {
    margin-top: 15px;
    line-height: 2;
    font-size: 14px;
  }
  #about_nagoya .cont03 .box02 .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #about_nagoya .cont03 .box02 .img iframe {
    max-width: 100%;
    height: 230px;
  }
  #about_nagoya .cont04 {
    margin-top: 70px;
  }
  #about_nagoya .cont04 h2 {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/at_nagoya/about_nagoya_img32.png) no-repeat top center /
      300px;
  }
  #about_nagoya .cont04 .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 30px 10px 0;
  }
  #about_nagoya .cont04 .inner .box {
    display: flex;
    flex-direction: column-reverse;
    position: relative;
    width: 200px;
  }
  #about_nagoya .cont04 .inner .box:nth-of-type(n + 3) {
    margin-top: 30px;
  }
  #about_nagoya .cont04 .inner .box h3 {
    width: 200px;
    line-height: 1;
    background: #fff;
    color: #0099dd;
    font-size: 14px;
    box-sizing: border-box;
    font-weight: bold;
    padding: 15px 10px 0;
    position: absolute;
    top: 120px;
    left: 0;
    letter-spacing: -0.5px;
  }
  #about_nagoya .cont04 .inner .box .text {
    margin-top: 15px;
    line-height: 1.8;
    box-sizing: border-box;
    padding: 0 10px;
    font-size: 14px;
  }
  #about_nagoya .cont04 .inner .box .img img {
    max-width: 100%;
    height: auto;
  }
  #about_nagoya .cont04 iframe {
    margin-top: 40px;
    width: 100%;
    height: 500px;
  }
  #about_nagoya .cont05 {
    margin-top: 70px;
    margin-bottom: 80px;
    padding: 0 10px;
    letter-spacing: 0;
  }
  #about_nagoya .cont05 h2 {
    text-align: center;
  }
  #about_nagoya .cont05 h2 img {
    width: 200px;
    height: auto;
  }
  #about_nagoya .cont05 .text {
    margin-top: 30px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.7;
    padding: 0 10px;
  }
  #about_nagoya .cont05 #sb_instagram {
    margin-top: 40px !important;
    width: 430px !important;
  }
  #about_nagoya .cont05 #sb_instagram.sbi_mob_col_3 #sbi_images .sbi_item {
    width: 30.3% !important;
    margin-left: 5px !important;
  }
  #about_nagoya .cont05 #sb_instagram,
  #about_nagoya .cont05 #sbi_images {
    padding: 0 !important;
  }
  #about_nagoya .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 45px;
    padding: 0;
    font-size: 16px;
  }
  #about_nagoya .cont05 .btn a {
    display: inline-block;
    width: 250px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    color: #fff;
    background: #0099dd;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #0099dd;
    letter-spacing: 1px;
  }
  #about_nagoya .cont05 .btn a::before {
    content: "";
    width: 50px;
    height: 2px;
    background: #0099dd;
    background: linear-gradient(
      -90deg,
      #fff 0%,
      #fff 50%,
      #0099dd 50%,
      #0099dd 100%
    );
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
  }
}

/* supporting */
@media (min-width: 431px) {
  #supporting .container_1200 {
    width: 1200px;
    margin: 0 auto;
  }
  #supporting table.form {
    max-width: none;
    width: 100%;
  }
  #supporting .cont01 {
    margin-top: 110px;
  }
  #supporting .cont01 .box {
    padding-left: 600px;
    position: relative;
    box-sizing: border-box;
  }
  #supporting .cont01 .box::before {
    content: url(img/supporting/supporting_img02.png);
    position: absolute;
    top: 0;
    right: 650px;
  }
  #supporting .cont01 .box:nth-of-type(2) {
    padding-left: 20px;
    padding-right: 600px;
    margin-top: 75px;
  }
  #supporting .cont01 .box:nth-of-type(2):before {
    content: url(img/supporting/supporting_img04.png);
    position: absolute;
    top: 0;
    right: auto;
    left: 650px;
  }
  #supporting .cont01 .box h2 {
    font-size: 24px;
    font-weight: bold;
    line-height: 36px;
    padding-bottom: 45px;
    background: url(img/supporting/supporting_img01.png) no-repeat bottom left;
  }
  #supporting .cont01 .box:nth-of-type(2) h2 {
    background: url(img/supporting/supporting_img03.png) no-repeat bottom left;
  }
  #supporting .cont01 .box .text {
    margin-top: 25px;
    line-height: 2;
    font-size: 16px;
  }

  #supporting .cont02 {
    margin-top: 130px;
    position: relative;
  }
  #supporting .cont02::before {
    content: url(img/supporting/supporting_img14.png);
    position: absolute;
    top: -80px;
    left: -420px;
    z-index: -1;
  }
  #supporting .cont02::after {
    content: url(img/supporting/supporting_img15.png);
    position: absolute;
    top: 30px;
    right: -400px;
    z-index: -1;
  }
  #supporting .cont02 h2 {
    font-size: 18px;
    padding-top: 50px;
    background: url(img/supporting/supporting_img05.png) no-repeat top center;
    font-weight: bold;
    text-align: center;
  }
  #supporting .cont02 .box {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
  }
  #supporting .cont02 .box .cont {
    width: 380px;
    padding-top: 155px;
    background: url(img/supporting/supporting_img06.png) no-repeat top center;
  }
  #supporting .cont02 .box .cont:nth-of-type(2) {
    background: url(img/supporting/supporting_img07.png) no-repeat top center;
  }
  #supporting .cont02 .box .cont:nth-of-type(3) {
    background: url(img/supporting/supporting_img08.png) no-repeat top center;
  }
  #supporting .cont02 .box .cont .text_box {
    width: 320px;
    background: #fff;
    margin: 0 auto;
    padding: 35px 23px 0;
    height: 290px;
    box-sizing: border-box;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    position: relative;
  }
  #supporting .cont02 .box .cont .text_box::before {
    content: url(img/supporting/supporting_img09.png);
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
  }
  #supporting .cont02 .box .cont:nth-of-type(2) .text_box::before {
    content: url(img/supporting/supporting_img10.png);
  }
  #supporting .cont02 .box .cont:nth-of-type(3) .text_box::before {
    content: url(img/supporting/supporting_img11.png);
  }
  #supporting .cont02 .box .cont .text_box h3 {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 25px;
    line-height: 30px;
  }
  #supporting .cont02 .box .cont .text_box .text {
    font-size: 14px;
    line-height: 26px;
  }
  #supporting .cont02 .support_btn {
    text-align: center;
    margin: 80px 0 100px;
  }
  #supporting .cont02 .support_btn a {
    display: inline-block;
    width: 300px;
    height: 50px;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #0099dd;
    border: 1px solid #0099dd;
    transition: all 0.3s;
  }
  #supporting .cont02 .support_btn a:hover {
    background: #0099dd;
    color: #fff;
    transition: all 0.3s;
  }

  #supporting .cont03 {
    margin-top: 100px;
  }
  #supporting .cont03 h2 {
    font-size: 18px;
    font-weight: bold;
    padding-top: 45px;
    text-align: center;
    background: url(img/supporting/supporting_img12.png) no-repeat top center;
  }
  #supporting .cont03 .fl {
    width: 1200px;
    align-items: center;
    margin: 45px auto 0;
  }
  #supporting .cont03 .box {
    background: url(img/supporting/supporting_bg01.png) no-repeat top center;
    margin: 100px auto 0;
    padding: 150px 0 0;
  }
  #supporting .cont03 .box #form {
    width: 1200px;
    margin: auto;
    background: #fff;
  }
  #supporting .cont03 .box #form h3 {
    font-size: 34px;
    text-align: center;
    padding: 90px 0 50px;
  }
  #supporting .cont03 .box #form .text {
    width: 850px;
    margin: auto;
  }
  #supporting .cont03 .box #form table.form {
    max-width: 860px;
  }
}

@media (min-width: 1800px) {
  #supporting .cont03 .box {
    background: url(img/supporting/supporting_bg01.png) top center / contain
      no-repeat;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #supporting .container_1200 {
    width: 100%;
  }

  /* cont01 */
  #supporting .cont01 {
    padding: 0 15px;
    margin-top: 80px;
  }
  #supporting .cont01 .box {
    padding-left: 0;
    padding-top: 315px;
  }
  #supporting .cont01 .box:nth-of-type(2) {
    padding-left: 0;
    padding-right: 0;
  }
  #supporting .cont01 .box::before {
    content: "";
    width: 100%;
    height: 300px;
    background: url(img/supporting/supporting_img02.png) no-repeat center;
    right: auto;
  }
  #supporting .cont01 .box:nth-of-type(2):before {
    content: "";
    left: auto;
    background: url(img/supporting/supporting_img04.png) no-repeat center;
  }
  #supporting .cont01 .box h2 {
    font-size: 22px;
    letter-spacing: -0.5px;
  }
  #supporting .cont01 .box h2 br {
    display: none;
  }

  /* cont02 */
  #supporting .cont02 .box {
    flex-wrap: wrap;
  }
  #supporting .cont02 .box .cont:nth-of-type(3) {
    margin-top: 45px;
  }
  #supporting .cont02 .box .cont:nth-of-type(3) .text_box {
    height: 230px;
  }
  #supporting .cont02 .support_btn {
    margin: 70px 0;
  }
  #supporting .cont02 .support_btn a{
    margin-bottom: 10px;
  }

  /* cont03 */
  #supporting .cont03 .img {
    margin-top: 30px;
  }
  #supporting .cont03 .img img {
    max-width: 90%;
    height: auto;
  }
  #supporting .cont03 .box #form {
    width: 100%;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #supporting .cont03 .box #form .text {
    width: auto;
  }
}

@media (max-width: 430px) {
  #supporting .container_1200 {
    width: 430px;
    margin: 0 auto;
  }
  #supporting .cont01 {
    margin-top: -20px;
    padding: 0 15px;
  }
  #supporting .cont01 .box {
    position: relative;
    box-sizing: border-box;
    padding-top: 250px;
  }
  #supporting .cont01 .box::before {
    content: url(img/supporting/supporting_img02.png);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%) scale(0.6);
  }
  #supporting .cont01 .box:nth-of-type(2) {
    margin-top: 20px;
  }
  #supporting .cont01 .box:nth-of-type(2):before {
    content: url(img/supporting/supporting_img04.png);
  }
  #supporting .cont01 .box h2 {
    font-size: 18px;
    font-weight: bold;
    line-height: 36px;
    padding-bottom: 35px;
    background: url(img/supporting/supporting_img01.png) no-repeat bottom left /
      170px;
  }
  #supporting .cont01 .box:nth-of-type(2) h2 {
    background: url(img/supporting/supporting_img03.png) no-repeat bottom left /
      260px;
  }
  #supporting .cont01 .box .text {
    margin-top: 20px;
    line-height: 2;
    font-size: 14px;
    letter-spacing: -0.5px;
  }
  #supporting .cont01 .box .text .pc {
    display: none;
  }

  #supporting .cont02 {
    margin-top: 100px;
    position: relative;
  }
  #supporting .cont02 h2 {
    font-size: 18px;
    padding-top: 35px;
    background: url(img/supporting/supporting_img05.png) no-repeat top center /
      90%;
    font-weight: bold;
    text-align: center;
  }
  #supporting .cont02 .box {
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  #supporting .cont02 .box .cont {
    width: 380px;
    padding-top: 120px;
    background: url(img/supporting/supporting_img06.png) no-repeat top center;
  }
  #supporting .cont02 .box .cont:nth-of-type(2) {
    background: url(img/supporting/supporting_img07.png) no-repeat top center;
    margin: 50px auto;
  }
  #supporting .cont02 .box .cont:nth-of-type(3) {
    background: url(img/supporting/supporting_img08.png) no-repeat top center;
  }
  #supporting .cont02 .box .cont .text_box {
    width: 320px;
    background: #fff;
    margin: 0 auto;
    padding: 35px 23px 30px;
    box-sizing: border-box;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    position: relative;
  }
  #supporting .cont02 .box .cont .text_box::before {
    content: url(img/supporting/supporting_img09.png);
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
  }
  #supporting .cont02 .box .cont:nth-of-type(2) .text_box::before {
    content: url(img/supporting/supporting_img10.png);
  }
  #supporting .cont02 .box .cont:nth-of-type(3) .text_box::before {
    content: url(img/supporting/supporting_img11.png);
  }
  #supporting .cont02 .box .cont .text_box h3 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 25px;
    line-height: 30px;
  }
  #supporting .cont02 .box .cont .text_box .text {
    font-size: 14px;
    line-height: 2;
  }
  #supporting .cont02 .support_btn {
    text-align: center;
    margin: 70px 0;
  }

  #supporting .cont02 .support_btn a {
    display: inline-block;
    width: 300px;
    height: 50px;
    line-height: 50px;
    font-size: 16px;
    font-weight: bold;
    color: #0099dd;
    border: 1px solid #0099dd;
    transition: all 0.3s;
    margin-bottom: 10px;
  }

  #supporting .cont03 {
    margin-top: 100px;
  }
  #supporting .cont03 h2 {
    font-size: 18px;
    font-weight: bold;
    padding-top: 45px;
    margin: 0 15px;
    text-align: center;
    background: url(img/supporting/supporting_img12.png) no-repeat top center /
      90%;
  }
  #supporting .cont03 .img {
    text-align: center;
    margin: 20px 15px 0;
    text-align: center;
  }
  #supporting .cont03 .img img {
    max-width: 100%;
    height: auto;
  }
  #supporting .cont03 .box {
    background: url(img/supporting/supporting_bg01_sp.png) no-repeat top center;
    margin: 60px auto 0;
    padding: 60px 15px 0;
  }
  #supporting .cont03 .box #form {
    width: 100%;
    margin: auto;
    padding: 0 15px;
    box-sizing: border-box;
    background: #fff;
  }
  #supporting .cont03 .box #form h3 {
    font-size: 24px;
    text-align: center;
    padding: 45px 0 30px;
  }
  #supporting .cont03 .box #form .text {
    margin: auto;
  }
}


/*　75th (75周年)
------------------------------------------------------------------*/
#th_75 .pc {
  display: block;
}
#th_75 .sp {
  display: none;
}
#th_75 .cont01 {
  margin-top: -60px;
  text-align: center;
}
#th_75 .cont01 h2 {
  color: #0099dd;
  font-size: 74px;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: 1px;
}
#th_75 .cont01 h2 .span01 {
  font-size: 46px;
  font-weight: bold;
}
#th_75 .cont01 h2 .span02 {
  letter-spacing: 7px;
  font-weight: bold;
}
#th_75 .cont01 .img_box {
  margin: 40px auto 90px;
  padding-right: 30px;
  display: flex;
  justify-content: center;
  gap: 130px;
  box-sizing: border-box;
}
#th_75 .cont01 .img_box .img:nth-of-type(1){
  margin-top: 95px;
}
#th_75 .cont01 .move_wrap {
  padding: 110px 0;
  color: #fff;
  background: linear-gradient(0deg, #1a90d6 0%, #1956a5 100%);
  box-sizing: border-box;
}
#th_75 .cont01 .move_wrap h3 {
  font-size: 26px;
  line-height: 1;
  font-weight: bold;
  background: url("img/th_75/75th_cont01_text01.png")center top no-repeat;
  margin-bottom: 80px;
  padding-top: 60px;
}
#th_75 .cont01 .move_wrap #movie {
  margin: 0 auto;
  width: 100%;
  height: auto;
  max-width: 991px;
  max-height: 563px;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
#th_75 .cont01 .move_wrap #movie::before {
  display: block;
  content: '';
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
#th_75 .cont01 .move_wrap #movie video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#th_75 .cont01 .move_wrap .text01 {
  margin-top: 80px;
  font-size: 22px;
  line-height: 1;
}


#th_75 .cont02 {
  margin-top: 140px;
}
#th_75 .cont02 h3 {
  padding: 65px 0 0;
  background: url(img/th_75/75th_cont02_text01.png) center top no-repeat;
  background-size: 255px;
  text-align: center;
  font-size: 26px;
  line-height: 1;
  font-weight: bold;
}
#th_75 .cont02 .flex_box .cont {
  padding: 170px 0 200px;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(even) {
  color: #fff;
  background: #1d9add;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(1) {
  padding-top: 110px;
}
#th_75 .cont02 .flex_box .cont_wrap {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  position: relative;
}
#th_75 .cont02 .flex_box .cont:not(:first-of-type):nth-of-type(odd) .cont_wrap {
  flex-direction: row-reverse;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(1) .cont_wrap::before,
#th_75 .cont02 .flex_box .cont:nth-of-type(5) .cont_wrap::before,
#th_75 .cont02 .flex_box .cont:nth-of-type(6) .cont_wrap::before,
#th_75 .cont02 .flex_box .cont:nth-of-type(7) .cont_wrap::before {
  content: "";
  background: url("img/th_75/75th_cont02_accent01.png")no-repeat;
  width: 648px;
  height: 302px;
  position: absolute;
  right: 0;
  bottom: -100px;
  opacity: 0.1;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(5) .cont_wrap::before {
  bottom: 0;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(6) .cont_wrap::before {
  background: url("img/th_75/75th_cont02_accent03.png")no-repeat;
  opacity: 0.2;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(7) .cont_wrap::before {
  bottom: -120px;
}
#th_75 .cont02 .flex_box .cont .img_box {
  margin-top: 10px;
}
#th_75 .cont02 .flex_box .cont .img_box h4 {
  font-size: 18px;
  line-height: 1.7;
  font-weight: bold;
  margin-top: 23px;
}
#th_75 .cont02 .flex_box .cont .img_box h4 span {
  font-size: 22px;
  font-weight: bold;
}
#th_75 .cont02 .flex_box .cont .text_box {
  width: 850px;
  position: relative;
  z-index: 1;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(1) .text_box {
  width: 820px;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(2) .text_box::before,
#th_75 .cont02 .flex_box .cont:nth-of-type(3) .text_box::before,
#th_75 .cont02 .flex_box .cont:nth-of-type(4) .text_box::before {
  content: "";
  background: url("img/th_75/75th_cont02_accent02.png")no-repeat;
  width: 463px;
  height: 525px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -50px;
  opacity: 0.4;
  z-index: -1;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(3) .text_box::before {
  opacity: 0.3;
}
#th_75 .cont02 .flex_box .cont .text_box h4 {
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  color: #0099dd;
  background: linear-gradient(to right, #0099dd 0%, #0099dd 15%,#e7f4fb 15%, #e7f4fb 100%) bottom / 100% 2px no-repeat;
  padding-bottom: 7px;
  margin-bottom: 30px;
  white-space: nowrap;
  position: relative;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(even) .text_box h4 {
  color: #fff;
  background: linear-gradient(to right, #1960ae 0%, #1960ae 15%,#fff 15%, #fff 100%) bottom / 100% 2px no-repeat;
}
#th_75 .cont02 .flex_box .cont .text01,
#th_75 .cont02 .flex_box .cont .text02 {
  font-size: 16px;
  line-height: 2;
}
#th_75 .cont02 .flex_box .cont .text01 {
  text-align: justify;
  word-break: normal;
}
#th_75 .cont02 .flex_box .cont .text02 {
  margin-top: 45px;
  letter-spacing: 1px;
}
#th_75 .cont02 .flex_box .cont .text01 + .text01 {
  border-top: 2px solid #e7f4fb;
  margin-top: 30px;
  padding-top: 30px;
  box-sizing: border-box;
}
#th_75 .cont02 .flex_box .cont:nth-of-type(even) .text01 + .text01 {
  border-top: 2px solid #fff;
}


#th_75 .cont03 {
  height: 1214px;
  background: url("img/th_75/75th_cont03_bg.png")center top no-repeat;
}
@media (min-width: 1801px) {
  #th_75 .cont03 {
    background: url("img/th_75/75th_cont03_bg.png")center no-repeat;
    background-size: cover;
  }
}
#th_75 .cont03 .inner {
  width: 1200px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  gap: 280px;
}
#th_75 .cont03 .inner h3 {
  font-size: 28px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  letter-spacing: 2px;
  writing-mode: vertical-rl;
  margin-top: 80px;
}
#th_75 .cont03 .inner .text {
  width: 540px;
  margin-right: 60px;
  padding: 75px 40px 0;
  color: #fff;
  background: rgba(57,	127,	194, 0.8);
  line-height: 1.7;
  letter-spacing: 1px;
  text-align: justify;
  box-sizing: border-box;
  position: relative;
}
#th_75 .cont03 .inner .text::before {
  content: "";
  background: url("img/th_75/75th_cont02_accent02.png")no-repeat;
  background-size: 305px;
  width: 305px;
  height: 346px;
  position: absolute;
  right: 112px;
  bottom: 57px;
}


#th_75 .cont04 {
  margin: 150px auto;
}
#th_75 .cont04 h3 {
  font-size: 24px;
  line-height: 1;
  font-weight: bold;
  color: #0099dd;
  background: url("img/th_75/75th_cont04_text01.png")center top no-repeat;
  text-align: center;
  padding: 85px 0 130px;
  border-bottom: 2px solid #0099dd;
}
#th_75 .cont04 .inner {
  width: 1200px;
  margin: 0 auto;
}
#th_75 .cont04 .inner .box {
  display: flex;
  position: relative;
}
#th_75 .cont04 .inner .box:first-of-type {
  padding-top: 110px;
}
#th_75 .cont04 .inner .box:last-of-type {
  padding-bottom: 60px;
}
#th_75 .cont04 .inner .box::before {
  content: "";
  width: 2px;
  height: 100%;
  background: #0099dd;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#th_75 .cont04 .inner .box::after {
  content: "";
  width: 60px;
  height: 60px;
  background: #0099dd;
  border-radius: 50%;
  position: absolute;
  top: 138px;
  left: 50%;
  transform: translateX(-50%);
}
#th_75 .cont04 .inner .box:nth-of-type(odd) {
  flex-direction: row-reverse;
}
#th_75 .cont04 .inner .box + .box {
  padding-top: 100px;
  box-sizing: border-box;
}
#th_75 .cont04 .inner .box .text_box {
  width: 50%;
  box-sizing: border-box;
  position: relative;
}
#th_75 .cont04 .inner .box:nth-of-type(odd) .text_box {
  padding-left: 70px;
}
#th_75 .cont04 .inner .box:nth-of-type(even) .text_box {
  padding-left: 60px;
}
#th_75 .cont04 .inner .box:nth-of-type(1) .text_box::before,
#th_75 .cont04 .inner .box:nth-of-type(7) .text_box::before,
#th_75 .cont04 .inner .box:nth-of-type(13) .text_box::before {
  content: "";
  background: url("img/th_75/75th_cont02_accent01.png")no-repeat;
  background-size: 575px;
  width: 575px;
  height: 267px;
  opacity: 0.1;
  position: absolute;
  top: 60px;
  right: 0;
}
#th_75 .cont04 .inner .box:nth-of-type(7) .text_box::before {
  top: 64px;
}
#th_75 .cont04 .inner .box:nth-of-type(13) .text_box::before {
  top: 142px;
}
#th_75 .cont04 .inner .box:nth-of-type(4) .text_box::before,
#th_75 .cont04 .inner .box:nth-of-type(10) .text_box::before,
#th_75 .cont04 .inner .box:nth-of-type(16) .text_box::before {
  content: "";
  background: url("img/th_75/75th_cont02_accent02.png")no-repeat;
  background-size: 517px;
  width: 517px;
  height: 587px;
  opacity: 0.3;
  position: absolute;
  top: -132px;
  left: 0;
  z-index: -1;
}
#th_75 .cont04 .inner .box:nth-of-type(10) .text_box::before {
  top: -167px;
}
#th_75 .cont04 .inner .box:nth-of-type(16) .text_box::before {
  top: -227px;
}
#th_75 .cont04 .inner .box .text_box .year {
  width: 100%;
  height: 0;
  margin-bottom: 20px;
  padding-top: 93px;
  overflow: hidden;
}
#th_75 .cont04 .inner .box:nth-of-type(1) .text_box .year {
    background: url("img/th_75/75th_cont04_text02.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(2) .text_box .year {
    background: url("img/th_75/75th_cont04_text03.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(3) .text_box .year {
    background: url("img/th_75/75th_cont04_text04.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(4) .text_box .year {
    background: url("img/th_75/75th_cont04_text05.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(5) .text_box .year {
    background: url("img/th_75/75th_cont04_text06.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(6) .text_box .year {
    background: url("img/th_75/75th_cont04_text07.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(7) .text_box .year {
    background: url("img/th_75/75th_cont04_text08.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(8) .text_box .year {
    background: url("img/th_75/75th_cont04_text09.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(9) .text_box .year {
    background: url("img/th_75/75th_cont04_text10.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(10) .text_box .year {
    background: url("img/th_75/75th_cont04_text11.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(11) .text_box .year {
    background: url("img/th_75/75th_cont04_text12.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(12) .text_box .year {
    background: url("img/th_75/75th_cont04_text13.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(13) .text_box .year {
    background: url("img/th_75/75th_cont04_text14.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(14) .text_box .year {
    background: url("img/th_75/75th_cont04_text15.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(15) .text_box .year {
    background: url("img/th_75/75th_cont04_text16.png")top left no-repeat;
}
#th_75 .cont04 .inner .box:nth-of-type(16) .text_box .year {
    background: url("img/th_75/75th_cont04_text17.png")top right 70px no-repeat;
}
#th_75 .cont04 .inner .box .text_box .text {
  font-size: 16px;
  line-height: 1.8;
}
#th_75 .cont04 .inner .box .text_box .text span {
  font-size: 20px;
  font-weight: bold;
}
#th_75 .cont04 .inner .box .box_img {
  width: 50%;
  box-sizing: border-box;
}
#th_75 .cont04 .inner .box:nth-of-type(odd) .box_img {
  padding-left: 60px;
}
#th_75 .cont04 .inner .box:nth-of-type(even) .box_img {
  padding-left: 70px;
}
#th_75 .cont04 .inner .box .box_img img {
  border-radius: 20px;
}
#th_75 .cont04 .intent_img {
  border-top: 2px solid #0099dd;
  padding-top: 140px;
  text-align: center;
}


@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #th_75 .cont01 {
    margin-top: 60px;
  }
  #th_75 .cont01 h2 {
    font-size: 50px;
  }
  #th_75 .cont01 h2 .span01 {
    font-size: 30px;
  }
  #th_75 .cont01 .img_box {
    padding-right: 10px;
    gap: 60px;
  }
  #th_75 .cont01 .move_wrap {
    padding: 110px 20px;
  }
  #th_75 .cont01 .move_wrap h3 {
    background: url("img/th_75/75th_cont01_text01.png") center top no-repeat;
    background-size: 100%;
    margin-bottom: 50px;
    padding-top: 48px;
  }
  #th_75 .cont01 .move_wrap .text01 {
    margin-top: 60px;
  }


  /* cont02 */
  #th_75 .cont02 h3 {
    padding: 60px 0 0;
    background-size: 225px;
    font-size: 24px;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) {
    padding-top: 70px;
  }
  #th_75 .cont02 .flex_box .cont_wrap {
    width: 100%;
    padding: 0 20px;
    gap: 20px;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(5) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(6) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(7) .cont_wrap::before {
    background-size: 420px;
    width: 420px;
    height: 200px;
    right: 20px;
  }
  #th_75 .cont02 .flex_box .cont .img_box {
    width: 300px;
  }
  #th_75 .cont02 .flex_box .cont .img_box img {
    width: 100%;
  }
  #th_75 .cont02 .flex_box .cont .text_box {
    width: 550px;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) .text_box {
    width: 520px;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(2) .text_box::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(3) .text_box::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(4) .text_box::before {
    background: url("img/th_75/75th_cont02_accent02.png")no-repeat;
    background-size: 310px;
    width: 310px;
    height: 354px;
  }
  #th_75 .cont02 .flex_box .cont .text_box h4 {
    white-space: wrap;
  }


  /* cont03 */
  #th_75 .cont03 .inner {
    width: 100%;
    gap: 80px;
  }
  #th_75 .cont03 h3 {
    font-size: 22px;
  }
  #th_75 .cont03 .inner .text {
    margin-right: 30px;
  }


  /* cont04 */
  #th_75 .cont04 h3 {
    font-size: 22px;
    background: url("img/th_75/75th_cont04_text01.png")center top no-repeat;
    background-size: 95%;
    padding: 60px 0 70px;
  }
  #th_75 .cont04 .inner {
    width: 100%;
  }
  #th_75 .cont04 .inner .box::after {
    width: 40px;
    height: 40px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(odd) .text_box {
    padding-left: 40px;
    padding-right: 20px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(even) .text_box {
    padding-left: 20px;
    padding-right: 40px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(1) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(7) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(13) .text_box::before {
    background-size: 350px;
    width: 350px;
    height: 168px;
    top: 100px;
    right: 20px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(4) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(10) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(16) .text_box::before {
    background-size: 317px;
    width: 317px;
    height: 361px;
    top: -132px;
    left: 20px;
  }
  #th_75 .cont04 .inner .box .text_box .year {
    margin-bottom: 10px;
    padding-top: 78px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(1) .text_box .year {
    background: url("img/th_75/75th_cont04_text02.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(2) .text_box .year {
    background: url("img/th_75/75th_cont04_text03.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(3) .text_box .year {
    background: url("img/th_75/75th_cont04_text04.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(4) .text_box .year {
    background: url("img/th_75/75th_cont04_text05.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(5) .text_box .year {
    background: url("img/th_75/75th_cont04_text06.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(6) .text_box .year {
    background: url("img/th_75/75th_cont04_text07.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(7) .text_box .year {
    background: url("img/th_75/75th_cont04_text08.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(8) .text_box .year {
    background: url("img/th_75/75th_cont04_text09.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(9) .text_box .year {
    background: url("img/th_75/75th_cont04_text10.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(10) .text_box .year {
    background: url("img/th_75/75th_cont04_text11.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(11) .text_box .year {
    background: url("img/th_75/75th_cont04_text12.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(12) .text_box .year {
    background: url("img/th_75/75th_cont04_text13.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(13) .text_box .year {
    background: url("img/th_75/75th_cont04_text14.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(14) .text_box .year {
    background: url("img/th_75/75th_cont04_text15.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(15) .text_box .year {
    background: url("img/th_75/75th_cont04_text16.png")top left no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(16) .text_box .year {
    background: url("img/th_75/75th_cont04_text17.png")top right 10px no-repeat;
    background-size: 140px;
  }
  #th_75 .cont04 .inner .box .text_box .text {
    line-height: 1.6;
    word-break: normal;
  }
  #th_75 .cont04 .inner .box .text_box .text span {
    font-size: 18px;
  }
  #th_75 .cont04 .inner .box .box_img {
    width: 50%;
  }
  #th_75 .cont04 .inner .box:nth-of-type(odd) .box_img {
    padding-left: 20px;
    padding-right: 40px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(even) .box_img {
    padding-left: 40px;
    padding-right: 20px;
  }
  #th_75 .cont04 .inner .box .box_img img {
    width: 100%;
  }
}

@media (max-width: 430px) {
  #th_75 .pc {
    display: none;
  }
  #th_75 .sp {
    display: block;
  }
  #th_75 .cont01 {
    margin-top: 30px;
  }
  #th_75 .cont01 h2 {
    font-size: 36px;
    line-height: 1.25;
  }
  #th_75 .cont01 h2 .span01 {
    font-size: 22px;
  }
  #th_75 .cont01 .img_box {
    padding: 0 20px;
    gap: 40px;
  }
  #th_75 .cont01 .img_box img {
    width: 100%;
    height: auto;
  }
  #th_75 .cont01 .move_wrap {
    padding: 80px 20px;
  }
  #th_75 .cont01 .move_wrap h3 {
    font-size: 18px;
    background: url("img/th_75/75th_cont01_text01_sp.png") center top no-repeat;
    background-size: 100%;
    margin-bottom: 45px;
    padding-top: 80px;
  }
  #th_75 .cont01 .move_wrap .text01 {
    font-size: 16px;
    margin-top: 45px;
  }


  #th_75 .cont02 {
    margin-top: 80px;
  }
  #th_75 .cont02 h3 {
    padding: 55px 0 0;
    background-size: 190px;
    font-size: 20px;
  }
  #th_75 .cont02 .flex_box .cont {
    padding: 70px 0 80px;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) {
    padding-top: 50px;
  }
  #th_75 .cont02 .flex_box .cont_wrap {
    width: 100%;
    flex-direction: column;
    gap: 20px;
    padding: 0 20px;
  }
  #th_75 .cont02 .flex_box .cont:not(:first-of-type):nth-of-type(odd) .cont_wrap {
    flex-direction: column;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(5) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(6) .cont_wrap::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(7) .cont_wrap::before {
    background-size: 400px;
    width: 400px;
    height: 190px;
    right: -5px;
    bottom: -20px;
  }
  #th_75 .cont02 .flex_box .cont .img_box {
    text-align: center;
  }
  #th_75 .cont02 .flex_box .cont .img_box h4 {
    font-size: 16px;
  }
  #th_75 .cont02 .flex_box .cont .img_box h4 span {
    font-size: 18px;
  }
  #th_75 .cont02 .flex_box .cont .text_box {
    width: 100%;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(1) .text_box {
    width: 100%;
  }
  #th_75 .cont02 .flex_box .cont:nth-of-type(2) .text_box::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(3) .text_box::before,
  #th_75 .cont02 .flex_box .cont:nth-of-type(4) .text_box::before {
    background-size: 310px;
    width: 310px;
    height: 354px;
    bottom: 20px;
  }
  #th_75 .cont02 .flex_box .cont .text_box h4 {
    font-size: 18px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    white-space: wrap;
  }
  #th_75 .cont02 .flex_box .cont .text01,
  #th_75 .cont02 .flex_box .cont .text02 {
    font-size: 14px;
  }
  #th_75 .cont02 .flex_box .cont .text02 {
    margin-top: 25px;
  }
  #th_75 .cont02 .flex_box .cont .text01 + .text01 {
    margin-top: 20px;
    padding-top: 20px;
  }


  #th_75 .cont03 {
    height: 1420px;
    background: url("img/th_75/75th_cont03_bg.png")center top no-repeat;
    background-size: cover;
  }
  #th_75 .cont03 .inner {
    width: 100%;
    gap: 30px;
  }
  #th_75 .cont03 .inner h3 {
    font-size: 22px;
    margin-top: 70px;
    padding-left: 30px;
  }
  #th_75 .cont03 .inner .text {
    width: 370px;
    margin-right: 0;
    padding: 65px 30px 0;
  }
  #th_75 .cont03 .inner .text::before {
    background: url("img/th_75/75th_cont02_accent02.png")no-repeat;
    background-size: 205px;
    width: 205px;
    height: 235px;
    right: 68px;
    bottom: 57px;
  }


  #th_75 .cont04 {
    margin: 80px auto;
  }
  #th_75 .cont04 h3 {
    font-size: 18px;
    line-height: 1;
    background: url("img/th_75/75th_cont04_text01_sp.png")center top no-repeat;
    background-size: 80%;
    padding: 85px 0 60px;
  }
  #th_75 .cont04 .inner {
    width: 100%;
  }
  #th_75 .cont04 .inner .box {
    display: block;
  }
  #th_75 .cont04 .inner .box:first-of-type {
    padding-top: 80px;
  }
  #th_75 .cont04 .inner .box::before {
    top: 0;
    left: 40px;
    transform: none;
  }
  #th_75 .cont04 .inner .box::after {
    width: 40px;
    height: 40px;
    top: 75px;
    left: 20px;
    transform: none;
  }
  #th_75 .cont04 .inner .box:nth-of-type(1):after {
    top: 87px;
  }
  #th_75 .cont04 .inner .box + .box {
    padding-top: 70px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(odd) .text_box {
    padding: 0 20px 20px 80px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(even) .text_box {
    padding: 0 20px 20px 80px;
  }
  #th_75 .cont04 .inner .box .text_box {
    width: 100%;
    word-break: normal;
  }
  #th_75 .cont04 .inner .box:nth-of-type(1) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(7) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(13) .text_box::before {
    background-size: 350px;
    width: 350px;
    height: 168px;
    top: 30px;
    right: -30px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(7) .text_box::before {
    top: 34px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(13) .text_box::before {
    top: 112px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(4) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(10) .text_box::before,
  #th_75 .cont04 .inner .box:nth-of-type(16) .text_box::before {
    background-size: 317px;
    width: 317px;
    height: 361px;
    top: -132px;
    left: 55px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(10) .text_box::before {
    top: -194px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(16) .text_box::before {
    top: -187px;
  }
  #th_75 .cont04 .inner .box .text_box .year {
    margin-bottom: 10px;
    padding-top: 50px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(1) .text_box .year {
    background: url("img/th_75/75th_cont04_text02.png")top left no-repeat;
    background-size: 100px;
    padding-top: 56px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(2) .text_box .year {
    background: url("img/th_75/75th_cont04_text03.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(3) .text_box .year {
    background: url("img/th_75/75th_cont04_text04.png")top left no-repeat;
    background-size: 100px;
    padding-top: 54px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(4) .text_box .year {
    background: url("img/th_75/75th_cont04_text05.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(5) .text_box .year {
    background: url("img/th_75/75th_cont04_text06.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(6) .text_box .year {
    background: url("img/th_75/75th_cont04_text07.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(7) .text_box .year {
    background: url("img/th_75/75th_cont04_text08.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(8) .text_box .year {
    background: url("img/th_75/75th_cont04_text09.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(9) .text_box .year {
    background: url("img/th_75/75th_cont04_text10.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(10) .text_box .year {
    background: url("img/th_75/75th_cont04_text11.png")top left no-repeat;
    background-size: 100px;
    padding-top: 45px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(11) .text_box .year {
    background: url("img/th_75/75th_cont04_text12.png")top left no-repeat;
    background-size: 100px;
    padding-top: 45px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(12) .text_box .year {
    background: url("img/th_75/75th_cont04_text13.png")top left no-repeat;
    background-size: 100px;
    padding-top: 54px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(13) .text_box .year {
    background: url("img/th_75/75th_cont04_text14.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(14) .text_box .year {
    background: url("img/th_75/75th_cont04_text15.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(15) .text_box .year {
    background: url("img/th_75/75th_cont04_text16.png")top left no-repeat;
    background-size: 100px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(16) .text_box .year {
    background: url("img/th_75/75th_cont04_text17.png")top left no-repeat;
    background-size: 100px;
    padding-top: 45px;
  }
  #th_75 .cont04 .inner .box .text_box .text {
    font-size: 14px;
    line-height: 1.6;
  }
  #th_75 .cont04 .inner .box .text_box .text span {
    font-size: 18px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(odd) .box_img {
    padding-left: 80px;
    padding-right: 20px;
  }
  #th_75 .cont04 .inner .box:nth-of-type(even) .box_img {
    padding-left: 80px;
    padding-right: 20px;
  }
  #th_75 .cont04 .inner .box .box_img {
    width: 100%;
  }
  #th_75 .cont04 .inner .box .box_img img {
    width: 100%;
    border-radius: 10px;
  }
  #th_75 .cont04 .intent_img {
    width: 100%;
    padding-top: 70px;
  }
  #th_75 .cont04 .intent_img img {
    width: 100%;
  }
}


/*　2027年 世界会議 名古屋大会の開催について world2027
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #world2027 .inner {
    margin: 0 auto;
    width: 1200px;
  }
  #world2027 .sp {
    display: none;
  }
  #world2027 .tab {
    display: none;
  }
  #world2027 .pc02 {
    display: none;
  }
  #world2027 .pc {
    display: block;
  }
}


/* cont01 */
#world2027 .cont01 .inner {
  margin-bottom: 140px;
  width: 100%;
  max-width: 1800px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0 120px;
}
#world2027 .cont01 .inner .text_box {
  width: 610px;
  position: relative;
}
#world2027 .cont01 .inner h3 {
  width: 100%;
  font-size: 32px;
  line-height: 1.625;
  font-weight: bold;
  margin-bottom: 55px;
  padding-top: 44px;
  position: relative;
}
#world2027 .cont01 .inner h3::before {
  content: "World Congress held in Nagoya";
  font-size: 14px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 0;
}
#world2027 .cont01 .inner .text01 {
  font-size: 16px;
  line-height: 2;
}
#world2027 .cont01 .inner .text01 + .text01 {
  margin-top: 35px;
}
#world2027 .cont01 .inner .earth {
  position: absolute;
  top: 140px;
  right: 0;
  z-index: -1;
  opacity: 0.6;
}
#world2027 .cont01 .inner .slide_box {
  width: 900px;
  height: 750px;
  background: #e1f2fa;
  overflow: hidden;
  position: relative;
}
#world2027 .cont01 .inner .slide_box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 500px;
  height: 100%;
  background: url("img/world2027/world2027_slideimg01.png") repeat-y 0 0;
  animation: BgImgloopR02 40s linear infinite;
}
#world2027 .cont01 .inner .slide_box::after {
  content: "";
  position: absolute;
  top: 0;
  right: -100px;
  width: 500px;
  height: 100%;
  background: url("img/world2027/world2027_slideimg02.png") repeat-y 0 0;
  animation: BgImgloop02 40s linear infinite;
}
@keyframes BgImgloop02 {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 -1035px;
  }
}
@keyframes BgImgloopR02 {
  0% {
    background-position: 0 0;
  }

  100% {
    background-position: 0 1035px;
  }
}

@media screen and (max-width: 1700px) {
  #world2027 .cont01 .inner {
    gap: 0 60px;
    box-sizing: border-box;
  }
  #world2027 .cont01 .inner .slide_box {
    width: 50%;
  }
  #world2027 .cont01 .inner .slide_box::after {
    right: -160px;
  }
}
@media screen and (max-width: 1450px) {
  #world2027 .cont01 .inner {
    padding-left: 40px;
    gap: 0;
    justify-content: space-between;
  }
}
@media screen and (max-width: 1240px) {
  #world2027 .cont01 .pc02 {
    display: block;
  }
  #world2027 .cont01 .inner {
    width: 1200px;
  }
  #world2027 .cont01 .inner .text_box {
    width: 510px;
  }
  #world2027 .cont01 .inner .earth {
    top: 100px;
    right: -10px;
  }
  #world2027 .cont01 .inner .slide_box {
    width: 600px;
  }
  #world2027 .cont01 .inner .slide_box::before {
    left: -80px;
  }
  #world2027 .cont01 .inner .slide_box::after {
    right: -240px;
  }

  #world2027 .cont03 .inner::after {
    right: -60px !important;
  }
  #world2027 .cont03 .inner .text01::after {
    right: -20px !important;
  }
}

/* cont02 */
#world2027 .cont02 {
  background: #e1f2fa;
  position: relative;
}
#world2027 .cont02 .inner {
  padding: 140px 0;
}
#world2027 .cont02 .inner .text_box {
  display: flex;
  justify-content: space-between;
}
#world2027 .cont02 .inner h3 {
  width: 320px;
  font-size: 32px;
  font-weight: bold;
  padding-top: 50px;
  position: relative;
}
#world2027 .cont02 .inner h3::before {
  content: "What is the JCI World Congress?";
  font-size: 14px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 8px;
  left: 0;
}
#world2027 .cont02 .inner .text {
  font-size: 16px;
  line-height: 2;
}
#world2027 .cont02 .inner .flex-box {
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 0 30px;
}
#world2027 .cont02 .inner .flex-box .box {
  width: 380px;
  height: 440px;
  display: flex;
  flex-direction: column;
  padding: 10px;
  background: #fff;
  box-shadow: 20px 20px 30px rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(2) {
  margin-top: 30px;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(3) {
  margin-top: 60px;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(4) {
  margin-top: -10px;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(5) {
  margin-top: 20px;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(6) {
  margin-top: 50px;
}
#world2027 .cont02 .inner .flex-box .box h4 {
  display: inline-block;
  width: 345px;
  height: 45px;
  margin: -22.5px 0 0 -10px;
  padding: 0 0 0 30px;
  color: #fff;
  background: #009ade;
  font-size: 18px;
  line-height: 45px;
  font-weight: bold;
  box-sizing: border-box;
  order: 2;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(1) h4,
#world2027 .cont02 .inner .flex-box .box:nth-of-type(3) h4 {
  width: 255px;
}
#world2027 .cont02 .inner .flex-box .box:nth-of-type(6) h4 {
  width: 275px;
}
#world2027 .cont02 .inner .flex-box .box .box-text {
  padding: 20px 20px 0;
  line-height: 1.875;
  box-sizing: border-box;
  order: 3;
}
#world2027 .cont02 .inner .flex-box .box .img {
  order: 1;
}


/* cont03 */
#world2027 .cont03 {
  padding: 150px 0 140px;
  position: relative;
}
#world2027 .cont03::before {
  content: "";
  background: url(img/world2027/world2027_bg01.png)bottom center no-repeat;
  width: 1800px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media (min-width: 1800px) {
  #world2027 .cont03::before {
    background-size: cover;
    width: 100%;
  }
}

#world2027 .cont03 .inner {
  color: #fff;
  text-align: center;
  position: relative;
}
#world2027 .cont03 .inner::before {
  content: "";
  width: 200px;
  height: 200px;
  position: absolute;
  bottom: 20px;
  left: -20px;
  background: url(img/world2027/world2027_img08.png) no-repeat;
}
#world2027 .cont03 .inner::after {
  content: "";
  width: 160px;
  height: 210px;
  position: absolute;
  bottom: 125px;
  right: -160px;
  background: url(img/world2027/world2027_img10.png) no-repeat;
}
#world2027 .cont03 .inner h3 {
  font-size: 26px;
  font-weight: bold;
  padding-top: 42px;
  text-align: center;
  position: relative;
}
#world2027 .cont03 .inner h3::before {
  content: "Towards the JCI World Congress in Nagoya";
  font-size: 14px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #8bc1f5;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#world2027 .cont03 .inner .text01 {
  width: 100%;
  padding: 65px 0 50px;
  font-size: 18px;
  line-height: 2.33;
  font-weight: bold;
  position: relative;
}
#world2027 .cont03 .inner .text01::before {
  content: "";
  width: 300px;
  height: 300px;
  position: absolute;
  top: -70px;
  left: -120px;
  background: url(img/world2027/world2027_img07.png) no-repeat;
}
#world2027 .cont03 .inner .text01::after {
  content: "";
  width: 200px;
  height: 270px;
  position: absolute;
  top: 185px;
  right: -120px;
  background: url(img/world2027/world2027_img09.png) no-repeat;
}
#world2027 .cont03 .inner .text02 {
  font-size: 16px;
  line-height: 2.5;
}
#world2027 .cont03 .inner .text02 + .text02 {
  margin-top: 30px;
}


/* cont04 */
#world2027 .cont04 .inner {
  padding: 120px 0 60px;
  position: relative;
}
#world2027 .cont04 .inner::before {
  content: "";
  background: url(img/world2027/world2027_bg02.png)top center no-repeat;
  width: 1800px;
  height: 673px;
  position: absolute;
  top: -200px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#world2027 .cont04 .inner h3 {
  font-size: 30px;
  font-weight: bold;
  padding-top: 46px;
  text-align: center;
  position: relative;
}
#world2027 .cont04 .inner h3::before {
  content: "International Exchange";
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#world2027 .cont04 .inner .text01 {
  margin: 55px 0;
  text-align: center;
  font-size: 16px;
  line-height: 2.25;
}
#world2027 .cont04 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 15px;
}
#world2027 .cont04 .inner .flex-box .box a {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 17px 0;
  color: #fff;
	font-weight: bold;
  font-size: 18px;
  background: #009ade;
  width: 390px;
  height: 260px;
  padding: 10px;
  box-sizing: border-box;
}
#world2027 .cont04 .inner .flex-box .box a h4 {
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  padding-left: 15px;
  box-sizing: border-box;
}
#world2027 .cont04 .inner .flex-box .box a:hover .img img {
  opacity: 1;
}
#world2027 .cont04 .inner .mo_crop {
	display: block;
	position: relative;
	overflow: hidden;
  clip-path: inset(0 0 0 0);
}
#world2027 .cont04 .inner .mo_crop .mo_crop_text {
	display: inline-block;
	width: 100%;
	position: relative;
}
#world2027 .cont04 .inner .mo_crop .mo_crop_text_inner {
	display: block;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
  overflow: hidden;
}
#world2027 .cont04 .inner .mo_crop .mo_crop_text::after {
  padding-left: 25px;
	content: attr(data-text);
	width: 100%;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0.8;
	position: absolute;
	top: 100%;
	left: 0;
}

#world2027 .cont04 .inner .mo_crop .arrow {
	overflow: hidden;
	position: absolute;
	right: 30px;
  bottom: 17px;
	width: 25.6px;
  height: 25.6px;
  border-radius: 50%;
  background: #fff;
  line-height: 1;
}
#world2027 .cont04 .inner .mo_crop .arrow::before,
#world2027 .cont04 .inner .mo_crop .arrow::after {
	content: "";
	background: url("img/world2027/home_btn_arrow01.svg") center/contain no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: 50%;
  transform: translateY(-50%);
	right: 7px;
	animation-fill-mode: forwards;
	animation-duration: 0.25s;
	animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
#world2027 .cont04 .inner .mo_crop .arrow::before {
  opacity: 1;
  animation-duration: .25s;
}
#world2027 .cont04 .inner .mo_crop .arrow::after {
  opacity: 0;
  transform: translate(-120%, -50%) scale(1);
  animation-duration: .35s;
}

@keyframes arrowOut02 {
  0% {
    transform: translateY(-50%) translateX(0) scale(1); opacity: 1;
  }
  100% {
    transform: translateY(-50%) translateX(120%) scale(1);
    opacity: 0;
  }
}
@keyframes arrowIn02 {
  0% {
    transform: translate(-120%, -50%) scale(1); opacity: 0;
  }
  100% {
    transform: translate(0, -50%) scale(1);
    opacity: 1;
  }
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #world2027 .cont04 .inner .mo_crop a .img {
    overflow: hidden;
    transition: transform 0.5s ease;
  }
  #world2027 .cont04 .inner .mo_crop a:hover .img img {
    transform: scale(1.1);
  }
  #world2027 .cont04 .inner .mo_crop .mo_crop_text:hover {
    opacity: 1;
  }
  #world2027 .cont04 .inner .mo_crop:hover .mo_crop_text_inner {
    transform: translateY(-100%);
    opacity: 0;
  }
  #world2027 .cont04 .inner .mo_crop:hover .mo_crop_text::after {
    padding-left: 25px;
    transform: translateY(-43px);
    opacity: 1;
  }
  #world2027 .cont04 .inner .mo_crop:hover .arrow::before {
    animation-name: arrowOut02;
  }
  #world2027 .cont04 .inner .mo_crop:hover .arrow::after {
    animation-name: arrowIn02;
    animation-delay: .15s;
  }
}


@media screen and (max-width: 768px) {
  #world2027 .inner {
    margin: 0 auto;
    width: 700px;
  }
  #world2027 .pc {
    display: none;
  }
  #world2027 .pc02 {
    display: none !important;
  }
  #world2027 .tab {
    display: block;
  }


  /* cont01 */
  #world2027 .cont01 .inner {
    width: 700px;
    padding-left: 0;
  }
  #world2027 .cont01 .inner .text_box {
    width: 400px;
  }
  #world2027 .cont01 .inner h3 {
    margin-bottom: 35px;
    padding-top: 35px;
  }
  #world2027 .cont01 .inner .text01 + .text01 {
    margin-top: 20px;
  }
  #world2027 .cont01 .inner .slide_box {
    width: 300px;
    margin-right: -50px;
  }
  #world2027 .cont01 .inner .slide_box::after {
    content: none;
  }
  #world2027 .cont01 .inner .earth {
    width: 95%;
    top: 165px;
    right: -25px;
  }


  /* cont02 */
  #world2027 .cont02 .inner h3 {
    width: 250px;
    padding-top: 55px;
    line-height: 1.4;
  }
  #world2027 .cont02 .inner h3::before {
    content: "What is the JCI World \A Congress?";
    white-space: pre-wrap;
    line-height: 1.4;
  }
  #world2027 .cont02 .inner .text {
    width: 455px;
  }
  #world2027 .cont02 .inner .flex-box .box {
    width: 335px;
    height: 400px;
  }
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(1),
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(2),
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(3),
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(4),
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(5),
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(6) {
    margin-top: 0;
  }
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(even) {
    margin-top: 30px;
  }
  #world2027 .cont02 .inner .flex-box .box h4 {
    padding: 0 0 0 20px;
    font-size: 16px;
    width: 300px;
  }
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(1) h4,
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(3) h4 {
    width: 225px;
  }
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(6) h4 {
    width: 245px;
  }
  #world2027 .cont02 .inner .flex-box .box .box-text {
    padding: 15px 15px 0;
  }
  #world2027 .cont02 .inner .flex-box .box .img img {
    width: 100%;
    height: auto;
  }


  /* cont03 */
  #world2027 .cont03 .inner::before {
    background-size: 150px;
    width: 150px;
    height: 150px;
    bottom: -190px;
    left: -20px;
  }
  #world2027 .cont03 .inner::after {
    background-size: 110px;
    width: 110px;
    height: 145px;
    top: -20px;
    bottom: auto;
    right: -40px !important;
  }
  #world2027 .cont03 .inner h3::before {
    width: 100%;
  }
  #world2027 .cont03 .inner .text01::before {
    background-size: 200px;
    width: 200px;
    height: 200px;
    top: -250px;
    left: -75px;
  }
  #world2027 .cont03 .inner .text01::after {
    content: none;
  }


  /* cont04 */
  #world2027 .cont04 .inner::before {
    background-size: 1000px;
    width: 1000px;
    top: -65px;
  }
  #world2027 .cont04 .inner .flex-box {
    gap: 10px;
  }
  #world2027 .cont04 .inner .flex-box .box a {
    gap: 9px 0;
    width: 225px;
    height: 160px;
  }
  #world2027 .cont04 .inner .flex-box .box a h4 {
    font-size: 16px;
    padding-left: 10px;
  }
  #world2027 .cont04 .inner .flex-box .box a .img img {
    width: 205px;
    height: auto;
  }
  #world2027 .cont04 .inner .mo_crop .arrow {
    right: 10px;
    bottom: 13px;
  	width: 20px;
    height: 20px;
  }
  #world2027 .cont04 .inner .mo_crop .arrow::before,
  #world2027 .cont04 .inner .mo_crop .arrow::after {
    width: 7px;
	  height: 7px;
    right: 6px;
  }
}

@media screen and (max-width: 430px) {
  #world2027 .inner {
    width: 90%;
    margin: 0 auto;
  }
  #world2027 .pc {
    display: none;
  }
  #world2027 .pc02 {
    display: none;
  }
  #world2027 .tab {
    display: none;
  }

  /* cont01 */
  #world2027 .cont01 .inner {
    width: 100%;
    flex-direction: column;
    margin-top: 50px;
    margin-bottom: 80px;
    gap: 40px;
  }
  #world2027 .cont01 .inner .text_box {
    width: 90%;
  }
  #world2027 .cont01 .inner h3 {
    font-size: 24px;
    margin-bottom: 25px;
    padding-top: 27px;
  }
  #world2027 .cont01 .inner .slide_box {
    width: 100%;
    height: 400px;
    margin-right: 0;
  }
  #world2027 .cont01 .inner .slide_box::before {
    left: 0;
    width: 100%;
    height: 200px;
    background: url("img/world2027/world2027_slideimg01_sp.png") repeat-x 0 0;
    animation: BgImgloopR02sp 40s linear infinite;
  }
  #world2027 .cont01 .inner .slide_box::after {
    content: "";
    top: auto;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 200px;
    background: url("img/world2027/world2027_slideimg02_sp.png") repeat-x 0 0;
    animation: BgImgloop02sp 40s linear infinite;
  }

  @keyframes BgImgloop02sp {
    0% {
      background-position: 0 0;
    }
    100% {
      background-position: -1035px 0;
    }
  }
  @keyframes BgImgloopR02sp {
    0% {
      background-position: 0 0;
    }
    100% {
      background-position: 1035px 0;
    }
  }

  #world2027 .cont01 .inner .earth {
    top: 80px;
    right: 12px;
  }


  /* cont02 */
  #world2027 .cont02 .inner {
    padding: 80px 0 100px;
  }
  #world2027 .cont02 .inner .text_box {
    flex-direction: column;
    gap: 20px;
  }
  #world2027 .cont02 .inner h3 {
    width: 100%;
    font-size: 28px;
    padding-top: 34px;
  }
  #world2027 .cont02 .inner h3::before {
    content: "What is the JCI World Congress?";
    white-space: pre;
    width: 100%;
    font-size: 12px;
  }
  #world2027 .cont02 .inner .text {
    width: 100%;
  }
  #world2027 .cont02 .inner .flex-box {
    justify-content: center;
    gap: 30px;
  }
  #world2027 .cont02 .inner .flex-box .box {
    height: auto;
  }
  #world2027 .cont02 .inner .flex-box .box:nth-of-type(even) {
    margin-top: 0;
  }
  #world2027 .cont02 .inner .flex-box .box .box-text {
    padding: 15px;
  }


  /* cont03 */
  #world2027 .cont03::before {
    background-size: cover;
    left: auto;
    right: -440px;
    transform: none;
  }
  #world2027 .cont03 .inner {
    text-align: left;
  }
  #world2027 .cont03 .inner .text01::before {
    background-size: 120px;
    width: 120px;
    height: 120px;
    top: -300px;
    left: 0;
  }
  #world2027 .cont03 .inner::after {
    background-size: 95px;
    width: 95px;
    height: 126px;
    top: -165px;
    right: -10px !important;
  }
  #world2027 .cont03 .inner h3 {
    font-size: 22px;
    line-height: 1.5;
    padding-top: 55px;
  }
  #world2027 .cont03 .inner h3::before {
    content: "Towards the JCI World Congress \A in Nagoya";
    white-space: pre-wrap;
    line-height: 1.4;
  }
  #world2027 .cont03 .inner .text01 {
    padding: 45px 0 30px;
  }
  #world2027 .cont03 .inner .text02 + .text02 {
    margin-top: 20px;
  }


  /* cont04 */
  #world2027 .cont04 .inner {
    width: 100%;
    padding: 100px 0 60px;
  }
  #world2027 .cont04 .inner::before {
    background-size: 800px;
    width: 800px;
    top: -30px;
  }
  #world2027 .cont04 .inner h3 {
    font-size: 26px;
    padding-top: 34px;
  }
  #world2027 .cont04 .inner h3::before {
    width: 100%;
    font-size: 14px;
  }
  #world2027 .cont04 .inner .text01 {
    margin: 45px 0;
  }
  #world2027 .cont04 .inner .text01 .sp {
    display: block !important;
  }
  #world2027 .cont04 .inner .flex-box {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  #world2027 .cont04 .inner .flex-box .box a {
    gap: 14px 0;
    width: 380px;
    height: 250px;
  }
  #world2027 .cont04 .inner .flex-box .box a h4 {
    font-size: 18px;
    padding-left: 15px;
  }
  #world2027 .cont04 .inner .flex-box .box a .img img {
    width: 100%;
  }
  #world2027 .cont04 .inner .mo_crop .arrow {
    right: 30px;
    bottom: 16px;
    width: 25.6px;
    height: 25.6px;
  }
  #world2027 .cont04 .inner .mo_crop .arrow::before,
  #world2027 .cont04 .inner .mo_crop .arrow::after {
    width: 9px;
    height: 9px;
    right: 7px;
  }

}



/*　国際交流について international
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #international .inner {
    margin: 0 auto;
    width: 1200px;
  }
  #international .sp {
    display: none;
  }
  #international .tab {
    display: none;
  }
  #international .pc02 {
    display: none;
  }
  #international .pc {
    display: block;
  }
}


/* cont01 */
#international .cont01 {
  margin-bottom: 120px;
}
#international .cont01 .ttl {
  font-size: 18px;
  line-height: 2;
  text-align: center;
}
#international .cont01 .btn_box {
  margin-top: 55px;
  display: flex;
  justify-content: center;
  gap: 0 40px;
}
#international .cont01 .btn_box li a {
  display: block;
  width: 460px;
  height: 100px;
  color: #fff;
  background: #009ade;
  border: 1px solid #fff;
  font-size: 16px;
  line-height: 1.75;
  font-weight: bold;
  padding: 25px 0 0 180px;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
}
#international .cont01 .btn_box li a::before {
  content: "";
  background: url(img/international/international_img01.png)no-repeat;
  width: 225px;
  height: 212px;
  position: absolute;
  top: 50%;
  left: -66px;
  transform: translateY(-50%);
}
#international .cont01 .btn_box li:nth-of-type(2) a::before {
  background: url(img/international/international_img02.png)no-repeat;
}
#international .cont01 .btn_box li a .arrow {
	overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
	position: absolute;
	top: 0;
	right: 10px;
	bottom: 0;
	width: 25px;
  height: 25px;
  border: 1px solid #009ade;
  border-radius: 50%;
  background: #fff;
	margin: auto 0;
  line-height: 1;
}
#international .cont01 .btn_box li a .arrow::before,
#international .cont01 .btn_box li a .arrow::after {
	content: "";
	background: url("img/international/home_btn_arrow01.svg") center/contain no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(90deg);
  animation-fill-mode: forwards;
	animation-duration: 0.25s;
	animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
#international .cont01 .btn_box li a .arrow::before {
  opacity: 1;
  animation-duration: .25s;
}
#international .cont01 .btn_box li a .arrow::after {
  opacity: 0;
  transform: translateY(-120%) scale(.7) rotate(90deg);
  animation-duration: .35s;
}

@keyframes arrowOut03 {
  0% {
    transform: translateY(0) scale(1) rotate(90deg);
    opacity: 1;
  }
  100% {
    transform: translateY(120%) scale(1) rotate(90deg);
    opacity: 0;
  }
}
@keyframes arrowIn03 {
  0% {
    transform: translateY(-120%) scale(.7) rotate(90deg);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1) rotate(90deg);
    opacity: 1;
  }
}

@media (min-width: 769px) {
  #international .cont01 .btn_box li a:hover {
    color: #009ade;
    background: #fff;
    border: 1px solid #009ade;
  }
  #international .cont01 .btn_box li a:hover .arrow::before {
    animation-name: arrowOut03;
  }
  #international .cont01 .btn_box li a:hover .arrow::after {
    animation-name: arrowIn03;
    animation-delay: .15s;
  }
}


/* cont02 */
#international .cont02 {
  padding: 270px 0 100px;
  background: #e7f4fb;
  box-sizing: border-box;
  position: relative;
}
#international .cont02::before {
  content: "";
  background: url(img/international/international_bg01.png)top center no-repeat;
  width: 1800px;
  height: 480px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1800px) {
  #international .cont02::before {
    background-size: cover;
    width: 100%;
  }
}
#international .cont02 .inner {
  background: #fff;
  padding: 90px 45px 100px;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}
#international .cont02 .inner h3 {
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
  padding-top: 37px;
  position: relative;
}
#international .cont02 .inner h3::before {
  width: 100%;
  content: "about 3g project";
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#international .cont02 .inner .text01 {
  font-size: 16px;
  line-height: 2.25;
  margin: 40px 0 50px;
}
#international .cont02 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
#international .cont02 .inner .flex-box .box {
  display: flex;
  flex-direction: column;
}
#international .cont02 .inner .flex-box .box h4 {
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  color: #009ade;
  margin: 25px 0 15px;
  order: 2;
}
#international .cont02 .inner .flex-box .box .box-text {
  line-height: 1.625;
  order: 3;
}
#international .cont02 .inner .flex-box .box .img {
  order: 1;
}
#international .cont02 .inner .button a {
  display: inline-block;
  width: 370px;
  height: 60px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 60px;
  margin: 45px auto 0;
  color: #fff;
  background: #009ade;
  border: 1px solid #0099dd;
  position: relative;
}
#international .cont02 .inner .button a::before {
  content: "";
  width: 50px;
  height: 2px;
  background: linear-gradient(to right, #0099dd 0%, #0099dd 50%, #fff 50%, #fff 100%);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(-50%, -50%);
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #international .cont02 .inner .button a:hover {
    color: #0099dd;
    background: #fff;
  }
  #international .cont02 .inner .button a:hover::before {
    background: linear-gradient(to right, #0099dd 0%, #0099dd 100%);
  }
}


/* cont03 */
#international .cont03 {
  padding: 270px 0 100px;
  background: #e7f4fb;
  box-sizing: border-box;
  position: relative;
}
#international .cont03::before {
  content: "";
  background: url(img/international/international_bg02.png)top center no-repeat;
  width: 1800px;
  height: 480px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 1800px) {
  #international .cont03::before {
    background-size: cover;
    width: 100%;
  }
}
#international .cont03 .inner {
  background: #fff;
  padding: 90px 45px 100px;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}
#international .cont03 .inner h3 {
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
  padding-top: 37px;
  position: relative;
}
#international .cont03 .inner h3::before {
  width: 100%;
  content: "about JC Cup U-11";
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#international .cont03 .inner .text01 {
  font-size: 16px;
  line-height: 2.25;
  margin: 40px 0 50px;
}
#international .cont03 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 0 30px;
}
#international .cont03 .inner .flex-box .box {
  display: flex;
  flex-direction: column;
}
#international .cont03 .inner .flex-box .box h4 {
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  color: #009ade;
  margin: 25px 0 15px;
  order: 2;
}
#international .cont03 .inner .flex-box .box .box-text {
  line-height: 1.625;
  order: 3;
}
#international .cont03 .inner .flex-box .box .img {
  order: 1;
}


/* cont04 */
#international .cont04 .inner {
  padding: 120px 0 60px;
  position: relative;
}
#international .cont04 .inner::before {
  content: "";
  background: url(img/international/world2027_bg02.png)top center no-repeat;
  width: 1800px;
  height: 673px;
  position: absolute;
  top: -200px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#international .cont04 .inner h3 {
  font-size: 30px;
  font-weight: bold;
  padding-top: 46px;
  text-align: center;
  position: relative;
}
#international .cont04 .inner h3::before {
  content: "International Exchange";
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#international .cont04 .inner .text01 {
  margin: 55px 0;
  text-align: center;
  font-size: 16px;
  line-height: 2.25;
}
#international .cont04 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 15px;
}
#international .cont04 .inner .flex-box .box a {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 17px 0;
  color: #fff;
	font-weight: bold;
  font-size: 18px;
  background: #009ade;
  width: 390px;
  height: 260px;
  padding: 10px;
  box-sizing: border-box;
}
#international .cont04 .inner .flex-box .box a h4 {
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  padding-left: 15px;
  box-sizing: border-box;
}
#international .cont04 .inner .flex-box .box a:hover .img img {
  opacity: 1;
}
#international .cont04 .inner .mo_crop {
	display: block;
	position: relative;
	overflow: hidden;
  clip-path: inset(0 0 0 0);
}
#international .cont04 .inner .mo_crop .mo_crop_text {
	display: inline-block;
	width: 100%;
	position: relative;
}
#international .cont04 .inner .mo_crop .mo_crop_text_inner {
	display: block;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
  overflow: hidden;
}
#international .cont04 .inner .mo_crop .mo_crop_text::after {
  padding-left: 25px;
	content: attr(data-text);
	width: 100%;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0.8;
	position: absolute;
	top: 100%;
	left: 0;
}

#international .cont04 .inner .mo_crop .arrow {
	overflow: hidden;
	position: absolute;
	right: 30px;
  bottom: 17px;
	width: 25.6px;
  height: 25.6px;
  border-radius: 50%;
  background: #fff;
  line-height: 1;
}
#international .cont04 .inner .mo_crop .arrow::before,
#international .cont04 .inner .mo_crop .arrow::after {
	content: "";
	background: url("img/international/home_btn_arrow01.svg") center/contain no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: 50%;
  transform: translateY(-50%);
	right: 7px;
	animation-fill-mode: forwards;
	animation-duration: 0.25s;
	animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
#international .cont04 .inner .mo_crop .arrow::before {
  opacity: 1;
  animation-duration: .25s;
}
#international .cont04 .inner .mo_crop .arrow::after {
  opacity: 0;
  transform: translate(-120%, -50%) scale(1);
  animation-duration: .35s;
}

@keyframes arrowOut02 {
  0% {
    transform: translateY(-50%) translateX(0) scale(1); opacity: 1;
  }
  100% {
    transform: translateY(-50%) translateX(120%) scale(1);
    opacity: 0;
  }
}
@keyframes arrowIn02 {
  0% {
    transform: translate(-120%, -50%) scale(1); opacity: 0;
  }
  100% {
    transform: translate(0, -50%) scale(1);
    opacity: 1;
  }
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #international .cont04 .inner .mo_crop a .img {
    overflow: hidden;
    transition: transform 0.5s ease;
  }
  #international .cont04 .inner .mo_crop a:hover .img img {
    transform: scale(1.1);
  }
  #international .cont04 .inner .mo_crop .mo_crop_text:hover {
    opacity: 1;
  }
  #international .cont04 .inner .mo_crop:hover .mo_crop_text_inner {
    transform: translateY(-100%);
    opacity: 0;
  }
  #international .cont04 .inner .mo_crop:hover .mo_crop_text::after {
    padding-left: 25px;
    transform: translateY(-43px);
    opacity: 1;
  }
  #international .cont04 .inner .mo_crop:hover .arrow::before {
    animation-name: arrowOut02;
  }
  #international .cont04 .inner .mo_crop:hover .arrow::after {
    animation-name: arrowIn02;
    animation-delay: .15s;
  }
}


@media screen and (max-width: 768px) {
  #international .inner {
    margin: 0 auto;
    width: 700px;
  }
  #international .pc {
    display: none;
  }
  #international .pc02 {
    display: none !important;
  }
  #international .tab {
    display: block;
  }


  /* cont01 */
  #international .cont01 {
    margin-top: 80px;
  }
  #international .cont01 .btn_box {
    gap: 20px;
  }
  #international .cont01 .btn_box li a {
    width: 340px;
    font-size: 14px;
    padding: 25px 0 0 160px;
  }
  #international .cont01 .btn_box li:nth-of-type(2) a {
    padding: 13px 0 0 135px;
  }
  #international .cont01 .btn_box li a::before {
    left: -106px;
  }


  /* cont02 */
  #international .cont02 .inner {
    padding: 80px 30px 90px;
  }
  #international .cont02 .inner .text01 {
    margin: 30px 0 40px;
  }
  #international .cont02 .inner .flex-box {
    gap: 10px;
  }
  #international .cont02 .inner .flex-box .box h4 {
    font-size: 18px;
    line-height: 1.4;
    margin: 15px 0 5px;
  }
  #international .cont02 .inner .flex-box .box .img {
    width: 210px;
  }
  #international .cont02 .inner .flex-box .box .img img {
    width: 100%;
    height: auto;
  }


  /* cont03 */
  #international .cont03 .inner {
    padding: 80px 30px 90px;
  }
  #international .cont03 .inner .text01 {
    margin: 30px 0 40px;
  }
  #international .cont03 .inner .flex-box {
    gap: 10px;
  }
  #international .cont03 .inner .flex-box .box h4 {
    font-size: 18px;
    line-height: 1.4;
    margin: 15px 0 5px;
  }
  #international .cont03 .inner .flex-box .box .img {
    width: 210px;
  }
  #international .cont03 .inner .flex-box .box .img img {
    width: 100%;
    height: auto;
  }


  /* cont04 */
  #international .cont04 .inner::before {
    background-size: 1000px;
    width: 1000px;
    top: -65px;
  }
  #international .cont04 .inner .flex-box {
    gap: 10px;
  }
  #international .cont04 .inner .flex-box .box a {
    gap: 9px 0;
    width: 225px;
    height: 160px;
  }
  #international .cont04 .inner .flex-box .box a h4 {
    font-size: 16px;
    padding-left: 10px;
  }
  #international .cont04 .inner .flex-box .box a .img img {
    width: 205px;
    height: auto;
  }
  #international .cont04 .inner .mo_crop .arrow {
    right: 10px;
    bottom: 13px;
  	width: 20px;
    height: 20px;
  }
  #international .cont04 .inner .mo_crop .arrow::before,
  #international .cont04 .inner .mo_crop .arrow::after {
    width: 7px;
	  height: 7px;
    right: 6px;
  }
}

@media screen and (max-width: 430px) {
  #international .inner {
    width: 90%;
    margin: 0 auto;
  }
  #international .pc {
    display: none;
  }
  #international .pc02 {
    display: none;
  }
  #international .tab {
    display: none;
  }

  /* cont01 */
  #international .cont01 {
    margin-top: 40px;
    margin-bottom: 80px;
  }
  #international .cont01 .ttl {
    font-size: 16px;
  }
  #international .cont01 .btn_box {
    margin-top: 40px;
    flex-direction: column;
    align-items: center;
  }
  #international .cont01 .btn_box li a .sp {
    display: block !important;
  }
  #international .cont01 .btn_box li a {
    width: 370px;
    padding: 25px 0 0 150px;
  }
  #international .cont01 .btn_box li:nth-of-type(2) a {
    padding: 13px 0 0 150px;
  }
  #international .cont01 .btn_box li a::before {
    left: -96px;
  }


  /* cont02 */
  #international .cont02 {
    padding: 120px 0 80px;
  }
  #international .cont02::before {
    background-size: 600px;
    width: 600px;
    height: 160px;
  }
  #international .cont02 .inner {
    padding: 60px 30px 70px;
  }
  #international .cont02 .inner h3 {
    font-size: 22px;
    padding-top: 27px;
  }
  #international .cont02 .inner h3::before {
    font-size: 14px;
  }
  #international .cont02 .inner .text01 {
    margin: 25px 0 30px;
  }
  #international .cont02 .inner .text01 .sp {
    display: block !important;
  }
  #international .cont02 .inner .flex-box {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }
  #international .cont02 .inner .flex-box .box .box-text .sp {
    display: block !important;
  }
  #international .cont02 .inner .flex-box .box .img {
    width: 100%;
  }
  #international .cont02 .inner .button a {
    width: 100%;
    margin-top: 35px;
  }


  /* cont03 */
  #international .cont03 {
    padding: 120px 0 80px;
  }
  #international .cont03::before {
    background-size: 600px;
    width: 600px;
    height: 160px;
  }
  #international .cont03 .inner {
    padding: 60px 30px 70px;
  }
  #international .cont03 .inner h3 {
    font-size: 20px;
    padding-top: 27px;
  }
  #international .cont03 .inner h3::before {
    font-size: 14px;
  }
  #international .cont03 .inner .text01 {
    margin: 25px 0 30px;
  }
  #international .cont03 .inner .text01 .sp {
    display: block !important;
  }
  #international .cont03 .inner .flex-box {
    flex-direction: column;
    align-items: center;
    gap: 30px;
  }
  #international .cont03 .inner .flex-box .box .box-text .sp {
    display: block !important;
  }
  #international .cont03 .inner .flex-box .box .img {
    width: 100%;
  }


  /* cont04 */
  #international .cont04 .inner {
    width: 100%;
    padding: 100px 0 60px;
  }
  #international .cont04 .inner::before {
    background-size: 800px;
    width: 800px;
    top: -30px;
  }
  #international .cont04 .inner h3 {
    font-size: 26px;
    padding-top: 34px;
  }
  #international .cont04 .inner h3::before {
    width: 100%;
    font-size: 14px;
  }
  #international .cont04 .inner .text01 {
    margin: 45px 0;
  }
  #international .cont04 .inner .text01 .sp {
    display: block !important;
  }
  #international .cont04 .inner .flex-box {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  #international .cont04 .inner .flex-box .box a {
    gap: 14px 0;
    width: 380px;
    height: 250px;
  }
  #international .cont04 .inner .flex-box .box a h4 {
    font-size: 18px;
    padding-left: 15px;
  }
  #international .cont04 .inner .flex-box .box a .img img {
    width: 100%;
  }
  #international .cont04 .inner .mo_crop .arrow {
    right: 30px;
    bottom: 16px;
    width: 25.6px;
    height: 25.6px;
  }
  #international .cont04 .inner .mo_crop .arrow::before,
  #international .cont04 .inner .mo_crop .arrow::after {
    width: 9px;
    height: 9px;
    right: 7px;
  }

}



/*　姉妹LOM sister-jci
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #sister-jci .inner {
    margin: 0 auto;
    width: 1200px;
  }
  #sister-jci .sp {
    display: none;
  }
  #sister-jci .tab {
    display: none;
  }
  #sister-jci .pc02 {
    display: none;
  }
  #sister-jci .pc {
    display: block;
  }
}


/* cont01 */
#sister-jci .cont01 {
  margin: 120px auto 160px;
  text-align: center;
  position: relative;
}
#sister-jci .cont01::before {
  content: "";
  background: url("img/sister-jci/sister-jci_img02.png")center / cover no-repeat;
  width: 320px;
  height: 220px;
  border-radius: 5px;
  box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 319px;
  left: -150px;
}
#sister-jci .cont01::after {
  content: "";
  background: url("img/sister-jci/sister-jci_img04.png")center / cover no-repeat;
  width: 230px;
  height: 230px;
  border-radius: 5px;
  box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 408px;
  right: -150px;
}
#sister-jci .cont01 h3 {
  width: 100%;
  font-size: 26px;
  font-weight: bold;
  line-height: 1.615;
  position: relative;
}
#sister-jci .cont01 h3::before {
  content: "";
  background: url("img/sister-jci/sister-jci_img01.png")center / cover no-repeat;
  width: 220px;
  height: 220px;
  border-radius: 5px;
  box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 139px;
  left: -10px;
}
#sister-jci .cont01 h3::after {
  content: "";
  background: url("img/sister-jci/sister-jci_img03.png")center / cover no-repeat;
  width: 290px;
  height: 400px;
  border-radius: 5px;
  box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.1);
  position: absolute;
  top: 68px;
  right: -75px;
}
#sister-jci .cont01 .text01 {
  font-size: 18px;
  line-height: 2.222;
  padding: 45px 0;
}
#sister-jci .cont01 .text02 {
  font-size: 16px;
  line-height: 2.25;
}
#sister-jci .cont01 .text02 + .text02 {
  margin-top: 45px;
}

@media screen and (max-width: 1240px) {
  #sister-jci .cont01::after {
    right: 20px;
  }
}


/* cont02 */
#sister-jci .cont02 {
  margin: 0 auto 30px;
  padding: 150px 0 140px;
  position: relative;
  z-index: 1;
}
#sister-jci .cont02::before {
  content: "";
  width: calc(100% - 60px);
  height: 100%;
  background: linear-gradient(90deg, #115dbd 0%, #009ade 100%);
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

@media (min-width: 1750px) {
  #sister-jci .cont02::before {
    width: 1680px;
  }
}

#sister-jci .cont02 .head_box {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
#sister-jci .cont02 .head_box h3 {
  width: 340px;
	font-size: 16px;
  line-height: 1;
  font-weight: bold;
  color: #fff;
  background: url("img/sister-jci/sister-jci_cont02_ttl01.svg")top left no-repeat;
  background-size: 270px;
  padding-top: 85px;
}
#sister-jci .cont02 .head_box .text01 {
  width: 780px;
  font-size: 16px;
  line-height: 2;
  color: #fff;
}
#sister-jci .cont02 .lom_box {
  margin-top: 60px;
}
#sister-jci .cont02 .lom_box .box {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: row-reverse;
  gap: 0 40px;
  background: #fff;
  border-radius: 5px;
  padding: 25px;
  box-sizing: border-box;
}
#sister-jci .cont02 .lom_box .box + .box {
  margin-top: 50px;
}
#sister-jci .cont02 .lom_box h4 {
  color: #009ade;
  font-size: 34px;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 30px;
}
#sister-jci .cont02 .lom_box h4 span {
  padding-left: 20px;
  font-size: 22px;
  font-weight: bold;
  color: #333;
}
#sister-jci .cont02 .lom_box .box-text {
  line-height: 2;
}
#sister-jci .cont02 .lom_box .img img {
  border-radius: 5px;
  box-shadow: 15px 15px 20px rgba(0, 0, 0, 0.1);
}

@media (max-width: 1340px) {
  #sister-jci .cont02 {
    padding: 90px 0 100px;
  }
  #sister-jci .cont02 .pc {
    display: none;
  }
  #sister-jci .cont02 .inner {
    width: 1120px;
  }
  #sister-jci .cont02 .head_box .text01 {
    width: 700px;
  }
  #sister-jci .cont02 .lom_box .box {
    padding-right: 40px;
  }
  #sister-jci .cont02 .lom_box .box h4 {
    white-space: nowrap;
  }
}


/* cont03 */
#sister-jci .cont03 .inner {
  padding: 120px 0 60px;
  position: relative;
}
#sister-jci .cont03 .inner::before {
  content: "";
  background: url(img/sister-jci/world2027_bg02.png)top center no-repeat;
  width: 1800px;
  height: 673px;
  position: absolute;
  top: -200px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
#sister-jci .cont03 .inner h3 {
  font-size: 30px;
  font-weight: bold;
  padding-top: 46px;
  text-align: center;
  position: relative;
}
#sister-jci .cont03 .inner h3::before {
  content: "International Exchange";
  font-size: 16px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #009ade;
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#sister-jci .cont03 .inner .text01 {
  margin: 55px 0;
  text-align: center;
  font-size: 16px;
  line-height: 2.25;
}
#sister-jci .cont03 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 15px;
}
#sister-jci .cont03 .inner .flex-box .box a {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 17px 0;
  color: #fff;
	font-weight: bold;
  font-size: 18px;
  background: #009ade;
  width: 390px;
  height: 260px;
  padding: 10px;
  box-sizing: border-box;
}
#sister-jci .cont03 .inner .flex-box .box a h4 {
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  padding-left: 15px;
  box-sizing: border-box;
}
#sister-jci .cont03 .inner .flex-box .box a:hover .img img {
  opacity: 1;
}
#sister-jci .cont03 .inner .mo_crop {
	display: block;
	position: relative;
	overflow: hidden;
  clip-path: inset(0 0 0 0);
}
#sister-jci .cont03 .inner .mo_crop .mo_crop_text {
	display: inline-block;
	width: 100%;
	position: relative;
}
#sister-jci .cont03 .inner .mo_crop .mo_crop_text_inner {
	display: block;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
  overflow: hidden;
}
#sister-jci .cont03 .inner .mo_crop .mo_crop_text::after {
  padding-left: 25px;
	content: attr(data-text);
	width: 100%;
	transform: translateY(0);
	transition:
		transform .55s cubic-bezier(0.25, 1, 0.5, 1),
		opacity .55s cubic-bezier(0.25, 1, 0.5, 1);
	opacity: 0.8;
	position: absolute;
	top: 100%;
	left: 0;
}

#sister-jci .cont03 .inner .mo_crop .arrow {
	overflow: hidden;
	position: absolute;
	right: 30px;
  bottom: 17px;
	width: 25.6px;
  height: 25.6px;
  border-radius: 50%;
  background: #fff;
  line-height: 1;
}
#sister-jci .cont03 .inner .mo_crop .arrow::before,
#sister-jci .cont03 .inner .mo_crop .arrow::after {
	content: "";
	background: url("img/sister-jci/home_btn_arrow01.svg") center/contain no-repeat;
	width: 9px;
	height: 9px;
	position: absolute;
	top: 50%;
  transform: translateY(-50%);
	right: 7px;
	animation-fill-mode: forwards;
	animation-duration: 0.25s;
	animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}
#sister-jci .cont03 .inner .mo_crop .arrow::before {
  opacity: 1;
  animation-duration: .25s;
}
#sister-jci .cont03 .inner .mo_crop .arrow::after {
  opacity: 0;
  transform: translate(-120%, -50%) scale(1);
  animation-duration: .35s;
}

@keyframes arrowOut02 {
  0% {
    transform: translateY(-50%) translateX(0) scale(1); opacity: 1;
  }
  100% {
    transform: translateY(-50%) translateX(120%) scale(1);
    opacity: 0;
  }
}
@keyframes arrowIn02 {
  0% {
    transform: translate(-120%, -50%) scale(1); opacity: 0;
  }
  100% {
    transform: translate(0, -50%) scale(1);
    opacity: 1;
  }
}

/*---------- hover ----------*/
@media (min-width: 769px) {
  #sister-jci .cont03 .inner .mo_crop a .img {
    overflow: hidden;
    transition: transform 0.5s ease;
  }
  #sister-jci .cont03 .inner .mo_crop a:hover .img img {
    transform: scale(1.1);
  }
  #sister-jci .cont03 .inner .mo_crop .mo_crop_text:hover {
    opacity: 1;
  }
  #sister-jci .cont03 .inner .mo_crop:hover .mo_crop_text_inner {
    transform: translateY(-100%);
    opacity: 0;
  }
  #sister-jci .cont03 .inner .mo_crop:hover .mo_crop_text::after {
    padding-left: 25px;
    transform: translateY(-43px);
    opacity: 1;
  }
  #sister-jci .cont03 .inner .mo_crop:hover .arrow::before {
    animation-name: arrowOut02;
  }
  #sister-jci .cont03 .inner .mo_crop:hover .arrow::after {
    animation-name: arrowIn02;
    animation-delay: .15s;
  }
}


@media screen and (max-width: 768px) {
  #sister-jci .inner {
    margin: 0 auto;
    width: 700px;
  }
  #sister-jci .pc {
    display: none;
  }
  #sister-jci .pc02 {
    display: none !important;
  }
  #sister-jci .tab {
    display: block;
  }


  /* cont01 */
  #sister-jci .cont01 {
    margin: 370px auto 300px;
  }
  #sister-jci .cont01::before {
    width: 260px;
    height: 179px;
    top: auto;
    bottom: -245px;
    left: -10px;
  }
  #sister-jci .cont01::after {
    width: 150px;
    height: 150px;
    top: -180px;
    right: -10px;
  }
  #sister-jci .cont01 h3::before {
    width: 160px;
    height: 160px;
    top: auto;
    bottom: -785px;
    left: 180px;
  }
  #sister-jci .cont01 h3::after {
    width: 190px;
    height: 260px;
    top: -335px;
    right: 75px;
  }


  /* cont02 */
	#sister-jci .cont02 {
		padding: 80px 0;
	}
  #sister-jci .cont02::before {
    background: linear-gradient(180deg, #115dbd 0%, #009ade 100%);
  }
	#sister-jci .cont02 .inner {
    width: 700px;
  }
	#sister-jci .cont02 .head_box {
		width: 100%;
		padding: 0 30px;
    flex-wrap: wrap;
    align-items: center;
		box-sizing: border-box;
	}
	#sister-jci .cont02 .head_box h3 {
    width: 200px;
		font-size: 14px;
		background-size: 190px;
    padding-top: 60px;
	}
  #sister-jci .cont02 .head_box .text01 {
    width: 410px;
  }
  #sister-jci .cont02 .lom_box {
		margin: 40px 30px 0;
	}
  #sister-jci .cont02 .lom_box .box {
    gap: 25px;
    padding-right: 25px;
  }
  #sister-jci .cont02 .lom_box .box + .box {
    margin-top: 30px;
  }
  #sister-jci .cont02 .lom_box .box .text_box {
    width: 270px;
  }
  #sister-jci .cont02 .lom_box .box h4 {
    font-size: 28px;
    margin-bottom: 10px;
    white-space: normal;
  }
  #sister-jci .cont02 .lom_box .box h4 span {
    display: block;
    margin-top: 10px;
    padding-left: 0;
    font-size: 18px;
  }
  #sister-jci .cont02 .lom_box .box .img {
    width: 295px;
    border-radius: 5px;
    overflow: hidden;
  }


  /* cont03 */
  #sister-jci .cont03 .inner::before {
    background-size: 1000px;
    width: 1000px;
    top: -65px;
  }
  #sister-jci .cont03 .inner .flex-box {
    gap: 10px;
  }
  #sister-jci .cont03 .inner .flex-box .box a {
    gap: 9px 0;
    width: 225px;
    height: 160px;
  }
  #sister-jci .cont03 .inner .flex-box .box a h4 {
    font-size: 16px;
    padding-left: 10px;
  }
  #sister-jci .cont03 .inner .flex-box .box a .img img {
    width: 205px;
    height: auto;
  }
  #sister-jci .cont03 .inner .mo_crop .arrow {
    right: 10px;
    bottom: 13px;
  	width: 20px;
    height: 20px;
  }
  #sister-jci .cont03 .inner .mo_crop .arrow::before,
  #sister-jci .cont03 .inner .mo_crop .arrow::after {
    width: 7px;
	  height: 7px;
    right: 6px;
  }
}


@media screen and (max-width: 430px) {
  #sister-jci .inner {
    width: 90%;
    margin: 0 auto;
  }
  #sister-jci .pc {
    display: none;
  }
  #sister-jci .pc02 {
    display: none;
  }
  #sister-jci .tab {
    display: none;
  }

  /* cont01 */
  #sister-jci .cont01 {
    width: 100%;
    margin: 300px auto 320px;
  }
  #sister-jci .cont01::before {
    width: 210px;
    height: 145px;
    bottom: -265px;
    left: 20px;    
  }
  #sister-jci .cont01::after {
    width: 120px;
    height: 120px;
    top: -145px;
    right: 20px;
  }
  #sister-jci .cont01 h3::before {
    width: 130px;
    height: 130px;
    bottom: -860px;
    left: 180px;
  }
  #sister-jci .cont01 h3::after {
    width: 140px;
    height: 193px;
    top: -270px;
    right: 105px;
  }
  #sister-jci .cont01 h3 {
    font-size: 18px;
    line-height: 2;
  }
  #sister-jci .cont01 .text01 {
    font-size: 16px;
    padding: 30px 0;
  }
  #sister-jci .cont01 .text02 {
    font-size: 14px;
  }
  #sister-jci .cont01 .text02 + .text02 {
    margin-top: 20px;
  }


  /* cont02 */
 	#sister-jci .cont02 {
    margin: 0 auto;
    padding: 70px 0 20px;
  }
  #sister-jci .cont02 .inner {
    width: 90%;
  }
 	#sister-jci .cont02::before {
    width: calc(100% - 40px);
  }
	#sister-jci .cont02 .head_box {
		justify-content: center;
		align-items: center;
		gap: 25px 0;
		padding: 0;
	}
	#sister-jci .cont02 .head_box h3 {
		padding: 55px 0 0;
    background: url("img/top/home_cont06_ttl01.svg")top center no-repeat;
		background-size: 190px;
    text-align: center;
	}
  #sister-jci .cont02 .head_box .text01 {
    width: 100%;
    margin-top: 5px;
    text-align: center;
  }
  #sister-jci .cont02 .lom_box {
    margin: 40px 20px 0;
  }
  #sister-jci .cont02 .lom_box .box {
    flex-direction: column-reverse;
    gap: 20px;
    padding: 20px;
  }
  #sister-jci .cont02 .lom_box .box .sp {
    display: block !important;
  }
  #sister-jci .cont02 .lom_box .box .text_box {
    width: 100%;
  }
  #sister-jci .cont02 .lom_box .box h4 {
    font-size: 24px;
    line-height: 1.2;
  }
  #sister-jci .cont02 .lom_box .box h4 span {
    font-size: 16px;
    margin-top: 8px;
  }
  #sister-jci .cont02 .lom_box .box .img {
    width: 100%;
  }
  #sister-jci .cont02 .lom_box .box .img img {
    width: 100%;
    height: auto;
  }


  /* cont03 */
  #sister-jci .cont03 .inner {
    width: 100%;
    padding: 100px 0 60px;
  }
  #sister-jci .cont03 .inner::before {
    background-size: 800px;
    width: 800px;
    top: -30px;
  }
  #sister-jci .cont03 .inner h3 {
    font-size: 26px;
    padding-top: 34px;
  }
  #sister-jci .cont03 .inner h3::before {
    width: 100%;
    font-size: 14px;
  }
  #sister-jci .cont03 .inner .text01 {
    margin: 45px 0;
  }
  #sister-jci .cont03 .inner .text01 .sp {
    display: block !important;
  }
  #sister-jci .cont03 .inner .flex-box {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }
  #sister-jci .cont03 .inner .flex-box .box a {
    gap: 14px 0;
    width: 380px;
    height: 250px;
  }
  #sister-jci .cont03 .inner .flex-box .box a h4 {
    font-size: 18px;
    padding-left: 15px;
  }
  #sister-jci .cont03 .inner .flex-box .box a .img img {
    width: 100%;
  }
  #sister-jci .cont03 .inner .mo_crop .arrow {
    right: 30px;
    bottom: 16px;
    width: 25.6px;
    height: 25.6px;
  }
  #sister-jci .cont03 .inner .mo_crop .arrow::before,
  #sister-jci .cont03 .inner .mo_crop .arrow::after {
    width: 9px;
    height: 9px;
    right: 7px;
  }

}



/*　 世界会議誘致について world-convention
------------------------------------------------------------------*/
@media screen and (min-width: 431px) {
  #world .inner {
    margin: 0 auto;
    width: 1200px;
  }
  #world .sp {
    display: none;
  }
  #world .tab {
    display: none;
  }
  #world .pc {
    display: block;
  }
}
/* cont01 */
#world .cont01 .inner .text_box {
  position: relative;
  padding: 40px 0 27px 550px;
}
#world .cont01 .inner .text_box::before {
  position: absolute;
  top: 0;
  left: -300px;
  content: "";
  width: 800px;
  height: 400px;
  background: url(img/world/world_img01.png) no-repeat center center;
  box-shadow: 35px 35px 40px rgba(0, 0, 0, 0.1);
}
#world .cont01 .inner .text_box::after {
  position: absolute;
  top: 90px;
  left: 400px;
  content: "";
  width: 800px;
  height: 1px;
  background: #09d;
}
#world .cont01 .inner .text_box h3 {
  font-size: 22px;
  font-weight: bold;
}
#world .cont01 .inner .text_box h3 span {
  color: #09d;
  font-weight: bold;
}
#world .cont01 .inner .text_box .text {
  padding-top: 50px;
  line-height: 2;
}
#world .cont01 .inner .text_box:nth-of-type(2) {
  margin-top: 67px;
  padding: 54px 0 47px 0;
}
#world .cont01 .inner .text_box:nth-of-type(2):before {
  left: 700px;
  background: url(img/world/world_img02.png) no-repeat center center;
}
#world .cont01 .inner .text_box:nth-of-type(2):after {
  top: 110px;
  left: 0px;
}
/* cont02 */
#world .cont02 {
  position: relative;
  margin-top: 135px;
}
#world .cont02:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 1200px;
  height: 1400px;
  background: #ecf8ff;
  z-index: -1;
}
#world .cont02 .inner {
  padding: 87px 0 100px;
}
#world .cont02 .inner h3 {
  padding-top: 37px;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  background: url(img/world/world_text01.png) no-repeat center top;
}
#world .cont02 .inner .text {
  text-align: center;
  line-height: 1.9;
  padding-top: 37px;
}
#world .cont02 .inner .flex-box {
  margin-top: 40px;
  display: flex;
  gap: 30px;
}
#world .cont02 .inner .flex-box .box {
  margin-top: 100px;
  width: 380px;
  display: flex;
  flex-direction: column;
}
#world .cont02 .inner .flex-box .box:nth-of-type(2) {
  margin-top: 50px;
}
#world .cont02 .inner .flex-box .box:nth-of-type(3) {
  margin-top: 0px;
}
#world .cont02 .inner .flex-box .box h4 {
  position: relative;
  padding: 30px 0;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  order: 2;
}
#world .cont02 .inner .flex-box .box h4:before {
  content: "";
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: block;
  width: 20px;
  height: 3px;
  background: #09d;
}
#world .cont02 .inner .flex-box .box .box-text {
  padding: 0 30px;
  order: 3;
  line-height: 1.9;
}
#world .cont02 .inner .flex-box .box .img {
  order: 1;
  box-shadow: 30px 30px 50px rgba(0, 0, 0, 0.1);
}
#world .cont02 .inner .schedule {
  margin-top: 43px;
}
#world .cont02 .inner .schedule .title {
  background: #09d;
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
#world .cont02 .inner .schedule .schedule-flex-box {
  padding: 40px;
  display: flex;
  gap: 36px;
  background: #fff;
  box-shadow: 25px 25px 30px rgba(0, 0, 0, 0.1);
}
#world .cont02 .inner .schedule .schedule-flex-box .box {
  position: relative;
}
#world .cont02 .inner .schedule .schedule-flex-box .box h4 {
  padding: 1px 8px 0;
  position: absolute;
  bottom: 0;
  left: 0;
  font-size: 18px;
  font-weight: bold;
  background: #fff;
}
/* cont03 */
#world .cont03 .inner {
  position: relative;
  padding: 120px 0 100px;
}
#world .cont03 .inner:before {
  position: absolute;
  top: 395px;
  left: -300px;
  content: url(img/world/world_img09.png);
  filter: drop-shadow(35px 35px 40px rgba(0 0 0 / 0.1));
}
#world .cont03 .inner:after {
  position: absolute;
  top: 125px;
  right: -300px;
  content: url(img/world/world_img12.png);
  filter: drop-shadow(35px 35px 40px rgba(0 0 0 / 0.1));
}
#world .cont03 .inner h3 {
  padding: 35px 0 50px;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  background: url(img/world/world_text02.png) no-repeat center top;
}
#world .cont03 .inner .text {
  position: relative;
  margin: 0 auto;
  width: 980px;
  line-height: 1.9;
}
#world .cont03 .inner .text:before {
  position: absolute;
  top: 775px;
  left: -410px;
  content: url(img/world/world_img11.png);
  filter: drop-shadow(35px 35px 40px rgba(0 0 0 / 0.1));
}
#world .cont03 .inner .text:after {
  position: absolute;
  top: 724px;
  right: -360px;
  content: url(img/world/world_img14.png);
  filter: drop-shadow(35px 35px 40px rgba(0 0 0 / 0.1));
}

/* cont04 */
#world .cont04 {
  position: relative;
}
#world .cont04:before {
  position: absolute;
  top: 0;
  right: 0;
  content: "";
  width: 1200px;
  height: 1420px;
  background: #ecf8ff;
  z-index: -1;
}
#world .cont04 .inner {
  padding: 82px 0 50px;
}
#world .cont04 .inner h3 {
  padding: 35px 0 50px;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  background: url(img/world/world_text03.png) no-repeat center top;
}
#world .cont04 .inner .flex-box {
  display: flex;
  justify-content: center;
  gap: 30px;
}
#world .cont04 .inner .flex-box .box {
  display: flex;
  flex-direction: column;
}
#world .cont04 .inner .flex-box .box h4 {
  padding-top: 12px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  order: 2;
}
#world .cont04 .inner .flex-box .box .box-text {
  padding-top: 14px;
  text-align: center;
  line-height: 1.9;
  order: 3;
}
#world .cont04 .inner .flex-box .box .img {
  width: 380px;
  height: 380px;
  background: rgba(0 153 221 / 21%);
  border-radius: 50%;
  order: 1;
}
#world .cont04 .inner .flex-box .box .img img {
  padding: 25px;
  display: block;
  /* border-radius: 50%; */
  /* overflow: hidden; */
}

@media screen and (max-width: 1200px) {
  #world .cont03 .inner:before {
    display: none;
  }
  #world .cont03 .inner:after {
    top: 500px;
    right: -200px;
  }
  #world .cont03 .inner .text:before {
    top: -315px;
    left: -130px;
  }
  #world .cont03 .inner .text:after {
    border: 1px solid #0f0;
    display: none;
  }
}
@media screen and (max-width: 768px) {
  #world .inner {
    margin: 0 auto;
    width: 700px;
  }
  #world .pc {
    display: none;
  }
  #world .tab {
    display: block;
  }

  #world .cont01 .inner .text_box {
    padding-left: 0;
    padding-bottom: 425px;
  }
  #world .cont01 .inner .text_box::before {
    width: 700px;
    top: 395px;
    left: -35px;
  }
  #world .cont01 .inner .text_box::after {
    left: -30px;
    width: 100%;
  }
  #world .cont01 .inner .text_box:nth-of-type(2) {
    padding-bottom: 425px;
  }
  #world .cont01 .inner .text_box:nth-of-type(2):before {
    top: 375px;
    left: 40px;
  }
  #world .cont02 {
    margin-top: 90px;
  }
  #world .cont02 .inner .flex-box {
    flex-direction: column;
  }
  #world .cont02 .inner .flex-box .box {
    margin-top: 0 !important;
    padding-left: 370px;
    position: relative;
    width: 100%;
    height: 250px;
    box-sizing: border-box;
  }
  #world .cont02 .inner .flex-box .box.box:nth-of-type(2) {
    padding: 0 350px 0 0;
  }
  #world .cont02 .inner .flex-box .box h4 {
    text-align: left;
  }
  #world .cont02 .inner .flex-box .box h4:before {
    right: auto;
  }
  #world .cont02 .inner .flex-box .box .box-text {
    padding: 0;
    text-align: left;
  }
  #world .cont02 .inner .flex-box .box .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 350px;
  }
  #world .cont02 .inner .flex-box .box .img img {
    width: 100%;
  }
  #world .cont02 .inner .flex-box .box:nth-of-type(2) .img {
    left: auto;
    right: 0;
  }
  #world .cont02 .inner .flex-box .box:nth-of-type(3) h4 {
    font-size: 19px;
  }
  #world .cont02 .inner .schedule .schedule-flex-box {
    padding: 33px;
    gap: 33px;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box {
    position: static;
    width: 190px;
    display: flex;
    flex-direction: column-reverse;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box h4 {
    padding: 5px 0 0;
    position: static;
    font-size: 16px;
    text-align: center;
    width: 100%;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box .img {
    height: 190px;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box .img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #world .cont03 .inner {
    padding: 90px 0 90px;
  }
  #world .cont03 .inner .text {
    width: 700px;
  }
  #world .cont03 .inner::before {
    display: none;
  }
  #world .cont03 .inner::after {
    display: none;
  }
  #world .cont03 .inner .text::before {
    display: none;
  }
  #world .cont03 .inner .text::after {
    display: none;
  }
  #world .cont04 .inner .flex-box {
    width: 700px;
  }
  #world .cont04 .inner .flex-box {
    gap: 15px;
  }
  #world .cont04 .inner .flex-box .box .img {
    width: 222px;
    height: 222px;
  }
  #world .cont04 .inner .flex-box .box .img img {
    padding: 11px;
    width: 200px;
    height: 200px;
  }
  #world .cont04 .inner .flex-box .box h4 {
    font-size: 18px;
  }
  #world .cont04 .inner .flex-box .box .box-text {
    font-size: 14px;
  }
}

@media screen and (max-width: 430px) {
  #world .inner {
    width: 90%;
    margin: 0 auto;
  }
  #world .pc {
    display: none;
  }
  #world .tab {
    display: none;
  }

  /* cont01 */
  #world .cont01 .inner .text_box {
    padding: 0 0 123px;
  }
  #world .cont01 .inner .text_box::before {
    display: block;
    width: 100%;
    height: 193px;
    top: 480px;
    left: 0;
    background-size: contain;
    box-shadow: none;
  }
  #world .cont01 .inner .text_box::after {
    top: 71px;
    left: 0;
    width: 100%;
  }
  #world .cont01 .inner .text_box .text {
    padding-top: 25px;
  }
  #world .cont01 .inner .text_box h3 {
    font-size: 18px;
    line-height: 1.6;
  }
  #world .cont01 .inner .text_box:nth-of-type(2) {
    padding-bottom: 205px;
  }
  #world .cont01 .inner .text_box:nth-of-type(2):after {
    top: 125px;
  }
  #world .cont01 .inner .text_box:nth-of-type(2):before {
    top: 533px;
    left: 0;
  }

  /* cont02 */
  #world .cont02 {
    margin-top: 50px;
    background: #ecf8ff;
  }
  #world .cont02:before {
    display: none;
  }
  #world .cont02 .inner {
    padding: 50px 0;
  }
  #world .cont02 .inner h3 {
    padding-top: 20px;
    font-size: 22px;
    background-size: 220px;
  }
  #world .cont02 .inner .text {
    padding-top: 20px;
  }
  #world .cont02 .inner .flex-box {
    margin-top: 34px;
  }
  #world .cont02 .inner .flex-box .box {
    flex-direction: column;
    padding: 0;
    height: auto;
  }
  #world .cont02 .inner .flex-box .box h4 {
    margin-bottom: 7px;
    padding: 15px 0;
    font-size: 18px;
    text-align: center;
  }
  #world .cont02 .inner .flex-box .box h4::before {
    top: 50px;
    right: 0;
  }
  #world .cont02 .inner .flex-box .box .img {
    position: static;
    width: 100%;
    box-shadow: none;
  }
  #world .cont02 .inner .flex-box .box.box:nth-of-type(2) {
    padding: 0;
  }
  #world .cont02 .inner .schedule {
    margin-top: 33px;
  }
  #world .cont02 .inner .schedule .title {
    font-size: 20px;
  }
  #world .cont02 .inner .schedule .schedule-flex-box {
    padding: 20px;
    flex-direction: column;
    gap: 20px;
    box-shadow: none;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box {
    position: relative;
    width: 100%;
  }
  #world .cont02 .inner .schedule .schedule-flex-box .box h4 {
    padding: 1px 8px 0;
    position: absolute;
    bottom: -1px;
    left: -1px;
    width: auto;
  }


  /* cont03 */
  #world .cont03 .inner {
    padding: 50px 0;
  }
  #world .cont03 .inner h3 {
    padding: 20px 0 30px;
    font-size: 22px;
    background-size: 369px;
  }
  #world .cont03 .inner .text {
    width: 100%;
  }


  /* cont04 */
  #world .cont04 {
    background: #ecf8ff;
  }
  #world .cont04:before {
    display: none;
  }
  #world .cont04 .inner {
    padding: 50px 0 70px;
  }
  #world .cont04 .inner h3 {
    padding: 20px 0 30px;
    font-size: 22px;
    background-size: 220px;
  }
  #world .cont04 .inner .flex-box {
    flex-direction: column;
    gap: 20px;
    width: 100%;
  }
  #world .cont04 .inner .flex-box:nth-of-type(2){
    margin-top: 20px;
  }
  #world .cont04 .inner .flex-box .box h4 {
    font-size: 16px;
  }
  #world .cont04 .inner .flex-box .box .img {
    margin: 0 auto;
  }
  #world .cont04 .inner .flex-box .box .box-text {
    width: 310px;
    margin: 0 auto;
  }
  #world .more_info {
    margin-top: 0;
  }
}



/*　BCP作成システム
------------------------------------------------------------------*/
@media (min-width: 431px) {
  #bcp02 {
    letter-spacing: 1px;
  }
  #bcp02 .sub_ttl01 {
    background: url(img/bcp02/bcp02_key.png) center center/cover no-repeat;
    color: #fff;
  }
  #bcp02 .cont01 {
    background: url(img/bcp02/bcp02_img01.png) no-repeat center / cover;
    padding: 90px 0;
  }
  #bcp02 .cont01 h3 {
    font-size: 30px;
    line-height: 1.5;
    font-weight: bold;
    text-align: center;
    color: #fff;
  }
  #bcp02 .cont01 .text {
    margin-top: 45px;
    line-height: 3;
    color: #fff;
    text-align: center;
  }

  #bcp02 .cont02 {
    margin: 100px auto 0;
  }
  #bcp02 .cont02 h3 {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 45px;
    background: url(img/bcp02/bcp02_ttl01.png) no-repeat bottom left;
  }
  #bcp02 .cont02 .box01 {
    position: relative;
    box-sizing: border-box;
    padding: 60px 0 55px 925px;
    max-width: 1800px;
    margin: auto;
  }
  #bcp02 .cont02 .box01 .img img {
    max-width: 100%;
    height: auto;
  }
  #bcp02 .cont02 .box01 .text_box {
    padding-left: 25px;
    margin-left: 25px;
    width: 50%;
    flex-shrink: 0;
  }
  #bcp02 .cont02 .box01::before {
    content: "";
    width: 100vw;
    min-width: 1400px;
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(50% - 300px);
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box01::after {
    content: "";
    width: 48%;
    height: 470px;
    background: url(img/bcp02/bcp02_img02.png) no-repeat center / 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  #bcp02 .cont02 .box01 .text {
    margin-top: 40px;
    line-height: 2;
  }
  @media (max-width: 1800px) {
    #bcp02 .cont02 .box01 {
      padding: 60px 0 55px 51%;
    }
    #bcp02 .cont02 .box01 h3 {
      font-size: 22px;
    }
    #bcp02 .cont02 .box01 .text {
      font-size: 14px;
    }
  }
  @media (max-width: 1500px) {
    #bcp02 .cont02 .box01 .text {
      font-size: 12px;
      letter-spacing: -0.3px;
    }
  }

  #bcp02 .cont02 .box02 {
    max-width: 1200px;
    margin: 50px auto 0;
    padding: 70px 20px 60px;
    box-sizing: border-box;
    position: relative;
  }
  #bcp02 .cont02 .box02::before {
    content: "";
    width: 100vw;
    min-width: 1400px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 500px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box02::after {
    content: url(img/bcp02/bcp02_img07.png);
    position: absolute;
    top: 0;
    right: -300px;
    z-index: -1;
  }
  #bcp02 .cont02 .box02 h3 {
    background: url(img/bcp02/bcp02_ttl02.png) no-repeat bottom left;
  }
  #bcp02 .cont02 .box02 .text {
    margin: 40px 0 60px;
  }
  #bcp02 .cont02 .box02 .box_item {
    background: #fff;
    box-shadow: 0 3px 0 rgba(0, 0, 0, 0.15);
    padding: 55px 0 25px 45px;
    margin-left: 10px;
    position: relative;
    width: 900px;
    box-sizing: border-box;
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(2) {
    margin: 55px 0;
  }
  #bcp02 .cont02 .box02 .box_item::before {
    content: url(img/bcp02/bcp02_img03.png);
    position: absolute;
    top: -15px;
    left: -10px;
  }
  #bcp02 .cont02 .box02 .box_item::after {
    content: url(img/bcp02/bcp02_img04.png);
    position: absolute;
    top: -10px;
    right: 15px;
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(2):after {
    content: url(img/bcp02/bcp02_img05.png);
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(3):after {
    content: url(img/bcp02/bcp02_img06.png);
  }
  #bcp02 .cont02 .box02 .box_item h4 {
    position: absolute;
    top: 0;
    left: 45px;
    font-size: 20px;
    font-weight: bold;
    color: #000003;
    line-height: 1;
  }
  #bcp02 .cont02 .box02 .box_item .text02 {
    line-height: 2;
  }

  #bcp02 .cont02 .box03 {
    margin: 50px auto 0;
    padding: 60px 20px 70px;
    box-sizing: border-box;
    max-width: 1200px;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    position: relative;
  }
  #bcp02 .cont02 .box03::before {
    content: "";
    width: 100vw;
    min-width: 1400px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 300px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box03 h3 {
    background: none;
  }
  #bcp02 .cont02 .box03 .text_box {
    margin-left: 40px;
  }
  #bcp02 .cont02 .box03 .text_box .text {
    letter-spacing: 0;
    line-height: 2;
  }
  #bcp02 .cont02 .box03 .img {
    position: relative;
    margin-top: -20px;
    margin-left: 20px;
  }
  #bcp02 .cont02 .box03 .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1f9bde;
    position: absolute;
    top: 20px;
    left: -20px;
    z-index: -1;
  }

  #bcp02 .cont02 .box04 {
    margin: 50px auto 0;
    padding: 100px 20px;
    box-sizing: border-box;
    max-width: 1800px;
    position: relative;
  }
  #bcp02 .cont02 .box04::before {
    content: "";
    width: 100vw;
    min-width: 1400px;
    height: 100%;
    position: absolute;
    top: 0;
    right: calc(50% - 300px);
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box04::after {
    content: "";
    width: 48%;
    height: 470px;
    background: url(img/bcp02/bcp02_img09.png) no-repeat center / 100%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
  #bcp02 .cont02 .box04 h3 {
    background: none;
    padding-bottom: 25px;
  }
  #bcp02 .cont02 .box04 .text_box {
    max-width: 1200px;
    margin: auto;
  }
  #bcp02 .cont02 .box04 .text_box .text {
    line-height: 2;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box {
    margin: 30px 0;
    display: flex;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn:nth-of-type(2) {
    margin-left: 15px;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn a {
    display: block;
    width: 280px;
    height: 50px;
    line-height: 50px;
    font-weight: bold;
    border: 2px solid #48abe3;
    border-radius: 10px;
    padding-left: 75px;
    box-sizing: border-box;
    letter-spacing: 0;
    font-size: 16px;
    background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 42px #fff;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn:nth-of-type(2) a {
    padding-left: 50px;
    background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 20px #fff;
  }
  #bcp02 .cont02 .box04 .text_box .text02 {
    padding-left: 18px;
    position: relative;
  }
  #bcp02 .cont02 .box04 .text_box .text02::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
  }
  #bcp02 .cont02 .box04 .text_box .text02 a {
    color: #fe0000;
    text-decoration: underline;
  }
  @media (max-width: 1500px) {
    #bcp02 .cont02 .box04 .text_box .text {
      font-size: 14px;
    }
    #bcp02 .cont02 .box04 .text_box .btn_box .btn a {
      display: block;
      width: 250px;
      height: 50px;
      line-height: 50px;
      border-radius: 10px;
      padding-left: 68px;
      font-size: 14px;
      background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 40px /
        17px #fff;
    }
    #bcp02 .cont02 .box04 .text_box .btn_box .btn:nth-of-type(2) a {
      padding-left: 45px;
      background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 19px /
        17px #fff;
    }
    #bcp02 .cont02 .box04 .text_box .text02 {
      font-size: 14px;
    }
    #bcp02 .cont02 .box04::after {
      width: 52%;
    }
  }
  @media (max-width: 768px) {
    #bcp02 .cont02 .box04 .text_box .btn_box .btn {
      padding: 0 !important;
    }
  }
  #bcp02 .cont02 .btn02 a {
    display: block;
    margin: 85px auto 0;
    text-align: center;
    width: 330px;
    height: 60px;
    line-height: 62px;
    color: #fff;
    font-weight: bold;
    background: #1f9bde;
    border-radius: 10px;
  }

  /* cont03 防災フォームcss */
  #bcp02 .cont03 .pc {
    display: block;
  }
  #bcp02 .cont03 .sp {
    display: none;
  }
  #bcp02 .cont03 ::placeholder {
    color: #aaaaaa;
  }
  #bcp02 .cont03 {
    width: 1000px;
    margin: 100px auto 0;
  }
  #bcp02 .cont03 h3 {
    font-size: 24px;
    text-align: center;
    font-weight: bold;
  }
  #bcp02 .cont03 .text01 {
    text-align: center;
    margin-top: 40px;
    line-height: 2;
  }
  #bcp02 .cont03 h4 {
    font-size: 20px;
    font-weight: bold;
    margin-top: 60px;
    padding-bottom: 15px;
    position: relative;
  }
  #bcp02 .cont03 h4::before {
    content: "";
    width: 100%;
    height: 2px;
    background: linear-gradient(
      90deg,
      #1d2088 200px,
      #1f9bde 200px,
      #1f9bde 100%
    );
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #bcp02 .cont03 .block00 .box01 {
    margin-top: 25px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 0;
  }
  #bcp02 .cont03 .block00 .box01 dt {
    width: 300px;
  }
  #bcp02 .cont03 .block00 .box01 dt.info01 {
    margin-top: 0;
    margin-bottom: auto;
  }
  #bcp02 .cont03 .block00 .box01 dd {
    width: calc(100% - 300px);
    white-space: nowrap;
  }
  #bcp02 .cont03 .block00 .box01 dd input {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd input:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block00 .box01 dd input.yubin01 {
    width: 90px;
    margin: 0 5px 0 0;
  }
  #bcp02 .cont03 .block00 .box01 dd input.yubin02 {
    width: 150px;
    margin-left: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.name01,
  #bcp02 .cont03 .block00 .box01 dd input.tel01 {
    width: 630px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.tel01 {
    margin-top: 10px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.manager01 {
    width: 595px;
  }
  #bcp02 .cont03 .block00 .box01 dd span {
    display: flex;
    align-items: center;
    margin-top: 10px;
  }
  #bcp02 .cont03 .block00 .box01 dd textarea {
    width: 595px;
    height: 150px;
    resize: none;
    padding: 15px;
    box-sizing: border-box;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd textarea:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block07 .text02 {
    margin-top: 15px;
  }
  #bcp02 .cont03 .block07 .box01 {
    display: flex;
    margin-top: 10px;
  }
  #bcp02 .cont03 .block07 .box01 input {
    width: 50px;
    font-size: 12px;
    padding: 10px 0 10px 10px;
    box-sizing: border-box;
    margin-left: 5px;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block07 .box01 input:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block07 .box01 p {
    margin-right: 15px;
  }
  #bcp02 .cont03 .block03 .box01 {
    margin-top: 20px;
  }
  #bcp02 .cont03 .block03 .box01 input {
    padding: 15px 15px 13px;
    box-sizing: border-box;
    width: 100px;
    text-align: center;
    margin: 0 10px;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block03 .box01 input:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block03 .box02 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px 0;
    margin-top: 15px;
  }
  #bcp02 .cont03 .block03 .box02 dt {
    width: 300px;
    display: flex;
    align-items: center;
  }
  #bcp02 .cont03 .block03 .box02 dt input[type="checkbox"] {
    border-radius: 0 !important;
    border: 1px solid #535353;
    width: 15px;
    height: 15px;
    margin: 0;
  }
  #bcp02 .cont03 .block03 .box02 dt label {
    margin-left: 10px;
  }
  #bcp02 .cont03 .block03 .box02 dd {
    width: calc(100% - 300px);
  }
  #bcp02 .cont03 .block03 .box02 dd input {
    padding: 15px 15px 13px;
    box-sizing: border-box;
    width: 100%;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block03 .box02 dd input:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block03 .box02 dd input.jishin01 {
    width: 100px;
    text-align: center;
    margin: 0 10px;
  }
  #bcp02 .cont03 .block04 .text02 {
    margin: 20px 0;
  }
  #bcp02 .cont03 .block04 .box01 {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid;
    border-left: 1px solid;
  }
  #bcp02 .cont03 .block04 .box01 dt,
  #bcp02 .cont03 .block04 .box01 dd {
    border-bottom: 1px solid;
    border-right: 1px solid;
  }
  #bcp02 .cont03 .block04 .box01 dt {
    width: 200px;
    background: #dff0f7;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-left: 15px;
    box-sizing: border-box;
    letter-spacing: -0.3px;
  }
  #bcp02 .cont03 .block04 .box01 dd {
    box-sizing: border-box;
    padding: 10px 15px;
    font-size: 14px;
    letter-spacing: 0;
  }
  #bcp02 .cont03 .block04 .box01 dd.blue {
    background: #dff0f7;
    font-weight: bold;
    padding: 5px 15px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd01 {
    width: 300px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd02 {
    width: calc(100% - 500px);
    padding: 5px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd02.blue {
    padding: 5px 5px 5px 10px;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea {
    width: 100%;
    height: 90px;
    box-sizing: border-box;
    padding: 10px 10px 10px 5px;
    resize: none;
    display: block;
    border: none;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea.place02 {
    height: 50px;
    margin-top: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block04 .box01 dd .text03 {
    font-size: 14px;
  }
  #bcp02 .cont03 .block04 .box01 dd input.place {
    width: 180px;
    box-sizing: border-box;
    padding: 5px 10px;
    margin: 0 5px;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block04 .box01 dd input.place:focus {
    outline: 1px #777777 solid;
  }

  #bcp02 .cont03 .block05 h4 span {
    font-size: 16px;
    margin-left: 15px;
  }
  #bcp02 .cont03 .block05 h5 {
    margin-top: 20px;
    font-size: 18px;
    font-weight: bold;
  }
  #bcp02 .cont03 .block05 h5:nth-of-type(2) {
    margin-top: 30px;
  }
  #bcp02 .cont03 .block05 h5::before {
    content: "■";
    padding-right: 5px;
    color: #1f9bde;
  }
  #bcp02 .cont03 .block05 h5 span {
    font-size: 14px;
    margin-left: 15px;
  }
  #bcp02 .cont03 .block05 .text04 {
    font-size: 14px;
    margin: 10px 0 13px;
  }
  #bcp02 .cont03 .block05 table {
    border-collapse: collapse;
    border: 1px solid;
    width: 100%;
    box-sizing: border-box;
  }
  #bcp02 .cont03 .block05 table th,
  #bcp02 .cont03 .block05 table td {
    box-sizing: border-box;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: -0.3px;
    line-height: 1.5;
    border: 1px solid;
    padding: 10px;
    vertical-align: middle;
  }
  #bcp02 .cont03 .block05 table th {
    background: #e0f0f7;
    white-space: nowrap;
  }
  #bcp02 .cont03 .block05 table th span {
    font-size: 12px;
    font-weight: bold;
  }
  #bcp02 .cont03 .block05 table th:first-of-type {
    width: 120px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(2) {
    width: 90px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(3) {
    width: 100px;
  }
  #bcp02 .cont03 .block05 table td.input_td {
    padding: 5px;
  }
  #bcp02 .cont03 .block05 table td.input_td input {
    border: none;
  }
  #bcp02 .cont03 .block05 table td.bichiku {
    width: 125px;
  }
  #bcp02 .cont03 .block05 table td input {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 8px 10px 6px 7px;
    border: none;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block05 table td input:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block05 table td input.input01 {
    width: 40px;
    text-align: center;
    padding: 5px;
    margin-right: 5px;
    border: 1px solid rgb(118, 118, 118);
  }
  #bcp02 .cont03 .block05 table td input.input02 {
    width: 100%;
    border: none;
  }
  #bcp02 .cont03 .block05 .box03 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
  }
  #bcp02 .cont03 .block05 .box03 label {
    line-height: 1.5;
  }
  #bcp02 .cont03 .block05 .box03 dd {
    line-height: 1.4;
  }
  #bcp02 .cont03 .block05 .box03 dd {
    margin: 0 12px 0 5px;
  }
  #bcp02 .cont03 .block05 .box03 dt:nth-of-type(n + 4),
  #bcp02 .cont03 .block05 .box03 dd:nth-of-type(n + 4) {
    margin-top: 20px;
  }
  #bcp02 .cont03 .block05 .box03 dd input {
    padding: 5px 10px;
    box-sizing: border-box;
    border: none;
    margin-top: 1px;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block05 .box03 dd input:focus {
    outline: 1px #777777 solid;
  }

  #bcp02 .cont03 .block06 h4 span {
    font-size: 16px;
    margin-left: 15px;
  }
  #bcp02 .cont03 .block06 .box01 {
    display: flex;
    margin-top: 20px;
  }
  #bcp02 .cont03 .block06 .box01 label {
    margin-left: 3px;
  }
  #bcp02 .cont03 .block06 .box01 p:nth-of-type(n + 2) {
    margin-left: 45px;
  }
  #bcp02 .cont03 .block06 .box01 input[type="text"] {
    border: none;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block06 .box01 input[type="text"]:focus {
    outline: 1px #777777 solid;
  }

  #bcp02 .cont03 .block02 .box01 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    border-collapse: collapse;
    /* border: 1px solid; */
  }
  #bcp02 .cont03 .block02 .box01 th,
  #bcp02 .cont03 .block02 .box01 td {
    border: 1px solid;
    box-sizing: border-box;
  }
  #bcp02 .cont03 .block02 .box01 th {
    background: #e0f0f7;
    font-weight: bold;
    padding: 15px;
  }
  #bcp02 .cont03 .block02 .box01 td {
    padding: 5px;
    line-height: 1;
  }
  #bcp02 .cont03 .block02 .box01 td:nth-of-type(1) {
    width: 700px;
  }
  #bcp02 .cont03 .block02 .box01 td:nth-of-type(2) {
    width: 300px;
  }
  #bcp02 .cont03 .block02 .box01 td input {
    padding: 15px 10px;
    box-sizing: border-box;
    width: 100%;
    border: none;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block02 .box01 td input:focus {
    outline: 1px #777777 solid;
  }

  #bcp02 .cont03 .block08 table {
    margin-top: 20px;
    width: 100%;
    border-collapse: collapse;
  }
  #bcp02 .cont03 .block08 table th,
  #bcp02 .cont03 .block08 table td {
    border: 1px solid;
    box-sizing: border-box;
    vertical-align: middle;
  }
  #bcp02 .cont03 .block08 table td {
    padding: 5px;
  }
  #bcp02 .cont03 .block08 table th {
    background: #e0f0f7;
    font-weight: bold;
    padding: 10px 15px;
  }
  #bcp02 .cont03 .block08 table td textarea {
    display: block;
    box-sizing: border-box;
    padding: 10px;
    width: 100%;
    height: 90px;
    resize: none;
    border: none;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block08 table td textarea:focus {
    outline: 1px #777777 solid;
  }
  #bcp02 .cont03 .block08 table td:first-of-type {
    width: 200px;
  }

  #bcp02 .cont03 input[type="submit"] {
    display: block;
    margin: 80px auto 0;
    text-align: center;
    width: 330px;
    height: 61px;
    padding: 20px 0 17px;
    border: 2px solid #1f9bde;
    box-sizing: border-box;
    color: #fff;
    font-weight: bold;
    background: #1f9bde;
    border-radius: 10px;
    margin-left: 160px;
    transition: all 0.3s;
  }
  #bcp02 .cont03 input[type="submit"]:hover {
    cursor: pointer;
    background: #fff;
    color: #1f9bde;
    border: 2px solid #1f9bde;
    transition: all 0.3s;
  }
  #bcp02 .cont03 .kioku {
    pointer-events: none;
  }
  #bcp02 .cont03 .kioku input[type="submit"] {
    border: 2px solid #1f9bde;
    background: #fff;
    color: #1f9bde;
    margin-top: -60px;
    margin-left: 520px;
    pointer-events: all;
  }
  #bcp02 .cont03 .kioku input[type="submit"]:hover {
    border: 2px solid #1f9bde;
    background: #1f9bde;
    color: #fff;
  }
  #bcp02 .cont03 .notice_list {
    margin: 65px auto 100px;
    padding-left: 210px;
  }
  #bcp02 .cont03 .notice_list li:nth-of-type(n + 2) {
    margin-top: 5px;
  }
  #bcp02 .cont03 input[type="submit"].kioku_remove {
    width: auto;
    height: auto;
    background: none;
    color: #000;
    font-size: 16px;
    font-weight: normal;
    margin: 0;
    display: inline;
    border: none;
    border-bottom: 1px solid;
    padding: 0;
    border-radius: 0;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #bcp02 {
    letter-spacing: 0;
  }

  /* cont01 */
  #bcp02 .cont01 h3 {
    font-size: 22px;
  }
  #bcp02 .cont01 .text {
    padding: 0 30px;
    font-size: 14px;
  }

  /* cont02 */
  #bcp02 .cont02 .box01 {
    padding: 410px 30px 55px;
  }
  #bcp02 .cont02 .box01::before {
    height: calc(100% - 100px);
    top: 100px;
    left: 150px;
  }
  #bcp02 .cont02 .box01::after {
    content: "";
    width: calc(100% - 60px);
    height: 380px;
    background: url(img/bcp02/bcp02_img02.png) no-repeat center / 100%;
    position: absolute;
    top: 0;
    left: 30px;
    transform: none;
  }
  #bcp02 .cont02 .box01 .text {
    font-size: 16px;
  }
  #bcp02 .cont02 .box01 .text .pc {
    display: none;
  }

  #bcp02 .cont02 .box02 {
    padding: 410px 30px 60px;
  }
  #bcp02 .cont02 .box02::before {
    right: 150px;
    top: 100px;
    height: calc(100% - 100px);
  }
  #bcp02 .cont02 .box02::after {
    content: "";
    width: calc(100% - 60px);
    height: 380px;
    background: url(img/bcp02/bcp02_img07_tab.png) no-repeat center / 100%;
    position: absolute;
    top: 0;
    left: 30px;
    z-index: -1;
  }
  #bcp02 .cont02 .box02 .box_item {
    width: 100%;
    margin-left: 0px;
    box-shadow: 3px 3px 0 rgb(0 0 0 / 15%);
  }
  #bcp02 .cont02 .box02 .box_item::after {
    content: url(img/bcp02/bcp02_img04.png);
    position: absolute;
    top: -10px;
    right: -15px;
    transform: scale(0.7);
  }

  #bcp02 .cont02 .box03 {
    padding: 80px 30px 70px;
    width: auto;
    flex-direction: column-reverse;
    align-items: flex-start;
  }
  #bcp02 .cont02 .box03::before {
    left: 150px;
  }
  #bcp02 .cont02 .box03 .text_box {
    margin-left: 0;
    margin-top: 50px;
  }
  #bcp02 .cont02 .box03 .text_box .text br {
    display: none;
  }
  #bcp02 .cont02 .box03 h3 {
    padding-bottom: 30px;
  }

  #bcp02 .cont02 .box04 {
    padding: 415px 30px 100px;
  }
  #bcp02 .cont02 .box04::before {
    height: calc(100% - 100px);
    top: 100px;
    right: 150px;
  }
  #bcp02 .cont02 .box04::after {
    content: "";
    width: calc(100% - 60px);
    height: 380px;
    background: url(img/bcp02/bcp02_img09.png) no-repeat center / 100%;
    position: absolute;
    top: 0;
    right: auto;
    left: 30px;
    transform: none;
  }
  #bcp02 .cont02 .box04 .text_box .text {
    font-size: 16px;
  }
  #bcp02 .cont02 .box04 .text_box .text br {
    display: none;
  }

  /* cont03 */
  #bcp02 .cont03 {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #bcp02 .cont03 .block00 .box01 dt {
    font-size: 14px;
    width: 250px;
  }
  #bcp02 .cont03 .block00 .box01 dd {
    font-size: 14px;
    width: calc(100% - 250px);
  }
  #bcp02 .cont03 .block00 .box01 dd input.name01,
  #bcp02 .cont03 .block00 .box01 dd input.tel01 {
    width: 430px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.manager01 {
    width: 403px;
  }

  #bcp02 .cont03 .block04 .box01 dt {
    font-size: 14px;
    width: 170px;
  }
  #bcp02 .cont03 .block04 .box01 dd {
    font-size: 14px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd01 {
    width: 250px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd02 {
    width: calc(100% - 420px);
  }

  #bcp02 .cont03 .block05 h5 span {
    font-size: 13px;
  }
  #bcp02 .cont03 .block05 .box03 dd {
    margin: 0 50px 0 5px;
  }
  #bcp02 .cont03 .block05 .box03 dt:nth-of-type(n + 3),
  #bcp02 .cont03 .block05 .box03 dd:nth-of-type(n + 3) {
    margin-top: 20px;
  }

  #bcp02 .cont03 input[type="submit"] {
    margin-left: 20px;
  }
  #bcp02 .cont03 .kioku input[type="submit"] {
    margin-left: 390px;
  }
  #bcp02 .cont03 .notice_list {
    padding-left: 35px;
  }
}

@media (max-width: 430px) {
  .pc {
    display: none;
  }
  #bcp02 .sub_ttl01 {
    background: url(img/bcp02/bcp02_key_sp.png) center center/cover no-repeat;
    color: #fff;
  }

  #bcp02 .cont01 {
    background: url(img/bcp02/bcp02_img01_sp.png) no-repeat center / cover;
    padding: 70px 30px 60px;
  }
  #bcp02 .cont01 h3 {
    font-size: 22px;
    line-height: 1.7;
    font-weight: bold;
    text-align: center;
    color: #fff;
  }
  #bcp02 .cont01 .text {
    margin-top: 30px;
    font-size: 14px;
    line-height: 2.5;
    color: #fff;
  }

  #bcp02 .cont02 {
    margin: 100px auto 0;
  }
  #bcp02 .cont02 h3 {
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 35px;
    background: url(img/bcp02/bcp02_ttl01.png) no-repeat bottom left / 140px;
  }
  #bcp02 .cont02 .box01 {
    position: relative;
    box-sizing: border-box;
    padding: 250px 15px 45px;
  }
  #bcp02 .cont02 .box01 .img img {
    max-width: 100%;
    height: auto;
  }
  #bcp02 .cont02 .box01::before {
    content: "";
    width: 100%;
    height: 90%;
    position: absolute;
    bottom: 0;
    left: 70px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box01::after {
    content: "";
    width: 400px;
    height: 220px;
    background: url(img/bcp02/bcp02_img02_sp.png) no-repeat center / 100%;
    position: absolute;
    top: 0;
    left: 15px;
  }
  #bcp02 .cont02 .box01 .text {
    margin-top: 30px;
    line-height: 2;
    font-size: 14px;
  }

  #bcp02 .cont02 .box02 {
    margin: 50px auto 0;
    padding: 230px 20px 50px;
    box-sizing: border-box;
    position: relative;
  }
  #bcp02 .cont02 .box02::before {
    content: "";
    width: 100%;
    height: 94%;
    position: absolute;
    bottom: 0;
    right: 70px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box02::after {
    content: url(img/bcp02/bcp02_img07_sp.png);
    position: absolute;
    top: 0;
    left: 15px;
    z-index: -1;
  }
  #bcp02 .cont02 .box02 h3 {
    background: url(img/bcp02/bcp02_ttl02.png) no-repeat bottom left / 95px;
  }
  #bcp02 .cont02 .box02 .text {
    margin: 30px 0 45px;
  }
  #bcp02 .cont02 .box02 .box_item {
    background: #fff;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
    padding: 45px 20px 25px 25px;
    position: relative;
    box-sizing: border-box;
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(2) {
    margin: 45px 0;
  }
  #bcp02 .cont02 .box02 .box_item::before {
    content: url(img/bcp02/bcp02_img03_sp.png);
    position: absolute;
    top: -15px;
    left: -10px;
  }
  #bcp02 .cont02 .box02 .box_item::after {
    content: "";
    position: absolute;
    bottom: 5px;
    right: 10px;
    width: 200px;
    height: 27px;
    background: url(img/bcp02/bcp02_img04.png) no-repeat center / 100%;
    opacity: 0.8;
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(2):after {
    background: url(img/bcp02/bcp02_img05.png) no-repeat center / 100%;
  }
  #bcp02 .cont02 .box02 .box_item:nth-of-type(3):after {
    background: url(img/bcp02/bcp02_img06.png) no-repeat center / 100%;
  }
  #bcp02 .cont02 .box02 .box_item h4 {
    position: absolute;
    top: 0;
    left: 20px;
    font-size: 18px;
    font-weight: bold;
    color: #000003;
    line-height: 1;
  }
  #bcp02 .cont02 .box02 .box_item .text02 {
    line-height: 2;
    font-size: 14px;
    position: relative;
    z-index: 1;
    text-shadow: 0 0 5px rgba(255, 255, 255, 1), 0 0 5px rgba(255, 255, 255, 1),
      0 0 5px rgba(255, 255, 255, 1), 0 0 5px rgba(255, 255, 255, 1),
      0 0 5px rgba(255, 255, 255, 1), 0 0 5px rgba(255, 255, 255, 1),
      0 0 5px rgba(255, 255, 255, 1);
  }

  #bcp02 .cont02 .box03 {
    margin: 50px auto 0;
    padding: 0 20px 45px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    position: relative;
  }
  #bcp02 .cont02 .box03::before {
    content: "";
    width: 100%;
    height: 90%;
    position: absolute;
    bottom: 0;
    left: 70px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box03 .text_box {
    margin-top: 45px;
  }
  #bcp02 .cont02 .box03 h3 {
    background: none;
    padding-bottom: 25px;
  }
  #bcp02 .cont02 .box03 .text_box .text {
    letter-spacing: -0.1px;
    line-height: 2;
    font-size: 14px;
  }
  #bcp02 .cont02 .box03 .img {
    position: relative;
    width: 390px;
    margin-left: -10px;
  }
  #bcp02 .cont02 .box03 .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1f9bde;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: -1;
  }
  #bcp02 .cont02 .box03 .img video {
    max-width: 100%;
    height: auto;
  }

  #bcp02 .cont02 .box04 {
    margin: 50px auto 0;
    padding: 250px 15px 50px;
    box-sizing: border-box;
    position: relative;
  }
  #bcp02 .cont02 .box04::before {
    content: "";
    width: 100%;
    height: 88%;
    position: absolute;
    bottom: 0;
    right: 70px;
    background: #e1f2fa;
    z-index: -1;
  }
  #bcp02 .cont02 .box04::after {
    content: "";
    width: 400px;
    height: 220px;
    background: url(img/bcp02/bcp02_img09_sp.png) no-repeat center / 100%;
    position: absolute;
    top: 0;
    left: 15px;
  }
  #bcp02 .cont02 .box04 h3 {
    background: none;
    padding-bottom: 25px;
  }
  #bcp02 .cont02 .box04 .text_box {
    margin: auto;
  }
  #bcp02 .cont02 .box04 .text_box .text {
    line-height: 2;
    font-size: 14px;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box {
    margin: 20px 0;
    display: flex;
    flex-direction: column;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn {
    padding: 0;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn:nth-of-type(2) {
    margin-top: 15px;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn a {
    display: block;
    width: 280px;
    height: 50px;
    line-height: 50px;
    font-weight: bold;
    border: 2px solid #48abe3;
    border-radius: 10px;
    padding-left: 75px;
    box-sizing: border-box;
    letter-spacing: 0;
    font-size: 16px;
    background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 42px #fff;
  }
  #bcp02 .cont02 .box04 .text_box .btn_box .btn:nth-of-type(2) a {
    padding-left: 50px;
    background: url(img/bcp02/bcp02_icon01.png) no-repeat center left 20px #fff;
  }
  #bcp02 .cont02 .box04 .text_box .text02 {
    padding-left: 15px;
    position: relative;
    font-size: 14px;
  }
  #bcp02 .cont02 .box04 .text_box .text02::before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
  }
  #bcp02 .cont02 .box04 .text_box .text02 a {
    color: #fe0000;
    text-decoration: underline;
  }
  #bcp02 .cont02 .btn02 a {
    display: block;
    margin: 60px auto 100px;
    text-align: center;
    width: 330px;
    height: 60px;
    line-height: 62px;
    color: #fff;
    font-weight: bold;
    background: #1f9bde;
    border-radius: 10px;
  }

  /* cont03 防災フォームcss */
  #bcp02 .cont03 ::placeholder {
    color: #aaaaaa;
  }
  #bcp02 .cont03 {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
    margin: 100px auto 0;
  }
  #bcp02 .cont03 h3 {
    font-size: 20px;
    text-align: center;
    font-weight: bold;
  }
  #bcp02 .cont03 .text01 {
    text-align: center;
    margin-top: 30px;
    line-height: 2;
    font-size: 14px;
  }
  #bcp02 .cont03 h4 {
    font-size: 18px;
    font-weight: bold;
    margin-top: 45px;
    padding-bottom: 10px;
    position: relative;
  }
  #bcp02 .cont03 h4::before {
    content: "";
    width: 100%;
    height: 2px;
    background: linear-gradient(
      90deg,
      #1d2088 150px,
      #1f9bde 150px,
      #1f9bde 100%
    );
    position: absolute;
    bottom: 0;
    left: 0;
  }
  #bcp02 .cont03 .block00 .box01 {
    margin-top: 25px;
  }
  #bcp02 .cont03 .block00 .box01 dt {
    margin: 25px 0 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd input {
    width: 100%;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd input:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block00 .box01 dd input.yubin01 {
    width: 90px;
    margin: 0 5px 0 0;
  }
  #bcp02 .cont03 .block00 .box01 dd input.yubin02 {
    width: 150px;
    margin-left: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd.name_box {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 0;
    margin-top: 10px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.name01,
  #bcp02 .cont03 .block00 .box01 dd input.tel01 {
    width: 330px;
  }
  #bcp02 .cont03 .block00 .box01 dd input.manager01 {
    width: 295px;
  }
  #bcp02 .cont03 .block00 .box01 dd span {
    display: flex;
    align-items: center;
    margin-top: 10px;
  }
  #bcp02 .cont03 .block00 .box01 dd textarea {
    width: 295px;
    height: 100px;
    resize: none;
    padding: 15px;
    box-sizing: border-box;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block00 .box01 dd textarea:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block07 .text02 {
    margin-top: 15px;
    font-size: 12px;
  }
  #bcp02 .cont03 .block07 .box01 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
  }
  #bcp02 .cont03 .block07 .box01 input {
    width: 50px;
    font-size: 12px;
    padding: 10px 0 10px 10px;
    box-sizing: border-box;
    margin-left: 5px;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block07 .box01 input:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block07 .box01 p {
    margin-right: 15px;
    font-size: 14px;
  }
  #bcp02 .cont03 .block07 .box01 p:nth-of-type(3) {
    margin-right: 40px;
  }
  #bcp02 .cont03 .block07 .box01 p:nth-of-type(n + 4) {
    margin-top: 10px;
  }
  #bcp02 .cont03 .block03 .box01 {
    margin-top: 20px;
  }
  #bcp02 .cont03 .block03 .box01 p {
    font-size: 14px;
  }
  #bcp02 .cont03 .block03 .box01 input {
    padding: 10px 10px 7px;
    box-sizing: border-box;
    width: 100px;
    text-align: center;
    margin: 0 10px 5px;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block03 .box01 input:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block03 .box02 {
    margin-top: 15px;
  }
  #bcp02 .cont03 .block03 .box02 dt {
    margin-bottom: 10px;
  }
  #bcp02 .cont03 .block03 .box02 dt label {
    margin-left: 10px;
  }
  #bcp02 .cont03 .block03 .box02 dd {
    margin-bottom: 20px;
  }
  #bcp02 .cont03 .block03 .box02 dd input {
    padding: 10px 10px 7px;
    box-sizing: border-box;
    width: 100%;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block03 .box02 dd input:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block03 .box02 dd input.jishin01 {
    width: 100px;
    text-align: center;
    margin: 0 10px;
  }
  #bcp02 .cont03 .block04 .text02 {
    margin: 20px 0;
    font-size: 14px;
  }
  #bcp02 .cont03 .block04 .scroll_box {
    overflow-x: auto;
  }
  #bcp02 .cont03 .block04 .box01 {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid;
    border-left: 1px solid;
    width: 600px;
  }
  #bcp02 .cont03 .block04 .box01 dt,
  #bcp02 .cont03 .block04 .box01 dd {
    border-bottom: 1px solid;
    border-right: 1px solid;
  }
  #bcp02 .cont03 .block04 .box01 dt {
    width: 145px;
    background: #dff0f7;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding-left: 10px;
    box-sizing: border-box;
    letter-spacing: -0.3px;
    font-size: 12px;
  }
  #bcp02 .cont03 .block04 .box01 dd {
    box-sizing: border-box;
    padding: 10px;
    font-size: 12px;
    letter-spacing: 0;
  }
  #bcp02 .cont03 .block04 .box01 dd.blue {
    background: #dff0f7;
    font-weight: bold;
    padding: 5px 10px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd01 {
    width: 230px;
    display: flex;
    align-items: center;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd02 {
    width: calc(100% - 375px);
    padding: 5px;
  }
  #bcp02 .cont03 .block04 .box01 dd.dd02.blue {
    padding: 5px 5px 5px 10px;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea {
    width: 100%;
    height: 120px;
    box-sizing: border-box;
    padding: 10px 10px 10px 5px;
    resize: none;
    display: block;
    border: none;
    font-size: 12px;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block04 .box01 dd textarea.place02 {
    height: 80px;
    margin-top: 5px;
    border: 1px solid rgb(118, 118, 118);
  }
  #bcp02 .cont03 .block04 .box01 dd .text03 {
    font-size: 12px;
  }
  #bcp02 .cont03 .block04 .box01 dd input.place {
    width: 150px;
    box-sizing: border-box;
    padding: 5px 10px;
    margin: 0 5px;
    border-radius: 5px;
    border: 1px solid #535353;
  }
  #bcp02 .cont03 .block04 .box01 dd input.place:focus {
    outline: 1px solid #777777;
  }

  #bcp02 .cont03 .block05 h4 span {
    font-size: 12px;
  }
  #bcp02 .cont03 .block05 h5 {
    margin-top: 20px;
    font-size: 16px;
    font-weight: bold;
  }
  #bcp02 .cont03 .block05 h5:nth-of-type(2) {
    margin-top: 30px;
  }
  #bcp02 .cont03 .block05 h5::before {
    content: "■";
    font-size: 14px;
    padding-right: 5px;
    color: #1f9bde;
  }
  #bcp02 .cont03 .block05 h5 span {
    font-size: 12px;
  }
  #bcp02 .cont03 .block05 .text04 {
    font-size: 14px;
    margin: 10px 0 13px;
  }
  #bcp02 .cont03 .block05 .scroll_box {
    overflow-x: auto;
  }
  #bcp02 .cont03 .block05 table {
    border-collapse: collapse;
    border: 1px solid;
    width: 100%;
    box-sizing: border-box;
    table-layout: fixed;
  }
  #bcp02 .cont03 .block05 table th,
  #bcp02 .cont03 .block05 table td {
    box-sizing: border-box;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: -0.3px;
    line-height: 1.5;
    border: 1px solid;
    padding: 10px;
    vertical-align: middle;
  }
  #bcp02 .cont03 .block05 table th {
    background: #e0f0f7;
    white-space: nowrap;
  }
  #bcp02 .cont03 .block05 table th span {
    font-size: 10px;
    font-weight: bold;
  }
  #bcp02 .cont03 .block05 table th:first-of-type {
    width: 120px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(2) {
    width: 90px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(3) {
    width: 100px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(4) {
    width: 100px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(5) {
    width: 150px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(6) {
    width: 150px;
  }
  #bcp02 .cont03 .block05 table th:nth-of-type(7) {
    width: 150px;
  }
  #bcp02 .cont03 .block05 table td.input_td {
    padding: 5px;
  }
  #bcp02 .cont03 .block05 table td.input_td input {
    border: none;
  }
  #bcp02 .cont03 .block05 table td.bichiku {
    width: 125px;
  }
  #bcp02 .cont03 .block05 table td input {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 8px 10px 6px 5px;
    border: none;
    font-size: 12px;
    border: 1px solid #535353;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block05 table td input:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block05 table td input.input01 {
    width: 40px;
    text-align: center;
    padding: 5px;
    margin-right: 5px;
    border: 1px solid rgb(118, 118, 118);
  }
  #bcp02 .cont03 .block05 table td input.input02 {
    width: 100%;
    border: none;
  }
  #bcp02 .cont03 .block05 .box03 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 15px;
  }
  #bcp02 .cont03 .block05 .box03 label {
    line-height: 1.5;
  }
  #bcp02 .cont03 .block05 .box03 dd {
    line-height: 1.4;
    margin: 0 100px 0 5px;
  }
  #bcp02 .cont03 .block05 .box03 dd:nth-of-type(3) {
    margin: 0 50px 0 5px;
  }
  #bcp02 .cont03 .block05 .box03 dd:nth-of-type(6) {
    margin: 0 70px 0 5px;
  }
  #bcp02 .cont03 .block05 .box03 dt:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #bcp02 .cont03 .block05 .box03 dd:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #bcp02 .cont03 .block05 .box03 dd input {
    padding: 5px 10px;
    box-sizing: border-box;
    border: none;
    margin-top: 1px;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block05 .box03 dd input:focus {
    outline: 1px solid #777777;
  }

  #bcp02 .cont03 .block06 h4 span {
    font-size: 12px;
  }
  #bcp02 .cont03 .block06 .box01 {
    margin-top: 20px;
  }
  #bcp02 .cont03 .block06 .box01 label {
    margin-left: 3px;
  }
  #bcp02 .cont03 .block06 .box01 p:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #bcp02 .cont03 .block06 .box01 input[type="text"] {
    border: none;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block06 .box01 input[type="text"]:focus {
    outline: 1px solid #777777;
  }

  #bcp02 .cont03 .block02 .scroll_box {
    overflow-x: auto;
  }
  #bcp02 .cont03 .block02 .box01 {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
    border-collapse: collapse;
    width: 500px;
    /* border: 1px solid; */
  }
  #bcp02 .cont03 .block02 .box01 th,
  #bcp02 .cont03 .block02 .box01 td {
    border: 1px solid;
    box-sizing: border-box;
    font-size: 14px;
  }
  #bcp02 .cont03 .block02 .box01 th {
    background: #e0f0f7;
    font-weight: bold;
    padding: 10px;
  }
  #bcp02 .cont03 .block02 .box01 td {
    padding: 5px;
    line-height: 1;
  }
  #bcp02 .cont03 .block02 .box01 td:nth-of-type(1) {
    width: 350px;
  }
  #bcp02 .cont03 .block02 .box01 td:nth-of-type(2) {
    width: 150px;
  }
  #bcp02 .cont03 .block02 .box01 td input {
    padding: 15px 10px 15px 5px;
    box-sizing: border-box;
    width: 100%;
    border: none;
    font-size: 14px;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block02 .box01 td input:focus {
    outline: 1px solid #777777;
  }

  #bcp02 .cont03 .block08 .box01 {
    overflow-x: auto;
  }
  #bcp02 .cont03 .block08 table {
    margin-top: 20px;
    width: 700px;
    border-collapse: collapse;
  }
  #bcp02 .cont03 .block08 table th,
  #bcp02 .cont03 .block08 table td {
    border: 1px solid;
    box-sizing: border-box;
    vertical-align: middle;
    font-size: 14px;
  }
  #bcp02 .cont03 .block08 table td {
    padding: 5px;
  }
  #bcp02 .cont03 .block08 table th {
    background: #e0f0f7;
    font-weight: bold;
    padding: 10px;
  }
  #bcp02 .cont03 .block08 table th:first-of-type {
    width: 120px;
  }
  #bcp02 .cont03 .block08 table td textarea {
    display: block;
    box-sizing: border-box;
    padding: 10px 10px 10px 5px;
    width: 100%;
    height: 90px;
    resize: none;
    border: none;
    font-size: 14px;
    border-radius: 5px;
  }
  #bcp02 .cont03 .block08 table td textarea:focus {
    outline: 1px solid #777777;
  }
  #bcp02 .cont03 .block08 table td:first-of-type {
    width: 150px;
  }
  #bcp02 .cont03 .block08 table td:nth-of-type(2),
  #bcp02 .cont03 .block08 table td:nth-of-type(3) {
    width: 250px;
  }

  #bcp02 .cont03 input[type="submit"] {
    display: block;
    margin: 60px auto 0;
    text-align: center;
    width: 300px;
    box-sizing: border-box;
    padding: 20px 0 18px;
    color: #fff;
    font-weight: bold;
    background: #1f9bde;
    border-radius: 10px;
    border: none;
    appearance: none;
    -webkit-appearance: none;
    height: 60px;
  }
  #bcp02 .cont03 p.kioku input[type="submit"] {
    border: 2px solid #1f9bde;
    color: #1f9bde;
    background: #fff;
    margin-top: 40px;
  }
  #bcp02 .cont03 input[type="submit"].kioku_remove {
    width: auto;
    height: auto;
    background: none;
    border: none;
    display: inline;
    padding: 0;
    margin: 0;
    color: #000;
    font-weight: normal;
    border-bottom: 1px solid;
    border-radius: 0;
  }
  #bcp02 .cont03 .notice_list {
    margin: 55px auto 100px;
  }
  #bcp02 .cont03 .notice_list li {
    font-size: 14px;
  }
  #bcp02 .cont03 .notice_list li:nth-of-type(n + 2) {
    margin-top: 5px;
  }
}

#yonmaru .container_1080 .cont01 {
  padding: 0 0 120px;
}
#yonmaru .container_1080 .cont01 h3 {
  color: #0099dd;
  text-align: center;
  font-weight: bold;
  font-size: 36px;
  margin: 0 0 50px;
  line-height: 1.7;
}
#yonmaru .container_1080 .cont01 .text {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  line-height: 2;
  margin: 0 0 60px;
}
#yonmaru .container_1080 .cont01 .button {
  text-align: center;
}
#yonmaru .container_1080 .cont01 .button a {
  margin: auto;
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  display: inline-block;
  color: #0099dd;
  padding: 5px 30px;
  border: 2px solid #0099dd;
}

@media (max-width: 768px) {
  #yonmaru .f_48 {
    font-size: 6vw;
  }
  #yonmaru .container_1080 .cont01 h3 {
    font-size: 5vw;
  }
  #yonmaru .container_1080 .cont01 .text {
    font-size: 2.5vw;
  }
}

/* フォーラムcss
----------------------------------------------------------------------------*/
#forum .tb,
#forum .sp {
  display: none;
}
@media (max-width: 768px) {
  #forum .tb {
    display: inline-block;
  }
  #forum .pc {
    display: none;
  }
}
@media (max-width: 430px) {
  #forum .tb {
    display: none;
  }
  #forum .pc {
    display: none;
  }
  #forum .sp {
    display: inline-block;
  }
}
#forum .key {
  background: url(img/forum/forum_bg01.png) center center/cover no-repeat;
}
#forum .key.forum04 {
  background: url(img/forum/forum_bg01_02.png) center center/cover no-repeat;
}
#forum .key.forum05 {
  background: url(img/forum/forum_bg01_03.png) center center/cover no-repeat;
}
#forum .key.forum07 {
  background: url(img/forum/forum_bg01_04.png) center center/cover no-repeat;
}
#forum .key.mirai01 {
  background: url(img/forum/mirai01_bg01.png) center center/cover no-repeat;
}
#forum.jidai .key {
  background: url(img/forum/jdiai_key.png) center center/cover no-repeat;
}
#forum .key h2 img {
  max-width: 100%;
}
#forum.forum10 .key h2 img {
  height: auto;
}
#forum.forum10 .key {
  background: url(img/forum/forum10_key.png) center center/cover no-repeat;
}
#forum.forum11 .key {
  background: url(img/forum/forum11_key_bg.png) center center / cover no-repeat;
}
#forum.dx .key {
  background: url(img/forum/dx_key_bg.png) center center / cover no-repeat;
}
#forum.forum2022-04 .key {
  background: url(img/forum/forum2022-04_key_bg.png) center center / cover
    no-repeat;
}

@media (min-width: 431px) {
  #forum .key {
    height: 649px;
    position: relative;
  }
  #forum .key h2 img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .key {
    height: auto;
    position: relative;
  }
  #forum .key h2 img {
    position: static;
    transform: none;
    height: auto;
  }
}

/* cont01 */
#forum .cont01 {
  padding: 0 0 100px;
}
#forum .cont01 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum .cont01 h3::before {
  content: "THEME";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum.forum10 .cont01 h3 span {
  font-weight: bold;
}
#forum.forum10 .cont01 h3 span::before {
  content: "-";
  padding-right: 10px;
}
#forum.forum10 .cont01 h3 span::after {
  content: "-";
  padding-left: 10px;
}
#forum.forum10 .cont01 .video {
  text-align: center;
  margin-top: 80px;
}

#forum.forum07 .cont01 h3::before {
  display: none;
}

#forum .cont01 .text {
  font-size: 48px;
  padding: 0 0 70px;
  font-weight: bold;
  text-align: center;
}
#forum .cont01 .text span {
  font-weight: bold;
  font-size: 34px;
  display: inline-block;
}
#forum .cont01 .text02 {
  font-size: 20px;
  line-height: 3;
  text-align: center;
  font-weight: bold;
  background: url(img/forum/forum_bg02.png) center center no-repeat;
}
#forum .cont01 .img01 {
  margin: 50px 0;
  text-align: center;
}
#forum .cont01 .img01 img {
  max-width: 600px;
  width: 95%;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .cont01 h3 {
    font-size: 20px;
    padding-bottom: 40px;
  }
  #forum .cont01 .text {
    font-size: 28px;
    padding: 0 0 40px;
  }
  #forum .cont01 .text span {
    font-weight: bold;
    font-size: 18px;
    display: inline-block;
  }
  #forum .cont01 .text02 {
    font-size: 16px;
    text-align: left;
    width: 90%;
    margin: auto;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
  }
  #forum.forum10 .cont01 .video {
    text-align: center;
    width: 90%;
    margin: 80px auto 0;
  }
  #forum.forum10 .cont01 .video iframe {
    width: 100%;
  }
}

@media (max-width: 430px) {
  #forum .cont01 {
    padding: 0 0 60px;
  }
  #forum .cont01 h3 {
    font-size: 20px;
    padding: 0 0 45px;
  }
  #forum .cont01 .text {
    font-size: 20px;
    padding: 0 0 45px;
  }
  #forum .cont01 .text span {
    font-weight: bold;
    font-size: 18px;
    display: inline-block;
  }
  #forum .cont01 .text02 {
    font-size: 14px;
    text-align: left;
    width: 90%;
    margin: auto;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
  }
  #forum.forum10 .cont01 .text02 {
    letter-spacing: -1px;
  }
  #forum.forum10 .cont01 .video iframe {
    max-width: 400px;
  }
}

/* cont02 */
#forum .cont02 {
  padding: 0 0 100px;
}
#forum.forum10 .cont02 {
  padding: 0 0 50px;
}
#forum .cont02 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum .cont02 h3::before {
  content: "INTRODUCTION";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum .cont02 .cont {
  width: 1200px;
  height: 690px;
  margin: auto;
  position: relative;
  padding: 0 0 0 600px;
  box-sizing: border-box;
}
#forum.forum10 .cont02 .cont {
  height: 550px;
}
#forum.forum10 .cont02 .cont:nth-of-type(2) {
  height: 680px;
}
#forum .cont02 .cont:nth-of-type(2n-1)::before {
  position: absolute;
  z-index: -1;
  top: -270px;
  left: 50%;
  width: 115vw;
  min-width: 1200px;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}
#forum .cont02 .cont:nth-of-type(2n) {
  padding: 0 600px 0 0;
}
#forum.forum10 .cont02 .cont:nth-of-type(2n) {
  padding: 0 600px 0 80px;
}
#forum .cont02 .cont .img {
  position: absolute;
  top: 0;
  left: 70px;
}
#forum.forum10 .cont02 .cont .img img {
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
}
#forum .cont02 .cont:nth-of-type(2n) .img {
  position: absolute;
  top: 0;
  left: auto;
  right: 70px;
}
#forum .cont02 .cont h4 {
  font-size: 40px;
  line-height: 1.5;
  font-weight: bold;
}
#forum .cont02 .cont h4 span {
  display: block;
  font-weight: bold;
}
#forum .cont02 .cont h4 span.span01 {
  font-size: 30px;
}
#forum .cont02 .cont h4 span.span02 {
  font-size: 20px;
  padding: 10px 0;
}
#forum .cont02 .cont h4 span.span03 {
  display: inline;
  font-size: 30px;
}
#forum .cont02 .cont .text {
  font-size: 16px;
  line-height: 2;
  padding: 85px 0 0;
  position: relative;
  font-weight: bold;
}
#forum .cont02 .cont .text::before {
  position: absolute;
  top: 40px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .cont02 .cont {
    width: 100%;
    height: auto;
    min-height: 380px;
    margin: auto;
    position: relative;
    padding: 0 0 80px 40%;
    box-sizing: border-box;
  }
  #forum .cont02 .cont:nth-of-type(2n) {
    padding: 0 40% 80px 0;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(2n) {
    padding: 0 40% 80px 0;
  }
  #forum .cont02 .cont:last-of-type {
    padding-bottom: 0;
  }
  #forum .cont02 .cont .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 35%;
    box-sizing: border-box;
  }
  #forum .cont02 .cont .img img {
    width: 100%;
    height: auto;
  }
  #forum.forum10 .cont02 .cont .img img {
    height: auto;
  }
  #forum .cont02 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 0;
  }
  #forum .cont02 .cont h4 {
    font-size: 26px;
    line-height: 1.5;
    font-weight: bold;
  }
  #forum .cont02 .cont h4 span {
    display: block;
    font-weight: bold;
  }
  #forum .cont02 .cont h4 span.span01 {
    font-size: 16px;
  }
  #forum .cont02 .cont h4 span.span02 {
    font-size: 14px;
    padding: 10px 0;
  }
  #forum .cont02 .cont h4 span.span03 {
    display: inline;
    font-size: 20px;
  }
  #forum .cont02 .cont .text {
    font-size: 14px;
    line-height: 2;
    padding: 40px 10px 0;
    position: relative;
    font-weight: bold;
  }
  #forum .cont02 .cont .text::before {
    position: absolute;
    top: 10px;
    left: 10px;
    content: "";
    width: 100px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.forum10 .cont02 .cont {
    height: auto;
    min-height: 300px;
    padding: 0 15px 0 45%;
  }
  #forum.forum10 .cont02 .cont .text {
    padding: 40px 0 0;
  }
  #forum.forum10 .cont02 .cont .text::before {
    left: 0;
    top: 18px;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(2) {
    height: auto;
    min-height: 385px;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(3) {
    min-height: 310px;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(2n) {
    padding: 0 45% 0 15px;
  }
  #forum.forum10 .cont03 .cont {
    padding: 0 15px 0 45%;
  }
}

@media (max-width: 430px) {
  #forum .cont02 {
    padding: 0 0 0;
  }
  #forum.forum10 .cont02 {
    padding: 0 0 0;
  }
  #forum .cont02 h3 {
    font-size: 20px;
    padding: 0 0 45px;
  }
  #forum .cont02 .cont,
  #forum.forum10 .cont02 .cont:nth-of-type(2n) {
    width: 100%;
    height: auto;
    min-height: 500px;
    margin: auto;
    position: relative;
    padding: 530px 10px 70px;
    box-sizing: border-box;
  }
  #forum.forum10 .cont02 .cont {
    width: 100%;
    height: auto;
    min-height: 500px;
    margin: auto;
    position: relative;
    padding: 420px 10px 70px;
    box-sizing: border-box;
  }
  #forum.forum10 .cont02 .cont:nth-of-type(2n) {
    padding-top: 550px;
  }

  #forum .cont02 .cont:nth-of-type(2n-1)::before {
    width: 450px;
    top: -185px;
    transform: translateX(-50%) skewY(-10deg);
  }
  #forum .cont02 .cont:nth-of-type(2n) {
    padding: 530px 10px 70px;
  }
  #forum .cont02 .cont .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 0 0 10px;
    box-sizing: border-box;
  }

  #forum .cont02 .cont .img img {
    width: 100%;
  }
  #forum.forum10 .cont02 .cont .img img {
    height: auto;
  }
  #forum .cont02 .cont:nth-of-type(2n) .img {
    left: 0;
    right: auto;
  }
  #forum .cont02 .cont h4 {
    padding: 10px 0;
    font-size: 28px;
  }
  #forum .cont02 .cont h4 span.span01 {
    font-size: 20px;
  }
  #forum .cont02 .cont h4 span.span02 {
    font-size: 18px;
  }
  #forum .cont02 .cont h4 span.span03 {
    font-size: 20px;
  }
  #forum .cont02 .cont .text {
    font-size: 16px;
    line-height: 2;
    padding: 30px 0 0;
    position: relative;
    font-weight: bold;
  }
  #forum.forum10 .cont02 .cont .text {
    letter-spacing: -1px;
  }
  #forum .cont02 .cont .text::before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
}

/* cont03 */
#forum .cont03 {
  padding: 0 0 100px;
}
#forum.forum10 .cont03 {
  padding: 0 0 70px;
}
#forum .cont03 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum .cont03 h3::before {
  content: "EVENT";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum .cont03.spinoff h3::before {
  content: "SPIN OFF";
}
#forum .cont03.spinoff p {
  text-align: center;
}
#forum .cont03.mirai01 h3::before {
  content: "SCHEDULE";
}
#forum .cont03 table {
  width: 1200px;
  margin: auto;
  border-collapse: separate;
  border-spacing: 3px;
  padding: 0 0 70px;
}
#forum.forum10 .cont03 table {
  padding: 0 0 120px;
}
#forum .cont03 table tr th {
  width: 200px;
  text-align: center;
  padding: 25px 0;
  background: #1d9add;
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  vertical-align: middle;
}
#forum .cont03 table tr td {
  padding: 25px 35px;
  background: #e1f2fa;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
#forum.forum10 .cont03 table tr td ul {
  display: flex;
  flex-wrap: wrap;
}
#forum.forum10 .cont03 table tr td ul li {
  width: 55%;
  font-weight: bold;
  line-height: 2;
}
#forum.forum10 .cont03 table tr td ul li:nth-of-type(2n) {
  width: 45%;
  box-sizing: border-box;
  padding-left: 50px;
}
#forum.forum10 .cont03 table tr td span {
  font-size: 18px;
  font-weight: bold;
}
#forum .cont03 table tr td a {
  font-size: 20px;
  font-weight: bold;
}
#forum .cont03 table tr td a:hover {
  opacity: 0.7;
}
#forum .cont03 .cont {
  width: 1200px;
  min-height: 460px;
  margin: auto;
  position: relative;
  padding: 0 0 0 600px;
  box-sizing: border-box;
}
#forum .cont03 .cont:nth-of-type(2n) {
  padding: 0 600px 0 0;
}
#forum .cont03 .cont .img {
  position: absolute;
  top: 0;
  left: -10px;
}
#forum.forum10 .cont03 .cont .img {
  left: 30px;
}
#forum.forum10 .cont03 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgba(0, 0, 0, 0.3);
  z-index: -1;
}
#forum .cont03 .cont:nth-of-type(2n) .img {
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
}
#forum.forum10 .cont03 .cont:nth-of-type(2n) .img {
  position: absolute;
  top: 0;
  left: auto;
  right: 30px;
}
#forum.forum10 .cont03 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgba(0, 0, 0, 0.3);
}
#forum .cont03 .cont .video_img {
  position: absolute;
  top: 0;
  left: -10px;
  padding: 0 0 30px 30px;
}
#forum .cont03 .cont .video_img img {
  box-shadow: -22px 22px 0 #39b1e7, -22px 22px 8px #aaa;
}
#forum .cont03 .cont:nth-of-type(2n) .video_img {
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  padding: 0 30px 30px 0;
}
#forum .cont03 .cont:nth-of-type(2n) .video_img img {
  box-shadow: 22px 22px 0 #39b1e7, 22px 22px 8px #aaa;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .cont03 table {
    width: calc(100% - 30px);
  }
  #forum .cont03 table tr th,
  #forum .cont03 table tr td {
    font-size: 16px;
  }
  #forum .cont03 .cont {
    width: 100%;
    padding: 0 0 0 42%;
  }
  #forum .cont03 .cont .img {
    width: 40%;
  }
  #forum .cont03 .cont .img img {
    max-width: 100%;
  }
  #forum .cont03 .cont h4 {
    font-size: 16px;
  }
  #forum .cont03 .cont h4 span {
    font-size: 20px;
  }
  #forum .cont03 .cont .text {
    font-size: 18px;
  }
  #forum .cont03 .cont .text02 {
    font-size: 14px;
    padding-top: 40px;
  }
  #forum.forum10 .cont03 .tb {
    display: none;
  }
  #forum.forum10 .cont03 .cont .img {
    left: 20px;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(2n) {
    padding: 0 45% 0 15px;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum.forum10 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum.forum10 .cont03 .cont .text02 {
    padding-bottom: 0;
  }
  #forum.forum10 .cont03 .cont:last-of-type h4 span {
    font-size: 18px;
    padding-left: 0px;
  }
}

@media (max-width: 430px) {
  #forum .cont03 .cont .video_img {
    position: absolute;
    top: -25px;
    left: 50%;
    right: auto;
    width: 430px;
    transform: translateX(-50%);
    padding: 0 0 20px 20px;
    box-sizing: border-box;
  }
  #forum .cont03 .cont:nth-of-type(2n) .video_img {
    position: absolute;
    top: -25px;
    left: 50%;
    right: auto;
    width: 430px;
    transform: translateX(-50%);
    padding: 0 20px 20px 0;
    box-sizing: border-box;
  }
  #forum .cont03 .cont .video_img img {
    width: 400px;
    box-shadow: -15px 15px 0 #39b1e7, -15px 15px 5px #aaa;
  }
  #forum .cont03 .cont:nth-of-type(2n) .video_img img {
    width: 400px;
    box-shadow: 15px 15px 0 #39b1e7, 15px 15px 5px #aaa;
  }
  #forum.forum10 .cont03 .cont .img {
    left: 51%;
    top: 0;
    width: 400px;
  }
  #forum.forum10 .cont03 .cont .img::before {
    content: "";
    width: 380px;
    height: 250px;
    bottom: -10px;
    left: 0px;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(2n) .img {
    position: absolute;
    top: 0;
    left: 49%;
    right: auto;
  }
  #forum.forum10 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 380px;
    height: 250px;
    bottom: -10px;
    left: auto;
    right: 0px;
  }
  #forum.forum10 .cont03 {
    padding: 0 0 50px;
  }
  #forum.forum10 .cont03 table tr td span {
    font-size: 14px;
    font-weight: bold;
  }
}

#forum .cont03 input[type="checkbox"] {
  display: none;
}
#forum .cont03 input[type="checkbox"] + .video_bg {
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  overflow: hidden;
  opacity: 0;
}
#forum .cont03 input[type="checkbox"]:checked + .video_bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  transition: all 0.5s;
  opacity: 1;
}
#forum .cont03 input[type="checkbox"]:checked + .video_bg .inner {
  margin: auto;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
}
#forum .cont03 input[type="checkbox"]:checked + .video_bg.video01 .inner {
  width: 960px;
  height: 540px;
}
#forum .cont03 input[type="checkbox"]:checked + .video_bg.video02 .inner {
  width: 280px;
  height: 540px;
}
@media (max-width: 960px) {
  #forum .cont03 input[type="checkbox"]:checked + .video_bg.video01 .inner {
    width: 700px;
    height: 394px;
  }
}
@media (max-width: 768px) {
  #forum .cont03 input[type="checkbox"]:checked + .video_bg.video01 .inner {
    width: 480px;
    height: 270px;
  }
}
@media (max-width: 500px) {
  #forum .cont03 input[type="checkbox"]:checked + .video_bg.video01 .inner {
    width: 90%;
    height: 270px;
  }
}
#forum .cont03 input[type="checkbox"]:checked + .video_bg .inner video {
  width: 100%;
}

#forum .cont03 input[type="checkbox"]:checked + .video_bg .inner label {
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: -10px;
  right: -10px;
  z-index: 10001;
}

#forum .cont03 .img02 {
  text-align: center;
}
#forum .cont03 .img02 img {
  max-width: 100%;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .cont03 .cont .video_img {
    width: 35%;
  }
  #forum .cont03 .cont .video_img img {
    max-width: 100%;
    height: auto;
    box-shadow: -12px 12px 0 #39b1e7, -12px 12px 8px #aaa;
  }
  #forum .cont03 .cont:nth-of-type(2n) .video_img img {
    box-shadow: 12px 12px 0 #39b1e7, 12px 12px 8px #aaa;
  }
  #forum .cont03 .img02 {
    margin-top: 50px;
  }
}

#forum .cont03 .cont h4 {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}
#forum .cont03 .cont h4 span {
  font-size: 24px;
  display: inline-block;
  padding: 0 0 0 20px;
  margin: 0 0 20px;
  font-weight: bold;
}
#forum .cont03 .cont .text {
  font-weight: bold;
  font-size: 20px;
}
#forum .cont03 .cont .text02 {
  font-size: 16px;
  line-height: 2;
  padding: 85px 0 75px;
  position: relative;
  font-weight: bold;
}
#forum .cont03 .cont .text02::before {
  position: absolute;
  top: 40px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum.forum10 .cont03 .cont .text02 {
  padding-top: 60px;
}
#forum.forum10 .cont03 .cont .text02::before {
  top: 20px;
}
#forum .cont03 .cont .text02 span {
  color: #f00000;
  font-weight: bold;
  font-size: 18px;
}
#forum.forum10 .cont03 .cont .text02 span {
  color: #000;
  font-size: 14px;
  font-weight: bold;
}
#forum .cont03 .cont .text03 {
  padding-top: 20px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum .cont03 table {
    width: calc(100% - 30px);
  }
  #forum .cont03 table tr th,
  #forum .cont03 table tr td {
    font-size: 16px;
  }
  #forum .cont03 .cont {
    width: 100%;
    padding: 0 0 0 42%;
    min-height: 210px;
  }
  #forum .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
  #forum .cont03 .cont .img {
    width: 40%;
  }
  #forum .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
  }
  #forum .cont03 .cont h4 {
    font-size: 16px;
  }
  #forum .cont03 .cont h4 span {
    font-size: 20px;
    margin-bottom: 10px;
  }
  #forum .cont03 .cont .text {
    font-size: 18px;
  }
  #forum .cont03 .cont .text02 {
    font-size: 14px;
    padding-top: 40px;
  }
  #forum .cont03 .cont .text02::before {
    top: 20px;
    width: 100px;
  }
  #forum .cont03 .cont:nth-of-type(2n) {
    padding: 0 42% 0 0;
  }
}

@media (max-width: 430px) {
  #forum .cont03 .cont {
    width: 90%;
    height: auto;
    min-height: 500px;
    margin: auto;
    position: relative;
    padding: 300px 0 0;
    box-sizing: border-box;
  }
  #forum .cont03 .cont:nth-of-type(2n) {
    padding: 300px 0 0;
  }
  #forum.forum10 .cont03 .cont {
    padding-top: 300px;
  }
  #forum .cont03 table {
    width: calc(100% - 30px);
  }
  #forum .cont03 table tr th {
    width: 100px;
    text-align: center;
    vertical-align: middle;
    padding: 20px 0;
    background: #1d9add;
    font-size: 14px;
    color: #fff;
    font-weight: bold;
  }
  #forum .cont03 table tr td {
    padding: 20px 15px;
    background: #e1f2fa;
    vertical-align: middle;
    font-size: 14px;
    font-weight: bold;
  }
  #forum.forum10 .cont03 table tr td ul li {
    font-size: 14px;
    width: 52%;
    letter-spacing: -1px;
  }
  #forum.forum10 .cont03 table tr td ul li:nth-of-type(2n) {
    padding-left: 30px;
    width: 48%;
  }
  #forum .cont03 table tr td a {
    font-size: 16px;
    font-weight: bold;
  }
  #forum .cont03 .cont .img {
    position: absolute;
    top: 0;
    left: 50%;
    right: auto;
    width: 430px;
    transform: translateX(-50%);
    padding: 0 10px;
    box-sizing: border-box;
  }
  #forum .cont03 .cont:nth-of-type(2n) .img {
    left: 50%;
    right: auto;
  }
  #forum .cont03 .cont .img img {
    width: auto;
    max-width: 100%;
  }
  #forum.forum10 .cont03 .cont .img img {
    height: auto;
  }
  #forum .cont03 .cont h4 {
    font-size: 16px;
  }
  #forum .cont03 .cont h4 span {
    font-size: 22px;
  }
  #forum.forum10 .cont03 .cont h4 span {
    padding: 0;
    font-size: 20px;
  }
  #forum .cont03 .cont .text {
    font-size: 16px;
  }
  #forum .cont03 .cont .text02 {
    font-size: 16px;
    line-height: 2;
    padding: 85px 0 75px;
    position: relative;
    font-weight: bold;
  }
  #forum .cont03 .cont .text02::before {
    position: absolute;
    top: 40px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
}
@media (max-width: 650px) {
  #forum.forum10 .cont03 table tr td ul li {
    font-size: 15px;
    width: 100%;
    letter-spacing: -1px;
  }
  #forum.forum10 .cont03 table tr td ul li:nth-of-type(2n) {
    width: 100%;
    padding: 0;
  }
}
@media (max-width: 480px) {
  #forum.forum10 .cont03 .cont h4 span {
    padding: 0;
    font-size: 18px;
  }
}
@media (max-width: 430px) {
  #forum .cont03 {
    padding: 0 0 0;
  }
  #forum .cont03 .cont .text02 {
    font-size: 14px;
    line-height: 2;
    padding: 30px 0 75px;
    position: relative;
    font-weight: bold;
  }
  #forum .cont03 .cont .text02::before {
    position: absolute;
    top: 15px;
  }
  #forum.forum10 .cont03 {
    padding: 0 0 0;
  }
  #forum.forum10 .cont03 table {
    padding: 0 0 80px;
  }
  #forum.forum10 .cont02 .cont .img {
    padding: 0 10px;
  }
}

#forum .cont04 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}

#forum .cont04 p.text {
  width: 90%;
  max-width: 860px;
  margin: 0 auto;
}

#forum .cont04 h3::before {
  content: "CONTACT";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#forum .cont04 .mw_wp_form .horizontal-item {
  display: inline-block;
  line-height: 2;
}
#forum .cont04 .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
  margin-right: 10px;
}

#forum .cont04 table.form td .con_frame02 {
  width: auto;
  height: 40px;
  border: 1px solid #000;
  padding-left: 10px;
  box-sizing: border-box;
  font-size: 14px;
}

#forum .forum05.cont05 .img {
  text-align: center;
}
#forum .forum05.cont05 .img img {
  width: 95%;
  max-width: 600px;
}
#forum .forum05.cont05 .button,
#forum.jidai .cont03 .button,
#forum.jidai .cont04 .button {
  margin: 50px auto 150px;
  width: 250px;
  text-align: center;
}
#forum.forum10 .cont05 .button {
  margin-bottom: 120px;
}
#forum.jidai .cont03 .button02 {
  margin: 50px auto;
}
#forum .forum05.cont05 .button a,
#forum.jidai .cont03 .button a,
#forum.jidai .cont04 .button a {
  display: block;
  font-weight: bold;
  color: #fff;
  background: #0061b2;
  padding: 15px 0;
  border-radius: 5px;
}

#forum .forum05.cont06 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum .forum05.cont06 h3::before {
  content: "SPONSORS";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#forum .forum05.cont06 .inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#forum .forum05.cont06 .inner .box {
  width: 48%;
  display: flex;
  align-items: center;
  padding: 10px 0;
  margin: 0 1%;
}
#forum .forum05.cont06 .inner .box .img {
  width: 33.33333333333334%;
}
#forum .forum05.cont06 .inner .box .img img {
  width: 100%;
}
#forum .forum05.cont06 .inner .box.font20 .text {
  font-size: 20px;
}
#forum .forum05.cont06 .inner .box.font18 .text {
  font-size: 18px;
}
#forum .forum05.cont06 .inner .box.font16 .text {
  font-size: 16px;
}
#forum .forum05.cont06 .inner .box.font14 .text {
  font-size: 14px;
}
#forum .forum05.cont06 .inner .box .text {
  width: 66.66666666666666%;
  padding: 0 10px 0 10px;
  box-sizing: border-box;
}
#forum .forum05.cont06 .inner .box.min_height {
  height: 150px;
}

@media (max-width: 600px) {
  #forum .forum05.cont06 .inner .box {
    width: 100%;
    margin: 10px;
    box-sizing: border-box;
  }
  #forum .forum05.cont06 .inner .box .text {
    padding: 0 10px 0 10px;
  }
}

@media (max-width: 768px) {
  #forum .cont04 #form {
    margin: 0 10px;
  }
  #forum.jidai .cont03 .button a {
    font-size: 80%;
  }
}

#senkyowari .sp {
  display: none;
}
@media (max-width: 768px) {
  #senkyowari .pc {
    display: none;
  }
}
@media (max-width: 430px) {
  #senkyowari .tb {
    display: none;
  }
  #senkyowari .sp {
    display: inline-block;
  }
}
#senkyowari .key {
  background: url(img/senkyowari/senkyowari_bg.png) center center/cover
    no-repeat;
}
#senkyowari .key h2 img {
  max-width: 100%;
}

#senkyowari .key {
  height: 649px;
  position: relative;
}
#senkyowari .key h2 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#senkyowari .key h2::before {
  position: absolute;
  top: 35px;
  left: -220px;
  content: "";
  width: 386px;
  height: 97px;
  background: url(img/senkyowari/senkyowari_text01.png) center center/contain
    no-repeat;
}
@media (max-width: 768px) {
  #senkyowari .key {
    height: 0;
    padding: 50% 0 0;
  }
  #senkyowari .key h2 {
    width: 65%;
  }
  #senkyowari .key h2 img {
    max-width: 100%;
  }
  #senkyowari .key h2::before {
    top: 0;
    left: 10%;
    transform: translateX(-50%);
    height: 0;
    padding: 10% 0 0;
    background: url(img/senkyowari/senkyowari_text01.png) center center/contain
      no-repeat;
  }
}

#senkyowari .cont01 {
  padding: 0 0 170px;
}
#senkyowari .cont01 h3 {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  padding: 0 0 70px;
  line-height: 2;
}
#senkyowari .cont01 .img {
  text-align: center;
}
#senkyowari .cont01 .flex {
  width: 950px;
  margin: 75px auto 0;
  display: flex;
  justify-content: space-between;
}
#senkyowari .cont01 .flex .button {
  width: 450px;
}
#senkyowari .cont01 .flex .button a {
  width: 450px;
  display: block;
  box-sizing: border-box;
  padding: 20px 0;
  text-align: center;
  color: #173984;
  border: 2px solid #173984;
  font-weight: bold;
  position: relative;
}
#senkyowari .cont01 .flex .button:nth-of-type(2) a {
  color: #1d9add;
  border: 2px solid #1d9add;
}

#senkyowari .cont01 .flex .button a::before {
  content: ">>";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}
#senkyowari .cont01 .text {
  font-size: 16px;
  text-align: right;
  width: 950px;
  margin: auto;
  padding: 10px 0;
  font-weight: bold;
}
#senkyowari .cont01 .text a {
  font-weight: bold;
  text-decoration: underline;
  background: url(img/senkyowari/senkyowari_icon01.png) right center no-repeat;
  padding: 10px 45px 10px 0;
  box-sizing: border-box;
  display: inline-block;
}

@media (max-width: 768px) {
  #senkyowari .cont01 {
    padding: 0 0 120px;
  }
  #senkyowari .cont01 h3 {
    text-align: left;
    font-size: 18px;
    width: 90%;
    margin: auto;
  }
  #senkyowari .cont01 .flex {
    width: 90%;
  }
  #senkyowari .cont01 .flex .button {
    width: 48%;
  }
  #senkyowari .cont01 .flex .button a {
    width: 100%;
    padding: 10px 0;
    font-size: 16px;
  }
  #senkyowari .cont01 .flex .button a::before {
    right: 0;
  }
  #senkyowari .cont01 .text {
    width: 90%;
    padding: 30px 0 10px;
    font-size: 15px;
  }
  #senkyowari .cont01 img {
    max-width: 90%;
  }
  #senkyowari .cont01 .text a {
    padding: 10px 35px 10px 0;
  }
}
@media (max-width: 430px) {
  #senkyowari .cont01 {
    padding: 0 0 90px;
  }
  #senkyowari .cont01 h3 {
    font-size: 16px;
    width: 410px;
    margin: auto;
    padding: 0 0 45px;
  }
  #senkyowari .cont01 .flex {
    width: 410px;
    margin: 45px auto 0;
  }
  #senkyowari .cont01 .flex .button {
    width: 200px;
  }
  #senkyowari .cont01 .flex .button a {
    width: 100%;
    padding: 10px 0;
    font-size: 16px;
  }
  #senkyowari .cont01 .flex .button a::before {
    right: 0;
  }
  #senkyowari .cont01 .text {
    width: 90%;
    padding: 30px 0 10px;
    font-size: 15px;
  }
  #senkyowari .cont01 img {
    max-width: 410px;
  }
  #senkyowari .cont01 .text a {
    padding: 10px 35px 10px 0;
  }
}
#senkyowari .cont02 {
  padding-bottom: 170px;
}
#senkyowari .cont02 h3 {
  padding: 70px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 70px;
  background: url(img/senkyowari/senkyowari_text02.png) center top no-repeat;
}
#senkyowari .cont02 .text {
  text-align: center;
  line-height: 2;
  margin-bottom: 70px;
}
#senkyowari .cont02 table {
  width: 1200px;
  margin: auto;
}
#senkyowari .cont02 table tr {
  border-bottom: 2px solid #fff;
}
#senkyowari .cont02 table tr th {
  width: 200px;
  text-align: center;
  background: #1d9add;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  padding: 40px 0;
  vertical-align: middle;
}
#senkyowari .cont02 table tr td {
  vertical-align: middle;
  padding: 35px 0 0 30px;
  background: #e1f2fa;
  font-size: 28px;
  font-weight: bold;
}
#senkyowari .cont02 table tr td span {
  font-size: 20px;
  display: block;
  line-height: 2;
  font-weight: bold;
  padding: 20px 0 30px 20px;
}
#senkyowari .cont02 table tr td span a {
  display: inline-block;
  text-decoration: underline;
  font-weight: bold;
}

#senkyowari .cont02 table tr td .flex {
  display: flex;
}
#senkyowari .cont02 table tr td .flex .box {
  width: 40%;
  display: flex;
}
#senkyowari .cont02 table tr td .flex .box:nth-of-type(2) {
  width: 60%;
}
#senkyowari .cont02 table tr td .text {
  text-align: left;
  font-weight: bold;
  padding: 0 0 0 25px;
  font-size: 20px;
}
#senkyowari .cont02 table tr td .text span {
  padding: 75px 0 0;
}

@media (max-width: 768px) {
  #senkyowari .cont02 {
    padding-bottom: 120px;
  }
  #senkyowari .cont02 h3 {
    padding: 70px 0 0;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 50px;
    background: url(img/senkyowari/senkyowari_text02.png) center top no-repeat;
  }
  #senkyowari .cont02 .text {
    text-align: left;
    width: 90%;
    margin: auto;
    line-height: 2;
    font-size: 16px;
    margin-bottom: 50px;
  }
  #senkyowari .cont02 table {
    width: 90%;
    margin: auto;
  }
  #senkyowari .cont02 table tr {
    border-bottom: 2px solid #fff;
  }
  #senkyowari .cont02 table tr th {
    width: 120px;
    font-size: 16px;
  }
  #senkyowari .cont02 table tr td {
    vertical-align: middle;
    padding: 35px 20px 0 30px;
    background: #e1f2fa;
    font-size: 22px;
    font-weight: bold;
  }
  #senkyowari .cont02 table tr td span {
    font-size: 16px;
    padding: 20px 0 30px 20px;
  }
  #senkyowari .cont02 table tr td .flex {
    display: block;
  }
  #senkyowari .cont02 table tr td .flex .box {
    display: flex;
    width: 100%;
    align-items: center;
    margin: 0 0 25px;
  }
  #senkyowari .cont02 table tr td .flex .box:nth-of-type(2) {
    width: 100%;
    margin: 0;
    padding: 0 0 30px;
  }
  #senkyowari .cont02 table tr td .text {
    text-align: left;
    font-weight: bold;
    padding: 0 0 0 25px;
    margin: auto;
    font-size: 14px;
    width: 100%;
  }
  #senkyowari .cont02 table tr td .text span {
    padding: 30px 0 0;
    font-size: 14px;
  }
}
@media (max-width: 520px) {
  #senkyowari .cont02 table,
  #senkyowari .cont02 table tr,
  #senkyowari .cont02 table tbody,
  #senkyowari .cont02 table tr th,
  #senkyowari .cont02 table tr td {
    display: block;
  }
  #senkyowari .cont02 table {
    width: 90%;
    margin: auto;
  }
  #senkyowari .cont02 table tr {
    margin: 0 0 30px;
  }
  #senkyowari .cont02 table tr th {
    width: 100%;
    padding: 10px 0;
    font-size: 16px;
  }
  #senkyowari .cont02 table tr td {
    font-size: 20px;
  }
  #senkyowari .cont02 .tb {
    display: none;
  }
}
@media (max-width: 430px) {
  #senkyowari .cont02 {
    padding-bottom: 90px;
  }
  #senkyowari .cont02 h3 {
    width: 410px;
    margin: 0 auto 30px;
    background-size: 120px;
  }
  #senkyowari .cont02 .text {
    width: 410px;
    margin: 0 auto 30px;
  }
  #senkyowari .cont02 table {
    width: 410px;
    margin: auto;
  }
  #senkyowari .cont02 table tr td {
    padding: 20px 10px 0;
  }
  #senkyowari .cont02 table tr td span {
    padding: 10px 0 20px 10px;
  }
  #senkyowari .cont02 table tr td .text {
    padding: 0 0 0 10px;
  }
}

#senkyowari .cont03 {
  text-align: center;
  padding: 0 0 170px;
}
#senkyowari .cont03 h3 {
  padding: 70px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 70px;
  background: url(img/senkyowari/senkyowari_text03.png) center top no-repeat;
}
#senkyowari .cont03 .button {
  text-align: center;
}
#senkyowari .cont03 .text {
  font-size: 16px;
  text-align: center;
  padding: 10px 0 90px;
  font-weight: bold;
}
#senkyowari .cont03 iframe {
  width: 1200px;
  height: 680px;
  margin: auto;
  text-align: center;
}

@media (max-width: 768px) {
  #senkyowari .cont03 {
    padding-bottom: 120px;
  }
  #senkyowari .cont03 h3 {
    margin-bottom: 50px;
  }
  #senkyowari .cont03 .button {
    max-width: 90%;
    margin: auto;
  }
  #senkyowari .cont03 .button img {
    max-width: 100%;
  }
  #senkyowari .cont03 .text {
    font-size: 14px;
    padding: 10px 0 50px;
  }
  #senkyowari .cont03 iframe {
    max-width: 90%;
    height: 400px;
  }
}
@media (max-width: 430px) {
  #senkyowari .cont03 {
    padding-bottom: 90px;
  }
  #senkyowari .cont03 h3 {
    margin-bottom: 30px;
    background-size: 300px;
  }
  #senkyowari .cont03 .button {
    max-width: 410px;
    margin: auto;
  }
  #senkyowari .cont03 .text {
    padding: 10px 0 30px;
  }
  #senkyowari .cont03 iframe {
    max-width: 410px;
    height: 350px;
  }
}

#senkyowari .cont04 {
  text-align: center;
  padding: 0 0 170px;
}
#senkyowari .cont04 h3 {
  padding: 70px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 70px;
  background: url(img/senkyowari/senkyowari_text04.png) center top no-repeat;
}
#senkyowari .cont04 .button {
  text-align: center;
}

@media (max-width: 768px) {
  #senkyowari .cont04 {
    padding-bottom: 120px;
  }
  #senkyowari .cont04 h3 {
    margin-bottom: 50px;
  }
  #senkyowari .cont04 .button {
    max-width: 90%;
    margin: auto;
  }
  #senkyowari .cont04 .button img {
    max-width: 100%;
  }
}

@media (max-width: 520px) {
  #senkyowari .cont04 h3 {
    background-size: 410px;
  }
}
@media (max-width: 430px) {
  #senkyowari .cont04 {
    padding-bottom: 90px;
  }
  #senkyowari .cont04 h3 {
    margin-bottom: 30px;
  }
  #senkyowari .cont04 .button {
    max-width: 410px;
    margin: auto;
  }
}

#senkyowari .cont05 {
  text-align: center;
  padding: 0 0 170px;
}
#senkyowari .cont05 h3 {
  padding: 70px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 70px;
  background: url(img/senkyowari/senkyowari_text05.png) center top no-repeat;
}
#senkyowari .cont05 .text {
  display: inline-block;
  text-align: left;
  font-size: 20px;
  width: 1015px;
  padding: 0 0 10px;
}
#senkyowari .cont05 .text span {
  background: #1d9add;
  color: #fff;
  font-weight: bold;
  display: inline-block;
  width: 100px;
  font-size: 16px;
  text-align: center;
  margin: 0 15px 0 0;
}

@media (max-width: 768px) {
  #senkyowari .cont05 {
    padding-bottom: 120px;
  }
  #senkyowari .cont05 h3 {
    margin-bottom: 50px;
  }

  #senkyowari .cont05 .text {
    display: inline-block;
    text-align: left;
    font-size: 18px;
    width: 90%;
    padding: 0 0 10px 120px;
    box-sizing: border-box;
    position: relative;
  }

  #senkyowari .cont05 .text span {
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media (max-width: 520px) {
  #senkyowari .cont05 h3 {
    background-size: 410px;
  }
}
@media (max-width: 430px) {
  #senkyowari .cont05 {
    padding-bottom: 60px;
  }
  #senkyowari .cont05 h3 {
    margin-bottom: 30px;
  }

  #senkyowari .cont05 .text {
    font-size: 16px;
    width: 410px;
    padding: 0 0 10px 110px;
    box-sizing: border-box;
    position: relative;
  }

  #senkyowari .cont05 .text span {
    position: absolute;
    top: 0;
    left: 0;
  }
}

#mirai02 .tb,
#mirai02 .sp {
  display: none;
}
@media (max-width: 768px) {
  #mirai02 .tb {
    display: inline-block;
  }
  #mirai02 .pc {
    display: none;
  }
}
@media (max-width: 430px) {
  #mirai02 .sp {
    display: inline-block;
  }
}
#mirai02 .key {
  background: url(img/forum/mirai02_bg01.png) center center/cover no-repeat;
}
#mirai02 .key h2 img {
  max-width: 100%;
}

@media (min-width: 768px) {
  #mirai02 .key {
    height: 649px;
    position: relative;
  }
  #mirai02 .key h2 img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

#mirai02 .cont02 {
  text-align: center;
}
#mirai02 .cont02 .img {
  padding: 70px 0;
}
#mirai02 .cont02 .text01 {
  font-size: 28px;
  font-weight: bold;
  padding-bottom: 70px;
}
#mirai02 .cont02 ul {
  text-align: left;
  list-style-type: disc;
  width: 850px;
  padding-left: 30px;
  margin: 0 auto 40px;
}
#mirai02 .cont02 ul li {
  padding-bottom: 30px;
  font-size: 20px;
  font-weight: bold;
}
#mirai02 .cont02 .text02 {
  font-size: 28px;
  padding-bottom: 170px;
  font-weight: bold;
}

#mirai02 .cont03 {
  width: 1200px;
  height: 690px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  padding-top: 100px;
}
#mirai02 .cont03::before {
  position: absolute;
  z-index: -1;
  top: -70px;
  left: 50%;
  width: 115vw;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}

#mirai02 .cont03 h3 {
  font-size: 28px;
  font-weight: bold;
  padding-bottom: 70px;
  text-align: center;
}
#mirai02 .cont03 p {
  text-align: center;
}
#mirai02 .cont03 ul {
  text-align: left;
  list-style-type: disc;
  width: 850px;
  padding-left: 30px;
  margin: 0 auto;
}
#mirai02 .cont03 ul li {
  padding-bottom: 30px;
  font-size: 20px;
  font-weight: bold;
}

@media (max-width: 768px) {
  #mirai02 .cont02 .img {
    padding: 70px 10px;
  }
  #mirai02 .cont02 .img img {
    width: 100%;
  }

  #mirai02 .cont02 .text01 {
    font-size: 18px;
  }
  #mirai02 .cont02 ul {
    width: auto;
    margin: 0 10px 40px;
  }
  #mirai02 .cont02 ul li {
    font-size: 16px;
  }
  #mirai02 .cont02 .text02 {
    font-size: 18px;
  }

  #mirai02 .cont03 {
    width: 100%;
  }
  #mirai02 .cont03 h3 {
    font-size: 18px;
  }
  #mirai02 .cont03 ul {
    width: auto;
    margin: 0 10px;
  }
  #mirai02 .cont03 ul li {
    font-size: 16px;
  }
}
#zizoku .tb,
#zizoku .sp {
  display: none;
}
@media (max-width: 768px) {
  #zizoku .tb {
    display: inline-block;
  }
  #zizoku .pc {
    display: none;
  }
}
@media (max-width: 430px) {
  #zizoku .sp {
    display: inline-block;
  }
}
#zizoku .key {
  background: url(img/forum/zizoku_key01.png) center center/cover no-repeat;
}
#zizoku .key h2 img {
  max-width: 100%;
}

@media (min-width: 768px) {
  #zizoku .key {
    height: 649px;
    position: relative;
  }
  #zizoku .key h2 img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

@media (max-width: 768px) {
  #zizoku .key {
    height: 350px;
    position: relative;
  }
  #zizoku .key h2 img {
    position: absolute;
    width: 95%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}

#zizoku .cont02 .cont {
  width: 1200px;
  margin: auto;
  margin-bottom: 70px;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  padding: 0 10px;
  position: relative;
}

#zizoku .cont01 {
  padding: 0 0 100px;
}

#zizoku .cont02 {
  position: relative;
}

#zizoku .cont02 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}

#zizoku .cont02 h3::before {
  content: "INTRODUCTION";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#zizoku .cont02::before {
  position: absolute;
  z-index: -1;
  top: -50px;
  left: 50%;
  width: 115vw;
  min-width: 430px;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}

#zizoku .cont02 .cont .cont_box {
  margin-right: 40px;
}

#zizoku .cont02 .cont:nth-of-type(2n) {
  flex-direction: row-reverse;
}

#zizoku .cont02 .cont:nth-of-type(2n) .cont_box {
  margin-left: 40px;
}

#zizoku .cont02 .cont h4 {
  font-size: 26px;
  line-height: 1.5;
  font-weight: bold;
}

#zizoku .cont02 .cont h4 .span01 {
  font-size: 16px;
  line-height: 3;
}

#zizoku .cont02 .cont h4 .span02 {
  font-size: 20px;
}

#zizoku .cont02 .cont .text03 {
  padding-top: 35px;
  font-size: 16px;
}

#zizoku .cont02 .cont .text04 {
  font-size: 16px;
}

#zizoku .cont02 .cont .text04 .span01 {
  font-size: 14px;
}

#zizoku .cont02 .cont .text02 {
  font-size: 16px;
  line-height: 2;
  padding: 85px 0 0;
  position: relative;
}
#zizoku .cont02 .cont .url {
  margin-top: 30px;
  line-height: 1.8;
  font-size: 16px;
}
#zizoku .cont02 .cont .text02::before {
  position: absolute;
  top: 40px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}

#zizoku .cont02 .cont .btn {
  margin: 45px auto 0;
  width: 250px;
  text-align: center;
}

#zizoku .cont02 .cont .btn a {
  display: block;
  font-weight: bold;
  color: #fff;
  background: #0061b2;
  padding: 15px 0;
  border-radius: 5px;
}
#zizoku .cont02 .cont .btn a:nth-of-type(2) {
  margin-top: 20px;
}

#zizoku .cont02 .cont .cont_item {
  margin-top: 40px;
}

#zizoku .cont02 .cont .cont_item .text05 {
  line-height: 1.8;
}

#zizoku .cont02 .cont .img img {
  box-shadow: 10px 10px 10px rgb(0 0 0 / 10%);
}

@media (max-width: 768px) {
  #zizoku .cont02 .cont {
    flex-direction: column-reverse;
    width: auto;
    padding: 0 20px;
  }

  #zizoku .cont02 .cont:nth-of-type(2n) {
    flex-direction: column-reverse;
  }

  #zizoku .cont02 .cont .cont_box {
    margin-top: 20px;
    margin-right: 0;
  }

  #zizoku .cont02 .cont .img {
    text-align: center;
  }

  #zizoku .cont02 .cont .img img {
    width: 100%;
    max-width: 580px;
  }

  #zizoku .cont02 .cont:nth-of-type(2n) .cont_box {
    margin-left: 0px;
  }

  #zizoku .cont02 .cont h4 {
    font-size: 16px;
    line-height: 1.5;
    font-weight: bold;
    margin-top: 10px;
  }

  #zizoku .cont02 .cont h4 .span01 {
    font-size: 12px;
    line-height: 3;
  }

  #zizoku .cont02 .cont h4 .span02 {
    font-size: 14px;
  }

  #zizoku .cont02 .cont .text03 {
    padding-top: 15px;
    font-size: 3.8vw;
  }

  #zizoku .cont02 .cont .text04 {
    font-size: 3.8vw;
  }

  #zizoku .cont02 .cont .text04 .span01 {
    font-size: 12px;
  }

  #zizoku .cont02 .cont .text02 {
    font-size: 16px;
    line-height: 2;
    padding: 85px 0 0;
    position: relative;
    font-weight: bold;
  }

  #zizoku .cont02 .cont .btn {
    margin: 30px auto 0;
    width: 100%;
    text-align: center;
    padding: 0;
  }

  #zizoku .cont02 .cont .btn a {
    display: inline-block;
    font-weight: bold;
    color: #fff;
    background: #0061b2;
    padding: 5px 0;
    border-radius: 5px;
    font-size: 16px;
    width: 240px;
  }

  #zizoku .cont02 .cont .cont_item .text05 {
    line-height: 1.8;
    font-size: 16px;
  }

  #zizoku .cont02 .cont_box .cont_item a {
    font-size: 16px;
    display: block;
    line-height: 1;
    margin-top: 5px;
  }

  #zizoku .cont02 .cont .cont_item {
    margin-top: 20px;
  }
}

#forum.jidai .cont01 .text {
  line-height: 1.4;
}
@media (max-width: 768px) {
  #forum.jidai .cont01 .text {
    font-size: 32px;
  }
  #forum.jidai .cont01 .text {
    line-height: 1.4;
  }
}
@media (max-width: 430px) {
  #forum.jidai .cont01 .text {
    font-size: 26px;
  }
  #forum.jidai .cont01 .text {
    line-height: 1.4;
  }
}
#forum.jidai .cont02 .cont img {
  box-shadow: 8px 8px 8px rgba(0, 0, 0, 0.15);
}

@media (max-width: 430px) {
  #forum.jidai .cont02 .cont .img {
    width: 420px;
  }
}

#forum.jidai .cont03 .list04 {
  margin-top: 15px;
}
#forum.jidai .cont03 .list04 li {
  margin-bottom: 10px;
  font-weight: bold;
  padding-left: 73px;
  position: relative;
}
#forum.jidai .cont03 .list04 li::before {
  content: "10/9鐚�";
  position: absolute;
  top: 0;
  left: 0;
}
#forum.jidai .cont03 .list04 li:nth-of-type(2):before {
  content: "10/16鐚�";
}
#forum.jidai .cont03 .list04 li:nth-of-type(3):before {
  content: "10/23鐚�";
}
#forum.jidai .cont03 .list04 li:nth-of-type(4):before {
  content: "10/30鐚�";
}
#forum.jidai .cont03 .list,
#forum.jidai .cont03 .list02,
#forum.jidai .cont03 .list03 {
  margin-left: 20px;
}
#forum.jidai .cont03 .list li,
#forum.jidai .cont03 .list02 li,
#forum.jidai .cont03 .list03 li {
  padding-left: 73px;
  font-weight: bold;
  position: relative;
  margin: 5px auto;
}
#forum.jidai .cont03 .list03 li {
  padding-left: 140px;
}
#forum.jidai .cont03 .list li::before {
  content: "13:00";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#forum.jidai .cont03 .list li:nth-of-type(2):before {
  content: "13:10";
}
#forum.jidai .cont03 .list li:nth-of-type(3):before {
  content: "14:30";
}
#forum.jidai .cont03 .list li:nth-of-type(4):before {
  content: "16:10";
}
#forum.jidai .cont03 .list li:nth-of-type(5):before {
  content: "";
}
#forum.jidai .cont03 .list li:nth-of-type(6):before {
  content: "";
}
#forum.jidai .cont03 .list li:nth-of-type(7):before {
  content: "18:30";
}
#forum.jidai .cont03 .list02 li::before {
  content: "10:30";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
#forum.jidai .cont03 .list02 li:nth-of-type(2):before {
  content: "10:40";
}
#forum.jidai .cont03 .list02 li:nth-of-type(3):before {
  content: "13:00";
}
#forum.jidai .cont03 .list02 li:nth-of-type(4):before {
  content: "14:30";
}
#forum.jidai .cont03 .list02 li:nth-of-type(5):before {
  content: "15:00";
}
#forum.jidai .cont03 .list03 li::before {
  content: "13:00 - 16:00";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

@media (max-width: 768px) {
  #forum.jidai .cont03 .list,
  #forum.jidai .cont03 .list02,
  #forum.jidai .cont03 .list03 {
    margin-left: 16px;
  }
  #forum.jidai .cont03 .list li,
  #forum.jidai .cont03 .list02 li,
  #forum.jidai .cont03 .list03 li {
    padding-left: 60px;
    font-weight: bold;
    position: relative;
  }
  #forum.jidai .cont03 .list03 li {
    padding-left: 125px;
  }
  #forum.jidai .cont03 .list04 li {
    padding-left: 70px;
  }
  #forum.jidai .cont03 .list04 li:nth-of-type(1) {
    padding-left: 60px;
  }
  #forum.jidai .cont03 .list li::before,
  #forum.jidai .cont03 .list02 li::before,
  #forum.jidai .cont03 .list03 li::before {
    position: absolute;
    top: 0;
    left: 0;
    transform: none;
  }
}

@media (max-width: 768px) {
  #forum.jidai .cont03 .cont:nth-of-type(1) {
    padding-top: 230px;
  }
  #forum.jidai .cont03 .cont:nth-of-type(3) {
    padding-top: 270px;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum.jidai .cont02 .cont .img {
    width: 35%;
  }
  #forum.jidai .cont03 .cont:nth-of-type(1) {
    padding-top: 0;
  }
  #forum.jidai .cont03 .cont:nth-of-type(3) {
    padding-top: 0;
  }
}

#forum.jidai .cont04 {
  position: relative;
}

#forum.jidai .cont04 h3 {
  padding-bottom: 50px;
}
#forum.jidai .cont04 h3::before {
  content: "ABOUT CORONA";
}

#forum.jidai .cont04 .text02 {
  line-height: 3;
  letter-spacing: -0.5px;
}

#forum.jidai .cont04 .text02,
#forum.jidai .cont04 .text03 {
  max-width: 800px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
  font-weight: bold;
}
#forum.jidai .cont04 .text03 {
  margin-top: -10px;
  padding-left: 15px;
  font-size: 15px;
  line-height: 2;
}

#forum.jidai .cont04::before {
  position: absolute;
  z-index: -1;
  top: -70px;
  left: 50%;
  width: 115vw;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}
@media (max-width: 768px) {
  #forum.jidai .cont04::before {
    width: 100%;
  }
  #forum.jidai .cont04 .text02 {
    font-size: 15px;
  }
  #forum.jidai .cont04 .text03 {
    margin-top: -10px;
    padding-left: 15px;
    font-size: 15px;
    line-height: 2;
  }
  #forum.jidai .cont04 h3 {
    padding-bottom: 50px;
    font-size: 22px;
  }
}

@media (max-width: 768px) {
  #mirai02.chatbot .sp {
    display: block;
  }
}
#mirai02.chatbot .cont02 {
  position: relative;
}
#mirai02.chatbot .cont02::before {
  position: absolute;
  z-index: -1;
  top: -70px;
  left: 50%;
  width: 115vw;
  height: 50%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}
#mirai02.chatbot .cont02 h3,
#mirai02.chatbot .cont03 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#mirai02.chatbot .cont02 h3::before,
#mirai02.chatbot .cont03 h3::before {
  content: "INTRODUCTION";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#mirai02.chatbot .cont02 h3:nth-of-type(2):before {
  content: "SPONSORS";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#mirai02.chatbot .cont02 h3:nth-of-type(2) {
  margin-top: 100px;
}
#mirai02.chatbot .cont03 h3 span {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-top: 10px;
}
#mirai02.chatbot .cont03 h3 span::before {
  content: "鐔�";
}
#mirai02.chatbot .cont03 h3 span::after {
  content: "鐔�";
}
#mirai02.chatbot .cont03 .text01 {
  font-size: 20px;
  font-weight: bold;
  line-height: 3;
}
#mirai02.chatbot .cont02 .img {
  padding: 0;
}
@media (max-width: 768px) {
  #mirai02.chatbot .cont02 .img {
    padding: 0;
    padding-left: 20px;
    width: 90%;
  }
}
#mirai02.chatbot .cont02 .inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#mirai02.chatbot .cont02 .inner .box {
  width: 48%;
  display: flex;
  align-items: center;
  padding: 10px 0;
  margin: 0 1%;
  margin-bottom: 30px;
}
@media (max-width: 600px) {
  #mirai02.chatbot .cont02 .inner .box {
    width: 100%;
    margin: 10px;
    box-sizing: border-box;
  }
}
#mirai02.chatbot .cont02 .inner .box .img {
  width: 33.33333333333334%;
}
#mirai02.chatbot .cont02 .inner .box .img img {
  width: 100%;
}
#mirai02.chatbot .cont02 .inner .box .text {
  width: 66.66666666666666%;
  padding: 0 10px 0 10px;
  box-sizing: border-box;
  letter-spacing: -1px;
}
#mirai02.chatbot .cont02 .inner .box:nth-of-type(4) .text {
  width: 100%;
  text-align: center;
  padding-left: calc(33.33333333333334% + 20px);
}
@media (max-width: 600px) {
  #mirai02.chatbot .cont02 .inner .box .text {
    padding: 0 10px 0 10px;
  }
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
#mirai02.chatbot .cont03 {
  height: auto;
}
#mirai02.chatbot .cont03 a {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
}
#mirai02.chatbot .cont03 .img {
  margin-top: 50px;
}
@media (max-width: 768px) {
  #mirai02.chatbot .cont03 .img {
    padding: 0;
    padding-left: 20px;
    width: 90%;
  }
  #mirai02.chatbot .cont03 .img img {
    width: 100%;
  }
  #mirai02.chatbot .cont03 .text01 {
    font-size: 16px;
    text-align: left;
    width: 90%;
    margin: auto;
  }
  #mirai02.chatbot .cont02 .inner .box .text {
    font-size: 20px;
  }
}
@media (max-width: 430px) {
  #mirai02.chatbot .cont02 h3:nth-of-type(2) {
    margin-top: 60px;
  }
  #mirai02.chatbot .cont03 {
    padding-top: 60px;
  }
  #mirai02.chatbot .cont02 h3,
  #mirai02.chatbot .cont03 h3 {
    padding-bottom: 45px;
    line-height: 1.2;
  }
  #mirai02.chatbot .cont03 .img {
    margin-top: 30px;
  }
  #mirai02.chatbot .cont02 ul {
    margin-bottom: 0;
  }
  #mirai02 .cont03::before,
  #mirai02.chatbot .cont02::before {
    width: 100%;
  }
}

/* forum11 */
#forum.forum11 .key h2 img {
  height: auto;
}
#forum.forum11 .cont01 .text span::before,
#forum.forum11 .cont01 .text span::after {
  content: "~";
  padding: 0 10px;
}
#forum.forum11 .cont02 .cont {
  height: 550px;
}
#forum.forum11 .cont02 .cont:nth-of-type(1) h4 {
  line-height: 0.6;
}
#forum.forum11 .cont02 .cont h4 span {
  font-size: 26px;
}
#forum.forum11 .cont02 .cont .text {
  letter-spacing: -0.5px;
}
#forum.forum11 .cont03 .text03 {
  text-align: center;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
}
#forum.forum11 .cont03 .text03:nth-of-type(1) {
  margin-top: 70px;
}
#forum.forum11 .cont03 .text04 {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
#forum.forum11 .cont03 .text03 span {
  text-align: center;
  font-size: 24px;
}
#forum.forum11 .cont03 .text03:nth-of-type(4) {
  margin: 100px auto 60px;
}
#forum.forum11 .cont03 .img02 {
  text-align: center;
  margin: 40px auto 40px;
}
#forum.forum11 .cont02 .cont .img img {
  box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
  height: auto;
}
#forum.forum11 .cont03 .cont .img {
  left: 30px;
}
#forum.forum11 .cont03 table tr td a {
  text-decoration: underline;
}
#forum.forum11 .cont03 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum.forum11 .cont03 .cont:nth-of-type(2n) .img {
  position: absolute;
  top: 0;
  left: auto;
  right: 30px;
}
#forum.forum11 .cont03 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum.forum11 .cont03 .cont .text02 {
  letter-spacing: -0.5px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont02 */
  #forum.forum11 .cont02 .cont {
    padding: 0 15px 0 45%;
    height: auto;
    min-height: 265px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(2) {
    padding: 0 45% 0 15px;
    min-height: 290px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(3) {
    min-height: 340px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum .cont02 .cont .img {
    left: 15px;
  }
  #forum .cont02 .cont:nth-of-type(2n) .img {
    right: 15px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(1) h4 {
    line-height: 1.5;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(1) h4 br {
    display: none;
  }

  /* cont03 */
  #forum.forum11 .cont03 .text04 {
    width: 90%;
    margin: auto;
  }
  #forum.forum11 .cont03 .cont {
    padding: 0 15px 0 40%;
  }
  #forum.forum11 .cont03 .cont:nth-of-type(2n) {
    padding: 0 40% 0 15px;
  }
  #forum.forum11 .cont03 .cont .img {
    width: 35%;
    left: 20px;
  }
  #forum.forum11 .cont03 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum.forum11 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.forum11 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
}

@media (max-width: 430px) {
  #forum.forum11 .cont02 .cont {
    height: auto;
  }
  #forum.forum11 .cont01 .text {
    font-size: 26px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(1),
  #forum.forum11 .cont02 .cont:nth-of-type(2) {
    padding-top: 430px;
  }
  #forum.forum11 .cont02 .cont:nth-of-type(3) {
    padding-top: 500px;
  }
  #forum.forum11 .cont03 .text03 {
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.2;
  }
  #forum.forum11 .cont03 .text03 span {
    text-align: center;
    font-size: 22px;
  }
}

/* forum2022-02 */
@media (max-width: 768px) {
  #forum.forum2022-02 .cont01 .text02 {
    text-align: center;
  }
}
#forum.forum2022-02 .key {
  background: url(img/forum/forum2022-02_key_bg.png) no-repeat center / cover;
}
#forum.forum2022-02 .key .inner {
  width: 1200px;
  height: 649px;
  margin: 0 auto;
  position: relative;
}
#forum.forum2022-02 .key h2 img {
  position: absolute;
  top: 0;
  left: -50px;
  transform: none;
}
@media (max-width: 768px) {
  #forum.forum2022-02 .key h2 img {
    position: absolute;
    top: 0;
    left: -20px;
    transform: none;
  }
}
#forum.forum2022-02 .cont01 h3::before {
  display: none;
}
#forum.forum2022-02 .cont01 h3 {
  color: #0099dd;
  font-size: 42px;
  font-weight: bold;
}
#forum.forum2022-02 .cont01 {
  padding-bottom: 150px;
}
#forum.forum2022-02 .cont01 .text {
  line-height: 1.1;
}
#forum.forum2022-02 .cont01 .text span {
  font-size: 24px;
}
#forum.forum2022-02 .cont01 .text span::before,
#forum.forum2022-02 .cont01 .text span::after {
  content: "~";
  padding: 0 10px;
}
#forum.forum2022-02 .cont01 ul {
  width: 880px;
  margin: 140px auto 0;
  display: flex;
  flex-wrap: wrap;
}
#forum.forum2022-02 .cont01 ul li {
  margin-right: 20px;
}
#forum.forum2022-02 .cont01 ul li:nth-of-type(6n) {
  margin-right: 0;
}
#forum.forum2022-02 .cont01 ul li:nth-of-type(n + 7) {
  margin-top: 20px;
}

#forum.forum2022-02 .cont02 .cont {
  padding-top: 30px;
}
#forum.forum2022-02 .cont02 .cont .img img {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(1) {
  height: 550px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(2) {
  height: 600px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(3) {
  height: 550px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(4) {
  height: 550px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(5) {
  height: 500px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(2n + 1) {
  padding-right: 20px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(2n) {
  padding-left: 20px;
}
#forum.forum2022-02 .cont02 .cont h4 {
  font-size: 30px;
  line-height: 0.8;
}
#forum.forum2022-02 .cont02 .cont h4 span {
  font-size: 24px;
}
#forum.forum2022-02 .cont02 .cont:nth-of-type(4) h4 span,
#forum.forum2022-02 .cont02 .cont:nth-of-type(5) h4 span {
  line-height: 1.5;
  display: block;
  margin-bottom: 20px;
  font-size: 22px;
}

#forum.forum2022-02 .cont03 table {
  padding-bottom: 100px;
}
#forum.forum2022-02 .cont03 .cont h4 span {
  margin-bottom: 10px;
}
#forum.forum2022-02 .cont03 .cont .text01 {
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
}
#forum.forum2022-02 .cont03 .cont .text01 span {
  font-size: 20px;
  font-weight: bold;
  margin-top: 15px;
  display: inline-block;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(3) .text01 {
  line-height: 1.5;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(3) .text01 span {
  margin-top: 10px;
}
#forum.forum2022-02 .cont03 .cont .img {
  left: 30px;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img {
  position: absolute;
  top: 0;
  left: auto;
  right: 30px;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(2) .img img {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
#forum.forum2022-02 .cont03 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum.forum2022-02 .cont03 .cont:last-of-type .text02 {
  font-size: 15px;
  letter-spacing: -1.5px;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(1) {
  height: 500px;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(2) {
  height: 520px;
  min-height: auto;
}
#forum.forum2022-02 .cont03 .cont:nth-of-type(3) {
  height: 500px;
}

#forum.forum2022-02 .cont05 {
  width: 1200px;
  margin: 0 auto 150px;
}
#forum.forum2022-02 .cont05 h3 {
  font-size: 34px;
  font-weight: bold;
  text-align: center;
}
#forum.forum2022-02 .cont05 .text01 {
  text-align: center;
  font-weight: bold;
  line-height: 2;
  margin-top: 55px;
}
#forum.forum2022-02 .cont05 ul {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  padding-left: 100px;
  margin-top: 100px;
}
#forum.forum2022-02 .cont05 ul li {
  width: 470px;
  box-sizing: border-box;
  padding-left: 150px;
  position: relative;
  min-height: 130px;
}
#forum.forum2022-02 .cont05 ul li:nth-of-type(2n) {
  margin-left: 25px;
  width: 485px;
}
#forum.forum2022-02 .cont05 ul li:nth-of-type(n + 3) {
  margin-top: 30px;
}
#forum.forum2022-02 .cont05 ul li .img {
  position: absolute;
  top: 0;
  left: 0;
}
#forum.forum2022-02 .cont05 ul li h4 {
  font-size: 20px;
  font-weight: bold;
}
#forum.forum2022-02 .cont05 ul li .text02 {
  margin-top: 10px;
  letter-spacing: 0.5px;
}
#forum.forum2022-02 .cont05 .btn {
  text-align: center;
  display: block;
  margin-top: 60px;
}
#forum.forum2022-02 .cont05 .btn a {
  display: inline-block;
  width: 400px;
  height: 60px;
  line-height: 60px;
  color: #ffff;
  font-weight: bold;
  font-size: 20px;
  background: #0099dd;
}
#forum.forum2022-02 .cont04 p.text02 {
  width: 90%;
  max-width: 860px;
  margin: 0 auto;
  color: red;
}
#forum.forum2022-02 .cont04 table {
  margin-bottom: 10px !important;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont03 */
  #forum.forum2022-02 .cont03 .cont {
    min-height: 190px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(1) {
    height: auto;
    min-height: 190px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2n) {
    height: auto;
    padding: 0 42% 0 15px;
    min-height: 190px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(3) {
    height: auto;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum.forum2022-02 .cont03 .cont .text01 {
    font-size: 22px;
  }
  #forum.forum2022-02 .cont03 .cont .img {
    width: 35%;
    left: 25px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img {
    right: 25px;
  }
  #forum.forum2022-02 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum.forum2022-02 .cont03 .cont .text02 {
    padding-bottom: 0;
  }
  #forum.forum2022-02 .cont03 .cont .text02::before {
    top: 25px;
  }

  /* cont05 */
  #forum.forum2022-02 .cont05 {
    width: 100%;
  }
  #forum.forum2022-02 .cont05 .text01 {
    width: 80%;
    margin: 40px auto 0;
  }
  #forum.forum2022-02 .cont05 ul {
    padding: 0 15px;
    margin-top: 70px;
    justify-content: space-between;
  }
  #forum.forum2022-02 .cont05 ul li {
    width: 48%;
    padding-left: 130px;
    min-height: 110px;
  }
  #forum.forum2022-02 .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.forum2022-02 .cont05 ul li:nth-of-type(2n) {
    margin-left: 0;
    width: 48%;
  }
  #forum.forum2022-02 .cont05 ul li h4 {
    font-size: 18px;
  }
  #forum.forum2022-02 .cont05 ul li .text02 {
    font-size: 14px;
    letter-spacing: 0;
  }
}

@media (max-width: 430px) {
  #forum.forum2022-02 .cont01 h3 {
    color: #0099dd;
    font-size: 32px;
    font-weight: bold;
  }
  #forum.forum2022-02 .key .inner {
    width: 100%;
    height: 220px;
    margin: 0 auto;
    position: relative;
  }
  #forum.forum2022-02 .key h2 img {
    position: absolute;
    top: 0;
    left: -10px;
    transform: none;
  }
  #forum.forum2022-02 .key .inner img {
    max-width: 100%;
    height: auto;
  }
  #forum.forum2022-02 .cont01 {
    padding-bottom: 100px;
  }
  #forum.forum2022-02 .cont01 .text {
    line-height: 1.5;
    font-size: 24px;
  }
  #forum.forum2022-02 .cont01 .text span {
    font-size: 18px;
  }
  #forum.forum2022-02 .cont01 .text02 {
    text-align: left;
    letter-spacing: -0.5px;
  }
  #forum.forum2022-02 .cont01 ul {
    width: 400px;
    margin: 80px auto 0;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
  }
  #forum.forum2022-02 .cont01 ul li {
    margin-right: 0;
  }
  #forum.forum2022-02 .cont01 ul li:last-of-type {
    margin-right: auto;
    margin-left: 20px;
  }
  #forum.forum2022-02 .cont01 ul li img {
    width: 120px;
  }
  #forum.forum2022-02 .cont01 ul li:nth-of-type(n + 4) {
    margin-top: 20px;
  }

  #forum.forum2022-02 .cont02 .cont {
    height: auto;
    padding-top: 460px;
  }
  #forum.forum2022-02 .cont02 .cont:nth-of-type(1),
  #forum.forum2022-02 .cont02 .cont:nth-of-type(2),
  #forum.forum2022-02 .cont02 .cont:nth-of-type(3),
  #forum.forum2022-02 .cont02 .cont:nth-of-type(4),
  #forum.forum2022-02 .cont02 .cont:nth-of-type(5) {
    height: auto;
  }
  #forum.forum2022-02 .cont02 .cont:nth-of-type(1) {
    padding-top: 440px;
  }
  #forum.forum2022-02 .cont02 .cont:nth-of-type(4) {
    padding-top: 430px;
  }
  #forum.forum2022-02 .cont02 .cont:nth-of-type(5) {
    padding-top: 400px;
  }
  #forum.forum2022-02 .cont02 .cont .img img {
    max-width: 400px;
    height: auto;
  }
  #forum.forum2022-02 .cont02 .cont:nth-of-type(2) .text {
    letter-spacing: -1px;
  }

  #forum.forum2022-02 .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
  }
  #forum.forum2022-02 .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img {
    position: absolute;
    top: 0;
    left: 47%;
    right: auto;
  }
  #forum.forum2022-02 .cont03 .cont .img img {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  }
  #forum.forum2022-02 .cont03 .cont .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: auto;
    right: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  }
  #forum.forum2022-02 .cont03 .cont {
    height: auto;
    padding-top: 300px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2) {
    margin-top: 100px;
    height: auto;
    padding-top: 200px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(2) h4 span {
    font-size: 20px;
    letter-spacing: -1px;
  }
  #forum.forum2022-02 .cont03 .cont .text01 {
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
  }
  #forum.forum2022-02 .cont03 .cont .text01 span {
    font-size: 18px;
    font-weight: bold;
    margin-top: 15px;
    display: inline-block;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(3) .text01 {
    font-size: 20px;
    line-height: 1.5;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(3) .text01 span {
    font-size: 14px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(4) {
    margin-top: 200px;
  }
  #forum.forum2022-02 .cont03 .cont:nth-of-type(3) .text02 {
    letter-spacing: -1px;
  }
  #forum.forum2022-02 .cont03 .cont:last-of-type .text02 {
    font-size: 14px;
  }

  #forum.forum2022-02 .cont05 {
    width: 400px;
    margin: 50px auto 100px;
  }
  #forum.forum2022-02 .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
  }
  #forum.forum2022-02 .cont05 .text01 {
    text-align: left;
    font-weight: bold;
    line-height: 2;
    font-size: 14px;
    margin-top: 45px;
  }
  #forum.forum2022-02 .cont05 ul {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    justify-content: space-between;
    padding-left: 0;
    margin-top: 70px;
  }
  #forum.forum2022-02 .cont05 ul li {
    width: 180px;
    box-sizing: border-box;
    padding-left: 0;
    padding-top: 150px;
    position: relative;
    min-height: auto;
  }
  #forum.forum2022-02 .cont05 ul li:nth-of-type(2n) {
    margin-left: 0px;
    width: 190px;
  }
  #forum.forum2022-02 .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.forum2022-02 .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum.forum2022-02 .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
  }
  #forum.forum2022-02 .cont05 ul li .text02 {
    margin-top: 10px;
    letter-spacing: 0.5px;
    font-size: 14px;
    letter-spacing: -1px;
  }
  #forum.forum2022-02 .cont05 ul li:nth-of-type(8) .text02,
  #forum.forum2022-02 .cont05 ul li:nth-of-type(12) .text02,
  #forum.forum2022-02 .cont05 ul li:nth-of-type(14) .text02,
  #forum.forum2022-02 .cont05 ul li:nth-of-type(15) .text02 {
    margin-top: 30px;
  }
  #forum.forum2022-02 .cont05 .btn {
    text-align: center;
    display: block;
    margin-top: 40px;
  }
  #forum.forum2022-02 .cont05 .btn a {
    display: inline-block;
    width: 350px;
    height: 60px;
    line-height: 60px;
    color: #ffff;
    font-weight: bold;
    font-size: 18px;
    background: #0099dd;
  }
}

/* dx
----------------------------------------------------*/
#forum.dx .cont01 .text {
  line-height: 1.1;
}
#forum.dx .cont01 .text span {
  font-size: 24px;
}
#forum.dx .cont01 .text span::before {
  content: "～";
  padding-right: 13px;
}
#forum.dx .cont01 .text span::after {
  content: "～";
  padding-left: 10px;
}
#forum.dx .cont01 .img {
  text-align: center;
  margin-top: 100px;
}
#forum.dx .cont01 .img img {
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
}
#forum.dx .cont01 .cont {
  box-sizing: border-box;
  padding-left: 630px;
  padding-top: 30px;
  position: relative;
  min-height: 400px;
  margin-top: 100px;
  width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
#forum.dx .cont01 .cont:nth-of-type(2) {
  padding-top: 20px;
}
#forum.dx .cont01 .cont:nth-of-type(3) {
  padding-top: 40px;
}
#forum.dx .cont01 .cont:nth-of-type(4) {
  padding-top: 60px;
}
#forum.dx .cont01 .cont:first-of-type {
  margin-top: 120px;
}
#forum.dx .cont01 .cont .img {
  margin-top: 0;
  position: absolute;
  top: 0;
  left: 0;
}
#forum.dx .cont01 .cont .img img {
  width: 95%;
}
#forum.dx .cont01 .cont:nth-of-type(2n) {
  padding-left: 0;
  padding-right: 630px;
}
#forum.dx .cont01 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 0;
}
#forum.dx .cont01 .cont h4 {
  font-size: 24px;
  font-weight: bold;
  position: relative;
  letter-spacing: -1px;
}
#forum.dx .cont01 .cont h4 span {
  font-weight: bold;
  font-size: 22px;
}
#forum.dx .cont01 .cont h4::before {
  position: absolute;
  bottom: -35px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum.dx .cont01 .cont:nth-of-type(2n) h4::before {
  left: 20px;
}
#forum.dx .cont01 .cont .text03 {
  margin-top: 60px;
  line-height: 2;
  padding-right: 20px;
  font-size: 16px;
  font-weight: bold;
}
#forum.dx .cont01 .cont:nth-of-type(2n) .text03,
#forum.dx .cont01 .cont:nth-of-type(2n) h4 {
  padding-right: 0;
  padding-left: 20px;
}
#forum.dx .cont01 .cont:last-of-type .text03 {
  letter-spacing: -0.5px;
}

/* cont02 */
#forum.dx .cont02 {
  margin-top: 100px;
}
#forum.dx .cont02 .cont {
  height: 450px;
  padding-top: 20px;
}
#forum.dx .cont02 .cont .img {
  left: 20px;
}
#forum.dx .cont02 h4 {
  font-size: 24px;
  position: relative;
}
#forum.dx .cont02 h4::before {
  position: absolute;
  bottom: -35px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum.dx .cont02 h4 span {
  font-size: 36px;
}
#forum.dx .cont02 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
  padding-right: 20px;
}

/* cont03 */
#forum.dx .cont03 {
  margin-top: 50px;
}
#forum.dx .cont03 table tr td span {
  font-size: 16px;
  font-weight: bold;
}

/* cont05 */
#forum.dx .cont05 {
  width: 1200px;
  margin: 0 auto 100px;
}
#forum.dx .cont05 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum.dx .cont05 h3::before {
  content: "SPONSER";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum.dx .cont05 .cont {
  padding-left: 630px;
  box-sizing: border-box;
  position: relative;
  min-height: 500px;
}
#forum.dx .cont05 .cont:first-of-type {
  padding-top: 20px;
  margin-top: 30px;
}
#forum.dx .cont05 .cont:nth-of-type(2) {
  padding-left: 0;
  padding-right: 630px;
  padding-top: 30px;
}
#forum.dx .cont05 .cont .img {
  position: absolute;
  top: 0;
  left: 40px;
  width: 550px;
}
#forum.dx .cont05 .cont:nth-of-type(2) .img {
  top: 0;
  left: auto;
  right: 40px;
}
#forum.dx .cont05 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum.dx .cont05 .cont:nth-of-type(2) .img::before {
  left: auto;
  right: -20px;
}
#forum.dx .cont05 .cont .img img {
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
  max-width: 100%;
}
#forum.dx .cont05 .cont h4 {
  font-size: 28px;
  font-weight: bold;
  line-height: 1.5;
}
#forum.dx .cont05 .cont h4 span {
  font-size: 20px;
  font-weight: bold;
}
#forum.dx .cont05 .cont .text {
  font-size: 16px;
  line-height: 2;
  margin-top: 40px;
  padding-right: 20px;
}
#forum.dx .cont05 .cont:nth-of-type(2) .text,
#forum.dx .cont05 .cont:nth-of-type(2) h4 {
  padding-right: 0;
  padding-left: 20px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #forum.dx .cont01 .cont {
    width: 100%;
    padding: 0 15px 0 45%;
    min-height: 200px;
    margin-top: 70px;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) {
    padding: 0 45% 0 15px;
  }
  #forum.dx .cont01 .cont:nth-of-type(3) {
    padding-top: 0;
  }
  #forum.dx .cont01 .cont h4 {
    font-size: 20px;
  }
  #forum.dx .cont01 .cont h4::before {
    bottom: -23px;
  }
  #forum.dx .cont01 .cont .text03 {
    font-size: 14px;
    margin-top: 45px;
  }
  #forum.dx .cont01 .cont .img {
    width: 40%;
    left: 15px;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) .img {
    right: 15px;
  }
  #forum.dx .cont01 .cont .img img {
    width: 100%;
    height: auto;
  }

  /* cont02 */
  #forum.dx .cont02 {
    margin-top: 0;
  }
  #forum.dx .cont02 .cont {
    padding-top: 0;
    min-height: 220px;
    height: auto;
  }
  #forum.dx .cont02 .cont .text01 {
    margin-top: 45px;
  }
  #forum.dx .cont02 .cont .img {
    width: 35%;
  }

  /* cont03 */
  #forum.dx .cont03 {
    margin-top: 0;
  }

  /* cont05 */
  #forum.dx .cont05 {
    width: 100%;
  }
  #forum.dx .cont05 .cont {
    padding: 0 15px 0 46%;
    min-height: 215px;
    margin-top: 70px;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) {
    padding: 0 46% 0 15px;
  }
  #forum.dx .cont05 .cont:first-of-type {
    padding-top: 0;
  }
  #forum.dx .cont05 .cont h4 {
    font-size: 22px;
  }
  #forum.dx .cont05 .cont h4 span {
    font-size: 16px;
  }
  #forum.dx .cont05 .cont .text {
    padding-right: 0;
    margin-top: 30px;
  }
  #forum.dx .cont05 .cont .img {
    width: 40%;
    left: 25px;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) .img {
    right: 25px;
  }
  #forum.dx .cont05 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) .img::before {
    bottom: -10px;
    right: -10px;
  }
}

@media (max-width: 430px) {
  #forum.dx .key .inner {
    width: 100%;
    height: 220px;
    margin: 0 auto;
    position: relative;
  }
  #forum.dx .key .inner img {
    max-width: 100%;
    height: auto;
    width: 95%;
  }
  #forum.dx .cont01 .text {
    line-height: 1.3;
  }
  #forum.dx .cont01 .text span {
    font-size: 20px;
  }
  #forum.dx .cont01 .text span::before {
    content: "～";
    padding-right: 13px;
  }
  #forum.dx .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.dx .cont01 .img {
    width: 90%;
    margin: 50px auto 0;
  }
  #forum.dx .cont01 .img img {
    max-width: 100%;
    height: auto;
  }
  #forum.dx .cont01 .cont {
    box-sizing: border-box;
    padding: 320px 15px 0;
    position: relative;
    min-height: auto;
    margin-top: 80px;
    width: 100%;
  }
  #forum.dx .cont01 .cont:nth-of-type(2) {
    padding-top: 320px;
  }
  #forum.dx .cont01 .cont:nth-of-type(3) {
    padding-top: 320px;
  }
  #forum.dx .cont01 .cont:nth-of-type(4) {
    padding-top: 320px;
  }
  #forum.dx .cont01 .cont:first-of-type {
    margin-top: 120px;
  }
  #forum.dx .cont01 .cont .img {
    margin-top: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #forum.dx .cont01 .cont .img img {
    width: 95%;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) {
    padding-left: 15px;
    padding-right: 15px;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 0;
  }
  #forum.dx .cont01 .cont h4 {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: -1px;
  }
  #forum.dx .cont01 .cont .text03 {
    padding-right: 0;
    font-size: 14px;
    font-weight: bold;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) .text03,
  #forum.dx .cont01 .cont:nth-of-type(2n) h4 {
    padding-right: 0;
    padding-left: 0px;
  }
  #forum.dx .cont01 .cont:nth-of-type(3) h4,
  #forum.dx .cont01 .cont:nth-of-type(4) h4 {
    line-height: 1.5;
  }
  #forum.dx .cont01 .cont:last-of-type .text03 {
    letter-spacing: -0.5px;
  }
  #forum.dx .cont01 .cont:nth-of-type(2n) h4::before {
    left: 0;
  }

  /* cont02 */
  #forum.dx .cont02 {
    margin-top: 100px;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.dx .cont02 .cont {
    margin-top: 30px;
    height: auto;
    padding-top: 350px;
    padding-left: 0;
    padding-right: 0;
  }
  #forum.dx .cont02 .cont .img {
    left: 0px;
  }
  #forum.dx .cont02 .cont .img img {
    max-width: 100%;
  }
  #forum.dx .cont02 h4 {
    font-size: 20px;
  }
  #forum.dx .cont02 h4 span {
    font-size: 28px;
  }
  #forum.dx .cont02 .cont .text01 {
    margin-top: 40px;
    line-height: 2;
    font-weight: bold;
    padding-right: 0;
    font-size: 14px;
  }
  #forum.dx .cont02 h4::before {
    position: absolute;
    bottom: -10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }

  /* cont03 */
  #forum.dx .cont03 {
    margin-top: 50px;
  }
  #forum.dx .cont03 table tr td span {
    font-size: 13px;
    letter-spacing: -1px;
    font-weight: bold;
  }
  #forum.dx .cont03 table tr td,
  #forum.dx .cont03 table tr th {
    font-size: 14px;
  }
  #forum.dx .cont03 table tr:last-of-type td {
    font-size: 13px;
  }

  /* cont05 */
  #forum.dx .cont05 {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
    margin: 0 auto 100px;
  }
  #forum.dx .cont05 h3 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding: 0 0 70px;
  }
  #forum.dx .cont05 h3::before {
    content: "SUPPORT";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }

  #forum.dx .cont05 .cont:first-of-type {
    padding-top: 300px;
    margin-top: 30px;
  }
  #forum.dx .cont05 .cont {
    padding-left: 0;
    padding-top: 300px;
    box-sizing: border-box;
    position: relative;
    min-height: 500px;
    height: auto;
    margin-top: 70px;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) {
    padding-left: 0;
    padding-right: 0;
    padding-top: 300px;
  }
  #forum.dx .cont05 .cont .img {
    position: absolute;
    top: 0;
    left: 20px;
    width: 95%;
  }
  #forum.dx .cont05 .cont .img img {
    max-width: 100%;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) .img {
    top: 0;
    left: auto;
    right: 20px;
  }
  #forum.dx .cont05 .cont .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) .img::before {
    left: auto;
    right: -20px;
  }
  #forum.dx .cont05 .cont .img img {
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.15);
    max-width: 100%;
    height: auto;
  }
  #forum.dx .cont05 .cont h4 {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum.dx .cont05 .cont:first-of-type h4 {
    letter-spacing: -0.5px;
    font-size: 22px;
  }
  #forum.dx .cont05 .cont h4 span {
    font-size: 16px;
    font-weight: bold;
  }
  #forum.dx .cont05 .cont .text {
    font-size: 14px;
    line-height: 2;
    margin-top: 20px;
    padding-right: 0;
  }
  #forum.dx .cont05 .cont:nth-of-type(2) .text,
  #forum.dx .cont05 .cont:nth-of-type(2) h4 {
    padding-right: 0;
    padding-left: 0px;
  }
}

@media (min-width: 431px) {
  #forum.forum2022-04 .key .inner {
    width: 1200px;
    position: relative;
    margin: 0 auto;
    height: 100%;
    z-index: 10;
  }
  #forum.forum2022-04 .key .inner::before {
    content: "";
    width: 100vw;
    height: 350px;
    background: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 45px;
    right: 510px;
    min-width: 1500px;
    z-index: -1;
  }
  @media (max-width: 1240px) {
    #forum.forum2022-04 .key h2 img {
      width: 95%;
    }
  }
  #forum.forum2022-04 .cont01 {
    background: url(img/forum/forum_bg02.png) top 470px center no-repeat;
    padding-bottom: 140px;
  }
  #forum.forum2022-04 .cont01 h3 {
    color: #0099dd;
    font-size: 42px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont01 h3::before {
    display: none;
  }
  #forum.forum2022-04 .cont01 .text {
    padding: 0 0 50px;
  }
  #forum.forum2022-04 .cont01 .text02 {
    background: none;
  }
  #forum.forum2022-04 .cont01 .text span {
    font-size: 30px;
  }
  #forum.forum2022-04 .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.forum2022-04 .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.forum2022-04 .cont01 ul {
    display: flex;
    justify-content: center;
    margin: 80px auto 0;
  }
  #forum.forum2022-04 .cont01 ul li {
    margin: 0 10px;
  }

  #forum.forum2022-04 .cont02 .cont {
    height: 440px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 50px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2n) {
    padding: 0 600px 0 70px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(1) {
    padding-top: 100px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2),
  #forum.forum2022-04 .cont02 .cont:nth-of-type(3),
  #forum.forum2022-04 .cont02 .cont:nth-of-type(5) {
    padding-top: 90px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(4) {
    padding-top: 70px;
    padding-left: 100px;
  }
  #forum.forum2022-04 .cont02 .cont .img {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    left: 160px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 230px;
  }
  #forum.forum2022-04 .cont02 .cont h4 {
    font-size: 30px;
  }
  #forum.forum2022-04 .cont02 .cont .text {
    padding-top: 70px;
  }
  #forum.forum2022-04 .cont02 .cont .text::before {
    top: 35px;
  }

  #forum.forum2022-04 .cont03 {
    padding-bottom: 70px;
  }
  #forum.forum2022-04 .cont03 h3 {
    padding: 0 0 50px;
  }
  #forum.forum2022-04 .cont03 .cont {
    padding-left: 620px;
    padding-top: 10px;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) {
    padding-left: 20px;
    padding-top: 20px;
  }
  #forum.forum2022-04 .cont03 .cont .text01 {
    font-size: 28px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont03 .cont .img {
    left: 30px;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) .img {
    left: auto;
    right: 30px;
  }
  #forum.forum2022-04 .cont03 .cont .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: auto;
    right: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) .text02 {
    font-size: 20px;
  }

  #forum.forum2022-04 .cont05 {
    margin: 0 auto 150px;
  }
  #forum.forum2022-04 .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center;
  }
  #forum.forum2022-04 .cont05 .text01 {
    margin-top: 50px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont05 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 1200px;
    margin: 60px auto 0;
  }
  #forum.forum2022-04 .cont05 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    box-sizing: border-box;
  }
  #forum.forum2022-04 .cont05 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.forum2022-04 .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.forum2022-04 .cont05 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont05 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.forum2022-04 .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.forum2022-04 .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
  }
  #forum.forum2022-04 .cont05 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum.forum2022-04 .key .inner {
    width: 100%;
  }
  #forum.forum2022-04 .key h2 {
    text-align: center;
  }
  #forum.forum2022-04 .key h2 img {
    height: auto;
  }

  /* cont02 */
  #forum.forum2022-04 .cont02 .cont {
    min-height: 320px;
    height: auto;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(1) {
    padding-top: 0px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2n) {
    padding: 0 40% 0 15px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2),
  #forum.forum2022-04 .cont02 .cont:nth-of-type(3),
  #forum.forum2022-04 .cont02 .cont:nth-of-type(5) {
    padding-top: 0;
  }
  #forum.forum2022-04 .cont02 .cont .img {
    width: 35%;
    left: 15px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(2n) .img {
    right: 15px;
  }

  /* cont03 */
  #forum.forum2022-04 .cont03 .cont {
    padding-left: 45%;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2n) {
    padding-right: 45%;
  }
  #forum.forum2022-04 .cont03 .cont .text01 {
    font-size: 24px;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) .text02 {
    font-size: 16px;
  }
  #forum.forum2022-04 .cont03 .cont .img {
    left: 20px;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) .img {
    right: 20px;
  }
  #forum.forum2022-04 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }

  /* cont05 */
  #forum.forum2022-04 .cont05 .text01 {
    width: 80%;
    margin: 35px auto 0;
  }
  #forum.forum2022-04 .cont05 ul {
    justify-content: space-between;
    padding: 0 15px;
    width: 100%;
  }
  #forum.forum2022-04 .cont05 ul li {
    padding-left: 130px;
    width: 48%;
  }
  #forum.forum2022-04 .cont05 ul li:nth-of-type(2n) {
    margin-left: 0;
  }
  #forum.forum2022-04 .cont05 ul li h4 {
    font-size: 18px;
  }
  #forum.forum2022-04 .cont05 ul li .text02 {
    font-size: 14px;
  }
  #forum.forum2022-04 .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum.forum2022-04 .key .inner {
    width: 100%;
    height: 220px;
    margin: 0 auto;
    position: relative;
  }
  #forum.forum2022-04 .key .inner::before {
    content: "";
    width: 100vw;
    height: 125px;
    background: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 10px;
    left: -170px;
    min-width: 420px;
  }
  #forum.forum2022-04 .key .inner img {
    max-width: 100%;
    height: 220px;
    width: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #forum.forum2022-04 .cont01 {
    padding: 0 0 100px;
  }
  #forum.forum2022-04 .cont01 h3 {
    color: #0099dd;
    font-size: 32px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont01 h3::before {
    display: none;
  }
  #forum.forum2022-04 .cont01 .text {
    padding: 0 0 35px;
    font-size: 26px;
  }
  #forum.forum2022-04 .cont01 .text span {
    font-size: 18px;
  }
  #forum.forum2022-04 .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.forum2022-04 .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.forum2022-04 .cont01 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 50px auto 0;
  }
  #forum.forum2022-04 .cont01 ul li {
    margin: 0 5px;
  }
  #forum.forum2022-04 .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  #forum.forum2022-04 .cont02 .cont {
    padding-top: 460px;
  }
  #forum.forum2022-04 .cont02 .cont .img {
    padding: 0;
    text-align: center;
  }
  #forum.forum2022-04 .cont02 .cont .img img {
    width: auto;
    max-width: 400px;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.forum2022-04 .cont02 .cont h4 {
    font-size: 30px;
  }
  #forum.forum2022-04 .cont02 .cont:nth-of-type(1) .text {
    letter-spacing: -0.5px;
  }

  #forum.forum2022-04 .cont03 h3 {
    padding: 0 0 30px;
  }
  #forum.forum2022-04 .cont03 table tr td {
    letter-spacing: -0.8px;
    line-height: 2;
  }
  #forum.forum2022-04 .cont03 .cont {
    padding-top: 300px;
  }
  #forum.forum2022-04 .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2n) .img {
    position: absolute;
    top: 0;
    left: 47%;
    right: auto;
  }
  #forum.forum2022-04 .cont03 .cont .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: auto;
    right: -5px;
    box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
  }
  #forum.forum2022-04 .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum.forum2022-04 .cont03 .cont .text01 {
    font-size: 22px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont03 .cont:nth-of-type(2) .text02 {
    font-size: 16px;
  }

  #forum.forum2022-04 .cont05 {
    margin: 20px auto 120px;
  }
  #forum.forum2022-04 .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center /
      380px;
  }
  #forum.forum2022-04 .cont05 .text01 {
    font-size: 16px;
    margin-top: 30px;
    text-align: center;
    line-height: 2;
    letter-spacing: -0.8px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont05 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.forum2022-04 .cont05 ul li {
    padding-left: 125px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.forum2022-04 .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum.forum2022-04 .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
  }
  #forum.forum2022-04 .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.forum2022-04 .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.forum2022-04 .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.forum2022-04 .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.forum2022-04 .cont05 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

#forum.international .key {
  background: url(img/forum/international_key_bg.png) center center / cover
    no-repeat;
}
#forum.international .cont06 .cont .text01,
#forum.international .cont06 .cont .text02 {
  font-weight: bold;
  line-height: 2;
  font-size: 16px;
}
@media (min-width: 431px) {
  #forum.international .cont01 {
    background: url(img/forum/forum_bg02.png) top 150px center no-repeat;
    padding-bottom: 140px;
  }
  #forum.international .cont01 .text {
    padding: 0 0 50px;
  }
  #forum.international .cont01 .text02 {
    background: none;
  }
  #forum.international .cont01 .text span {
    font-size: 30px;
  }
  #forum.international .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.international .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.international .cont01 ul {
    display: flex;
    justify-content: center;
    margin: 80px auto 0;
  }
  #forum.international .cont01 ul li {
    margin: 0 10px;
  }

  #forum.international .cont06 {
    width: 1200px;
    margin: 0 auto;
    position: relative;
  }
  #forum.international .cont06::before {
    position: absolute;
    z-index: -1;
    top: -50px;
    left: 50%;
    width: 115vw;
    min-width: 1200px;
    height: 115%;
    transform: translateX(-50%) skewY(-5deg);
    background: #e1f2fa;
    content: "";
  }
  #forum.international .cont06 h3 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding: 0 0 70px;
  }
  #forum.international .cont06 h3::before {
    content: "ENTRY";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }
  #forum.international .cont06 .cont {
    padding: 70px 0 0 640px;
    box-sizing: border-box;
    position: relative;
    height: 460px;
  }
  #forum.international .cont06 .cont .text01,
  #forum.international .cont06 .cont .text02 {
    font-weight: bold;
    line-height: 2;
  }
  #forum.international .cont06 .cont .text01:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  #forum.international .cont06 .cont .text01::before {
    content: "■";
    padding-right: 5px;
  }
  #forum.international .cont06 .cont .text02:nth-of-type(2) {
    letter-spacing: -0.5px;
  }
  #forum.international .cont06 .cont .img {
    width: 580px;
    position: absolute;
    top: 10px;
    left: 20px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }

  #forum.international .cont03 {
    margin-top: 100px;
    padding-bottom: 70px;
  }
  #forum.international .cont03 h3 {
    padding-bottom: 50px;
  }
  #forum.international .cont03 h3::before {
    content: "CONTENT";
  }
  #forum.international .cont03 .text01 {
    text-align: center;
    font-size: 20px;
    line-height: 2;
    margin-bottom: 80px;
  }
  #forum.international .cont03 .text02 {
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 50px;
  }
  #forum.international .cont03 table {
    padding-bottom: 80px;
  }

  #forum.international .cont05 {
    margin: 0 auto 150px;
  }
  #forum.international .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center;
  }
  #forum.international .cont05 .text01 {
    margin-top: 50px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
    font-size: 16px;
  }
  #forum.international .cont05 ul {
    display: flex;
    flex-wrap: wrap;
    width: 1200px;
    margin: 60px auto 0;
    padding-left: 100px;
    box-sizing: border-box;
  }
  #forum.international .cont05 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    letter-spacing: 0.5px;
    box-sizing: border-box;
  }
  #forum.international .cont05 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.international .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.international .cont05 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.international .cont05 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
    letter-spacing: 0;
    font-size: 16px;
  }
  #forum.international .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.international .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
    font-size: 20px;
  }
  #forum.international .cont05 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 12px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont06 */
  #forum.international .cont06 {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.international .cont06 .cont {
    padding: 0 0 0 45%;
    height: auto;
  }
  #forum.international .cont06 .cont .text01,
  #forum.international .cont06 .cont .text02 {
    font-size: 14px;
  }
  #forum.international .cont06 .cont .img {
    width: 40%;
    left: 5px;
  }
  #forum.international .cont06 .cont .img img {
    width: 100%;
    height: auto;
  }

  /* cont03 */
  #forum.international .cont03 .text01 {
    padding: 0 15px;
    text-align: left;
  }

  /* cont05 */
  #forum.international .cont05 .text01 {
    width: 80%;
    margin: 35px auto 0;
  }
  #forum.international .cont05 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum.international .cont05 ul li {
    width: 48%;
    padding-left: 130px;
  }
  #forum.international .cont05 ul li:nth-of-type(2n) {
    margin: 0;
  }
  #forum.international .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 30px;
  }
  #forum.international .cont05 ul li h4 {
    font-size: 18px;
  }
  #forum.international .cont05 ul li .text02 {
    font-size: 14px;
  }
  #forum.international .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
}

@media (max-width: 431px) {
  #forum.international .key h2 img {
    height: auto;
  }
  #forum.international .cont01 {
    padding: 0 0 100px;
  }
  #forum.international .cont01 .text {
    padding: 0 0 35px;
    font-size: 26px;
  }
  #forum.international .cont01 .text span {
    font-size: 18px;
  }
  #forum.international .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.international .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.international .cont01 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 50px auto 0;
  }
  #forum.international .cont01 ul li {
    margin: 0 5px;
  }
  #forum.international .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  #forum.international .cont06 {
    width: 400px;
    margin: 0 auto;
    position: relative;
  }
  #forum.international .cont06::before {
    position: absolute;
    z-index: -1;
    top: -40px;
    left: 50%;
    width: 450px;
    min-width: 1200px;
    height: 112%;
    transform: translateX(-50%) skewY(-5deg);
    background: #e1f2fa;
    content: "";
  }
  #forum.international .cont06 h3 {
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    padding: 0 0 50px;
  }
  #forum.international .cont06 h3::before {
    content: "ENTRY";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 42px;
    line-height: 1.6;
  }
  #forum.international .cont06 .cont {
    padding: 340px 0 0;
    box-sizing: border-box;
    position: relative;
  }
  #forum.international .cont06 .cont .text01,
  #forum.international .cont06 .cont .text02 {
    font-weight: bold;
    line-height: 2;
    font-size: 16px;
  }
  #forum.international .cont06 .cont .text02 {
    font-size: 15px;
  }
  #forum.international .cont06 .cont .text01:nth-of-type(n + 2) {
    margin-top: 20px;
  }
  #forum.international .cont06 .cont .text01::before {
    content: "■";
    padding-right: 5px;
  }
  #forum.international .cont06 .cont .img {
    position: absolute;
    top: 0;
    left: 0;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.15);
  }
  #forum.international .cont06 .cont .img img {
    max-width: 100%;
    height: auto;
  }

  #forum.international .cont03 {
    margin-top: 100px;
  }
  #forum.international .cont03 h3 {
    padding: 0 0 30px;
  }
  #forum.international .cont03 h3::before {
    content: "CONTENT";
    font-size: 42px;
  }
  #forum.international .cont03 .text01 {
    width: 400px;
    margin: 0 auto 50px;
    line-height: 2.3;
    font-size: 14px;
    font-weight: bold;
  }
  #forum.international .cont03 table tr td {
    letter-spacing: -0.8px;
    line-height: 2;
  }
  #forum.international .cont03 table:last-of-type tr:nth-of-type(2) td {
    font-size: 15px;
    padding-right: 15px;
    letter-spacing: -1px;
  }
  #forum.international .cont03 .text02 {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
  }

  #forum.international .cont05 {
    margin: 20px auto 100px;
  }
  #forum.international .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center /
      380px;
  }
  #forum.international .cont05 .text01 {
    font-size: 16px;
    margin-top: 30px;
    text-align: center;
    line-height: 2;
    letter-spacing: -0.8px;
    font-weight: bold;
  }
  #forum.international .cont05 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.international .cont05 ul li {
    padding-left: 120px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.international .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum.international .cont05 ul li h4 {
    font-size: 17px;
    font-weight: bold;
    letter-spacing: -1px;
  }
  #forum.international .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.international .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.international .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.international .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.international .cont05 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

@media (min-width: 431px) {
  #forum.dx02 .key {
    background: url(img/forum/dx02_key_bg.png) center center / cover no-repeat;
  }
  #forum.dx02 .key h2 img {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum.dx02 .key .inner {
    width: 1200px;
    position: relative;
    margin: 0 auto;
    height: 100%;
    z-index: 10;
  }

  @media (max-width: 1240px) {
    #forum.dx02 .key h2 img {
      width: 95%;
    }
  }
  #forum.dx02 .cont01 {
    background: url(img/forum/forum_bg02.png) top 150px center no-repeat;
    padding-bottom: 140px;
  }
  #forum.dx02 .cont01 .text {
    padding: 0 0 50px;
    font-size: 40px;
  }
  #forum.dx02 .cont01 .text02 {
    background: none;
  }
  #forum.dx02 .cont01 .text span {
    font-size: 20px;
  }
  #forum.dx02 .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.dx02 .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.dx02 .cont01 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    max-width: 900px;
    margin: 80px auto 0;
  }

  #forum.dx02 .cont02 {
    margin-top: 30px;
  }
  #forum.dx02 .cont02 .cont {
    height: 380px;
    min-height: 380px;
    padding: 20px 0 0 630px;
  }
  #forum.dx02 .cont02 .cont .img {
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.dx02 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 100px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(2n) {
    padding: 20px 600px 0 70px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(2n) h4 {
    padding-right: 0;
    padding-left: 0;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 20px;
  }
  #forum.dx02 .cont02 .cont .text {
    padding-top: 70px;
  }
  #forum.dx02 .cont02 .cont .text::before {
    top: 35px;
  }
  #forum.dx02 .cont02 .cont .text01 {
    font-size: 15.5px;
  }

  #forum.dx02 .cont03 {
    padding-bottom: 70px;
  }
  #forum.dx02 .cont03 h3 {
    padding: 0 0 50px;
  }
  #forum.dx02 .cont03 table tr td span {
    font-size: 20px;
    line-height: 2;
  }
  #forum.dx02 .cont03 table .span01::before {
    content: "①";
  }
  #forum.dx02 .cont03 table .span02::before {
    content: "②";
  }
  #forum.dx02 .cont03 table .span03::before {
    content: "③";
  }
  #forum.dx02 .cont03 table tr td .span04 {
    font-size: 14px;
  }
  #forum.dx02 .cont03 table .span04::before {
    content: "※";
  }
  #forum.dx02 .cont03 .cont {
    padding-left: 620px;
    padding-top: 10px;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2) {
    padding-left: 20px;
    padding-top: 20px;
    margin-top: 70px;
  }
  #forum.dx02 .cont03 .cont .text01 {
    font-size: 28px;
    font-weight: bold;
  }
  #forum.dx02 .cont03 .cont .img {
    left: 30px;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2) .img {
    left: auto;
    right: 30px;
  }
  #forum.dx02 .cont03 .cont .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: auto;
    right: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  }
  #forum.dx02 .cont03 .cont .img img {
    width: 100%;
  }
  #forum.dx .cont03 .cont h4 {
    position: relative;
    line-height: 1.5;
  }
  #forum.dx .cont03 .cont:nth-of-type(2n) h4 {
    padding-right: 0;
    padding-left: 0;
  }
  #forum.dx .cont03 .cont h4 span {
    font-weight: bold;
    font-size: 24px;
    padding-left: 20px;
    margin-bottom: 20px;
  }
  #forum.dx02 .cont03 .cont .text {
    line-height: 2;
    padding: 30px 0 0 0;
    text-align: left;
  }
  #forum.dx02 .cont03 .cont .text:nth-of-type(1) {
    padding: 30px 20px 0 0;
  }

  #forum.dx02 .cont05 {
    margin: 0 auto 150px;
  }
  #forum.dx02 .cont05 .cont:first-of-type {
    margin-top: 10px;
  }
  #forum.dx02 .cont05 .cont {
    min-height: 460px;
  }
  #forum.dx02 .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    padding-bottom: 40px;
  }
  #forum.dx02 .cont05 .text {
    text-align: center;
    font-weight: bold;
    line-height: 2;
    font-size: 18px;
  }
  #forum.dx02 .cont05 .text span {
    font-size: 14px;
    font-weight: bold;
  }
  #forum.dx02 .cont05 .inner {
    max-width: 1200px;
    margin: 50px auto 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
  #forum.dx02 .cont05 .inner .item {
    width: 48%;
    display: flex;
    align-items: center;
    padding: 10px 0;
    margin: 0 1%;
    margin-bottom: 30px;
  }
  #forum.dx02 .cont05 .inner .item03 {
    padding-left: 100px;
    box-sizing: border-box;
  }
  #forum.dx02 .cont05 .inner .item .img {
    width: 33.33333333333334%;
  }
  #forum.dx02 .cont05 .inner .item .text01 {
    width: 66.66666666666666%;
    padding: 0 10px 0 10px;
    box-sizing: border-box;
    letter-spacing: -1px;
    font-size: 16px;
  }
  #forum.dx02 .cont05 .inner .item02 .text01 {
    padding-left: 200px;
    width: 100%;
  }

  #forum.dx02 .cont06 {
    margin-bottom: 120px;
  }
  #forum.dx02 .cont06 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
  }
  #forum.dx02 .cont06 h3::before {
    content: "SDGs";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }
  #forum.dx02 .cont06 .text01 {
    text-align: center;
    line-height: 2;
    font-weight: bold;
    margin-top: 25px;
  }
  #forum.dx02 .cont06 ul {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    width: 1200px;
    padding: 0 80px;
    box-sizing: border-box;
    margin: 60px auto 0;
  }
  #forum.dx02 .cont06 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    box-sizing: border-box;
  }
  #forum.dx02 .cont06 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.dx02 .cont06 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.dx02 .cont06 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.dx02 .cont06 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
    font-size: 16px;
  }
  #forum.dx02 .cont06 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.dx02 .cont06 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
  }
  #forum.dx02 .cont06 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum.dx02 .key .inner {
    width: 100%;
  }
  #forum.dx02 .key h2 {
    text-align: center;
  }
  #forum.dx02 .key h2 img {
    width: 95%;
    position: static;
    transform: none;
    height: auto;
  }

  /* cont02 */
  #forum.dx02 .cont02 .cont {
    padding: 10px 15px 0 45%;
    height: auto;
    min-height: 205px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(2n) {
    padding: 10px 45% 0 15px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum.dx .cont02 h4 {
    font-size: 20px;
  }
  #forum.dx .cont02 h4 span {
    font-size: 28px;
  }
  #forum.dx .cont02 h4::before {
    bottom: -23px;
  }
  #forum.dx02 .cont02 .cont .text01 {
    font-size: 16px;
    margin-top: 45px;
  }
  #forum.dx .cont02 .cont .img {
    left: 15px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(2n) .img {
    right: 15px;
  }

  /* cont03 */
  #forum.dx02 .cont03 {
    margin-top: 0px;
  }
  #forum.dx02 .cont03 .cont {
    padding: 10px 15px 0 45%;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2) {
    padding: 10px 45% 0 15px;
  }
  #forum.dx .cont03 .cont h4 span {
    margin-bottom: 10px;
    font-size: 20px;
  }
  #forum.dx02 .cont03 .cont .text01 {
    font-size: 24px;
  }
  #forum.dx02 .cont03 .cont .img {
    left: 20px;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2) .img {
    right: 20px;
  }
  #forum.dx02 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }

  /* cont06 */
  #forum.dx02 .cont06 h3 {
    font-size: 24px;
  }
  #forum.dx02 .cont06 .text01 {
    width: 80%;
    margin: 35px auto 0;
  }
  #forum.dx02 .cont06 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum.dx02 .cont06 ul li {
    width: 48%;
    padding-left: 130px;
  }
  #forum.dx02 .cont06 ul li:nth-of-type(2n) {
    margin: 0;
  }
  #forum.dx02 .cont06 ul li h4 {
    font-size: 18px;
  }
  #forum.dx02 .cont06 ul li .text02 {
    font-size: 14px;
  }
  #forum.dx02 .cont06 ul li .img img {
    width: 110px;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum.dx02 .key {
    background: url(img/forum/dx02_key_bg.png) center center / cover no-repeat;
  }
  #forum.dx02 .key h2 img {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum.dx02 .key .inner {
    width: 100%;
    height: 220px;
    position: relative;
    margin: 0 auto;
    z-index: 10;
  }

  #forum.dx02 .cont01 h3 {
    color: #0099dd;
    font-size: 32px;
    font-weight: bold;
  }
  #forum.dx02 .cont01 h3::before {
    display: none;
  }
  #forum.dx02 .cont01 .text {
    padding: 0 0 35px;
    font-size: 26px;
  }
  #forum.dx02 .cont01 .text span {
    font-size: 18px;
  }
  #forum.dx02 .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.dx02 .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.dx02 .cont01 ul {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    margin: 50px auto 70px;
    padding: 0 15px;
  }
  #forum.dx02 .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  #forum.dx02 .cont02 {
    margin-top: 0;
  }
  #forum.dx02 .cont02 .cont {
    padding-top: 280px;
    padding-bottom: 50px;
  }
  #forum.dx02 .cont02 .cont h4 {
    font-size: 16px;
  }
  #forum.dx02 .cont02 h4::before {
    bottom: -15px;
  }
  #forum.dx02 .cont02 .cont h4 span {
    font-size: 24px;
    margin-top: 5px;
  }
  #forum.dx02 .cont02 .cont .img {
    padding: 0;
    text-align: center;
  }
  #forum.dx02 .cont02 .cont .img img {
    width: auto;
    max-width: 400px;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
    height: auto;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(1) .text {
    letter-spacing: -0.5px;
  }
  #forum.dx02 .cont02 .cont:nth-of-type(4) .text01 {
    letter-spacing: -0.3px;
  }

  #forum.dx02 .cont03 {
    margin-top: 30px;
  }
  #forum.dx02 .cont03 h3 {
    padding: 0 0 30px;
  }
  #forum.dx02 .cont03 table tr td {
    letter-spacing: -1px;
    line-height: 2;
  }
  #forum.dx02 .cont03 table tr td a {
    font-size: 14px;
  }
  #forum.dx02 .cont03 table .span01 {
    letter-spacing: -0.5px;
  }
  #forum.dx02 .cont03 table .span01::before {
    content: "①";
  }

  #forum.dx02 .cont03 table .span02::before {
    content: "②";
  }

  #forum.dx02 .cont03 table .span03::before {
    content: "③";
  }

  #forum.dx02 .cont03 table tr td .span04 {
    font-size: 12px;
  }
  #forum.dx02 .cont03 table tr:nth-of-type(4) th {
    font-size: 11px;
  }
  #forum.dx02 .cont03 table .span04::before {
    content: "※";
  }
  #forum.dx02 .cont03 .cont {
    padding-top: 300px;
    margin-top: 60px;
    min-height: auto;
  }
  #forum.dx02 .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2n) .img {
    position: absolute;
    top: 0;
    left: 47%;
    right: auto;
  }
  #forum.dx02 .cont03 .cont .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.dx02 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: auto;
    right: -5px;
    box-shadow: 5px 5px 10px rgb(0 0 0 / 30%);
  }
  #forum.dx02 .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum.dx02 .cont03 .cont h4 {
    position: relative;
  }
  #forum.dx02 .cont03 .cont h4::before {
    display: none;
  }
  #forum.dx02 .cont03 .cont h4 span {
    font-weight: bold;
    font-size: 22px;
    padding-left: 15px;
    margin-bottom: 15px;
  }
  #forum.dx02 .cont03 .cont .text01 {
    font-size: 22px;
    font-weight: bold;
    line-height: 1;
  }
  #forum.dx02 .cont03 .cont .text {
    font-size: 14px;
    line-height: 2;
    padding: 20px 0 0 0;
    text-align: left;
  }
  #forum.dx02 .cont03 .cont .text02 {
    padding-top: 45px;
    padding-bottom: 0;
  }
  #forum.dx02 .cont03 .cont .text02::before {
    top: 23px;
  }
  #forum.dx02 .cont03 .cont:last-of-type .text02 {
    letter-spacing: -0.5px;
  }

  #forum.dx02 .cont05 {
    margin: 20px auto 70px;
  }
  #forum.dx02 .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    padding-bottom: 30px;
  }
  #forum.dx02 .cont05 h3::before {
    content: "SPONSER";
  }
  #forum.dx02 .cont05 .text {
    font-weight: bold;
  }
  #forum.dx02 .cont05 .text span {
    font-weight: bold;
    font-size: 12px;
  }
  #forum.dx02 .cont05 .inner {
    margin-top: 20px;
  }
  #forum.dx02 .cont05 .item {
    width: 100%;
    margin: 10px 0 10px 20px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    padding: 10px 0;
  }
  #forum.dx02 .cont05 .item02 {
    width: 100%;
    padding-left: 155px;
  }
  #forum.dx02 .cont05 .item img {
    width: 33.33333333333334%;
    height: auto;
    padding: 0;
  }
  #forum.dx02 .cont05 .item .text01 {
    font-size: 14px;
    padding: 0 10px 0 20px;
    width: 66.66666666666666%;
    box-sizing: border-box;
    letter-spacing: -1px;
  }
  #forum.dx02 .cont05 .item02 .text01 {
    width: 100%;
    padding: 0;
  }

  #forum.dx02 .cont06 {
    margin-top: 70px;
    margin-bottom: 100px;
  }
  #forum.dx02 .cont06 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
  }
  #forum.dx02 .cont06 h3::before {
    content: "SDGs";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }
  #forum.dx02 .cont06 .text01 {
    font-size: 16px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
    margin-top: 20px;
  }
  #forum.dx02 .cont06 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.dx02 .cont06 ul li {
    padding-left: 125px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.dx02 .cont06 ul li:nth-of-type(n + 2) {
    margin-top: 25px;
  }
  #forum.dx02 .cont06 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum.dx02 .cont06 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.dx02 .cont06 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.dx02 .cont06 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.dx02 .cont06 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.dx02 .cont06 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

@media (min-width: 431px) {
  #forum.bcp .key {
    background: url(img/forum/bcp_key_bg.png) center center / cover no-repeat;
  }
  #forum.bcp .cont01 {
    background: url(img/forum/forum_bg02.png) top 140px center no-repeat;
  }
  #forum.bcp .cont01 .text span {
    font-size: 30px;
    font-weight: bold;
    display: inline-block;
  }
  #forum.bcp .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.bcp .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.bcp .cont01 .text02 {
    background: none;
  }
  #forum.bcp .cont01 ul {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 80px auto 0;
  }

  #forum.bcp .cont06 {
    margin-top: 20px;
    margin-bottom: 50px;
  }
  #forum.bcp .cont06 .cont {
    box-sizing: border-box;
    width: 1200px;
    margin: 0 auto 100px;
    padding-left: 640px;
    position: relative;
    min-height: 450px;
  }
  #forum.bcp .cont06 .cont h4 {
    font-size: 32px;
    font-weight: bold;
    padding-bottom: 30px;
    margin-bottom: 30px;
    position: relative;
  }
  #forum.bcp .cont06 .cont h4::before {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.bcp .cont06 .cont span {
    font-weight: bold;
  }
  #forum.bcp .cont06 .cont span::before {
    content: "■";
  }
  #forum.bcp .cont06 .cont .text01,
  #forum.bcp .cont06 .cont .text02 {
    line-height: 2;
    font-weight: bold;
  }
  #forum.bcp .cont06 .cont .text02 {
    margin-top: 20px;
  }
  #forum.bcp .cont06 .cont:nth-of-type(2) {
    padding-left: 40px;
    padding-right: 640px;
    margin-top: 70px;
  }
  #forum.bcp .cont06 .cont .img {
    position: absolute;
    top: 0;
    left: 40px;
    width: 550px;
  }
  #forum.bcp .cont06 .cont .img img {
    max-width: 100%;
  }
  #forum.bcp .cont06 .cont:nth-of-type(2) .img {
    position: absolute;
    top: 0;
    left: auto;
    right: 40px;
  }

  #forum.bcp .cont03 h3:nth-of-type(2):before {
    content: "ENTRY";
  }
  #forum.bcp .cont03 table tr td span {
    font-weight: bold;
  }

  #forum.bcp .cont02 h4 span {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 10px;
  }
  #forum.bcp .cont02 .cont .img {
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
    left: 160px;
  }
  #forum.bcp .cont02 .cont {
    height: auto;
    margin-bottom: 100px;
  }
  #forum.bcp .cont02 .cont .text {
    box-sizing: border-box;
    padding-right: 20px;
  }
  #forum.bcp .cont02 .cont:nth-of-type(2n-1)::before {
    top: -230px;
  }
  #forum.bcp .cont02 .btn {
    display: block;
    text-align: center;
    margin-bottom: 20px;
  }
  #forum.bcp .cont02 .btn:last-of-type {
    margin-bottom: 0;
  }
  #forum.bcp .cont02 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }

  #forum.bcp .cont05 {
    margin-top: 50px;
    margin-bottom: 120px;
  }
  #forum.bcp .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
  }
  #forum.bcp .cont05 h3::before {
    content: "SDGs";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }
  #forum.bcp .cont05 .text01 {
    text-align: center;
    line-height: 2;
    font-weight: bold;
    margin-top: 25px;
  }
  #forum.bcp .cont05 ul {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    width: 1200px;
    padding: 0 80px;
    box-sizing: border-box;
    margin: 60px auto 0;
  }
  #forum.bcp .cont05 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    box-sizing: border-box;
  }
  #forum.bcp .cont05 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.bcp .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.bcp .cont05 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.bcp .cont05 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
    font-size: 16px;
  }
  #forum.bcp .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.bcp .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
  }
  #forum.bcp .cont05 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #forum.bcp .cont01 .text span {
    font-size: 20px;
  }

  /* cont06 */
  #forum.bcp .cont06 .cont {
    padding-left: 45%;
    padding-right: 15px;
    width: 100%;
    min-height: 230px;
  }
  #forum.bcp .cont06 .cont:nth-of-type(2) {
    padding-left: 15px;
    padding-right: 45%;
  }
  #forum.bcp .cont06 .cont h4 {
    font-size: 24px;
  }
  #forum.bcp .cont06 .cont .text01,
  #forum.bcp .cont06 .cont .text02 {
    font-size: 14px;
  }
  #forum.bcp .cont06 .cont .img {
    width: 40%;
    left: 15px;
  }
  #forum.bcp .cont06 .cont:nth-of-type(2) .img {
    right: 15px;
  }
  #forum.bcp .cont06 .cont .img img {
    height: auto;
  }

  /* cont02 */
  #forum.bcp .cont02 .cont .img {
    width: 35%;
    left: 15px;
  }

  /* cont05 */
  #forum.bcp .cont05 .text01 {
    width: 80%;
    margin: 35px auto 0;
  }
  #forum.bcp .cont05 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum.bcp .cont05 ul li {
    width: 48%;
    padding-left: 130px;
  }
  #forum.bcp .cont05 ul li:nth-of-type(2n) {
    margin-left: 0;
  }
  #forum.bcp .cont05 ul li h4 {
    font-size: 18px;
  }
  #forum.bcp .cont05 ul li .text02 {
    font-size: 14px;
  }
  #forum.bcp .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum.bcp .key {
    background: url(img/forum/bcp_key_bg.png) center center / cover no-repeat;
  }
  #forum.bcp .key h2 img {
    height: auto;
  }
  #forum.bcp .cont01 .text {
    padding: 0 0 35px;
    font-size: 24px;
  }
  #forum.bcp .cont01 .text span {
    font-size: 16px;
  }
  #forum.bcp .cont01 .text span::before {
    content: "～";
    padding-right: 5px;
  }
  #forum.bcp .cont01 .text span::after {
    content: "～";
    padding-left: 5px;
  }
  #forum.bcp .cont01 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 50px auto 0;
  }
  #forum.bcp .cont01 ul li {
    margin: 0 5px;
  }
  #forum.bcp .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  #forum.bcp .cont06 {
    margin-top: 20px;
    margin-bottom: 50px;
  }
  #forum.bcp .cont06 .cont {
    box-sizing: border-box;
    margin: 0 auto 70px;
    position: relative;
    width: 90%;
    padding: 330px 0 0;
  }
  #forum.bcp .cont06 .cont:first-of-type {
    margin-bottom: 50px;
  }
  #forum.bcp .cont06 .cont h4 {
    font-size: 24px;
    font-weight: bold;
    padding-bottom: 25px;
    margin-bottom: 25px;
    position: relative;
  }
  #forum.bcp .cont06 .cont h4::before {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.bcp .cont06 .cont span {
    font-weight: bold;
  }
  #forum.bcp .cont06 .cont span::before {
    content: "■";
  }
  #forum.bcp .cont06 .cont .text01,
  #forum.bcp .cont06 .cont .text02 {
    line-height: 2;
    font-weight: bold;
  }
  #forum.bcp .cont06 .cont .text01 {
    margin-top: 20px;
  }
  #forum.bcp .cont06 .cont .text02 {
    margin-top: 20px;
  }
  #forum.bcp .cont06 .cont .img {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 400px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
  }
  #forum.bcp .cont06 .cont .img img {
    max-width: 100%;
    height: auto;
  }

  #forum.bcp .cont03 h3 {
    padding-bottom: 40px;
  }
  #forum.bcp .cont03 table:nth-of-type(1) tr td {
    font-size: 14px;
    padding: 20px 15px;
  }
  #forum.bcp .cont03 table:nth-of-type(2) tr th {
    font-size: 13px;
    letter-spacing: -0.5px;
  }
  #forum.bcp .cont03 table:nth-of-type(2) tr td {
    font-size: 15px;
    padding: 20px 15px;
  }
  #forum.bcp .cont03 table tr td span {
    font-weight: bold;
  }
  #forum.bcp .cont03 table tr td span.span01 {
    display: block;
    padding-left: 60px;
  }
  #forum.bcp .cont03 table tr td span.span02 {
    display: block;
    padding-left: 16px;
  }

  #forum.bcp .cont02 {
    margin-top: 50px;
  }
  #forum.bcp .cont02 h4 {
    font-size: 26px;
  }
  #forum.bcp .cont02 h4 span {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 10px;
  }
  #forum.bcp .cont02 .cont .img {
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
  }
  #forum.bcp .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
    width: auto;
  }
  #forum.bcp .cont02 .cont {
    height: auto;
    margin-bottom: 60px;
    padding: 470px 0 0;
    width: 90%;
  }
  #forum.bcp .cont02 .cont .text {
    box-sizing: border-box;
    padding-right: 0;
  }
  #forum.bcp .cont02 .cont:nth-of-type(2n-1)::before {
    top: -200px;
  }
  #forum.bcp .cont02 .btn {
    display: block;
    text-align: center;
    margin-top: 0px;
  }
  #forum.bcp .cont02 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }

  #forum.bcp .cont05 {
    margin-top: 100px;
    margin-bottom: 100px;
  }
  #forum.bcp .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
  }
  #forum.bcp .cont05 h3::before {
    content: "SDGs";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 48px;
    line-height: 1.6;
  }
  #forum.bcp .cont05 .text01 {
    font-size: 16px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
    margin-top: 35px;
  }
  #forum.bcp .cont05 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.bcp .cont05 ul li {
    padding-left: 125px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.bcp .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 25px;
  }
  #forum.bcp .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum.bcp .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.bcp .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.bcp .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.bcp .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.bcp .cont05 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

@media (min-width: 431px) {
  #forum.forum2022-07 .key {
    background: url(img/forum/forum2022-07_key_bg.png) center center / cover
      no-repeat;
  }
  #forum.forum2022 .cont01 h3 {
    color: #0099dd;
    font-size: 40px;
    font-weight: bold;
  }
  #forum.forum2022 .cont01 h3::before {
    display: none;
  }
  #forum.forum2022 .cont01 .text {
    padding-bottom: 50px;
    font-size: 40px;
    line-height: 1.2;
  }
  #forum.forum2022 .cont01 .text span {
    font-size: 20px;
    font-weight: bold;
    display: inline-block;
  }
  #forum.forum2022 .cont01 .text span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.forum2022 .cont01 .text span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.forum2022 .cont01 ul {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 80px auto 0;
  }

  #forum.forum2022 .cont02 .cont {
    height: auto;
    min-height: 400px;
    padding: 20px 0 0 630px;
  }
  #forum.forum2022 .cont02 .cont:nth-of-type(2n) {
    padding: 20px 600px 0 70px;
  }
  #forum.forum2022 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 100px;
  }
  #forum.forum2022 .cont02 .cont .img {
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.forum2022 .cont02 .cont .img {
    left: 20px;
  }
  #forum.forum2022 .cont02 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 20px;
  }
  #forum.forum2022 .cont02 h4 {
    position: relative;
    font-size: 32px;
  }
  #forum.forum2022 .cont02 h4::before {
    position: absolute;
    bottom: -30px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.forum2022 .cont02 .cont .text01 {
    margin-top: 60px;
    line-height: 2;
    font-weight: bold;
    padding-right: 20px;
  }

  #forum.forum2022 .cont03 .cont {
    padding-left: 620px;
    padding-top: 10px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) {
    padding-left: 20px;
    padding-top: 20px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) h4 {
    line-height: 1;
    padding-top: 5px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) h4 span {
    margin-bottom: 0;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) .text02::before {
    top: 45px;
  }
  #forum.forum2022 .cont03 .cont .text01 {
    font-size: 28px;
    font-weight: bold;
  }
  #forum.forum2022 .cont03 .cont .img {
    left: 30px;
  }
  #forum.forum2022 .cont03 .cont .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 30px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: auto;
    right: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  }

  #forum.forum2022 .cont05 {
    margin: 0 auto 150px;
  }
  #forum.forum2022 .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center;
  }
  #forum.forum2022 .cont05 .text01 {
    margin-top: 50px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
  }
  #forum.forum2022 .cont05 ul {
    display: flex;
    flex-wrap: wrap;
    width: 1200px;
    margin: 60px auto 0;
    padding-left: 100px;
  }
  #forum.forum2022 .cont05 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    box-sizing: border-box;
  }
  #forum.forum2022 .cont05 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.forum2022 .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.forum2022 .cont05 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.forum2022 .cont05 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.forum2022 .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.forum2022 .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
  }
  #forum.forum2022 .cont05 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont02 */
  #forum.forum2022 .cont02 h4 {
    font-size: 24px;
  }
  #forum.forum2022 .cont02 h4::before {
    bottom: -23px;
  }
  #forum.forum2022 .cont02 .cont .text01 {
    margin-top: 45px;
    font-size: 14px;
  }
  #forum.forum2022 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }

  /* cont03 */
  #forum.forum2022 .cont03 .cont {
    padding: 0 15px 0 46%;
    min-height: 215px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) {
    padding: 0 45% 0 15px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum.forum2022 .cont03 .cont .img {
    left: 20px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 20px;
  }
  #forum.forum2022 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum.forum2022 .cont03 .cont .text02 {
    padding-bottom: 0;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) .text02::before {
    top: 25px;
  }

  /* cont05 */
  #forum.forum2022 .cont05 .text01 {
    width: 80%;
    margin: 45px auto 0;
  }
  #forum.forum2022 .cont05 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum.forum2022 .cont05 ul li {
    width: 48%;
  }
  #forum.forum2022 .cont05 ul li:nth-of-type(2n) {
    margin-left: 0;
  }
  #forum.forum2022 .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 30px;
  }
  #forum.forum2022 .cont05 ul li h4 {
    font-size: 16px;
  }
  #forum.forum2022 .cont05 ul li .text02 {
    font-size: 14px;
  }
}

@media (max-width: 430px) {
  #forum.forum2022-07 .key {
    background: url(img/forum/forum2022-07_key_bg.png) center center / cover
      no-repeat;
  }
  #forum.forum2022 .key h2 img {
    height: auto;
  }

  #forum.forum2022 .cont01 {
    padding-bottom: 90px;
  }
  #forum.forum2022 .cont01 h3 {
    color: #0099dd;
    font-size: 28px;
    font-weight: bold;
  }
  #forum.forum2022 .cont01 h3::before {
    display: none;
  }
  #forum.forum2022 .cont01 .text {
    padding: 0 0 35px;
    font-size: 26px;
  }
  #forum.forum2022 .cont01 .text span {
    font-size: 14px;
  }
  #forum.forum2022 .cont01 .text span::before {
    content: "～";
    padding-right: 7px;
  }
  #forum.forum2022 .cont01 .text span::after {
    content: "～";
    padding-left: 7px;
  }
  #forum.forum2022 .cont01 ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 50px auto 0;
  }
  #forum.forum2022 .cont01 ul li {
    margin: 0 5px;
  }
  #forum.forum2022 .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  #forum.forum2022 .cont02 .cont .img {
    padding: 0;
    text-align: center;
  }
  #forum.forum2022 .cont02 .cont .img img {
    width: auto;
    max-width: 400px;
    height: auto;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.forum2022 .cont02 .cont {
    padding-top: 320px;
  }
  #forum.forum2022 .cont02 .cont h4 {
    font-size: 30px;
  }
  #forum.forum2022 .cont02 .cont .text01 {
    font-size: 16px;
    line-height: 2;
    padding: 30px 0 0;
    position: relative;
    font-weight: bold;
  }
  #forum.forum2022 .cont02 .cont .text01::before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }

  #forum.forum2022 .cont03 table tr td {
    font-size: 15px;
  }
  #forum.forum2022 .cont03 table tr td a {
    font-size: 15px;
  }
  #forum.forum2022 .cont03 .cont {
    padding-top: 300px;
  }
  #forum.forum2022 .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
  }
  #forum.forum2022 .cont03 .cont .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.forum2022 .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) h4 {
    line-height: 1;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(1) h4 span {
    margin-bottom: 0;
  }
  #forum.forum2022 .cont03 .cont:nth-of-type(4) h4 span {
    font-size: 18px;
  }
  #forum.forum2022 .cont03 .cont .text01 {
    font-size: 22px;
    font-weight: bold;
  }
  #forum.forum2022 .cont03 .cont .text02 {
    padding-top: 45px;
  }
  #forum.forum2022 .cont03 .cont .text02::before {
    position: absolute;
    top: 22px;
  }

  #forum.forum2022 .cont05 {
    margin-top: 0px;
    margin-bottom: 100px;
  }
  #forum.forum2022 .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center /
      380px;
  }
  #forum.forum2022 .cont05 h3::before {
    display: none;
  }
  #forum.forum2022 .cont05 .text01 {
    font-size: 16px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
    margin-top: 35px;
  }
  #forum.forum2022 .cont05 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.forum2022 .cont05 ul li {
    padding-left: 125px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.forum2022 .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 25px;
  }
  #forum.forum2022 .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum.forum2022 .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.forum2022 .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.forum2022 .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.forum2022 .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.forum2022 .cont05 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

@media (min-width: 431px) {
  #forum.civic .key {
    height: auto;
  }
  #forum.civic .key img {
    width: 100%;
    position: static;
    transform: none;
    height: auto;
  }
  #forum.civic .cont01 h3 {
    font-size: 48px;
    padding: 0 0 70px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6;
  }
  #forum.civic .cont01 h3::before {
    display: none;
  }
  #forum.civic .cont01 h3 span {
    font-size: 30px;
    font-weight: bold;
    display: inline-block;
  }
  #forum.civic .cont01 h3 span::before {
    content: "～";
    padding-right: 10px;
  }
  #forum.civic .cont01 h3 span::after {
    content: "～";
    padding-left: 10px;
  }
  #forum.civic .cont01 .img {
    width: 1200px;
    margin: 70px auto 0;
    display: flex;
    justify-content: space-between;
  }
  #forum.civic .cont01 .img a:hover {
    opacity: 1;
  }
  #forum.civic .cont01 .img img {
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.15);
  }

  #forum.civic .cont02 .cont {
    height: auto;
    min-height: 400px;
    padding: 0 0 0 630px;
  }
  #forum.civic .cont02 .cont:nth-of-type(2n) {
    padding: 0 580px 0 70px;
  }
  #forum.civic .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 100px;
  }
  #forum.civic .cont02 .cont .img {
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.civic .cont02 .cont .img {
    left: 120px;
  }
  #forum.civic .cont02 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 80px;
  }
  #forum.civic .cont02 h4 {
    position: relative;
    font-size: 32px;
  }
  #forum.civic .cont02 h4::before {
    position: absolute;
    bottom: -30px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.civic .cont02 h4 span {
    font-size: 24px;
  }
  #forum.civic .cont02 .cont .text01 {
    margin-top: 60px;
    line-height: 2;
    font-weight: bold;
    padding-right: 20px;
  }
  #forum.civic .cont02 ul {
    width: 850px;
    margin: 100px auto 0;
    display: flex;
    flex-wrap: wrap;
  }
  #forum.civic .cont02 ul li {
    margin-left: 20px;
  }
  #forum.civic .cont02 ul li:first-of-type,
  #forum.civic .cont02 ul li:nth-of-type(6) {
    margin-left: 0;
  }
  #forum.civic .cont02 ul li:nth-of-type(n + 6) {
    margin-top: 20px;
  }

  #forum.civic .cont03 .cont {
    padding-left: 620px;
    padding-top: 10px;
  }
  #forum.civic .cont03 .cont h4 span {
    padding: 0;
    padding-top: 5px;
    font-size: 28px;
  }
  #forum.civic .cont03 .cont:nth-of-type(1) h4 span {
    letter-spacing: -0.5px;
    font-size: 27px;
    display: inline-block;
    margin-left: -13px;
  }
  #forum.civic .cont03 .cont .text02 {
    padding-top: 50px;
  }
  #forum.civic .cont03 .cont .text02::before {
    top: 15px;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) {
    padding-left: 20px;
    padding-top: 20px;
  }
  #forum.civic .cont03 .cont .img {
    left: 30px;
  }
  #forum.civic .cont03 .cont .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) .img {
    left: auto;
    right: 30px;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) .img::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #1d9add;
    position: absolute;
    bottom: -20px;
    left: auto;
    right: -20px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  }

  #forum.civic .cont05 {
    margin: 0 auto 150px;
  }
  #forum.civic .cont05 h3 {
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    padding-top: 55px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center;
  }
  #forum.civic .cont05 .text01 {
    margin-top: 50px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
  }
  #forum.civic .cont05 ul {
    display: flex;
    flex-wrap: wrap;
    width: 1200px;
    margin: 60px auto 0;
    padding-left: 100px;
  }
  #forum.civic .cont05 ul li {
    padding-left: 150px;
    position: relative;
    min-height: 130px;
    width: 490px;
    box-sizing: border-box;
  }
  #forum.civic .cont05 ul li:nth-of-type(2n) {
    margin-left: 55px;
  }
  #forum.civic .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 40px;
  }
  #forum.civic .cont05 ul li h4 {
    font-size: 20px;
    font-weight: bold;
  }
  #forum.civic .cont05 ul li .text02 {
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.civic .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.civic .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 80px;
  }
  #forum.civic .cont05 .btn a {
    display: inline-block;
    width: 400px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  /* cont01 */
  #forum.civic .cont01 h3 {
    font-size: 32px;
    padding-bottom: 35px;
  }
  #forum.civic .cont01 h3 span {
    font-size: 24px;
  }
  #forum.civic .cont01 .img {
    width: 100%;
    justify-content: center;
    gap: 0 30px;
  }
  #forum.civic .cont01 .img img {
    width: 45%;
    height: auto;
  }

  /* cont02 */
  #forum.civic .cont02 .cont {
    min-height: 290px;
    padding: 0 15px 0 45%;
  }
  #forum.civic .cont02 .cont:nth-of-type(2n) {
    padding: 0 45% 0 15px;
  }
  #forum.civic .cont02 .cont .img {
    left: 20px;
  }
  #forum.civic .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum.civic .cont02 ul {
    width: 100%;
    justify-content: center;
    gap: 0 20px;
  }
  #forum.civic .cont02 ul li {
    margin-left: 0;
  }

  /* cont03 */
  #forum.civic .cont03 .cont {
    padding: 10px 15px 0 45%;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) {
    padding: 10px 45% 0 15px;
  }
  #forum.civic .cont03 .cont h4 span {
    font-size: 24px;
  }
  #forum.civic .cont03 .cont:nth-of-type(1) h4 span {
    font-size: 20px;
    letter-spacing: -0.5px;
  }
  #forum.civic .cont03 .cont .img {
    left: 20px;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum.civic .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum.civic .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }

  /* cont05 */
  #forum.civic .cont05 .text01 {
    width: 80%;
    margin: 35px auto 0;
  }
  #forum.civic .cont05 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum.civic .cont05 ul li {
    width: 48%;
    padding-left: 120px;
    min-height: 110px;
  }
  #forum.civic .cont05 ul li:nth-of-type(2n) {
    margin-left: 0;
  }
  #forum.civic .cont05 ul li:nth-of-type(n + 3) {
    margin-top: 30px;
  }
  #forum.civic .cont05 ul li h4 {
    font-size: 18px;
  }
  #forum.civic .cont05 ul li .text02 {
    font-size: 14px;
  }
  #forum.civic .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum.civic .key {
    height: 240px;
  }
  #forum.civic .key h2 {
    width: 100%;
    height: 100%;
    position: relative;
  }
  #forum.civic .key h2 img {
    height: 240px;
    width: 650px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    max-width: none;
  }
  #forum.civic .cont01 {
    padding-bottom: 90px;
  }
  #forum.civic .cont01 h3 {
    color: #0099dd;
    font-size: 22px;
    font-weight: bold;
    color: #000;
  }
  #forum.civic .cont01 h3::before {
    display: none;
  }
  #forum.civic .cont01 h3 span {
    font-size: 16px;
    font-weight: bold;
    margin-top: 15px;
    display: inline-block;
  }
  #forum.civic .cont01 h3 span::before {
    content: "～";
    padding-right: 7px;
  }
  #forum.civic .cont01 h3 span::after {
    content: "～";
    padding-left: 7px;
  }
  #forum.civic .cont01 .text {
    padding: 0 0 35px;
    font-size: 26px;
  }
  #forum.civic .cont01 .text span {
    font-size: 16px;
  }
  #forum.civic .cont01 .img {
    text-align: center;
    width: 400px;
    margin: 30px auto 0;
  }
  #forum.civic .cont01 .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  }
  #forum.civic .cont01 .img img:nth-of-type(2) {
    margin-top: 15px;
  }

  #forum.civic .cont02 .cont .img {
    padding: 0;
    text-align: center;
  }
  #forum.civic .cont02 .cont .img img {
    width: auto;
    max-width: 400px;
    height: auto;
    box-shadow: 0 0 20px rgb(0 0 0 / 10%);
  }
  #forum.civic .cont02 .cont {
    padding-top: 400px;
  }
  #forum.civic .cont02 .cont h4 {
    font-size: 28px;
  }
  #forum.civic .cont02 .cont h4 span {
    font-size: 20px;
  }
  #forum.civic .cont02 .cont .text01 {
    font-size: 16px;
    line-height: 2;
    padding: 30px 0 0;
    position: relative;
    font-weight: bold;
  }
  #forum.civic .cont02 .cont .text01::before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
  }
  #forum.civic .cont02 ul {
    width: 410px;
    display: flex;
    flex-wrap: wrap;
    margin: 10px auto 0;
  }
  #forum.civic .cont02 ul li {
    width: 95px;
    margin-left: 10px;
  }
  #forum.civic .cont02 ul li:nth-of-type(1),
  #forum.civic .cont02 ul li:nth-of-type(5),
  #forum.civic .cont02 ul li:nth-of-type(9) {
    margin-left: 0;
  }
  #forum.civic .cont02 ul li:nth-of-type(n + 5) {
    margin-top: 10px;
  }
  #forum.civic .cont02 ul li img {
    max-width: 100%;
    height: auto;
  }

  #forum.civic .cont03 {
    margin-top: 100px;
  }
  #forum.civic .cont03 table tr th {
    width: 115px;
    font-size: 15px;
  }
  #forum.civic .cont03 table tr td {
    padding: 25px 10px 25px 15px;
    letter-spacing: -0.8px;
  }
  #forum.civic .cont03 .cont {
    padding-top: 310px;
  }
  #forum.civic .cont03 .cont h4 span {
    padding: 0;
    margin: 0;
  }
  #forum.civic .cont03 .cont:nth-of-type(1) h4 span {
    font-size: 19px;
    letter-spacing: -1px;
    margin-left: -10px;
    margin-top: 15px;
  }
  #forum.civic .cont03 .cont:nth-of-type(3) h4 span {
    margin-top: 5px;
  }
  #forum.civic .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
  }
  #forum.civic .cont03 .cont .img::before {
    content: "";
    width: 95%;
    height: 95%;
    background: #1d9add;
    position: absolute;
    bottom: -15px;
    left: -5px;
    box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
    z-index: -1;
  }
  #forum.civic .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum.civic .cont03 .cont:nth-of-type(1) h4 {
    line-height: 1;
  }
  #forum.civic .cont03 .cont:nth-of-type(1) h4 span {
    margin-bottom: 0;
  }
  #forum.civic .cont03 .cont:nth-of-type(4) h4 span {
    font-size: 18px;
  }
  #forum.civic .cont03 .cont .text01 {
    font-size: 22px;
    font-weight: bold;
  }
  #forum.civic .cont03 .cont .text02 {
    padding-top: 45px;
  }
  #forum.civic .cont03 .cont .text02::before {
    position: absolute;
    top: 22px;
  }

  #forum.civic .cont05 {
    margin-top: 30px;
    margin-bottom: 100px;
  }
  #forum.civic .cont05 h3 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center /
      380px;
  }
  #forum.civic .cont05 h3::before {
    display: none;
  }
  #forum.civic .cont05 .text01 {
    font-size: 16px;
    text-align: center;
    line-height: 2;
    font-weight: bold;
    width: 410px;
    margin: 35px auto 0;
  }
  #forum.civic .cont05 ul {
    display: flex;
    flex-direction: column;
    margin: 40px auto 0;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum.civic .cont05 ul li {
    padding-left: 125px;
    position: relative;
    min-height: 110px;
    box-sizing: border-box;
  }
  #forum.civic .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 25px;
  }
  #forum.civic .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum.civic .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum.civic .cont05 ul li .img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #forum.civic .cont05 ul li .img img {
    width: 110px;
    height: auto;
  }
  #forum.civic .cont05 .btn {
    display: block;
    text-align: center;
    margin-top: 40px;
  }
  #forum.civic .cont05 .btn a {
    display: inline-block;
    width: 320px;
    height: 55px;
    box-sizing: border-box;
    padding-top: 17px;
    background: #0099dd;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
}

@media (min-width: 431px) {
  #forum.forum2022.forum2022-09 .key {
    background: #efc528 url(img/forum/forum2022-09_key_bg.png) repeat-x top
      center;
  }
  #forum.forum2022.forum2022-09 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 30px center;
  }
  #forum.forum2022.forum2022-09 .cont01 .text02 {
    background: none;
  }

  #forum.forum2022.forum2022-09 .cont02 .cont {
    height: auto;
    min-height: 450px;
    padding: 20px 0 0 530px;
    width: 1100px;
  }
  #forum.forum2022.forum2022-09 .cont02 .cont:nth-of-type(2n) {
    padding: 20px 500px 0 70px;
  }
  #forum.forum2022.forum2022-09 .cont02 h4 span {
    font-size: 16px;
    display: block;
    margin-bottom: 15px;
    line-height: 1.8;
  }

  #forum.forum2022-09 .cont03 h3:nth-of-type(2):before {
    content: "SCHEDULE";
  }
  #forum.forum2022.forum2022-09 .cont03 .cont h4 {
    font-size: 24px;
  }
  #forum.forum2022.forum2022-09 .cont03 .cont h4 span {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum.forum2022.forum2022-09 .cont02 .cont {
    padding: 10px 0 0 45%;
    width: 100%;
    min-height: 290px;
  }
  #forum.forum2022.forum2022-09 .cont02 .cont:nth-of-type(2n) {
    padding: 10px 45% 0 15px;
  }
  #forum.forum2022-09 .cont02 .cont .img {
    width: 40%;
  }
}

@media (max-width: 430px) {
  #forum.forum2022.forum2022-09 .key {
    background: #efc528 url(img/forum/forum2022-09_key_bg_sp.png) repeat-x top
      center;
  }

  #forum.forum2022.forum2022-09 .cont01 .text span {
    font-size: 14px;
    line-height: 1;
    display: block;
    margin-top: 10px;
  }

  #forum.forum2022.forum2022-09 .cont02 .cont {
    padding-top: 420px;
  }
  #forum.forum2022.forum2022-09 .cont02 .cont h4 span {
    font-size: 16px;
    display: block;
    margin-bottom: 10px;
  }

  #forum.forum2022-09 .cont03 h3:nth-of-type(2):before {
    content: "SCHEDULE";
  }
  #forum.forum2022.forum2022-09 .cont03 .cont h4 span {
    margin-bottom: 0;
  }
  #forum.forum2022.forum2022-09 .cont03 .cont h4 {
    font-size: 20px;
  }
  #forum.forum2022.forum2022-09 .cont03 .cont h4 span {
    font-size: 20px;
  }

  #forum.forum2022.forum2022-09 .cont05 {
    margin-top: 25px;
    margin-bottom: 100px;
  }
}

@media (min-width: 431px) {
  #forum.forum2022.forum2022-10 .key::before {
    content: "";
    width: 100%;
    height: 48px;
    background: url(img/forum/forum2022-10_key_img01.png) repeat-x top center;
    position: absolute;
    top: -1px;
    left: 0;
    z-index: 10;
  }
  #forum.forum2022.forum2022-10 .key h2 {
    position: relative;
    height: 650px;
    max-width: 1200px;
    margin: auto;
    z-index: 1;
  }
  #forum.forum2022.forum2022-10 .key h2::before {
    content: "";
    width: 100%;
    height: 649px;
    background: url(img/forum/forum2022-10_key_left.png) repeat-x top right;
    position: absolute;
    top: 0;
    right: 1190px;
  }
  #forum.forum2022.forum2022-10 .key h2::after {
    content: "";
    width: 100%;
    height: 649px;
    background: url(img/forum/forum2022-10_key_right.png) repeat-x top left;
    position: absolute;
    top: 0;
    left: 1190px;
    z-index: -1;
  }
  #forum.forum2022 .cont01 h3 {
    padding: 0 0 10px;
    font-size: 32px;
  }
  #forum.forum2022.forum2022-10 .cont01 .text span {
    font-size: 30px;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 10px;
  }

  #forum.forum2022.forum2022-10 .cont02 .cont {
    width: 1100px;
    padding: 20px 0 0 530px;
    min-height: 450px;
  }
  #forum.forum2022.forum2022-10 .cont02 .cont:nth-of-type(2n) {
    padding: 20px 485px 0 70px;
  }
  #forum.forum2022.forum2022-10 .cont02 .cont:nth-of-type(2n) .text01 {
    letter-spacing: -0.5px;
  }
  #forum.forum2022.forum2022-10 .cont02 .cont:nth-of-type(2n) .img {
    right: 15px;
  }

  #forum.forum2022.forum2022-10 .cont03 table tr td span {
    font-weight: bold;
    display: inline-block;
    margin-left: 20px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr:nth-of-type(5) th {
    padding-left: 10px;
    padding-right: 10px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr:nth-of-type(5) td {
    vertical-align: middle;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td a {
    display: inline-block;
    margin-right: 20px;
    margin-top: 5px;
    text-decoration: underline;
  }
  #forum.forum2022.forum2022-10 .cont03 .cont h4 {
    font-size: 28px;
    font-weight: bold;
  }
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum.forum2022.forum2022-10 .key h2 {
    height: auto;
  }

  /* cont02 */
  #forum.forum2022.forum2022-10 .cont02 .cont {
    width: 100%;
    padding: 10px 0 0 45%;
    min-height: 290px;
  }
  #forum.forum2022.forum2022-10 .cont02 .cont:nth-of-type(2n) {
    padding: 10px 45% 0 15px;
  }

  /* cont03 */
  #forum.forum2022.forum2022-10 .cont03 .cont h4 {
    font-size: 24px;
  }
}

@media (max-width: 430px) {
  #forum.forum2022.forum2022-10 .cont01 h3 {
    font-size: 20px;
    padding: 0 0 2px;
  }
  #forum.forum2022.forum2022-10 .cont01 .text span {
    font-size: 20px;
  }

  #forum.forum2022.forum2022-10 .cont02 .cont {
    padding-top: 420px;
  }
  #forum.forum2022.forum2022-10 .cont02 .cont h4 {
    font-size: 24px;
  }

  #forum.forum2022.forum2022-10 .cont03 table tr th {
    font-size: 14px;
    padding-left: 10px;
    padding-right: 10px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr:nth-of-type(5) th {
    letter-spacing: -0.5px;
    font-size: 13px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td {
    font-size: 14px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td span {
    font-weight: bold;
    margin-left: 10px;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td span:nth-of-type(5) {
    letter-spacing: -0.8px;
    white-space: nowrap;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td a {
    display: block;
    font-size: 14px;
    text-decoration: underline;
  }
  #forum.forum2022.forum2022-10 .cont03 table tr td a:nth-of-type(n + 2) {
    margin-top: 10px;
  }
  #forum.forum2022.forum2022-10 .cont03 .cont h4 {
    font-size: 22px;
  }
  #forum.forum2022.forum2022-10 .cont03 .cont .text02 {
    letter-spacing: -0.5px;
  }
}

/* 2023年度からのフォーラムはこちらを使います
---------------------------------------------------------------------------------------*/
/* 共通 */
#forum02 .sp {
  display: none;
}

/* key */
#forum02 .key {
  height: 650px;
  position: relative;
  background: url(img/forum/forum_bg01.png) center center/cover no-repeat;
}
#forum02 .key h2 img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* cont01 */
#forum02 .cont01 {
  padding: 0 0 100px;
}
#forum02 .cont01 h3 {
  padding: 0 0 30px;
  font-size: 32px;
  text-align: center;
  color: #0099dd;
  font-weight: bold;
}
#forum02 .cont01 .text {
  padding-bottom: 50px;
  font-size: 40px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
#forum02 .cont01 .text span {
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
}
#forum02 .cont01 .text span::before {
  content: "～";
  padding-right: 10px;
}
#forum02 .cont01 .text span::after {
  content: "～";
  padding-left: 10px;
}
#forum02 .cont01 .text02 {
  font-size: 20px;
  line-height: 2.5;
  text-align: center;
  font-weight: bold;
}
#forum02 .cont01 ul {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin: 0 auto 120px;
  flex-wrap: wrap;
}
#forum02 .cont01 h4 {
  font-size: 30px;
  font-weight: bold;
}
#forum02 .cont01 h4 span {
  font-size: 20px;
  font-weight: bold;
}

/* cont02 */
#forum02 .cont02 {
  padding: 0 0 100px;
}
#forum02 .cont02 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02 .cont02 h3::before {
  content: "INTRODUCTION";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum02 .cont02 .cont {
  width: 1200px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  padding: 20px 0 0 630px;
}
#forum02 .cont02 .cont:nth-of-type(n + 2) {
  margin-top: 100px;
}
#forum02 .cont02 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 70px;
}
#forum02 .cont02 .cont:nth-of-type(2n-1)::before {
  position: absolute;
  z-index: -1;
  top: -270px;
  left: 50%;
  width: 115vw;
  min-width: 1400px;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}
#forum02 .cont02 h4 {
  position: relative;
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02 .cont02 h4::before {
  position: absolute;
  bottom: -32px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02 .cont02 h4 span {
  font-size: 20px;
  font-weight: bold;
}
#forum02 .cont02 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
  padding-right: 20px;
}
#forum02 .cont02 .cont .img {
  position: absolute;
  top: 0;
  left: 20px;
  box-shadow: 0 0 20px rgb(0 0 0 / 10%);
}
#forum02 .cont02 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 20px;
}

/* cont03 */
#forum02 .cont03 {
  padding: 0 0 100px;
}
#forum02 .cont03 h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding: 0 0 60px;
}

#forum02 .cont03 h3::before {
  content: "EVENT";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum02 .cont03 table {
  width: calc(100% - 30px);
  max-width: 1170px;
  margin: auto;
  border-collapse: separate;
  border-spacing: 3px;
  padding: 0 0 70px;
}
#forum02 .cont03 table tr th {
  width: 200px;
  text-align: center;
  padding: 32px 0;
  background: #1d9add;
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  vertical-align: middle;
}
#forum02 .cont03 table tr td {
  padding: 25px 35px;
  background: #e1f2fa;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
#forum02 .cont03 table tr td span {
  display: inline-block;
  font-weight: bold;
  margin-left: -7px;
  margin-bottom: 5px;
}
#forum02 .cont03 .cont {
  width: 1200px;
  min-height: 460px;
  margin: auto;
  position: relative;
  padding: 10px 0 0 605px;
  box-sizing: border-box;
}
#forum02 .cont03 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 20px;
}
#forum02 .cont03 .cont:last-of-type {
  min-height: 400px;
}
#forum02 .cont03 .cont h4 {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02 .cont03 .cont h4 span {
  font-size: 24px;
  display: inline-block;
  padding: 0 0 0 20px;
  margin: 0 0 20px;
  font-weight: bold;
}
#forum02 .cont03 .cont .text01 {
  font-size: 28px;
  font-weight: bold;
}
#forum02 .cont03 .cont .text02 {
  font-size: 16px;
  line-height: 2;
  padding: 85px 0 75px;
  position: relative;
}
#forum02 .cont03 .cont:last-of-type .text02 {
  padding-bottom: 0;
}
#forum02 .cont03 .cont .text02::before {
  position: absolute;
  top: 40px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02 .cont03 .cont .img {
  position: absolute;
  top: 0;
  left: 30px;
}
#forum02 .cont03 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 30px;
}
#forum02 .cont03 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum02 .cont03 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum02 .cont03 .cont .img img {
  max-width: 100%;
}

/* cont04 */
#forum02 .cont04 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02 .cont04 h3::before {
  content: "CONTACT";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum02 .cont04 p.text {
  width: 90%;
  max-width: 860px;
  margin: 0 auto;
}

/* cont05 */
#forum02 .cont05 {
  margin: 0 auto 120px;
}
#forum02 .cont05 h3 {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding-top: 55px;
  background: url(img/forum/forum2022-04_img12.png) no-repeat top center;
}
#forum02 .cont05 .text01 {
  margin-top: 50px;
  text-align: center;
  line-height: 2;
  font-weight: bold;
}
#forum02 .cont05 ul {
  display: flex;
  flex-wrap: wrap;
  width: 1200px;
  margin: 60px auto 0;
  padding-left: 100px;
}
#forum02 .cont05 ul li {
  padding: 0 20px 0 150px;
  position: relative;
  min-height: 130px;
  width: 490px;
  box-sizing: border-box;
}
#forum02 .cont05 ul li:nth-of-type(n + 3) {
  margin-top: 40px;
}
#forum02 .cont05 ul li h4 {
  font-size: 20px;
  font-weight: bold;
}
#forum02 .cont05 ul li .text02 {
  margin-top: 10px;
  line-height: 1.5;
}
#forum02 .cont05 ul li .img {
  position: absolute;
  top: 0;
  left: 0;
}
#forum02 .cont05 .btn {
  display: block;
  text-align: center;
  margin-top: 80px;
}
#forum02 .cont05 .btn a {
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}


@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02 .pc {
    display: none;
  }
  #forum02 .key {
    height: auto;
  }
  #forum02 .key h2 img {
    position: static;
    transform: none;
    max-width: 100%;
    height: auto;
  }

  /* cont01 */
  #forum02 .cont01 h3 {
    font-size: 24px;
  }
  #forum02 .cont01 .text {
    font-size: 32px;
    padding-bottom: 35px;
  }
  #forum02 .cont01 .text span {
    font-size: 16px;
  }
  #forum02 .cont01 .text02 {
    font-size: 16px;
    padding: 0 30px;
  }

  /* cont02 */
  #forum02 .cont02 h3 {
    padding-bottom: 50px;
  }
  #forum02 .cont02 .cont {
    width: 100%;
    padding: 0px 0 0 46%;
    min-height: 230px;
  }
  #forum02 .cont02 .cont:nth-of-type(2n) {
    padding: 0px 46% 0 20px;
  }
  #forum02 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum02 .cont02 h4 {
    font-size: 24px;
  }
  #forum02 .cont02 h4 span {
    font-size: 16px;
    font-weight: bold;
  }
  #forum02 .cont02 .cont .img {
    width: 40%;
  }
  #forum02 .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
  }

  /* cont03 */
  #forum02 .cont03 h3 {
    padding-bottom: 50px;
  }
  #forum02 .cont03 table tr th,
  #forum02 .cont03 table tr td {
    font-size: 16px;
  }
  #forum02 .cont03 table tr th {
    width: 180px;
    padding: 20px 0;
  }
  #forum02 .cont03 table tr td {
    padding: 20px 25px;
  }
  #forum02 .cont03 .cont {
    width: 100%;
    padding: 10px 15px 0 47%;
    min-height: 210px;
  }
  #forum02 .cont03 .cont:nth-of-type(2n) {
    padding: 10px 47% 0 15px;
  }
  #forum02 .cont03 .cont h4 {
    font-size: 16px;
  }
  #forum02 .cont03 .cont h4 span {
    font-size: 20px;
    margin: 0;
  }
  #forum02 .cont03 .cont .text01 {
    font-size: 22px;
  }
  #forum02 .cont03 .cont .text02 {
    font-size: 14px;
    padding: 45px 0 75px;
  }
  #forum02 .cont03 .cont .text02::before {
    top: 22px;
    width: 100px;
  }
  #forum02 .cont03 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02 .cont03 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum02 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02 .cont03 .cont .img img {
    height: auto;
  }

  /* cont05 */
  #forum02 .cont05 .text01 {
    width: 80%;
    margin: 50px auto 0;
  }
  #forum02 .cont05 ul {
    width: 100%;
    padding: 0 15px;
    justify-content: space-between;
  }
  #forum02 .cont05 ul li {
    width: 48%;
  }
  #forum02 .cont05 ul li h4 {
    font-size: 16px;
  }
  #forum02 .cont05 ul li .text02 {
    font-size: 12px;
  }
}

@media (max-width: 430px) {
  #forum02 .pc {
    display: none;
  }
  #forum02 .sp {
    display: block;
  }

  #forum02 .key {
    height: auto;
  }
  #forum02 .key h2 img {
    position: static;
    transform: none;
    height: auto;
    width: 100%;
  }

  /* cont01 */
  #forum02 .cont01 h3 {
    font-size: 20px;
  }
  #forum02 .cont01 .text {
    padding: 0 0 35px;
    font-size: 24px;
    line-height: 1.5;
  }
  #forum02 .cont01 .text span {
    font-size: 14px;
  }
  #forum02 .cont01 .text02 {
    font-size: 14px;
    text-align: center;
    width: 90%;
    margin: auto;
  }
  #forum02 .cont01 ul {
    margin: 50px auto 0;
    gap: 10px;
  }
  #forum02 .cont01 ul li img {
    width: 90px;
    height: auto;
  }

  /* cont02 */
  #forum02 .cont02 h3 {
    font-size: 20px;
    padding: 0 0 50px;
  }
  #forum02 .cont02 .cont {
    padding: 320px 10px 70px;
    width: 100%;
  }
  #forum02 .cont02 .cont:nth-of-type(2n) {
    padding: 320px 10px 70px;
  }
  #forum02 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum02 .cont02 .cont:last-of-type {
    padding-bottom: 0;
  }
  #forum02 .cont02 h4 {
    font-size: 24px;
  }
  #forum02 .cont02 h4::before {
    width: 100px;
    bottom: -23px;
  }
  #forum02 .cont02 .cont .text01 {
    margin-top: 45px;
    padding-right: 0;
  }
  #forum02 .cont02 .cont .img {
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02 .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02 .cont02 .cont .img img {
    width: auto;
    max-width: 400px;
    height: auto;
  }

  /* cont03 */
  #forum02 .cont03 table tr {
    display: flex;
    flex-direction: column;
  }
  #forum02 .cont03 table tr:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum02 .cont03 table tr th,
  #forum02 .cont03 table tr td {
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    padding: 20px;
  }
  #forum02 .cont03 .cont {
    width: 100%;
    padding: 300px 15px 0;
  }
  #forum02 .cont03 .cont:nth-of-type(2n) {
    padding: 300px 15px 0;
  }
  #forum02 .cont03 .cont h4 {
    font-size: 16px;
  }
  #forum02 .cont03 .cont h4 span {
    margin: 0;
    font-size: 22px;
  }
  #forum02 .cont03 .cont .text01 {
    font-size: 20px;
  }
  #forum02 .cont03 .cont .text02 {
    font-size: 14px;
    line-height: 2;
    padding: 45px 0 75px;
    position: relative;
    font-weight: bold;
  }
  #forum02 .cont03 .cont .text02::before {
    width: 100px;
    top: 23px;
  }
  #forum02 .cont03 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02 .cont03 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02 .cont03 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02 .cont03 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02 .cont03 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }

  /* cont05 */
  #forum02 .cont05 {
    margin: 0 auto 70px;
  }
  #forum02 .cont05 h3 {
    padding-top: 45px;
    background: url(img/forum/forum2022-04_img12.png) no-repeat top center / 90%;
  }
  #forum02 .cont05 .text01 {
    width: 95%;
    font-size: 15px;
    margin: 35px auto 0;
  }
  #forum02 .cont05 .text01 br {
    display: none;
  }
  #forum02 .cont05 ul {
    width: 100%;
    padding: 0 15px;
    margin: 45px auto 0;
  }
  #forum02 .cont05 ul li {
    padding-left: 125px;
    min-height: 110px;
  }
  #forum02 .cont05 ul li:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  #forum02 .cont05 ul li .img img {
    width: 110px;
  }
  #forum02 .cont05 ul li h4 {
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
  }
  #forum02 .cont05 ul li .text02 {
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.5;
  }
  #forum02 .cont05 .btn {
    margin-top: 40px;
  }
  #forum02 .cont05 .btn a {
    width: 320px;
    height: 55px;
    padding-top: 17px;
    font-size: 16px;
  }
}

/* 2022年7月フォーラム */
#forum02.forum2022-07 .key {
  background: url(img/forum/forum2022-07_key_bg.png) center center / cover
    no-repeat;
}
@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2022-07 .cont03 .cont:nth-of-type(4) h4 span {
    font-size: 18px;
  }
}
@media (max-width: 430px) {
  #forum02.forum2022-07 .cont03 .cont:nth-of-type(4) h4 span {
    font-size: 18px;
    padding-left: 10px;
  }
}

/* 2023年2月フォーラム */
#forum02.forum2023-02 .key {
  background: url(img/forum/forum2023-02_key_bg.png) center center / cover
    no-repeat;
}

/* 2023年4月フォーラム */
#forum02.forum2023-04 .key {
  background: url(img/forum/forum2023-04_key_bg.png) no-repeat center / cover;
}

#forum02.forum2023-04 .key h2 {
  max-width: 1200px;
  margin: auto;
  position: relative;
}
#forum02.forum2023-04 .key h2 img {
  position: static;
  transform: none;
}
#forum02.forum2023-04 .key h2::before {
  content: url(img/forum/forum2023-04_key_icon.png);
  position: absolute;
  bottom: 70px;
  left: 0;
}
#forum02.forum2023-04 .key h2::after {
  content: url(img/forum/forum2023-04_key_icon.png);
  position: absolute;
  bottom: 150px;
  right: -160px;
}

#forum02.forum2023-04 .cont01 .img {
  text-align: center;
  margin-top: 50px;
}

#forum02.forum2023-04 .cont03 {
  padding-bottom: 130px;
}
#forum02.forum2023-04 .cont03 table img {
  display: block;
  margin-top: 5px;
}
#forum02.forum2023-04 .cont03 .catalog-img {
  text-align: center;
}
#forum02.forum2023-04 .cont03 .catalog-img img {
  max-width: 1170px;
}
#forum02.forum2023-04 .cont03 .btn {
  text-align: center;
  display: block;
  margin-top: 60px;
}
#forum02.forum2023-04 .cont03 .btn a {
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-04 .key h2::before {
    content: url(img/forum/forum2023-04_key_icon.png);
    position: absolute;
    bottom: -20px;
    left: -30px;
    transform: scale(0.5);
  }
  #forum02.forum2023-04 .key h2::after {
    content: url(img/forum/forum2023-04_key_icon.png);
    position: absolute;
    top: 80px;
    right: -50px;
    transform: scale(0.5);
  }

  #forum02.forum2023-04 .cont01 ul {
    width: 450px;
  }
  #forum02.forum2023-04 .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.forum2023-04 .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.forum2023-04 .cont03 .catalog-img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.forum2023-04 .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-04 .key h2::before {
    content: url(img/forum/forum2023-04_key_icon.png);
    position: absolute;
    bottom: -70px;
    left: -60px;
    transform: scale(0.3);
  }
  #forum02.forum2023-04 .key h2::after {
    content: url(img/forum/forum2023-04_key_icon.png);
    position: absolute;
    top: 50px;
    right: -70px;
    transform: scale(0.3);
  }

  #forum02.forum2023-04 .cont01 ul {
    width: 300px;
  }
  #forum02.forum2023-04 .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
    margin-top: 30px;
  }
  #forum02.forum2023-04 .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.forum2023-04 .cont03 table {
    padding-bottom: 50px;
  }
  #forum02.forum2023-04 .cont03 table td {
    font-size: 16px;
  }
  #forum02.forum2023-04 .cont03 .catalog-img {
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum02.forum2023-04 .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.forum2023-04 .cont03 .btn a {
    width: 350px;
    height: 55px;
    padding-top: 17px;
    font-size: 16px;
  }
}

/* 2023年防災事業 */
#forum02.bosai .key {
  background: url(img/forum/bosai_key_bg.png) no-repeat center / cover;
}

#forum02.bosai .cont01 .img {
  text-align: center;
  margin-top: 50px;
}
#forum02.bosai .cont01 .text {
  line-height: 1.5;
}

#forum02.bosai .cont03 {
  padding-bottom: 130px;
}
#forum02.bosai .cont03 .catalog-img {
  text-align: center;
}
#forum02.bosai .cont03 .catalog-img img {
  max-width: 1170px;
}
#forum02.bosai .cont03 .catalog-img02 {
  text-align: center;
  margin: 0px auto 50px;
}
#forum02.bosai .cont03 .catalog-img02 img {
  max-width: 1170px;
}
#forum02.bosai .cont03 .btn {
  text-align: center;
  display: block;
  margin-top: 60px;
}
#forum02.bosai .cont03 .btn a {
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.bosai .cont01 .text {
    font-size: 28px;
  }
  #forum02.bosai .cont01 ul {
    width: 450px;
  }
  #forum02.bosai .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.bosai .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.bosai .cont03 .catalog-img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.bosai .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.bosai .cont03 .catalog-img02 {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.bosai .cont03 .catalog-img02 img {
    max-width: 100%;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum02.bosai .cont01 ul {
    width: 300px;
  }
  #forum02.bosai .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
    margin-top: 30px;
  }
  #forum02.bosai .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.bosai .cont03 {
    padding-bottom: 70px;
  }
  #forum02.bosai .cont03 h3 {
    line-height: 1.5;
    padding: 0 0 50px;
  }
  #forum02.bosai .cont03 table {
    padding-bottom: 50px;
  }
  #forum02.bosai .cont03 .catalog-img {
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum02.bosai .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.bosai .cont03 .catalog-img02 {
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum02.bosai .cont03 .catalog-img02 img {
    max-width: 100%;
    height: auto;
  }
  #forum02.bosai .cont03 .btn a {
    width: 350px;
    height: 55px;
    padding-top: 17px;
    font-size: 16px;
  }
}

/* 2023年 時代に即した部活動を探究する事業 */
#forum02.hokago .key {
  background: url(img/forum/hokago_key_bg.png) no-repeat center / cover;
}
/* questionnaire */
#forum02.hokago .questionnaire {
  margin-bottom: 80px;
}
#forum02.hokago .questionnaire .qr {
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  gap: 20px;
}
#forum02.hokago .questionnaire .qr .img {
  margin-top: 0;
  font-size: 14px;
  line-height: 1;
  color: #0099dd;
}
#forum02.hokago .questionnaire .qr .img img {
  width: 150px;
  height: 150px;
}
#forum02.hokago .questionnaire .text03 {
  text-align: center;
}

#forum02.hokago .cont01 .img {
  text-align: center;
  margin-top: 50px;
}
#forum02.hokago .cont01 .img {
  text-align: center;
  margin-top: 50px;
}
#forum02.hokago .cont01 .text {
  font-size: 20px;
}

#forum02.hokago .cont03 {
  padding-bottom: 130px;
}
#forum02.hokago .cont03 .catalog-img {
  text-align: center;
}
#forum02.hokago .cont03 .catalog-img img {
  max-width: 1170px;
}
#forum02.hokago .cont03 .catalog-img02 {
  text-align: center;
  margin: 0px auto 50px;
}
#forum02.hokago .cont03 .catalog-img02 img {
  max-width: 1170px;
}
#forum02.hokago .cont03 .btn {
  text-align: center;
  display: block;
  margin-top: 60px;
}
#forum02.hokago .cont03 .btn a {
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
#forum02.hokago .cont03 .cont h4 span {
  padding-left: 0;
  margin-bottom: 0;
}

#forum02.hokago .cont03 .cont .text02 {
  padding: 46px 0 75px;
}
#forum02.hokago .cont03 .cont .text02::before {
  top: 22px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.hokago .cont01 .text {
    font-size: 28px;
  }
  #forum02.hokago .cont01 ul {
    width: 450px;
  }
  #forum02.hokago .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.hokago .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.hokago .cont03 .catalog-img {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.hokago .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.hokago .cont03 .catalog-img02 {
    box-sizing: border-box;
    padding: 0 15px;
  }
  #forum02.hokago .cont03 .catalog-img02 img {
    max-width: 100%;
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum02.hokago .cont01 h3 {
    font-size: 18px;
    padding-bottom: 15px;
  }
  #forum02.hokago .cont01 ul {
    width: 300px;
  }
  #forum02.hokago .cont01 .img {
    box-sizing: border-box;
    padding: 0 15px;
    margin-top: 30px;
  }
  #forum02.hokago .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.hokago .cont03 {
    padding-bottom: 70px;
  }
  #forum02.hokago .cont03 h3 {
    line-height: 1.5;
    padding: 0 0 50px;
  }
  #forum02.hokago .cont03 table {
    padding-bottom: 50px;
  }
  #forum02.hokago .cont03 .catalog-img {
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum02.hokago .cont03 .catalog-img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.hokago .cont03 .catalog-img02 {
    padding: 0 15px;
    box-sizing: border-box;
  }
  #forum02.hokago .cont03 .catalog-img02 img {
    max-width: 100%;
    height: auto;
  }
  #forum02.hokago .cont03 .btn a {
    width: 350px;
    height: 55px;
    padding-top: 17px;
    font-size: 16px;
  }
}

/* 2023年5月フォーラム */
#forum02.forum2023-05 .key {
  background: url(img/forum/forum2023-05_key_bg.png) no-repeat center / cover;
}

#forum02.forum2023-05 .cont02 .cont {
  padding-top: 50px;
}

#forum02.forum2023-05 .cont03 .cont:nth-of-type(2) {
  padding-top: 25px;
}
#forum02.forum2023-05 .cont03 .cont:nth-of-type(3) {
  padding-top: 70px;
}
#forum02.forum2023-05 .cont03 .cont:nth-of-type(4) {
  padding-top: 30px;
}
#forum02.forum2023-05 .cont03 .cont:nth-of-type(5) {
  padding-top: 50px;
}
#forum02.forum2023-05 .cont03 .cont:nth-of-type(6) {
  padding-top: 100px;
}
#forum02.forum2023-05 .cont03 .cont .text02 {
  padding-top: 40px;
}
#forum02.forum2023-05 .cont03 .cont .text02::before {
  top: 20px;
}
#forum02.forum2023-05 .cont03 .map {
  margin: 20px auto 100px;
  text-align: center;
  padding: 0 15px;
  box-sizing: border-box;
}
#forum02.forum2023-05 .cont03 .map img {
  max-width: 100%;
  height: auto;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-05 .cont01 .text {
    font-size: 26px;
  }

  #forum02.forum2023-05 .cont02 .cont {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont02 h4::before {
    bottom: -30px;
  }

  #forum02.forum2023-05 .cont03 .cont {
    min-height: 280px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(2) {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(3) {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(4) {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(5) {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(6) {
    padding-top: 0px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(4) .text02 br {
    display: none;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-05 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2023-05 .cont01 .text {
    font-size: 18px;
    line-height: 1.6;
  }

  #forum02.forum2023-05 .cont02 .cont {
    padding-top: 320px;
  }

  #forum02.forum2023-05 .cont03 .cont:nth-of-type(2) {
    padding-top: 300px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(3) {
    padding-top: 300px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(4) {
    padding-top: 300px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(5) {
    padding-top: 300px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(6) {
    padding-top: 300px;
  }
  #forum02.forum2023-05 .cont03 .cont .text02::before {
    top: 20px;
  }
  #forum02.forum2023-05 .cont03 .cont:nth-of-type(4) .text02 br {
    display: none;
  }
  #forum02.forum2023-05 .cont03 .map {
    margin: 0 auto 70px;
  }
}

/* 2023年6月例会 */
#forum02.forum2023-06 .key {
  background: url(img/forum/forum2023-06_key_bg.png) no-repeat center / cover;
}
#forum02.forum2023-06 .cont01 .pdf {
  margin: 90px auto 0;
  width: 1206px;
  display: flex;
  gap: 6px;
  justify-content: center;
}
#forum02.forum2023-06 .cont01 .btn {
  margin-top: 60px;
  display: block;
  text-align: center;
}
#forum02.forum2023-06 .cont01 .btn a {
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
#forum02.forum2023-06 .btn a:hover {
  opacity: 0.8;
}
#forum02.forum2023-06 .cont02 .cont {
  padding-top: 50px;
}
#forum02.forum2023-06 .cont03 h3:nth-of-type(2)::before {
  content: "SCHEDULE";
}
#forum02.forum2023-06 .cont03 h4 span {
  padding-left: 0;
}
#forum02.forum2023-06 .cont03 .cont .text02 {
  padding-top: 40px;
}
#forum02.forum2023-06 .cont03 .cont .text02::before {
  top: 10px;
}
#forum02.forum2023-06 .cont06 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02.forum2023-06 .cont06 h3::before {
  content: "SPONSORS";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#forum02.forum2023-06 .cont06 .sponsors_logo {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#forum02.forum2023-06 .cont06 .sponsors_logo .box {
  width: 48%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  margin: 0 1%;
}
#forum02.forum2023-06 .cont06 .sponsors_logo .box:hover {
  opacity: 0.7;
}
#forum02.forum2023-06 .cont06 .sponsors_logo .box .img {
  width: 33.33333333333334%;
}
#forum02.forum2023-06 .cont06 .sponsors_logo .box img:hover {
  opacity: 1;
}
#forum02.forum2023-06 .cont06 .sponsors_logo .box .text {
  width: 56%;
  padding: 0 10px 0 10px;
  box-sizing: border-box;
  color: #333;
}

#forum02.forum2023-06 .cont06 .sponsors_link {
  width: 1200px;
  margin: 0 auto 90px;
  display: flex;
  flex-wrap: wrap;
}
#forum02.forum2023-06 .cont06 .sponsors_link li {
  padding: 10px;
  width: 300px;
  box-sizing: border-box;
}

@media (max-width: 1240px) {
  #forum02.forum2023-06 .cont01 .pdf {
    width: 600px;
    margin: 90px auto 0;
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-06 .cont01 .text {
    font-size: 26px;
  }
  #forum02.forum2023-06 .cont02 .cont {
    padding-top: 0px;
  }
  #forum02.forum2023-06 .cont02 h4::before {
    bottom: -30px;
  }
  #forum02.forum2023-06 .cont06 ul {
    width: 600px;
  }
  #forum02.forum2023-06 .cont06 .sponsors_logo .box {
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start;
  }
  #forum02.forum2023-06 .cont06 .sponsors_logo .box .text {
    width: 100%;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-06 .cont01 .pdf {
    padding: 0 15px;
    width: 400px;
  }
  #forum02.forum2023-06 .cont01 .pdf img {
    width: 100%;
    height: auto;
  }
  #forum02.forum2023-06 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2023-06 .cont01 .text {
    font-size: 18px;
    line-height: 1.6;
  }

  #forum02.forum2023-06 .cont02 .cont {
    padding-top: 320px;
  }

  #forum02.forum2023-06 .cont03 .cont:nth-of-type(2) {
    padding-top: 300px;
  }
  #forum02.forum2023-06 .cont03 .cont:nth-of-type(3) {
    padding-top: 300px;
  }
  #forum02.forum2023-06 .cont03 .cont:nth-of-type(4) {
    padding-top: 300px;
  }
  #forum02.forum2023-06 .cont03 .cont:nth-of-type(5) {
    padding-top: 300px;
  }
  #forum02.forum2023-06 .cont03 .cont:nth-of-type(6) {
    padding-top: 300px;
  }
  #forum02.forum2023-06 .cont03 .cont .text02::before {
    top: 20px;
  }
  #forum02.forum2023-06 .cont03 .cont:nth-of-type(4) .text02 br {
    display: none;
  }

  #forum02.forum2023-06 .cont06 .sponsors_logo .box {
    padding: 0 15px;
    width: 100%;
    box-sizing: border-box;
  }
  #forum02.forum2023-06 .cont06 .sponsors_logo .box .img img {
    width: 100%;
  }
  #forum02.forum2023-06 .cont06 .sponsors_logo .box .text {
    width: 100%;
    font-size: 14px;
  }
  #forum02.forum2023-06 .cont06 ul {
    width: 400px;
  }
  #forum02.forum2023-06 .cont06 ul li {
    width: 200px;
  }
  #forum02.forum2023-06 .cont06 .sponsors_link {
    width: 100%;
  }
  #forum02.forum2023-06 .cont06 .sponsors_link li {
    width: 50%;
  }
}

/* 2023年7月フォーラム */
#forum02.forum2023-07 .key {
  background: url(img/forum/forum2023-07_key_bg.png) no-repeat center / cover;
}
#forum02.forum2023-07 .key h2 {
  max-width: 1200px;
  margin: auto;
  position: relative;
}
#forum02.forum2023-07 .key h2 img {
  top: auto;
  transform: translateX(-50%);
}
#forum02.forum2023-07 .key h2::before {
  content: "";
  z-index: 10;
  position: absolute;
  top: 297px;
  right: 1200px;
  width: 100vw;
  min-width: 1000px;
  height: 50px;
  background: #003e82;
}

#forum02.forum2023-07 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2023-07 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2023-07 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}

#forum02.forum2023-07 .cont02 .cont:nth-of-type(4) .text01 {
  letter-spacing: -1px;
}

#forum02.forum2023-07 .cont03 h3:nth-of-type(2):before {
  content: "SCHEDULE";
}
#forum02.forum2023-07 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2023-07 .cont03 .cont .text02::before {
  top: 20px;
}
#forum02.forum2023-07 .cont03 .cont:first-of-type h4 span {
  padding: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-07 .key h2 {
    text-align: center;
  }
  #forum02.forum2023-07 .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.forum2023-07 .key h2::before {
    content: "";
    z-index: 10;
    position: absolute;
    top: 180px;
    right: auto;
    left: 0px;
    width: 20px;
    min-width: auto;
    height: 31px;
    background: #003e82;
  }
  #forum02.forum2023-07 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2023-07 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2023-07 .cont01 .img-flex .img img {
    max-width: 100%;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-07 .key h2 {
    text-align: center;
  }
  #forum02.forum2023-07 .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.forum2023-07 .key h2::before {
    content: "";
    z-index: 10;
    position: absolute;
    top: 101px;
    right: auto;
    left: 0px;
    width: 12px;
    min-width: auto;
    height: 17px;
    background: #003e82;
  }

  #forum02.forum2023-07 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2023-07 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2023-07 .cont01 ul {
    width: 300px;
  }
  #forum02.forum2023-07 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2023-07 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2023-07 .cont01 .dwnload a {
    width: 320px;
  }

  #forum02.forum2023-07 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2023-07 .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
}

/* 2023年7月違和CAN */
#forum02.iwacan .key {
  background: url(img/forum/iwacan_key_bg.png) no-repeat center / cover;
}
#forum02.iwacan .cont02 .cont {
  padding-top: 0;
}
#forum02.iwacan .cont02 .cont:nth-of-type(2n) {
  padding: 100px 0 0 20px;
}
#forum02.iwacan .cont02 .cont .text {
  padding-top: 70px;
  line-height: 2;
}
#forum02.iwacan .cont02 .btn {
  display: block;
  margin-top: 40px;
  margin-right: auto;
  margin-left: 0;
}
#forum02.iwacan .cont02 .btn a {
  text-align: center;
  display: inline-block;
  width: 400px;
  height: 55px;
  box-sizing: border-box;
  padding-top: 17px;
  background: #0099dd;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}
#forum02.iwacan .cont03 table {
  padding-bottom: 0;
}

/* @media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.iwacan .key h2 {
    text-align: center;
  }
  #forum02.iwacan .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.iwacan .key h2::before {
    content: "";
    z-index: 10;
    position: absolute;
    top: 180px;
    right: auto;
    left: 0px;
    width: 20px;
    min-width: auto;
    height: 31px;
    background: #003e82;
  }
  #forum02.iwacan .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.iwacan .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.iwacan .cont01 .img-flex .img img {
    max-width: 100%;
  }
} */

@media (max-width: 430px) {
  #forum02.iwacan .key h2 {
    text-align: center;
  }
  #forum02.iwacan .key h2 img {
    transform: none;
    width: 95%;
  }

  #forum02.iwacan .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.iwacan .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.iwacan .cont01 ul {
    width: 400px;
  }
  #forum02.iwacan .cont02 .cont:nth-of-type(2n) {
    padding-top: 0;
  }
  #forum02.iwacan .cont02 .cont:nth-of-type(2n-1)::before {
    height: 116%;
  }
  #forum02.iwacan .cont02 .cont h4 {
    padding: 320px 5px 0;
  }
  #forum02.iwacan .cont02 .cont .text {
    padding-top: 46px;
  }
  #forum02.iwacan .cont02 .cont .btn {
    margin-top: 20px;
  }
  #forum02.iwacan .cont02 .cont .btn a {
    font-size: 15px;
    width: 370px;
  }
}

.kaiin-btn a {
  position: relative;
}
.kaiin-btn a span {
  position: absolute;
  bottom: 69px;
  left: 234px;
  font-size: 27px;
  font-weight: bold;
  color: #333;
  letter-spacing: 4px;
  transition: 0.3s;
  pointer-events: none;
  height: auto;
  line-height: 1;
}
.kaiin-btn a:hover span {
  opacity: 0.6;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .kaiin-btn a span {
    font-size: 18px;
    bottom: 49px;
    left: 168px;
    height: auto;
    line-height: 1;
  }
}
@media (max-width: 430px) {
  .kaiin-btn a span {
    font-size: 11px;
    letter-spacing: 1px;
    bottom: 26px;
    left: 95px;
    height: auto;
    line-height: 1;
  }
}

/* 2023年9月フォーラム */
#forum02.forum2023-09 .key {
  background: url(img/forum/forum2023-09_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

#forum02.forum2023-09 .cont01 {
  background: url(img/forum/forum_bg02.png) no-repeat top 80px center / 1000px;
}
#forum02.forum2023-09 .cont01 .text02 {
  background: none;
}
#forum02.forum2023-09 .cont01 ul {
  width: 600px;
}
#forum02.forum2023-09 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2023-09 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2023-09 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}

#forum02.forum2023-07 .cont02 .cont:nth-of-type(4) .text01 {
  letter-spacing: -1px;
}

#forum02.forum2023-09 .cont03 h3:nth-of-type(2):before {
  content: "SCHEDULE";
}
#forum02.forum2023-09 .cont03 p.ttl {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 100px;
  margin-top: 70px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2023-09 .cont03 p.ttl::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2023-09 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2023-09 .cont03 .cont .text02::before {
  top: 30px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-09 .key {
    width: auto;
  }

  #forum02.forum2023-09 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 100px center / 600px;
  }
  #forum02.forum2023-09 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2023-09 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2023-09 .cont01 .img-flex .img img {
    max-width: 100%;
  }

  #forum02.forum2023-09 .cont03 p.ttl {
    font-size: 28px;
    margin-bottom: 70px;
  }
  #forum02.forum2023-09 .cont03 .cont02 {
    min-height: 270px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-09 .key {
    width: auto;
  }

  #forum02.forum2023-09 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 120px center / 400px;
  }
  #forum02.forum2023-09 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2023-09 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2023-09 .cont01 ul {
    width: 400px;
  }
  #forum02.forum2023-09 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2023-09 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2023-09 .cont01 .dwnload a {
    width: 320px;
  }

  #forum02.forum2023-09 .cont02 .cont:last-of-type h4 span {
    font-size: 18px;
  }

  #forum02.forum2023-09 .cont03 p.ttl {
    font-size: 24px;
    margin-bottom: 50px;
  }
  #forum02.forum2023-09 .cont03 .cont.box h4::before {
    display: none;
  }
  #forum02.forum2023-09 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2023-09 .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
}

/* 2023年10月フォーラム */
#forum02.forum2023-10 .key {
  background: none;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

#forum02.forum2023-10 .cont01 .text {
  line-height: 1.5;
}
#forum02.forum2023-10 .cont01 .text span {
  font-size: 28px;
}

#forum02.forum2023-10 .cont06 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02.forum2023-10 .cont06 h3::before {
  content: "SPONSORS";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#forum02.forum2023-10 .cont06 .sponsors_logo {
  max-width: 1200px;
  margin: 0 auto 50px;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box {
  width: 48%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  margin: 0 1%;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box.box-last01,
#forum02.forum2023-10 .cont06 .sponsors_logo .box.box-last02 {
  margin-top: 30px;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box:hover {
  opacity: 0.7;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box .img {
  width: 33.33333333333334%;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box img:hover {
  opacity: 1;
}
#forum02.forum2023-10 .cont06 .sponsors_logo .box .text {
  width: 56%;
  padding: 0 10px 0 10px;
  box-sizing: border-box;
  color: #333;
  font-size: 18px;
}

#forum02.forum2023-10 .cont06 .sponsors_link {
  width: 1200px;
  margin: 0 auto 90px;
  display: flex;
  flex-wrap: wrap;
}
#forum02.forum2023-10 .cont06 .sponsors_link.sponsors_link_font_up {
  margin-bottom: 40px;
}
#forum02.forum2023-10 .cont06 .sponsors_link li {
  padding: 10px;
  width: 300px;
  box-sizing: border-box;
}
#forum02.forum2023-10 .cont06 .sponsors_link.sponsors_link_font_up li .text {
  font-size: 20px;
  color: #333;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-10 .key {
    width: 1100px;
  }

  #forum02.forum2023-10 .cont01 .text {
    font-size: 28px;
    line-height: 1.5;
  }
  #forum02.forum2023-10 .cont01 .text span {
    font-size: 22px;
  }

  #forum02.forum2023-10 .cont06 ul {
    width: 600px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box {
    justify-content: flex-start;
    flex-direction: column;
    align-items: flex-start;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box .text {
    width: 100%;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-10 .key {
    width: 630px;
  }

  #forum02.forum2023-10 .cont01 .text {
    font-size: 19px;
    line-height: 1.5;
  }
  #forum02.forum2023-10 .cont01 .text span {
    font-size: 16px;
  }

  #forum02.forum2023-10 .cont03 table tr:nth-of-type(2) td {
    font-size: 14px;
  }

  #forum02.forum2023-10 .cont06 h3 {
    font-size: 20px;
    padding-bottom: 20px;
  }
  #forum02.forum2023-10 .cont06 h3::before {
    font-size: 32px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo {
    margin-bottom: 15px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box {
    padding: 0 15px;
    width: 100%;
    box-sizing: border-box;
    height: 100px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box.box-last01,
  #forum02.forum2023-10 .cont06 .sponsors_logo .box.box-last02 {
    margin-top: 0;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box .img {
    width: 40%;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box .img img {
    width: 100%;
  }
  #forum02.forum2023-10 .cont06 .sponsors_logo .box .text {
    width: 100%;
    font-size: 14px;
  }
  #forum02.forum2023-10 .cont06 ul {
    width: 400px;
  }
  #forum02.forum2023-10 .cont06 ul li {
    width: 200px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_link {
    width: 100%;
  }
  #forum02.forum2023-10 .cont06 .sponsors_link.sponsors_link_font_up {
    margin-bottom: 30px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_link li {
    width: 50%;
  }
  #forum02.forum2023-10 .cont06 .sponsors_link li .text {
    font-size: 14px;
  }
  #forum02.forum2023-10 .cont06 .sponsors_link.sponsors_link_font_up li .text {
    font-size: 16px;
  }
}

/* 2023年11月フォーラム LOVE LOVE FESTIVAL */
#forum02.forum2023-11 .key {
  background: none;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

#forum02.forum2023-11 .cont01 .text {
  line-height: 1.5;
}
#forum02.forum2023-11 .cont01 .text span {
  font-size: 28px;
}
#forum02.forum2023-11 .cont01 .text02 .tab {
  display: none;
}
#forum02.forum2023-11 .cont01 .img {
  text-align: center;
  margin-top: 100px;
}

#forum02.forum2023-11 .cont02 h4::before {
  display: none;
}
#forum02.forum2023-11 .cont02 .ttl {
  font-size: 22px;
  margin-top: 20px;
  font-weight: bold;
}
#forum02.forum2023-11 .cont02 .ttl span {
  font-size: 16px;
  font-weight: bold;
}
#forum02.forum2023-11 .cont02 .cont .text01 {
  margin-top: 25px;
}

#forum02.forum2023-11 .cont03 td {
  position: relative;
}
#forum02.forum2023-11 .cont03 td img {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 290px;
  height: auto;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-11 .key {
    width: 1100px;
  }

  #forum02.forum2023-11 .cont01 .text {
    font-size: 28px;
    line-height: 1.5;
  }
  #forum02.forum2023-11 .cont01 .text span {
    font-size: 22px;
  }
  #forum02.forum2023-11 .cont01 .text02 .pc {
    display: block;
  }
  #forum02.forum2023-11 .cont01 .text02 .tab {
    display: block;
  }
  #forum02.forum2023-11 .cont01 .img {
    text-align: center;
    margin-top: 70px;
    padding: 0 30px;
    box-sizing: border-box;
  }
  #forum02.forum2023-11 .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.forum2023-11 .cont02 .ttl {
    font-size: 18px;
    margin-top: 20px;
    font-weight: bold;
  }
  #forum02.forum2023-11 .cont02 .ttl span {
    font-size: 14px;
    font-weight: bold;
  }
  #forum02.forum2023-11 .cont02 .cont .text01 {
    margin-top: 25px;
  }

  #forum02.forum2023-11 .cont03 td img {
    margin-top: 30px;
    position: static;
    top: auto;
    right: auto;
    transform: none;
    width: auto;
    height: auto;
  }
  #forum02.forum2023-11 .cont03 .cont {
    min-height: 250px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-11 .key {
    width: 630px;
  }

  #forum02.forum2023-11 .cont01 .text {
    font-size: 19px;
    line-height: 1.5;
  }
  #forum02.forum2023-11 .cont01 .text span {
    font-size: 16px;
  }

  #forum02.forum2023-11 .cont01 .img {
    text-align: center;
    margin-top: 70px;
    padding: 0 20px;
    box-sizing: border-box;
  }
  #forum02.forum2023-11 .cont01 .img img {
    max-width: 100%;
    height: auto;
  }

  #forum02.forum2023-11 .cont02 .ttl {
    font-size: 18px;
    margin-top: 20px;
    font-weight: bold;
  }
  #forum02.forum2023-11 .cont02 .ttl span {
    font-size: 14px;
    font-weight: bold;
  }
  #forum02.forum2023-11 .cont02 .cont .text01 {
    margin-top: 25px;
  }

  #forum02.forum2023-11 .cont03 td img {
    margin-top: 30px;
    position: static;
    top: auto;
    right: auto;
    transform: none;
    width: auto;
    height: auto;
  }
}

/* 2023年11月フォーラム (forum2023-11 とかぶらないように forum2023-f11) */
#forum02.forum2023-f11 .key {
  background: url(img/forum/forum2023-f11_key_bg.png) no-repeat center / cover;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

#forum02.forum2023-f11 .cont01 {
  background: url(img/forum/forum_bg02.png) no-repeat top 80px center / 1000px;
}
#forum02.forum2023-f11 .cont01 .text02 {
  background: none;
}
#forum02.forum2023-f11 .cont01 ul {
  width: 600px;
}
#forum02.forum2023-f11 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2023-f11 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2023-f11 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}

#forum02.forum2023-07 .cont02 .cont:nth-of-type(4) .text01 {
  letter-spacing: -1px;
}

#forum02.forum2023-f11 .cont03 h3:nth-of-type(2):before {
  content: "SCHEDULE";
}
#forum02.forum2023-f11 .cont03 p.ttl {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 100px;
  margin-top: 70px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2023-f11 .cont03 p.ttl::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2023-f11 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}

#forum02.forum2023-f11 .cont03 h3:nth-of-type(3) {
  padding: 0 0 50px 0;
  font-size: 33px;
  line-height: 1.4;
}
#forum02.forum2023-f11 .cont03 .cont h4 {
  font-size: 28px;
}
#forum02.forum2023-f11 .cont03 h4 span {
  font-weight: bold;
}
#forum02.forum2023-f11 .cont03 h3 span {
  font-weight: bold;
}
#forum02.forum2023-f11 .cont03 .cont:nth-of-type(4) h4 {
  font-size: 24px;
}

#forum02.forum2023-f11 .cont03 .cont .text02::before {
  top: 30px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2023-f11 .key {
    width: auto;
  }

  #forum02.forum2023-f11 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 100px center / 600px;
  }
  #forum02.forum2023-f11 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2023-f11 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2023-f11 .cont01 .img-flex .img img {
    max-width: 100%;
  }

  #forum02.forum2023-f11 .cont03 p.ttl {
    font-size: 28px;
    margin-bottom: 70px;
  }
  #forum02.forum2023-f11 .cont03 .cont02 {
    min-height: 270px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2023-f11 .key {
    width: auto;
  }

  #forum02.forum2023-f11 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 120px center / 400px;
  }
  #forum02.forum2023-f11 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2023-f11 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2023-f11 .cont01 ul {
    width: 400px;
  }
  #forum02.forum2023-f11 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2023-f11 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2023-f11 .cont01 .dwnload a {
    width: 320px;
  }

  #forum02.forum2023-f11 .cont02 .cont:last-of-type h4 span {
    font-size: 18px;
  }
  #forum02.forum2023-f11 .cont03 h3 span {
    display: block;
    font-size: 20px;
    padding-bottom: 7px;
  }
  #forum02.forum2023-f11 .cont03 h3:nth-of-type(3) span {
    margin-bottom: -40px;
  }
  #forum02.forum2023-f11 .cont03 p.ttl {
    font-size: 24px;
    margin-bottom: 50px;
  }
  #forum02.forum2023-f11 .cont03 .cont.box h4::before {
    display: none;
  }
  #forum02.forum2023-f11 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2023-f11 .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
}

/* 2024年2月フォーラム */
#forum02.forum2024-02 .key {
  background: url(img/forum/forum2024-02-key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2024-02 .cont01 {
  background: url(img/forum/forum_bg02.png) no-repeat top 80px center / 1000px;
}
#forum02.forum2024-02 .cont01 .text02 {
  background: none;
}
#forum02.forum2024-02 .cont01 .video-box {
    text-align: center;
    margin-top: 100px;
}
#forum02.forum2024-02 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2024-02 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2024-02 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2024-02 .cont03 h3:nth-of-type(2):before {
  content: "SCHEDULE";
}
#forum02 .cont03 .cont h4 span {
  display: block;
  padding: 0;
  margin-bottom: 5px;
  font-size: 14px;
}
#forum02.forum2024-02 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2024-02 .cont03 .cont .text02::before {
  top: 30px;
}
#forum02 .cont03 h3::before {
  display: none;
}
#forum02.forum2024-02 .cont03 table tbody tr td a {
    display: block;
    font-weight: bold;
    text-decoration: underline;
  }
#forum02.forum2024-02 .cont05 h3 {
  padding-bottom: 0;
}
#forum02.forum2024-02 .cont06 {
  margin: auto;
}
#forum02.forum2024-02 .cont06 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02.forum2024-02 .cont06 h3::before {
  content: "SPONSORS";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}

#forum02.forum2024-02 .cont06 .sponsors_logo {
  width: 1200px;
  margin: 0 auto 120px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo img {
  width: 100%;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box img {
  height: 50px;
  object-fit: contain;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box:nth-child(3) {
  border: none;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box,
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box_sm,
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box,
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box_sm {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 30px;
  max-width: 1200px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 30px 10px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name {
  width: calc(calc(100% - 30px) / 4);
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  box-sizing: border-box;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name:nth-of-type(7) {
  padding-top: 5px;
  font-size: 16px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2024-02 .key {
    width: auto;
  }

  #forum02.forum2024-02 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 100px center / 600px;
  }
  #forum02.forum2024-02 .cont01 .img-flex {
    gap: 0;
    justify-content: center;
    padding: 0 20px;
  }
  #forum02.forum2024-02 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2024-02 .cont01 .img-flex .img img {
    max-width: 100%;
  }

  #forum02.forum2024-02 .cont06 {
    margin: 0 20px;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo {
    width: 100%;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo .img {
    width: calc(calc(100% - 10px) / 2);
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name {
    font-size: 16px;
  }
  #forum02.forum2024-02
    .cont06
    .sponsors_logo
    .text-box
    .name:nth-last-of-type(1),
  #forum02.forum2024-02
    .cont06
    .sponsors_logo
    .text-box
    .name:nth-last-of-type(4) {
    padding-left: 18px;
  }
  #forum02.forum2024-02
    .cont06
    .sponsors_logo
    .text-box
    .name:nth-last-of-type(2),
  #forum02.forum2024-02
    .cont06
    .sponsors_logo
    .text-box
    .name:nth-last-of-type(3) {
    padding-right: 18px;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo .text-box_sm {
    flex-wrap: wrap;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo .text-box_sm .name {
    font-size: 16px;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo .text-box_sm .img img {
    width: 80%;
  }
}
@media (max-width: 430px) {
  #forum02.forum2024-02 .key {
    width: auto;
  }
  #forum02.forum2024-02 .cont01 {
    background: url(img/forum/forum_bg02.png) no-repeat top 120px center / 400px;
  }
  #forum02.forum2024-02 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2024-02 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2024-02 .cont01 .video-box iframe {
    width: 100%;
}
  #forum02.forum2024-02 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
  }
  #forum02.forum2024-02 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2024-02 .cont01 .dwnload a {
    width: 320px;
  }

  #forum02.forum2024-02 .cont06 h3::before {
    font-size: 32px;
  }

  #forum02.forum2024-02 .cont06 .sponsors_logo {
    width: 400px;
  }
  #forum02.forum2024-02 .cont06 .sponsors_logo p img {
    width: 100%;
  }
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box .img {
  width: calc(calc(100% - 20px) / 2);
}
#forum02.forum2024-02 .cont06 .sponsors_logo .logo-box:first-child .img {
  width: 100%;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box {
  gap: 10px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name {
  width: calc(calc(100% - 20px) / 3);
  font-size: 12px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name:nth-of-type(4) {
  padding-top: 3px;
  font-size: 9px;
}
#forum02.forum2024-02 .cont06 .sponsors_logo .text-box .name:nth-of-type(7) {
  font-size: 12px;
}

}

/* dx-promotion */
@media (min-width: 431px) {
    #forum02.dx-promotion .key {
      background: url(img/forum/dx-promotion_key_bg.png) center center / cover no-repeat;
    }
    #forum02.dx-promotion .key h2 img {
      position: absolute;
      top: auto;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      object-fit: contain;
    }
    #forum02.dx-promotion .cont01 ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px;
      max-width: 900px;
      margin: 80px auto;
    }
    #forum02.dx-promotion .cont01 .img {
      text-align: center;
    }
    
    #forum02.dx-promotion .cont01 .dwnload {
      text-align: center;
      margin-top: 50px;
    }
    #forum02.dx-promotion .cont01 .dwnload a {
      display: inline-block;
      width: 400px;
      line-height: 1;
      padding: 15px 0;
      color: #fff;
      font-weight: bold;
      background: #0099dd;
    }
    #forum02.dx-promotion .cont02 .cont h4 {
      font-size: 16px;
    }
    #forum02.dx-promotion .cont02 .cont h4 span {
      font-size: 30px;
    }
    #forum02.dx-promotion .cont02 .cont .img img{
      object-fit: cover;
    } 
    #forum02.dx-promotion .cont03 {
      padding-bottom: 80px;
    }
    #forum02.dx-promotion .cont03 h3 {
      padding: 0 0 50px;
      position: relative;
    }
    #forum02.dx-promotion .cont03 table tr td a {
      display: inline-block;
      margin-top: 15px;
      text-decoration: underline;
    }
    #forum02.dx-promotion .cont03 .button {
      width: 400px;
      text-align: center;
      margin: 80px auto 0;
    }
    #forum02.dx-promotion .cont03 .button a {
      display: block;
      font-weight: bold;
      color: #fff;
      font-size: 20px;
      background: #0061b2;
      padding: 15px 0;
      border-radius: 5px;
    }
    #forum02.dx-promotion .cont06 {
      margin-bottom: 120px;
    }
    #forum02.dx-promotion .cont06 h3 {
      font-size: 28px;
      font-weight: bold;
      text-align: center;
    }
    #forum02.dx-promotion .cont06 h3::before {
      content: "SDGs";
      display: block;
      font-weight: bold;
      color: #0099dd;
      font-size: 48px;
      line-height: 1.6;
    }
    #forum02.dx-promotion .cont06 .text01 {
      text-align: center;
      line-height: 2;
      font-weight: bold;
      margin-top: 25px;
    }
    #forum02.dx-promotion .cont06 ul {
      display: flex;
      justify-content: left;
      flex-wrap: wrap;
      width: 1200px;
      padding: 0 80px;
      box-sizing: border-box;
      margin: 60px auto 0;
    }
    #forum02.dx-promotion .cont06 ul li {
      padding-left: 150px;
      position: relative;
      min-height: 130px;
      width: 490px;
      box-sizing: border-box;
    }
    #forum02.dx-promotion .cont06 ul li:nth-of-type(n + 3) {
      margin-top: 40px;
    }
    #forum02.dx-promotion .cont06 ul li h4 {
      font-size: 20px;
      font-weight: bold;
    }
    #forum02.dx-promotion .cont06 ul li .text02 {
      margin-top: 10px;
      line-height: 1.5;
      font-size: 16px;
    }
    #forum02.dx-promotion .cont06 ul li .img {
      position: absolute;
      top: 0;
      left: 0;
    }
    #forum02.dx-promotion .cont06 .btn {
      display: block;
      text-align: center;
      margin-top: 80px;
    }
    #forum02.dx-promotion .cont06 .btn a {
      display: inline-block;
      width: 400px;
      height: 55px;
      box-sizing: border-box;
      padding-top: 17px;
      background: #0099dd;
      font-size: 20px;
      font-weight: bold;
      color: #fff;
    }
  }
  
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.dx-promotion .cont01 .dwnload {
      text-align: center;
      margin-top: 50px;
    }
    #forum02.dx-promotion .cont01 .dwnload a {
      display: inline-block;
      width: 400px;
      line-height: 1;
      padding: 15px 0;
      color: #fff;
      font-weight: bold;
      background: #0099dd;
    }
    /* cont06 */
    #forum02.dx-promotion .cont06 h3 {
      font-size: 24px;
    }
    #forum02.dx-promotion .cont06 .text01 {
      width: 80%;
      margin: 35px auto 0;
    }
    #forum02.dx-promotion .cont06 ul {
      width: 100%;
      padding: 0 15px;
      justify-content: space-between;
    }
    #forum02.dx-promotion .cont06 ul li {
      width: 48%;
      padding-left: 130px;
    }
    #forum02.dx-promotion .cont06 ul li:nth-of-type(2n) {
      margin: 0;
    }
    #forum02.dx-promotion .cont06 ul li h4 {
      font-size: 18px;
    }
    #forum02.dx-promotion .cont06 ul li .text02 {
      font-size: 14px;
    }
    #forum02.dx-promotion .cont06 ul li .img img {
      width: 110px;
      height: auto;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.dx-promotion .key {
      background: url(img/forum/dx-promotion_key_bg.png) center center / cover no-repeat;
    }
    #forum02.dx-promotion .cont01 .img {
      width: 95%;
      margin: auto;
    }
    #forum02.dx-promotion .cont01 .img img {
      width: 100%;
      object-fit: contain;
    }
    #forum02.dx-promotion .cont01 .dwnload {
      text-align: center;
      margin-top: -50px;
    }
    #forum02.dx-promotion .cont01 .dwnload a {
      display: inline-block;
      width: 320px;
      line-height: 1;
      padding: 15px 0;
      color: #fff;
      background: #0099dd;
      font-weight: bold;
    }
    #forum02.dx-promotion .cont03 {
      padding-bottom: 0;
    }
    #forum02.dx-promotion .cont03 h3 {
      padding: 0 0 30px;
      position: relative;
    }
    #forum02.dx-promotion .cont03 h3::before {
      content: "APLLY";
      display: block;
      font-weight: bold;
      color: #0099dd;
      font-size: 48px;
      line-height: 1.6;
      font-family: "Poppins", "Noto Sans JP", sans-serif;
    }
    #forum02.dx-promotion .cont03 table tr td a {
      display: inline-block;
      margin-top: 15px;
      text-decoration: underline;
    }
    #forum02.dx-promotion .cont03 .button {
      width: 400px;
      text-align: center;
      margin: 50px auto;
    }
    #forum02.dx-promotion .cont03 .button a {
      display: block;
      font-weight: bold;
      color: #fff;
      font-size: 20px;
      background: #0061b2;
      padding: 15px 0;
      border-radius: 5px;
    }
    #forum02.dx-promotion .cont06 {
      margin-top: 70px;
      margin-bottom: 100px;
    }
    #forum02.dx-promotion .cont06 h3 {
      font-size: 24px;
      font-weight: bold;
      text-align: center;
    }
    #forum02.dx-promotion .cont06 h3::before {
      content: "SDGs";
      display: block;
      font-weight: bold;
      color: #0099dd;
      font-size: 48px;
      line-height: 1.6;
    }
    #forum02.dx-promotion .cont06 .text01 {
      font-size: 16px;
      text-align: center;
      line-height: 2;
      font-weight: bold;
      margin-top: 20px;
    }
    #forum02.dx-promotion .cont06 ul {
      display: flex;
      flex-wrap: wrap;
      flex-direction: column;
      margin: 40px auto 0;
      width: 100%;
      padding: 0 15px;
      box-sizing: border-box;
    }
    #forum02.dx-promotion .cont06 ul li {
      padding-left: 125px;
      position: relative;
      min-height: 110px;
      box-sizing: border-box;
    }
    #forum02.dx-promotion .cont06 ul li:nth-of-type(n + 2) {
      margin-top: 25px;
    }
    #forum02.dx-promotion .cont06 ul li h4 {
      font-size: 18px;
      font-weight: bold;
      line-height: 1.5;
    }
    #forum02.dx-promotion .cont06 ul li .text02 {
      font-size: 14px;
      margin-top: 10px;
      line-height: 1.5;
    }
    #forum02.dx-promotion .cont06 ul li .img {
      position: absolute;
      top: 0;
      left: 0;
    }
    #forum02.dx-promotion .cont06 ul li .img img {
      width: 110px;
      height: auto;
    }
    #forum02.dx-promotion .cont06 .btn {
      display: block;
      text-align: center;
      margin-top: 40px;
    }
    #forum02.dx-promotion .cont06 .btn a {
      display: inline-block;
      width: 320px;
      height: 55px;
      box-sizing: border-box;
      padding-top: 17px;
      background: #0099dd;
      font-size: 16px;
      font-weight: bold;
      color: #fff;
    }
  }

  /* 2024年3月フォーラム */
#forum02.forum2024-03 .key {
    background: url(img/forum/forum2024-03-key_bg.png) no-repeat center / 100%;
    width: 1800px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2024-03 .key h2 img {
    object-fit: contain;
    height: 650px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
  }
  #forum02.forum2024-03 .cont01 .text {
    line-height: 1.4;
  }
  #forum02.forum2024-03 .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
    gap: 0 20px;
  }
  #forum02.forum2024-03 .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.forum2024-03 .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.forum2024-03 .cont03 table tbody tr td a {
    display: block;
    padding-bottom: 10px;
    font-weight: bold;
    text-decoration: underline;
  }
  #forum02.forum2024-03 .cont03 .cont .text02 {
    padding: 60px 0 75px;
  }
  #forum02.forum2024-03 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2024-03 .cont03 .cont .img img {
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02 .cont03 h3::before {
    display: none;
  }
  #forum02.forum2024-03 .cont05 h3 {
    padding-bottom: 0;
  }
  
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.forum2024-03 .key {
        background: url(img/forum/forum2024-03-key_bg.png) no-repeat center / cover;
        width: auto;
        height: 650px;
    }
    #forum02.forum2024-03 .key h2 img {
        height: 650px;
    }
    #forum02.forum2024-03 .cont01 .img-flex {
      gap: 0;
      justify-content: center;
      padding: 0 20px;
    }
    #forum02.forum2024-03 .cont01 .img-flex .img {
      width: 49%;
    }
    #forum02.forum2024-03 .cont01 .img-flex .img img {
      max-width: 100%;
    }
  }
  @media (max-width: 430px) {
    #forum02.forum2024-03 .key {
        background: url(img/forum/forum2024-03-key_bg.png) no-repeat center / cover;
        width: auto;
        height: 360px;
    }
    #forum02.forum2024-03 .key h2 img {
        height: 650px;
    }
    #forum02.forum2024-03 .cont01 h3 {
      padding-bottom: 20px;
    }
    #forum02.forum2024-03 .cont01 .text {
      padding-bottom: 25px;
      font-size: 22px;
    }
    #forum02.forum2024-03 .cont01 .text02 {
        text-align: center;
    }
    #forum02.forum2024-03 .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
      flex-direction: column;
    }
    #forum02.forum2024-03 .cont01 .img-flex .img img {
      width: 100%;
    }
    #forum02.forum2024-03 .cont01 .dwnload a {
      width: 320px;
    }
    #forum02.forum2024-03 .cont03 table tbody tr td a {
        display: block;
        padding-bottom: 10px;
        font-weight: bold;
        text-decoration: underline;
    }
    #forum02.forum2024-03 .cont06 h3::before {
      font-size: 32px;
    }
  }

  /* 2024年4月フォーラム */
  #forum02.forum2024-04 .key {
    background: url(img/forum/forum2024-04_key_bg.png) no-repeat center / cover;
  }
  #forum02.forum2024-04 .key h2 img {
    top: auto;
    transform: translateX(-50%);
  }
  #forum02.forum2024-04 .cont01 {
    padding-bottom: 0;
  }
  #forum02.forum2024-04 .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }
  #forum02.forum2024-04 .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.forum2024-04 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.forum2024-04 .cont02 {
    padding: 0;
  }
  #forum02.forum2024-04 .cont03 {
    padding: 120px 0;
  }
  #forum02.forum2024-04 .cont03 .cont .ttl {
    font-size: 14px;
  }
  #forum02.forum2024-04 .cont03 .cont h4 {
    font-size: 30px;
  }
  #forum02.forum2024-04 .cont03 .cont h4 .sub-ttl {
    font-size: 30px;
  }
  #forum02.forum2024-04 .cont03 .cont .text01 {
    font-size: 16px;
  }
  #forum02.forum2024-04 .cont03 .cont .text02 {
    padding: 60px 0 75px;
  }
  #forum02.forum2024-04 .cont03 .cont .text02::before {
    top: 20px;
  }
  #forum02.forum2024-04 .cont03 .cont:first-of-type h4 span {
    padding: 0;
  }
  #forum02.forum2024-04 .cont03 .schedule tr th {
    width: 330px;
    text-align: left;
    padding: 25px;
  }
  #forum02.forum2024-04 .img-flex {
    display: flex;
    justify-content: center;
  }
  #forum02 .cont04 .text {
    padding-bottom: 50px;
    font-size: 40px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
  }
  #forum02 .cont04 {
    padding-top: 120px;
  }
  #forum02 .cont04 .text02 {
    font-size: 20px;
    line-height: 2.5;
    text-align: center;
    font-weight: bold;
    background: url(img/forum/forum_bg02.png) no-repeat center / contain;
  }
  #forum02.forum2024-04 .cont04 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }

  
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.forum2024-04 .key h2 {
      text-align: center;
    }
    #forum02.forum2024-04 .key h2 img {
      transform: none;
      width: 95%;
    }
    #forum02.forum2024-04 .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        margin-bottom: 100px;
    }
    #forum02.forum2024-04 .img-flex .img img {
        max-width: 100%;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.forum2024-04 .key h2 {
      text-align: center;
    }
    #forum02.forum2024-04 .key h2 img {
      transform: none;
      width: 95%;
    }
    #forum02.forum2024-04 .cont01 h3 {
      padding-bottom: 20px;
    }
    #forum02.forum2024-04 .cont01 .text {
      padding-bottom: 25px;
    }
    #forum02.forum2024-04 .cont01 .text02 {
        text-align: center;
    }
    #forum02.forum2024-04 .cont01 ul {
      width: 300px;
    }
    #forum02.forum2024-04 .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
    }
    #forum02.forum2024-04 .cont01 .img-flex .img img {
      max-width: 100%;
    }
    #forum02.forum2024-04 .dwnload a {
      width: 320px;
    }
    #forum02.forum2024-04 .cont03 {
        padding: 90px 0;
    }
    #forum02.forum2024-04 .cont03 .cont .text02::before {
      top: 30px;
    }
    #forum02.forum2024-04 .cont03 .cont h4 {
        padding-top: 25px;
    }
    #forum02.forum2024-04 .cont03 .cont .ttl {
        padding-top: 0;
    }
    
    #forum02.forum2024-04 .cont03 .cont:last-of-type .text02 {
      padding-bottom: 0;
    }
    #forum02.forum2024-04 .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        margin-bottom: 50px;
    }
    #forum02.forum2024-04 .img-flex .img img {
        max-width: 100%;
    }
    #forum02.forum2024-04 .cont03 .schedule tr th {
        width: 100%;
    }
    #forum02 .cont04 .text {
        padding: 0 0 35px;
        font-size: 24px;
        line-height: 1.5;
    }
    #forum02 .cont04 .text02 {
        font-size: 14px;
        text-align: center;
        width: 90%;
        margin: auto;
        background: url(img/forum/forum_bg02.png) center center / contain no-repeat;
    }
  }

/* 2024年5月フォーラム */
#forum02.forum2024-05 .key {
  background: #f2cc1f url(img/forum/forum2024-05_key_bg.png) repeat-x center center;
}
#forum02.forum2024-05 .key h2 img {
  top: 33px;
  transform: translateX(-50%);
}
#forum02.forum2024-05 .cont01 {
  padding-bottom: 0;
}
#forum02.forum2024-05 .cont01 .box {
  width: 1200px;
  margin: 100px auto;
}
#forum02.forum2024-05 .cont01 .box h4 {
  position: relative;
}
#forum02.forum2024-05 .cont01 .box h4::before {
  position: absolute;
  content: "";
  top: 35px;
  left: 0;
  width: 100%;
  height: 2px;
  background: #c0c0c0;
}
#forum02.forum2024-05 .cont01 .box h4::after {
  position: absolute;
  content: "";
  top: 35px;
  left: 0;
  width: 100px;
  height: 2px;
  background: #0099dd;
}
#forum02.forum2024-05 .cont01 .box ul {
  display: flex;
  flex-direction: column;
  margin-top: 50px;
}
#forum02.forum2024-05 .cont01 .box ul li {
  font-size: 20px;
  font-weight: bold;
  list-style-type: none;
}
#forum02.forum2024-05 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
}
#forum02.forum2024-05 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2024-05 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2024-05 .cont02 {
  padding: 0;
}
#forum02.forum2024-05 .cont03 {
  padding: 120px 0;
}
#forum02.forum2024-05 .cont03 .cont h4 {
  font-size: 28px;
}
#forum02.forum2024-05 .cont03 .cont h4 .sub-ttl {
  font-size: 30px;
}
#forum02.forum2024-05 .cont03 .cont .text01 {
  font-size: 16px;
}
#forum02.forum2024-05 .cont03 .cont .text02 {
  padding: 50px 0 75px;
}
#forum02.forum2024-05 .cont03 .cont .text02::before {
  top: 20px;
}
#forum02.forum2024-05 .cont03 .cont:first-of-type h4 span {
  padding: 0;
}
#forum02.forum2024-05 .cont03 .schedule tr th {
  width: 330px;
  text-align: left;
  padding: 25px;
}
#forum02.forum2024-05 .img-flex {
  display: flex;
  justify-content: center;
}
#forum02.forum2024-05 .cont04 .text {
  padding-bottom: 50px;
  font-size: 40px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
#forum02.forum2024-05 .cont04 {
  padding-top: 120px;
}
#forum02.forum2024-05 .cont04 .text02 {
  font-size: 20px;
  line-height: 2.5;
  text-align: center;
  font-weight: bold;
  background: url(img/forum/forum_bg02.png) no-repeat center / contain;
}
#forum02.forum2024-05 .cont04 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
}


@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2024-05 .key h2 {
    text-align: center;
  }
  #forum02.forum2024-05 .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.forum2024-05 .img-flex {
      display: flex;
      justify-content: center;
      padding: 0 15px;
      margin-bottom: 100px;
  }
  #forum02.forum2024-05 .img-flex .img img {
      max-width: 100%;
  }
  #forum02.forum2024-05 .cont01 .box {
    width: 90%;
    padding: 0 20px;
  }
  #forum02.forum2024-05 .cont01 .box h4 {
    font-size: 32px;
  }
  #forum02.forum2024-05 .cont01 .box h4::after {
    width: 80px;
  }
  #forum02.forum2024-05 .cont01 .box ul li .sp {
    display: block;
  }
}

@media (max-width: 430px) {
  #forum02.forum2024-05 .key h2 {
    text-align: center;
  }
  #forum02.forum2024-05 .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.forum2024-05 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2024-05 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2024-05 .cont01 .text02 {
      text-align: center;
  }
  #forum02.forum2024-05 .cont01 ul {
    width: 350px;
  }
  #forum02.forum2024-05 .cont01 .box ul li {
    font-size: 16px;
    font-weight: bold;
    list-style-type: none;
  }
  #forum02.forum2024-05 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
  }
  #forum02.forum2024-05 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2024-05 .cont01 .box {
    width: 90%;
    padding: 0 20px;
    margin: 50px auto;
  }
  #forum02.forum2024-05 .cont01 .box h4 {
    font-size: 24px;
  }
  #forum02.forum2024-05 .cont01 .box h4 span {
    font-size: 14px;
  }
  #forum02.forum2024-05 .cont01 .box h4::after {
    width: 80px;
  }
  #forum02.forum2024-05 .dwnload a {
    width: 320px;
  }
  #forum02.forum2024-05 .cont03 {
      padding: 90px 0;
  }
  #forum02.forum2024-05 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2024-05 .cont03 .cont h4 {
      padding-top: 25px;
  }
  #forum02.forum2024-05 .cont03 .cont .ttl {
      padding-top: 0;
  }
  
  #forum02.forum2024-05 .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
  #forum02.forum2024-05 .img-flex {
      display: flex;
      justify-content: center;
      padding: 0 15px;
      margin-bottom: 50px;
  }
  #forum02.forum2024-05 .img-flex .img img {
      max-width: 100%;
  }
  #forum02.forum2024-05 .cont03 .schedule tr th {
      width: 100%;
  }
  #forum02.forum2024-05 .cont04 .text {
      padding: 0 0 35px;
      font-size: 24px;
      line-height: 1.5;
  }
  #forum02.forum2024-05 .cont04 .text02 {
      font-size: 14px;
      text-align: center;
      width: 90%;
      margin: auto;
      background: url(img/forum/forum_bg02.png) center center / contain no-repeat;
  }
  }

  /* 2024年6月フォーラム */
  #forum02.forum2024-06 .key {
    background: url(img/forum/forum2024-06_key_bg01.png) no-repeat center center, url(img/forum/forum2024-06_key_bg02.png) no-repeat center center/100% 650px;
  }
  #forum02.forum2024-06 .key h2 img {
    top: auto;
    transform: translateX(-50%);
    padding-top: 15px;
  }
  #forum02.forum2024-06 .cont01 {
    padding-bottom: 0;
  }
  #forum02.forum2024-06 .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }
  #forum02.forum2024-06 .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.forum2024-06 .cont03 .dwnload {
    margin-top: 0;
  }
  #forum02.forum2024-06 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.forum2024-06 .cont02 {
    padding: 0;
  }
  #forum02.forum2024-06 .cont03 {
    padding: 120px 0;
  }
  #forum02.forum2024-06 .cont03 h3:nth-of-type(2) {
    padding-top: 120px;
  }
  #forum02.forum2024-06 .cont03 h3 {
    padding: 120px 0 60px;
  }
  #forum02.forum2024-06 .cont03 table {
    padding-bottom: 55px;
  }
  #forum02.forum2024-06 .cont03 table tr td {
    vertical-align: middle;
  }
  #forum02.forum2024-06 .cont03 table tr .flex {
    display: flex;
    align-items: center;
    column-gap: 50px;
  }
  #forum02.forum2024-06 .cont03 table tr .flex p {
    font-size: 18px;
    font-weight: bold;
  }
  #forum02 .cont02 .cont:nth-of-type(2n-1)::before {
    display: none;
  }
  #forum02.forum2024-06 .cont03 .cont .ttl {
    font-size: 14px;
  }
  #forum02.forum2024-06 .cont03 .cont:nth-of-type(1) {
    margin-top: 65px;
  }
  #forum02.forum2024-06 .cont03 .cont h4 {
    font-size: 30px;
  }
  #forum02.forum2024-06 .cont03 .cont h4 .sub-ttl {
    display: block;
    font-size: 30px;
  }
  #forum02.forum2024-06 .cont03 .cont h4 span {
    display: inline;
    padding: 0;
    margin: 0;
    font-size: 20px;
  }
  #forum02.forum2024-06 .cont03 .cont .text01 {
    font-size: 16px;
    padding-bottom: 45px;
  }
  #forum02.forum2024-06 .cont03 .cont .text02 {
    padding: 60px 0 75px;
  }
  #forum02.forum2024-06 .cont03 .cont .text02::before {
    top: 20px;
  }
  #forum02.forum2024-06 .cont03 .schedule tr th {
    width: 330px;
    text-align: left;
    padding: 25px;
  }
  #forum02.forum2024-06 .img-flex {
    display: flex;
    justify-content: center;
  }
  #forum02 .cont04 .text {
    padding-bottom: 50px;
    font-size: 40px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
  }
  #forum02 .cont04 {
    padding-top: 120px;
  }
  #forum02 .cont04 .text02 {
    font-size: 20px;
    line-height: 2.5;
    text-align: center;
    font-weight: bold;
    background: url(img/forum/forum_bg02.png) no-repeat center / contain;
  }
  #forum02.forum2024-06 .cont04 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }

  
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.forum2024-06 .key {
      background: url(img/forum/forum2024-06_key_bg01.png) no-repeat center center/auto 550px , url(img/forum/forum2024-06_key_bg02.png) no-repeat center center/cover;
      padding: 15px 0;
    }
    #forum02.forum2024-06 .key h2 {
      text-align: center;
    }
    #forum02.forum2024-06 .key h2 img {
      transform: none;
      width: 95%;
      padding-top: 0;
    }
    #forum02.forum2024-06 .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
    }
    #forum02.forum2024-06 .img-flex .img img {
        max-width: 100%;
    }
    #forum02.forum2024-06 .cont03 {
      padding-bottom: 60px;
    }
    #forum02.forum2024-06 .cont03 h3 {
      padding: 0 0 60px;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.forum2024-06 .key {
      background: url(img/forum/forum2024-06_key_bg01.png) no-repeat center center/auto 330px, url(img/forum/forum2024-06_key_bg02.png) no-repeat center center/cover;
      padding: 10px 0;
    }
    #forum02.forum2024-06 .key h2 {
      text-align: center;
    }
    #forum02.forum2024-06 .key h2 img {
      transform: none;
      width: 95%;
      padding-top: 0;
    }
    #forum02.forum2024-06 .cont01 h3 {
      padding-bottom: 20px;
    }
    #forum02.forum2024-06 .cont01 .text {
      padding-bottom: 25px;
    }
    #forum02.forum2024-06 .cont01 .text02 {
        text-align: center;
    }
    #forum02.forum2024-06 .cont01 ul {
      width: 300px;
    }
    #forum02.forum2024-06 .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
    }
    #forum02.forum2024-06 .cont01 .img-flex .img img {
      max-width: 100%;
    }
    #forum02.forum2024-06 .dwnload a {
      width: 320px;
    }
    #forum02.forum2024-06 .cont03 {
        padding: 90px 0;
    }
    #forum02.forum2024-06 .cont03 .cont .text02::before {
      top: 30px;
    }
    #forum02.forum2024-06 .cont03 h3 {
      padding: 0 0 40px;
    }
    #forum02.forum2024-06 .cont03 h3:nth-of-type(2) {
      padding-top: 100px;
    }
    #forum02.forum2024-06 .cont03 table {
      padding-bottom: 45px;
    }
    #forum02.forum2024-06 .cont03 .cont h4 {
        padding-top: 0;
    }
    #forum02.forum2024-06 .cont03 .cont .ttl {
        padding-top: 0;
    }
    
    #forum02.forum2024-06 .cont03 .cont:last-of-type .text02 {
      padding-bottom: 0;
    }
    #forum02.forum2024-06 .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
        margin-bottom: 50px;
    }
    #forum02.forum2024-06 .img-flex .img img {
        max-width: 100%;
    }
    #forum02.forum2024-06 .cont03 .schedule tr th {
        width: 100%;
    }
    #forum02 .cont04 .text {
        padding: 0 0 35px;
        font-size: 24px;
        line-height: 1.5;
    }
    #forum02 .cont04 .text02 {
        font-size: 14px;
        text-align: center;
        width: 90%;
        margin: auto;
        background: url(img/forum/forum_bg02.png) center center / contain no-repeat;
    }
  }
   /* 2024年7月フォーラム */
   #forum02.forum2024-07 .key {
    background: url(img/forum/forum2024-07_key_bg.png) center center no-repeat;
  }
  #forum02.forum2024-07 .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }
  #forum02.forum2024-07 .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.forum2024-07 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.forum2024-07 .cont03 h3:nth-of-type(2) {
    padding-top: 120px;
  }
  #forum02.forum2024-07 .cont03 h3 {
    padding: 120px 0 60px;
  }
  #forum02.forum2024-07 .cont03 table {
    padding-bottom: 50px;
  }
  #forum02.forum2024-07 .cont03 table tr td {
    vertical-align: middle;
    line-height: 1.8;
  }
  #forum02.forum2024-07 .cont03 .dwnload {
    margin-top: 0;
  }
  #forum02.forum2024-07 .cont03 .cont h4 {
    font-size: 30px;
  }
  #forum02.forum2024-07 .cont03 .cont h4 span {
    display: inline;
    padding: 0;
    margin: 0;
    font-size: 20px;
  }
  #forum02.forum2024-07 .cont03 .cont h4 .sub-ttl {
    display: block;
    font-size: 14px;
  }
  #forum02.forum2024-07 .cont03 .cont .text01 {
    font-size: 16px;
    padding-bottom: 45px;
  }
  #forum02.forum2024-07 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 0;
  }
  #forum02.forum2024-07 .cont06 {
    margin-bottom: 120px;
  }
  #forum02.forum2024-07 .cont06 h3 {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    margin-bottom: 60px;
  }
  #forum02.forum2024-07 .cont06 .img {
    text-align: center;
  }
  #forum02.forum2024-07 .cont06 .img img {
    width: 60%;
    height: auto;
  }
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.forum2024-06 .key {
      background: url(img/forum/forum2024-07_key_bg.png)  no-repeat center center/cover;
      padding: 15px 0;
    }
    #forum02.forum2024-07 .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
    }
    #forum02.forum2024-07 .img-flex .img img {
        max-width: 100%;
    }
    #forum02.forum2024-07 .cont03 {
      padding-bottom: 60px;
    }
    #forum02.forum2024-07 .cont03 h3 {
      padding: 65px 0 60px;
    }
    #forum02.forum2024-07 .cont02 {
        padding: 0;
    }
    #forum02.forum2024-07 .cont06 .img img {
        width: 80%;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.forum2024-07 .key {
      background: url(img/forum/forum2024-07_key_bg.png) no-repeat center center/auto 210px;
      padding: 10px 0;
    }
    #forum02.forum2024-07 .cont01 .text02 {
        text-align: center;
    }
    #forum02.forum2024-07 .cont01 ul {
      width: 300px;
    }
    #forum02.forum2024-07 .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
    }
    #forum02.forum2024-07 .cont01 .img-flex .img img {
      max-width: 100%;
    }
    #forum02.forum2024-07 .dwnload a {
      width: 320px;
    }
    #forum02.forum2024-07 .cont03 h3 {
      padding: 50px 0 40px;
    }
    #forum02.forum2024-07 .cont03 h3:nth-of-type(2) {
      padding-top: 100px;
    }
    #forum02.forum2024-07 .cont03 table {
      padding-bottom: 45px;
    }
    #forum02.forum2024-07 .cont03 .cont h4 {
        font-size: 20px;
    }
    #forum02.forum2024-07 .cont03 .cont h4 span {
        font-size: 14px;
    }
    #forum02.forum2024-07 .cont03 .cont .ttl {
        font-size: 14px;
    }
    #forum02.forum2024-07 .cont02 {
        padding: 0;
    }
    #forum02 .cont02 .cont .text01 {
        margin-top: 10px;
    }
    #forum02.forum2024-07 .cont05 {
        margin: 0 auto 100px;
    }
    #forum02.forum2024-07 .cont06 h3 {
        font-size: 22px;
    }
    #forum02.forum2024-07 .cont06 .img img {
        width: 95%;
    }
  }
  /*プラスワンディッシュ運動 */
  #forum02.plus-one-dish .key {
    background: url(img/forum/plus-one-dish_key_bg.png) center center no-repeat;
  }
  #forum02.plus-one-dish .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
  }
  #forum02.plus-one-dish .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.plus-one-dish .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.plus-one-dish .cont03 h3:nth-of-type(2) {
    padding-top: 120px;
  }
  #forum02.plus-one-dish .cont03 h3 {
    padding: 120px 0 60px;
  }
  #forum02.plus-one-dish .cont03 table {
    padding-bottom: 50px;
  }
  #forum02.plus-one-dish .cont03 table tr td {
    vertical-align: middle;
    line-height: 1.8;
  }
  #forum02.forum2024-07 .cont03 .dwnload {
    margin-top: 0;
  }
  #forum02.forum2024-07 .cont03 .cont h4 {
    font-size: 30px;
  }
  #forum02.forum2024-07 .cont03 .cont h4 span {
    display: inline;
    padding: 0;
    margin: 0;
    font-size: 20px;
  }
  #forum02.forum2024-07 .cont03 .cont h4 .sub-ttl {
    display: block;
    font-size: 14px;
  }
  #forum02.forum2024-07 .cont03 .cont .text01 {
    font-size: 16px;
    padding-bottom: 45px;
  }
  #forum02.forum2024-07 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 0;
  }
  #forum02.forum2024-07 .cont06 {
    margin-bottom: 120px;
  }
  #forum02.forum2024-07 .cont06 h3 {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    margin-bottom: 60px;
  }
  #forum02.forum2024-07 .cont06 .img {
    text-align: center;
  }
  #forum02.forum2024-07 .cont06 .img img {
    width: 60%;
    height: auto;
  }
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.plus-one-dish .key {
      background: url(img/forum/plus-one-dish_key_bg.png)  no-repeat center center/cover;
      padding: 15px 0;
    }
    #forum02.plus-one-dish .img-flex {
        display: flex;
        justify-content: center;
        padding: 0 15px;
    }
    #forum02.plus-one-dish .img-flex .img img {
        max-width: 100%;
    }
    #forum02.plus-one-dish .cont03 {
      padding-bottom: 60px;
    }
    #forum02.plus-one-dish .cont03 h3 {
      padding: 65px 0 60px;
    }
    #forum02.forum2024-07 .cont02 {
        padding: 0;
    }
    #forum02.forum2024-07 .cont06 .img img {
        width: 80%;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.plus-one-dish .key {
      background: url(img/forum/plus-one-dish_key_bg.png) no-repeat center center/auto 210px;
      padding: 10px 0;
    }
    #forum02.plus-one-dish .cont01 .text02 {
        text-align: center;
    }
    #forum02.plus-one-dish .cont01 ul {
      width: 300px;
    }
    #forum02.plus-one-dish .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
    }
    #forum02.plus-one-dish .cont01 .img-flex .img img {
      max-width: 100%;
    }
    #forum02.plus-one-dish .dwnload a {
      width: 320px;
    }
    #forum02.plus-one-dish .cont03 h3 {
      padding: 50px 0 40px;
    }
    #forum02.plus-one-dish .cont03 h3:nth-of-type(2) {
      padding-top: 100px;
    }
    #forum02.plus-one-dish .cont03 table {
      padding-bottom: 45px;
    }
    #forum02.plus-one-dish .cont03 .cont h4 {
        font-size: 20px;
    }
    #forum02.forum2024-07 .cont03 .cont h4 span {
        font-size: 14px;
    }
   
  }

/* carbon カーボンクエストin愛知 */
#forum02.carbon .key {
  background: #2d893a url(img/forum/carbon_key_bg02.png) no-repeat center top/ 100% 410px;
}
#forum02.carbon .key h2 img {
  top: 33px;
  transform: translateX(-50%);
}

#forum02.carbon .cont01 {
  padding-bottom: 0;
}
#forum02.carbon .cont01 h3 {
  font-size: 34px;
  text-align: center;
  color: #000;
  font-weight: bold;
  line-height: 1.8;
}
#forum02.carbon .cont01 .box {
  width: 1200px;
  margin: 100px auto;
}
#forum02.carbon .cont01 .box ul {
  display: flex;
  flex-direction: column;
  margin-top: 50px;
}
#forum02.carbon .cont01 .box ul li {
  font-size: 20px;
  font-weight: bold;
  list-style-type: none;
}
#forum02.carbon .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
}
#forum02.carbon .dwnload {
  text-align: center;
  margin-top: 50px;
  font-size: 26px;
}
#forum02.carbon .dwnload a {
  display: inline-block;
  /* width: 550px; */
  line-height: 1;
  padding: 15px 25px;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.carbon .cont02 {
  padding: 0;
  margin: 150px auto 100px;
}
#forum02.carbon .cont02 h3 {
  position: relative;
  font-size: 34px;
}

#forum02.carbon .cont02 h3::before {
  position: absolute;
  content: "PUBLICATION EXAMPLE";
  display: block;
  top: -60px;
  left: 0;
  right: 0;
  margin: auto;
  font-weight: bold;
  color: #0099dd;
  font-size: 42px;
  line-height: 1;
}
#forum02 .cont02 h4 {
  font-size: 20px;
}
#forum02.carbon .cont02 h4::before {
  display: none;
}
#forum02 .cont02 h4 span {
  font-size: 16px;
}
#forum02.carbon .cont02 p {
  margin-top: 30px;
  line-height: 2;
  font-size: 18px;
}
#forum02.carbon .cont02 .cont:nth-of-type(2n) {
  padding: 19px 635px 0 20px;
}
#forum02.carbon .cont02 .cont:nth-of-type(2n-1)::before {
  display: none;
}
#forum02.carbon .cont03 {
  position: relative;
  height: 830px;
  background: #E5F3FC;
  margin: 50px auto;
  padding-top: 130px;
}
#forum02.carbon .cont03::before {
  position: absolute;
  display: block;
  content: "";
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 449px;
  background: url(img/forum/carbon_cont03_bg.png) repeat-x center bottom;
}
#forum02.carbon .cont03 .img {
  text-align: center;
}
#forum02.carbon .cont03 .text{
  font-size: 26px;
  text-align: center;
  line-height: 2;
  font-weight: bold;
  margin: 50px auto;
}

#forum02.carbon .img-flex {
  display: flex;
  justify-content: center;
}
#forum02.carbon .cont04 {
  margin: 150px auto 200px;
  padding: 0;
}
#forum02.carbon .cont04 h3 {
  font-size: 34px;
  line-height: 2;
  padding-bottom: 30px;
}
#forum02.carbon .cont04 h3::before {
  display: none;
}
#forum02.carbon .cont04 .text {
  padding: 15px 0;
  font-size: 20px;
  line-height: 2;
  font-weight: bold;
  text-align: center;
}
#forum02.carbon .cont04 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
}
#forum02.carbon .cont05 {
  margin: 50px auto 150px;
}
#forum02.carbon .cont05 h3 {
  position: relative;
  font-size: 34px;
  font-weight: bold;
  text-align: center;
  padding-top: 0;
  background: none;
}
#forum02.carbon .cont05 h3::before {
  position: absolute;
  content: "INFORMATION";
  top: -50px;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 42px;
  font-weight: bold;
  color: #0099dd;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.carbon .key h2 {
    text-align: center;
  }
  #forum02.carbon .key h2 img {
    transform: none;
    width: 95%;
  }
  #forum02.carbon .img-flex {
      display: flex;
      justify-content: center;
      padding: 0 15px;
      margin-bottom: 100px;
  }
  #forum02.carbon .img-flex .img img {
      max-width: 100%;
  }
  #forum02.carbon .cont01 .box {
    width: 90%;
    padding: 0 20px;
  }
  #forum02.carbon .cont01 .box h4 {
    font-size: 32px;
  }
  #forum02.carbon .cont01 .box h4::after {
    width: 80px;
  }
  #forum02.carbon .cont01 .box ul li .sp {
    display: block;
  }
}

@media (max-width: 430px) {
  #forum02.carbon .key {
    background: #2d893a url(img/forum/carbon_key_bg02.png) no-repeat center top/ 500px;
    padding: 10px;
  }
  #forum02.carbon .key h2 {
    text-align: center;
  }
  #forum02.carbon .key h2 img {
    transform: none;
    width: 90%;
  }
  #forum02.carbon .cont01 h3 {
    font-size: 20px;
    padding-bottom: 20px;
  }
  #forum02.carbon .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.carbon .cont01 .text02 {
      text-align: center;
  }
  #forum02.carbon .cont01 ul {
    width: 350px;
  }
  #forum02.carbon .cont01 .box ul li {
    font-size: 16px;
    font-weight: bold;
    list-style-type: none;
  }
  #forum02.carbon .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
  }
  #forum02.carbon .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.carbon .cont01 .box {
    width: 90%;
    padding: 0 20px;
    margin: 50px auto;
  }
  #forum02.carbon .cont01 .box h4 {
    font-size: 24px;
  }
  #forum02.carbon .cont01 .box h4 span {
    font-size: 14px;
  }
  #forum02.carbon .cont01 .box h4::after {
    width: 80px;
  }
  #forum02.carbon .dwnload a {
    width: 320px;
  }
  #forum02.carbon .cont02 {
    margin: 100px auto 30px;
  }
  #forum02.carbon .cont02 h3 {
    font-size: 22px;
  }
  #forum02.carbon .cont02 h3::before {
    font-size: 26px;
    top: -40px;
  }
  #forum02.carbon .cont02 .cont {
    padding: 310px 10px 60px;
  }
  #forum02.carbon .cont02 .cont:nth-of-type(2n) {
    padding: 320px 10px 70px;
  }
  #forum02.carbon .cont02 p {
    font-size: 14px;
    margin-top: 15px;
  }
  #forum02.carbon .cont03 {
     padding: 50px 0 30px;
     margin: 0;
  }
  #forum02.carbon .cont03::before {
  bottom: -30px;
  background: url(img/forum/carbon_cont03_bg.png) repeat-x center bottom/ 800px;
  }
  #forum02.carbon .cont03 .img {
    display: block;
    margin: 0 auto;
  }
  #forum02.carbon .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.carbon .cont03 .cont h4 {
      padding-top: 25px;
  }
  #forum02.carbon .cont03 .cont .ttl {
      padding-top: 0;
  }
  
  #forum02.carbon .cont03 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
  #forum02.carbon .img-flex {
      display: flex;
      justify-content: center;
      padding: 0 15px;
      margin-bottom: 50px;
  }
  #forum02.carbon .img-flex .img img {
      max-width: 100%;
  }
  #forum02.carbon .cont03 .schedule tr th {
      width: 100%;
  }
  #forum02.carbon .cont04 .text {
      padding: 0 0 35px;
      font-size: 24px;
      line-height: 1.5;
  }
  #forum02.carbon .cont04 .text02 {
      font-size: 14px;
      text-align: center;
      width: 90%;
      margin: auto;
      background: url(img/forum/forum_bg02.png) center center / contain no-repeat;
  }
  }

  /* gozoin 御蔵印 */
#forum02.gozoin .key {
  background: #c9a872;
}
#forum02.gozoin .key h2 img {
  top: 33px;
  transform: translateX(-50%);
}
#forum02.gozoin .cont01 {
  padding-bottom: 0;
}
#forum02.gozoin .cont01 h3 {
  font-size: 40px;
  text-align: center;
  color: #000;
  font-weight: bold;
  line-height: 1.6;
  padding-bottom: 80px;
}
#forum02.gozoin .cont01 h3 span:nth-of-type(1) {
  font-size: 30px;
  color: #0099dd;
  font-weight: bold;
}
#forum02.gozoin .cont01 h3 span:nth-of-type(2) {
  display: block;
  font-size: 20px;
  color: #0099dd;
  margin-top: 14px;
}
#forum02.gozoin .cont01 .text02 {
  font-size: 24px;
  margin-bottom: 35px;
  line-height: 1;
  font-weight: normal;
}
#forum02.gozoin .cont01 .text02 span {
  font-size: 18px;
  color: #0099dd;
  line-height: 2;
}
/* cont03 */
#forum02.gozoin .cont03 {
  position: relative;
  margin: 50px auto;
  padding-top: 130px;
}
#forum02.gozoin .cont03::before {
  position: absolute;
  display: block;
  content: "";
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 449px;
}
#forum02.gozoin .cont03 a {
  display: block;
  position: relative;
  text-decoration:underline;
  text-decoration-thickness: from-font;
  color: #0000ee;
  line-height: 1.2;
}
#forum02.gozoin .cont03 .img {
  text-align: center;
}
#forum02.gozoin .cont03 .text{
  font-size: 26px;
  text-align: center;
  line-height: 2;
  font-weight: bold;
  margin: 50px auto;
}
#forum02.gozoin .cont03 table {
  width: 1200px;
  max-width: 100%;
  padding-bottom: 90px;
  border-spacing: 1px;
}
#forum02.gozoin .cont03 table tr {
  height: auto;
}
#forum02.gozoin .cont03 table tr th:nth-of-type(1) {
  width: 100px;
}
#forum02.gozoin .cont03 table tr th:nth-of-type(2) {
  width: 300px;
}
#forum02.gozoin .cont03 table tr th:nth-of-type(3) {
  width: 620px;
}
#forum02.gozoin .cont03 table tr th:nth-of-type(4) {
  width: 178px;
}

#forum02.gozoin .cont03 table tr td {
  position: relative;
  background: #e1f2fa;
  padding: 32px 10px 32px 25px;
  font-size: 20px;
  font-weight: normal;
  line-height: 1.2;
  vertical-align: middle;
}
#forum02.gozoin .cont03 table tr td:nth-of-type(1) {
  padding-left: 10px;
  text-align: center;
}
#forum02.gozoin .cont03 table tr td:nth-of-type(3) {
  padding-right: 85px;
} 
#forum02.gozoin .cont03 table tr td:nth-of-type(4) {
  text-align: center;
  padding: 32px 10px;
}
/*
#forum02.gozoin .cont03 table tr td .link01 {
  padding-left: 37px;
}
#forum02.gozoin .cont03 table tr td .link01::after {
  position: absolute;
  content: url(img/forum/gozoin_cont03_icon01.png);
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 26px;
  height: 26px;
}
*/
#forum02.gozoin .cont03 table tr td .link02 {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  width: 59px;
  height: 16px;
  font-weight: normal;
}
#forum02.gozoin .cont03 table tr td .link02 a {
  font-size: 16px;
}
#forum02.gozoin .cont03 .cont {
  padding: 30px 20px 20px;
  background: #e1f2fa;
  border-top: 5px solid #1d9add;
  margin-bottom: 45px;
}
#forum02.gozoin .cont03 .cont .img {
  position: static;
  width: auto;
}
#forum02.gozoin .cont03 .cont .img::before {
  display: none;
}
#forum02.gozoin .cont03 .cont .flex {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  column-gap: 20px;
}
#forum02.gozoin .cont03 .cont .flex:nth-of-type(2) {
  column-gap: 10px;
}
#forum02.gozoin .cont03 .cont .flex .link03 {
  display: inline-block;
}
#forum02.gozoin .cont03 .cont .flex .ta {
  display: block;
  position: relative;
  top: -330px;
}
#forum02.gozoin .cont03 .cont .flex .box {
  width: 570px;
  height: 380px;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) {
  width: 550px;
  padding-top: 5px;
  box-sizing: border-box;
  height: auto;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 {
  position: relative;
  font-size: 24px;
  font-weight: normal;
  padding: 0 0 20px 15px;
  line-height: 1;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4::before {
  position: absolute;
  content: "";
  top: -3px;
  left: 0;
  width: 5px;
  height: 30px;
  background: #1d9add;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 span {
  display: inline-block;
  margin: 0;
  font-size: 14px;
  color: #1d9add;
  font-weight: normal;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 .space {
  display: inline;
  margin-right: 20px;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p {
  margin-bottom: 16px;
  line-height: 1.2;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p span {
  display: inline-block;
  color: #999;
  font-size: 14px;
}
#forum02.gozoin .cont03 .cont .flex:nth-of-type(2) .img {
  display: block;
  width: 380px;
  height: 250px;
  margin: 30px 0 10px;
}


@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.gozoin .key {
    background: #c9a872;
  }
  #forum02.gozoin .key h2 img {
    top: 33px;
    transform: translateX(0);
  }
  
  #forum02.gozoin .cont01 {
    padding-bottom: 0;
  }
  #forum02.gozoin .cont01 h3 {
    font-size: 32px;
    text-align: center;
    color: #000;
    font-weight: bold;
    line-height: 1.4;
    padding-bottom: 60px;
  }
  #forum02.gozoin .cont01 h3 span:nth-of-type(1) {
    font-size: 26px;
    color: #0099dd;
    font-weight: bold;
  }
  #forum02.gozoin .cont01 h3 span:nth-of-type(2) {
    display: block;
    font-size: 18px;
    color: #0099dd;
    margin-top: 7px;
  }
  #forum02.gozoin .cont01 .text02 {
    font-size: 20px;
    margin-bottom: 30px;
    line-height: 1;
    font-weight: normal;
  }
  #forum02.gozoin .cont01 .text02 span {
    font-size: 16px;
    color: #0099dd;
    line-height: 2;
  }
  #forum02.gozoin .cont03 {
    position: relative;
    margin: 50px auto;
    padding-top: 130px;
  }
  #forum02.gozoin .cont03::before {
    position: absolute;
    display: block;
    content: "";
    bottom: -50px;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 449px;
  }
  #forum02.gozoin .cont03 h3 {
    font-size: 30px;
    padding-bottom: 35px;
  }
  #forum02.gozoin .cont03 table {
    width: auto;
    max-width: 100%;
    margin: 0 20px;
  }
  #forum02.gozoin .cont03 table tr td {
    font-size: 14px;
    padding: 20px 10px 20px 20px;
  }
  #forum02.gozoin .cont03 table tr td .link01::after {
    top: -5px;
    transform: scale(0.8);
  }
  #forum02.gozoin .cont03 table tr td .link02 {
    right: 15px;
  }
  #forum02.gozoin .cont03 table tr td .link02 a {
    font-size: 14px;
  }
  #forum02.gozoin .cont03 .cont {
    width: auto;
    margin: 0 20px 50px;
  }
  #forum02.gozoin .cont03 .cont .flex .ta {
    display: block;
    position: relative;
    top: -300px;
  }
  #forum02.gozoin .cont03 .cont .flex .box {
    width: 330px;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) {
    padding: 5px 0 0 20px;
    width: calc(100% / 2);
    box-sizing: border-box;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 {
    position: relative;
    font-size: 20px;
    font-weight: normal;
    padding: 0 0 15px 15px;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4::before {
    position: absolute;
    content: "";
    top: 3px;
    left: 0;
    width: 5px;
    height: 25px;
    background: #1d9add;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 span {
    display: inline-block;
    font-size: 14px;
    color: #1d9add;
    font-weight: normal;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p {
    margin-bottom: 16px;
    line-height: 1.2;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p span {
    display: block;
    color: #999;
    font-size: 14px;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(2) {
    height: auto;
  }
  #forum02.gozoin .cont03 .cont .flex:nth-of-type(2) .img {
    display: block;
    width: calc(97% / 3);
    height: auto;
    margin-top: 25px;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) {
  padding: 5px 0;
  height: 100%;
  box-sizing: border-box;
  margin-right: 15px;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p {
  margin-bottom: 14px;
  line-height: 1.2;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p span {
  display: block;
  color: #999;
  font-size: 12px;
}
}

@media (max-width: 430px) {
  #forum02.gozoin .key h2 img {
    top: 33px;
    transform: translateX(0);
  }
  
  #forum02.gozoin .cont01 {
    padding-bottom: 0;
  }
  #forum02.gozoin .cont01 h3 {
    font-size: 20px;
    text-align: center;
    color: #000;
    font-weight: bold;
    line-height: 1.4;
    padding-bottom: 45px;
  }
  #forum02.gozoin .cont01 h3 span:nth-of-type(1) {
    font-size: 18px;
    color: #0099dd;
    font-weight: bold;
  }
  #forum02.gozoin .cont01 h3 span:nth-of-type(2) {
    display: block;
    font-size: 14px;
    color: #0099dd;
    margin-top: 3px;
  }
  #forum02.gozoin .cont01 .text02 {
    font-size: 16px;
    margin-bottom: 30px;
    line-height: 1;
    text-align: center;
    font-weight: normal;
    background: transparent;
  }
  #forum02.gozoin .cont01 .text02 span {
    font-size: 14px;
    color: #0099dd;
    line-height: 2;
  }
  #forum02.gozoin .cont03 {
    position: relative;
    margin: 50px auto;
    padding-top: 80px;
    width: auto;
  }
  #forum02.gozoin .cont03::before {
    position: absolute;
    display: block;
    content: "";
    bottom: -50px;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 449px;
  }
  #forum02.gozoin .cont03 .cont .img {
    transform: translateX(0);
  }
  #forum02 .cont03 h3 {
    font-size: 22px;
    padding-bottom: 40px;
  }
  #forum02.gozoin .cont03 .table_wra {
    overflow-x: scroll;
    margin-bottom: 50px;
    }
    ::-webkit-scrollbar {
     height: 3px;
    }
    ::-webkit-scrollbar-track {
     background-color: rgba(133, 133, 133, 0.1);
    }
    ::-webkit-scrollbar-thumb {
     background: #999;
    }
  #forum02.gozoin .cont03 table {
    width: auto;
    max-width: 100%;
    margin: 0 15px;
    padding-bottom: 50px;
  }
 #forum02.gozoin .cont03 table:nth-of-type(1) tr {
    flex-direction: row;
    margin-top: 1px;
  }
  #forum02.gozoin .cont03 table:nth-of-type(1) tr th {
    font-size: 14px;
    margin-right: 1px;
    text-align: center;
    padding: 15px;
  }
  #forum02.gozoin .cont03 table tr th:nth-of-type(1) {
    width: 90px;
  }
  #forum02.gozoin .cont03 table tr th:nth-of-type(4) {
    width: 145px;
  }
  
  #forum02.gozoin .cont03 table tr td {
    display: grid;
    align-items: center;
    font-size: 14px;
    padding: 15px;
  }
  #forum02.gozoin .cont03 table:nth-of-type(1) tr td {
    margin-right: 1px;
  }
  #forum02.gozoin .cont03 table:nth-of-type(1) tr td:nth-of-type(1) {
    width: 90px;
  }
  #forum02.gozoin .cont03 table:nth-of-type(1) tr td:nth-of-type(2) {
    width: 300px;
  }
  #forum02.gozoin .cont03 table:nth-of-type(1) tr td:nth-of-type(3) {
    width: 620px;
    padding-right: 75px;
  } 
  #forum02.gozoin .cont03 table:nth-of-type(1) tr td:nth-of-type(4) {
    width: 145px;
    padding: 10px;
  }
  #forum02.gozoin .cont03 table tr td .link01::after {
    transform: scale(0.7);
  }
  #forum02.gozoin .cont03 table tr td .link02 a {
    font-size: 14px;
  }
  #forum02.gozoin .cont03 table tr td .link02 {
    right: 10px;
  }
  #forum02.gozoin .cont03 .cont {
    width: auto;
    margin: 0 20px 30px;
    padding: 10px 20px 60px;
  }
  #forum02.gozoin .cont03 .cont .flex {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    row-gap: 20px;
  }
  #forum02.gozoin .cont03 .cont .flex .ta {
    display: block;
    position: relative;
    top: -100px;
  }
  #forum02.gozoin .cont03 .cont .flex .box {
    width: 100%;
    height: 230px;
  }
  
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) {
    padding: 5px 0 0 20px;
    width: calc(100% / 2);
    box-sizing: border-box;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 {
    position: relative;
    font-size: 20px;
    font-weight: normal;
    padding: 0 0 15px 15px;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4::before {
    position: absolute;
    content: "";
    top: -3px;
    left: 0;
    width: 5px;
    height: 25px;
    background: #1d9add;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) h4 span {
    display: inline-block;
    font-size: 14px;
    color: #1d9add;
    font-weight: normal;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p {
    margin-bottom: 16px;
    line-height: 1.2;
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p span {
    display: block;
    color: #999;
    font-size: 14px;
  }
  #forum02.gozoin .cont03 .cont .flex:nth-of-type(2) .img {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
    transform: translateX(0);
  }
  #forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) {
  padding: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p {
  font-size: 14px;
  margin-bottom: 14px;
  line-height: 1.2;
}
#forum02.gozoin .cont03 .cont .flex .box:nth-of-type(1) p span {
  display: block;
  color: #999;
  font-size: 12px;
  }
}

/* 2024年9月フォーラム */
#forum02.forum2024-09 .key {
    background: url(img/forum/forum2024-09_key_bg.png) no-repeat center / 100%;
    width: 1800px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2024-09 .cont01 .img-flex {
    margin-top: 100px;
    display: flex;
    justify-content: center;
    gap: 0 20px;
  }
  #forum02.forum2024-09 .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
  }
  #forum02.forum2024-09 .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
  }
  #forum02.forum2024-09 .cont03 table {
    padding: 0 0 100px;
  }
  #forum02.forum2024-09 .cont03 p.ttl {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    margin-bottom: 100px;
    margin-top: 70px;
    padding-bottom: 25px;
    position: relative;
  }
  #forum02.forum2024-09 .cont03 p.ttl::before {
    content: "";
    width: 30px;
    height: 3px;
    background: #3ec4ff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2024-09 .cont03 .cont .text01 {
    font-size: 20px;
    font-weight: normal;
  }
  #forum02.forum2024-09 .cont03 .cont .text02 {
    padding: 60px 0 75px;
  }
  #forum02.forum2024-09 .cont03 .cont .text02::before {
    top: 30px;
  }
  #forum02.forum2024-09 .cont02 h3 {
    font-size: 34px;
    line-height: 50px;
  }
  #forum02.forum2024-09 .cont03 .cont h4 {
    font-size: 26px;
    line-height: 0.6;
  }
  #forum02.forum2024-09 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 30px;
  }
  #forum02.forum2024-09 .cont06 {
    margin-bottom: 120px;
  }
  #forum02.forum2024-09 .cont06 h3 {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    margin-bottom: 60px;
  }
  #forum02.forum2024-09 .cont06 .img {
    text-align: center;
  }
  #forum02.forum2024-09 .cont06 .img img {
    width: 60%;
    height: auto;
  }
  
  @media screen and (min-width: 431px) and (max-width: 768px) {
    #forum02.forum2023-09 .key {
      background: url(img/forum/forum2024-09_key_bg.png) no-repeat center / 100% 100%;
      width: auto;
    }
    #forum02.forum2024-09 .cont01 .img-flex {
      gap: 0;
      justify-content: space-between;
      padding: 0 20px;
    }
    #forum02.forum2024-09 .cont01 .img-flex .img {
      width: 49%;
    }
    #forum02.forum2024-09 .cont01 .img-flex .img img {
      max-width: 100%;
    }
  
    #forum02.forum2024-09 .cont03 p.ttl {
      font-size: 28px;
      margin-bottom: 70px;
    }
  }
  
  @media (max-width: 430px) {
    #forum02.forum2024-09 .key {
        background: url(img/forum/forum2024-09_key_bg.png) no-repeat center center / auto 255px;
        padding: 10px 0;
        width: auto;
    }
    #forum02.forum2024-09 .cont01 h3 {
      padding-bottom: 20px;
    }
    #forum02.forum2024-09 .cont01 .text {
      padding-bottom: 25px;
    }
    #forum02.forum2024-09 .cont01 .text02 {
      text-align: center;
      width: 92%;
    }
    #forum02.forum2024-09 .cont01 .img-flex {
      margin-top: 70px;
      padding: 0 15px;
      flex-direction: column;
      gap: 10px 0;
    }
    #forum02.forum2024-09 .cont01 .img-flex .img img {
      max-width: 100%;
    }
    #forum02.forum2024-09 .cont01 .dwnload a {
      width: 320px;
    }
    #forum02.forum2024-09 .cont03 table {
      padding: 0 0 60px;
    }
    #forum02.forum2024-09 .cont03 .cont {
        padding: 335px 15px 0;
    }
    #forum02.forum2024-09 .cont03 .cont .text01 {
      font-size: 14px;
      margin-top: 38px;
    }
    #forum02.forum2024-09 .cont03 .cont h4 {
        font-size: 20px;
    }
    #forum02.forum2024-09 .cont03 p.ttl {
      font-size: 24px;
      line-height: 38px;
      margin-bottom: 50px;
      margin-top: 0;
    }
    #forum02.forum2024-09 .cont02 {
        padding: 0;
    }
    #forum02.forum2024-09 .cont02 h3 {
      font-size: 24px;
    }
    #forum02.forum2024-09 .cont02 .cont:nth-of-type(n + 2) {
        margin-bottom: 60px;
    }
    #forum02.forum2024-09 .cont06 {
        margin-bottom: 70px;
    }
    #forum02.forum2024-09 .cont06 h3 {
      font-size: 24px;
      font-weight: bold;
      text-align: center;
      margin-bottom: 50px;
    }
    #forum02.forum2024-09 .cont06 .img {
        text-align: center;
    }
    #forum02.forum2024-09 .cont06 .img img {
      width: 90%;
      height: auto;
    }
  }

/* 2024年11月フォーラム */
#forum02.forum2024-11 .key {
  background: url(img/forum/forum2024-11_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2024-11 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2024-11 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2024-11 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2024-11 .cont03 table {
  padding: 0 0 100px;
}
#forum02.forum2024-11 .cont03 table:nth-of-type(1) {
  padding: 0;
}
#forum02 .cont03 table tr td {
  line-height: 2.2;
}
#forum02 .cont03 table tr td span {
  font-size: 16px;
}
#forum02.forum2024-11 .cont03 p.ttl {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 100px;
  margin-top: 70px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2024-11 .cont03 p.ttl::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2024-11 .cont03 .cont .text01 {
  font-size: 20px;
  font-weight: normal;
}
#forum02.forum2024-11 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2024-11 .cont03 .cont .text02::before {
  top: 30px;
}
#forum02.forum2024-11 .cont02 h3 {
  font-size: 34px;
  line-height: 50px;
}
#forum02.forum2024-11 .cont03 .cont h4 {
  font-size: 26px;
  line-height: 1.4;
}
#forum02.forum2024-11 .cont03 .cont h4 span {
  display: inline;
}
#forum02.forum2024-11 .cont03 .dwnload {
  text-align: center;
  margin: 40px 0 100px;
}
#forum02.forum2024-11 .cont03 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2024-11 .cont02 .cont:nth-of-type(n + 2) {
  margin-top: 30px;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2024-11 .key {
    background: url(img/forum/forum2024-11_key_bg.png) no-repeat center / 100% 100%;
    width: auto;
  }
  #forum02.forum2024-11 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2024-11 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2024-11 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2024-11 .cont03 p.ttl {
    font-size: 34px;
    margin-bottom: 70px;
  }
  #forum02.forum2024-11 .cont03 .cont {
    min-height: 260px;
  }
  #forum02.forum2024-11 .cont03 .cont:nth-of-type(2n) {
    padding: 10px 47% 0 15px;
  }
  #forum02.forum2024-11 .cont02 {
    padding: 0;
  }
  #forum02.forum2024-11 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2024-11 .key {
      background: url(img/forum/forum2024-11_key_bg.png) no-repeat center center / auto 255px;
      padding: 10px 0;
      width: auto;
  }
  #forum02.forum2024-11 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2024-11 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2024-11 .cont01 .text span {
    font-size: 12px;
  }
  #forum02.forum2024-11 .cont01 .text02 {
    text-align: center;
    width: 92%;
  }
  #forum02.forum2024-11 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2024-11 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2024-11 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2024-11 .cont03 table {
    padding: 0 0 60px;
  }
  #forum02.forum2024-11 .cont03 table tr td span {
    font-size: 15px;
  }
  #forum02.forum2024-11 .cont03 .cont {
    padding: 310px 15px 0;
  }
  #forum02.forum2024-11 .cont03 .cont .text01 {
    font-size: 14px;
    margin-top: 38px;
  }
  #forum02.forum2024-11 .cont03 .cont h4 {
      font-size: 20px;
    }
  #forum02.forum2024-11 .cont03 p.ttl {
    font-size: 24px;
    line-height: 38px;
    margin-bottom: 50px;
    margin-top: 0;
  }
  #forum02.forum2024-11 .cont03 .dwnload a {
    width: 320px;
  }
  #forum02.forum2024-11 .cont02 .cont:nth-of-type(n + 2) {
    margin-top: 50px;
  }
  
}

/* 2025年2月フォーラム */
#forum02.forum2025-02 .key {
  background: url(img/forum/forum2025-02-key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-02 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2025-02 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2025-02 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-02 .cont02 h4 {
  font-size: 30px;
  line-height: 1;
}
#forum02.forum2025-02 .cont02 .cont .img {
  position: absolute;
  top: 0;
  left: 30px;
}
#forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 30px;
}
#forum02.forum2025-02 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum02.forum2025-02 .cont02 .cont .img img {
  max-width: 100%;
}
#forum02.forum2025-02 .cont03 .cont h4 {
  font-size: 28px;
  line-height: 1;
}
#forum02.forum2025-02 .cont03 .cont h4 span {
  display: block;
  padding: 0;
  margin-bottom: 10px;
  font-size: 14px;
}
#forum02.forum2025-02 .cont03 .cont h4 .span01 {
  display: inline-block;
  font-size: 18px;
  margin: 0;
}
#forum02.forum2025-02 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2025-02 .cont03 .cont .text02::before {
  top: 30px;
}
#forum02 .cont03 h3::before {
  display: none;
}
#forum02.forum2025-02 .cont03 table tbody tr td a {
    display: block;
    font-weight: bold;
    text-decoration: underline;
  }
#forum02.forum2025-02 .cont05 h3 {
  padding-bottom: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-02 .key {
    background: url(img/forum/forum2025-02-key_bg.png) no-repeat center / 100% 100%;
    padding: 10px 0;
    width: auto;
  }
  #forum02.forum2025-02 .cont01 .img-flex {
    gap: 0;
    justify-content: center;
    padding: 0 20px;
  }
  #forum02.forum2025-02 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2025-02 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-02 .cont02 h4 {
    font-size: 24px;
  }  
  #forum02.forum2025-02 .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum02.forum2025-02 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-02 .cont02 .cont .img img {
    height: auto;
  }
  #forum02.forum2025-02 .cont03 {
    padding: 0;
  }
  #forum02.forum2025-02 .cont03 .cont:last-of-type {
    min-height: 320px;
  }
  #forum02.forum2025-02 .cont03 .cont h4 {
    font-size: 20px;
  }
  #forum02.forum2025-02 .cont03 .cont h4 .span01 {
    margin-top: 5px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2025-02 .key {
    background: url(img/forum/forum2025-02-key_bg.png) no-repeat center center / auto 255px;
    padding: 10px 0;
    width: auto;
  }
  #forum02.forum2025-02 .cont01 h3 {
    padding-bottom: 20px;
  }
  #forum02.forum2025-02 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2025-02 .cont01 .video-box iframe {
    width: 100%;
}
  #forum02.forum2025-02 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
  }
  #forum02.forum2025-02 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-02 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2025-02 .cont02 h4 {
    font-size: 20px;
  }
  #forum02.forum2025-02 .cont02 .cont .text01 {
    margin-top: 45px;
  }
  #forum02.forum2025-02 .cont02 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.forum2025-02 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-02 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-02 .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.forum2025-02 .cont03 {
    padding: 0 0 40px;
  }
  #forum02.forum2025-02 .cont03 .cont h4 {
    font-size: 18px;
  }
  #forum02.forum2025-02 .cont03 .cont h4 .span01 {
    margin-top: 10px;
  }
}

/* 2025年3月フォーラム */
#forum02.forum2025-03 .key {
  background: url(img/forum/forum2025-03_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-03 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2025-03 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2025-03 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-03 .cont03 table {
  padding: 0 0 100px;
}
#forum02 .cont03 table tr td {
  line-height: 2.2;
}
#forum02 .cont03 table tr td span {
  font-size: 16px;
}
#forum02.forum2025-03 .cont03 p.ttl {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-top: 70px;
  padding-bottom: 60px;
  position: relative;
}
#forum02.forum2025-03 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2025-03 .cont03 .cont .text02::before {
  top: 30px;
}
#forum02.forum2025-03 .cont02 h3 {
  font-size: 34px;
  line-height: 50px;
}
#forum02.forum2025-03 .cont02 h4 {
  font-size: 30px
}
#forum02.forum2025-03 .cont03 .cont h4 {
  font-size: 26px;
  line-height: 1.4;
}
#forum02.forum2025-03 .cont06 h3 {
  text-align: center;
  font-size: 32px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2025-03 .cont06 h3::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-03 .cont06 .img {
  text-align: center;
}
#forum02.forum2025-03 .cont06 .img img {
  width: 70%;
  height: auto;
}
#forum02.forum2025-03 .cont07 {
  margin-top: 120px;
}
#forum02.forum2025-03 .cont07 .title {
  padding-bottom: 50px;
  font-size: 40px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
#forum02.forum2025-03 .cont07 .img {
  text-align: center;
}
#forum02.forum2025-03 .cont07 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2025-03 .cont07 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-03 .cont08 {
  margin-top: 130px;
}
#forum02.forum2025-03 .cont08 h3 {
  text-align: center;
  font-size: 34px;
  line-height: 50px;
  font-weight: bold;
  padding: 0 0 50px;
}
#forum02.forum2025-03 .cont08 .cont {
  width: 1200px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  padding: 20px 0 0 630px;
}
#forum02.forum2025-03 .cont08 h4 {
  position: relative;
  font-size: 30px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02.forum2025-03 .cont08 h4 span {
  font-size: 16px;
}
#forum02.forum2025-03 .cont08 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
  padding-right: 20px;
}
#forum02.forum2025-03 .cont08 .cont .img {
  position: absolute;
  top: 0;
  left: 20px;
  box-shadow: 0 0 20px rgb(0 0 0 / 10%);
}
#forum02.forum2025-03 .cont09 {
  padding: 120px 0
}
#forum02.forum2025-03 .cont09 h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding: 0 0 60px;
}
#forum02.forum2025-03 .cont09 table {
  width: calc(100% - 30px);
  max-width: 1170px;
  margin: auto;
  border-collapse: separate;
  border-spacing: 3px;
  padding: 0;
}
#forum02.forum2025-03 .cont09 table tr th {
  width: 200px;
  text-align: center;
  padding: 32px 0;
  background: #1d9add;
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  vertical-align: middle;
}
#forum02.forum2025-03 .cont09 table tr td {
  padding: 25px 35px;
  background: #e1f2fa;
  font-size: 18px;
  font-weight: bold;
  line-height: 2.2;
}
#forum02.forum2025-03 .cont09 .dwnload {
  text-align: center;
  margin: 30px 0 120px;
}
#forum02.forum2025-03 .cont09 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
}
#forum02.forum2025-03 .cont09 .dwnload-flex {
  display: flex;
  justify-content: center;
  gap: 20px;
}
#forum02.forum2025-03 .cont09 .dwnload-flex a {
  font-size: 20px;
  line-height: 0.8;
}
#forum02.forum2025-03 .cont09 .dwnload:nth-of-type(1) a {
  background: #004299;
}
#forum02.forum2025-03 .cont09 .dwnload:nth-of-type(2) a {
  background: #0099dd;
}
#forum02.forum2025-03 .cont09 .dwnload-flex a span {
  display: block;
  font-size: 16px;
  font-weight: bold;
}
#forum02.forum2025-03 .cont09 .cont {
  width: 1200px;
  min-height: 460px;
  margin: auto;
  position: relative;
  padding: 10px 0 0 605px;
  box-sizing: border-box;
}
#forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 20px;
}
#forum02.forum2025-03 .cont09 .cont:last-of-type {
  min-height: 400px;
}
#forum02.forum2025-03 .cont09 .cont h4 {
  font-size: 26px;
  line-height: 1.4;
  font-weight: bold;
}
#forum02.forum2025-03 .cont09 .cont h4 span {
  display: block;
  font-size: 16px;
}
#forum02.forum2025-03 .cont09 .cont .text02 {
  font-size: 16px;
  line-height: 2;
  padding: 60px 0 75px;
  position: relative;
}
#forum02.forum2025-03 .cont09 .cont .text02::before {
  position: absolute;
  top: 30px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02.forum2025-03 .cont09 .cont .img {
  position: absolute;
  top: 0;
  left: 30px;
}
#forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 30px;
}
#forum02.forum2025-03 .cont09 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum02.forum2025-03 .cont09 .cont .img img {
  max-width: 100%;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-03 .key {
    background: url(img/forum/forum2025-03_key_bg.png) no-repeat center / 100% 100%;
    width: auto;
  }
  #forum02.forum2025-03 .cont01 {
    padding-bottom: 120px;
  }
  #forum02.forum2025-03 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2025-03 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2025-03 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-03 .cont03 {
    padding-bottom: 0;
  }
  #forum02.forum2025-03 .cont03 p.ttl {
    margin-top: 0;
  }
  #forum02.forum2025-03 .cont03 table {
    padding-bottom: 120px;
  }
  #forum02.forum2025-03 .cont03 .cont:nth-of-type(2n) {
    padding: 10px 47% 0 15px;
  }
  #forum02.forum2025-03 .cont02 {
    padding-bottom: 120px;
  }
  #forum02.forum2025-03 .cont02 .cont {
      padding: 380px 140px 0;
  }
  #forum02.forum2025-03 .cont02 .cont .img {
    text-align: center;
    width: 100%;
    box-shadow: none;
  }
  #forum02.forum2025-03 .cont07 .title {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    margin-top: 70px;
    padding-bottom: 60px;
  }
  #forum02.forum2025-03 .cont08 .cont {
      padding: 380px 140px 120px;
      width: 100%;
  }
  #forum02.forum2025-03 .cont08 .cont .img {
    text-align: center;
    width: 100%;
    box-shadow: none;
  }
  #forum02.forum2025-03 .cont09 {
    padding: 0;
  }
  #forum02.forum2025-03 .cont09 .dwnload-flex {
    padding: 0 20px;
  }
  #forum02.forum2025-03 .cont09 .dwnload a {
    width: 350px;
  }
  #forum02.forum2025-03 .cont09 .cont {
  width: 100%;
  padding: 10px 15px 0 47%;
  min-height: 210px;
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) {
    padding: 10px 47% 0 15px;
  }
  #forum02.forum2025-03 .cont09 .cont h4 {
    font-size: 16px;
  }
  #forum02.forum2025-03 .cont09 .cont h4 span {
    font-size: 16px;
    margin: 0;
  }
  #forum02.forum2025-03 .cont09 .cont .text01 {
    font-size: 22px;
  }
  #forum02.forum2025-03 .cont09 .cont .text02 {
    font-size: 14px;
    padding: 45px 0 75px;
  }
  #forum02.forum2025-03 .cont09 .cont .text02::before {
    top: 22px;
    width: 100px;
  }
  #forum02.forum2025-03 .cont09 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img {
    right: 20px;
  }
  #forum02.forum2025-03 .cont09 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-03 .cont09 .cont .img img {
    height: auto;
  }
}

@media (max-width: 430px) {
  #forum02.forum2025-03 .key {
      background: url(img/forum/forum2025-03_key_bg.png) no-repeat center center / auto 255px;
      padding: 10px 0;
      width: auto;
  }
  #forum02.forum2025-03 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2025-03 .cont01 .text02 {
    text-align: center;
    width: 92%;
  }
  #forum02.forum2025-03 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2025-03 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-03 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2025-03 .cont03 {
    padding-bottom: 25px;
  }
  #forum02.forum2025-03 .cont03 table {
    padding: 0 0 100px;  
  }
  #forum02.forum2025-03 .cont03 .cont {
    padding: 310px 15px 0;
  }
  #forum02.forum2025-03 .cont03 .cont h4 {
      font-size: 20px;
    }
  #forum02.forum2025-03 .cont03 p.ttl {
    font-size: 24px;
    line-height: 38px;
    margin-bottom: 50px;
    margin-top: 0;
    padding-bottom: 0;
  }
  #forum02.forum2025-03 .cont02 h3 {
    font-size: 22px;
    line-height: 30px;
  }
  #forum02.forum2025-03 .cont02 h3::before {
    font-size: 35px;
  }
  #forum02.forum2025-03 .cont02 .cont {
    padding: 290px 20px 0;
  }
  #forum02.forum2025-03 .cont02 .cont .text01 {
    margin-top: 50px;
  }
  #forum02.forum2025-03 .cont06 h3 {
    font-size: 24px;
  }
  #forum02.forum2025-03 .cont06 .img img {
    width: 95%;
  }
  #forum02.forum2025-03 .cont07 .title {
    padding: 0 0 35px;
    font-size: 24px;
    line-height: 1.5;
    padding-bottom: 25px;
  }
  #forum02.forum2025-03 .cont07 .img {
    padding: 0 15px;
  }
  #forum02.forum2025-03 .cont07 .img img {
    max-width: 100%;
  }
  #forum02.forum2025-03 .cont07 .dwnload a {
    width: 320px;
  }
  #forum02.forum2025-03 .cont08 {
    margin-top: 100px;
  }
  #forum02.forum2025-03 .cont08 h3 {
    font-size: 22px;
    line-height: 30px;
  }
  #forum02.forum2025-03 .cont08 .cont {
    padding: 320px 10px 70px;
    width: 100%;
  }
  #forum02.forum2025-03 .cont08 .cont:nth-of-type(2n) {
    padding: 320px 10px 70px;
  }
  #forum02.forum2025-03 .cont08 .cont:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum02.forum2025-03 .cont08 h4 {
    font-size: 24px;
  }
  #forum02.forum2025-03 .cont08 h4::before {
    width: 100px;
    bottom: -23px;
  }
  #forum02.forum2025-03 .cont08 .cont .text01 {
    margin-top: 45px;
    padding-right: 0;
  }
  #forum02.forum2025-03 .cont08 .cont .img {
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2025-03 .cont08 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2025-03 .cont08 .cont .img img {
    width: auto;
    max-width: 400px;
    height: auto;
  }
  #forum02.forum2025-03 .cont09 {
    padding: 30px 0;
    margin-bottom: 60px;
  }
  #forum02.forum2025-03 .cont09 h3 {
    font-size: 22px;
    padding-bottom: 40px;
  }
  #forum02.forum2025-03 .cont09 table {
    padding: 0 0 30px; 
  }
  #forum02.forum2025-03 .cont09 table tr {
    display: flex;
    flex-direction: column;
  }
  #forum02.forum2025-03 .cont09 table tr:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum02.forum2025-03 .cont09 table tr th,
  #forum02.forum2025-03 .cont09 table tr td {
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    padding: 20px;
  }
  #forum02.forum2025-03 .cont09 .cont {
    width: 100%;
    padding: 300px 15px 0;
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) {
    padding: 300px 15px 0;
  }
  #forum02.forum2025-03 .cont09 .cont h4 {
    font-size: 16px;
  }
  #forum02.forum2025-03 .cont09 .cont h4 span {
    margin: 0;
    font-size: 14px;
  }
  #forum02.forum2025-03 .cont09 .cont .text01 {
    font-size: 20px;
  }
  #forum02.forum2025-03 .cont09 .cont .text02 {
    font-size: 14px;
    line-height: 2;
    padding: 45px 0 75px;
    position: relative;
    font-weight: bold;
  }
  #forum02.forum2025-03 .cont09 .cont:last-of-type .text02 {
    padding-bottom: 0;
  }
  #forum02.forum2025-03 .cont09 .cont .text02::before {
    width: 100px;
    top: 23px;
  }
  #forum02.forum2025-03 .cont09 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.forum2025-03 .cont09 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-03 .cont09 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-03 .cont09 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.forum2025-03 .cont09 .dwnload-flex {
    flex-direction: column;
    margin-bottom: 100px;
  }
  #forum02.forum2025-03 .cont09 .dwnload {
    margin: 0;
  }
  #forum02.forum2025-03 .cont09 .dwnload-flex a {
    width: 320px;
    font-size: 18px;
  }
  #forum02.forum2025-03 .cont09 .dwnload-flex a span {
    font-size: 15px;
  }
}

/* 2025年 企業塾 */
#forum02.kigyojyuku .key {
  background: url(img/forum/kigyojyuku_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.kigyojyuku .key h2 img {
  transform: translate(-50%, -53%);
}
#forum02.kigyojyuku .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.kigyojyuku .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.kigyojyuku .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.kigyojyuku .cont02 h4 {
  font-size: 30px;
  line-height: 1;
}
#forum02.kigyojyuku .cont02 .cont:nth-of-type(2n) .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
}
#forum02 .cont02 .cont:nth-of-type(n + 2) {
  margin: auto;
}
#forum02.kigyojyuku .cont03 .cont h4 {
  font-size: 28px;
  line-height: 0.7;
}
#forum02.kigyojyuku .cont03 .cont h4 span {
  display: block;
  padding: 0;
  margin-bottom: 10px;
  font-size: 16px;
}
#forum02.kigyojyuku .cont03 .cont .text01 {
  font-size: 16px;
}
#forum02.kigyojyuku .cont03 table tbody tr td span {
  font-size: 22px;
  padding-bottom: 0;
}
#forum02.kigyojyuku .cont03 table tbody tr td span:nth-last-of-type(1),
#forum02.kigyojyuku .cont03 table tbody tr td span:nth-last-of-type(2) {
  margin-top: 15px;
}
#forum02.kigyojyuku .cont03 .button {
  text-align: center;
  margin-bottom: 120px;
}
#forum02.kigyojyuku .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.kigyojyuku .cont05 h3 {
  padding-bottom: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.kigyojyuku .key {
    background: url(img/forum/kigyojyuku_key_bg.png) no-repeat center / 100% 100%;
    padding: 15px 15px 40px;
    width: auto;
  }
  #forum02.kigyojyuku .key h2 img {
    transform: none;
  }
  #forum02.kigyojyuku .cont01 .img-flex {
    gap: 0;
    justify-content: center;
    padding: 0 20px;
  }
  #forum02.kigyojyuku .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.kigyojyuku .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.kigyojyuku .cont02 {
    padding: 0 0 30px;
  }
  #forum02.kigyojyuku .cont02 h4 {
    font-size: 24px;
  }  
  #forum02.kigyojyuku .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.kigyojyuku .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
    left: auto;
  }
  #forum02.kigyojyuku .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.kigyojyuku .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.kigyojyuku .cont03 .cont h4 {
    font-size: 24px;
  }
  #forum02.kigyojyuku .cont03 .cont .text01 {
    font-size: 14px;
    margin-bottom: 75px;
  }
  #forum02.kigyojyuku .cont03 .cont h4 span {
    line-height: 1.3;
  }
}

@media (max-width: 430px) {
  #forum02.kigyojyuku .key {
    background: url(img/forum/kigyojyuku_key_bg.png) no-repeat center center / auto 255px;
    padding: 10px 0 20px;
    width: auto;
  }
  #forum02.kigyojyuku .key h2 img {
    transform: none;
  }
  #forum02.kigyojyuku .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.kigyojyuku .cont01 .text02 {
    text-align: center;
  }
  #forum02.kigyojyuku .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
  }
  #forum02.kigyojyuku .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.kigyojyuku .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.kigyojyuku .cont02 h4 {
    font-size: 20px;
  }
  #forum02.kigyojyuku .cont02 .cont .text01 {
    margin: 45px 0 75px;
  }
  #forum02.kigyojyuku .cont02 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.kigyojyuku .cont02 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.kigyojyuku .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.kigyojyuku .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.kigyojyuku .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.kigyojyuku .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.kigyojyuku .cont03 {
    padding: 0 0 40px;
  }
  #forum02.kigyojyuku .cont03 .cont h4 {
    font-size: 18px;
    line-height: 1.3;
  }
  #forum02.kigyojyuku .cont03 table {
    padding: 0 0 50px;
  }
  #forum02.kigyojyuku .cont03 table tr td {
    font-size: 16px;
  }
  #forum02.kigyojyuku .cont03 table tbody tr td span {
    font-size: 20px;
  }
  #forum02.kigyojyuku .cont03 table tbody tr td span:nth-of-type(2),
  #forum02.kigyojyuku .cont03 table tbody tr td span:nth-of-type(3) {
    margin-top: 15px;
  }
}

/* 2025年4月フォーラム */
#forum02.forum2025-04 .key {
  background: url(img/forum/forum2025-04_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-04 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2025-04 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2025-04 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-04 .cont02 h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding: 0 0 60px;
}
#forum02.forum2025-04 .cont02 h3::before {
  display: none;
}
#forum02.forum2025-04 .cont02 h4 {
  font-size: 24px;
  padding-bottom: 20px;
}
#forum02.forum2025-04 .cont02 h4::before {
  bottom: 5px;
}
#forum02.forum2025-04 .cont03 table:nth-of-type(1) {
  padding: 0;
}
#forum02.forum2025-04 .cont03 table {
  padding: 0 0 100px;
}
#forum02 .cont03 table tr td {
  line-height: 2.2;
}
#forum02 .cont03 table tr td span {
  font-size: 16px;
}
#forum02.forum2025-04 .cont03 .dwnload {
  text-align: center;
  margin: 30px 0 100px;
}
#forum02.forum2025-04 .cont03 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-04 .cont03 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.forum2025-04 .cont03 .cont .text02::before {
  top: 30px;
}
#forum02.forum2025-04 .cont03 .cont h4 {
  font-size: 26px;
  line-height: 1.4;
}
#forum02.forum2025-04 .cont06 {
  margin-bottom: 100px;
}
#forum02.forum2025-04 .cont06 h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2025-04 .cont06 h3::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-04 .cont06 .img {
  text-align: center;
}
#forum02.forum2025-04 .cont06 .img img {
  width: 70%;
  height: auto;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-04 .key {
    background: url(img/forum/forum2025-04_key_bg.png) no-repeat center / 100% 100%;
    width: 100%;
    padding-top: 36.11%;
  }
  #forum02.forum2025-04 .key h2 img {
    width: 65%;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  #forum02.forum2025-04 .cont01 {
    padding-bottom: 120px;
  }
  #forum02.forum2025-04 .cont01 .text02 {
    padding: 0 15px;
  }
  #forum02.forum2025-04 .cont01 .img-flex {
    gap: 0;
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2025-04 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2025-04 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-04 .cont03 {
    padding-bottom: 0;
  }
  #forum02.forum2025-04 .cont03 table {
    padding-bottom: 120px;
  }
  #forum02.forum2025-04 .cont03 .cont:nth-of-type(2n) {
    padding: 10px 47% 0 15px;
  }
  #forum02.forum2025-04 .cont02 {
    padding-bottom: 120px;
  }
  #forum02.forum2025-04 .cont02 .cont {
    margin-bottom: 70px;
  }
  #forum02.forum2025-04 .cont02 .cont:last-of-type {
    margin: 0;
  }
}

@media (max-width: 430px) {
  #forum02.forum2025-04 .key {
      background: url(img/forum/forum2025-04_key_bg.png) no-repeat center center / auto 210px;
      padding: 10px 10px 10px 25px;
      width: auto;
  }
  #forum02.forum2025-04 .key h2 img {
    width: 95%;
  }
  #forum02.forum2025-04 .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.forum2025-04 .cont01 .text02 {
    text-align: center;
    width: 92%;
  }
  #forum02.forum2025-04 .cont01 .img-flex {
    margin-top: 40px;
    padding: 0 15px;
    flex-direction: column;
    gap: 10px 0;
  }
  #forum02.forum2025-04 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-04 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2025-04 .cont03 {
    padding-bottom: 25px;
  }
  #forum02.forum2025-04 .cont03 table {
    padding: 0 0 100px;  
  }
  #forum02.forum2025-04 .cont03 .cont {
    padding: 310px 15px 0;
  }
  #forum02.forum2025-04 .cont03 .cont .text02 {
    padding: 40px 0 75px;
  }
  #forum02.forum2025-04 .cont03 .cont .text02::before {
    top: 20px;
  }
  #forum02.forum2025-04 .cont03 .cont h4 {
      font-size: 20px;
    }
  #forum02.forum2025-04 .cont02 h3 {
    font-size: 22px;
    line-height: 30px;
  }
  #forum02.forum2025-04 .cont02 h3::before {
    font-size: 35px;
  }
  #forum02.forum2025-04 .cont02 .cont {
    padding: 290px 20px 0;
  }
  #forum02.forum2025-04 .cont02 .cont .text01 {
    margin: 20px 0 70px;
  }
  #forum02.forum2025-04 .cont02 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.forum2025-04 .cont06 h3 {
    font-size: 24px;
  }
  #forum02.forum2025-04 .cont06 .img img {
    width: 95%;
  }
}

/* 2025年 魅力事業 */
#forum02.miryokujigyo .key {
  background: url(img/forum/miryokujigyo_key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.miryokujigyo .key h2 img {
  transform: translate(-50%, 32%);
}
#forum02.miryokujigyo .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.miryokujigyo .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.miryokujigyo .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.miryokujigyo .cont02 h4 {
  font-size: 26px;
  line-height: 1.2;
}
#forum02.miryokujigyo .cont02 .cont h4 span {
  display: block;
  padding: 0;
  margin-bottom: 20px;
  font-size: 20px;
}
#forum02.miryokujigyo .cont02 .cont h4 .span01 {
  font-size: 14px;
  margin: 10px 0 0;
}
#forum02.miryokujigyo .cont02 .cont {
  min-height: 450px;
}
#forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 20px;
}
#forum02.miryokujigyo .cont02 .cont .text02 {
  padding: 60px 0 75px;
}
#forum02.miryokujigyo .cont02 .cont .text02::before {
  top: 30px;
}
#forum02.miryokujigyo .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -1;
}
#forum02.miryokujigyo .cont03 .cont h4 {
  font-size: 28px;
  line-height: 0.7;
}
#forum02.miryokujigyo .cont03 .cont h4 span {
  display: block;
  padding: 0;
  margin-bottom: 10px;
  font-size: 16px;
}
#forum02.miryokujigyo .cont03 .cont .text01 {
  font-size: 16px;
}
#forum02.miryokujigyo .cont03 table tbody tr td span {
  font-size: 22px;
  padding-bottom: 0;
}
#forum02.miryokujigyo .cont03 table tbody tr td span:nth-last-of-type(1),
#forum02.miryokujigyo .cont03 table tbody tr td span:nth-last-of-type(2) {
  margin-top: 15px;
}
#forum02.miryokujigyo .cont03 .button {
  text-align: center;
  margin-bottom: 60px;
}
#forum02.miryokujigyo .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.miryokujigyo .cont05 h3 {
  padding-bottom: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.miryokujigyo .key {
    background: url(img/forum/miryokujigyo_key_bg.png) no-repeat center center / cover;
    padding: 15px 15px 40px;
    width: auto;
  }
  #forum02.miryokujigyo .key h2 img {
    padding-top: 270px;
    transform: none;
  }
  #forum02.miryokujigyo .cont01 .img-flex {
    gap: 0;
    justify-content: center;
    padding: 0 20px;
  }
  #forum02.miryokujigyo .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.miryokujigyo .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.miryokujigyo .cont02 {
    padding: 0;
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) {
    padding: 0 370px 0 20px;
  }
  #forum02.miryokujigyo .cont02 h4 {
    font-size: 22px;
  }
  #forum02.miryokujigyo .cont02 .cont h4 .span01 {
    margin-top: 5px;
  }
  #forum02.miryokujigyo .cont02 .cont {
    min-height: 300px;
  }
  #forum02.miryokujigyo .cont02 .cont:last-of-type {
    min-height: 320px;
  }
  #forum02.miryokujigyo .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
    left: auto;
  }
  #forum02.miryokujigyo .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.miryokujigyo .cont03 {
    padding-bottom: 60px;
  }
  #forum02.miryokujigyo .cont03 .cont h4 {
    font-size: 24px;
  }
  #forum02.miryokujigyo .cont03 .cont .text01 {
    font-size: 14px;
    margin-bottom: 75px;
  }
  #forum02.miryokujigyo .cont03 .cont h4 span {
    line-height: 1.3;
  }
}

@media (max-width: 430px) {
  #forum02.miryokujigyo .key {
    background: url(img/forum/miryokujigyo_key_bg.png) no-repeat center center / cover;
    padding: 10px 0 20px;
    width: auto;
  }
  #forum02.miryokujigyo .key h2 img {
    padding-top: 140px;
    transform: none;
  }
  #forum02.miryokujigyo .cont01 .text {
    padding-bottom: 25px;
  }
  #forum02.miryokujigyo .cont01 .text02 {
    text-align: center;
  }
  #forum02.miryokujigyo .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
  }
  #forum02.miryokujigyo .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.miryokujigyo .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.miryokujigyo .cont02 {
    padding: 0 0 40px;
  }
  #forum02.miryokujigyo .cont02 .cont {
    padding: 310px 10px 0;
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) {
    padding: 310px 10px 0;
  }
  #forum02.miryokujigyo .cont02 h4 {
    font-size: 18px;
  }
  #forum02.miryokujigyo .cont02 .cont h4 .span01 {
    margin-top: 10px;
  }
  #forum02.miryokujigyo .cont02 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.miryokujigyo .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.miryokujigyo .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.miryokujigyo .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.miryokujigyo .cont02 .cont .text02 {
    padding: 30px 0 60px;
  }
  #forum02.miryokujigyo .cont03 {
    padding: 0 0 40px;
  }
  #forum02.miryokujigyo .cont03 .cont h4 {
    font-size: 18px;
    line-height: 1.3;
  }
  #forum02.miryokujigyo .cont02 h4::before {
    bottom: -16px;
  }
  #forum02.miryokujigyo .cont03 table {
    padding: 0 0 50px;
  }
  #forum02.miryokujigyo .cont03 table tr td {
    font-size: 16px;
  }
  #forum02.miryokujigyo .cont03 table tbody tr td span {
    font-size: 17px;
  }
  #forum02.miryokujigyo .cont03 table tbody tr td span:nth-of-type(2),
  #forum02.miryokujigyo .cont03 table tbody tr td span:nth-of-type(3) {
    margin-top: 15px;
  }
}

/* 2025年 5月例会 */
#forum02.forum2025-05 .key {
  background: url(img/forum/forum2025-05_bg01.png) no-repeat  top -70px center / 90%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-05 .key h2 img {
  position: absolute;
  top: 49%;
  left: 51%;
  transform: translate(-50%, -50%);
}
#forum02.forum2025-05 .cont01 {
  padding: 0 0 120px;
}
#forum02.forum2025-05 .cont01 .img-flex {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.forum2025-05 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2025-05 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2025-05 .cont02 h4 {
  font-size: 30px;
  line-height: 1;
}
#forum02.forum2025-05 .cont02 {
  padding: 0 0 60px;
}
#forum02.forum2025-05 .cont02 .cont {
  margin-bottom: 60px;
}
#forum02.forum2025-05 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -9;
}
#forum02.forum2025-05 .cont03 {
  padding: 0 0 50px;
}
#forum02.forum2025-05 .cont03 table:nth-of-type(1) {
  padding-bottom: 50px;
}
#forum02.forum2025-05 .cont03 .button {
  text-align: center;
  margin-bottom: 120px;
}
#forum02.forum2025-05 .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-05 .key {
    background: url(img/forum/forum2025-05_bg01.png) no-repeat center / 100% 100%;
    padding-top: 49.4%;
    width: auto;
  }
  #forum02.forum2025-05 .key h2 img {
    max-width: 70%;
  }
  #forum02.forum2025-05 .cont01 .img-flex {
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.forum2025-05 .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.forum2025-05 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-05 .cont02 .cont {
    padding: 0px 0 0 50%;
    margin-bottom: 50px;
  }
  #forum02.forum2025-05 .cont02 .cont:nth-of-type(2n) {
    padding: 0px 50% 0 20px;
  }
  #forum02.forum2025-05 .cont02 h4 {
    font-size: 24px;
  }  
  #forum02.forum2025-05 .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.forum2025-05 .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
    left: auto;
  }
  #forum02.forum2025-05 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-05 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-05 .cont03 table:nth-of-type(1) {
    padding-bottom: 40px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2025-05 .key {
    background: url(img/forum/forum2025-05_bg01.png) no-repeat center center / auto 250px;
    padding-top: 49.4%;
    width: auto;
  }
  #forum02.forum2025-05 .key h2 img {
    top: 49%;
    width: 90%;
  }
  #forum02.forum2025-05 .cont01 {
    padding: 0 0 80px;
  }
  #forum02.forum2025-05 .cont01 .text {
    font-size: 22px;
    padding-bottom: 25px;
  }
  #forum02.forum2025-05 .cont01 .text02 {
    text-align: center;
  }
  #forum02.forum2025-05 .cont01 .img-flex {
    margin-top: 70px;
    padding: 0 15px;
    flex-direction: column;
  }
  #forum02.forum2025-05 .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.forum2025-05 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2025-05 .cont02 h3::before {
    font-size: 22px;
  }
  #forum02.forum2025-05 .cont02 {
    padding: 0 0 80px;
  }
  #forum02.forum2025-05 .cont02 h4 {
    font-size: 20px;
  }
  #forum02.forum2025-05 .cont02 .cont {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #forum02.forum2025-05 .cont02 .cont .text01 {
    margin: 45px 0 75px;
  }
  #forum02.forum2025-05 .cont02 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.forum2025-05 .cont02 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.forum2025-05 .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.forum2025-05 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2025-05 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2025-05 .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.forum2025-05 .cont03 {
    padding: 0 0 40px;
  }
  #forum02.forum2025-05 .cont03 table {
    padding: 0 0 50px;
  }
  #forum02.forum2025-05 .cont03 table:nth-of-type(1) {
    padding-bottom: 30px;
  }
  #forum02.forum2025-05 .cont03 table tr td {
    font-size: 16px;
  }
  #forum02.forum2025-05 .cont03 .button {
    margin-bottom: 80px;
  }
}

/* 2025年 名古屋をアイスのまちへ */
#forum02.icenomachi-nagoya .key {
  background: url(img/forum/icenomachi-nagoya-key_bg01.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.icenomachi-nagoya .key h2 img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#forum02.icenomachi-nagoya .cont01 {
  padding: 0 0 150px;
}
#forum02.icenomachi-nagoya .cont01 .img-flex {
  margin-top: 150px;
  display: flex;
  justify-content: center;
  gap: 0 20px;
}
#forum02.icenomachi-nagoya .cont01 h3 {
  padding: 0 0 30px;
  font-size: 40px;
  text-align: center;
  font-weight: bold;
}
#forum02.icenomachi-nagoya .cont01 .text span::before {
  display: none;
}
#forum02.icenomachi-nagoya .cont01 .text span::after {
  display: none;
}
#forum02.icenomachi-nagoya .cont01 .text {
  padding-bottom: 60px;
  font-size: 24px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}
#forum02.icenomachi-nagoya .cont01 .text span {
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
  padding-top: 10px;
}
#forum02.icenomachi-nagoya .cont02 h4 {
  font-size: 30px;
}
#forum02.icenomachi-nagoya .cont02 .cont {
  margin-bottom: 60px;
}
#forum02.icenomachi-nagoya .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.icenomachi-nagoya .cont03 .text01 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 10px;
}
#forum02.icenomachi-nagoya .cont03 .text01 span{
  font-size: 16px;
  padding-left: 10px;
}
#forum02.icenomachi-nagoya .cont03 .text02 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 2;
}
#forum02.icenomachi-nagoya .cont03 .text03 {
  font-size: 20px;
  font-weight: bold;
  line-height: 2;
}
#forum02.icenomachi-nagoya .cont03 .text04 {
  font-size: 16px;
  margin-top: 20px;
  font-weight: bold;
  line-height: 2;
}
#forum02.icenomachi-nagoya .cont03 table:nth-of-type(2) {
  padding-bottom: 150px;
}
#forum02.icenomachi-nagoya .cont03 .box01 {
  display: flex;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  justify-content: space-between;
  gap: 30px;
}
#forum02.icenomachi-nagoya .cont03 .box01 h4{
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 10px;
}
#forum02.icenomachi-nagoya .cont03 .box01 .day {
  color: #1d9add;
}

#forum02.icenomachi-nagoya .cont03 .box01 th{
  padding: 10px;
  white-space: nowrap;
}
#forum02.icenomachi-nagoya .cont03 .box01 td{
  white-space: nowrap;
  padding: 10px 0;
  font-size: 16px;
  text-align: center;
  vertical-align: middle;
}
#forum02.icenomachi-nagoya .cont05 h3{
  padding-bottom: 0;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.icenomachi-nagoya .key {
    background: url(img/forum/icenomachi-nagoya-key_bg01.png) no-repeat center / 100% 100%;
    padding-top: 40%;
    width: auto;
  }
  #forum02.icenomachi-nagoya .key h2 img {
    max-width: 70%;
  }
  #forum02.icenomachi-nagoya .cont01 .img-flex {
    justify-content: space-between;
    padding: 0 20px;
  }
  #forum02.icenomachi-nagoya .cont01 .img-flex .img {
    width: 49%;
  }
  #forum02.icenomachi-nagoya .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.icenomachi-nagoya .cont01 h3 {
    font-size: 24px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont {
    padding: 0px 0 0 50%;
    margin-bottom: 50px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont:nth-of-type(2n) {
    padding: 0px 50% 0 20px;
  }
  #forum02.icenomachi-nagoya .cont02 h4 {
    font-size: 20px;
  }  
  #forum02.icenomachi-nagoya .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
    left: auto;
  }
  #forum02.icenomachi-nagoya .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.icenomachi-nagoya .cont03 table:nth-of-type(1) {
    padding-bottom: 40px;
  }
  #forum02.icenomachi-nagoya .cont03 .text01 {
    font-size: 20px;
  }
  #forum02.icenomachi-nagoya .cont03 .text01 span{
    font-size: 16px;
  }
  #forum02.icenomachi-nagoya .cont03 .text02 {
    font-size: 16px;
    margin-bottom: 20px;
  }
  #forum02.icenomachi-nagoya .cont03 .text03 {
    font-size: 16px;
  }
  #forum02.icenomachi-nagoya .cont03 .text04 {
    font-size: 14px;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  #forum02.icenomachi-nagoya .cont03 {
    padding-bottom: 110px;
  }
}

@media (max-width: 430px) {
  #forum02.icenomachi-nagoya .key {
    background: url(img/forum/icenomachi-nagoya-key_bg01.png) no-repeat center center / auto 250px;
    padding-top: 60%;
    width: auto;
  }
  #forum02.icenomachi-nagoya .key h2 img {
    top: 49%;
    width: 90%;
  }
  #forum02.icenomachi-nagoya .cont01 {
    padding: 0 0 80px;
  }
  #forum02.icenomachi-nagoya .cont01 h3 {
    font-size: 20px;
  }
  #forum02.icenomachi-nagoya .cont01 .text {
    font-size: 22px;
    padding-bottom: 25px;
  }
  #forum02.icenomachi-nagoya .cont01 .text {
    font-size: 20px;
  }
  #forum02.icenomachi-nagoya .cont01 .text span {
    font-size: 16px;
  }
  #forum02.icenomachi-nagoya .cont01 .img-flex {
    margin-top: 70px;
    padding: 0px 30px;
    flex-direction: column;
    gap: 30px;
  }
  #forum02.icenomachi-nagoya .cont01 .img-flex .img img {
    max-width: 100%;
  }
  #forum02.icenomachi-nagoya .cont02 h3::before {
    font-size: 22px;
  }
  #forum02.icenomachi-nagoya .cont02 h4 {
    font-size: 20px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont {
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #forum02.icenomachi-nagoya .cont02 .cont .text01 {
    margin: 45px 0 75px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.icenomachi-nagoya .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.icenomachi-nagoya .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.icenomachi-nagoya .cont03 h3{
    padding-bottom: 20px;
  }
  #forum02.icenomachi-nagoya .cont03 .text01 {
    font-size: 16px;
    line-height: 2;
  }
  #forum02.icenomachi-nagoya .cont03 .text02 {
    font-size: 14px;
    line-height: 2;
  }
  #forum02.icenomachi-nagoya .cont03 .text03 {
    font-size: 14px;
    line-height: 2;
  }
  #forum02.icenomachi-nagoya .cont03 .text03 {
    font-size: 14px;
    line-height: 2;
  }
    #forum02.icenomachi-nagoya .cont03 .text04 {
    font-size: 14px;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 h4{
    font-size: 16px;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 tr{
    display:table-row;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 th{
    padding: 5px;
    font-size: 14px;
    text-align: center;
    width: 0;
  }
  #forum02.icenomachi-nagoya .cont03 td{
    font-size: 14px;
  }
  #forum02.icenomachi-nagoya .cont03 .box01 td{
    padding: 5px;
    font-size: 12px;
    text-align: center;
    vertical-align: middle;
  }
  #forum02.icenomachi-nagoya .cont05 h3{
    padding-bottom: 0;
  }
  #forum02.icenomachi-nagoya .cont03 table {
    padding: 0 0 50px;
  }
  #forum02.icenomachi-nagoya .cont03 table:nth-of-type(1) {
    padding-bottom: 60px;
  }
  #forum02.icenomachi-nagoya .cont03 table:nth-of-type(2) {
    padding-bottom: 80px;
}
}
/* 2025年 6月例会 */
#forum02.forum2025-06 .key {
  background: url(img/forum/forum2025-06-key_bg01.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-06 .cont01 .text01 {
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 10px;
}
#forum02.forum2025-06 .cont01 .text03 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding-bottom: 70px;
}
#forum02.forum2025-06 .cont01 .text04 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding-bottom: 80px;
}
#forum02.forum2025-06 .cont01 .img-flex {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
}
#forum02.forum2025-06 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2025-06 .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
}
#forum02.forum2025-06 .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
}
#forum02.forum2025-06 .cont01 .button {
    width: 580px;
    margin: 0 auto 120px;
}
#forum02.forum2025-06 .cont01 .button a {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 20px 0;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    background: #e8355f;
}
#forum02.forum2025-06 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.forum2025-06 .cont02 .cont {
  padding: 90px 0 0 630px;
}
#forum02.forum2025-06 .cont02 .cont:nth-of-type(2) {
  padding: 90px 0 0 40px;
}
#forum02.forum2025-06 .cont02 .cont h4 {
  font-size: 30px;
}
#forum02.forum2025-06 .cont02 .cont .text01 {
  margin-top: 40px;
}
#forum02.forum2025-06 .cont02 h4::before {
  bottom: -20px;
}
#forum02.forum2025-06 .cont03 {
    padding-bottom: 100px;
}
#forum02.forum2025-06 .cont03 h3{
    padding-bottom: 40px;
}
#forum02.forum2025-06 .cont03 table{
    padding-bottom: 40px;
}
#forum02.forum2025-06 .cont03 tr th{
  line-height: 1;
}
#forum02.forum2025-06 .cont03 .button {
    text-align: center;
    margin-bottom: 120px;
}
#forum02.forum2025-06 .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.forum2025-06 .cont04 {
  padding-top: 0;
}
#forum02.forum2025-06 .cont04 .cont {
  width: 1200px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  padding: 20px 0 0 630px;
}
#forum02.forum2025-06 .cont04 .cont:nth-of-type(n + 2) {
  margin-top: 100px;
}
#forum02.forum2025-06 .cont04 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 70px;
}
#forum02.forum2025-06 .cont04 h4 {
  position: relative;
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02.forum2025-06 .cont04 h4::before {
  position: absolute;
  bottom: -32px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02.forum2025-06 .cont04 h4 span {
  font-size: 20px;
  font-weight: bold;
}
#forum02.forum2025-06 .cont04 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
}
#forum02.forum2025-06 .cont04 .cont .img {
  position: absolute;
  top: 0;
  left: 20px;
  box-shadow: 0 0 20px rgb(0 0 0 / 5%);
}
#forum02.forum2025-06 .cont04 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 20px;
}
#forum02.forum2025-06 .cont04 .text02 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 60px 0 180px;
    background: none;
}
#forum02.forum2025-06 .cont04 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.forum2025-06 .sponsor h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding-bottom: 40px;
}
#forum02.forum2025-06 .sponsor .img {
  text-align: center;
  padding-bottom: 180px;
}
@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-06 .key {
    background: url(img/forum/forum2025-06-key_bg01.png) no-repeat center / cover;
    width: auto;
  }
      #forum02 .cont01 {
        padding: 0px 30px 120px;
    }
  #forum02.forum2025-06 .cont01 .text01 {
    font-size: 32px;
}
  #forum02.forum2025-06 .cont01 .text03 {
    font-size: 16px;
    padding-bottom: 40px;
}
  #forum02.forum2025-06 .cont01 .text04 {
    font-size: 16px;
}
  #forum02.forum2025-06 .cont01 .text04 {
    padding-bottom: 80px;
}
  #forum02.forum2025-06 .cont01 ul {
  margin-bottom: 100px;
}
#forum02.forum2025-06 .cont01 .img-flex {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
}
#forum02.forum2025-06 .cont01 .img-flex img {
    width: 100%;
}
#forum02 .cont02 {
        padding: 0 30px 120px;
}
#forum02.forum2025-06 .cont01 .button {
    width: 400px;
}
#forum02.forum2025-06 .cont01 .button a {
    font-size: 16px;
}
  #forum02.forum2025-06 .cont02 .cont {
  padding: 0 0 60px 350px;
}
  #forum02.forum2025-06 .cont02 .cont:nth-of-type(2) {
  padding: 0px 340px 60px 30px;
}
#forum02.forum2025-06 .cont02 .cont h4 {
    font-size: 22px;
}
#forum02 .cont02 h4::before {
    bottom: -10px;
}
    #forum02 .cont03 table tr th {
        width: 230px;
        padding: 20px 0;
    }
#forum02.forum2025-06 .cont02 .cont .text01 {
    margin-top: 20px;
}
#forum02.forum2025-06 .cont04 {
  padding: 0 30px;
  box-sizing: border-box;
}
#forum02.forum2025-06 .cont04 .cont .img {
    width: 40%;
}
 #forum02.forum2025-06 .cont04 .cont {
    padding: 0 0 60px 350px;
    width: 100%;
    min-height: auto;
}
  #forum02.forum2025-06 .cont04 .cont:nth-of-type(2) {
  padding: 0px 340px 60px 30px;
  margin-top: 0;
}
#forum02.forum2025-06 .cont04 .cont h4 {
    font-size: 22px;
}
#forum02.forum2025-06 .cont04 .cont img {
    max-width: 100%;
    height: auto;
}
#forum02.forum2025-06 .cont04 .text02 {
    font-size: 16px;
}
#forum02.forum2025-06 .sponsor {
  padding: 0 30px;
}
#forum02.forum2025-06 .sponsor h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding-bottom: 40px;
}
#forum02.forum2025-06 .sponsor .img {
  text-align: center;
  padding-bottom: 180px;
}
#forum02.forum2025-06 .sponsor img {
  width: 100%;
  height: auto;
}
}
@media (max-width: 430px) {
  #forum02.forum2025-06 .key {
    background: url(img/forum/forum2025-06-key_bg01.png) no-repeat center center / cover;
    width: auto;
  }
    #forum02.forum2025-06 .cont01 h3 {
    font-size: 16px;
}
    #forum02.forum2025-06 .cont01 .text01 {
    font-size: 26px;
}

  #forum02.forum2025-06 .cont01 .text03 {
    font-size: 14px;
    padding-bottom: 40px;
}
  #forum02.forum2025-06 .cont01 .text04 {
    font-size: 14px;
}
  #forum02.forum2025-06 .cont01 .text04 {
    padding-bottom: 80px;
}
#forum02.forum2025-06 .cont01 .img-flex {
    display: block;
    width: 100%;
}
#forum02.forum2025-06 .cont01 .img-flex .img:nth-of-type(1) {
    margin-bottom: 20px;
}
#forum02.forum2025-06 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2025-06 .cont01 .dwnload a {
    width: 310px;
}
  #forum02.forum2025-06 .cont01 ul {
  margin-bottom: 100px;
}
#forum02.forum2025-06 .cont01 .button {
    width: 390px;
    margin: 0 auto 90px;
}
#forum02.forum2025-06 .cont01 .button a {
  font-size: 14px;
}
  #forum02.forum2025-06 .cont02 {
  padding: 0 30px 20px;
}
  #forum02.forum2025-06 .cont02 .cont {
  padding: 310px 0 60px 0;
}
#forum02 .cont02 h3::before {
    content: "INTRODUCTION";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 38px;
    line-height: 1.6;
}
#forum02.forum2025-06 .cont02 h4::before {
  bottom: -10px;
}
  #forum02.forum2025-06 .cont02 .cont:nth-of-type(2) {
  padding: 310px 0 60px 0;
}
#forum02.forum2025-06 .cont02 .cont h4 {
    font-size: 22px;
}
#forum02 .cont02 h4::before {
    bottom: -10px;
}
#forum02.forum2025-06 .cont02 .cont .text01 {
    margin-top: 20px;
}
#forum02 .cont03 table tr td {
  font-size: 16px;
}
#forum02.forum2025-06 .cont03 {
    padding-bottom: 40px;
}
#forum02.forum2025-06 .cont04 {
  padding: 0 30px;
  box-sizing: border-box;
}
#forum02.forum2025-06 .cont04 .cont .img {
    width: 110%;
    left: 0;
}
 #forum02.forum2025-06 .cont04 .cont {
    padding: 310px 0 60px 0;
    width: 100%;
    min-height: auto;
    left: 0;
}
  #forum02.forum2025-06 .cont04 .cont:nth-of-type(2) {
  padding: 310px 0 60px 0;
  margin-top: 0;
}
#forum02.forum2025-06 .cont04 .cont h4 {
    font-size: 22px;
}
#forum02.forum2025-06 .cont04 .cont img {
    max-width: 100%;
    height: auto;
}
#forum02.forum2025-06 .cont04 .cont .text01 {
    margin-top: 20px;
}
#forum02.forum2025-06 .cont04 .text01 {
    font-size: 14px;
}
#forum02.forum2025-06 .cont04 .text02 {
  font-size: 14px;
  padding: 20px 0 80px;
}
#forum02.forum2025-06 .cont04 h4::before {
    position: absolute;
    bottom: -10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
}
#forum02.forum2025-06 .sponsor {
  padding: 0 10px;
}
#forum02.forum2025-06 .sponsor h3 {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  padding-bottom: 20px;
}
#forum02.forum2025-06 .sponsor .img {
  text-align: center;
  padding-bottom: 80px;
}
#forum02.forum2025-06 .sponsor img {
  width: 100%;
  height: auto;
}
}
/* 2025年 7月例会 */
#forum02.forum2025-07 .key {
  background: url(img/forum/forum2025-07-key_bg01.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-07 .cont01 .text01 {
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 10px;
}
#forum02.forum2025-07 .cont01 .text03 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 40px 0 70px;
}
#forum02.forum2025-07 .cont01 .img-flex {
    max-width: 595px;
    margin: 0 auto;
}
#forum02.forum2025-07 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2025-07 .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
}
#forum02.forum2025-07 .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
}
#forum02.forum2025-07 .cont01 .button {
    width: 580px;
    margin: 0 auto 120px;
}
#forum02.forum2025-07 .cont01 .button a {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 20px 0;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    background: #e8355f;
}
#forum02.forum2025-07 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.forum2025-07 .cont02 .cont {
  padding: 90px 0 0 630px;
}
#forum02.forum2025-07 .cont02 .cont:nth-of-type(2) {
  padding: 90px 0 0 40px;
}
#forum02.forum2025-07 .cont02 .cont h4 {
  font-size: 30px;
}
#forum02.forum2025-07 .cont02 .cont .text01 {
  margin-top: 40px;
}
#forum02.forum2025-07 .cont02 h4::before {
  bottom: -20px;
}
#forum02.forum2025-07 .cont03 {
    padding-bottom: 0;
}
#forum02.forum2025-07 .cont03 h3{
    padding-bottom: 40px;
}
#forum02.forum2025-07 .cont03 table{
    padding-bottom: 120px;
}
#forum02.forum2025-07 .cont03 tr th{
  line-height: 1;
}
#forum02.forum2025-07 .cont03 .button {
    text-align: center;
    margin-bottom: 120px;
}
#forum02.forum2025-07 .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.forum2025-07 .cont04 {
  padding-top: 0;
}
#forum02.forum2025-07 .cont04 .cont {
  width: 1200px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  padding: 20px 0 0 630px;
}
#forum02.forum2025-07 .cont04 .cont:nth-of-type(n + 2) {
  margin-top: 100px;
}
#forum02.forum2025-07 .cont04 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 70px;
}
#forum02.forum2025-07 .cont04 h4 {
  position: relative;
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02.forum2025-07 .cont04 h4::before {
  position: absolute;
  bottom: -32px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02.forum2025-07 .cont04 h4 span {
  font-size: 20px;
  font-weight: bold;
}
#forum02.forum2025-07 .cont04 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
}
#forum02.forum2025-07 .cont04 .cont .img {
  position: absolute;
  top: 0;
  left: 20px;
  box-shadow: 0 0 20px rgb(0 0 0 / 5%);
}
#forum02.forum2025-07 .cont04 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 20px;
}
#forum02.forum2025-07 .cont04 .text02 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 60px 0 180px;
    background: none;
}
#forum02.forum2025-07 .cont04 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.forum2025-07 .sponsor h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding-bottom: 40px;
}
#forum02.forum2025-07 .sponsor .img {
  text-align: center;
  padding-bottom: 180px;
}
@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-07 .key {
    background: url(img/forum/forum2025-07-key_bg01.png) no-repeat center / cover;
    width: auto;
  }
      #forum02 .cont01 {
        padding: 0px 30px 120px;
    }
  #forum02.forum2025-07 .cont01 .text01 {
    font-size: 32px;
}
  #forum02.forum2025-07 .cont01 .text03 {
    font-size: 16px;
    padding: 20px 0 40px;
}
  #forum02.forum2025-07 .cont01 .text04 {
    font-size: 16px;
}
  #forum02.forum2025-07 .cont01 .text04 {
    padding-bottom: 80px;
}
  #forum02.forum2025-07 .cont01 ul {
  margin-bottom: 100px;
}
#forum02.forum2025-07 .cont01 .img-flex {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
}
#forum02.forum2025-07 .cont01 .img-flex img {
    width: 100%;
}
#forum02 .cont02 {
        padding: 0 30px 120px;
}
#forum02.forum2025-07 .cont01 .button {
    width: 400px;
}
#forum02.forum2025-07 .cont01 .button a {
    font-size: 16px;
}
  #forum02.forum2025-07 .cont02 .cont {
  padding: 0 0 140px 350px;
}
  #forum02.forum2025-07 .cont02 .cont:nth-of-type(2) {
  padding: 0 340px 0 30px;
}
#forum02.forum2025-07 .cont02 .cont h4 {
    font-size: 22px;
}
#forum02 .cont02 h4::before {
    bottom: -10px;
}
    #forum02 .cont03 table tr th {
        width: 230px;
        padding: 20px 0;
    }
#forum02.forum2025-07 .cont02 .cont .text01 {
    margin-top: 20px;
}
#forum02.forum2025-07 .cont04 {
  padding: 0 30px;
  box-sizing: border-box;
}
#forum02.forum2025-07 .cont04 .cont .img {
    width: 40%;
}
 #forum02.forum2025-07 .cont04 .cont {
    padding: 0 0 60px 350px;
    width: 100%;
    min-height: auto;
}
  #forum02.forum2025-07 .cont04 .cont:nth-of-type(2) {
  padding: 0px 340px 60px 30px;
  margin-top: 0;
}
#forum02.forum2025-07 .cont04 .cont h4 {
    font-size: 22px;
}
#forum02.forum2025-07 .cont04 .cont img {
    max-width: 100%;
    height: auto;
}
#forum02.forum2025-07 .cont04 .text02 {
    font-size: 16px;
}
#forum02.forum2025-07 .sponsor {
  padding: 0 30px;
}
#forum02.forum2025-07 .sponsor h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  padding-bottom: 40px;
}
#forum02.forum2025-07 .sponsor .img {
  text-align: center;
  padding-bottom: 180px;
}
#forum02.forum2025-07 .sponsor img {
  width: 100%;
  height: auto;
}
}
@media (max-width: 430px) {
  #forum02.forum2025-07 .key {
    background: url(img/forum/forum2025-07-key_bg01.png) no-repeat center center / cover;
    width: auto;
  }
    #forum02.forum2025-07 .cont01 h3 {
    font-size: 16px;
}
    #forum02.forum2025-07 .cont01 .text01 {
    font-size: 26px;
}

  #forum02.forum2025-07 .cont01 .text03 {
    font-size: 14px;
    padding: 20px 0 0;
}
  #forum02.forum2025-07 .cont01 .text04 {
    font-size: 14px;
}
  #forum02.forum2025-07 .cont01 .text04 {
    padding-bottom: 80px;
}
#forum02.forum2025-07 .cont01 .img-flex {
    padding: 0px 15px;
    box-sizing: border-box;
    display: block;
    width: 100%;
}
#forum02.forum2025-07 .cont01 .img-flex .img:nth-of-type(1) {
    margin-bottom: 20px;
}
#forum02.forum2025-07 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2025-07 .cont01 .dwnload a {
    width: 310px;
}
  #forum02.forum2025-07 .cont01 ul {
  margin-bottom: 100px;
}
#forum02.forum2025-07 .cont01 .button {
    width: 390px;
    margin: 0 auto 90px;
}
#forum02.forum2025-07 .cont01 .button a {
  font-size: 14px;
}
  #forum02.forum2025-07 .cont02 {
  padding: 0 30px 20px;
}
  #forum02.forum2025-07 .cont02 .cont {
  padding: 310px 0 60px 0;
}
#forum02 .cont02 h3::before {
    content: "INTRODUCTION";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 38px;
    line-height: 1.6;
}
#forum02.forum2025-07 .cont02 h4::before {
  bottom: -10px;
}
  #forum02.forum2025-07 .cont02 .cont:nth-of-type(2) {
  padding: 310px 0 60px 0;
}
#forum02.forum2025-07 .cont02 .cont h4 {
    font-size: 22px;
}
#forum02 .cont02 h4::before {
    bottom: -10px;
}
#forum02.forum2025-07 .cont02 .cont .text01 {
    margin-top: 20px;
}
#forum02 .cont03 table tr td {
  font-size: 16px;
}
#forum02.forum2025-07 .cont03 {
    padding-bottom: 40px;
}
#forum02.forum2025-07 .cont04 {
  padding: 0 30px;
  box-sizing: border-box;
}
#forum02.forum2025-07 .cont04 .cont .img {
    width: 110%;
    left: 0;
}
 #forum02.forum2025-07 .cont04 .cont {
    padding: 310px 0 60px 0;
    width: 100%;
    min-height: auto;
    left: 0;
}
  #forum02.forum2025-07 .cont04 .cont:nth-of-type(2) {
  padding: 310px 0 60px 0;
  margin-top: 0;
}
#forum02.forum2025-07 .cont04 .cont h4 {
    font-size: 22px;
}
#forum02.forum2025-07 .cont04 .cont img {
    max-width: 100%;
    height: auto;
}
#forum02.forum2025-07 .cont04 .cont .text01 {
    margin-top: 20px;
}
#forum02.forum2025-07 .cont04 .text01 {
    font-size: 14px;
}
#forum02.forum2025-07 .cont04 .text02 {
  font-size: 14px;
  padding: 20px 0 80px;
}
#forum02.forum2025-07 .cont04 h4::before {
    position: absolute;
    bottom: -10px;
    left: 0;
    content: "";
    width: 140px;
    height: 1px;
    background: #3ec4ff;
}
#forum02.forum2025-07 .sponsor {
  padding: 0 10px;
}
#forum02.forum2025-07 .sponsor h3 {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  padding-bottom: 20px;
}
#forum02.forum2025-07 .sponsor .img {
  text-align: center;
  padding-bottom: 80px;
}
#forum02.forum2025-07 .sponsor img {
  width: 100%;
  height: auto;
}
}
/* 2025年 10月例会 */
#forum02.forum2025-10 .key {
  background: url(img/forum/forum2025-10-key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-10 .key h2 img {
  top: 53%;
}
#forum02.forum2025-10 .cont01 .text01 {
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 10px;
}
#forum02.forum2025-10 .cont01 .text03 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 40px 0 70px;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 540px;
}
#forum02.forum2025-10 .cont01 .img-flex {
    max-width: 595px;
    margin: 0 auto;
}
#forum02.forum2025-10 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2025-10 .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
}
#forum02.forum2025-10 .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
}
#forum02.forum2025-10 .cont01 .button {
    width: 580px;
    margin: 0 auto 120px;
}
#forum02.forum2025-10 .cont01 .button a {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 20px 0;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    background: #e8355f;
}
#forum02.forum2025-10 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.forum2025-10 .cont02 .cont {
  padding: 90px 0 0 630px;
  margin-bottom: 80px;
}
#forum02.forum2025-10 .cont02 .cont:last-of-type {
  margin-bottom: 0;
}
#forum02.forum2025-10 .cont02 .cont:nth-of-type(2n) {
  padding: 90px 0 0 40px;
}
#forum02.forum2025-10 .cont02 .cont h4 {
  font-size: 30px;
}
#forum02.forum2025-10 .cont02 .cont h4 span {
  display: block;
  margin-bottom: 10px;
}
#forum02.forum2025-10 .cont02 .cont .text01 {
  margin-top: 40px;
}
#forum02.forum2025-10 .cont02 h4::before {
  bottom: -20px;
}
#forum02.forum2025-10 .cont03 {
    padding-bottom: 0;
}
#forum02.forum2025-10 .cont03 h3{
    padding-bottom: 40px;
}
#forum02.forum2025-10 .cont03 table{
    padding-bottom: 120px;
}
#forum02.forum2025-10 .cont03 tr th{
  line-height: 1;
}
#forum02.forum2025-10 .cont03 .button {
    text-align: center;
    margin-bottom: 120px;
}
#forum02.forum2025-10 .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.forum2025-10 .cont06 h3 {
  text-align: center;
  font-size: 34px;
  font-weight: bold;
  margin-bottom: 60px;
  padding-bottom: 25px;
  position: relative;
}
#forum02.forum2025-10 .cont06 h3::before {
  content: "";
  width: 30px;
  height: 3px;
  background: #3ec4ff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2025-10 .cont06 .img {
  text-align: center;
  margin-bottom: 130px;
}
#forum02.forum2025-10 .cont06 .img img {
  width: 70%;
  height: auto;
}
@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2025-10 .key {
    background: url(img/forum/forum2025-10-key_bg.png) no-repeat center / cover;
    position: relative;
    min-height: 415px;
    width: auto;
  }
  #forum02.forum2025-10 .key h2 img {
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 100%;
    height: auto;
  }
  #forum02.forum2025-10 .cont01 .text01 {
    font-size: 32px;
  }
  #forum02.forum2025-10 .cont01 .text03 {
    font-size: 16px;
    padding: 20px 0 40px;
  }
  #forum02.forum2025-10 .cont01 ul {
    margin-bottom: 100px;
  }
  #forum02.forum2025-10 .cont01 .img-flex {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
  }
  #forum02.forum2025-10 .cont01 .img-flex img {
    width: 100%;
  }
  #forum02 .cont02 {
    padding: 0 30px 120px;
  }
  #forum02.forum2025-10 .cont01 .button {
      width: 400px;
  }
  #forum02.forum2025-10 .cont01 .button a {
      font-size: 16px;
  }
  #forum02.forum2025-10 .cont02 .cont {
    padding: 0 0 0 350px;
    margin-bottom: 50px;
  }
  #forum02.forum2025-10 .cont02 .cont:nth-of-type(2n) {
    padding: 0 340px 0 30px;
    margin-bottom: 50px;
  }
  #forum02.forum2025-10 .cont02 .cont:last-of-type {
    margin-bottom: 0;
  }
  #forum02.forum2025-10 .cont02 .cont h4 {
    font-size: 22px;
  }
  #forum02.forum2025-10 .cont02 .cont .text01 {
      margin-top: 20px;
  }
}
@media (max-width: 430px) {
  #forum02.forum2025-10 .key {
    background: url(img/forum/forum2025-10-key_bg.png) no-repeat center center / cover;
    width: auto;
    position: relative;
    min-height: 232px;
  }
  #forum02.forum2025-10 .key h2 img {
    position: absolute;
    top: 0px;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 100%;
    height: auto;
  }
    #forum02.forum2025-10 .cont01 h3 {
    font-size: 16px;
  }
    #forum02.forum2025-10 .cont01 .text01 {
    font-size: 26px;
  }

  #forum02.forum2025-10 .cont01 .text03 {
    font-size: 14px;
    padding: 20px 0 0;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 320px;
  }
#forum02.forum2025-10 .cont01 .img-flex {
    padding: 0px 15px;
    box-sizing: border-box;
    display: block;
    width: 100%;
  }
#forum02.forum2025-10 .cont01 .img-flex .img:nth-of-type(1) {
    margin-bottom: 20px;
  }
#forum02.forum2025-10 .cont01 .img-flex img {
    width: 100%;
  }
#forum02.forum2025-10 .cont01 .dwnload a {
    width: 310px;
  }
  #forum02.forum2025-10 .cont01 ul {
  margin-bottom: 100px;
  }
#forum02.forum2025-10 .cont01 .button {
    width: 390px;
    margin: 0 auto 90px;
  }
#forum02.forum2025-10 .cont01 .button a {
  font-size: 14px;
  }
  #forum02.forum2025-10 .cont02 {
  padding: 0 30px 20px;
  }
  #forum02.forum2025-10 .cont02 .cont {
  padding: 310px 0 0 0;
  margin-bottom: 60px;
  }
#forum02 .cont02 h3::before {
    content: "INTRODUCTION";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 38px;
    line-height: 1.6;
  }
#forum02.forum2025-10 .cont02 h4::before {
  bottom: -10px;
  }
  #forum02.forum2025-10 .cont02 .cont:nth-of-type(2n) {
  padding: 310px 0 0 0;
  margin-bottom: 60px;
  }
#forum02.forum2025-10 .cont02 .cont h4 {
    font-size: 22px;
  }
#forum02.forum2025-10 .cont02 .cont .text01 {
    margin-top: 20px;
  }
  #forum02.forum2025-10 .cont06 h3 {
  font-size: 24px;
  margin-bottom: 30px;
  }
#forum02.forum2025-10 .cont06 .img {
  margin-bottom: 80px;
  }
#forum02.forum2025-10 .cont06 .img img {
  width: 95%;
  }
}

/* world-friends */
#forum02.world-friends .key {
  background: url(img/forum/world-friends_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.world-friends .key h2 img {
  top: 53%;
}
#forum02.world-friends .cont01 .text01 {
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 10px;
}
#forum02.world-friends .cont01 .text03 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 40px 0 70px;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 540px;
}
#forum02.world-friends .cont01 .img-flex {
    max-width: 595px;
    margin: 0 auto;
}
#forum02.world-friends .cont01 .img-flex img {
    width: 100%;
}
#forum02.world-friends .cont01 .dwnload {
    text-align: center;
    margin-top: 50px;
}
#forum02.world-friends .cont01 .dwnload a {
    display: inline-block;
    width: 400px;
    line-height: 1;
    padding: 15px 0;
    color: #fff;
    font-weight: bold;
    background: #0099dd;
}
#forum02.world-friends .cont01 .button {
    width: 580px;
    margin: 0 auto 120px;
}
#forum02.world-friends .cont01 .button a {
    display: inline-block;
    width: 100%;
    line-height: 1;
    padding: 20px 0;
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 18px;
    background: #e8355f;
}
#forum02.world-friends .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 20%);
  z-index: -9;
}
#forum02.world-friends .cont02 .cont {
  padding: 90px 0 0 630px;
  margin-bottom: 80px;
}
#forum02.world-friends .cont02 .cont:last-of-type {
  margin-bottom: 0;
}
#forum02.world-friends .cont02 .cont:nth-of-type(2n) {
  padding: 90px 0 0 40px;
}
#forum02.world-friends .cont02 .cont h4 {
  font-size: 30px;
}
#forum02.world-friends .cont02 .cont .text01 {
  margin-top: 40px;
}
#forum02.world-friends .cont02 h4::before {
  bottom: -20px;
}
#forum02.world-friends .cont03 {
    padding-bottom: 0;
}
#forum02.world-friends .cont03 h3{
    padding-bottom: 40px;
}
#forum02.world-friends .cont03 table{
    padding-bottom: 120px;
}
#forum02.world-friends .cont03 tr th{
  line-height: 1;
}

@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.world-friends .key {
    background: url(img/forum/world-friends_bg.png) no-repeat center / cover;
    position: relative;
    width: auto;
    height: auto;
    padding: 20px 20px 7px;
  }
  #forum02.world-friends .key h2 img {
    position: static;
    transform: none;
    max-width: 100%;
    height: auto;
  }
  #forum02.world-friends .cont01 .text01 {
    font-size: 32px;
  }
  #forum02.world-friends .cont01 .text03 {
    font-size: 16px;
    padding: 20px 0 40px;
  }
  #forum02.world-friends .cont01 ul {
    margin-bottom: 100px;
  }
  #forum02.world-friends .cont01 .img-flex {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
  }
  #forum02.world-friends .cont01 .img-flex img {
    width: 100%;
  }
  #forum02 .cont02 {
    padding: 0 30px 120px;
  }
  #forum02.world-friends .cont01 .button {
      width: 400px;
  }
  #forum02.world-friends .cont01 .button a {
      font-size: 16px;
  }
  #forum02.world-friends .cont02 .cont {
    padding: 0 0 0 350px;
    margin-bottom: 50px;
  }
  #forum02.world-friends .cont02 .cont:nth-of-type(2n) {
    padding: 0 340px 0 30px;
    margin-bottom: 50px;
  }
  #forum02.world-friends .cont02 .cont:last-of-type {
    margin-bottom: 0;
  }
  #forum02.world-friends .cont02 .cont h4 {
    font-size: 22px;
  }
  #forum02.world-friends .cont02 .cont .text01 {
      margin-top: 20px;
  }
}
@media (max-width: 430px) {
  #forum02.world-friends .key {
    background: url(img/forum/world-friends_bg.png) no-repeat center center / cover;
    padding: 15px 15px 0;
    width: auto;
    height: auto;
    min-height: 200px
  }
  #forum02.world-friends .key h2 img {
    position: static;
    transform: none;
    height: auto;
    width: 100%;
  }
    #forum02.world-friends .cont01 h3 {
    font-size: 16px;
  }
    #forum02.world-friends .cont01 .text01 {
    font-size: 26px;
  }

  #forum02.world-friends .cont01 .text03 {
    font-size: 14px;
    padding: 20px 0 0;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 320px;
  }
#forum02.world-friends .cont01 .img-flex {
    padding: 0px 15px;
    box-sizing: border-box;
    display: block;
    width: 100%;
  }
#forum02.world-friends .cont01 .img-flex .img:nth-of-type(1) {
    margin-bottom: 20px;
  }
#forum02.world-friends .cont01 .img-flex img {
    width: 100%;
  }
#forum02.world-friends .cont01 .dwnload a {
    width: 310px;
  }
  #forum02.world-friends .cont01 ul {
  margin-bottom: 100px;
  }
#forum02.world-friends .cont01 .button {
    width: 390px;
    margin: 0 auto 90px;
  }
#forum02.world-friends .cont01 .button a {
  font-size: 14px;
  }
  #forum02.world-friends .cont02 {
  padding: 0 30px 20px;
  }
  #forum02.world-friends .cont02 .cont {
  padding: 310px 0 0 0;
  margin-bottom: 60px;
  }
#forum02 .cont02 h3::before {
    content: "INTRODUCTION";
    display: block;
    font-weight: bold;
    color: #0099dd;
    font-size: 38px;
    line-height: 1.6;
  }
#forum02.world-friends .cont02 h4::before {
  bottom: -10px;
  }
  #forum02.world-friends .cont02 .cont:nth-of-type(2n) {
  padding: 310px 0 0 0;
  margin-bottom: 60px;
  }
#forum02.world-friends .cont02 .cont h4 {
    font-size: 22px;
  }
#forum02.world-friends .cont02 .cont .text01 {
    margin-top: 20px;
  }
}

/* 2026年 2月例会 */
#forum02.forum2026-02 .key {
  background: url(img/forum/forum2026-02-key_bg.png) no-repeat center / 100%;
  width: 1800px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
#forum02.forum2026-02 .cont01 {
  padding: 0 0 120px;
}
#forum02.forum2026-02 .cont01 .text01 {
    text-align: center;
    font-size: 42px;
    font-weight: bold;
    padding-bottom: 10px;
}
#forum02.forum2026-02 .cont01 .text03 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 2.5;
    padding: 40px 0 70px;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 540px;
}
#forum02.forum2026-02 .cont01 .img-flex {
    max-width: 595px;
    margin: 0 auto;
}
#forum02.forum2026-02 .cont01 .img-flex img {
    width: 100%;
}
#forum02.forum2026-02 .cont01 .dwnload {
  text-align: center;
  margin-top: 50px;
}
#forum02.forum2026-02 .cont01 .dwnload a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0099dd;
}
#forum02.forum2026-02 .cont02 h4 {
  font-size: 30px;
  line-height: 1;
}
#forum02.forum2026-02 .cont02 h4 span {
  display: inline-block;
  padding-bottom: 15px;
}
#forum02.forum2026-02 .cont02 .cont {
  margin-bottom: 60px;
}
#forum02.forum2026-02 .cont02 .cont .img::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #1d9add;
  position: absolute;
  bottom: -20px;
  left: auto;
  right: -20px;
  box-shadow: -5px 5px 10px rgb(0 0 0 / 30%);
  z-index: -9;
}
#forum02.forum2026-02 .cont03 {
  padding: 0 0 50px;
}
#forum02.forum2026-02 .cont03 table:nth-of-type(1) {
  padding-bottom: 50px;
}
#forum02.forum2026-02 .cont03 .button {
  text-align: center;
  margin-bottom: 120px;
}
#forum02.forum2026-02 .cont03 .button a {
  display: inline-block;
  width: 400px;
  line-height: 1;
  padding: 15px 0;
  color: #fff;
  font-weight: bold;
  background: #0061b2;
}
#forum02.forum2026-02 .cont04 {
  padding: 0 0 100px;
}
#forum02.forum2026-02 .cont04 h3 {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 70px;
}
#forum02.forum2026-02 .cont04 h3::before {
  content: "CONTENT";
  display: block;
  font-weight: bold;
  color: #0099dd;
  font-size: 48px;
  line-height: 1.6;
}
#forum02.forum2026-02 .cont04 .cont {
  width: 1200px;
  margin: auto;
  position: relative;
  box-sizing: border-box;
  min-height: 400px;
  padding: 20px 0 0 630px;
}
#forum02.forum2026-02 .cont04 .cont:nth-of-type(n + 2) {
  margin-top: 100px;
}
#forum02.forum2026-02 .cont04 .cont:nth-of-type(2n) {
  padding: 20px 600px 0 70px;
}
#forum02.forum2026-02 .cont04 .cont:nth-of-type(2n-1)::before {
  position: absolute;
  z-index: -1;
  top: -270px;
  left: 50%;
  width: 115vw;
  min-width: 1400px;
  height: 100%;
  transform: translateX(-50%) skewY(-5deg);
  background: #e1f2fa;
  content: "";
}
#forum02.forum2026-02 .cont04 h4 {
  position: relative;
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
#forum02.forum2026-02 .cont04 h4::before {
  position: absolute;
  bottom: -32px;
  left: 0;
  content: "";
  width: 140px;
  height: 1px;
  background: #3ec4ff;
}
#forum02.forum2026-02 .cont04 h4 span {
  font-size: 20px;
  font-weight: bold;
}
#forum02.forum2026-02 .cont04 .cont .text01 {
  margin-top: 60px;
  line-height: 2;
  font-weight: bold;
  padding-right: 20px;
}
#forum02.forum2026-02 .cont04 .cont .img {
  position: absolute;
  top: 0;
  left: 20px;
  box-shadow: 0 0 20px rgb(0 0 0 / 10%);
}
#forum02.forum2026-02 .cont04 .cont:nth-of-type(2n) .img {
  left: auto;
  right: 20px;
}
#forum02.forum2026-02 .sns .fl h3 {
  line-height: 1.5;
  position: relative;
  font-size: 22px;
  text-align: left;
  padding: 0;
}


@media screen and (min-width: 431px) and (max-width: 768px) {
  #forum02.forum2026-02 .key {
    background: url(img/forum/forum2026-02-key_bg.png) no-repeat center / 100% 100%;
    width: auto;
  }
  #forum02.forum2026-02 .key h2 img {
    position: static;
    transform: none;
    max-width: 100%;
    height: auto;;
  }
  #forum02.forum2026-02 .cont01 .text01 {
    font-size: 32px;
  }
  #forum02.forum2026-02 .cont01 .text03 {
    font-size: 16px;
    padding: 20px 0 40px;
  }
   #forum02.forum2026-02 .cont01 ul {
    margin-bottom: 100px;
  }
  #forum02.forum2026-02 .cont02 .cont {
    padding: 0px 0 0 50%;
    margin-bottom: 50px;
  }
  #forum02.forum2026-02 .cont02 .cont:nth-of-type(2n) {
    padding: 0px 50% 0 20px;
  }
  #forum02.forum2026-02 .cont02 h4 {
    font-size: 24px;
  }
  #forum02.forum2026-02 .cont02 h4::before {
    bottom: -20px;
  }
  #forum02.forum2026-02 .cont02 h4 span {
    font-size: 14px;
    line-height: 1.3;
  }
  #forum02.forum2026-02 .cont02 .cont .text01 {
    font-size: 14px;
    margin-top: 40px;
  }
  #forum02.forum2026-02 .cont02 .cont .img {
    width: 40%;
    left: 20px;
  }
  #forum02.forum2026-02 .cont02 .cont:nth-of-type(2n) .img {
    right: 20px;
    left: auto;
  }
  #forum02.forum2026-02 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2026-02 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2026-02 .cont03 table:nth-of-type(1) {
    padding-bottom: 40px;
  }
  #forum02.forum2026-02 .cont04 h3 {
    padding-bottom: 50px;
  }
  #forum02.forum2026-02 .cont04 {
    padding-bottom: 120px;
  }
  #forum02.forum2026-02 .cont04 .cont {
    width: 100%;
    padding: 0px 0 0 46%;
    min-height: 230px;
    margin-bottom: 70px;
  }
  #forum02.forum2026-02 .cont04 .cont:last-of-type {
    margin: 0;
  }
  #forum02.forum2026-02 .cont04 .cont .text01 {
    font-size: 14px;
    margin-top: 40px;
  }
  #forum02.forum2026-02 .cont04 .cont:nth-of-type(2n) {
    padding: 0px 46% 0 20px;
  }
  #forum02.forum2026-02 .cont04 .cont:nth-of-type(n + 2) {
    margin-top: 70px;
  }
  #forum02.forum2026-02 .cont04 h4 {
    font-size: 18px;
  }
  #forum02.forum2026-02 .cont04 h4::before {
    bottom: -20px;
  }
  #forum02.forum2026-02 .cont04 h4 span {
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
    padding-bottom: 8px;
  }
  #forum02.forum2026-02 .cont04 .cont .img {
    width: 40%;
  }
  #forum02.forum2026-02 .cont04 .cont .img img {
    max-width: 100%;
    height: auto;
  }
  #forum02.forum2026-02 .sns .fl h3 {
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
  }
}

@media (max-width: 430px) {
  #forum02.forum2026-02 .key {
    background: url(img/forum/forum2026-02-key_bg.png) no-repeat center center / cover;
    padding: 15px 15px 0;
    width: auto;
    height: auto;
    min-height: 200px;
  }
  #forum02.forum2026-02 .key h2 img {
    position: static;
    transform: none;
    height: auto;
    width: 100%;
  }
  #forum02.forum2026-02 .cont01 h3 {
    font-size: 16px;
  }
  #forum02.forum2026-02 .cont01 .text01 {
    font-size: 26px;
  }
  #forum02.forum2026-02 .cont01 .text03 {
    font-size: 14px;
    padding: 20px 0 0;
    background: url(img/forum/forum_bg02.png) center center/contain no-repeat;
    background-size: 320px;
  }
  #forum02.forum2026-02 .cont01 .img-flex {
    padding: 0px 15px;
    box-sizing: border-box;
    display: block;
    width: 100%;
  }
  #forum02.forum2026-02 .cont01 .img-flex .img:nth-of-type(1) {
    margin-bottom: 20px;
  }
  #forum02.forum2026-02 .cont01 .img-flex img {
    width: 100%;
  }
  #forum02.forum2026-02 .cont01 .dwnload a {
    width: 320px;
  }
  #forum02.forum2026-02 .cont01 ul {
    margin-bottom: 80px;
  }
  #forum02.forum2026-02 .cont02 h3::before {
    font-size: 22px;
  }
  #forum02.forum2026-02 .cont02 {
    padding: 0 0 190px;
  }
  #forum02.forum2026-02 .cont02 h4 {
    font-size: 20px;
  }
  #forum02.forum2026-02 .cont02 h4 span {
    font-size: 13px;
    line-height: 1.4;
  }
  #forum02.forum2026-02 .cont02 h4::before {
    bottom: -25px;
  }
  #forum02.forum2026-02 .cont02 .cont {
    padding: 300px 10px 70px;
    margin-bottom: 0;
    padding-bottom: 0;
  }
  #forum02.forum2026-02 .cont02 .cont .text01 {
    margin: 45px 0 75px;
  }
  #forum02.forum2026-02 .cont02 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.forum2026-02 .cont02 .cont .img {
    top: 0;
    width: 400px;
    left: 52%;
    transform: translateX(-50%);
  }
  #forum02.forum2026-02 .cont02 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
  }
  #forum02.forum2026-02 .cont02 .cont .img::before {
    bottom: -10px;
    left: -10px;
  }
  #forum02.forum2026-02 .cont02 .cont:nth-of-type(2n) .img::before {
    bottom: -10px;
    right: -10px;
  }
  #forum02.forum2026-02 .cont02 .cont .img img {
    max-width: 100%;
    height: auto;
    box-shadow: 0 0 10px rgb(0 0 0 / 15%);
  }
  #forum02.forum2026-02 .cont03 {
    padding: 0 0 40px;
  }
  #forum02.forum2026-02 .cont03 table {
    padding: 0 0 50px;
  }
  #forum02.forum2026-02 .cont03 table:nth-of-type(1) {
    padding-bottom: 30px;
  }
  #forum02.forum2026-02 .cont03 table tr td {
    font-size: 16px;
  }
  #forum02.forum2026-02 .cont03 .button {
    margin-bottom: 80px;
  }


  #forum02.forum2026-02 .about_cont04 h3 {
    font-size: 20px;
    padding: 0 0 50px;
  }
  #forum02.forum2026-02 .cont04 .cont {
    width: 100%;
    padding: 290px 20px 0;
  }
  #forum02.forum2026-02 .cont04 .cont:nth-of-type(2n) {
    padding: 320px 10px 70px;
  }
  #forum02.forum2026-02 .cont04 .cont:nth-of-type(n + 2) {
    margin-top: 15px;
  }
  #forum02.forum2026-02 .cont04 .cont:last-of-type {
    padding: 290px 20px 0;
  }
  #forum02.forum2026-02 .cont04 h3 {
    font-size: 22px;
    line-height: 30px;
  }
  #forum02.forum2026-02 .cont04 h3::before {
    font-size: 35px;
  }
  #forum02.forum2026-02 .cont04 h4 {
    font-size: 18px;
  }
  #forum02.forum2026-02 .cont04 h4 span {
    font-size: 14px;
  }
  #forum02.forum2026-02 .cont04 h4::before {
    width: 100px;
    bottom: -15px;
  }
  #forum02.forum2026-02 .cont04 .cont .text01 {
    font-size: 14px;
    padding-right: 0;
    margin: 25px 0 70px;
  }
  #forum02.forum2026-02 .cont04 .cont:last-of-type .text01 {
    margin-bottom: 0;
  }
  #forum02.forum2026-02 .cont04 .cont .img {
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2026-02 .cont04 .cont:nth-of-type(2n) .img {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  #forum02.forum2026-02 .cont04 .cont .img img {
    width: auto;
    max-width: 400px;
    height: auto;
  }  
  #forum02.forum2026-02 .sns .fl h3 {
    width: 100%;
    text-align: center;
    font-size: 20px;
    margin-bottom: 40px;
  }
}


/*bookblock.css mazmotte*/

.bb-bookblock {
  width: 100%;
  padding-top: 62.65%;
  margin: 0 auto;
  position: relative;
  z-index: 100;
  -webkit-perspective: 1300px;
  perspective: 1300px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  text-align: center;
}
.bb-item {
  height: 100%;
}
.bb-page {
  position: absolute;
  height: 100%;
  top: 0;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
}

.bb-vertical .bb-page {
  width: 50%;
  left: 50%;
  -webkit-transform-origin: left center;
  transform-origin: left center;
}

.bb-horizontal .bb-page {
  width: 100%;
  top: 50%;
  -webkit-transform-origin: center top;
  transform-origin: center top;
}

.bb-page > div,
.bb-outer,
.bb-content,
.bb-inner {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bb-vertical .bb-content {
  width: 200%;
}

.bb-horizontal .bb-content {
  height: 200%;
}

.bb-page > div {
  width: 100%;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.bb-vertical .bb-back {
  -webkit-transform: rotateY(-180deg);
  transform: rotateY(-180deg);
}

.bb-horizontal .bb-back {
  -webkit-transform: rotateX(-180deg);
  transform: rotateX(-180deg);
}

.bb-outer {
  width: 100%;
  overflow: hidden;
  z-index: 999;
}

.bb-overlay,
.bb-flipoverlay {
  background-color: rgba(0, 0, 0, 0.7);
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.bb-flipoverlay {
  background-color: rgba(0, 0, 0, 0.2);
}

.bb-bookblock.bb-vertical > div.bb-page:first-child,
.bb-bookblock.bb-vertical > div.bb-page:first-child .bb-back {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

.bb-bookblock.bb-horizontal > div.bb-page:first-child,
.bb-bookblock.bb-horizontal > div.bb-page:first-child .bb-back {
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg);
}

/* Content display */
.bb-content {
  background: #fff;
}

.bb-vertical .bb-front .bb-content {
  left: -100%;
}

.bb-horizontal .bb-front .bb-content {
  top: -100%;
}

/* Flipping classes */
.bb-vertical .bb-flip-next,
.bb-vertical .bb-flip-initial {
  -webkit-transform: rotateY(-180deg);
  transform: rotateY(-180deg);
}

.bb-vertical .bb-flip-prev {
  -webkit-transform: rotateY(0deg);
  transform: rotateY(0deg);
}

.bb-horizontal .bb-flip-next,
.bb-horizontal .bb-flip-initial {
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg);
}

.bb-horizontal .bb-flip-prev {
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}

.bb-vertical .bb-flip-next-end {
  -webkit-transform: rotateY(-15deg);
  transform: rotateY(-15deg);
}

.bb-vertical .bb-flip-prev-end {
  -webkit-transform: rotateY(-165deg);
  transform: rotateY(-165deg);
}

.bb-horizontal .bb-flip-next-end {
  -webkit-transform: rotateX(15deg);
  transform: rotateX(15deg);
}

.bb-horizontal .bb-flip-prev-end {
  -webkit-transform: rotateX(165deg);
  transform: rotateX(165deg);
}

.bb-item {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  background: #fff;
}

/* No JS */
.no-js .bb-bookblock,
.no-js ul.bb-custom-grid li {
  width: auto;
  height: auto;
}

.no-js .bb-item {
  display: block;
  position: relative;
}

/* ボタン */

.maz-center {
  margin-top: 10px;
  text-align: center;
  line-height: 1;
}

.bb-custom-icon-arrow-left {
  display: inline-block;
  height: 40px;
  text-align: center;
  text-decoration: none;
  outline: none;
  background-color: #a80d2a;
  border: 1px solid #a80d2a;
  color: #fff;
  line-height: 20px;
  font-size: 20px;
  font-weight: bold;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  width: 40px;
  -webkit-border-radius: 20px; /* width,heightの半分 */
  -moz-border-radius: 20px;
  border-radius: 20px;
  margin-top: 15px;
  margin-right: 0;
  margin-bottom: 20px;
  margin-left: 0;
  padding-top: 10px;
  padding-bottom: 10px;
}
.bb-custom-icon-arrow-left img {
  vertical-align: middle;
  margin: -3px 5px 0 0;
}
.bb-custom-icon-arrow-left:hover {
  background-color: #acace3;
  border-color: #acace3;
  text-decoration: none;
  color: #fff;
}
.bb-custom-icon-arrow-left::before,
.bb-custom-icon-arrow-left::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
}
.bb-custom-icon-arrow-left,
.bb-custom-icon-arrow-left::before,
.bb-custom-icon-arrow-left::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.bb-custom-icon-arrow-right {
  display: inline-block;
  height: 40px;
  text-align: center;
  text-decoration: none;
  outline: none;
  background-color: #a80d2a;
  border: 1px solid #a80d2a;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  width: 40px;
  -webkit-border-radius: 20px; /* width,heightの半分 */
  -moz-border-radius: 20px;
  border-radius: 20px;
  margin-top: 15px;
  margin-right: 0;
  margin-bottom: 20px;
  margin-left: 0;
  padding-top: 10px;
  padding-bottom: 10px;
}
.bb-custom-icon-arrow-right img {
  vertical-align: middle;
  margin: -3px 5px 0 0;
}
.bb-custom-icon-arrow-right:hover {
  background-color: #acace3;
  border-color: #acace3;
  text-decoration: none;
  color: #fff;
}
.bb-custom-icon-arrow-right::before,
.bb-custom-icon-arrow-right::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: "";
}
.bb-custom-icon-arrow-right,
.bb-custom-icon-arrow-right::before,
.bb-custom-icon-arrow-right::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 431px) and (max-width: 768px) {
.maz-center {
  padding-top: 50px;
}
}

@media screen and (max-width: 431px) {
.bb-custom-icon-arrow-right, .bb-custom-icon-arrow-left {
  font-size: 17px;
  padding-top: 6px;
  line-height: 1;
}
}

/**
 * Swiper 8.2.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 29, 2022
 */

@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-3d,
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(
    to left,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.5),
    rgba(0, 0, 0, 0)
  );
}
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal
  > .swiper-wrapper
  > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}
:root {
  --swiper-navigation-size: 44px;
}
.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}
.swiper-button-next:after,
.swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}
.swiper-button-lock {
  display: none;
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%;
}
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(
    --swiper-pagination-bullet-width,
    var(--swiper-pagination-bullet-size, 8px)
  );
  height: var(
    --swiper-pagination-bullet-height,
    var(--swiper-pagination-bullet-size, 8px)
  );
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical
  > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic
  .swiper-pagination-bullet,
.swiper-vertical
  > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
  .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets
  .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal
  > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal
  > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic
  .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic
  .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}
.swiper-horizontal.swiper-rtl
  > .swiper-pagination-bullets-dynamic
  .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical
  > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}
.swiper-horizontal
  > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}
.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.swiper-slide-zoomed {
  cursor: move;
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active,
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube {
  overflow: visible;
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-next + .swiper-slide,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-flip {
  overflow: visible;
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-flip .swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}
.swiper-cards {
  overflow: visible;
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}