@charset "UTF-8";

/*
Theme Name:   熊本工業高校ラグビー部
Description:  
Author:       SHIN Inc.
Author URI:   http://www.shin-inc.jp/
Version:      1.0
Template:     archetype4
*/

@font-face {
  font-family: "icomoon";
  src: url("fonts/icomoon.eot?ohere9");
  src: url("fonts/icomoon.eot?ohere9#iefix") format("embedded-opentype"), url("fonts/icomoon.ttf?ohere9") format("truetype"), url("fonts/icomoon.woff?ohere9") format("woff"), url("fonts/icomoon.svg?ohere9#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/* Custom Propaties
--------------------------------*/

:root {
  --scrollbar: 0px;
}

/* Normalize
--------------------------------*/

*,
*:before,
*:after {
  box-sizing: inherit;
}

*:first-child {
  margin-top: 0;
}

*:last-child {
  margin-bottom: 0;
}

html,
body,
div,
header,
footer,
main,
article,
section,
aside,
nav,
figure,
figcaption {
  display: block;
  margin: 0;
  padding: 0;
}

html {
  line-height: 1.75;
  box-sizing: border-box;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: min(16px, 4.2666666667vw);
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  line-break: strict;
}

body {
  overflow-x: hidden;
  background: #fff;
  color: #111;
}

a {
  color: inherit;
  transition: 0.3s;
}

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

abbr,
cite {
  font-style: inherit;
  text-decoration: inherit;
}

blockquote {
  margin: 1.5em 0;
  padding: 1em;
  border-style: solid;
  border-width: 1px 0;
}

del {
  opacity: 0.8;
}

em {
  font-style: inherit;
  font-weight: bolder;
}

figcaption {
  font-weight: 700;
}

img,
iframe {
  max-width: 100%;
  min-height: 1px;
  vertical-align: middle;
  border: 0;
}

img {
  height: auto;
}

p {
  margin: 1em 0;
}

header p,
footer p {
  margin: 0;
}

pre {
  margin: 1em 0;
  white-space: pre-wrap;
}

ul {
  margin: 1em 0;
  padding-left: 1.5em;
}

ol {
  margin: 1em 0;
  padding-left: 2em;
}

nav ul,
nav ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

dl {
  margin: 1em 0;
}

dt {
  margin: 0;
  font-weight: 700;
}

dd {
  margin: 0;
}

dd + dt {
  margin-top: 1em;
}

section {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: center;
}

th,
td {
  vertical-align: baseline;
  padding: 0.875em 1.25em;
  background: #fff;
  border: 1px solid #C9C9C9;
  text-align: left;
}

th {
  background: #F5F4F3;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
}

button,
input,
textarea,
select {
  max-width: 100%;
  vertical-align: middle;
  line-height: 1.5;
  margin: 0;
  font-family: inherit;
  font-size: 1em;
  transition: 0.3s;
}

button,
input[type=submit],
input[type=button],
input[type=reset] {
  -webkit-appearance: none;
  appearance: none;
  box-shadow: none;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  text-shadow: none;
}

input[type=text],
input[type=tel],
input[type=email],
input[type=url],
input[type=search],
input[type=number],
input[type=date],
input[type=password],
textarea,
select {
  padding: 0.5em;
  border: 1px solid #C5C5C5;
  border-radius: 0;
  font-size: 16px;
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=password]:focus,
textarea:focus,
select:focus {
  background: #ff9;
}

input[type=radio],
input[type=checkbox] {
  vertical-align: baseline;
}

button,
input[type=submit],
input[type=button],
input[type=reset],
input[type=radio],
input[type=checkbox] {
  cursor: pointer;
}

input[disabled] {
  opacity: 0.3;
  cursor: default;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  width: 100%;
}

:lang(en) {
  font-family: "Lexend Deca", sans-serif;
}

/* Extends
--------------------------------*/

.post:first-child,
.widget:first-child,
.paragraph:first-child {
  margin-top: 0;
}

.post:last-child,
.widget:last-child,
.paragraph:last-child {
  margin-bottom: 0;
}

.page-header__content,
.site-content,
.site-footer-content,
.site-header-content {
  max-width: 1504px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 3.125vw;
  padding-left: 3.125vw;
}

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

.btn {
  display: inline-block;
  max-width: 100%;
  line-height: 1.5;
  box-shadow: 0 0 0 1px #DB2315 inset;
  padding: 0.625em 1.25em;
  border: 0;
  border-radius: 0;
  background: #DB2315;
  color: #fff;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-align: center;
  text-decoration: none;
  text-shadow: none;
}

.btn:hover,
.btn:focus {
  background: #fff;
  color: #DB2315;
}

/* Heading
--------------------------------*/

h2,
h3,
h4,
h5,
h6 {
  line-height: 1.25;
  font-weight: 700;
}

h2 {
  margin-bottom: 1em;
  font-size: 1.5em;
  text-align: center;
}

h2[data-en=Photo] {
  margin-bottom: 0.5em;
}

h2 .en {
  display: block;
  margin-bottom: 1.5625em;
  color: #DB2315;
  font-family: "Lexend Deca", sans-serif;
  font-weight: 600;
  font-size: 0.5em;
  text-transform: none;
}

h3 {
  margin-bottom: 2.91em;
  padding: 0.91667em 1.25em;
  background: #DB2315;
  color: #fff;
  font-family: "Lexend Deca", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 1.25rem;
}

/* Site Width
--------------------------------*/

.site {
  margin: auto;
}

/* Common
--------------------------------*/

.file-btn {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
  line-height: 1.5;
  padding: 0.91667em 1em;
  border: 0.125em solid #d3d3d3;
  font-weight: 700;
  font-size: 1rem;
  text-decoration: none;
}

.file-btn:before {
  display: inline-block;
  color: #DB2315;
  font: 1.5em/1 icomoon;
  content: "\e90d";
}

.image {
  text-align: center;
}

.tagline {
  text-align: center;
}

.lede {
  width: fit-content;
  line-height: 1.5;
  margin: 0 auto 2rem;
  color: #7A7A7A;
  text-align: justify;
}

.link {
  margin-top: 2rem;
  text-align: center;
}

.movie {
  position: relative;
  overflow: hidden;
  border-radius: 0.5em;
  padding-top: 56.25%;
}

.movie > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.paragraph {
  margin: 1em 0;
}

.paragraph > p {
  margin-top: 0;
  margin-bottom: 0;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  word-wrap: normal;
}

.break:before {
  white-space: pre;
  content: "\a";
}

/* Header
--------------------------------*/

.site-header {
  background: #1D0B05;
  color: #fff;
}

.site-header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: 1em;
}

.hgroup {
  width: fit-content;
  text-align: center;
  font-size: 0.75em;
}

.hgroup > a {
  display: block;
  text-decoration: none;
}

.site-logo {
  width: 17.75em;
  line-height: 1;
  margin: 0 auto;
}

.site-title {
  line-height: 1.36;
  margin: 0.2143em 0 0;
  padding: 0.5em 0 0;
  border-top: 1px solid;
  font-weight: 700;
  font-size: 0.875em;
}

.global-nav {
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
}

.global-nav-content {
  display: none;
}

.no-js .global-nav-content {
  display: block;
}

.global-nav__list {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
  gap: 1.5em;
}

.global-nav__link {
  display: block;
  font-size: 0.75em;
  text-decoration: none;
}

.global-nav__link .en {
  display: block;
  margin-bottom: 0.25em;
  transform: skew(-10deg, 0);
  font: 700 2em/1 "Oswald", sans-serif;
  text-transform: uppercase;
}

.global-nav__contact {
  display: block;
  max-width: 15em;
  box-shadow: 0 0 0 1px #DB2315 inset;
  margin: 0 auto;
  padding: 0.625em 1.25em;
  background: #DB2315;
  text-decoration: none;
}

.global-nav__contact:before {
  vertical-align: top;
  margin-right: 0.625em;
  font-family: icomoon;
  font-weight: 400;
  content: "\e900";
  speak: none;
}

.global-nav__contact:hover,
.global-nav__contact:focus {
  background: #fff;
  color: #DB2315;
}

/*.fixed {
  &,
  & > body {
    height: 100%;
    overflow: hidden;
  }
  .site {
    position: relative;
  }
}*/

.menu-button {
  background: transparent;
  color: inherit;
}

.menu-button[aria-expanded=true] {
  z-index: 100001;
}

.menu-icon {
  display: block;
}

.menu-icon__bar {
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  transition: 0.5s;
  fill: currentColor;
}

.menu-icon__bar--1 {
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
}

.menu-icon__bar--2 {
  -webkit-transform: translateY(10px);
  transform: translateY(10px);
}

[aria-expanded=true] .menu-icon__bar--1 {
  -webkit-transform: translateY(0) rotate(45deg);
  transform: translateY(0) rotate(45deg);
}

[aria-expanded=true] .menu-icon__bar--2 {
  -webkit-transform: translateY(0) rotate(-45deg);
  transform: translateY(0) rotate(-45deg);
}

[aria-expanded=true] .menu-icon__bar--3 {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.drawer {
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 100000;
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background: #1D0B05;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  color: #fff;
  transition: 0.3s;
}

.drawer[aria-hidden=false] {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.hero {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  container-type: inline-size;
  background: #000;
  color: #fff;
}

.hero__text {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  z-index: 100;
  transform: translateY(-50%);
  font-size: 2.1875cqi;
  text-align: center;
}

.hero__text:after {
  display: block;
  margin-top: 0.57143em;
  font: 600 1em/1 "Oswald", sans-serif;
  content: "KUMAKOU RUGBY ALUMINI ASSOCIATION";
}

.hero__text img {
  width: 36.1905em;
  filter: drop-shadow(0 0.2381em 0.2381em rgba(0, 0, 0, 0.25));
}

.head-slide {
  aspect-ratio: 1920/920;
}

.head-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: 1s opacity;
}

.head-slide img[data-active=true] {
  z-index: 1;
  opacity: 1;
}

/* Footer
--------------------------------*/

.site-footer {
  margin-top: 4em;
  background: #1D0B05;
  color: #fff;
}

.site-footer-content {
  line-height: 1.5;
}

.site-footer section {
  margin: 2.5em 0 0;
}

.site-footer h2 {
  margin-bottom: 0.667em;
  font-size: 1.25em;
  text-align: center;
}

.organization {
  grid-column: 1/2;
  grid-row: 1/2;
}

.organization__logo {
  width: 9.375em;
  margin: 0 auto 1.5em;
}

.organization__name {
  line-height: 1;
  font-size: 1.25em;
  text-align: center;
}

.organization-info {
  width: fit-content;
  margin: 2em auto 0;
}

.organization-info__item {
  display: flex;
  margin-top: 0.625em;
}

.organization-info__item > dt {
  margin-right: 0.625em;
  color: #DB2315;
}

.organization-info__item > dt:before {
  color: #DB2315;
  font-family: icomoon;
  font-weight: 400;
  content: "\e901";
  speak: none;
}

.organization-info__item--tel > dt:before {
  content: "\e902";
}

.organization-info__item--mail > dt:before {
  content: "\e903";
}

.footer-nav-area {
  grid-column: 2/3;
  grid-row: 1/2;
}

.footer-nav {
  display: flex;
  list-style: none;
  flex-wrap: wrap;
  gap: 1.5em 1em;
  margin: 0;
  padding: 0;
}

.footer-nav__item {
  position: relative;
  flex: 0 0 calc(50% - 0.5em);
  padding-left: 1.25em;
}

.footer-nav__item:before {
  position: absolute;
  left: 0;
  color: #DB2315;
  font-family: icomoon;
  font-weight: 400;
  content: "\e904";
  speak: none;
}

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

.footer-nav__link:hover,
.footer-nav__link:focus {
  text-decoration: underline;
}

.footer-nav__link[href*="instagram.com"]:before {
  display: inline-block;
  margin-right: 0.3em;
  font-family: icomoon;
  font-weight: 400;
  text-decoration: none;
  content: "\e906";
  speak: none;
}

.footer-sns-area {
  grid-column: 3/4;
  grid-row: 1/2;
}

.copyright {
  grid-column: 1/4;
  grid-row: 2;
  margin-top: 2rem;
  padding: 2em 0;
  border-top: 1px solid;
  font-size: 0.75em;
  text-align: center;
}

/* Site Content
--------------------------------*/

.no-posts {
  font-weight: 700;
  text-align: center;
}

/* 404
--------------------------------*/

.search-form {
  display: flex;
  max-width: 400px;
}

.search-form__field[type=search] {
  flex: 1;
  border-radius: 0;
}

.search-form__submit {
  flex: 0 0 4em;
  border: solid #ccc;
  border-width: 1px 1px 1px 0;
  border-radius: 0;
}

/* Sidebar
--------------------------------*/

.post-sidebar {
  grid-area: sidebar;
}

.widget {
  padding: 1.25em;
  border-bottom: 0.5rem solid #DB2315;
  background: #f5f4f3;
}

.widget__title {
  margin: 0 0 1.667em;
  font-size: 1em;
  font-weight: 600;
  text-align: left;
}

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

.post-list__item {
  margin-top: 1.5em;
}

.post-list__item:first-child {
  margin-top: 0;
}

.post-list__link {
  display: block;
  display: flex;
  align-items: flex-start;
  gap: 1em;
  text-decoration: none;
}

.post-list__link:hover .post-list__thumbnail,
.post-list__link:focus .post-list__thumbnail {
  box-shadow: 0 0 0 2px #DB2315;
}

.post-list__thumbnail {
  flex: 0 0 11.375rem;
  aspect-ratio: 182/113;
  transition: box-shadow 0.3s;
}

.post-list__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-list__content {
  font-size: 0.75em;
}

.post-list__title {
  margin-bottom: 1em;
  font: 600 1.2em/1.25 "Lexend Deca", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
}

.post-list__date {
  display: block;
  line-height: 1.25;
  color: #DB2315;
}

.post-list__date:before {
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  vertical-align: top;
  margin-right: 0.75em;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMSI+PHBhdGggZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZGIyMzE1IiBzdHJva2Utd2lkdGg9IjEuNSIgZD0iTTEuNjcgMTAuNWMwLTMuMTQgMC00LjcxLjk4LTUuNjkuOTgtLjk4IDIuNTUtLjk4IDUuNjktLjk4aDMuMzNjMy4xNCAwIDQuNzEgMCA1LjY5Ljk4Ljk4Ljk4Ljk4IDIuNTUuOTggNS42OXYxLjY3YzAgMy4xNCAwIDQuNzEtLjk4IDUuNjktLjk4Ljk4LTIuNTUuOTgtNS42OS45OEg4LjM0Yy0zLjE0IDAtNC43MSAwLTUuNjktLjk4LS45OC0uOTgtLjk4LTIuNTUtLjk4LTUuNjlWMTAuNVoiLz48cGF0aCBmaWxsPSJub25lIiBzdHJva2U9IiNkYjIzMTUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLXdpZHRoPSIxLjUiIGQ9Ik01LjgzIDMuODNWMi41OG04LjM0IDEuMjVWMi41OE0yLjA4IDhoMTUuODMiIG9wYWNpdHk9Ii41Ii8+PHBhdGggZmlsbD0iI2RiMjMxNSIgZD0iTTE1IDE0LjY3YzAgLjIyLS4wOS40My0uMjQuNTktLjE2LjE2LS4zNy4yNC0uNTkuMjRzLS40My0uMDktLjU5LS4yNC0uMjQtLjM3LS4yNC0uNTkuMDktLjQzLjI0LS41OWMuMTYtLjE2LjM3LS4yNC41OS0uMjRzLjQzLjA5LjU5LjI0LjI0LjM3LjI0LjU5Wm0wLTMuMzRjMCAuMjItLjA5LjQzLS4yNC41OXMtLjM3LjI0LS41OS4yNC0uNDMtLjA5LS41OS0uMjRjLS4xNi0uMTYtLjI0LS4zNy0uMjQtLjU5cy4wOS0uNDMuMjQtLjU5LjM3LS4yNC41OS0uMjQuNDMuMDkuNTkuMjRjLjE2LjE2LjI0LjM3LjI0LjU5Wm0tNC4xNyAzLjM0YzAgLjIyLS4wOS40My0uMjQuNTktLjE2LjE2LS4zNy4yNC0uNTkuMjRzLS40My0uMDktLjU5LS4yNGMtLjE2LS4xNi0uMjQtLjM3LS4yNC0uNTlzLjA5LS40My4yNC0uNTljLjE2LS4xNi4zNy0uMjQuNTktLjI0cy40My4wOS41OS4yNGMuMTYuMTYuMjQuMzcuMjQuNTlabTAtMy4zNGMwIC4yMi0uMDkuNDMtLjI0LjU5LS4xNi4xNi0uMzcuMjQtLjU5LjI0cy0uNDMtLjA5LS41OS0uMjRjLS4xNi0uMTYtLjI0LS4zNy0uMjQtLjU5cy4wOS0uNDMuMjQtLjU5Yy4xNi0uMTYuMzctLjI0LjU5LS4yNHMuNDMuMDkuNTkuMjRjLjE2LjE2LjI0LjM3LjI0LjU5Wm0tNC4xNiAzLjM0YzAgLjIyLS4wOS40My0uMjQuNTktLjE2LjE2LS4zNy4yNC0uNTkuMjRzLS40My0uMDktLjU5LS4yNGMtLjE2LS4xNi0uMjQtLjM3LS4yNC0uNTlzLjA5LS40My4yNC0uNTljLjE2LS4xNi4zNy0uMjQuNTktLjI0cy40My4wOS41OS4yNGMuMTYuMTYuMjQuMzcuMjQuNTlabTAtMy4zNGMwIC4yMi0uMDkuNDMtLjI0LjU5LS4xNi4xNi0uMzcuMjQtLjU5LjI0cy0uNDMtLjA5LS41OS0uMjRjLS4xNi0uMTYtLjI0LS4zNy0uMjQtLjU5cy4wOS0uNDMuMjQtLjU5Yy4xNi0uMTYuMzctLjI0LjU5LS4yNHMuNDMuMDkuNTkuMjRjLjE2LjE2LjI0LjM3LjI0LjU5WiIvPjwvc3ZnPg==") no-repeat 50%/contain;
  content: "";
}

/* Breadcrumbs
--------------------------------*/

.breadcrumbs {
  line-height: 1.25;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 1em 0 0;
  font-family: Helvetica, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 700;
  font-size: 0.75em;
}

.breadcrumbs > ol {
  display: flex;
}

.breadcrumbs li {
  display: inline-block;
  white-space: nowrap;
}

.breadcrumbs li:first-child {
  color: #DB2315;
}

.breadcrumbs li + li:before {
  content: " > ";
}

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

/* Home
--------------------------------*/

.pickup-nav {
  margin-top: 2em;
}

.pickup-nav__list {
  display: flex;
  flex-direction: column;
  gap: 2em;
}

.pickup-nav__item {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.25);
  background: #fff;
  text-align: center;
}

.pickup-nav__item:nth-child(2n+1) {
  box-shadow: none;
  background: #1D0B05;
  color: #fff;
}

.pickup-nav__link {
  display: block;
  height: 100%;
  padding: 2.5em 1em;
  border-bottom: 0.25em solid #DB2315;
  text-decoration: none;
}

.pickup-nav__link:before {
  display: block;
  margin-bottom: 0.3em;
  color: #bd9e72;
  font: 3.125em/1 icomoon;
  content: "\e90a";
}

.pickup-nav__link:hover,
.pickup-nav__link:focus {
  box-shadow: 0.25em 0 #DB2315 inset, -0.25em 0 #DB2315 inset, 0 0.25em #DB2315 inset;
}

.pickup-nav__item:nth-child(2) .pickup-nav__link:before {
  content: "\e90b";
}

.pickup-nav__item:nth-child(3) .pickup-nav__link:before {
  content: "\e90c";
}

.pickup-nav__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 2.5em;
  line-height: 1.25;
  font-weight: 600;
  font-size: 1.5em;
}

.pickup-nav__title > br {
  display: none;
}

.pickup-nav__description {
  line-height: 1.5;
  margin-top: 1.875em;
  color: #7A7A7A;
  font-size: 0.875em;
}

.pickup-nav__item:nth-child(2n+1) .pickup-nav__description {
  color: #fff;
}

.about-area__image {
  margin-bottom: 1.5em;
  text-align: center;
}

.photo-block {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

.photo-slide {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  aspect-ratio: 1920/628;
}

.photo-slide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 1s;
}

.photo-slide img[data-active=true] {
  z-index: 1;
  opacity: 1;
}

.news-area {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-block: 3rem;
  background: no-repeat 50%/0 #333;
  background-size: cover;
}

.news-area h2 {
  color: #fff;
  text-transform: uppercase;
}

.news-area .lede {
  color: #fff;
}

.contact-area {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-block: 3rem;
  background: #333;
  background: url(images/bg_contact.jpg) no-repeat 50%/cover;
  color: #fff;
}

.banner-list {
  display: flex;
  list-style: none;
  align-items: center;
  flex-direction: column;
  gap: 1em;
  margin: 0;
  padding: 0;
}

.banner-list__item {
  background: #000;
}

.banner-list__item a:hover,
.banner-list__item a:focus {
  opacity: 0.65;
}

.instagram-area {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-block: 3rem;
  background: #4d4d4d;
}

.instagram-area h2 {
  color: #fff;
}

.instagram-account {
  margin-bottom: 3rem;
  color: #fff;
  font-size: 0.875em;
  text-align: center;
}

.instagram-wrap {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

/* Page
--------------------------------*/

.page-header {
  margin-bottom: 4em;
  background: url(images/bg_header_news.jpg) no-repeat 50% 50% #333;
  background-size: cover;
  color: #fff;
}

.page-header--schedule {
  background-image: url(images/bg_header_schedule.jpg);
}

.page-header--about-us {
  background-image: url(images/bg_header_about-us.jpg);
}

.page-header--about-club {
  background-image: url(images/bg_header_about-club.jpg);
}

.page-header--contact {
  background-image: url(images/bg_header_contact.jpg);
}

.page-header__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 360px;
}

.page-title {
  margin: 0;
  padding: 0;
}

.page-title .en {
  display: block;
  font: 700 3rem/1 "Oswald", sans-serif;
  text-transform: uppercase;
}

.content-bg {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding-right: calc(50vw - 50%);
  padding-left: calc(50vw - 50%);
  padding-top: 60px;
  padding-bottom: 100px;
  background-color: #F5F5F5;
}

h3.midashi {
  margin-bottom: 25px;
  color: #1D0B05;
  background-color: #F5F4F3;
  box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25);
}

h3.midashi.center {
  text-align: center;
}

/** Schedule */

.schedule-table th,
.schedule-table td {
  border-width: 0 0 1px;
  font-weight: 700;
}

/** about-club */

.aboutclub-slide .swiper-slide img {
  width: 100%;
  height: auto;
}

.aboutclub-slide .swiper-button-prev::after,
.aboutclub-slide .swiper-button-next::after {
  content: "";
  height: 19px;
  width: 19px;
  border-top: solid 2px #fff;
}

.aboutclub-slide .swiper-button-prev {
  left: 15px;
}

.aboutclub-slide .swiper-button-prev::after {
  border-left: solid 2px #fff;
  rotate: -45deg;
}

.aboutclub-slide .swiper-button-next {
  right: 15px;
}

.aboutclub-slide .swiper-button-next::after {
  border-right: solid 2px #fff;
  rotate: 45deg;
}

.aboutclub-slide .swiper-pagination-bullet {
  opacity: 1;
  background-color: #fff;
}

.aboutclub-slide .swiper-pagination-bullet-active {
  background: #FF2828;
}

.aboutclub-head {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  gap: 30px;
  margin-bottom: 50px;
}

.aboutclub-head__img {
  width: 100%;
}

.aboutclub-head__text {
  width: 100%;
  text-align: left;
}

.aboutclub-text {
  color: #7A7A7A;
}

.aboutclub-history__year {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  color: #1D0B05;
  background-color: transparent;
  font-family: "Lexend Deca", sans-serif;
  font-size: clamp(24px, 12px + 3vw, 48px);
}

.aboutclub-history {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.aboutclub-history__item {
  background-color: #fff;
  margin: 0 0 25px;
  padding: 0.91667em 1.25em;
}

.aboutclub-history__item h3 {
  margin: 0 0 0;
  padding: 0;
  color: #1D0B05;
  background-color: transparent;
}

.aboutclub-history__item p {
  color: #7A7A7A;
}

.song-list-content {
  margin-top: 50px;
}

.song-list {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  list-style-type: none;
  margin: 0 0 50px 0;
  padding: 0;
  gap: 30px;
  counter-reset: number 0;
}

.song-list__item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 20px;
  padding: 0 0 0 3em;
  font-family: "Hiragino Mincho ProN", "Yu Mincho", serif;
  color: #7A7A7A;
}

.song-list__item::before {
  counter-increment: number 1;
  content: counter(number) " ";
  margin-left: -2em;
  position: absolute;
}

/** ob */

.ob-head {
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.25);
}

.ob-head h3 {
  margin-bottom: 24px;
}

.ob-head__text {
  margin: 24px 20px 0;
  padding-bottom: 25px;
  color: #7A7A7A;
}

.ob-list {
  color: #7A7A7A;
}

table.graduate-table thead {
  background-color: #F5F4F3;
}

table.graduate-table thead th {
  border: none;
  text-align: center;
  font-weight: normal;
  color: #7A7A7A;
}

table.graduate-table tbody tr:nth-child(odd) td {
  background-color: #fff;
}

table.graduate-table tbody tr:nth-child(even) td {
  background-color: #FBFBFB;
}

table.graduate-table tbody tr td {
  border: none;
  border-bottom: 1px solid #B5B5B5;
  text-align: center;
  color: #7A7A7A;
  vertical-align: middle;
}

/* Archive
--------------------------------*/

.post-grid {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  line-height: 1.36;
  font-weight: 600;
}

.post-grid__link {
  display: block;
  position: relative;
  height: 100%;
  box-shadow: 0 0.25em 0.25em rgba(0, 0, 0, 0.25);
  background: #fff;
  text-decoration: none;
}

.post-grid__link:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  transition: box-shadow 0.3s;
  pointer-events: none;
  content: "";
}

.post-grid__link:hover:before,
.post-grid__link:focus:before {
  box-shadow: 0 0 0 0.25em #DB2315 inset;
}

.post-grid__image {
  aspect-ratio: 450/280;
}

.post-grid__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.post-grid__content {
  padding: 1.5em;
}

.post-grid__title {
  margin-bottom: 1.5rem;
  font-family: "Lexend Deca", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 1.25em;
}

.post-grid__meta {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.post-grid__date {
  color: #a49f9f;
}

.post-grid__category {
  color: #DB2315;
}

/* Post
--------------------------------*/

.post {
  display: grid;
  grid-template-areas: "header" "content" "sidebar";
  gap: 2rem 1.875rem;
  margin: 3rem 0;
}

.entry-header {
  grid-area: header;
}

.entry-title {
  line-height: 1.37;
  margin: 0;
  padding: 0;
  font-family: "Lexend Deca", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-weight: 600;
  font-size: 1.5rem;
  text-align: left;
}

.entry-meta {
  display: flex;
  align-items: baseline;
  gap: 1em;
  line-height: 1.25;
  margin-bottom: 1rem;
  font-weight: 600;
}

.entry-date {
  color: #DB2315;
  font-family: "Lexend Deca", sans-serif;
  font-size: 0.875em;
}

.post-categories {
  color: #7A7A7A;
  font-size: 0.75em;
}

.entry-content {
  grid-area: content;
}

.attachment .entry-content {
  text-align: center;
}

.entry-content strong {
  color: inherit;
}

.entry-content em {
  color: inherit;
  font-style: italic;
  font-weight: inherit;
}

.read-more {
  text-align: right;
}

.post-share {
  margin-top: 40px;
}

.post-share__heading {
  display: block;
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  word-wrap: normal;
  margin: 0;
  padding: 0;
  border: 0;
}

/*** Wordpress Native Classes ***/

.wp-caption {
  max-width: 100%;
}

.alignleft,
.alignright,
.aligncenter {
  display: block;
  margin: 1em auto;
  text-align: center;
}

.alignnone {
  vertical-align: baseline;
}

.field {
  margin-bottom: 1.25em;
}

.field__label {
  display: flex;
  align-items: center;
  gap: 1em;
  margin-bottom: 0.5em;
}

.required,
.optional {
  display: inline-block;
  line-height: 1.223;
  vertical-align: text-bottom;
  padding: 0.223em 0.589em 0.223em 0.889em;
  border-radius: 0.223em;
  background: #DB2315;
  color: #fff;
  font-weight: 700;
  font-size: 0.75em;
  letter-spacing: 0.3em;
}

.optional {
  background: #a8a8a8;
}

.acceptance {
  margin: 2em 0;
  text-align: center;
}

.acceptance__label {
  display: inline-block;
  cursor: pointer;
}

label[for],
.wpcf7-list-item > label {
  cursor: pointer;
}

.submit {
  display: grid;
  grid-template-columns: 32px 1fr 32px;
  align-items: center;
  justify-content: center;
  text-indent: 20px;
}

input.wpcf7-submit {
  grid-column: 2/3;
  line-height: 1.5;
  padding: 0.41667em 0.8334em;
  background: #139F21;
  color: #fff;
  font-weight: 700;
  text-align: center;
}

.wpcf7-spinner {
  grid-column: 3/4;
  margin: 0 0 0 0.5rem;
}

.wpcf7-text,
.wpcf7-textarea {
  width: 100%;
}

.wpcf7-text.wpcf7-not-valid,
.wpcf7-textarea.wpcf7-not-valid {
  background: #fcc;
}

.wpcf7-checkbox,
.wpcf7-radio {
  display: block;
}

span.wpcf7-list-item {
  position: relative;
  left: -0.8em;
}

.wpcf7-acceptance span {
  display: inline;
  position: static;
  margin: 0;
}

.wpcf7-response-output {
  text-align: center;
}

.wpcf7-recaptcha > div {
  margin: 30px auto;
}

/* Page Navigation
--------------------------------*/

.navigation {
  margin: 4rem auto 0;
  text-align: center;
}

.pagination .nav-links {
  display: flex;
  justify-content: center;
  gap: 0.5em;
}

.post-navigation {
  max-width: 300px;
}

.post-navigation .nav-links {
  display: grid;
  grid-template-areas: "prev next" "home home";
  grid-template-columns: 1fr 1fr;
  justify-content: center;
  gap: 1em;
}

.post-navigation a {
  display: block;
  line-height: 1.43;
  padding: 0.857143em;
  border: 1px solid #DB2315;
  border-radius: 0.25rem;
  color: #DB2315;
  font-weight: 700;
  font-size: 0.875em;
  text-decoration: none;
}

.post-navigation a:hover,
.post-navigation a:focus {
  background: #DB2315;
  color: #fff;
}

.nav-next {
  grid-area: next;
}

.nav-previous {
  grid-area: prev;
}

.nav-home {
  grid-area: home;
}

.page-numbers {
  display: inline-block;
  min-width: calc(2.86em + 2px);
  padding: 0.7143em;
  border: 1px solid #DB2315;
  color: #DB2315;
  font: 700 0.875rem/1.4286 "Lexend Deca", sans-serif;
  text-decoration: none;
}

.page-numbers:before {
  vertical-align: top;
  font-family: icomoon;
}

.page-numbers.current,
.page-numbers:hover,
.page-numbers:focus {
  background: #DB2315;
  color: #fff;
}

.page-numbers.prev:before {
  content: "\e905";
}

.page-numbers.next:before {
  content: "\e904";
}

/* Social
--------------------------------*/

.follow-us {
  display: flex;
  list-style: none;
  justify-content: center;
  margin: 0;
  padding: 0;
  gap: 1.5em;
}

.follow-us__link {
  display: block;
  color: #DB2315;
  font-size: 1.875em;
  text-decoration: none;
}

.follow-us__link:before {
  font-family: icomoon;
  font-weight: 400;
  content: "\e906";
  speak: none;
}

.follow-us__link[href*=twitter]:before {
  content: "\e907";
}

.follow-us__link[href*=tiktok]:before {
  content: "\e908";
}

.follow-us__link[href*=youtube]:before {
  content: "\e909";
}

.follow-us__link:hover,
.follow-us__link:focus {
  color: #fff;
}

/* Extra
--------------------------------*/

.skip-link {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999999;
  list-style: none;
  margin: 0;
  padding: 0;
}

.skip-link a {
  display: block;
  height: 0;
  line-height: 1.5;
  overflow: hidden;
  border-radius: 0 0 0.5em 0;
  background: #fff;
  transition: none;
  color: rgb(0, 81, 255);
  font-weight: 700;
  font-size: 14px;
  text-decoration: none;
}

.skip-link a:focus {
  height: auto;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
  padding: 16px 24px;
}

/* Media Queries
--------------------------------*/

@media print, screen and (min-width: 480px) {
  .banner-list {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }

  .banner-list__item {
    flex: 0 0 calc(50% - 0.5em);
  }

  .post-grid {
    flex-wrap: wrap;
    flex-direction: row;
  }

  .post-grid__item {
    flex: 0 0 calc((100% - 1.5em) / 2);
  }
}

@media print, screen and (min-width: 601px) {
  .admin-bar .drawer {
    top: 46px;
  }
}

@media print, screen and (min-width: 768px) {
  html {
    font-size: min(16px, 1.0638297872vw);
  }

  section {
    margin-top: 7.5rem;
    margin-bottom: 7.5rem;
  }

  input[type=text],
  input[type=tel],
  input[type=email],
  input[type=url],
  input[type=search],
  input[type=number],
  input[type=date],
  input[type=password],
  textarea,
  select {
    padding: calc((3.5rem - 26px) / 2);
  }

  h2 {
    margin-bottom: 0.8334em;
    font-size: 3rem;
  }

  h2 .en {
    font-size: 0.4em;
  }

  h3 {
    font-size: 1.5rem;
  }

  .file-btn {
    display: inline-flex;
    min-width: 24.25em;
    font-size: 1.5rem;
  }

  .lede {
    margin-bottom: 3.5rem;
    text-align: center;
  }

  .link {
    margin-top: 4rem;
  }

  .site-header-content {
    padding-block: 2.5em;
  }

  .hgroup {
    font-size: 1em;
  }

  .global-nav {
    justify-content: flex-end;
  }

  .global-nav-content {
    display: block;
  }

  .global-nav__list {
    flex-direction: row;
    align-items: center;
    gap: 2em;
  }

  .global-nav__item {
    flex: 0 auto;
  }

  .global-nav__link {
    position: relative;
    font-size: 0.9375em;
  }

  .global-nav__link:after {
    position: absolute;
    top: 100%;
    left: 0;
    width: 0;
    height: 1px;
    margin-top: 0.25em;
    background: #DB2315;
    transition: 0.3s;
    content: "";
  }

  .global-nav__link:hover:after,
  .global-nav__link:focus:after {
    width: 100%;
  }

  .menu-button {
    display: none;
  }

  .hero__text {
    font-size: min(42px, 2.1875vw);
  }

  .site-footer {
    margin-top: 9em;
  }

  .site-footer-content {
    display: grid;
    grid-template-columns: auto 1fr 1fr;
    gap: 4.5em 9em;
  }

  .site-footer h2 {
    font-size: 1.5em;
    text-align: left;
  }

  .organization__logo {
    margin-bottom: 3em;
  }

  .organization__name {
    font-size: 1.875em;
    text-align: left;
  }

  .organization-info {
    width: auto;
    margin-top: 5em;
  }

  .footer-nav {
    flex-wrap: nowrap;
    flex-direction: column;
  }

  .footer-nav__item {
    flex: auto;
    padding-left: 1.625em;
  }

  .copyright {
    margin: 0;
    font-size: 1em;
  }

  .widget {
    padding: 1.5em;
  }

  .widget__title {
    font-size: 1.5em;
  }

  .post-list__item {
    margin-top: 2.5em;
  }

  .post-list__link {
    gap: 1.875em;
  }

  .post-list__content {
    font-size: 1em;
  }

  .breadcrumbs {
    font-size: 1em;
  }

  .pickup-nav {
    position: relative;
    z-index: 200;
    margin-top: max(-132px, -6.875vw);
  }

  .pickup-nav__list {
    flex-direction: row;
  }

  .pickup-nav__item {
    flex: 1;
    box-shadow: none;
  }

  .pickup-nav__link {
    padding: 3em 1.875em;
    border-bottom-width: 0.5em;
  }

  .pickup-nav__link:before {
    font-size: 6.25em;
  }

  .pickup-nav__title {
    font-size: 2.1em;
  }

  .pickup-nav__description {
    font-size: 1em;
  }

  .about-area {
    display: grid;
    grid-template-areas: "image heading" "image lede" "image link";
    grid-template-columns: 57.482% 1fr;
    grid-template-rows: auto auto 1fr;
    align-items: flex-start;
    gap: 0 3.75em;
  }

  .about-area__image {
    grid-area: image;
    margin: 0;
  }

  .about-area h2 {
    grid-area: heading;
    text-align: left;
  }

  .about-area .lede {
    grid-area: lede;
    width: auto;
    margin: 0;
    text-align: justify;
  }

  .about-area .link {
    grid-area: link;
    text-align: left;
  }

  .news-area {
    background-image: url(images/bg_news.jpg);
  }

  .contact-area {
    position: relative;
    height: 39.25rem;
    margin-top: 15.125rem;
    padding-block: 11.125rem 0;
    background-size: auto 100%;
  }

  .contact-area:before {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 15em;
    height: 49.1875em;
    margin-left: 14.75em;
    background: url(images/flug.png?1) no-repeat 50%/contain;
    content: "";
  }

  .contact-area h2 {
    margin-bottom: 2.25em;
    text-align: left;
  }

  .contact-area .link {
    text-align: left;
  }

  .banner-list {
    justify-content: flex-start;
    gap: 1.875em;
  }

  .banner-list__item {
    flex-basis: 28.125em;
  }

  .instagram-account {
    margin-bottom: 6.25rem;
    font-size: 1em;
  }

  .page-header {
    margin-bottom: 8em;
  }

  .page-header__content {
    height: 27.375em;
  }

  .content-bg {
    padding-top: 100px;
    padding-bottom: 150px;
  }

  h3.midashi {
    margin-bottom: 50px;
  }

  .schedule-table {
    font-size: 1.5rem;
  }

  .aboutclub-slide .swiper-button-prev::after,
  .aboutclub-slide .swiper-button-next::after {
    height: 27px;
    width: 27px;
  }

  .aboutclub-slide .swiper-button-prev {
    left: 30px;
  }

  .aboutclub-slide .swiper-button-next {
    right: 30px;
  }

  .aboutclub-head {
    flex-direction: row;
    margin-bottom: 100px;
    gap: 4.1888297872vw;
  }

  .aboutclub-head.reverse {
    flex-direction: row-reverse;
  }

  .aboutclub-head__img {
    width: 60%;
  }

  .aboutclub-head__text {
    width: 40%;
  }

  .aboutclub-head__text h2,
  .aboutclub-head__text .lede {
    width: 100%;
    text-align: left;
  }

  .aboutclub-history__year {
    margin-top: 0;
    margin-bottom: 0;
  }

  .aboutclub-history__item {
    margin: 0 0 50px;
    padding: 30px 45px 40px;
  }

  .aboutclub-history__item h3 {
    margin-bottom: 0;
  }

  .song-list-content {
    margin-top: 80px;
  }

  .song-list {
    flex: 1 1 0;
    flex-direction: row;
    align-items: flex-start;
    margin-bottom: 100px;
    gap: 60px;
  }

  .ob-head h3 {
    margin-bottom: 48px;
  }

  .ob-head__text {
    margin: 48px 54px 0;
    padding-bottom: 50px;
  }

  .post-grid {
    gap: 3.5em 2.1277%;
  }

  .post-grid__item {
    flex-basis: 31.9149%;
  }

  .post-grid__link {
    display: grid;
    grid-template-rows: auto 1fr;
  }

  .post-grid__image {
    grid-row: 1;
  }

  .post-grid__content {
    display: flex;
    flex-direction: column;
    grid-row: 2;
    padding: 2em 1.5em;
  }

  .post-grid__title {
    margin-bottom: 2rem;
    font-size: 1.375em;
  }

  .post-grid__meta {
    margin-top: auto;
    font-size: 1.125em;
  }

  .post {
    grid-template-areas: "header header" "content sidebar";
    grid-template-columns: 65.95745% 1fr;
  }

  .entry-title {
    font-size: 3rem;
  }

  .entry-meta {
    margin-bottom: 1.25rem;
  }

  .entry-date {
    font-size: 1.1875em;
  }

  .post-categories {
    font-size: 1em;
  }

  .alignleft {
    float: left;
    margin: 0 1em 0 0;
  }

  .alignright {
    float: right;
    margin: 0 0 0 1em;
  }

  div.wpcf7 {
    width: 91.064%;
    margin: 0 auto;
  }

  .field {
    display: flex;
    align-items: flex-start;
    gap: 3em;
  }

  .field__label {
    flex: 1;
    align-items: baseline;
    justify-content: space-between;
    margin: 0;
    padding: calc((3.5rem - 42px) / 2) 0;
    font-size: 1.5em;
  }

  .field__control {
    flex: 0 0 72.43%;
  }

  .submit {
    grid-template-columns: 48px auto 48px;
  }

  input.wpcf7-submit {
    width: 22.5rem;
    font-size: 1.5em;
  }

  .wpcf7-spinner {
    margin-left: 1.5rem;
  }

  .navigation {
    margin-top: 10rem;
  }

  .post-navigation {
    max-width: none;
  }

  .post-navigation .nav-links {
    grid-template-areas: "prev home next";
    grid-template-columns: 17.5em 19.375em 17.5em;
    gap: 3em;
  }

  .follow-us {
    justify-content: flex-start;
    gap: 2em;
  }
}

@media print, screen and (min-width: 783px) {
  .admin-bar .drawer {
    top: 32px;
  }
}

@media print, screen and (min-width: 1504px) {
  a[href^="tel:"] {
    text-decoration: inherit;
  }

  .page-header__content,
  .site-content,
  .site-footer-content,
  .site-header-content {
    padding-right: 47px;
    padding-left: 47px;
  }

  .about-area {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-inline: 47px;
  }

  .aboutclub-head {
    gap: 63px;
  }
}

@media print and (min-resolution: 2dppx), screen and (min-width: 1504px) and (min-resolution: 2dppx) {
  .page-header {
    background-image: url(images/bg_header_news@2x.jpg);
  }

  .page-header--schedule {
    background-image: url(images/bg_header_schedule@2x.jpg);
  }

  .page-header--about-us {
    background-image: url(images/bg_header_about-us@2x.jpg);
  }

  .page-header--about-club {
    background-image: url(images/bg_header_about-club@2x.jpg);
  }

  .page-header--contact {
    background-image: url(images/bg_header_contact@2x.jpg);
  }
}

@media print, screen and (min-width: 1738px) {
  .about-area {
    margin-inline: -164px;
  }
}

@media screen and (max-width: 767px) {
  .break-sp:before {
    white-space: pre;
    content: "\a";
  }
}

@media print {
  body {
    min-width: 1504px;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  figcaption {
    page-break-after: avoid;
    page-break-inside: avoid;
  }

  blockquote,
  figure,
  table {
    page-break-inside: avoid;
  }
}