/*
Theme Name: Lightning Child202610
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/
@font-face {
  font-family: 'tamanegi';
  src: url('./assets/font/tamanegi.ttf');
}

body {
  font-size: 16px;
  background-image: url("./assets/img/bg01.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

main {
  margin: 61px 0 0;
}

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

li {
  margin: 0;
}

img {
  max-width: 100%;
}

a {
  color: #000000;
  text-decoration: none;
}

a:hover {
  color: #000000;
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
}

p {}

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

#header {
  position: fixed;
  z-index: 100;
  width: 100%;
  background-color: rgba(230, 230, 230, 0.5);
  padding: 10px 0;
}

#header .innerbox {
  width: 90%;
  margin: 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#header .innerbox .logobox {
  width: 300px;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
}

#header .innerbox .logobox a {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 16px;
}

#header .innerbox .logobox a img {
  display: block;
  width: 50px;
  margin: 0 20px 0 0;
}

#header .innerbox .logobox a strong {
  font-size: 120%;
  font-weight: 600;
  margin: 0 6px 0 0;
}

#header .innerbox .menu-icon {
  display: none;
}

#header .innerbox .listbox {
  width: calc(100% - 300px);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

#header .innerbox .listbox ul {
  width: 700px;
  max-width: 100%;
  margin: 0 0 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}

#header .innerbox .listbox ul li {
  text-align: center;
}

#header .innerbox .listbox ul li a {
  padding: 5px;
  font-family: "Yuji Syuku", serif;
}

.top_section {
  position: relative;
  padding: 80px 0
}

.top_section .innerbox {
  width: 1200px;
  max-width: 90%;
  margin: 0 auto;
}

.midh2 {
  position: relative;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
  text-align: center;
  padding: 15px 0;
  border: 0;
  z-index: 0;
}

.midh2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 90px;
  height: 90px;
  background-image: url("./assets/img/deco02.svg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0.7;
  z-index: -1;
}

.midh2 .jp_text,
.midh2 .en_text {
  display: block;
}

.midh2 .jp_text {
  font-size: 28px;
  margin: 0 auto 5px;
}

.midh2 .en_text {
  font-size: 20px;
}

#top_fv {
  height: 100vh;
  overflow: hidden;
}

#top_fv .swiper {
  height: 100%;
}

#top_fv .swiper-pagination-bullet-active {
  background: #ff000d;
}

#top_fv .swiper-slide {
  position: relative;
}

#top_fv .swiper-slide a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

#top_fv .swiper-slide .swiper_img {
  width: 100%;
  height: 100%;
}

#top_fv .swiper-slide .swiper_img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}

@keyframes zoom {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.05);
  }
}

.swiper-slide-active .swiper_img,
.swiper-slide-duplicate-active .swiper_img,
.swiper-slide-prev .swiper_img {
  animation: zoom 7s linear 0s normal both;
}

#top_fv .swiper-slide p {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100vw;
  text-align: center;
  font-size: 6vw;
  font-weight: 600;
  font-family: "Yuji Syuku", serif;
  text-shadow: 0.01em 0.01em 0.01em #fff;
  z-index: 1;
  opacity: 0;
  transition: all 1.8s 1.5s ease;
}

#top_fv .swiper-slide.swiper-slide-active p {
  opacity: 1;
}

#top_greeting {}

#top_greeting .innerbox {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#top_greeting .innerbox .phobox {
  width: 50%;
  background-image: url("./assets/img/top_greeting_pho01.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5);
}

#top_greeting .innerbox .textbox {
  width: 50%;
  padding: 5% 0 5% 2%;
}

#top_greeting .innerbox .textbox .submidh2 {
  padding: 0;
  margin-bottom: 30px;
  text-align: left;
}

#top_greeting .innerbox .textbox .submidh2::before {
  display: none;
}

#top_greeting .innerbox .textbox p {}

#top_about {}

#top_about .innerbox {}

#top_about .innerbox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#top_about .innerbox ul li {
  position: relative;
  width: 48%;
}

#top_about .innerbox ul li:nth-child(odd) {
  margin: 0 2% 0 0;
}

#top_about .innerbox ul li:nth-child(even) {
  margin: 0 0 0 2%;
}

#top_about .innerbox ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
  z-index: 1;
}

#top_about .innerbox ul li p {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5em;
  font-weight: 600;
  z-index: 2;
}

#top_about .innerbox ul li img {
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5);
}

#top_topic {}

#top_topic .innerbox {}

#top_topic .innerbox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#top_topic .innerbox ul li {
  width: 48%;
}

#top_topic .innerbox ul li:nth-child(odd) {
  margin: 4% 2% 0 0;
}

#top_topic .innerbox ul li:nth-child(even) {
  margin: 4% 0 0 2%;
}

#top_topic .innerbox ul li:nth-child(1),
#top_topic .innerbox ul li:nth-child(2) {
  margin-top: 0;
}

#top_topic .innerbox ul li a {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#top_topic .innerbox ul li .phobox {
  width: 150px;
}

#top_topic .innerbox ul li .textbox {
  width: calc(100% - 150px);
  padding: 0 0 0 20px;
}

#top_topic .innerbox ul li .textbox time {
  font-size: 14px;
  margin: 0 auto 5px;
}

#top_topic .innerbox ul li .textbox h3 {
  font-size: 18px;
  margin: 0 auto 10px;
}

#top_topic .innerbox ul li .textbox p {
  font-size: 14px;
}

#top_youtube {}

#top_youtube .innerbox {}

#top_youtube .innerbox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
}

#top_youtube .innerbox ul li {
  width: 24.5%;
  position: relative;
  padding: 13.5% 0 0;
}

#top_youtube .innerbox ul li iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

#top_youtube .innerbox .linkbox {
  margin: 30px auto 0;
}

#top_youtube .innerbox .linkbox a {
  display: block;
  width: 350px;
  text-align: center;
}

#top_youtube .innerbox .instagram {
  margin: 50px auto 0;
  max-width: 500px;
}

#top_youtube .innerbox .instagram a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 20px;
  color: #212529;
  border: 1px solid #707070;
  padding: 10px 20px;
  transition: all .3s;
}

#top_youtube .innerbox .instagram a:hover {
  opacity: 0.7;
}

#top_youtube .innerbox .instagram p.txt {
  font-size: 16px;
  font-family: "Yuji Syuku", serif;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin: 0;
}

#top_youtube .innerbox .instagram .icon_area {
  display: flex;
  align-items: center;
  gap: 5px;
}

#top_youtube .innerbox .instagram .icon_area p {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-family: "Shippori Mincho", serif;
}

#top_class {}

#top_class .innerbox {}

#top_class .innerbox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#top_class .innerbox ul li {
  position: relative;
  width: 48%;
}

#top_class .innerbox ul li:nth-child(odd) {
  margin: 4% 2% 0 0;
}

#top_class .innerbox ul li:nth-child(even) {
  margin: 4% 0 0 2%;
}

#top_class .innerbox ul li:nth-child(1),
#top_class .innerbox ul li:nth-child(2) {
  margin-top: 0;
}

#top_class .innerbox ul li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  color: #fff;
  opacity: 0.5;
}

#top_class .innerbox ul li p {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5em;
  font-weight: 600;
  z-index: 2;
}

#top_class .innerbox ul li img {
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5);
}

#top_join {}

#top_join .innerbox {}

#top_join .innerbox .banner {
  position: relative;
}

#top_join .innerbox .banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  color: #fff;
  opacity: 0.5;
  display: flex;
  justify-content: center;
  align-items: center;
}

#top_join .innerbox .banner p {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5em;
  font-weight: 600;
  z-index: 2;
}

#top_join .innerbox .banner img {
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.5);
}

/*--サブページ共通--*/
#sub_mid {
  position: relative;
  padding: 13% 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

#sub_mid .innerbox {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 1200px;
  max-width: 90%;
}

.submidh1 {
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
  font-size: 34px;
  letter-spacing: 0.05em;
  text-shadow: 1px 1px 1px #000;
}

#sub_mid .innerbox h1 {
  margin: 0;
  text-align: center;
}

.submidh2 {
  position: relative;
  margin: 0 auto 50px;
  padding: 120px 0 0;
  text-align: center;
  border: 0;
  z-index: 0;
}

.submidh2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  background-color: #707070;
  width: 1px;
  height: 70px;
}

.submidh2 .en_text,
.submidh2 .jp_text {
  display: block;
}

.submidh2 .en_text {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-size: 13px;
  margin: 0 auto 10px;
}

.submidh2 .jp_text {
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
  font-size: 48px;
}

.sub_section {
  position: relative;
  padding: 150px 0;
}

.sub_section .innerbox {
  width: 1200px;
  max-width: 90%;
  margin: 0 auto;
}

.linkbox {}

.linkbox a {
  position: relative;
  display: block;
  width: 500px;
  max-width: 100%;
  border-radius: 40px;
  margin: 20px auto 0;
  padding: 20px 20px;
  border: 1px solid #FC0404;
  color: #FC0404;
  font-weight: 600;
}

.linkbox a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translate(0%, -50%);
  -ms-transform: translate(0%, -50%);
  transform: translate(0%, -50%);
  width: 32px;
  height: 32px;
  background-image: url("./assets/img/link_arrow01.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/*--千唐流空手道とは--*/
#chito_mid {
  background-image: url("./assets/img/chito_midbg.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

#chito_mid .innerbox {
  margin: 0 auto;
  text-align: center;
}

#chito01 {
  padding: 100px 0 50px;
}

#chito01 .innerbox {
  text-align: center;
}

#chito01 .innerbox h2 {
  position: relative;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
  font-size: 28px;
  margin: 0 auto 70px;
  padding: 120px 0 0;
  border: 0;
  z-index: 0;
}

#chito01 .innerbox h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  -ms-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  background-color: #707070;
  width: 1px;
  height: 70px;
}

#chito02 {
  background-image: url("./assets/img/subbg.jpg");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: repeat;
}

#chito02 .innerbox {
  width: 100%;
  max-width: 100%;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#chito02 .innerbox .phobox {
  width: 50%;
  padding: 0 10% 0 0;
}

#chito02 .innerbox .textbox {
  width: 50%;
}

#chito02 .innerbox .textbox .inbox {
  width: 600px;
  max-width: 90%;
}

#chito02 .innerbox .textbox .inbox .submidh2 {
  padding: 0;
  text-align: left;
}

#chito02 .innerbox .textbox .inbox .submidh2::before {
  display: none;
}

#chito02 .innerbox .textbox .inbox p {}

#chito02 .innerbox .textbox .inbox .linkbox {}

#chito02 .innerbox .textbox .inbox .linkbox a {
  background-color: #fff;
  color: #222222;
  width: 330px;
}

#chito03 {}

#chito03 .submidh2 {
  margin: 0 auto 50px;
}

#chito03 .innerbox {
  text-align: center;
}

#chito03 .innerbox .phobox {
  margin: 0 auto 60px;
}

#chito03 .innerbox .phobox p {
  margin: 15px auto 0;
}

#chito03 .innerbox .textbox {}

#chito04 {
  position: relative;
  background-image: url("./assets/img/subbg.jpg");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: repeat;
}

#chito04::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 12% 0;
  background-image: url("./assets/img/chito04_decobg.jpg");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 0;
}

#chito04 .innerbox {
  position: relative;
  z-index: 1;
}

#chito04 .innerbox .textbox {
  text-align: center;
  margin: 0 auto 100px;
}

#chito04 .innerbox .textbox p {
  font-size: 18px;
  line-height: 2.5;
}

#chito04 .innerbox .phobox {
  text-align: center;
}

#chito04 .innerbox .phobox img {
  margin: 0 auto;
}

#chito04 .innerbox .phobox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 90px auto 0;
}

#chito04 .innerbox .phobox ul li {
  width: 48%;
}

#chito04 .innerbox .phobox ul li:nth-child(odd) {
  margin: 4% 2% 0 0;
}

#chito04 .innerbox .phobox ul li:nth-child(even) {
  margin: 4% 0 0 2%;
}

#chito04 .innerbox .phobox ul li:nth-child(1),
#chito04 .innerbox .phobox ul li:nth-child(2) {
  margin-top: 0;
}

/*--益城支部道場について--*/
#mashiki_mid {}

#mashiki_mid img {
  width: 100%;
}

#mashiki01 {}

#mashiki01 .innerbox {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#mashiki01 .innerbox .phobox {
  margin: 0 auto 50px;
}

#mashiki01 .innerbox .textbox {
  text-align: center;
  margin: 0 auto;
}

#mashiki02 {
  padding: 0 0 150px;
}

#mashiki02 .innerbox {}

#mashiki02 .innerbox ul {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 70px auto 0;
}

#mashiki02 .innerbox ul li {
  width: 46%;
}

#mashiki02 .innerbox ul li:nth-child(odd) {
  margin: 6% 4% 0 0;
}

#mashiki02 .innerbox ul li:nth-child(even) {
  margin: 6% 0 0 4%;
}

#mashiki02 .innerbox ul li:nth-child(1),
#mashiki02 .innerbox ul li:nth-child(2) {
  margin-top: 0;
}

#mashiki03 {
  position: relative;
  background-image: url("./assets/img/subbg.jpg");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: repeat;
}

#mashiki03 .innerbox {}

#mashiki03 .innerbox .submidh2 {
  margin-bottom: 0;
}

#mashiki03 .innerbox ul {}

#mashiki03 .innerbox ul li {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  padding: 80px 0 0;
}

#mashiki03 .innerbox ul li .textbox {
  width: 45%;
}

#mashiki03 .innerbox ul li .textbox h3 {
  border: 0;
  padding: 0;
  margin: 0;
}

#mashiki03 .innerbox ul li .textbox h3:after {
  display: none;
}

#mashiki03 .innerbox ul li .textbox h3 .en_text {
  display: inline-block;
  font-size: 16px;
  padding: 8px 35px;
  border-radius: 30px;
  background-color: #fff;
}

#mashiki03 .innerbox ul li .textbox h3 .en_text strong {
  font-size: 22px;
  margin: 0 0 0 4px;
}

#mashiki03 .innerbox ul li .textbox h3 .jp_text {
  display: block;
  font-size: 36px;
  margin: 25px auto 0;
}

#mashiki03 .innerbox ul li .phobox {
  width: 55%;
}

#mashiki03 .innerbox ul li .phobox img {
  margin: 0 auto 30px;
}

#mashiki03 .innerbox ul li .phobox p {}

#mashiki04 {
  padding: 80px 0 0;
  background-color: #AA585C;
  color: #fff;
}

#mashiki04 .innerbox {
  text-align: center;
  padding: 0 0 50px;
}

#mashiki04 .innerbox .submidh2::before {
  background-color: #fff;
}

#mashiki04 .mapbox {
  width: 100%;
}

#mashiki04 .mapbox iframe {
  display: block;
  width: 100%;
  height: 60vh;
}

#mashiki05 {}

#mashiki05 .innerbox {}

#mashiki05 .innerbox .submidh2 .jp_text br {
  display: none;
}

#mashiki05 .innerbox .selbox {}

#mashiki05 .innerbox .selbox dl {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  margin: 0;
}

#mashiki05 .innerbox .selbox dl:nth-child(odd) {
  background-color: #EBE7DF;
}

#mashiki05 .innerbox .selbox dl:nth-child(even) {
  background-color: #F5F5F5;
}

#mashiki05 .innerbox .selbox dl dt,
#mashiki05 .innerbox .selbox dl dd {
  padding: 20px 5%;
  margin: 0;
  border: 0;
}

#mashiki05 .innerbox .selbox dl dt {
  width: 25%;
}

#mashiki05 .innerbox .selbox dl dd {}

#mashiki05 .innerbox .selbox dl dd:nth-child(2) {
  width: 45%;
}

#mashiki05 .innerbox .selbox dl dd:nth-child(3) {
  width: 30%;
}

#mashiki06 {
  position: relative;
  background-image: url("./assets/img/subbg.jpg");
  background-size: 100% auto;
  background-position: center center;
  background-repeat: repeat;
}

body.page-template-front-page #mashiki06 {
  padding: 80px 0;
}

#mashiki06 .innerbox {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

#mashiki06 .innerbox .textbox {
  width: 50%;
  padding: 0 5% 0 0;
}

#mashiki06 .innerbox .textbox .submidh2 {
  padding: 0;
  text-align: left;
}

#mashiki06 .innerbox .textbox .submidh2::before {
  content: "";
  display: none;
}

#mashiki06 .innerbox .textbox p {}

#mashiki06 .innerbox .textbox p strong {
  font-family: "Yuji Syuku", serif;
  font-size: 23px;
  font-weight: 600;
  display: block;
  margin: 0 auto 10px;
}

#mashiki06 .innerbox .textbox .tel_link {
  margin: 50px auto 0;
}

#mashiki06 .innerbox .textbox .line_area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 25px 0 0;
  padding: 15px 40px;
  max-width: 520px;
  border: 1px solid #212529;
}

#mashiki06 .innerbox .textbox .line_area p {
  font-family: "Yuji Syuku", serif;
  font-size: 18px;
  font-weight: 600;
  color: #212529;
  letter-spacing: 0.05em;
  margin: 0;
}

#mashiki06 .innerbox .phobox {
  width: 50%;
}

/*--お問い合わせ--*/
#contact01 {
  padding-top: 0;
}

#form_table {}

#form_table .required {
  color: #FF0004;
  margin: 0 0 0 5px;
}

#form_table .link {}

#form_table .link input {
  display: block;
  position: relative;
  width: 300px;
  max-width: 100%;
  margin: 30px auto 0;
  border-radius: 40px;
  padding: 20px 20px;
  border: 1px solid #FC0404;
  color: #FC0404;
  background-color: #fff;
  font-weight: 600;
}

/*--フッター--*/
footer {
  padding: 60px 0 0;
  background-color: rgba(230, 230, 230, 0.5);
}

footer .innerbox {
  width: 90%;
  margin: 0 auto 60px;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

footer .innerbox .textbox {
  width: 300px;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
}

footer .innerbox .textbox .logobox {}

footer .innerbox .textbox .logobox a {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}

footer .innerbox .textbox .logobox a img {
  display: block;
  width: 50px;
  margin: 0 20px 0 0;
}

footer .innerbox .textbox .logobox a strong {
  font-size: 120%;
  font-weight: 600;
  margin: 0 6px 0 0;
}

footer .innerbox .textbox .addbox {}

footer .innerbox .textbox .addbox .box00 {}

footer .innerbox .textbox .addbox .box00:not(:last-child) {
  margin-bottom: 5px;
}

footer .innerbox .listbox {
  width: calc(100% - 300px);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

footer .innerbox .listbox ul {
  width: 700px;
  max-width: 100%;
  margin: 0 0 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}

footer .innerbox .listbox ul li {
  text-align: center;
}

footer .innerbox .listbox ul li a {
  padding: 5px;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
}

footer .copyright {
  text-align: center;
  font-family: "Yuji Syuku", serif;
  font-weight: 600;
  font-size: 14px;
  letter-spacing: 0.1em;
  padding: 5px 2.5%;
  color: #fff;
  background-color: #ff000d;
}

@media (max-width: 1200px) {
  .submidh2 .jp_text {
    font-size: 42px;
  }

  #mashiki03 .innerbox ul li .textbox h3 .jp_text {
    font-size: 30px;
  }

  #mashiki06 .innerbox .textbox .submidh2 {
    margin: 0 auto 20px;
  }

  #mashiki06 .innerbox .textbox .tel_link {
    margin: 20px auto 0;
  }
}

@media (max-width: 1024px) {
  body {
    font-size: 13px;
    background-size: 100% auto;
    background-repeat: repeat;
    background-attachment: inherit;
  }

  main {
    margin: 39px 0 0;
  }

  #header {
    padding: 8px 0;
  }

  #header .innerbox .logobox {
    height: 24px;
  }

  #header .innerbox .logobox a {
    font-size: 15px;
  }

  #header .innerbox .logobox a img {
    width: 24px;
    margin: 0 8px 0 0;
  }

  #header .innerbox .logobox a strong {
    font-size: 110%;
    margin: 0 4px 0 0;
  }

  #header .innerbox .menu-icon {
    display: block;
    top: 0px;
    right: 0px;
    width: 40px;
    height: 40px;
    position: fixed;
    z-index: 10;
    background: #e50012;
  }

  header .menu-icon>span {
    display: block;
    top: 50%;
    left: 50%;
    background: #fff;
    position: absolute;
    transition: all 0.4s ease;
    width: 20px;
    height: 1px;
  }

  header .menu-icon>span:nth-child(1) {
    -webkit-transform: translate(-50%, calc(-50% - 6px));
    -ms-transform: translate(-50%, calc(-50% - 6px));
    transform: translate(-50%, calc(-50% - 6px));
  }

  header .menu-icon>span:nth-child(2) {
    -webkit-transform: translate(-50%, calc(-50% + 0px));
    -ms-transform: translate(-50%, calc(-50% + 0px));
    transform: translate(-50%, calc(-50% + 0px));
  }

  header .menu-icon>span:nth-child(3) {
    -webkit-transform: translate(-50%, calc(-50% + 6px));
    -ms-transform: translate(-50%, calc(-50% + 6px));
    transform: translate(-50%, calc(-50% + 6px));
  }

  header .menu-icon.js-active>span:nth-child(1) {
    -webkit-transform: translate(-50%, calc(-50% - 0px)) rotate(45deg);
    -ms-transform: translate(-50%, calc(-50% - 0px)) rotate(45deg);
    transform: translate(-50%, calc(-50% - 0px)) rotate(45deg);
  }

  header .menu-icon.js-active>span:nth-child(2) {
    opacity: 0;
  }

  header .menu-icon.js-active>span:nth-child(3) {
    -webkit-transform: translate(-50%, calc(-50% + 0px)) rotate(-45deg);
    -ms-transform: translate(-50%, calc(-50% + 0px)) rotate(-45deg);
    transform: translate(-50%, calc(-50% + 0px)) rotate(-45deg);
  }

  #header .innerbox .header-navigation {
    display: none;
    position: absolute;
    top: 40px;
    left: 0;
    height: calc(100vh - 40px);
    overflow-y: auto;
    width: 100%;
    z-index: 3;
    background-color: #e50012;
    opacity: 0;
    transition: all 0.4s ease;
  }

  #header .innerbox .header-navigation.js-active {
    display: block;
    opacity: 1;
  }

  #header .innerbox .header-navigation ul {
    display: block;
  }

  #header .innerbox .header-navigation ul li {
    border-bottom: 1px solid #fff;
  }

  #header .innerbox .header-navigation ul li a {
    display: block;
    color: #fff;
    padding: 12px 0;
    font-size: 15px;
    letter-spacing: 1px;
  }

  .top_section {
    position: relative;
    padding: 40px 0;
  }

  .midh2::before {
    width: 80px;
    height: 80px;
  }

  .midh2 .jp_text {
    font-size: 24px;
    margin: 0 auto 5px;
  }

  .midh2 .en_text {
    font-size: 16px;
  }

  #top_fv {
    height: 58vw;
  }

  #top_fv .swiper-slide p {}

  #top_fv .swiper-slide img {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0%, 0%);
    -ms-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  #top_greeting .innerbox .midh2 {
    text-align: center;
    padding: 15px 0;
  }

  #top_greeting .innerbox .midh2::before {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  #top_greeting .innerbox h3 {
    font-size: 18px;
  }

  #top_greeting .innerbox .phobox {
    width: 100%;
    padding: 30%;
  }

  #top_greeting .innerbox .textbox {
    width: 100%;
    padding: 20px 0 0;
  }

  #top_about .innerbox ul li p {
    font-size: 1em;
  }

  #top_topic .innerbox ul li {
    width: 100%;
  }

  #top_topic .innerbox ul li:not(:last-child) {
    margin: 0 auto 15px;
  }

  #top_topic .innerbox ul li:last-child {
    margin: 0 auto;
  }

  #top_topic .innerbox ul li .phobox {
    width: 80px;
  }

  #top_topic .innerbox ul li .textbox {
    width: calc(100% - 80px);
    padding: 0 0 0 10px;
  }

  #top_topic .innerbox ul li .textbox h3 {
    font-size: 16px;
    margin: 0 auto;
  }

  #top_topic .innerbox ul li .textbox p {
    display: none;
  }

  #top_youtube .innerbox ul li {
    width: 49%;
    padding: 26% 0 0;
  }

  #top_youtube .innerbox ul li:nth-child(odd) {
    margin: 2% 1% 0 0;
  }

  #top_youtube .innerbox ul li:nth-child(even) {
    margin: 2% 0 0 1%;
  }

  #top_youtube .innerbox ul li:nth-child(1),
  #top_youtube .innerbox ul li:nth-child(2) {
    margin-top: 0;
  }

  #top_youtube .innerbox .instagram {
    margin: 20px auto 0;
    width: 90%;
  }

  #top_youtube .innerbox .instagram a {
    flex-wrap: wrap;
    gap: 10px;
    padding: 10px;
  }

  #top_youtube .innerbox .instagram p.txt {
    font-size: clamp(10px, 3.4663vw, 18px);
  }

  #top_youtube .innerbox .instagram p.txt .sp {
    display: none;
  }

  #top_youtube .innerbox .instagram .icon_area {
    gap: 5px;
  }

  #top_youtube .innerbox .instagram .icon_area .img img {
    max-width: 50px;
    max-height: 50px;
    width: 8vw;
    height: 8vw;
  }

  #top_youtube .innerbox .instagram .icon_area p {
    font-size: 16px;
  }

  #top_class .innerbox ul li {
    width: 49%;
  }

  #top_class .innerbox ul li:nth-child(odd) {
    margin: 2% 1% 0 0;
  }

  #top_class .innerbox ul li:nth-child(even) {
    margin: 2% 0 0 1%;
  }

  #top_class .innerbox ul li:nth-child(1),
  #top_class .innerbox ul li:nth-child(2) {
    margin-top: 0;
  }

  #top_class .innerbox ul li p {
    font-size: 1em;
  }

  #top_join .innerbox .banner p {
    font-size: 1em;
  }

  .sub_section {
    padding: 80px 0;
  }

  .submidh1 {
    font-size: 20px;
    letter-spacing: 0.05em;
  }

  .submidh2 {
    padding: 60px 0 0;
  }

  .submidh2::before {
    height: 40px;
  }

  .submidh2 .en_text {
    font-size: 12px;
    margin: 0 auto 8px;
  }

  .submidh2 .jp_text {
    font-size: 28px;
  }

  .linkbox a {
    width: 350px;
    margin: 10px auto 0;
    padding: 15px 20px;
  }

  .linkbox a::before {
    width: 26px;
    height: 26px;
  }

  #chito01 {
    padding: 40px 0 40px;
  }

  #chito01 .innerbox h2 {
    margin: 0 auto 50px;
    padding: 80px 0 0;
  }

  #chito01 .innerbox h2 img {
    width: 180px;
    max-width: 100%;
    margin: 0 auto;
  }

  #chito01 .innerbox h2::before {
    height: 50px;
  }

  #chito02 .innerbox .phobox {
    width: 100%;
  }

  #chito02 .innerbox .textbox {
    width: 100%;
    padding: 40px 0 0;
  }

  #chito02 .innerbox .textbox .inbox {
    margin: 0 auto;
  }

  #chito03 .innerbox .phobox {
    margin: 0 auto 30px;
  }

  #chito03 .innerbox .phobox p {
    margin: 5px auto 0;
  }

  #chito04 {
    padding: 80px 0 40px;
  }

  #chito04 .innerbox .textbox {
    margin: 0 auto 50px;
  }

  #chito04 .innerbox .textbox p {
    font-size: 15px;
    line-height: 2.0;
  }

  #chito04 .innerbox .phobox ul {
    margin: 40px auto 0;
  }

  #chito04 .innerbox .phobox ul li {
    width: 49%;
  }

  #chito04 .innerbox .phobox ul li:nth-child(odd) {
    margin: 2% 1% 0 0;
  }

  #chito04 .innerbox .phobox ul li:nth-child(even) {
    margin: 2% 0 0 1%;
  }

  #chito04 .innerbox .phobox ul li:nth-child(1),
  #chito04 .innerbox .phobox ul li:nth-child(2) {
    margin-top: 0;
  }

  #mashiki02 {
    padding: 0 0 80px;
  }

  #mashiki02 .innerbox ul li {
    width: 100%;
  }

  #mashiki02 .innerbox ul li:not(:last-child) {
    margin: 0 auto 8%;
  }

  #mashiki02 .innerbox ul li:last-child {
    margin: 0 auto;
  }

  #mashiki03 .innerbox ul li {
    padding: 40px 0 0;
  }

  #mashiki03 .innerbox ul li .textbox {
    width: 100%;
    margin: 0 auto 30px;
  }

  #mashiki03 .innerbox ul li .textbox h3 .en_text {
    font-size: 14px;
    padding: 5px 30px;
  }

  #mashiki03 .innerbox ul li .textbox h3 .jp_text {
    font-size: 24px;
    margin: 15px auto 0;
  }

  #mashiki03 .innerbox ul li .phobox {
    width: 100%;
  }

  #mashiki03 .innerbox ul li .phobox img {
    margin: 0 auto 15px;
  }

  #mashiki04 .innerbox {
    padding: 0 0 30px;
  }

  #mashiki04 .mapbox iframe {
    height: 50vh;
  }

  #mashiki05 .innerbox .submidh2 .jp_text br {
    display: block;
  }

  #mashiki05 .innerbox .submidh2 .jp_text em {
    display: none;
  }

  #mashiki05 .innerbox .selbox dl {
    padding: 10px 0;
  }

  #mashiki05 .innerbox .selbox dl dt,
  #mashiki05 .innerbox .selbox dl dd {
    padding: 0 5%;
  }

  #mashiki05 .innerbox .selbox dl dt {
    width: 100%;
    margin: 0 auto 5px;
  }

  #mashiki05 .innerbox .selbox dl dd {}

  #mashiki05 .innerbox .selbox dl dd:nth-child(2) {
    width: 100%;
  }

  #mashiki05 .innerbox .selbox dl dd:nth-child(3) {
    width: 100%;
  }

  #mashiki06 .innerbox .textbox {
    width: 100%;
    padding: 0;
    margin: 0 auto 30px;
  }

  #mashiki06 .innerbox .textbox p br.pc {
    display: none;
  }

  #mashiki06 .innerbox .phobox {
    width: 100%;
  }

  #mashiki06 .innerbox .textbox .line_area {
    margin: 20px 0 0;
    padding: 10px 20px;
    max-width: 520px;
    border: 1px solid #464646;
  }

  #mashiki06 .innerbox .textbox .line_area p {
    font-size: clamp(10px, 3.4663vw, 18px);
  }

  #mashiki06 .innerbox .textbox .line_area img {
    width: 21.336vw;
    max-width: 130px;
    height: 21.336vw;
    max-height: 130px;
  }

  footer {
    padding: 40px 0 0;
  }

  footer .innerbox {
    margin: 0 auto 40px
  }

  footer .innerbox .textbox {
    width: 100%;
    margin: 0 auto 30px;
  }

  footer .innerbox .listbox {
    width: 100%;
  }

  footer .innerbox .listbox ul li {
    width: 50%;
  }

  footer .innerbox .listbox ul li a {
    display: block;
    padding: 4px;
  }

  footer .copyright {
    font-size: 12px;
    letter-spacing: 0.05em;
  }
}