@charset "UTF-8";
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul[role=list],
ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

img,
picture {
  max-width: 100%;
  display: block;
}

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

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
*::before,
*::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* ============================== reset */
h1:not(.site-title)::before,
h2::before {
  display: none;
}


/* ============================== common */
html {
  font-size: 62.5%; /*1.0rem=10px*/
}

body {
  color: #000;
  font-family: YakuHanJP_Noto, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.6;
  width: 100%;
}
@media print, screen and (min-width: 861px) {
  body:not(.home) {
    padding-top: 85px;
  }
}

body:lang(ja), button:lang(ja), input:lang(ja), select:lang(ja), optgroup:lang(ja), textarea:lang(ja), .author-description .author-link:lang(ja), .comment-metadata:lang(ja), .comment-reply-link:lang(ja), .comments-title:lang(ja), .comment-author .fn:lang(ja), .discussion-meta-info:lang(ja), .entry-meta:lang(ja), .entry-footer:lang(ja), .main-navigation:lang(ja), .no-comments:lang(ja), .not-found .page-title:lang(ja), .error-404 .page-title:lang(ja), .post-navigation .post-title:lang(ja), .page-links:lang(ja), .page-description:lang(ja), .pagination .nav-links:lang(ja), .sticky-post:lang(ja), .site-title:lang(ja), .site-info:lang(ja), #cancel-comment-reply-link:lang(ja), h1:lang(ja), h2:lang(ja), h3:lang(ja), h4:lang(ja), h5:lang(ja), h6:lang(ja), .page-title:lang(ja), blockquote cite:lang(ja), table:lang(ja), .button:lang(ja), input:lang(ja)[type=button], input:lang(ja)[type=reset], input:lang(ja)[type=submit], .comment-navigation .nav-previous:lang(ja), .comment-navigation .nav-next:lang(ja), .comment-list .pingback .comment-body:lang(ja), .comment-list .trackback .comment-body:lang(ja), .comment-list .pingback .comment-body .comment-edit-link:lang(ja), .comment-list .trackback .comment-body .comment-edit-link:lang(ja), .comment-form .comment-notes:lang(ja), .comment-form label:lang(ja), .widget_archive ul li:lang(ja), .widget_categories ul li:lang(ja), .widget_meta ul li:lang(ja), .widget_nav_menu ul li:lang(ja), .widget_pages ul li:lang(ja), .widget_recent_comments ul li:lang(ja), .widget_recent_entries ul li:lang(ja), .widget_rss ul li:lang(ja), .widget_tag_cloud .tagcloud:lang(ja), .widget_calendar .calendar_wrap .wp-calendar-nav:lang(ja), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ja), .entry .entry-content .wp-block-archives li > a:lang(ja), .entry .entry-content .wp-block-categories li > a:lang(ja), .entry .entry-content .wp-block-latest-posts li > a:lang(ja), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ja), .entry .entry-content .wp-block-verse:lang(ja), .entry .entry-content .has-drop-cap:lang(ja):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ja), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ja), .entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ja), .entry .entry-content .wp-block-cover-image h2:lang(ja), .entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ja), .entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ja), .entry .entry-content .wp-block-cover h2:lang(ja), .entry .entry-content .wp-block-audio figcaption:lang(ja), .entry .entry-content .wp-block-video figcaption:lang(ja), .entry .entry-content .wp-block-image figcaption:lang(ja), .entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ja), .entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ja), .entry .entry-content .wp-block-file:lang(ja), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ja), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ja), .wp-caption-text:lang(ja), .gallery-caption:lang(ja) {
  font-family: YakuHanJP_Noto, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.button,
button,
input[type=button],
input[type=reset],
input[type=submit] {
  background: #406398;
}
.button:hover,
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  background: #c7a034;
}

a {
  -webkit-transition-duration: 0s;
          transition-duration: 0s;
}
a:hover {
  text-decoration: none;
}

img {
  vertical-align: middle;
}

svg.icon {
  display: inline-block;
  font-size: 1em;
  fill: currentColor;
  position: relative;
  top: -0.1em;
  stroke-width: 0;
  vertical-align: middle;
  height: 1em;
  width: 1em;
}

.cf::after {
  clear: both;
  content: "";
  display: block;
}

.fw_thin {
  font-weight: 100;
}
.fw_light {
  font-weight: 300;
}
.fw_regular {
  font-weight: 400;
}
.fw_med {
  font-weight: 500;
}
.fw_bold {
  font-weight: 700;
}
.fw_black {
  font-weight: 900;
}

.fc_red {
  color: #ff0000;
}
.fc_brown {
  color: #c7a034;
}

.wrap_1000 {
  margin-left: auto;
  margin-right: auto;
  width: 1000px;
}

.wrap_615 {
  margin-left: auto;
  margin-right: auto;
  width: 615px;
}

@media print, screen and (min-width: 1331px) {
  .spOnly {
    display: none;
  }
  .hamburger {
    display: none;
  }
}
/* ============================== header */
header:not([class]) {
  background: #fff;
  position: fixed;
  left: 0;
  top: 0;
  height: 84px;
  width: 100%;
  z-index: 10;
}

#hdr_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 861px) {
  #hdr_wrapper {
    height: 100%;
  }
}

/*ロゴ周り*/
.hdr_logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 25px;
}
.hdr_logo picture img {
  width: auto;
  height: 52px;
}
.hdr_logo .hdr_logo_en {
  background: url(../images/main/logo_en_color.svg) no-repeat center center;
  background-size: contain;
  content: "";
  display: inline-block;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  height: 45px;
  width: 145px;
}
.hdr_logo .hdr_logo_en:hover {
  opacity: 0.8;
}
.hdr_logo .hdr_description {
  color: #fff;
  color: #406398;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.2;
  margin-left: 18px;
}
.hdr_logo .hdr_description .stext {
  display: block;
  font-size: 1rem;
  margin-top: 5px;
}

/*ナビゲーション周り*/
.main-navigation {
  margin-top: 0;
}

/*ナビ上段*/
.main-navigation .nav_upper-ctnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 860px) {
  .main-navigation .nav_upper-ctnr {
    display: none;
  }
}

.main-navigation .links_upper-ctnr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  list-style: none;
  margin: 0;
  padding: 0;
}
.main-navigation .links_upper-ctnr li {
  background-color: #eceff5;
  font-size: 1.4rem;
  font-weight: 700;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.main-navigation .links_upper-ctnr li:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.main-navigation .links_upper-ctnr li a {
  color: #fff;
  display: block;
  letter-spacing: 0.25rem;
  line-height: 1;
  padding: 10px 15px;
}
.main-navigation .links_upper-ctnr li.items_setsumeikai {
  background-color: #406398;
}
.main-navigation .links_upper-ctnr li.items_login {
  background-color: #c7a034;
}

/*下段*/
.main-gmenu {
  list-style: none;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 0;
  padding: 10px 16px 0;
}
.main-gmenu .items_gmenu {
  font-size: 1.5rem;
  font-weight: 400;
}
.main-gmenu .items_gmenu:nth-of-type(n+2) {
  margin-left: 0.1em; /* 変更（20241216）元3em */
}
.main-gmenu .items_gmenu a {
  color: #000;
  display: inline-block;
}
.main-gmenu .items_gmenu a:hover {
  color: #406398;
}
.main-gmenu .items_gmenu a:hover .hover_item {
  border-bottom: 2px solid #406398;
  position: relative;
}
.main-gmenu .items_gmenu a:focus {
  text-decoration: none;
}
@media print, screen and (min-width: 1331px) {
  .main-gmenu .items_gmenu.has-child {
    position: relative;
  }
  .main-gmenu .items_gmenu.has-child:hover .hover_item::after {
    content: "▼";
    display: block;
    font-size: 1.3rem;
    line-height: 1;
    position: absolute;
    bottom: calc(-1.3rem - 2px);
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    text-align: center;
  }
  .main-gmenu .items_gmenu.has-child .toggle {
    display: none;
  }
}

@media print, screen and (min-width: 1331px) {
  .gmenu_child {
    list-style: none;
    padding-left: 0;
    background: rgba(64, 99, 152, 0.8);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: fixed;
    left: 0;
    top: 85px;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    visibility: hidden;
    opacity: 0;
    padding: 32px 30px;
    width: 100%;
    z-index: 5;
  }
  .gmenu_child_nomal {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .gmenu_child_nomal .items_gmenu_child:nth-of-type(n+2) {
    margin-top: 7px;
  }
  .gmenu_child_nomal .items_gmenu_child a {
    display: block;
    background: #fff;
    color: #406398;
    padding: 4px 12px;
    width: 229px;
  }
  .gmenu_child_nomal .items_gmenu_child a:hover {
    background: #c7a034;
    color: #fff;
  }
  .gmenu_child_large {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-left: calc((100% - 600px) / 2);
    padding-right: calc((100% - 600px) / 2);
  }
  .gmenu_child_large a {
    width: 100%;
  }
  .gmenu_child_large .items_gmenu_child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-preferred-size: calc((100% - 23px) / 2);
        flex-basis: calc((100% - 23px) / 2);
  }
  .gmenu_child_large .items_gmenu_child:nth-child(n+3) {
    margin-top: 23px;
  }
  .gmenu_child_large .items_gmenu_child > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .gmenu_child_large .items_large {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
  }
  .gmenu_child_large .items_large:hover .items_l_title {
    background: #c7a034;
    color: #fff;
  }
  .gmenu_child_large .items_large:hover .items_l_cnt {
    background: #fff;
    color: #000;
  }
  .gmenu_child_large .items_l_title {
    background: #e5e5e5;
    color: #406398;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.2;
    padding: 10px 12px;
  }
  .gmenu_child_large .items_l_title .stxt {
    font-size: 1.5rem;
    display: block;
  }
  .gmenu_child_large .items_l_cnt {
    background: #e5e5e5;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-top: 2px;
    padding: 10px 13px;
  }
  .gmenu_child_large .items_l_cnt .list_items_l_cnt {
    list-style: none;
    padding-left: 0;
  }
  .gmenu_child_large .items_l_cnt .list_items_l_cnt .items_list_items_l_cnt {
    font-size: 1.3rem;
    line-height: 1.9;
    padding-left: 1.25em;
    position: relative;
  }
  .gmenu_child_large .items_l_cnt .list_items_l_cnt .items_list_items_l_cnt::before {
    content: "▲";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  .has-child:hover > .gmenu_child,
.has-child:active > .gmenu_child {
    visibility: visible;
    opacity: 1;
  }
}
/*サイド追従メニュー*/
.fixed_menu {
  list-style: none;
  padding-left: 0;
  display: inline-block;
  margin: 0;
  position: fixed;
  right: -248px;
  top: 160px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 99;
}
.fixed_menu:hover {
  right: 0;
}
.fixed_menu .items_fmenu > a {
  background: #406398;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 16px 90px 16px 15px;
}
.fixed_menu .items_fmenu > a:hover {
  background: #c7a034;
}
.fixed_menu .items_fmenu .icon {
  font-size: 20px;
}
.fixed_menu .items_fmenu .fmenu_text {
  margin-left: 30px;
}

/* ============================== common item */
main {
  position: relative;
}
main article a:not([class]) {
  color: #000;
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  padding-bottom: 5px;
}
main article a:not([class]):hover {
  border-bottom: none;
}

.entry .entry-content a:not([class]) {
  border-bottom: none;
  padding-bottom: 0;
}

.btn_wrapper {
  text-align: center;
}

.btn_generic,
.btn_generic2 {
  background-color: #c7a034;
  color: #fff;
  display: inline-block;
  font-size: 2rem;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  padding: 10px 30px 10px 10px;
  position: relative;
  text-align: center;
}
.btn_generic::after,
.btn_generic2::after {
  content: ">";
  line-height: 1;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn_generic:visited,
.btn_generic2:visited {
  color: #fff;
}
.btn_generic:hover,
.btn_generic2:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.pagetop_wrap {
  position: relative;
  height: 60px;
}

.pagetop {
  background: #406398;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  height: 60px;
  width: 60px;
}
.pagetop img {
  height: auto;
  width: 27px;
}
.pagetop:hover {
  opacity: 0.8;
}

main > .pagetop {
  display: none;
}

/* ============================== footer */
footer {
  background-color: #fff;
}

.foot_line {
  padding-bottom: 60px;
  text-align: center;
}
.foot_line a {
  display: inline-block;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.foot_line a:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.foot_upper-cnt {
  background: #f1f1f1;
  text-align: center;
}
.foot_upper-cnt p {
  color: #c7a034;
  line-height: 1.1;
  font-size: 2.9rem;
  font-weight: 700;
  padding: 11px 20px 12px;
}
.foot_upper-cnt p span {
  display: inline-block;
}
.foot_upper-cnt p span::first-letter {
  color: #406398;
}
.foot_upper-cnt p span:nth-of-type(n+2) {
  margin-left: 0.5em;
}

.foot_between-cnt {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 30px;
  padding-top: 45px;
}

.school_info .school_copy {
  color: #c7a034;
  font-size: 2rem;
  font-weight: 700;
}
.school_info .foot_logo_ja {
  margin-top: 17px;
  height: auto;
  width: 350px;
}
.school_info .school_info_s-text {
  font-size: 1.2rem;
  line-height: 1.6;
  margin-top: 17px;
}

.foot_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.foot_nav a {
  color: #406398;
}

.fnav_cnt {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.fnav_cnt .items_fnav {
  font-size: 1.3rem;
  font-weight: 700;
}
.fnav_cnt .items_fnav > a {
  border-bottom: 1px dotted #c7a034;
  display: block;
  padding-bottom: 5px;
}

.fnav_child {
  list-style: none;
  padding-left: 0;
  margin-top: 10px;
}
.fnav_child .items_fnav_child {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.3;
  padding-left: 0.6em;
  position: relative;
}
.fnav_child .items_fnav_child::before {
  color: #406398;
  content: "・";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.fnav_child .items_fnav_child:nth-of-type(n+2) {
  margin-top: 10px;
}

.fnav_has-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.fnav_has-child .items_fnav {
  margin-right: 30px;
}
.fnav_has-child .items_fnav a {
  padding-right: 5px;
}

.fnav_no-child:nth-of-type(2) {
  margin-right: 30px;
}
.fnav_no-child .items_fnav:nth-of-type(n+2) {
  margin-top: 10px;
}
.fnav_no-child .items_fnav a {
  padding-right: 5px;
  min-width: 100px;
}
.fnav_no-child:nth-of-type(3) .items_fnav:last-child a {
  color: #CCC;
  pointer-events: none;
}

.foot_links_sns {
  list-style: none;
  padding-left: 0;
  margin: 20px 0 0;
  text-align: right;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}
.foot_links_sns .items_sns {
  display: inline-block;
  line-height: 1;
}
.foot_links_sns .items_sns:nth-child(n+2) {
  margin-left: 10px;
}
.foot_links_sns .items_sns a {
  color: #b2b2b2;
  display: inline-block;
  line-height: 1;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.foot_links_sns .items_sns a svg {
  font-size: 1.9rem;
}
.foot_links_sns .items_sns a:hover {
  opacity: 0.8;
}

.foot_bottom-cnt {
  background: #406398;
  color: #fff;
  text-align: center;
  padding: 10px;
}
.foot_bottom-cnt small {
  font-size: 1.2rem;
}
.foot_bottom-cnt small a {
  color: #fff;
  text-decoration: underline;
}
.foot_bottom-cnt small a:hover {
  text-decoration: none;
}

/* ============================== common subpage */
/* ----- HERO ----- */
#sub-hero {
  position: relative;
  height: 33.3333333333vw;
}
#sub-hero .hero_h1 {
  color: #fff;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}

.sub-hero_bg {
  overflow: hidden;
  position: fixed;
  left: 0;
  top: 85px;
  z-index: -1;
}
.sub-hero_bg::after {
  background-color: rgba(69, 190, 204, 0.5);
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}
.sub-hero_bg img {
  position: static;
  height: 33.3333333333vw;
  width: 300vh;
  min-height: 100%;
  min-width: 100%;
  z-index: -1;
}

/* ----- NAV ----- */
.sub-navigation {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.wrapp_snav {
  list-style: none;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  width: 1000px;
}

.item_snav {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  text-align: center;
}
.item_snav:nth-of-type(n+2) {
  border-left: 1px solid #fff;
}
.item_snav a {
  background-color: rgba(255, 255, 255, 0.8);
  color: #000;
  display: block;
  padding: 4px;
}
.item_snav:hover a {
  background-color: #c7a034;
  color: #fff;
}

/* ----- CONTENTS ----- */
article.type-subpage {
  background: #fff;
  padding: 100px 0 70px;
}
article.type-subpage .cover {
  background-size: cover;
  margin-bottom: 50px;
  position: relative;
  height: 33.3333333333vw;
  width: 100%;
}
@media print, screen and (min-width: 861px) {
  article.type-subpage .cover {
    padding-left: calc((100% - 1000px) / 2);
    padding-right: calc((100% - 1000px) / 2);
  }
}
article.type-subpage .cover_copy {
  color: #fff;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.3;
  position: absolute;
  left: 50%;
  top: 50%;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
}
article.type-subpage .columns-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
:where(article.type-subpage .columns-2 > *) {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
}
article.type-subpage .columns-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
:where(article.type-subpage .columns-4 > *) {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
}
article.type-subpage .text_full-column {
  line-height: 2;
  text-align: center;
}
article.type-subpage .subpage_dl_generic > dt {
  line-height: 1.7;
  padding-left: 1.15em;
  position: relative;
}
article.type-subpage .subpage_dl_generic > dt::before {
  content: "■";
  color: #c7a034;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
article.type-subpage .subpage_dl_generic > dt:not(:first-of-type) {
  margin-top: 30px;
}
article.type-subpage .subpage_dl_generic > dd {
  line-height: 1.5;
  margin-top: 5px;
}
article.type-subpage .attention {
  color: #ff0000;
  text-align: center;
}
article.type-subpage .text_for-member {
  font-size: 1.2rem;
  margin-top: 20px;
  text-align: center;
}

.type-subpage .title_h2,
.archive_cnt-area .title_h2 {
  margin-bottom: 30px;
  text-align: center;
}
.type-subpage .title_h2 .h2_subtext,
.archive_cnt-area .title_h2 .h2_subtext {
  color: #c7a034;
  display: block;
  font-size: 2rem;
  margin-bottom: 9px;
}
.type-subpage .title_h2 .h2_m-text,
.archive_cnt-area .title_h2 .h2_m-text {
  display: block;
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.25;
  position: relative;
}
.type-subpage .title_h2 .h2_s-text,
.archive_cnt-area .title_h2 .h2_s-text {
  color: #406398;
  display: block;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.2rem;
  padding-top: 5px;
}

/* ----- ARCHIVE ----- */
.list_news {
  list-style: none;
  padding-left: 0;
  margin-bottom: 0;
  margin-top: 20px;
}

.post_news,
main article .post_news {
  font-size: 1.7rem;
  line-height: 1.2;
}
.post_news:nth-of-type(2n+1),
main article .post_news:nth-of-type(2n+1) {
  background-color: #e2e8f0;
}
.post_news:nth-of-type(2n),
main article .post_news:nth-of-type(2n) {
  background-color: #f7f1e1;
}
.post_news:nth-of-type(n+2),
main article .post_news:nth-of-type(n+2) {
  margin-top: 12px;
}
.post_news a,
main article .post_news a {
  border-bottom: none;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  padding: 25px 50px;
}
.post_news a:focus,
main article .post_news a:focus {
  text-decoration: none;
}
.post_news a time,
main article .post_news a time {
  color: #406398;
  -ms-flex-preferred-size: 5.15em;
      flex-basis: 5.15em;
}
.post_news a .post_news_title,
main article .post_news a .post_news_title {
  margin-left: 50px;
}
.post_news:hover,
main article .post_news:hover {
  opacity: 0.8;
}

/* ============================== privacy-policy */
.privacy-policy main {
  padding: 100px 0 170px;
}
.privacy-policy main .wrap_1000 {
  background: #f1f1f1;
  padding: 80px 100px;
}
.privacy-policy h3 {
  font-size: 3rem;
  margin-bottom: 32px;
}
.privacy-policy h4 {
  font-size: 1.7rem;
  margin: 50px 0 32px;
}

/* ============================== 404 */
.error-404,
.not-found {
  margin: 0 auto;
  padding: 100px 0 170px;
  width: 1000px;
}
.error-404 .search-form,
.not-found .search-form {
  margin-top: 10px;
}

/* ============================== for SP:common */
@media screen and (max-width: 860px) {
  .pcOnly {
    display: none;
  }
  body {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.6;
  }
  img {
    height: auto;
    width: 100%;
  }
}
/* ----- header ----- */
@media screen and (max-width: 1330px) {
  header:not([class]) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 10px;
    padding-right: 5px;
    height: 65px;
  }
  #hdr_wrapper {
    width: 100%;
  }
  .hdr_logo {
    padding: 0;
  }
  .hdr_logo picture img {
    width: auto;
    height: 44px;
  }
  .hdr_logo .hdr_logo_en {
    height: auto;
    height: 35px;
    width: 112px;
  }
  .hdr_logo .hdr_description {
    font-size: 1.1rem;
    margin-left: 10px;
    padding-left: 11px;
    position: relative;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
  }
  .hdr_logo .hdr_description::before {
    border-left: 1px solid rgba(152, 133, 117, 0.5);
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    height: 40px;
    width: 1px;
  }
  .hdr_logo .hdr_description .stext {
    margin-top: 3px;
  }
  .hamburger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    text-align: center;
    height: 45px;
    width: 45px;
    z-index: 100;
  }
  .hamburger_line {
    background: #000;
    display: block;
    position: absolute;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    height: 1px;
    width: 32px;
  }
  .hamburger_line:nth-child(1) {
    top: 10px;
  }
  .hamburger_line:nth-child(2) {
    top: 50%;
    -webkit-transform: translatey(-50%);
            transform: translatey(-50%);
  }
  .hamburger_line:nth-child(3) {
    bottom: 10px;
  }
  .main-gmenu {
    background-color: #406398;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    overflow: auto;
    padding: 65px 0 30px;
    position: fixed;
    right: 0;
    top: 0;
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    -webkit-transition: -webkit-transform 0.5s ease-in-out;
    transition: -webkit-transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out;
    transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
    height: calc(100vh - 50px);
    width: calc(100% - 55px);
    z-index: 99;
  }
  .main-gmenu .items_gmenu:nth-of-type(n+2) {
    margin-left: 0;
    margin-top: 3px;
  }
  .main-gmenu .items_gmenu a,
.main-gmenu .items_gmenu .title_item_gmenu {
    color: #fff;
    display: block;
    padding: 12px 25px;
    padding-right: 54px;
    position: relative;
  }
  .main-gmenu .items_gmenu a:hover {
    color: #fff;
  }
  .main-gmenu .items_gmenu.has-child {
    position: relative;
  }
  .main-gmenu .items_gmenu.has-child .toggle::after {
    background: url(../images/main/ico_arrow02.svg) no-repeat center, transparent;
    background-size: 12px;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    height: 51px;
    width: 54px;
  }
  .main-gmenu .items_gmenu.has-child .toggle.close:after {
    background: url(../images/main/ico_arrow03.svg) no-repeat center, rgba(255, 255, 255, 0.65);
    background-size: 12px;
  }
  .main-gmenu .items_gmenu.has-child a:hover {
    color: #fff;
  }
  .gmenu_child {
    display: none;
    list-style: none;
    padding-left: 0;
  }
  .gmenu_child .items_gmenu_child {
    background: rgba(255, 255, 255, 0.65);
    color: #406398;
    margin-top: 3px;
  }
  .gmenu_child .items_gmenu_child a {
    color: #406398;
    padding-right: 25px;
  }
  .gmenu_child.gmenu_child_large .items_l_title {
    font-weight: 400;
  }
  .gmenu_child.gmenu_child_large .items_l_title .stxt {
    display: none;
  }
  .gmenu_child.gmenu_child_large .items_l_cnt {
    display: none;
  }
  body.is-open header {
    background-color: transparent;
  }
  body.is-open header .hdr_logo .hdr_logo_en {
    background: url(../images/main/logo_en_wh.svg) no-repeat center center;
  }
  body.is-open header .hdr_logo .hdr_description {
    color: #fff;
  }
  body.is-open header .hdr_logo .hdr_description::before {
    border-color: rgba(255, 255, 255, 0.5);
  }
  body.is-open main::after {
    background: rgba(0, 0, 0, 0.5);
    content: "";
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100%;
  }
  body.is-open .hamburger_line {
    background-color: #fff;
  }
  body.is-open .hamburger_line:nth-child(1) {
    top: 50%;
    -webkit-transform: rotate(45deg) translatey(-50%);
            transform: rotate(45deg) translatey(-50%);
  }
  body.is-open .hamburger_line:nth-child(2) {
    width: 0;
  }
  body.is-open .hamburger_line:nth-child(3) {
    top: 50%;
    -webkit-transform: rotate(-45deg) translatey(-50%);
            transform: rotate(-45deg) translatey(-50%);
  }
  body.is-open .main-gmenu {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
/*サイド追従メニュー*/
@media screen and (max-width: 860px) {
  .fixed_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    bottom: 0;
    right: auto;
    top: auto;
    height: 56px;
    width: 100%;
  }
  .fixed_menu .items_fmenu {
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
  }
  .fixed_menu .items_fmenu > a {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 5px;
    height: 100%;
  }
  .fixed_menu .items_fmenu > a.links_member {
    background: #c7a034;
    font-size: 14px;
    font-size: 3.7333333333vw;
    letter-spacing: -0.1rem;
    padding: 0;
  }
  .fixed_menu .items_fmenu .icon {
    top: 0;
  }
  .fixed_menu .items_fmenu .fmenu_text {
    display: none;
  }
}
/* ----- footer ----- */
@media screen and (max-width: 860px) {
  footer {
    margin-bottom: 84px;
  }
  .foot_line {
    padding-bottom: 50px;
    margin: 0 auto;
    width: 72vw;
  }
  .pagetop_wrap {
    height: 8vw;
  }
  .pagetop {
    height: 8vw;
    width: 8vw;
  }
  .pagetop img {
    width: 60%;
  }
  .foot_upper-cnt p {
    font-size: 1.4rem;
    padding: 6px 20px 7px;
  }
  .foot_between-cnt {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 20px 2rem 25px;
    position: relative;
  }
  .foot_nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
  }
  .fnav_cnt:first-child {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  .fnav_cnt:nth-child(n+2) {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    margin-right: 0;
    margin-top: 45px;
  }
  .fnav_has-child .items_fnav {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    margin-right: 0;
  }
  .fnav_has-child .items_fnav:nth-child(2) {
    padding-left: 5px;
  }
  .fnav_has-child .items_fnav a {
    border: none;
  }
  .fnav_no-child:nth-of-type(3) {
    padding-left: 5px;
  }
  .fnav_no-child .items_fnav:nth-of-type(n+2) {
    margin-top: 5px;
  }
  .fnav_cnt .items_fnav {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .fnav_cnt .items_fnav a {
    padding-bottom: 2px;
  }
  .fnav_child {
    border-top: 1px dotted #c7a034;
    margin-top: 0;
    padding-top: 10px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 8.5em;
  }
  .school_info {
    margin-top: 35px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .school_info .school_copy {
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
  .school_info .foot_logo_ja {
    margin-top: 10px;
    width: 46.6666666667vw;
  }
  .school_info .school_info_s-text {
    font-size: 10px;
    font-size: 2.6666666667vw;
    line-height: 1.3;
    margin-top: 15px;
  }
  .foot_links_sns {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    position: absolute;
    right: 2rem;
    bottom: 15px;
  }
  .foot_links_sns .items_sns a svg {
    font-size: 2rem;
  }
  .foot_bottom-cnt {
    padding: 5px;
  }
  .foot_bottom-cnt small {
    font-size: 1rem;
    display: inline-block;
  }
}
/* ----- main > common ----- */
@media screen and (max-width: 860px) {
  main {
    margin-top: 65px;
    overflow-x: hidden;
  }
  .wrap_1000 {
    width: 100%;
  }
  .wrap_615 {
    width: 100%;
  }
}
@media screen and (max-width: 860px) {
  /* お知らせ：お知らせ一覧ボタン以下（ボタン＋リスト）に左右余白 */
  #news .wrap_1000 {
    box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 860px) {
  .post_news,
main article .post_news {
    font-size: 1rem;
  }
  .post_news:nth-of-type(n+2),
main article .post_news:nth-of-type(n+2) {
    margin-top: 8px;
  }
  .post_news a,
main article .post_news a {
    padding: 14px 6.25%;
  }
  .post_news a .post_news_title,
main article .post_news a .post_news_title {
    margin-left: 25px;
  }
}
@media screen and (max-width: 860px) {
  .btn_generic,
.btn_generic2 {
    font-size: 15px;
    font-size: 4vw;
    padding: 14px 3rem;
    width: 100%;
  }
  .btn_generic::after,
.btn_generic2::after {
    font-size: 25px;
    font-size: 6.6666666667vw;
    right: 20px;
  }
}
/* ----- main > subpage ----- */
/* ----- HERO ----- */
@media screen and (max-width: 860px) {
  #sub-hero {
    aspect-ratio: 375/392;
    height: 100%;
  }
  #sub-hero .hero_h1 {
    font-size: 35px;
    font-size: 9.3333333333vw;
  }
  .sub-hero_bg {
    top: 65px;
  }
  .sub-hero_bg img {
    aspect-ratio: 375/392;
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
  }
}
/* ----- NAV ----- */
@media screen and (max-width: 860px) {
  .sub-navigation {
    left: auto;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    width: 100%;
  }
  .wrapp_snav {
    width: auto;
  }
  .item_snav {
    font-size: 10px;
    font-size: 2.6666666667vw;
    letter-spacing: -0.04rem;
    line-height: 1.2;
  }
  .item_snav a {
    padding: 6px 0;
    height: 100%;
  }
}
/* ----- CONTENTS ----- */
@media screen and (max-width: 860px) {
  article a:not([class]) {
    padding-bottom: 4px;
  }
  article.type-subpage {
    padding-top: 30px;
  }
  :where(article.type-subpage > section) {
    padding: 70px 2rem 0;
  }
  :where(article.type-subpage > section):first-of-type {
    padding-top: 0;
  }
  .type-subpage .title_h2,
.archive .title_h2 {
    margin-bottom: 20px;
  }
  .type-subpage .title_h2 .h2_m-text,
.archive .title_h2 .h2_m-text {
    font-size: 30px;
    font-size: 8vw;
    line-height: 1.3;
  }
  .type-subpage .title_h2 .h2_m-text::before,
.archive .title_h2 .h2_m-text::before {
    max-width: 236px;
  }
  .type-subpage .title_h2 .h2_s-text,
.archive .title_h2 .h2_s-text {
    font-size: 25px;
    font-size: 6.6666666667vw;
    letter-spacing: 0.1rem;
    padding-top: 0;
  }
  article.type-subpage .cover {
    background-position: 70% 50%;
    height: 53.3333333333vw;
  }
  article.type-subpage .cover_copy {
    font-size: 2rem;
    line-height: 1.5;
    width: 100%;
  }
  article.type-subpage .subpage_dl_generic > dt:not(:first-of-type) {
    margin-top: 15px;
  }
}
/* ----- privacy-policy ----- */
@media screen and (max-width: 860px) {
  .privacy-policy main {
    padding: 65px 0 70px;
  }
  .privacy-policy main .sec_guidance {
    background: #f1f1f1;
  }
  .privacy-policy main .wrap_1000 {
    padding: 30px 0 35px;
  }
  .privacy-policy h3 {
    font-size: 15px;
    font-size: 4vw;
    margin-bottom: 15px;
  }
  .privacy-policy h4 {
    font-size: 1.2rem;
    margin: 32px 0 16px;
  }
}
/* ----- 404 ----- */
@media screen and (max-width: 860px) {
  .error-404,
.not-found {
    width: 85.6%;
  }
}
/* ============================== top */
.front_setsumeikai_fixed {
  display: none;
}

main.cnt_frontpage {
  margin-top: 0px;  /* 85px */
}

:where(main.cnt_frontpage > section:not(#hero)) {
  padding: 100px 50px 0;
}

.ftitle_h2 {
  margin-bottom: 30px;
  text-align: center;
}
.ftitle_h2 .fh2_m-text {
  display: block;
  font-size: 4rem;
  font-weight: 700;
  position: relative;
}
.ftitle_h2 .fh2_s-text {
  color: #406398;
  display: block;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.2rem;
  padding-top: 5px;
}

/* ----- HERO ----- */
#hero {
  position: relative;
}
#hero .hero_h1 {
  display: none;
}
#hero .hero_ninteikou {
  position: absolute;
  left: 2.9166666667vw;
  top: 2.0833333333vw;
}
#hero #hero_video {
  aspect-ratio: 2400/1016; /* 1500/740 */
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

/* ----- ABOUT ----- */
#about {
  background-color: #fff;
  padding-bottom: 0;
  padding-top: 50px;
}
#about h2 {
  color: #406398;
  font-size: 6rem;
  line-height: 1;
  margin-bottom: 20px;
  text-align: center;
}
#about .top_about-txt {
  font-size: 2rem;
  line-height: 1.75;
  text-align: center;
}

/* ----- INSTAGRAM ----- */
/* ----- NEWS ----- */
#news {
  background-color: #fff;
}
#news .ftitle_h2 {
  margin-bottom: 0;
}

.link_archive_news {
  text-align: right;
}
.link_archive_news a {
  color: #000;
  padding-bottom: 5px;
}
.link_archive_news a:hover {
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
}

.home .post_news {
  border-top: 1px solid #CECECE;
  padding: 25px 0;
}
.home .post_news:nth-of-type(2n+1), .home .post_news:nth-of-type(n+2) {
  background-color: transparent;
}
.home .post_news:nth-of-type(n+2) {
  margin-top: 0;
}
.home .post_news:last-child {
  border-bottom: 1px solid #CECECE;
}
.home .post_news a {
  padding: 0;
}

/* ----- BUSINESS ----- */
.home #business {
  padding-top: 140px;
  text-align: center;
}
.home #business .btn_generic2 {
  font-size: 2rem;
  margin: 30px auto 0;
  padding: 12px 25px;
  width: 23.75vw;
  max-width: 285px;
}

.wrap_biz_photo {
  position: relative;
}
.wrap_biz_photo h2 {
  color: #fff;
  font-size: 4rem;
  font-weight: 900;
  line-height: 1.4;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 3.75vw;
  z-index: 1;
}

/* ----- SEARCH ----- */
#search {
  background-color: #fff;
  padding-bottom: 80px;
  padding-top: 220px;
}

.search_cnt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 5px;
}
@media screen and (max-width: 860px) {
  .search_cnt {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.items_obj {
  background-color: #f0f0f0;
  border-radius: 15px;
  -ms-flex-preferred-size: calc((100% - 40px) / 3);
      flex-basis: calc((100% - 40px) / 3);
  padding: 25px 30px 22px;
}
.items_obj a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  height: 100%;
}
.items_obj a:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media print, screen and (min-width: 861px) {
  .items_obj:nth-child(n+2) {
    margin-left: 15px;
  }
}

.obj_ttl {
  color: #406398;
  font-size: 3rem;
  line-height: 1.3;
}

.items_obj:last-child .obj_ttl {
  letter-spacing: -0.1rem;
}

.obj_under_cnt {
  margin-top: 25px;
  text-align: center;
}

.obj_illust {
  margin-bottom: 35px;
}
.obj_illust img {
  margin: 0 auto;
}

.obj_txt_more {
  color: #c7a034;
  display: inline-block;
  font-size: 1.3rem;
  padding-bottom: 10px;
  position: relative;
}
.obj_txt_more::after {
  border-bottom: 1px solid #c7a034;
  border-right: 1px solid #c7a034;
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: -50%;
  -webkit-transform: skew(45deg);
          transform: skew(45deg);
  height: 7px;
  width: 68px;
}

/* ----- LICENSE NAVI ----- */
#license-navi {
  background-color: #437FEC;
  color: #fff;
  padding-bottom: 80px;
  padding-top: 70px;
  text-align: center;
}
#license-navi h2 {
  font-size: 3.5rem;
  line-height: 1.3;
  margin-bottom: 90px;
  margin-top: 70px;
}

.l-navi_illust img {
  margin: auto;
}

.lnavi_h2-small {
  display: block;
  font-size: 2.5rem;
  line-height: 1.6;
  text-align: center;
}

.l-navi_enter {
  margin: 55px auto 0;
  position: relative;
  max-width: 493px;
}

.l-nav_btn-start {
  background-color: #FABD00;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  padding: 14px 58px;
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  max-width: 212px;
}
.l-nav_btn-start:visited {
  color: #fff;
}
.l-nav_btn-start:focus {
  text-decoration: none;
}
.l-nav_btn-start:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

/* ----- SCHEDULE ----- */
#schedule {
  background-color: #fff;
}
#schedule p {
  text-align: center;
}
#schedule p:where(#schedule p:not([class])) {
  font-size: 2rem;
  line-height: 1.5;
}
#schedule .btn_wrapper {
  margin-top: 20px;
}
#schedule .fc_red {
  margin-top: 20px;
}

.kintone_schedule {
  margin-top: 40px;
  text-align: center;
}
.kintone_schedule iframe {
  aspect-ratio: 1000/816;
  width: 100%;
}

.links_resv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1rem;
}
@media print, screen and (min-width: 861px) {
  .links_resv {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.link_resv_item {
  background-color: #c7a034;
  color: #fff;
  display: inline-block;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc((100% - 8px) / 3);
          flex: 0 0 calc((100% - 8px) / 3);
  font-size: 2rem;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  padding: 10px 30px 10px 10px;
  position: relative;
  text-align: center;
}
.link_resv_item::after {
  content: ">";
  line-height: 1;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.link_resv_item:visited {
  color: #fff;
}
.link_resv_item:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.link_setsumeikai_ttl {
  color: #406398;
  font-size: 2rem;
  text-align: center;
}

.link_resv_setsumeikai .link_resv_item {
  background-color: #406398;
}

.link_resv_other .link_resv_item {
  background-color: #c7a034;
}

/* ----- ACCESS ----- */
#access {
  background-color: #fff;
}
#access .ftitle_h2 {
  margin-bottom: 50px;
}

main.cnt_frontpage > section#access {
  padding-left: 0;
  padding-right: 0;
  padding-top: 140px;
}

.wrap_map {
  padding-top: 45.833%;
  position: relative;
  height: 0;
  width: 100%;
}
.wrap_map iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.photos_sogakkan {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}

.sogakkan_img {
  -ms-flex-preferred-size: calc((100% - 40px) / 2);
      flex-basis: calc((100% - 40px) / 2);
}

.sogakkan_img_caption {
  line-height: 2;
  margin-top: 15px;
}

/* ----- CONTACT US ----- */
#contact {
  background-color: #fff;
}

main.cnt_frontpage > section#contact {
  padding-bottom: 140px;
}

.kintone_form {
  text-align: center;
}

/* ============================== for SP:top */
@media screen and (max-width: 860px) {
  .front_setsumeikai_fixed {
    background-color: #406398;
    color: #fff !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 14px;
    font-size: 3.7333333333vw;
    position: fixed;
    top: 65px;
    opacity: 1;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    text-align: center;
    height: 37px;
    width: 100%;
    z-index: 10;
  }
  .front_setsumeikai_fixed::before {
    content: ">";
    font-size: 20px;
    font-size: 5.3333333333vw;
    position: absolute;
    right: 17px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  body.is-open .front_setsumeikai_fixed {
    opacity: 0;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
    z-index: 0;
  }
}
/* ----- HERO ----- */
@media screen and (max-width: 860px) {
  #hero {
    /* height: calc(100vh - 158px); */
    height: 200px;
  }
  #hero .hero_ninteikou {
    aspect-ratio: 168/178;
    left: 4.8vw;
    top: 3.4666666667vw;
    width: 30.9333333333vw;
  }
  #hero #hero_video {
    aspect-ratio: 375/509;
  }
}
/* ----- top > main > common ----- */
@media screen and (max-width: 860px) {
  main.cnt_frontpage {
    margin-top: 102px;
  }
  :where(main.cnt_frontpage > section:not(#hero)) {
    padding: 60px 2rem 0;
  }
  .ftitle_h2 {
    margin-bottom: 15px;
  }
  .ftitle_h2 .fh2_m-text {
    font-size: 30px;
    font-size: 8vw;
    line-height: 1.3;
  }
  .ftitle_h2 .fh2_s-text {
    font-size: 25px;
    font-size: 6.6666666667vw;
    letter-spacing: 0.1rem;
  }
}
/* ----- ABOUT ----- */
@media screen and (max-width: 860px) {
  #about h2 {
    font-size: 4rem;
    line-height: 1.25;
  }
  #about .top_about-txt {
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
/* ----- NEWS ----- */
@media screen and (max-width: 860px) {
  #news .ftitle_h2 {
    margin-bottom: 15px;
  }
  .home .list_news {
    margin-top: 8px;
  }
  .home .list_news .post_news {
    font-size: 15px;
    font-size: 4vw;
    padding: 23px 0;
  }
  .home .list_news .post_news time {
    font-size: 17px;
    font-size: 4.5333333333vw;
  }
  #news .btn_wrapper {
    margin-top: 35px;
  }
}
/* ----- BUSINESS ----- */
@media screen and (max-width: 860px) {
  .home #business {
    padding-top: 70px;
  }
  .home #business .btn_generic2 {
    font-size: 15px;
    font-size: 4vw;
    width: 100%;
    max-width: 285px;
  }
  .wrap_biz_photo h2 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
/* ----- SEARCH ----- */
@media screen and (max-width: 860px) {
  #search {
    padding-bottom: 35px;
    padding-top: 110px;
  }
  .items_obj {
    border-radius: 10px;
    -ms-flex-preferred-size: calc((100% - 10px) / 2);
        flex-basis: calc((100% - 10px) / 2);
    padding-left: 16px;
    padding-right: 16px;
  }
  .items_obj:nth-child(2n) {
    margin-left: 10px;
  }
  .items_obj:nth-child(n+3) {
    margin-top: 10px;
  }
  .obj_ttl {
    font-size: 17px;
    font-size: 4.5333333333vw;
    letter-spacing: -0.1rem;
  }
  .obj_under_cnt {
    margin-top: 20px;
  }
  .obj_illust {
    margin: 0 auto 20px;
    max-width: 68%;
  }
  .obj_txt_more {
    font-size: 13px;
    font-size: 3.4666666667vw;
    font-weight: bold;
    line-height: 1;
  }
  .obj_txt_more::after {
    -webkit-transform: skew(45deg) translateX(10%);
            transform: skew(45deg) translateX(10%);
  }
}
/* ----- LICENSE NAVI ----- */
@media screen and (max-width: 860px) {
  #license-navi {
    padding-bottom: 40px;
    padding-top: 40px;
  }
  .l-navi_illust {
    margin: 0 auto;
    width: 89.6vw;
  }
  #license-navi h2 {
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 1.5;
    margin: 30px 0 35px;
  }
  .lnavi_h2-small {
    font-size: 15px;
    font-size: 4vw;
  }
  .l-navi_enter {
    margin-top: 0;
    max-width: 65.8666666667vw;
  }
  .l-nav_btn-start {
    border-radius: 5px;
    font-size: 15px;
    font-size: 4vw;
    padding: 7px 10px;
    width: 100%;
    max-width: 28.2666666667vw;
  }
}
/* ----- SCHEDULE ----- */
@media screen and (max-width: 860px) {
  #schedule p:not([class]) {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.6;
  }
  #schedule .fc_red {
    margin-top: 45px;
  }
  .kintone_schedule {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: 25px;
  }
  .kintone_schedule iframe {
    aspect-ratio: 375/875;
  }
  .links_resv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 1rem;
  }
  .link_resv_item {
    font-size: 15px;
    font-size: 4vw;
    padding: 14px 3rem;
    width: 100%;
  }
  .link_resv_item::after {
    font-size: 25px;
    font-size: 6.6666666667vw;
    right: 20px;
  }
  .link_resv_item:nth-child(n+2) {
    margin-top: 5px;
  }
}
/* ----- ACCESS ----- */
@media screen and (max-width: 860px) {
  main.cnt_frontpage > section#access {
    padding: 60px 2rem 0;
  }
  .wrap_map {
    aspect-ratio: 375/256;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding-top: 0;
    height: 100%;
    width: 100vw;
  }
  .photos_sogakkan {
    margin-top: 15px;
  }
  .sogakkan_img {
    -ms-flex-preferred-size: calc((100% - 12px) / 2);
        flex-basis: calc((100% - 12px) / 2);
  }
  .sogakkan_img_caption {
    font-size: 10px;
    font-size: 2.6666666667vw;
    line-height: 1.6;
  }
}
/* ----- CONTACT ----- */
@media screen and (max-width: 860px) {
  main.cnt_frontpage > section#contact {
    padding-bottom: 1rem;
  }
  .kintone_form {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
  .kintone_form iframe {
    aspect-ratio: 375/880;
    height: 100%;
  }
}
/* ============================== about */
/* ----- GREETING ----- */
#greeting {
  margin-bottom: 140px;
}
#greeting .columns-2 > .contents_gteet {
  -ms-flex-preferred-size: calc((100% - 40px) / 2);
      flex-basis: calc((100% - 40px) / 2);
  letter-spacing: -0.05rem;
}

.greet_copy-text {
  background: url(/assets/images/about/about_img_greet_bg.jpg) no-repeat center center;
}

.greet_copy_group {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.greet_copy_large {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.5;
}

.greet_copy_sign {
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 70px;
}
.greet_copy_sign .small-txt1 {
  display: block;
  font-size: 1.5rem;
  line-height: 2;
}
.greet_copy_sign .small-txt2 {
  font-size: 1.5rem;
  margin-right: 0.5em;
}

.contents_gteet {
  line-height: 2;
  text-align: justify;
}

/* ----- SCHOOL ----- */
#school {
  margin-bottom: 90px;
}

.sch_copy-text {
  background: url(/assets/images/about/about_img_school_bg.jpg) no-repeat center center;
}

.sch_copy-text + .wrap_1000 {
  margin-top: 90px;
}

.sch_h3 {
  color: #406398;
  font-size: 6rem;
  font-weight: 900;
  line-height: 1.1;
  margin-bottom: 30px;
  text-align: center;
}
.sch_h3 .fw_thin {
  color: #c7a034;
}

.sch_h3_min {
  display: block;
  font-size: 2rem;
  letter-spacing: 7px;
  margin-top: 15px;
  padding-left: 0.6em;
}

.sch_desc {
  margin-bottom: 70px;
}

.sch_h4 {
  color: #406398;
  font-size: 3.5rem;
  text-align: center;
}

.sch_support {
  list-style: none;
  padding-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
}
.sch_support li {
  padding: 22px 5px;
}
.sch_support li:not([class]) {
  background: #406398;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-preferred-size: calc((100% - 2em) / 3);
      flex-basis: calc((100% - 2em) / 3);
  font-size: 2.5rem;
  font-weight: 700;
}
.sch_support li.sch_x {
  color: #c7a034;
  -ms-flex-preferred-size: 1em;
      flex-basis: 1em;
  font-size: 5rem;
  font-weight: 100;
}

.sch_spt_dets {
  background: #f1f1f1;
  margin-top: 50px;
}

#school .columns-2 > .sch_spt_img {
  -ms-flex-preferred-size: 498px;
      flex-basis: 498px;
}

.sch_spt_text-area {
  padding: 40px 45px;
}

.spt_text_ttl {
  color: #406398;
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1.1;
}
.spt_text_ttl .spt_ttl_s {
  color: #000;
  display: block;
  font-size: 2rem;
  letter-spacing: normal;
  margin-bottom: 4px;
}

.spt_text_cont {
  margin-top: 40px;
}

.spt_cont_list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.spt_list_item {
  line-height: 2;
  padding-left: 0.75em;
  position: relative;
}
.spt_list_item::before {
  content: "・";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

/* ----- facility ----- */
#facility {
  margin-bottom: 80px;
}
#facility h3 {
    font-size: 1.1em !important;
}


.fac_copy-text {
  background: url(/assets/images/about/about_img_facility_bg.jpg) no-repeat center center;
}

.fac_columns .columns-2 > .fac_columns_img {
  -ms-flex-preferred-size: 482px;
      flex-basis: 482px;
}
.fac_columns .columns-2:first-of-type .colum_text {
  padding-right: 18px;
}
.fac_columns .columns-2:nth-of-type(2) {
  margin-top: 50px;
}
.fac_columns .columns-2:nth-of-type(2) .colum_text {
  -ms-flex-item-align: end;
      align-self: flex-end;
  padding-left: 18px;
}
.fac_columns .colum_text {
  line-height: 2;
  text-align: justify;
}
.fac_columns .fac_img_sdgs {
  margin-bottom: 30px;
}

.fac_dets {
  margin-top: 100px;
}
.fac_dets figure {
  margin-top: 30px;
}
.fac_dets .columns-2 > .img_2column {
  -ms-flex-preferred-size: calc((100% - 40px) / 2);
      flex-basis: calc((100% - 40px) / 2);
}

.fac_figcaption {
  line-height: 1.6;
  margin-top: 10px;
}
.fac_figcaption::first-letter {
  color: #c7a034;
}

.fac_caption_head {
  display: block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
}

/* ----- MEMBERS ----- */
#members {
  margin-bottom: 100px;
}
@media print, screen and (min-width: 861px) {
  #members .h2_m-text.spOnly {
    display: none;
  }
}

.mbrs_desc_ttl {
  font-size: 2rem;
  margin: 50px 0 20px;
  text-align: center;
}

.mbrs_desc {
  margin-bottom: 60px;
}

.mbrs_col_left {
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
}

.mbrs_dl:nth-of-type(n+2) {
  margin-top: 30px;
}
.mbrs_dl dt {
  color: #c7a034;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.6;
}
.mbrs_dl dd {
  font-size: 1.6rem;
  line-height: 1.7;
  margin-top: 5px;
}
.mbrs_dl dd a.link_setsumeikai {
  color: #406398;
  padding-bottom: 3px;
}
.mbrs_dl dd a.link_setsumeikai:visited {
  color: #406398;
}

.mbrs_benefit {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.mbrs_benefit li {
  padding-left: 0.65em;
  position: relative;
}
.mbrs_benefit li::before {
  content: "・";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

.mbrs_col_right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 504px;
          flex: 0 0 504px;
}

.mbrs_col_right .bdr_box {
  border: 2px solid #c7a034;
  color: #c7a034;
  letter-spacing: -1px;
  line-height: 1.4;
  margin-bottom: 5px;
  padding: 15px 20px;
  text-align: center;
  width: 100%;
}
.mbrs_col_right .bdr_box .large-text {
  display: block;
  font-size: 3rem;
  margin-bottom: 5px;
}
.mbrs_col_right .mbrs_img {
  position: relative;
}
.mbrs_col_right .mbrs_img:nth-child(-n+2) {
  -ms-flex-preferred-size: calc((100% - 4px) / 2);
      flex-basis: calc((100% - 4px) / 2);
}
.mbrs_col_right .mbrs_img:nth-child(n+3) {
  margin-top: 13px;
}
.mbrs_col_right .mbrs_img figcaption {
  color: #fff;
  position: absolute;
  bottom: 5px;
  right: 7px;
}
.mbrs_col_right .mbrs_rental {
  border: 1px solid #808080;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 13px;
  padding: 15px;
}
.mbrs_col_right .mbrs_rental_ttl {
  color: #c7a034;
  font-size: 2.5rem;
  font-weight: bold;
}
.mbrs_col_right .drone-type {
  color: #000;
  display: block;
  font-size: 2rem;
}
.mbrs_col_right .mbrs_rental_price {
  line-height: 1.3;
  margin-top: 20px;
}
.mbrs_col_right .mbrs_rental_drone-img {
  -ms-flex-preferred-size: 262px;
      flex-basis: 262px;
}

.mbrs_col_100pct {
  background-color: #c7a034;
  color: #fff;
  font-weight: bold;
  -ms-flex-preferred-size: 100% !important;
      flex-basis: 100% !important;
  margin-top: 35px;
  padding: 27px 15px;
  text-align: center;
}
.mbrs_col_100pct .large-text {
  font-size: 3.1rem;
  line-height: 1;
}

.txt_mbrs_support {
  margin-top: 15px;
}

/* ----- STAFF ----- */
#staff h3 {
    font-size: 1.1em !important;
}

#staff .columns-2 {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
#staff .columns-2:nth-of-type(2n+1) .staff_name,
#staff .columns-2:nth-of-type(2n+1) .staff_prof {
  padding-left: 30px;
}
#staff .columns-2:nth-of-type(2n) .staff_name,
#staff .columns-2:nth-of-type(2n) .staff_prof {
  padding-right: 30px;
}

#staff .columns-2 > .staff_img {
  -ms-flex-preferred-size: 308px;
      flex-basis: 308px;
}

#staff .columns-2 > .staff_data {
  -ms-flex-preferred-size: calc(100% - 308px);
      flex-basis: calc(100% - 308px);
}

.staff_name {
  border-bottom: 1px solid rgba(0, 0, 0, 0.25);
  font-size: 2rem;
  letter-spacing: -0.1rem;
  line-height: 1.25;
  padding-bottom: 10px;
}
.staff_name .belong {
  display: block;
  font-size: 1.5rem;
  line-height: 1.4;
}
.staff_name .brkt::before {
  content: "（";
  margin-left: 0.25em;
}
.staff_name .brkt::after {
  content: "）";
}

.staff_prof {
  line-height: 1.6;
  margin-top: 8px;
}

/* ============================== for SP:about */
/* ----- GREETING ----- */
@media screen and (max-width: 860px) {
  #greeting {
    margin-bottom: 0;
  }
  #greeting .cover {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 30px;
    padding: 0 25px;
    position: relative;
    width: 100vw;
  }
  .greet_copy_group {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .greet_copy_large {
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 1.3;
  }
  .greet_copy_sign {
    font-size: 13px;
    font-size: 3.4666666667vw;
    margin-top: 5.3333333333vw;
  }
  .greet_copy_sign .small-txt1 {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
  .greet_copy_sign .small-txt2 {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
  #greeting .columns-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-size: 13px;
    font-size: 3.4666666667vw;
    line-height: 1.9;
  }
}
/* ----- SCHOOL ----- */
@media screen and (max-width: 860px) {
  #school {
    margin-bottom: 0;
  }
  #school .h2_s-text {
    letter-spacing: 0;
  }
  #school .cover {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 40px;
    width: 100vw;
  }
  .sch_copy-text + .wrap_1000 {
    margin-top: 0;
  }
  .sch_h3 {
    font-size: 30px;
    font-size: 8vw;
  }
  .sch_h3_min {
    font-size: 15px;
    font-size: 4vw;
    letter-spacing: 0;
    margin-top: 10px;
  }
  article.type-subpage .text_full-column.sch_desc {
    font-size: 13px;
    font-size: 3.4666666667vw;
    letter-spacing: -0.05rem;
    line-height: 1.9;
    margin-bottom: 40px;
  }
  .sch_h4 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
  .sch_support {
    margin-top: 15px;
  }
  .sch_support li {
    padding: 8px 5px;
  }
  .sch_support li:not([class]) {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.3;
    text-align: center;
  }
  .sch_support li.sch_x {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    font-size: 25px;
    font-size: 6.6666666667vw;
    padding-left: 0;
    padding-right: 0;
  }
  .sch_spt_dets {
    background: transparent;
  }
  .sch_spt_dets:first-of-type {
    margin-top: 28px;
  }
  .sch_spt_dets:nth-of-type(2) .sch_spt_text-area {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  #school .columns-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  #school .columns-2 > .sch_spt_img {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .sch_spt_text-area {
    margin-top: 18px;
    padding: 0;
  }
  .spt_text_ttl {
    font-size: 40px;
    font-size: 10.6666666667vw;
    letter-spacing: -0.1rem;
    line-height: 1.1;
  }
  .spt_text_ttl .spt_ttl_s {
    font-size: 20px;
    font-size: 5.3333333333vw;
    letter-spacing: -0.1rem;
  }
  .spt_text_cont {
    margin-top: 12px;
  }
  .spt_list_item {
    font-size: 13px;
    font-size: 3.4666666667vw;
    letter-spacing: -0.05rem;
    line-height: 1.9;
    padding-left: 0.6em;
  }
}
/* ----- facility ----- */
@media screen and (max-width: 860px) {
  #facility {
    margin-bottom: 0;
  }
  #facility .h2_s-text {
    letter-spacing: 0;
  }
  #facility .cover {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    width: 100vw;
  }
  #facility .cover.fac_copy-text {
    margin-bottom: 20px;
  }
  .fac_columns {
    font-size: 13px;
    font-size: 3.4666666667vw;
    line-height: 1.9;
  }
  .fac_columns .columns-2 > .fac_columns_img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .fac_columns .columns-2 > .fac_columns_img img {
    width: 100%;
  }
  #facility .fac_columns .columns-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #facility .fac_columns .columns-2:first-of-type .fac_columns_img {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  #facility .fac_columns .columns-2:first-of-type .colum_text {
    margin-bottom: 20px;
    padding-right: 0;
  }
  #facility .fac_columns .columns-2:nth-of-type(2) {
    margin-top: 50px;
  }
  #facility .fac_columns .columns-2:nth-of-type(2) .colum_text {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: 25px;
    padding-left: 0;
  }
  #facility .fac_columns .columns-2 .fac_img_sdgs {
    margin-bottom: 25px;
  }
  #facility .fac_dets {
    margin-top: 50px;
  }
  #facility .fac_dets figure {
    margin-top: 18px;
  }
  #facility .fac_dets .columns-2:first-of-type {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #facility .fac_dets .columns-2:nth-of-type(2) {
    margin-top: 0;
  }
  #facility .fac_dets .columns-2 > .img_2column {
    -ms-flex-preferred-size: calc((100% - 12px) / 2);
        flex-basis: calc((100% - 12px) / 2);
  }
  .fac_figcaption {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
  .fac_caption_head {
    font-size: 12px;
    font-size: 3.2vw;
    margin-bottom: 5px;
  }
}
/* ----- MEMBERS ----- */
@media screen and (max-width: 860px) {
  #members {
    margin-bottom: 0;
  }
  #members .h2_m-text.pcOnly {
    display: none;
  }
  #members .h2_m-text.spOnly {
    letter-spacing: -0.4rem;
  }
  .mbrs_desc_ttl {
    display: none;
  }
  #members .text_full-column {
    text-align: left;
  }
  .mbrs_desc {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 2;
    margin-bottom: 30px;
  }
  #members .columns-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .mbrs_col_right {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 15px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .mbrs_col_right .bdr_box {
    color: #000;
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 30px;
    padding: 20px 15px;
  }
  .mbrs_col_right .bdr_box .large-text {
    color: #c7a034;
    font-size: 1.9rem;
    margin-bottom: 15px;
  }
  .mbrs_col_right .mbrs_img:last-of-type {
    margin-top: 10px;
  }
  .mbrs_col_right .mbrs_img figcaption {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .mbrs_col_right .mbrs_rental {
    margin-top: 7px;
    padding: 10px;
  }
  .mbrs_col_right .mbrs_rental_ttl {
    font-size: 17px;
    font-size: 4.5333333333vw;
    line-height: 1.5;
  }
  .mbrs_col_right .drone-type {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  .mbrs_col_right .mbrs_rental_price {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.25;
    margin-top: 10px;
  }
  .mbrs_col_right .mbrs_rental_drone-img {
    -ms-flex-preferred-size: 46.6666666667vw;
        flex-basis: 46.6666666667vw;
  }
  .mbrs_col_left {
    margin-top: 23px;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .mbrs_dl:nth-of-type(n+2) {
    margin-top: 25px;
  }
  .mbrs_dl dt {
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 1.6;
  }
  .mbrs_dl dd {
    font-size: 13px;
    font-size: 3.4666666667vw;
    line-height: 1.75;
    margin-top: 5px;
  }
  .mbrs_col_100pct {
    margin-top: 0;
  }
  .mbrs_col_100pct .large-text {
    font-size: 30px;
    font-size: 8vw;
    line-height: 1.3;
  }
  .txt_mbrs_support {
    margin-top: 20px;
  }
}
/* ----- STAFF ----- */
@media screen and (max-width: 860px) {
  #staff .columns-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #staff .columns-2 > .staff_img {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  #staff .columns-2 > .staff_data {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin-top: 20px;
    padding-right: 3rem;
    width: 100%;
  }
  #staff .columns-2 .staff_name {
    font-size: 20px;
    font-size: 5.3333333333vw;
    padding-bottom: 15px;
  }
  #staff .columns-2 .staff_name .belong {
    margin-bottom: 2px;
  }
  #staff .columns-2:nth-of-type(2n+1) .staff_name,
#staff .columns-2:nth-of-type(2n+1) .staff_prof {
    padding-left: 0;
  }
  #staff .columns-2:nth-of-type(2n) .staff_data {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  #staff .columns-2:nth-of-type(n+2) {
    margin-top: 35px;
  }
}
/* ============================== course */
#training,
#special,
#option {
  padding-top: 190px;
}
@media screen and (max-width: 860px) {
  #training,
#special,
#option {
    padding-top: 0;
  }
}

#entry .title_h2,
#training .title_h2 {
  margin-bottom: 15px;
}
#entry .title_h2 .h2_m-text,
#training .title_h2 .h2_m-text {
  padding-bottom: 0;
}
#entry .title_h2 .h2_m-text::before,
#training .title_h2 .h2_m-text::before {
  content: none;
}
#entry .title_h2 .h2_s-text,
#training .title_h2 .h2_s-text {
  padding-bottom: 15px;
  padding-top: 5px;
  position: relative;
}
#entry .title_h2 .h2_s-text::before,
#training .title_h2 .h2_s-text::before {
  background-color: #c7a034;
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 2px;
  width: 100%;
  max-width: 472px;
}

#special .title_h2,
#option .title_h2 {
  margin-bottom: 15px;
}
#special .text_full-column,
#option .text_full-column {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.75;
}

@media screen and (max-width: 860px) {
  .crs_contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

#entry > .crs_contents:first-of-type,
#training > .crs_contents:first-of-type,
#special > .crs_contents:first-of-type,
#option > .crs_contents:first-of-type {
  margin-top: 55px;
}

.crs_title_sub {
  color: #c7a034;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

article.type-subpage .crs_cont_inner {
  -ms-flex-preferred-size: calc((100% - 30px) / 2);
      flex-basis: calc((100% - 30px) / 2);
}

.crs_course {
  color: #406398;
  font-size: 2.8rem;
  margin-bottom: 13px;
  padding-left: 1.25em;
  position: relative;
}
.crs_course::before {
  content: "■";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

.crs_ttl_min {
  background-color: #406398;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 5px;
  padding: 9px;
  text-align: center;
}

.crs_ttl_min2 {
  font-size: 2rem;
  line-height: 1.75;
  margin: 0;
  padding-left: 1.25em;
  position: relative;
}
.crs_ttl_min2::before {
  color: #c7a034;
  content: "■";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}

.crs_txt {
  font-size: 1.7rem;
  line-height: 1.75;
}

.crs_attention {
  font-size: 1.7rem;
  line-height: 1.6;
  margin-top: 40px;
}

.crs_link_setsumeikai {
  background-color: #c7a034;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.5rem;
  font-weight: 500;
  margin-top: 10px;
  padding: 0 2.5rem;
  position: relative;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  height: 50px;
  width: 286px;
}
.crs_link_setsumeikai::after {
  content: ">";
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
  position: absolute;
  right: 5px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.crs_link_setsumeikai:hover, .crs_link_setsumeikai:focus {
  color: #fff;
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
  text-decoration: none;
}
.crs_link_setsumeikai:visited {
  color: #fff;
}

.crs_attention_min {
  font-size: 1.3rem;
  font-weight: 500;
  margin-top: 5px;
}

/* ----- ENTRY ----- */
article.type-subpage #entry .columns-2 > .crs_course:first-of-type {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.crs__entry_img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  margin-bottom: 25px;
}
.crs__entry_img figure {
  -ms-flex-preferred-size: 0 0 50%;
      flex-basis: 0 0 50%;
  position: relative;
}
.crs__entry_img figure figcaption {
  color: #fff;
  position: absolute;
  left: 10px;
  bottom: 5px;
}

#entry .wrap_1000:first-of-type .crs_cont_inner:nth-of-type(2) > .crs_txt:first-of-type {
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 30px;
}
#entry .wrap_1000:first-of-type .crs_contents:nth-of-type(3) {
  margin-top: 25px;
}
#entry .wrap_1000:first-of-type .crs_contents:nth-of-type(3) .crs_ttl_min {
  background-color: #c7a034;
}

#entry .crs_attention {
  text-align: center;
}

#entry .crs_link_setsumeikai {
  margin: 20px auto 0;
}

.crs_entry_tbl {
  margin-bottom: 0;
  text-align: center;
}
.crs_entry_tbl th, .crs_entry_tbl td {
  border: none;
  border-right: 3px solid #fff;
  border-top: 3px solid #fff;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  padding: 10px;
}
.crs_entry_tbl th:last-child, .crs_entry_tbl td:last-child {
  border-right: none;
}
.crs_entry_tbl tr:first-of-type th {
  border-top: none;
}
.crs_entry_tbl th {
  background-color: #406398;
  color: #fff;
}
.crs_entry_tbl th:first-child {
  width: 220px;
}
.crs_entry_tbl th:last-child {
  background-color: #6682ad;
}
.crs_entry_tbl tbody tr th:first-child {
  text-align: left;
}
.crs_entry_tbl td {
  background-color: #d9e0ea;
  color: #406398;
}
.crs_entry_tbl td:last-child {
  background-color: #eceff5;
}

.crs_cont_inner figure {
  padding-top: 1rem;
}

.crs_cont_inner figcaption {
  line-height: 1.3;
  margin-top: 10px;
}

#entry .crs_contents:nth-of-type(2) {
  border-top: 1px solid #c7a034;
  margin-top: 65px;
  padding-top: 20px;
}
#entry .crs_contents:nth-of-type(2) .crs_course {
  letter-spacing: -0.2rem;
}
#entry .crs_contents:nth-of-type(2) .crs_ttl_min {
  margin-top: 20px;
}

#entry .crs_contents:nth-of-type(2) {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
#entry .crs_contents:nth-of-type(2) .crs_cont_inner:first-of-type .crs_ttl_min2 {
  margin-top: 30px;
}
#entry .crs_contents:nth-of-type(2) .crs_cont_inner:nth-of-type(2) {
  background-color: #f1f1f1;
  padding: 35px 50px;
}

.crs_price_small {
  display: block;
  font-size: 1.3rem;
}

#entry .crs_contents:nth-of-type(2) figure {
  margin-bottom: 30px;
}

#entry .crs_contents:nth-of-type(2) .crs_ttl_min2 + .crs_txt:not(:last-of-type) {
  margin-bottom: 20px;
}

#entry .crs_contents:nth-of-type(2) .crs_cont_inner:last-of-type {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

/* ----- TRAINING ----- */
.crs_training_price {
  color: #406398;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  margin-top: 8px;
  vertical-align: baseline;
}

.crs_price_large {
  font-size: 3rem;
}

.crs_about_NIST {
  margin-top: 23px;
}
.crs_about_NIST dt {
  color: #406398;
  font-size: 2rem;
  line-height: 1.5;
}
.crs_about_NIST dd {
  font-size: 1.7rem;
  line-height: 1.75;
  text-align: justify;
}

.crs_training_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 50px;
}
@media print, screen and (min-width: 861px) {
  .crs_training_wrap > * {
    -ms-flex-preferred-size: calc((100% - 60px) / 3);
        flex-basis: calc((100% - 60px) / 3);
  }
  .crs_training_wrap > *:nth-child(n+2):not(:nth-child(4)) {
    margin-left: 30px;
  }
  .crs_training_wrap > *:nth-child(n+4) {
    margin-top: 25px;
  }
}

.crs_training_man-pay {
  border: 1px solid #406398;
}

.crs_man-pay_label {
  background-color: #406398;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  padding: 8px;
  margin: 0;
  text-align: center;
}

.crs_man-pay_cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 10px 10px 35px;
}
.crs_man-pay_cont figure {
  margin-top: 35px;
}

.crs_man-pay_txt {
  font-size: 2rem;
  line-height: 2;
  text-align: center;
}

.crs_man-pay_large {
  color: #406398;
  display: block;
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
}

.crs_info_box .crs_ttl_min2:first-of-type {
  margin-top: -0.75rem;
}
.crs_info_box .crs_ttl_min2:nth-of-type(n+2) {
  margin-top: 25px;
}

/* ----- SPECIAL ----- */
#special .crs_cont_inner figure {
  padding-top: 0;
}

#special .crs_cont_inner:first-of-type .crs_txt:first-of-type {
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
}
#special .crs_cont_inner:first-of-type .crs_ttl_min:first-of-type {
  margin-top: 25px;
}
#special .crs_cont_inner:first-of-type .crs_ttl_min:nth-of-type(n+2) {
  margin-top: 20px;
}

#special .crs_info_box {
  margin-top: 20px;
}

#special .crs_info_box_inner:nth-of-type(2) {
  margin-top: 15px;
}

/* ----- OPTION ----- */
#option .crs_cont_inner figure {
  padding-top: 0;
}

#option .crs_ttl_min {
  background-color: #c7a034;
}

#option .crs_info_box {
  border-top: 1px solid #ededed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 19px;
  padding-top: 20px;
}

#option .crs_info_box_inner:nth-child(2) {
  margin-left: 5rem;
}

.crs_coming {
  margin-left: 5rem;
}

.crs_coming_label {
  background-color: #b2b2b2;
  color: #fff;
  display: inline-block;
  font-size: 1.7rem;
  line-height: 1;
  padding: 5px 4px 6px;
}

.crs_coming .crs_txt {
  line-height: 1.6;
  margin-top: 10px;
}

/* ============================== for SP course */
@media screen and (max-width: 860px) {
  .crs_subnav .item_snav:nth-child(2) {
    letter-spacing: -0.15rem;
  }
  .crs_title_sub {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
  #entry > .crs_contents:first-of-type,
#training > .crs_contents:first-of-type,
#special > .crs_contents:first-of-type,
#option > .crs_contents:first-of-type {
    margin-top: 35px;
  }
  .crs_course {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.3;
  }
  .columns-2.crs_summary {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 25px;
  }
  .area_text {
    background: transparent;
    margin-top: 20px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding: 0;
  }
  .crs_name {
    font-size: 1.5rem;
    line-height: 1.2;
  }
  .crs_stext {
    font-size: 1.2rem;
    line-height: 2;
    margin-top: 18px;
  }
  .columns-2.crs_details {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .crs_details .subpage_dl_generic > dt {
    font-size: 1.2rem;
  }
  .crs_details .subpage_dl_generic > dd {
    font-size: 1rem;
  }
  .crs_details .subpage_dl_generic:nth-of-type(2) {
    margin-top: 20px;
  }
  .columns-2.crs_details > .subpage_dl_generic {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .dl_crs_menu > dt .menu_name {
    font-size: 1.2rem;
  }
  .dl_crs_menu > dt .menu_price {
    font-size: 1rem;
  }
  .dl_crs_menu > dd {
    font-size: 1rem;
  }
  .crs_ttl_min {
    font-size: 14px;
    font-size: 3.7333333333vw;
    padding: 8px;
  }
  .crs_ttl_min2 {
    font-size: 15px;
    font-size: 4vw;
  }
  .crs_txt {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.6;
  }
  .crs_attention {
    font-size: 13px;
    font-size: 3.4666666667vw;
    letter-spacing: -0.05rem;
    line-height: 1.9;
    margin-top: 30px;
    text-align: center;
  }
  .crs_link_setsumeikai {
    width: 100%;
  }
  .crs_link_setsumeikai::after {
    right: 8px;
  }
  .crs_attention_min {
    font-size: 13px;
    font-size: 3.4666666667vw;
    margin-top: 10px;
    text-align: center;
  }
}
/* ----- ENTRY STAGE ----- */
@media screen and (max-width: 860px) {
  #entry {
    padding-bottom: 60px;
  }
  .crs__entry_img {
    display: block;
  }
  .crs__entry_img figcaption {
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
  #entry .wrap_1000:first-of-type .crs_cont_inner:nth-of-type(2) > .crs_txt:first-of-type {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.6;
    margin-bottom: 15px;
  }
  #entry .wrap_1000:first-of-type .crs_cont_inner:nth-of-type(3) {
    margin-top: 20px;
  }
  .crs_entry_tbl th, .crs_entry_tbl td {
    font-size: 14px;
    font-size: 3.7333333333vw;
    padding: 7px;
  }
  .crs_entry_tbl th:first-child {
    width: 40vw;
  }
  #entry .crs_contents:nth-of-type(2) {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding-top: 20px;
    width: 100vw;
  }
  #entry .crs_contents:nth-of-type(2) > *:not(h3) {
    padding-right: 2rem;
    padding-left: 2rem;
  }
  #entry .crs_contents:nth-of-type(2) .crs_course {
    letter-spacing: -0.1rem;
    margin-left: 2rem;
  }
  #entry .crs_contents:nth-of-type(2) .crs_cont_inner figure {
    padding-top: 0;
  }
  #entry .crs_contents:nth-of-type(2) .crs_cont_inner:first-of-type .crs_ttl_min2 {
    margin-top: 15px;
  }
  #entry .crs_contents:nth-of-type(2) .crs_cont_inner:nth-of-type(2) {
    background-color: transparent;
    margin-top: 20px;
    padding: 0 2rem;
  }
  #entry .crs_contents:nth-of-type(2) .crs_cont_inner:nth-of-type(2) .crs_txt {
    font-size: 13px;
    font-size: 3.4666666667vw;
    line-height: 1.5;
  }
  #entry .crs_contents:nth-of-type(2) .crs_price_small {
    font-size: 11px;
    font-size: 2.9333333333vw;
  }
}
/* ----- TRAINING STAGE ----- */
@media screen and (max-width: 860px) {
  .crs_training_price {
    font-size: 15px;
    font-size: 4vw;
  }
  .crs_price_large {
    font-size: 25px;
    font-size: 6.6666666667vw;
  }
  .crs_about_NIST dt {
    font-size: 15px;
    font-size: 4vw;
  }
  .crs_about_NIST dd {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.6;
  }
  .crs_cont_inner:nth-of-type(2) {
    margin-top: 15px;
  }
  .crs_cont_inner:nth-of-type(2) figure {
    padding-top: 0;
  }
  .crs_training_wrap {
    margin-top: 15px;
  }
  .crs_training_man-pay:nth-of-type(n+2) {
    margin-top: 15px;
  }
  .crs_man-pay_label {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  .crs_man-pay_cont {
    padding-bottom: 1rem;
  }
  .crs_man-pay_cont figure {
    margin-top: 15px;
  }
  .crs_man-pay_txt {
    font-size: 15px;
    font-size: 4vw;
  }
  .crs_man-pay_large {
    display: inline-block;
    font-size: 20px;
    font-size: 5.3333333333vw;
    margin-right: 0.5rem;
  }
  .crs_info_box {
    margin-top: 15px;
  }
}
/* ----- SPECIAL STAGE ----- */
@media screen and (max-width: 860px) {
  #special {
    padding-top: 70px;
  }
  #special .crs_cont_inner figure {
    margin-top: 10px;
  }
  #special .crs_cont_inner:first-of-type .crs_txt,
#special .crs_cont_inner:first-of-type .crs_txt:first-of-type {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  #special .crs_cont_inner:first-of-type .crs_ttl_min:first-of-type {
    margin-top: 10px;
  }
  #special .crs_info_box {
    margin-top: 0;
  }
  #special .crs_info_box .crs_txt {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
/* ----- OPTION ----- */
@media screen and (max-width: 860px) {
  #option {
    padding-top: 70px;
  }
  #option .crs_cont_inner:first-of-type {
    margin-top: 10px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  #option .crs_cont_inner:first-of-type .crs_txt {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  #option .crs_cont_inner:nth-of-type(2) {
    margin-top: 0;
  }
  #option .crs_info_box {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #option .crs_info_box > * {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  #option .crs_info_box_inner:nth-child(2) {
    margin-left: 0;
  }
  .crs_coming {
    margin-left: 0;
    padding-right: 3rem;
  }
  .crs_coming .crs_txt {
    margin-top: 5px;
  }
  .crs_coming_label {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
/* ============================== court */
.court_h3 {
  text-align: center;
}

.rec_title {
  font-size: 2.5rem;
  line-height: 1.4;
}

.court_rec_list {
  margin-top: 20px;
}

.court_rec_list.columns-4 > .court_illust_box {
  -ms-flex-preferred-size: calc((100% - 39px) / 4);
      flex-basis: calc((100% - 39px) / 4);
}

.court_illust_box {
  background: #f1f1f1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 23px 4px 16px;
  text-align: center;
}
.court_illust_box p {
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 20px;
}
.court_illust_box.rec_3rd .rec_illust, .court_illust_box.rec_4th .rec_illust {
  padding-bottom: 15px;
}
.court_illust_box.rec_1st .rec_illust img {
  max-width: 223px;
}
.court_illust_box.rec_2nd .rec_illust img {
  max-width: 127px;
}
.court_illust_box.rec_3rd .rec_illust img {
  max-width: 227px;
}
.court_illust_box.rec_4th .rec_illust img {
  max-width: 208px;
}

.rent_copy {
  color: #c7a034;
  font-size: 3rem;
  margin-top: 30px;
}

.court_details {
  margin-top: 20px;
}

.columns-2.court_details > .court_con_text {
  -ms-flex-preferred-size: 480px;
      flex-basis: 480px;
}

.court_point {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.court_point .item_point {
  background: #c7a034;
  color: #fff;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
  padding: 25px;
  text-align: center;
}
.court_point .item_point:nth-of-type(n+2) {
  margin-top: 10px;
}

.court_con_text .subpage_dl_generic {
  margin-top: 30px;
}
.court_con_text .subpage_dl_generic dt {
  font-size: 2rem;
  font-weight: 700;
}
.court_con_text .subpage_dl_generic dd {
  font-size: 1.7rem;
}

.columns-2.court_details > .court_con_photo {
  -ms-flex-preferred-size: 480px;
      flex-basis: 480px;
}

.court_con_photo figure:nth-of-type(n+2) {
  margin-top: 10px;
}

#c-resv {
  margin-bottom: 200px;
  margin-top: 40px;
}

.course_attention {
  margin-bottom: 25px;
  margin-top: 70px;
}

/* ============================== for SP court */
@media screen and (max-width: 860px) {
  .rec_title {
    font-size: 1.5rem;
  }
  .court_rec_list {
    margin-top: 10px;
  }
  .court_rec_list.columns-4 > .court_illust_box {
    -ms-flex-preferred-size: calc((100% - 10px) / 2);
        flex-basis: calc((100% - 10px) / 2);
  }
  .court_illust_box {
    padding: 17px 2px 10px;
  }
  .court_illust_box p {
    margin-bottom: 13px;
  }
  .court_illust_box.rec_3rd, .court_illust_box.rec_4th {
    margin-top: 10px;
  }
  .court_illust_box.rec_3rd .rec_illust, .court_illust_box.rec_4th .rec_illust {
    padding-bottom: 25px;
  }
  .court_illust_box.rec_1st .rec_illust img {
    max-width: 141px;
  }
  .court_illust_box.rec_2nd .rec_illust img {
    max-width: 80px;
  }
  .court_illust_box.rec_3rd .rec_illust img {
    max-width: 144px;
  }
  .court_illust_box.rec_4th .rec_illust img {
    max-width: 132px;
  }
  .rent_copy {
    font-size: 2rem;
    line-height: 1.5;
  }
  article.type-subpage .columns-2.court_details {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .columns-2.court_details > .court_con_text {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .court_point .item_point {
    font-size: 1.5rem;
    padding: 17px;
  }
  .court_point .item_point:nth-of-type(n+2) {
    margin-top: 7px;
  }
  .court_con_photo {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    margin-top: 20px;
  }
  .court_con_photo:not(.spOnly) {
    display: none;
  }
  .court_con_text .subpage_dl_generic dt {
    font-size: 1.2rem;
  }
  .court_con_text .subpage_dl_generic dd {
    font-size: 1rem;
  }
  #c-resv {
    margin-bottom: 0;
  }
  .course_attention {
    font-size: 1.2rem;
    margin-top: 30px;
  }
}
/* ============================== faq */
#faq {
  margin-bottom: 100px;
}
#faq > .wrap_1000:nth-of-type(n+2) {
  margin-top: 30px;
}

.faq_h3 {
  color: #c7a034;
  font-size: 2.5rem;
  line-height: 1.8;
}

.faq_list {
  margin-top: 20px;
}

.wrap_faq {
  border: 1px solid rgba(152, 152, 152, 0.5);
}
.wrap_faq:nth-of-type(n+2) {
  border-top: none;
}
.wrap_faq .question {
  border-bottom: 1px solid rgba(152, 152, 152, 0.5);
  color: #808080;
  display: table;
  padding: 12px 20px;
  position: relative;
  width: 100%;
}
.wrap_faq .q-num {
  display: table-cell;
  font-size: 3rem;
  font-weight: 100;
  line-height: 1;
  position: relative;
  top: -1px;
  width: 100px;
}
.wrap_faq .q-cont {
  display: table-cell;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.7;
  vertical-align: middle;
}
.wrap_faq .answer {
  background: #f1f1f1;
  font-weight: 500;
  line-height: 1.6;
  padding: 20px;
  padding-left: 120px;
}

/* ============================== for SP faq */
@media screen and (max-width: 860px) {
  #faq {
    margin-bottom: 30px;
  }
  #faq > .wrap_1000:nth-of-type(n+2) {
    margin-top: 20px;
  }
  .faq_h3 {
    font-size: 1.5rem;
    line-height: 1.5;
  }
  .faq_list {
    margin-top: 10px;
  }
  .wrap_faq .question {
    padding: 6px 10px;
  }
  .wrap_faq .q-num {
    font-size: 1.5rem;
    width: 38px;
  }
  .wrap_faq .q-cont {
    font-size: 1.2rem;
    line-height: 1.4;
  }
  .wrap_faq .answer {
    line-height: 1.5;
    padding: 14px 8px 14px 48px;
  }
}


/* ============================== news */
/* ----- archive ----- */
.category-news .page-header {
  position: relative;
  margin: 0;
  height: 33.3333333333vw;
}
.category-news.archive .page-title {
  color: #fff;
  font-size: 4rem;
  font-weight: 700;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}
.category-news .page-header_bg {
  background: url(/assets/images/news/thumbnail_news.jpg) no-repeat center;
  background-size: cover;
  overflow: hidden;
  position: fixed;
  left: 0;
  top: 105px;
  height: 33.3333333333vw;
  width: 100%; /* 元（2024-12-22）300vh */
  z-index: -1;
}

.category-news .page-header_bg::after {
  background-color: rgba(69, 190, 204, 0.5);
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

/* ============================== column */
/* ----- archive ----- */
.category-column .page-header {
  position: relative;
  margin: 0;
  height: 33.3333333333vw;
}
.category-column.archive .page-title {
  color: #fff;
  font-size: 4rem;
  font-weight: 700;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
}
.category-column .page-header_bg {
  background: url(/assets/images/column/thumbnail_column.jpg) no-repeat center;
  background-size: cover;
  overflow: hidden;
  position: fixed;
  left: 0;
  top: 105px;
  height: 33.3333333333vw;
  width: 100%; /* 元（2024-12-22）300vh */
  z-index: -1;
}

.category-column .page-header_bg::after {
  background-color: rgba(69, 190, 204, 0.5);
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.archive_cnt-area {
  background: #fff;
  padding: 100px 0 240px;
}

.archive .list_news {
  margin-bottom: 70px;
}



/* ----- single ----- */
.post-template-news main {
  padding: 100px 0 170px;
}
.post-template-news .entry {
  background: #f1f1f1;
  margin: 0 auto;
  padding: 80px 0;
  width: 1000px;
}
.post-template-news .entry .entry-header {
  margin: 0 auto;
  max-width: 800px;
}
.post-template-news .entry .entry-title {
  font-size: 3rem;
}
.post-template-news .entry .entry-title::before {
  content: none;
}
.post-template-news .entry .entry-meta {
  font-size: 1.7rem;
  margin: 10px 0 0;
}
.post-template-news .entry .entry-meta .posted-on {
  color: #406398;
}
.post-template-news .entry .post-thumbnail {
  margin: 30px auto 0;
  -o-object-fit: cover;
     object-fit: cover;
  width: 800px;
}
.post-template-news .entry .post-thumbnail img {
  width: 100%;
  max-width: 800px;
}
.post-template-news .entry .entry-content,
.post-template-news .entry .entry-summary {
  margin: 80px auto 0;
  padding: 0;
  max-width: 800px;
}
.post-template-news .post-navigation {
  margin: 40px auto;
}
.post-template-news .post-navigation .nav-links {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  min-height: 150px;
  max-width: 800px;
}
.post-template-news .post-navigation .nav-links > * a {
  color: #000;
}
.post-template-news .post-navigation .nav-links > * a:hover {
  color: #406398;
}
.post-template-news .post-navigation .nav-links .nav-previous {
  padding-right: 60px;
  position: relative;
  text-align: right;
}
.post-template-news .post-navigation .nav-links .nav-previous::after {
  background: rgba(0, 0, 0, 0.25);
  content: "";
  display: inline-block;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  height: 150px;
  width: 1px;
}
.post-template-news .post-navigation .nav-links .nav-previous a {
  display: block;
  padding-left: 30px;
  position: relative;
}
.post-template-news .post-navigation .nav-links .nav-previous a::before {
  content: "<";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.post-template-news .post-navigation .nav-links .nav-next {
  margin-bottom: 0;
  padding-left: 60px;
}
.post-template-news .post-navigation .nav-links .nav-next a {
  display: block;
  padding-right: 30px;
  position: relative;
}
.post-template-news .post-navigation .nav-links .nav-next a::before {
  content: ">";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.post-template-news .post-navigation .nav-links .post-title {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.5;
}
.post-template-news.image-filters-enabled .entry .post-thumbnail::before, .post-template-news.image-filters-enabled .entry .post-thumbnail::after {
  content: none;
}

.news_newpost {
  margin-top: 80px;
}

.h_recposts {
  font-size: 3rem;
  margin-bottom: 50px;
  text-align: center;
}

.link-btn_archive_news {
  margin-top: 70px;
}

/* ============================== for SP news / column */
/* ----- archive ----- */
@media screen and (max-width: 860px) {
  .category-news .page-header {
    height: 69.3333333333vw;
  }
  .category-news.archive .page-title {
    font-size: 2.5rem;
  }
  .category-news .page-header_bg {
    top: 0;
    height: 69.3333333333vw;
    width: 100%; /* 元（2024-12-22）144.2307692308vh */
  }
  .category-column .page-header {
    height: 69.3333333333vw;
  }
  .category-column.archive .page-title {
    font-size: 2.5rem;
  }
  .category-column .page-header_bg {
    top: 0;
    height: 69.3333333333vw;
    width: 100%; /* 元（2024-12-22）144.2307692308vh */
  }
  .archive_cnt-area {
    padding: 30px 0 40px;
  }
  .archive .list_news {
    margin-bottom: 50px;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}
/* ----- single ----- */
@media screen and (max-width: 860px) {
  .post-template-news {
    padding-top: 65px;
  }
  .post-template-news main {
    padding: 0 0 50px;
  }
  .post-template-news .entry {
    padding: 30px 0 35px;
    width: 100%;
  }
  .post-template-news .entry .entry-header {
    width: 85.6%;
  }
  .post-template-news .entry .entry-title {
    font-size: 1.5rem;
  }
  .post-template-news .entry .entry-meta {
    font-size: 1rem;
  }
  .post-template-news .entry .post-thumbnail {
    margin: 15px auto 20px;
    width: 85.6%;
  }
  .post-template-news .entry .entry-content,
.post-template-news .entry .entry-summary {
    margin: 20px auto 0;
    width: 85.6%;
  }
  .post-template-news .post-navigation {
    margin: 30px auto;
  }
  .post-template-news .post-navigation .nav-links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    min-height: 76px;
    max-width: 85.6%;
  }
  .post-template-news .post-navigation .nav-links .nav-previous {
    padding-right: 25px;
  }
  .post-template-news .post-navigation .nav-links .nav-previous::after {
    height: 76px;
  }
  .post-template-news .post-navigation .nav-links .nav-previous a {
    padding-left: 20px;
  }
  .post-template-news .post-navigation .nav-links .nav-next {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    padding-left: 25px;
  }
  .post-template-news .post-navigation .nav-links .nav-next a {
    padding-right: 20px;
  }
  .post-template-news .post-navigation .nav-links .post-title {
    font-size: 1rem;
  }
  .news_newpost {
    margin-top: 60px;
  }
  .news_newpost .list_news {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
  .h_recposts {
    font-size: 1.5rem;
    margin-bottom: 18px;
  }
  .link-btn_archive_news {
    margin-top: 40px;
  }
}
/* ============================== members */
main.cnt_members {
  padding: 100px 50px 70px;
}
@media screen and (max-width: 860px) {
  main.cnt_members {
    padding: 169px 0 70px;
  }
}

/* ----- members menu ----- */
#members-navigation {
  background: #406398;
  position: fixed;
  width: 100%;
  z-index: 9;
}
@media print, screen and (min-width: 861px) {
  #members-navigation {
    top: 105px;
  }
}
@media screen and (max-width: 860px) {
  #members-navigation {
    overflow-x: auto;
    top: 65px;
    scrollbar-width: none;
  }
  #members-navigation::-webkit-scrollbar {
    display: none;
  }
}
#members-navigation ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding-left: 0;
  margin: 0 auto;
  max-width: 1000px;
}
#members-navigation .mbr-nav_item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
  text-align: center;
}
#members-navigation .mbr-nav_item.active {
  background-color: #20314c;
}
#members-navigation .mbr-nav_item:hover {
  background-color: #334f7a;
}
#members-navigation .mbr-nav_item a {
  color: #fff;
  display: block;
  padding: 18px 20px;
}
@media screen and (max-width: 860px) {
  #members-navigation .mbr-nav_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 110px;
            flex: 0 0 110px;
  }
  #members-navigation .mbr-nav_item a {
    padding: 9px 10px;
  }
}

/* ----- members contents ----- */
.mbr_cnt-wrapper {
  margin: 0 auto;
  width: 1000px;
}
@media screen and (max-width: 860px) {
  .mbr_cnt-wrapper {
    width: 87.5%;
  }
}

/* ----- members h1 ----- */
.members-rank {
  background: #c7a034;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1;
  padding: 0 7px 3px;
}
@media screen and (max-width: 860px) {
  .members-rank {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.cnt_members .fh2_m-text {
  line-height: 1.25;
  margin-top: 15px;
}
@media screen and (max-width: 860px) {
  .cnt_members .fh2_m-text {
    margin-top: 8px;
  }
}

.cnt_members .fh2_s-text {
  font-size: 1.5rem;
}

/* ----- login ----- */
.mbr_ttl_login {
  font-size: 4rem;
  text-align: center;
}
.mbr_ttl_login span {
  display: block;
  font-size: 1.5rem;
  margin-bottom: 5px;
}
@media screen and (max-width: 860px) {
  .mbr_ttl_login {
    font-size: 2rem;
    margin-top: -54px;
  }
  .mbr_ttl_login span {
    font-size: 1rem;
  }
}

#wpmem_restricted_msg p {
  margin: 0 auto;
  max-width: 500px;
}

.mbr_login-form {
  margin: 140px auto 0;
  width: 100%;
  max-width: 500px;
}
.mbr_login-form input {
  border-color: #e0e0e0;
  padding: 20px 20px;
  width: 100%;
}
.mbr_login-form .form-item:nth-child(n+2) {
  margin-top: 25px;
}
.mbr_login-form .btn_login {
  margin-top: 30px;
}
.mbr_login-form .btn_login input {
  background-color: #c7a034;
  border-radius: 0;
  padding: 25px;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.mbr_login-form .btn_login input:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
@media screen and (max-width: 860px) {
  .mbr_login-form {
    margin-top: 70px;
    max-width: 87.5%;
  }
  .mbr_login-form input {
    padding: 10px;
  }
  .mbr_login-form .form-item:nth-child(n+2) {
    margin-top: 13px;
  }
  .mbr_login-form .btn_login {
    margin-top: 15px;
  }
  .mbr_login-form .btn_login input {
    padding: 13px;
  }
}

.mbr_signup {
  border-top: 1px solid #e0e0e0;
  margin: 60px auto 0;
  padding: 24px 0 0;
  text-align: center;
  max-width: 530px;
}
.mbr_signup .btn_wrapper {
  margin: 20px auto;
}
.mbr_signup .btn_wrapper .btn_generic {
  padding-right: 30px;
}
@media screen and (max-width: 860px) {
  .mbr_signup {
    margin-top: 30px;
    padding-top: 12px;
    max-width: 87.5%;
  }
}

.signup_members {
  color: #406398;
  margin-bottom: 20px;
}

.what_members {
  border-bottom: 1px solid #000;
  color: #000;
  cursor: pointer;
  padding-bottom: 5px;
}
.what_members:hover {
  border-bottom: none;
}

/* ----- mypage ----- */
.mypage_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding-left: 0;
  margin-top: 50px;
}
@media screen and (max-width: 860px) {
  .mypage_menu {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 25px;
  }
}

.mypage_menu-item {
  border: 1px solid #e0e0e0;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
}
@media print, screen and (min-width: 861px) {
  .mypage_menu-item:nth-child(n+2) {
    border-left: none;
  }
}
@media screen and (max-width: 860px) {
  .mypage_menu-item {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
  .mypage_menu-item:nth-child(2n) {
    border-left: none;
  }
  .mypage_menu-item:nth-child(n+3) {
    border-top: none;
  }
}
.mypage_menu-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px 10px 12px;
  height: 100%;
}
@media screen and (max-width: 860px) {
  .mypage_menu-item a {
    padding: 10px 5px 6px;
  }
}
.mypage_menu-item .mypage_menu-ttl {
  color: #406398;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 860px) {
  .mypage_menu-item .mypage_menu-ttl {
    font-size: 1.1rem;
    margin-bottom: 15px;
  }
}
.mypage_menu-item .icon_mbr_news {
  width: 102px;
}
.mypage_menu-item .icon_mbr_movie {
  width: 127px;
}
.mypage_menu-item .icon_mbr_reserv {
  width: 105px;
}
.mypage_menu-item .icon_mbr_info {
  width: 90px;
}
@media screen and (max-width: 860px) {
  .mypage_menu-item .icon_mbr_news {
    width: 68px;
  }
  .mypage_menu-item .icon_mbr_movie {
    width: 84px;
  }
  .mypage_menu-item .icon_mbr_reserv {
    width: 70px;
  }
  .mypage_menu-item .icon_mbr_info {
    width: 60px;
  }
}
.mypage_menu-item .obj_txt_more {
  -ms-flex-item-align: end;
      align-self: flex-end;
  margin-top: 24px;
  position: relative;
}
.mypage_menu-item .obj_txt_more .i_arrow {
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
@media screen and (max-width: 860px) {
  .mypage_menu-item .obj_txt_more {
    margin-right: 10px;
    margin-top: 12px;
  }
}
.mypage_menu-item:hover {
  background-color: #f1f1f1;
}
.mypage_menu-item:hover .obj_txt_more {
  color: #fff;
}
.mypage_menu-item:hover .obj_txt_more::before {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
}
.mypage_menu-item:hover .obj_txt_more .i_arrow {
  background-color: #fff;
  left: 17px;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
.mypage_menu-item:hover .obj_txt_more .i_arrow::before {
  background-color: #fff;
}
@media screen and (max-width: 860px) {
  .mypage_menu-item:hover .obj_txt_more .i_arrow {
    left: 12px;
  }
}

/* ----- news&topics ----- */
.mbr_cnt-wrapper .list_news {
  margin-top: 70px;
}
@media screen and (max-width: 860px) {
  .mbr_cnt-wrapper .list_news {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: 35px;
  }
}

/* ----- materials ----- */
.list_materials {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  padding-left: 0;
  margin: 60px auto 0;
}
@media screen and (max-width: 860px) {
  .list_materials {
    margin-top: 30px;
  }
}

.post_materials {
  color: #406398;
  -ms-flex-preferred-size: calc((100% - 81px) / 4);
      flex-basis: calc((100% - 81px) / 4);
  font-size: 1.5rem;
  line-height: 1.3;
}
.post_materials:nth-of-type(n+2) {
  margin-left: 27px;
}
.post_materials:nth-of-type(4n+1) {
  margin-left: 0;
}
.post_materials:nth-of-type(n+5) {
  margin-top: 50px;
}
@media screen and (max-width: 860px) {
  .post_materials {
    -ms-flex-preferred-size: calc((100% - 27px) / 2);
        flex-basis: calc((100% - 27px) / 2);
    font-size: 12px;
    font-size: 3.2vw;
  }
  .post_materials:nth-of-type(n+2) {
    margin-left: 27px;
  }
  .post_materials:nth-of-type(2n+1) {
    margin-left: 0;
  }
  .post_materials:nth-of-type(n+3) {
    margin-top: 25px;
  }
}

.matl-thumbnail {
  margin-bottom: 10px;
}
.matl-thumbnail img {
  aspect-ratio: 230/130;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.inner_matl-thumbnail {
  display: block;
  opacity: 1;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.inner_matl-thumbnail:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.matl-title {
  display: block;
}

.matl-time {
  display: block;
  margin-top: 0.5rem;
}

.mbr_nav-links {
  margin-top: 70px;
}
.mbr_nav-links .nav-links {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-left: 0;
}
.mbr_nav-links .prev,
.mbr_nav-links .next {
  display: block;
  padding: 0;
  height: 15px;
  width: 8px;
}
.mbr_nav-links .prev:hover,
.mbr_nav-links .next:hover {
  opacity: 0.8;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.mbr_nav-links .prev {
  margin-right: 1.4rem;
}
.mbr_nav-links .next {
  margin-left: 1.4rem;
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
.mbr_nav-links .page-numbers:not(.prev, .next) {
  border: 1px solid #406398;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  font-weight: 400;
  text-decoration: none;
  height: 4.2rem;
  width: 4.2rem;
}
.mbr_nav-links .page-numbers:not(.prev, .next):nth-child(n+3) {
  margin-left: 1rem;
}
@media screen and (max-width: 860px) {
  .mbr_nav-links .page-numbers:not(.prev, .next) {
    font-size: 1.8rem;
    height: 3.2rem;
    width: 3.2rem;
  }
}
.mbr_nav-links a.page-numbers:not(.prev, .next) {
  color: #406398;
}
.mbr_nav-links a.page-numbers:not(.prev, .next):hover {
  background-color: #406398;
  color: #fff;
}

/* ----- schedule ----- */
.c-sch_ttl {
  color: #c7a034;
  font-size: 4rem;
  margin-top: 100px;
}
@media screen and (max-width: 860px) {
  .c-sch_ttl {
    font-size: 2rem;
    margin-top: 50px;
  }
}

.mbr_cnt-wrapper .kintone_schedule {
  margin-top: 0;
}

/* ----- infomation ----- */
.mbr-cnt_border {
  background-color: #e0e0e0;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  margin-top: 60px;
  height: 1px;
}
@media screen and (max-width: 860px) {
  .mbr-cnt_border {
    margin-top: 30px;
  }
}

.tbl_mbr-data {
  margin-top: 60px;
}
.tbl_mbr-data th, .tbl_mbr-data td {
  border-color: #e0e0e0;
  font-weight: 500;
  padding: 20px 25px;
}
.tbl_mbr-data th {
  background-color: #f9f5eb;
  font-size: 1.4rem;
  text-align: left;
  width: 24%;
}
@media screen and (max-width: 860px) {
  .tbl_mbr-data {
    margin-top: 30px;
  }
  .tbl_mbr-data th, .tbl_mbr-data td {
    padding: 10px 13px;
  }
  .tbl_mbr-data th {
    font-size: 1.1rem;
    width: calc(7em + 30px);
  }
}

.link_delete-acct {
  margin-top: 80px;
}
@media screen and (max-width: 860px) {
  .link_delete-acct {
    margin-top: 40px;
  }
}

/* ============================== business */
/* ----- HERO ----- */
.subpages_biz .sub-hero_bg::after {
  content: none;
}

.subpages_biz #sub-hero .hero_h1 {
  font-size: 4rem;
  bottom: 1.6666666667vw;
  top: auto;
}

/* ----- 1st ----- */
#biz_intro .h2_m-text {
  color: #406398;
  font-size: 5rem;
  line-height: 1.1;
}

#biz_intro .h2_s-text {
  color: #c7a034;
  font-size: 3.5rem;
  line-height: 1;
  margin-top: 10px;
}

.biz_intro_desc {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.75;
}

#biz_intro .wrap_1000 {
  padding-top: 70px;
}
#biz_intro .wrap_1000 h3 {
  color: #406398;
  font-size: 3.5rem;
  line-height: 1.2;
  text-align: center;
}

.biz_intro_sup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 40px;
}
@media print, screen and (min-width: 861px) {
  .biz_intro_sup {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media print, screen and (min-width: 861px) {
  .biz_intro_sup div {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 calc((100% - 69px) / 4);
            flex: 0 0 calc((100% - 69px) / 4);
  }
  .biz_intro_sup div:nth-child(n+2) {
    margin-left: 23px;
  }
}
.biz_intro_sup div dt {
  background-color: #406398;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.75;
  padding: 1rem;
  text-align: center;
  height: 230px;
}
.biz_intro_sup div dd {
  font-weight: 500;
  letter-spacing: -0.1rem;
  margin-top: 20px;
  text-align: justify;
}

/* ----- 2nd ----- */
#biz_begin {
  padding-top: 95px;
}
#biz_begin .h2_m-text {
  color: #406398;
  font-size: 3.5rem;
  line-height: 1.28;
}

.biz_list-problem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.biz_list-problem li {
  border: 1px solid #406398;
  border-radius: 50%;
  color: #406398;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  height: 211px;
  width: 211px;
}
.biz_list-problem li:nth-child(n+2) {
  margin-left: 24px;
}
.biz_list-problem li:first-child, .biz_list-problem li:last-child {
  margin-top: 5.8333333333vw;
}

.biz_person-list {
  position: relative;
  margin-top: -7.5vw;
  z-index: 1;
}
.biz_person-list img {
  aspect-ratio: 251/174;
  margin: 0 auto;
  width: 317px;
}

#biz_begin .crs_link_setsumeikai {
  margin: 80px auto 0;
}

/* ----- 3rd ----- */
#biz_case {
  padding-top: 140px;
}
#biz_case .h2_m-text {
  color: #406398;
  font-size: 3.5rem;
  line-height: 1;
}
#biz_case h3 {
  background-color: #406398;
  color: #fff;
  padding: 6px 10px 8px;
  text-align: center;
}

.biz_warp-case_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 35px;
}

.case-group {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 calc((100% - 40px) / 2);
          flex: 0 0 calc((100% - 40px) / 2);
}
@media print, screen and (min-width: 861px) {
  .case-group:nth-child(2n) {
    margin-left: 40px;
  }
  .case-group:nth-child(n+3) {
    margin-top: 55px;
  }
}

.case-photo img {
  aspect-ratio: 480/347;
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.case-date {
  color: #406398;
  font-weight: 500;
  margin-top: 20px;
}

.case-client {
  font-size: 2.5rem;
  font-weight: 500;
}
.case-client::after {
  content: "さま";
  display: inline-block;
  font-size: 1.5rem;
  vertical-align: baseline;
}

.case-title {
  color: #406398;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 25px;
}

.case-text {
  font-size: 2rem;
  line-height: 1.75;
  margin-top: 30px;
  text-align: justify;
}

.biz_btn-more {
  margin-top: 35px;
}
.biz_btn-more button {
  border-radius: 0;
  font-size: 2.5rem;
  line-height: 1;
  padding: 9px 10px 11px;
  width: 100%;
}

.case-group.is-hidden {
  visibility: hidden;
  margin-top: 0;
  opacity: 0;
  height: 0;
  width: 0;
}

/* ----- CONTACT ----- */
#contact_biz {
  padding-top: 160px;
}
#contact_biz iframe {
  aspect-ratio: 1000/2170;
  height: 100%;
  width: 100%;
}

/* ============================== business */
@media screen and (max-width: 860px) {
  .biz_contact_fixed {
    background-color: #c7a034;
    color: #fff !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1;
    position: fixed;
    top: 65px;
    opacity: 1;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    text-align: center;
    height: 37px;
    width: 100%;
    z-index: 10;
  }
  .biz_contact_fixed::after {
    content: ">";
    display: block;
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 1;
    position: absolute;
    right: 2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  body.is-open .biz_contact_fixed {
    opacity: 0;
    -webkit-transition: all 0.25s ease;
    transition: all 0.25s ease;
    z-index: 0;
  }
}
/* ----- HERO ----- */
@media screen and (max-width: 860px) {
  .subpages_biz #sub-hero {
    aspect-ratio: 375/348;
    margin-top: 37px;
  }
  .subpages_biz .sub-hero_bg {
    top: 102px;
  }
  .subpages_biz .sub-hero_bg img {
    aspect-ratio: 375/348;
  }
  .subpages_biz #sub-hero .hero_h1 {
    font-size: 28px;
    font-size: 7.4666666667vw;
    letter-spacing: -0.2rem;
    bottom: 4vw;
    width: 100%;
  }
  .subpages_biz article.type-subpage {
    padding-top: 35px;
  }
}
/* ----- 1st ----- */
@media screen and (max-width: 860px) {
  #biz_intro .h2_m-text {
    font-size: 30px;
    font-size: 8vw;
    line-height: 1.9;
  }
  #biz_intro .h2_s-text {
    font-size: 22px;
    font-size: 5.8666666667vw;
    line-height: 1;
    margin-top: 0;
    padding-top: 0;
  }
  .biz_intro_desc {
    font-size: 15px;
    font-size: 4vw;
    letter-spacing: -0.15rem;
  }
  #biz_intro .wrap_1000 {
    padding-top: 55px;
  }
  #biz_intro .wrap_1000 h3 {
    font-size: 30px;
    font-size: 8vw;
    letter-spacing: -0.3rem;
  }
  .biz_intro_sup {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 15px;
  }
  .biz_intro_sup div:nth-child(n+2) {
    margin-top: 20px;
  }
  .biz_intro_sup div dt {
    line-height: 1;
    padding: 15px 10px;
    height: auto;
  }
  .biz_intro_sup div dd {
    line-height: 1.6;
    margin-top: 10px;
  }
}
/* ----- 2nd ----- */
@media screen and (max-width: 860px) {
  #biz_begin {
    padding-top: 45px;
  }
  #biz_begin .h2_m-text {
    font-size: 25px;
    font-size: 6.6666666667vw;
    line-height: 1.4;
    letter-spacing: -0.25rem;
  }
  .biz_list-problem {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: relative;
    margin: 0 auto;
    width: 90%;
  }
  .biz_list-problem li {
    font-size: 13px;
    font-size: 3.4666666667vw;
    margin: 0 !important;
    position: absolute;
    height: 28.2666666667vw;
    width: 28.2666666667vw;
  }
  .biz_list-problem li:nth-child(1) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    right: 49.6vw;
    top: 17.8666666667vw;
  }
  .biz_list-problem li:nth-child(3) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    left: 49.6vw;
    top: 17.8666666667vw;
  }
  .biz_list-problem li:nth-child(4) {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
    top: 36.2666666667vw;
  }
  .biz_person-list {
    margin-top: 53.3333333333vw;
  }
  .biz_person-list img {
    width: 255px;
  }
  #biz_begin .crs_link_setsumeikai {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: 5px;
    width: 100vw;
  }
}
/* ----- 3rd ----- */
@media screen and (max-width: 860px) {
  #biz_case {
    padding-top: 75px;
  }
  #biz_case .h2_m-text {
    font-size: 25px;
    font-size: 6.6666666667vw;
    line-height: 1.4;
    letter-spacing: -0.25rem;
  }
  #biz_case h3 {
    font-size: 20px;
    font-size: 5.3333333333vw;
    padding: 12px 10px 14px;
  }
  .biz_warp-case_inner {
    margin-top: 10px;
  }
  .case-group {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
  .case-group:nth-child(n+2) {
    margin-top: 50px;
  }
  .case-date {
    font-size: 13px;
    font-size: 3.4666666667vw;
    line-height: 1.5;
  }
  .case-client {
    font-size: 18px;
    font-size: 4.8vw;
  }
  .case-client::after {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
  .case-title {
    font-size: 20px;
    font-size: 5.3333333333vw;
    line-height: 1.2;
    margin-top: 15px;
  }
  .case-text {
    font-size: 15px;
    font-size: 4vw;
    line-height: 1.6;
    margin-top: 20px;
  }
  .biz_btn-more {
    margin-top: 15px;
  }
  .biz_btn-more button {
    font-size: 20px;
    font-size: 5.3333333333vw;
    padding: 9px 10px 11px;
  }
}
/* ----- CONTACT ----- */
@media screen and (max-width: 860px) {
  #contact_biz {
    padding-top: 75px;
  }
  #contact_biz .wrap_1000 {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    width: 100vw;
  }
  #contact_biz iframe {
    aspect-ratio: 375/2100;
  }
}

/* ============================== sec#form */
*lp_sec5*/
.lp_sec5 {
  padding-top: 10.6666666667vw;
}
@media print, screen and (min-width: 768px) {
  .lp_sec5 {
    margin: 0 auto;
    padding-top: 100px;
    max-width: calc(1000px + 2em);
  }
}

.lp_iframe-wrap {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
}
.lp_iframe-wrap iframe {
  height: 259.7333333333vw;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .lp_iframe-wrap {
    margin: 0;
  }
  .lp_iframe-wrap iframe {
    height: 1024px;
  }
}
/*# sourceMappingURL=main.css.map */


/* NISTページのYouTube埋め込み */
.iframe-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* アスペクト比16:9の場合 */
    padding-top: 30px;
    height: 0;
    overflow: hidden;

}
.iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
