@charset "UTF-8";
/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/
/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.2;
}

h1,
.h1 {
  font-size: calc(1.375rem + 1.5vw);
}

.font-main-color {
  color: #5db5bd;
}

.text-decoration {
  text-decoration: none;
}

h2,
.h2 {
  font-size: calc(1.325rem + 0.9vw);
}

h3,
.h3 {
  font-size: calc(1.3rem + 0.6vw);
}

.line-height {
  line-height: 1.8;
}

h4,
.h4 {
  font-size: calc(1.275rem + 0.3vw);
}

h5,
.h5 {
  font-size: 1.25rem;
}

h6,
.h6 {
  font-size: 1rem;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box;
}

ol,
ul,
li {
  list-style: none;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

html,
body {
  height: 100%;
}

body {
  line-height: 1;
}

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

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

/* 遅延表示 */
a {
  -webkit-transition: 0.3s ease;
  -webkit-transition-property: opacity, border, color, background;

  -moz-transition: 0.3s ease;
  -moz-transition-property: opacity, border, color, background;

  -o-transition: 0.3s ease;
  -o-transition-property: opacity, border, color, background;

  transition: 0.3s ease;
  transition-property: opacity, border, color, background;
}

a:hover {
  opacity: 0.7;
}

body {
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 16px; /* 基本フォントサイズ */
  line-height: 1.6;
  letter-spacing: 0.005em;
}

/* 見出しのフォント */
h1,
h2,
h3,
h4,
h5 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
}

h1.title {
  padding: 0;
  letter-spacing: 1px;
  line-height: 1.8;
  color: #fff;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
}

h1.title2 {
  padding: 0;
  text-align: left;
  letter-spacing: 1px;
  line-height: 1.8;
  color: #fff;
  font-weight: 700;
}

h1.title:after {
  display: block;
  line-height: 1em;
}

h1.contact-h1:after {
  content: "contact";
}

h1.privacy-h1:after {
  content: "privacy";
}

h1.members:after {
  content: "members";
}

h1.outline:after {
  content: "outline";
}

h1.event:after {
  content: "event";
}

h1.movie:after {
  content: "movie";
}

h1.news:after {
  content: "Information";
}

h1.faq:after {
  content: "faq";
}

h1.contact:after {
  content: "contact";
}

.article-header {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.entry-title,
.archive-title {
  font-size: 26px;
  margin: 16px 0;
  line-height: 1.3;
  text-align: center;
  margin-top: 3rem;
  margin-bottom: 3rem;
  width: 100% !important;
}

/* Cocoon SNSシェアボタンを丸くする */
.sns-share-buttons a,
.sns-follow-buttons a {
  border-radius: 50%;
  width: 44px !important;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* SNSアイコン下のテキストを非表示（Cocoon） */
.sns-share.ss-high-and-low-cl a .button-caption.button-caption,
.sns-share.ss-high-and-low-lc a .button-caption.button-caption {
  font-size: 12px;
  display: none;
}

.sns-share-buttons a .button-caption {
  font-size: 16px;
  margin-left: 10px;
  display: none;
}
/**************************
共通カテゴリ
***************************/
.mv-img {
  left: 50%;
  transform: translateX(-50%);
  top: -20px;
  position: relative;
  width: 100vw;
  height: 280px;
  background-size: cover;
}

.mv-img-feature {
  left: 50%;
  transform: translateX(-50%);
  top: -20px;
  position: relative;
  width: 100vw;
  height: 280px;
  background-size: cover;
}

.mv-img-outline-url {
  background-image: url(/images/category/outline-mv.webp);
}

.mv-img-info-url {
  background-image: url(/images/category/information-mv.webp);
}

.mv-img-member-url {
  background-image: url(/images/category/member-mv.webp);
}

.mv-img-event-url {
  background-image: url(/images/category/event-mv.webp);
}

.mv-img-movie-url {
  background-image: url(/images/category/movie-mv.webp);
}

.mv-img-contact-url {
  background-image: url(/images/category/contact-mv2.webp);
}

.mv-img-privacy-url {
  background-image: url(/images/category/privacy-mv.webp);
}

.mv-img-faq-url {
  background-image: url(/images/category/faq-mv.webp);
}

/* スマホサイズ調整 */
@media screen and (max-width: 767px) {
  body {
    font-size: 15px;
    line-height: 1.5;
  }
  h1 {
    font-size: 1.8rem;
  }
  h2 {
    font-size: 1.6rem;
  }
}

body {
  background-color: #fff;
  color: #333;
  line-height: 1.7;
}

img {
  max-width: 100%;
  height: auto;
  width: auto\9;
}

.width-wide {
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  position: relative;
}

.cf {
  zoom: 100%;
}

.cf:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}

.clr,
.clear {
  clear: both;
  line-height: 0;
  height: 0;
}

strong,
b {
  font-weight: bold;
}

section,
article,
div,
li {
  box-sizing: border-box;
}

body {
}

#wrapper {
  padding: 0;
  text-align: center;
  margin: 0 auto;
  height: 100%;
}

#contents {
  display: block;
  width: 100%;
  z-index: 1;
  text-align: left;
}

#contents a {
  text-decoration: none;
}

#contents a:hover {
  text-decoration: underline;
}

#header {
  position: relative;
  margin: 0 auto;
  padding: 0;
  float: left;
  width: auto;
}

.header-container-in.hlt-top-menu {
  display: flex;
  flex-direction: row;
  padding-bottom: 0.6rem;
}

.main {
  width: 860px;
  padding: 0px;
  border: 1px solid transparent;
  border-radius: var(--cocoon-basic-border-radius);
  position: relative;
  z-index: 0;
}

.nav-dispay-flex {
  display: flex;
  align-content: center;
  align-items: center;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.footer-bottom {
  padding: 1.5rem;
}

.footer-bottom {
  margin-top: 0;
  padding: 8px;
  position: relative;
  font-size: 16px;
}

.navi-footer-in > .menu-footer {
  padding: 0 0rem 1rem 0rem;
  margin-bottom: 0.5rem;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  text-align: center;
}

/**************************
header navi
***************************/
/* ヘッダー全体 */
.wsc-header {
  width: 100%;
  background: #081f36;
  /*border-bottom: 1px solid #e5e7eb;*/
  padding: 10px 0;
}

.header-container {
  background: #081f36;
}

.header-container.fixed-header {
  z-index: 3;
  background: #081f36;
}

.wsc-header-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

/* ロゴ */
.wsc-logo {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #103b66;
}

.wsc-logo img {
  height: 50px;
  margin-right: 12px;
}

.wsc-title {
  font-size: 14px;
  line-height: 1.2;
  font-weight: 700;
}

/* ナビ */
.wsc-nav {
  display: flex;
  align-items: center;
  gap: 22px;
  justify-content: flex-end;
}

/* ナビ項目 */
.wsc-nav-item {
  position: relative;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #fff;
  font-weight: 600;
  font-size: 18px;
  padding-left: 28px;
  /* アイコン分 */
  transition: color 0.2s ease;
}

/* ホバー時：文字色 */
.wsc-nav-item:hover {
  color: #1f80e0;
}

/* 下線（通常は非表示） */
.wsc-nav-item::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 2px;
  background: #fff;
  transition: width 0.25s ease;
}

/* ホバー時：下線を表示 */
.wsc-nav-item:hover::after {
  width: 100%;
}

/* アイコン共通 */
.wsc-nav-item::before {
  content: "";
  width: 20px;
  height: 20px;
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: filter 0.2s ease;
}

.header-container-in.hlt-top-menu .logo-header img {
  width: 336px;
  height: auto;
  vertical-align: middle;
}

.art-padding-left {
  padding-left: 16px;
}

/* HOME */
.wsc-nav-item.home::before {
  background-image: url(/images/icon/home_w.svg);
}

/* 新着情報 */
.wsc-nav-item.news::before {
  background-image: url(/images/icon/news_w.svg);
}

/* 概要 */
.wsc-nav-item.outline::before {
  background-image: url(/images/icon/outline_w.svg);
}

/* 動画 */
.wsc-nav-item.movie::before {
  background-image: url(/images/icon/youtube_w.svg);
}

/* 会員情報 */
.wsc-nav-item.member::before {
  background-image: url(/images/icon/login_w.svg);
}

/* お問い合わせ */
.wsc-nav-item.contact::before {
  background-image: url(/images/icon/mail_w.svg);
}

/**************************
検索窓
***************************/
.wsc-header-top {
  display: flex;
  justify-content: flex-end;
  padding: 10px 0;
  position: relative;
}

.wsc-header-top .search-form {
  display: flex;
  align-items: center;
  position: relative;
}

.wsc-header-top input[type="search"] {
  padding: 5px 10px;
  width: 250px;
  border: 1px solid #ccc;
  border-radius: 4px 0 0 4px;
}

.wsc-header-top button {
  padding: 5px 10px;
  border: 1px solid #ccc;
  border-left: none;
  background: #cee6ff;
  color: #fff;
  border-radius: 0 4px 4px 0;
  cursor: pointer;
}

#search-suggest {
  position: absolute;
  top: 100%;
  right: 0;
  background: #fff;
  border: 1px solid #ccc;
  width: 250px;
  z-index: 999;
  display: none;
}

#search-suggest ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#search-suggest li {
  border-bottom: 1px solid #eee;
}

#search-suggest li a {
  display: block;
  padding: 5px 10px;
  text-decoration: none;
  color: #333;
}

#search-suggest li a:hover {
  background: #f0f0f0;
}

/**************************
footer
***************************/
#footer {
  width: 100%;
  background-color: #081f36;
}

.footer {
  width: 100%;
  margin-top: 0;
  background-color: #081f36;
}

.footer a {
  color: #fff !important;
  text-decoration: none;
}

.footer a:hover {
  color: #1f80e0;
}

.footer__navi-heading {
  display: flex;
  color: #1f80e0;
}

.footer-copylight {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.footer-logo-flex {
  display: flex;
  justify-content: space-evenly;
  /* gap: 2rem; */
  flex-direction: column;
  align-items: flex-start;
}

/**************************
post__pagination
***************************/

.pagination {
  margin: 40px 0 0;
}

.pnavi {
  display: flex;
  justify-content: center;
  margin-top: 3rem;
}

.nav-links {
  display: flex;
}

.page-numbers {
  display: inline-block;
  margin-right: 10px;
  /*padding: 1px 15px;*/
  color: #0f1419;
  border-radius: 3px;
  background: #fff;
  border: 1px solid #0353a9;
}

.current {
  background: #0353a9;
  color: #fff;
}

.pagination .prev,
.pagination .next {
  background: transparent;
  box-shadow: none;
  color: #0353a9;
}

.pagination .dots {
  background: transparent;
  box-shadow: none;
  border: none;
}

.pagination {
  margin: 24px 0;
  clear: both;
  text-align: center;
  display: inline-flex;
  justify-content: flex-start;
  width: 100%;
}

.list-box {
  width: 100%;
}

.mobile-menu-buttons {
  background: #081f36;
  color: #fff;
  padding: 1rem 0;
}

.mobile-menu-buttons .menu-caption {
  color: #fff;
}

.mobile-menu-buttons .menu-icon {
  color: #fff;
}

.menu-content {
  background: #081f36;
}

.menu-drawer a {
  color: #fff;
}

.menu-drawer li {
  display: block;
  display: flex;
  align-items: center;
}

/*1023px以下でロゴを消す*/
@media screen and (max-width: 1023px) {
  img.site-logo-image {
    visibility: hidden;
  }
}

@media screen and (max-width: 1023px) {
  .logo-menu-button.menu-button {
    background-image: url(/images/logo/logo-wsc-madj_w.webp);
    background-size: auto 40px;
    background-position: center;
    background-repeat: no-repeat;
  }
}

@media screen and (max-width: 1023px) {
  .wsc-header {
    display: none !important;
    /* 強制的に非表示にする */
  }
}

@media screen and (max-width: 834px) {
  main.main,
  div.sidebar {
    padding: 0;
    margin: 12px 0;
    border-width: 0;
  }
}

/**************************
見出し
***************************/

.midashi {
}

.info-f {
  margin-bottom: 8rem;
}

.midashi h2 {
  margin: 25px 0 25px 0px;
  border-left: 5px solid #00a0e9;
  padding-left: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.midashi-title-h2 {
  font-size: 24px;
  font-weight: 700;
}

.midashi-title-h2_1 {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 0rem;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;

      text-align: left;
}

.midashi-title-h3 {
  font-size: 20px;
  font-weight: 500;
}

.midashi-top-h3 {
  font-size: 20px;
  font-weight: 700;
}

.midashi-original {
  border-left: 5px solid #00a0e9;
  font-size: 20px;
  padding-left: 15px;
}

/**************************
 margin
***************************/
.margin-1rem {
  margin: 1rem;
}

.margin-2rem {
  margin: 2rem;
}

.margin-top-unset {
  margin-top: unset;
}

.margin-bottom-unset {
  margin-bottom: unset;
}

.margin-top-5rem {
  margin-top: 5rem;
}

.margin-left-5rem {
  margin-left: 5rem;
}

.margin-right-5rem {
  margin-right: 5rem;
}

.margin-bottom-5rem {
  margin-bottom: 5rem;
}

.margin-top-3rem {
  margin-top: 3rem;
}

.margin-top-4rem {
  margin-top: 4rem;
}

.margin-left-4rem {
  margin-left: 4rem;
}

.margin-right-4rem {
  margin-right: 4rem;
}

.margin-bottom-4rem {
  margin-bottom: 4rem;
}

.margin-bottom-8rem {
  margin-bottom: 8rem;
}

.margin-bottom-8rem-i {
  margin-bottom: 8rem !important;
}

.margin-left-3rem {
  margin-left: 3rem;
}

.margin-right-3rem {
  margin-right: 3rem;
}

.margin-bottom-3rem {
  margin-bottom: 3rem;
}

.margin-top-2rem {
  margin-top: 2rem;
}

.margin-left-2rem {
  margin-left: 2rem;
}

.margin-right-2rem {
  margin-right: 2rem;
}

.margin-bottom-2rem {
  margin-bottom: 2rem;
}

.margin-top-1rem {
  margin-top: 1rem;
}

.margin-left-1rem {
  margin-left: 1rem;
}

.margin-right-1rem {
  margin-right: 1rem;
}

.margin-bottom-1rem {
  margin-bottom: 1rem;
}

.margin-bottom-none {
  margin-bottom: 0;
}

/**************************
 padding
***************************/
.padding-0 {
  padding: 0;
}

.padding-1rem {
  padding: 1rem;
}

.padding-1-05rem {
  padding: 1.5rem;
}

.padding-1-04-2rem {
  padding: 1.4rem 2rem;
}

.padding-2rem {
  padding: 2rem;
}

.padding-2rem-top0 {
  padding: 0 2rem 2rem 2rem;
}

.padding-top-8rem {
  padding-top: 8rem;
}

.padding-top-7rem {
  padding-top: 7rem;
}

.padding-top-6rem {
  padding-top: 6rem;
}

.padding-top-5rem {
  padding-top: 5rem;
}

.padding-bottom-5rem {
  padding-bottom: 5rem;
}

.padding-left-4rem {
  padding-left: 4rem;
}

.padding-right-4rem {
  padding-right: 4rem;
}

.padding-top-3rem {
  padding-top: 3rem;
}

.padding-bottom-3rem {
  padding-bottom: 3rem;
}

.padding-top-2rem {
  padding-top: 2rem;
}

.padding-left-2rem {
  padding-left: 2rem;
}

.padding-right-2rem {
  padding-right: 2rem;
}

.padding-bottom-2rem {
  padding-bottom: 2rem;
}

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

.padding-left-1rem {
  padding-left: 1rem;
}

.padding-right-1rem {
  padding-right: 1rem;
}

.padding-bottom-1rem {
  padding-bottom: 1rem;
}

/**************************
タグ関連
***************************/
.cat-link {
  color: var(--cocoon-white-color);
  text-decoration: none;
  display: inline-block;
  margin-right: 5px;
  padding: 2px 6px;
  font-size: 12px;
  background-color: var(--cocoon-text-color);
  border-radius: var(--cocoon-badge-border-radius);
  word-break: break-all;
  display: flex;
  height: 28px;
  align-items: center;
}

.tag-link,
.comment-reply-link {
  color: var(--cocoon-text-color);
  text-decoration: none;
  display: inline-block;
  margin-right: 5px;
  padding: 1px 5px;
  font-size: 12px;
  border: 1px solid var(--cocoon-x-pallid-text-color);
  border-radius: var(--cocoon-badge-border-radius);
  word-break: break-all;
  display: flex;
  height: 28px;
  align-items: center;
}

.flex-info-date-text {
  /*width: 54%;*/
  width: 100%;
  display: flex;
  flex-direction: column;
  /*gap: 1rem;*/
}

.info-image-width {
  /*width: 45%;*/
  width: auto;
}

.flex-info-contents {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  margin-bottom: 1rem;
}

.flex-dir-info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.info-list-frame {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: flex-start;
  gap: 2%;
}

.info-list-item-width {
  width: 49%;
}

.info-list-item-date {
  margin-right: 18px;
  display: flex;
  align-items: center;
}

.info-list-item-content {
  margin-bottom: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}

.date-icon {
  width: auto;
  height: auto;
  padding-right: 0.2rem;
  content: url(/images/icon/schedule-16.svg);
}

.date-icon:hover {
  content: url(/images/icon/schedule-16-h.svg);
}

.related-entry-card-title,
.entry-card-title {
  font-size: 18px;
  margin: 0 0 0.4em 0;
  line-height: 1.6;
  font-weight: bold;
  display: flex;
  overflow: hidden;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  justify-content: flex-start;
}

.entry-categories-tags {
  margin-bottom: 0px;
  display: flex;
  flex-wrap: wrap;
}

.icons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  align-content: center;
}

.icons a img {
  width: 32px;
}

.logo-address {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.footer-grid {
  display: flex;
  gap: 4rem;
}

.footer-frame-gap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 7rem;
  padding: 0 1rem;
}

.footer__navi {
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  align-items: flex-start;
}

#footer .inner {
  text-align: center;
  max-width: 1280px;
  margin: 0 auto;
}

.footer-bottom-content {
  float: right;
  text-align: right;
  width: 100%;
}

.footer-bottom-logo img {
  /* height: 50px; */
  display: none;
  /* width: auto; */
}

.fl {
  float: left;
}

.fr {
  float: right;
}

.mgt0 {
  margin-top: 0 !important;
}

.mgt15 {
  margin-top: 15px;
}

.mgt75 {
  margin-top: 75px;
}

.mgb5 {
  margin-bottom: 5px;
}

.mgb10 {
  margin-bottom: 10px;
}

.mgb15 {
  margin-bottom: 15px;
}

.mgb17 {
  margin-bottom: 17px;
}

.mgb20 {
  margin-bottom: 20px;
}

.mgb30 {
  margin-bottom: 30px;
}

.mgb40 {
  margin-bottom: 40px;
}

.mgb50 {
  margin-bottom: 50px;
}

.mgb60 {
  margin-bottom: 60px;
}

.mgb70 {
  margin-bottom: 70px;
}

.mgb80 {
  margin-bottom: 80px;
}

.mgb90 {
  margin-bottom: 90px;
}

.mgb100 {
  margin-bottom: 100px;
}

.b,
.bold {
  font-weight: bold;
}

.border {
  width: 100%;
  clear: both;
  border-bottom: 1px solid #ccc;
  margin: 30px 0 20px 0;
}

.t_center {
  text-align: center;
}

.c_red {
  color: #ff0066;
}

.bread {
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
  min-height: 18px;
  padding: 5px 0 5px 0px;
  clear: both;
  color: #0054a6;
  font-size: 80%;
  text-align: left;
  background-color: #fff;
  border-bottom: 2px solid #0054a6;
}

.bread a {
  color: #0054a6;
  text-decoration: none;
}

.bread a:hover {
  color: #0054a6;
  text-decoration: underline;
}

.bread ul li {
  list-style-type: none;
  float: left;
  padding-right: 5px;
}

footer .copyright {
  /* background-color: #fff; */
  color: #fff;
  text-align: center;
  padding: 20px 0;
  font-size: 18px;
}

/* PCの表示（1行表示） */
.text-container span {
  display: inline-block;
}

/* SPの表示（2行表示） */
@media screen and (max-width: 767px) {
  .text-container span {
    display: block;
  }
}

a img {
  border: none;
}

p img {
  padding: 0;
  max-width: 100%;
}

img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignright {
  float: right;
  padding: 4px;
  margin: 0 0 2px 7px;
  display: inline;
}

img.alignleft {
  float: left;
  padding: 4px;
  margin: 0 7px 2px 0;
  display: inline;
}

.center {
  margin-left: auto;
  margin-right: auto;
}

/**************************
共通カテゴリ
***************************/
.category_text {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color: #fff;
  font-weight: 400 !important;
}

.mv-img {
  left: 50%;
  transform: translateX(-50%);
  top: -2rem;
  position: relative;
  width: 100vw;
  height: 280px;
  background-size: cover;
}

.mv-img-feature {
  left: 50%;
  transform: translateX(-50%);
  top: -20px;
  position: relative;
  width: 100vw;
  height: 280px;
  background-size: cover;
}

.mv-img-c {
  position: absolute;
  top: 0rem;
  left: 0;
  width: 100%;
  height: 280px;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}

.mv-img-c2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 280px;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.mv-frame-pr {
  width: 1200px;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-start;
}

.navi-in > ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
  background: #0d3760;
}

/**************************
bx-wrapper
***************************/

.bx-wrapper {
  position: relative;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.bx-wrapper img {
  max-width: 100%;
  display: block;
}

.bxslider {
  margin: 0;
  padding: 0;
}

ul.bxslider {
  list-style: none;
}

.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}

.bx-wrapper {
  background: #fff;
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: 20px;
  width: 100%;
}

/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url(/images/top/bx_loader.gif) center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: 0.85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}

.bx-wrapper .bx-pager.bx-default-pager a {
  background: #fff;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #0d3760;
}

.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline;
}

.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0;
}

/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url(/images/top/bx-prev.png) no-repeat center;
}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
}

.bx-wrapper .bx-next {
  right: 10px;
  background: url(/images/top/bx-next.png) no-repeat center;
}

.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  opacity: 0.7;
}

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 40px;
  height: 61px;
  text-indent: -9999px;
  z-index: 100;
}

.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url(/images/controls.png) -86px -11px no-repeat;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url(/images/controls.png) -86px -44px no-repeat;
  margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}

/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%;
}

.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: 0.85em;
  padding: 10px;
}

/* swiper */
.slide-block {
  width: 680px;
  margin: 0 auto;
}

.slide-block li {
  width: 680px;
  margin-left: 15px;
  margin-right: 15px;
  margin-bottom: 20px;
}

.swiper-button-next {
  background: url(/images/top/arrow-right.png) no-repeat center center;
  background-size: cover;
  width: 50px;
  height: 50px;
  text-indent: -9999px;
  border: none;
  position: absolute;
  top: 50%;
  right: -70px;
  z-index: 20;
  background-size: 100% auto;
  display: block;
  margin-right: 2rem;
}

.swiper-button-prev {
  background: url(/images/top/arrow-left.png) no-repeat center center;
  background-size: cover;
  width: 50px;
  height: 50px;
  text-indent: -9999px;
  border: none;
  position: absolute;
  left: -70px;
  top: 50%;
  z-index: 20;
  background-size: 100% auto;
  display: block;
  margin-left: 2rem !important;
}

.slide-block .img {
  float: left;
  width: 300px;
}

.slide-block .text {
  float: right;
  width: 344px;
  margin-top: 60px;
}

.slide-block .step {
  margin-bottom: 20px;
}

.swiper-pagination-bullet {
  margin: 0 1rem !important;
  width: 24px !important;
  height: 24px !important;
  line-height: 24px !important;
  text-align: center !important;
  color: #000 !important;
  opacity: 1 !important;
  background: #ccc !important;
}

.swiper-pagination-bullet-active {
  background: green !important;
  color: #fff !important;
}

/* navigation */
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "" !important;
}

.swiper-button-prev i,
.swiper-button-next i {
  color: green;
  transform: translateY(-25px);
  font-size: 40px;
}

.swiper-scrollbar {
  background: #ccc !important;
}

.swiper-scrollbar-drag {
  background: rgb(172, 245, 255) !important;
}

.swiper-wrapper {
  margin-top: 16px;
  margin-left: 1px;
  margin-bottom: 84px;
}

.swiper-flex-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 660px;
  gap: 2rem;
}

.swiper-flex-column {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}

.swiper-flex-wide {
  width: 680px;
  margin: 0 auto;
  display: flex;
  align-content: center;
  justify-content: center;
}

.swiper-title {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.content {
  margin-top: 0;
}

/* icons */
.fa-clock:before {
  content: url(/images/icon/schedule-16.svg);
}
.fa-login_w:before {
  content: url(/images/icon/login_w.svg);
}
  .fa-menu:before {
    content: url(/images/icon/menu-32.svg);
  }

  .fa-outline_w:before {
    content: url(/images/icon/outline_w.svg);
  }

  .fa-news_w:before {
    content: url(/images/icon/news_w.svg);
  }
  .fa-menu-w:before {
    content: url(/images/icon/menu-32-w.svg);
  }
  .fa-home_w:before {
    content: url(/images/icon/home_w.svg);
  }
   .fa-mail_w:before {
    content: url(/images/icon/mail_w.svg);
  }

  .fa-home:before {
    content: url(/images/icon/home-16-w.svg);
  }

  .fa-folder:before {
    content: url(/images/icon/folder-16.svg);
  }

  .fa-search-w:before {
    content: url(/images/icon/search-16-w.svg);
  }

  .fa-logo:before {
    content: url(/images/logo/Full_color_logo_high.png);
  }

  .fa-search:before {
    content: url(/images/icon/search-16.svg);
  }

  .fa-tag:before {
    content: url(/images/icon/tag-16.svg);
  }

  .fa-history:before {
    content: url(/images/icon/history-16.svg);
  }

  .fa-bell:before {
    content: url(/images/icon/bell-16-w.svg);
  }

  .fa-file-alt:before {
    content: url(/images/icon/file-16-w.svg);
  }

  .fa-file-import:before {
    content: url(/images/icon/new-folder-16-w.svg);
  }

  .fa-bone:before {
    content: url(/images/icon/bone-16-w.svg);
  }

  .fa-bone-h:before {
    content: url(/images/icon/bone-16-h.svg);
  }

  .fa-envelope:before {
    content: url(/images/icon/mail-16-w.svg);
  }

  .fa-video:before {
    content: url(/images/icon/youtube-activity-16-w.svg);
  }

  .fa-building:before {
    content: url(/images/icon/company-16-w.svg);
  }

  .fa-bookmark:before {
    content: url(/images/icon/bookmark-16-w.svg);
  }

  .fa-person_w:before {
    content: url(/images/icon/person_w.svg);
  }

  .fa-lock_person_w:before {
    content: url(/images/icon/lock_person_w.svg);
  }

  .fa-person-circle-question:before {
    content: url(/images/icon/faq-16-w.svg);
  }

  .fa-care:before {
    content: url(/images/icon/care-16-w.svg);
  }

  .ie #wrapper {
    z-index: 0;
    width: expression(this.width >=960? "960px": "auto");
  }

  /* facebook */
  .fb-like-box,
  .fb-like-box span,
  .fb-like-box iframe[style] {
    width: 100% !important;
  }

  .cycloneslider {
    margin-left: aoto !important;
    margin-right: auto !important;
  }

  .bxslider img {
    width: 100% !important;
    height: auto !important;
  }

  .post .entry p {
    margin-bottom: 20px;
    line-height: 1.7;
  }

  .post .entry br {
    width: 100%;
    clear: both;
  }

  .post .entry ul {
    margin: 20px 0 30px 20px;
  }

  .post .entry ol {
    margin: 20px 0 30px 24px;
  }

  .post .entry ol li {
    list-style-type: decimal;
    margin-bottom: 4px;
  }

  .post .entry ul li {
    list-style-type: disc;
    margin-bottom: 4px;
  }

  .post .entry a {
    text-decoration: underline !important;
    color: #0054a5;
  }

  table.base {
    width: 100%;
    margin-bottom: 40px;
  }

  table.base th {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    padding: 1.5%;
    background-color: #e1eef6;
    font-weight: bold;
  }

  table.base td {
    padding: 1.5%;
    background-color: #f2f2f2;
    border-bottom: 2px solid #fff;
  }

  table.style-1,
  table.base_2 {
    width: 100%;
    margin-bottom: 40px;
  }

  table.style-1 th,
  table.base_2 th {
    vertical-align: top;
    border-bottom: 1px dotted #b0b0b0;
    padding: 15px 1.5% 15px 1.5%;
    font-weight: bold;
  }

  table.style-1 td,
  table.base_2 td {
    padding: 15px 1.5% 15px 1.5%;
    border-bottom: 1px dotted #b0b0b0;
  }

  table.sub td {
    padding: 0 0 0% 0 !important;
  }

  table.style-2 {
    width: 100%;
    margin-bottom: 90px;
    margin-top: 15px;
  }

  table.style-2 th {
    background-color: #efefef;
  }

  table.style-2 th {
    padding: 6px;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #4d4d4d;
  }

  table.style-2 td {
    padding: 6px;
    background-color: #fff;
    border: 1px solid #4d4d4d;
  }

  table.style-3 {
    width: 100%;
    margin: 50px auto 60px auto;
  }

  table.style-3 td,
  table.style-3 th {
    padding: 13px 2% 13px 2%;
  }

  tr.gray {
    background-color: #f6f7f7;
  }

  tr.blue th,
  tr.blue td {
  }

  table.style-3 span.rei {
    margin-left: 20px;
  }

  /************************************
** YouTube
************************************/

  .video-container {
    max-width: 100% !important;
    margin: 30px 0;
  }

  .global-nav {
    position: fixed;
    top: 0;
    height: 80px;
  }

  /* ▼ ファーストビュー（画面いっぱい） */
  .fv-wrap {
    width: 100vw;
    /* 画面幅ぜんぶ */
    height: 100vh;
    /* 画面の高さぜんぶ */
    position: relative;
    margin-left: calc(50% - 50vw) !important;
    overflow: hidden;
    margin: 0;
    padding: 0;
  }

  /* ▼ 動画を中央に配置して拡大表示 （最も安定する方式） */
  .video-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /* 16:9 を維持しつつ、画面を必ず覆う */
    width: 100vw;
    height: 56.25vw;
    /* 16:9（高さ = 幅 * 0.5625） */
    min-height: 100vh;
    min-width: 177.77vh;
    /* 高さ基準での16:9（幅 = 高さ * 1.7777） */
    pointer-events: none;
    /* 動画をクリック不要なら */
  }

  /* ▼ iframe そのもの */
  .video-bg iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
  }

  /* 黒い透明レイヤー */
  .video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.35);
    /* ← ここで暗さ調整（0〜1） */
    pointer-events: none;
    /* 動画のクリックを邪魔しない */
    z-index: 5;
    /* 動画より上、テキストより下に調整可能 */
  }

  .video-bg-inner {
    position: relative;
    width: 100%;
    height: 24.25vw;
  }

  .video-wrapper {
    width: 100%;
    position: relative;
    padding-top: 56.25%;
    /* 16:9 アスペクト比 */
  }

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

  .video-wrapper2 {
    width: 100%;
    position: relative;
  }

  .video-container,
  .instagram-container,
  .facebook-container {
    max-width: auto;
    margin: 30px 0;
  }

  /************************************
** TOP news tag
************************************/
  .category-tag-bg {
    display: flex;
  }

  .category-link-class {
    color: #fff;
    text-decoration: none;
  }

  .tag-link-class {
    color: var(--cocoon-text-color);
    text-decoration: none;
  }

  .top-tags {
    display: flex !important;
    flex-direction: row;
  }

  .top-news {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    align-items: baseline;
  }

  .top-categories-tags-text {
    margin-bottom: 0px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-start;
  }

  .top-news-frame {
    margin: 2rem 0 6rem;
    clear: both;
    text-align: center;
    display: flex;
    justify-content: flex-start;
    width: 100%;
    flex-direction: column;
  }

  .top-news-lead {
    margin: 1rem 0;
    font-weight: 400;
    width: 100%;
  }

  /************************************
** btn
************************************/
  .btn-margin {
    margin-top: 1rem;
  }

  .btn {
    border-style: none;
    color: var(--cocoon-custom-text-color, #fff);
    background-color: var(--cocoon-custom-background-color);
    border-color: var(--cocoon-custom-border-color);
    font-weight: bold;
    border-radius: 4px;
    display: inline-block;
    cursor: pointer;
    line-height: normal;
    padding: 7px 13px;
    text-decoration: none;
    text-align: center;
    font-size: 14px;
    position: relative;
    transition: all 0.3s ease-in-out;
    background-clip: padding-box;
  }

  .btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 300px;
    height: 60px;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s;
  }

  .btn a:hover {
    color: #f2f2f2;
  }

  .btn02 a {
    background-color: #1f80e0;
    border: 1px solid #1f80e0;
    border-radius: 35px;
  }

  ..btn02 a:hover {
    background-color: #1f80e0;
    border: 1px solid #333;
  }

  .btn02 a::before {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    right: -35px;
    transform: rotate(30deg);
    width: 12px;
    height: 1px;
    background-color: #333;
  }

  .btn02 a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -35px;
    transform: translateY(-50%);
    width: 70px;
    height: 1px;
    background-color: #333;
  }

  .midashi-title-h2 {
    text-align: left;
  }

  .lead-text {
    text-align: center;
  }

  /************************************
** TOP背景
************************************/
  /* 色指定 */
  .section3 {
    padding-bottom: 4rem;
  }
  .section--blue {
    background-color: #cee6ff;
  }

  .section--white {
    background-color: #ffffff;
  }
  .lead-text2 {
    padding-bottom: 1rem;
  }
  /* 固定ページ下部の検索ボックスを非表示 */
  .page .search-box,
  .page .search-form {
    display: none !important;
  }

  .radio-wrap label {
    display: block;
    margin-bottom: 0.5rem;
    cursor: pointer;
  }

  /************************************
** 必須
************************************/
  .contact-requires-flex {
    display: flex;
    gap: 1.4rem;
    flex-direction: row;
    align-items: center;
  }

  .haveto {
    background: #ff4500;
    color: #fff;
    position: relative;
    width: 3rem;
    height: 2rem;
    display: flex;
    justify-content: center;
    font-size: small;
    display: flex;
    align-items: center;
    border-radius: 8px;
  }
  /************************************
** CF7 ラジオボタンを確実に操作可能にする
************************************/
  /* CF7 ラジオボタンを確実に操作可能にする */
  .wpcf7 input[type="radio"] {
    pointer-events: auto !important;
    position: relative;
    z-index: 10;
  }

  .wpcf7 label {
    pointer-events: auto !important;
  }

  .wpcf7-list-item {
    position: relative;
    z-index: 10;
  }

  /************************************
** 印刷用
************************************/
  @media print {
    /*header, #back-top, #footer {display: none;}*/
  }

  /************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
  /* タブレット（横） */
  @media (max-width: 1024px) {
    .wsc-nav-item {
      font-size: 16px;
    }

    .inner {
      width: 100%;
      margin: 0 auto;
      padding: 0 2rem;
    }
  }

  /* タブレット（縦） */
  @media (max-width: 768px) {
    article {
      /*padding-top: 2rem;*/
      padding-bottom: 2rem;
    }

      .post-password-form {
    margin-top: 4rem;
    padding-top: 4rem;
  }
    .scrolled .page_top_btn {
      display: none;
    }

    .entry-title,
    .archive-title {
      margin-top: 0;
    }

    .article h2 {
      font-size: 20px;
      padding: 0px;
      background-color: var(--cocoon-xx-thin-color);
      border-radius: var(--cocoon-badge-border-radius);
      padding-left: 1rem;
    }

    .mv-img {
      top: 0px;
    }

    .group_4 ul {
      display: flex;
      justify-content: space-between;
      flex-direction: column;
    }
  }

  /************************************
** 改行
************************************/
  br.br-pc {
    display: block !important;
  }

  br.br-pc2 {
    display: none !important;
  }

  /* スマホ */
  @media (max-width: 480px) {
  }

  @media screen and (max-width: 1023px) {
    /*必要ならばここにコードを書く*/
    #footer {
      display: none;
    }
  }

  @media (min-width: 1200px) {
    h1,
    .h1 {
      font-size: 2.5rem;
    }

    h2,
    .h2 {
      font-size: 3rem;
    }

    h3,
    .h3 {
      font-size: 1.75rem;
    }

    h4,
    .h4 {
      font-size: 1.5rem;
    }
  }

  @media (max-width: 1200px) {
    h1,
    .h1 {
      font-size: 1.8rem;
    }

    h2,
    .h2 {
      font-size: 1.6rem;
    }

    h3,
    .h3 {
      font-size: 1.5rem;
    }

    h4,
    .h4 {
      font-size: 1.5rem;
    }
  }

  @media screen and (min-width: 1040px) {
    .inner {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 2rem;
      gap: 3rem;
    }
  }

  @media screen and (max-width: 1050px) {
  }

  @media screen and (min-width: 960px) {
    #wrapper {
      width: 100%;
      margin: 0 auto;
    }
  }

  @media screen and (max-width: 834px) {
    .content {
      margin-top: -4px;
    }
  }

  @media screen and (max-width: 834px) {
    .article ul,
    .article ol {
      padding-left: 0;
    }
  }

  @media screen and (min-width: 769px) {
    #page-top {
      position: fixed;
      display: block;
      right: 20px;
      bottom: 40px;
    }
  }

  #page-top {
    height: 60px;
    z-index: 100;
    width: 60px;
  }

  /* pcまで */
  div.slider {
    width: 700px;
    display: block;
    margin: 0 auto 20px auto;
  }

  ul.bxslider01 li {
    display: block;
    width: 700px;
    height: 525px;
  }

  ul.bxslider01 li img {
    display: block;
    width: 700px;
    height: auto;
  }

  ul.bxslider02 li a {
    display: block;
    width: 100px;
    height: 75px;
  }

  ul.bxslider02 li a img {
    display: block;
    width: auto;
    height: 100%;
    background-size: cover;
  }

  div.controlWrap {
    width: 700px;
    display: block;
    position: relative;
    margin: 10px auto;
  }

  div.controlWrap p#PrevIcon a {
    /*矢印画像（前へ）*/
    display: block;
    width: 16px;
    height: 43px;
    position: absolute;
    background: url(/images/top/arrow-left.png) center center no-repeat;
    color: #fff;
    top: 20px;
    left: 0px;
    text-indent: -9999px;
  }

  div.controlWrap p#NextIcon a {
    /*矢印画像（次へ）*/
    display: block;
    width: 16px;
    height: 43px;
    position: absolute;
    background: url(/images/top/arrow-right.png) center center no-repeat;
    color: #fff;
    top: 20px;
    right: 0px;
    text-indent: -9999px;
  }

  body {
    margin: 0;
    padding: 0;
  }

  #wrapper {
    height: 100%;
    position: relative;
    height: auto !important;
    height: 100%;
    min-height: 100%;
  }

  #contents {
    width: 100%;
    overflow: hidden;
    padding: 20px 0 70px 0;
  }

  #contents.page {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 20px 0 70px 0;
  }

  #header {
  }

  #header .inner {
    min-height: 110px;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }

  .bread {
    width: 960px;
  }

  .content-inner {
    max-width: 1200px;
    margin: 30px auto 30px auto;
  }

  #main {
    width: auto;
    margin-left: auto;
    margin-right: auto;
    min-height: 220px;
  }

  .page article {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  .entry {
    float: left;
    width: 100%;
  }

  .foot_group {
    float: left;
    width: 100%;
  }

  h3 small {
    font-size: 0.7em;
  }

  .pc_none {
    display: none;
  }

  header {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    /*height: 48vw;*/
    /*background: url(/images/top/header-bg.jpg?1) no-repeat center center;*/
    background-size: cover;
  }

  header h1 {
    /*width: 360px;*/
    float: left;
    margin: 30px 0 0 40px;
  }

  header .btn-p {
    float: right;
  }

  header .title_group {
    text-align: center;
    max-width: 67%;
    margin: 0vw auto 0 auto;
  }

  header .title_group .title_1 {
    margin-bottom: 8vw;
  }

  article {
    /*padding-top: 2rem;*/
  }

  article .inner {
  }

  article h2 {
    text-align: center;
    font-weight: 700;
    color: #0d3760;
  }

  .section {
    width: 100%;
    /* 全幅で描画 */
    padding: 4rem 0;
    /* 上下余白 */
  }

  .section2 {
    width: 100%;
    /* 全幅で描画 */
    padding: 0 0 2rem 0;
    /* 上下余白 */
  }
  .section3 {
    width: 100%;
    /* 全幅で描画 */
    padding: 0;
    /* 上下余白 */
  }
  .contact-con-frame {
    display: flex;
    justify-content: center;
    /* width: 40%; */
    align-items: center;
    flex-direction: column;
    flex-wrap: wrap;
  }

  .contact2-frame {
    width: 100%;
    display: flex;
    justify-content: center;
  }
  input[type="submit"] {
    -webkit-appearance: none;
    border: 1px solid var(--cocoon-thin-color);
    background-color: #00a0e9;
    color: #fff;
    font-size: 1.6rem;
  }

  .pre-submit {
    width: 100%;
    display: flex;
    /* justify-content: center; */
    align-items: center;
  }

  input[type="submit"],
  #bbp_reply_submit,
  .bp-login-widget-register-link a {
    padding: 11px;
    /*width: 40%;*/
    margin: 0;
    cursor: pointer;
  }

  input[type="button"] {
    -webkit-appearance: none;
    border: 1px solid var(--cocoon-thin-color);
    /* background-color: #00a0e9; */
    color: #333;
    font-size: 1.6rem;
    width: 100%;
    padding: 11px;
  }

  .wpcf7-spinner {
    visibility: hidden;
    display: inline-block;
    background-color: #23282d;
    opacity: 0.75;
    width: 0;
    height: 0;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0;
    position: relative;
  }
  .group_contact {
    display: flex;
    align-items: center;
    flex-direction: column;
    flex-wrap: nowrap;
    margin-top: -8.3rem;
  }

  .group_0 {
    display: flex;
    align-items: center;
    flex-direction: column;
    flex-wrap: nowrap;
    margin-top: 4rem;
  }

  .group_1 {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 3rem;
    margin-top: 2rem;
  }

  .group_2 .group_2_1 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 3rem;
  }

  .group_3 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 3rem;
  }
  .group_5 {
    width: 100%;
  }

  .group_2 {
    width: 100%;
    /* 横幅100% */
    position: relative;
    /* 相対位置 */
    overflow: hidden;
    /* 画面外の要素を隠す */
  }

  .group_2 .video-container-group2 {
    position: relative;
    width: 100%;
    height: 270px;
    padding-bottom: 56.25%;
    overflow: hidden;
  }

  .group_2 .video-container-group2 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 横幅100% */
    height: 100%;
    /* 高さ100% */
    border: 0;
  }

  /* スタート：デスクトップ用のスタイル */
  .group_4 {
    width: 100%;
    /* 横幅100% */
    position: relative;
    /* 相対位置 */
    overflow: hidden;
    /* 画面外の要素を隠す */
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
  }

  .group_4 .video-container-group4 {
    position: relative;
    width: 100%;
    /* 横幅100% */
    height: 0;
    padding-bottom: 56.25%;
    /* 16:9比率を維持 */
    overflow: hidden;
  }

  .group_4 .video-container-group4 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 横幅100% */
    height: 100%;
    /* 高さ100% */
    border: 0;
  }

  /* モバイルビュー（画面幅が600px以下の場合） */
  @media screen and (max-width: 600px) {
    .group_4 .video-container-group4 {
      padding-bottom: 56.25%;
      /* 横幅に合わせた16:9比率 */
    }

    /* テキストを中央寄せにする */
    .group_4 h4 {
      /*text-align: center;*/
    }
  }

  /* タブレットビュー（画面幅が601px～1024pxの場合） */
  @media screen and (min-width: 601px) and (max-width: 1024px) {
    .group_4 .video-container-group4 {
      padding-bottom: 56.25%;
      /* 横幅に合わせた16:9比率 */
    }
  }

  /* 大きい画面（デスクトップビュー） */
  @media screen and (min-width: 1025px) {
    .group_4 .video-container-group4 {
      padding-bottom: 56.25%;
      /* 横幅に合わせた16:9比率 */
    }

    .group_4 h4 {
      font-size: 2rem;
      /* フォントサイズを調整 */
      text-align: left;
      /* 左寄せに戻す */
    }
  }

  .home .group_0 .inner_1 {
    max-width: 1200px;
    margin: 0 auto;
  }

  .group_0 h3 {
    display: inline-block;
    background-color: #fff;
    /*padding: 40px 40px 40px 30px;*/
    width: 100%;
    font-size: 1.4rem !important;
  }

  .gradation p {
    background: rgb(93, 27, 135);
    background: linear-gradient(
      90deg,
      rgba(93, 27, 135, 1) 0%,
      rgba(4, 173, 240, 1) 100%
    );
    display: inline-block;
    color: #fff;
    padding: 3px 10px;
    margin-bottom: 6px;
  }

  .s_group_3_2,
  .s_group_1_2 {
    margin-bottom: 80px;
  }

  .s_group_3_2 {
    background: #cee6ff;
  }

  .movie-frame {
    width: 460px;
    height: 360px;
  }

  .left {
    float: left;
    width: 43%;
  }

  .right {
    float: right;
    width: 50%;
    margin-top: 30px;
    line-height: 2;
  }

  .right_1 {
    float: right;
    width: 50%;
    margin-top: 30px;
    line-height: 2;
  }

  .s_group_4 .text_group,
  .s_group_2 .text_group {
    width: 460px;
    float: right;
    margin-right: 5%;
  }

  .s_group_4 .gradation,
  .s_group_2 .gradation {
    margin-left: 20%;
  }

  .s_group_2_2 {
    margin-bottom: 80px;
  }

  .s_group_4_2 .left,
  .s_group_2_2 .left {
    width: 35%;
    float: left;
  }

  .s_group_4_2 .right,
  .s_group_2_2 .right {
    width: 60%;
    float: right;
  }

  .s_group_3_2 .left {
    width: 60%;
    float: left;
  }

  .s_group_3_2 .right {
    width: 35%;
    float: right;
  }

  .group_2 .inner {
    max-width: 1050px;
    margin-left: auto;
    margin-right: auto;
  }

  .group_2 .text_group {
    max-width: 50%;

    color: #fff;
  }

  .group_2 .text_group p.text {
    width: 371px;
  }

  .group_2 .text_group .title {
    margin-bottom: 38px;
  }

  .group_2 .text_group h4 {
    font-size: 140%;
    margin-bottom: 7px;
    font-weight: bold;
  }

  .group_4 .img_1 {
    margin-bottom: 50px;
  }

  .group_4 ul {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }

  .group_4 ul._1 {
    margin-bottom: 70px;
  }

  .group_4 ul._1 li {
    max-width: 310px;
    width: 32%;
  }

  .group_4 ul._1 li img {
    margin-bottom: 10px;
  }

  .group_4 ul._2 {
    max-width: 835px;
    margin-left: auto;
    margin-right: auto;
  }

  .group_4 ul._2 li {
    max-width: 401px;
    width: 48%;
  }

  footer {
  }

  footer .inner {
    max-width: 1000px;
    margin: 0 auto;
    padding: 100px 0;
  }

  footer .foot_logo {
    float: left;
    max-width: 48%;
    padding-left: 10px;
  }

  footer .sns_icon {
    float: right;
    display: flex;
    justify-content: space-between;
    width: 400px;
    max-width: 48%;
  }

  footer .sns_icon li {
    width: 20%;
  }

  .footer-flex {
    display: flex;
    justify-content: space-between;
  }

  .pc_n {
    display: none;
  }

  @media screen and (max-width: 769px) {
    #page-top {
      position: fixed;
      display: block;
      right: 10px;
      bottom: 20px;
    }

    #page-top {
      height: 30px;
      z-index: 100;
      width: 30px;
    }

    .header-container {
      padding: 0;
    }

    .sp_n {
      display: none;
    }

    .logo-menu-button img {
      max-height: 32px;
      display: block;
      margin: 0 auto;
      width: auto;
    }

    .grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .info-list-frame {
      display: flex;
      flex-direction: column;
      gap: 0;
    }

    .flex-info-contents {
      display: flex;
      flex-direction: column;
      margin-bottom: 0;
    }

    .info-image-width {
      width: 100%;
    }

    .swiper-flex-row {
      display: flex;
      flex-direction: column;
      flex-wrap: nowrap;
      width: 660px;
      gap: 2rem;
      align-items: center;
    }

    .swiper-button-next {
      margin-right: 0;
    }

    .swiper-button-prev {
      margin-left: 0 !important;
    }

    header {
      width: 100%;
      margin-left: auto;
      margin-right: auto;
      /*background: url(/images/top/header-bg-sp.png) no-repeat center center;*/
      background-size: cover;
      /*padding-bottom: 15vw;*/
    }

    header h1 {
      max-width: 90%;
      margin: 0 auto 50px auto;
    }

    header .btn-p {
      text-align: center;
      margin-bottom: 60px;
    }

    header .title_group {
      text-align: center;
      max-width: 80%;
      margin: 0 auto 0 auto;
    }

    header .title_group .title_1 {
      margin-bottom: 8vw;
    }

    .img-bottom {
      margin-bottom: 2rem;
    }
    .section {
      width: 100%;
      padding: 0;
    }
    .left {
      padding-top: 2rem;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      width: 100% !important;
    }

    .btn-frame-center {
      margin-bottom: 0;
    }

    .right {
      display: flex;
      justify-content: center;
      /*padding-bottom: 2rem;*/
      flex-direction: column;
      align-items: center;
      width: 100%;
      gap: 2rem;
      margin-top: 0;
    }

    .right_1 {
      display: flex;
      justify-content: center;
      padding-bottom: 2rem;
      flex-direction: column;
      align-items: center;
      width: 100%;
      gap: 2rem;
    }

    .btn {
      width: 80%;
    }

    .movie-frame {
      height: 432px;
      width: 636px;
    }
  }

  h2,
  .h2 {
    font-size: 2rem;
  }

  h3,
  .h3 {
    font-size: 1.2rem;
  }

  .btn-frame-center {
    display: flex;
    justify-content: center;
    margin-bottom: 2rem;
  }

  article .inner {
  }

  article h2 {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  .home .group_0 .inner {
    max-width: 1015px;
    margin: 0 auto;
    display: flex;
    align-items: center;
  }

  .gradation p {
    background: rgb(93, 27, 135);
    background: linear-gradient(
      90deg,
      rgba(93, 27, 135, 1) 0%,
      rgba(4, 173, 240, 1) 100%
    );
    display: inline-block;
    color: #fff;
    padding: 3px 10px;
    margin-bottom: 6px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  .s_group_3_2,
  .s_group_1_2 {
    margin-bottom: 80px;
  }

  .s_group_1_2 .right {
    line-height: 2;
  }

  .s_group_4 .text_group,
  .s_group_2 .text_group {
  }

  .s_group_4 .gradation,
  .s_group_2 .gradation {
  }

  .s_group_2_2 {
    margin-bottom: 40px;
  }

  .s_group_4_2 .left,
  .s_group_2_2 .left {
    margin-bottom: 30px;
  }

  .s_group_4_2 .right,
  .s_group_2_2 .right {
    margin-bottom: 30px;
  }

  .s_group_3_2 .left {
    margin-bottom: 30px;
  }

  .s_group_3_2 .right {
    margin-bottom: 30px;
  }
  .group_0 h4 {
    color: #1f80e0;
    font-weight: bold;
  }

  .group_0 h4,
  .group_1 h4,
  .group_2 h4,
  .group_3 h4 {
    color: #1f80e0;
    font-weight: bold;
    font-weight: bold;
  }

  .group_1 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 3rem;
    /* margin-top: 2rem; */
    align-items: center;
  }

  .group_1-width-100 {
    width: 100%;
  }

  .group_2 {
    display: flex;
    gap: 3rem;
    align-items: center;
    justify-content: space-between;
  }

  .s_group_7,
  .s_group_6,
  .s_group_5 {
    margin-bottom: 50px;
  }

  .group_3 {
  }

  .group_3_1 {
    max-width: 1000px;
    margin: 0 auto 50px auto;
    background-color: #fff;
    padding: 30px 25px;
    border-radius: 25px;
  }

  .group_3_2 {
    max-width: 1000px;
    margin: 0 auto 0px auto;
    background-color: #fff;
    padding: 30px 25px;
    border-radius: 25px;
  }

  .group_3 h3 {
    text-align: center;
    margin-bottom: 25px;
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
  }

  .slide-block {
    width: auto;
    margin: 0 auto;
  }

  .slide-block li {
    width: 280px;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 20px;
  }

  .contents .slick-next {
    background: url(/images/top/arrow-right.png) no-repeat center center;
    background-size: cover;
    width: 40px;
    height: 40px;
    text-indent: -9999px;
    border: none;
    position: absolute;
    top: 50%;
    right: -30px;
    z-index: 20;
    background-size: 100% auto;
  }

  .contents .slick-prev {
    background: url(/images/top/arrow-left.png) no-repeat center center;
    background-size: cover;
    width: 40px;
    height: 40px;
    text-indent: -9999px;
    border: none;
    position: absolute;
    left: -30px;
    top: 50%;
    z-index: 20;
    background-size: 100% auto;
  }

  .slide-block .img {
    text-align: center;
    margin-bottom: 30px;
  }

  .slide-block .text {
    margin-top: 0px;
  }

  .slide-block .step {
    text-align: center;
    margin-bottom: 20px;
  }

  .slide-block .step img {
    margin-left: auto;
    margin-right: auto;
  }

  .group_4 .inner {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }

  .group_4 .img_1 {
    margin-bottom: 30px;
  }

  .group_4 ul {
  }

  .group_4 ul._1 {
    margin-bottom: 50px;
  }

  .group_4 ul._1 li {
    margin-bottom: 40px;
  }

  .group_4 ul._1 li span {
    display: block;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
  }

  .group_4 ul._2 {
  }

  .group_4 ul._2 li {
    text-align: center;
    margin-bottom: 10px;
  }

  .group_5 .inner {
    width: 100%;
  }

  .group_5 ul {
  }

  .group_5 ul._1 {
    margin-bottom: 40px;
  }

  .group_5 ul._1 li {
    margin-bottom: 30px;
  }

  .group_5 h4 {
    font-size: 140%;
    font-weight: bold;
    margin: 15px 0;
  }

  .group_5 ul._2 li {
    text-align: center;
    margin-bottom: 10px;
  }

  .group_6,
  .inner {
    max-width: 1050px;
    margin-left: auto;
    margin-right: auto;
  }

  .group_6 ul {
    margin-bottom: 50px;
  }

  .group_6 ul li {
    max-width: 80%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }

  .group_6 ul li span {
    display: block;
    text-align: center;
  }

  .group_6 ul li img {
    margin-bottom: 15px;
  }

  .group_6 .btn-p {
    text-align: center;
  }

  .group_6 a {
    color: #1f80e0;
  }

  footer .foot_logo {
    text-align: center;
  }

  footer .sns_icon {
    display: flex;
    justify-content: space-between;
    max-width: 400px;
    margin: 0 auto 30px auto;
  }

  footer .sns_icon li {
    width: 20%;
  }

  footer .inner {
    width: 95%;
    max-width: 310px;
    margin: 0 auto;
    padding: 40px 0;
  }

  footer .copy {
    text-align: center;
  }

  div.slider {
    max-width: 700px;
    display: block;
    margin: 40px auto;
  }

  ul.bxslider01 li {
    display: block;
    max-width: 700px;
    height: auto;
  }

  ul.bxslider01 li img {
    display: block;
    max-width: 700px;
    width: 100%;
    height: auto;
  }

  ul.bxslider02 li a {
    display: block;
    width: 55px;
    height: 41px;
  }

  ul.bxslider02 li a img {
    display: block;
    width: auto;
    height: 100%;
    background-size: cover;
  }

  div.controlWrap {
    max-width: 700px;
    width: 100%;
    display: block;
    position: relative;
    margin: 10px auto;
  }

  div.controlWrap p#PrevIcon a {
    /*矢印画像（前へ）*/
    display: block;
    width: 16px;
    height: 41px;
    position: absolute;
    background: url(/images/top/arrow-left.png) center center no-repeat;
    color: #fff;
    top: 0px;
    left: 0px;
    text-indent: -9999px;
  }

  div.controlWrap p#NextIcon a {
    /*矢印画像（次へ）*/
    display: block;
    width: 16px;
    height: 41px;
    position: absolute;
    background: url(/images/top/arrow-right.png) center center no-repeat;
    color: #fff;
    top: 0px;
    right: 0px;
    text-indent: -9999px;
  }

  body {
    margin: 0;
    padding: 0;
  }

  #wrapper {
    position: relative;
    width: 100%;
    margin: 0 auto;
  }

  #contents {
    width: 100%;
    margin: 0 auto;
    float: left;
  }

  .page #header {
    /*display: none;*/
  }

  .bread {
    width: 94%;
    margin-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
  }

  #main {
    float: none;
    display: block;
    margin: 0 auto 15px auto;
    width: auto;
    padding-left: 4%;
    padding-right: 4%;
  }

  .t_center {
    text-align: center;
  }

  .sp_none {
    display: none;
  }

  /* google map */
  .g_map {
    position: relative;
    padding-bottom: 100%;
    height: 0;
    overflow: hidden;
  }

  .g_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
  }

  .copy {
    display: block;
    margin-top: 0;
    font-size: 70%;
    text-align: center;
  }

  .copy p {
    line-height: 1.5;
    padding-top: 8px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

.wpcf7 p {
    display: inline;
}

  @media screen and (max-width: 834px) {
    .header-container-in.hlt-top-menu .logo-header {
      max-height: 0 !important;
    }
  }

  @media screen and (max-width: 834px) {
    .header div.header-in {
      min-height: 0 !important;
    }
  }

  /* SP対応 */
  @media (max-width: 768px) {
    .wsc-header-inner {
      flex-direction: column;
      align-items: flex-start;
      gap: 14px;
    }

    /************************************
  ** 改行
  ************************************/
    br.br-pc {
      display: none !important;
    }

    .entry-content {
      margin-top: 0em;
      margin-bottom: 0em;
    }

    .inner {
      width: 100%;
      margin: 0 auto;
      padding: 0 1.2rem;
    }

    .wsc-nav {
      gap: 14px;
      flex-wrap: wrap;
    }

    .wsc-nav-item::after {
      bottom: -4px;
    }

    .right_1 {
      display: flex;
      justify-content: center;
      /* padding-bottom: 2rem; */
      flex-direction: column;
      align-items: center;
      width: 100%;
      gap: 0;
      padding-top: 0;
    }
    .movie-frame {
      height: 465px;
      width: 704px;
    }

    .group_0 {
      margin-top: 4rem;
    }

    .group_1 {
      display: flex;
      flex-direction: column-reverse;
      flex-wrap: nowrap;
      gap: 0;
      margin-top: 0;
      align-items: center;
    }

    .group_2 {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      flex-direction: column;
      gap: 0;
      background-color: #cee6ff;
    }

    .group_2_bottom {
      padding-bottom: 4rem;
    }

    .group_2_1 {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      flex-direction: column;
    }

    .group_2 .video-container .video {
      margin-top: 0;
      position: static;
    }
    .group_2_1 .video-container .video {
      margin-top: 0;
      position: static;
    }

    .group_2 .video-container-group2 {
      position: relative;
      width: 100%;
      /* 横幅100% */
      height: 0;
      padding-bottom: 56.25%;
      /* 16:9比率を維持 */
      overflow: hidden;
    }
    .group_2_1 .video-container-group2 {
      position: relative;
      width: 100%;
      /* 横幅100% */
      height: 0;
      padding-bottom: 56.25%;
      /* 16:9比率を維持 */
      overflow: hidden;
    }
    .group_2 .video-container-group2 {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 56.25%;
      overflow: hidden;
      margin-top: 1rem;
    }
  }
  .group_2 .video-container-group2 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 横幅100% */
    height: 100%;
    /* 高さ100% */
    border: 0;
  }
  .group_2_1 .video-container-group2 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 横幅100% */
    height: 100%;
    /* 高さ100% */
    border: 0;
  }

  .header-container-in.hlt-top-menu {
    /*height: 0;*/
  }

  /* スタート：デスクトップ用のスタイル */

  .group_4 .video-container-group4 {
    position: relative;
    width: 100%;
    /* 横幅100% */
    height: 0;
    padding-bottom: 56.25%;
    /* 16:9比率を維持 */
    overflow: hidden;
    margin-top: 1rem;
  }

  .group_4 .video-container-group4 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* 横幅100% */
    height: 100%;
    /* 高さ100% */
    border: 0;
  }
}

@media screen and (min-width: 700px) {
  table.sub {
    width: 90%;
  }
}

@media screen and (max-width: 699px) {
  .post .entry h1 {
    font-size: 180%;
    text-align: center;
    display: block;
    font-weight: bold;
    color: #0054a6;
    padding-bottom: 10px;
    margin-bottom: 40px;
    letter-spacing: 2px;
    background: url(/images/menu-bg.jpg) no-repeat bottom center;
  }

  .post .entry h3 {
    font-size: 160%;
    text-align: left;
    display: block;
    font-weight: bold;
    color: #0054a6;
    margin-bottom: 20px;
    letter-spacing: 2px;
  }

  .post .entry strong {
    display: block;
    font-size: 130%;
    margin: 20px 0;
  }

  table.sub {
    width: 100%;
  }

  table.responsive tr {
    display: block;
  }

  table.responsive td {
    display: block;
    width: 97%;
  }

  table.responsive th {
    display: block;
    width: 97%;
    font-weight: bold;
    padding-bottom: 0 !important;
  }

  .mgb20_sp {
    margin-bottom: 20px;
  }

  /* 700以下 */
  table.sub {
    width: 100%;
  }

  table.responsive tr {
    display: block;
  }

  table.responsive td {
    display: block;
    width: 97%;
  }

  table.responsive th {
    display: block;
    width: 97%;
    font-weight: bold;
    padding-bottom: 0 !important;
  }

  .mgb20_sp {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 698px) {
  .movie-frame {
    height: 204px;
    width: 300px;
    display: flex;
    align-items: center;
  }

  .top-news {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: baseline;
  }

  /* sp */
  .post .entry h1 {
    font-size: 160%;
    text-align: center;
    display: block;
    font-weight: bold;
    color: #0054a6;
    padding-bottom: 10px;
    margin-bottom: 40px;
    letter-spacing: 2px;
    background: url(/images/menu-bg.jpg) no-repeat bottom center;
  }

  .post .entry h3 {
    font-size: 150%;
    text-align: left;
    display: block;
    font-weight: bold;
    color: #0054a6;
    margin-bottom: 20px;
    letter-spacing: 2px;
  }

  .post .entry strong {
    display: block;
    font-size: 130%;
    margin: 20px 0;
  }
}

@media screen and (min-width: 501px) {
  /* ページ設定500まで */
}

@media screen and (max-width: 500px) {
  /* 投稿画像センター寄せ */
  .img-center,
  .center-img {
    float: none !important;
    display: table !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 10px !important;
    clear: both;
  }

  .t_left {
    float: left;
    text-align: left !important;
  }

  /* 500以下 */
  table.style-3 span.rei {
    margin-top: 10px;
    margin-left: 5px;
    display: block;
    width: 95%;
  }

  .wpcf7-textarea {
    width: 95%;
  }

  .info-list-item-width {
    width: 100%;
  }
}

@media screen and (max-width: 480px) {
  /*必要ならばここにコードを書く*/

  br.br-pc2 {
    display: block !important;
  }
  .section2 {
    width: 100%;
    padding: 0;
  }
}

@media screen and (max-width: 400px) {
  /* 400以下 */
  p {
    line-height: 1.7;
  }

  body {
    font-size: 90%;
  }

  .cycloneslider-template-default .cycloneslider-caption-title {
    font-size: 13px !important;
    line-height: 1;
    margin-bottom: 0;
    padding: 5px;
  }
}
