@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tfoot, thead, th, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}

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

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

a {
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  color: #333;
  border: 0;
  background: transparent;
  text-decoration: none;
}

ins {
  text-decoration: none;
  color: #000;
  background-color: #ff9;
}

mark {
  font-weight: bold;
  font-style: italic;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

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

hr {
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}

input, select {
  vertical-align: middle;
}

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

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

* {
  box-sizing: border-box;
  word-break: break-all;
}

html {
  font-size: 62.5%;
}

body {
  background: #fff;
  line-height: 1;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #333;
  -webkit-text-size-adjust: 100%;
}

main {
  padding-top: 160px;
}
@media screen and (max-width: 1024px) {
  main {
    padding-top: 60px;
  }
}

section {
  padding: 55px 0;
  overflow: hidden;
}
section .inner {
  overflow: hidden;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 20px;
}
section h3 {
  margin-bottom: 1em;
}
section h4 {
  margin-bottom: 1em;
}
section figure {
  width: 100%;
  margin: 0 auto 1.5em;
  text-align: center;
}
section figure img {
  max-width: 100%;
  margin: 0 auto;
}
section figure:last-child {
  margin-bottom: 0;
}
section p {
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 1.5em;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  section p {
    font-size: 14px;
  }
}
section p:last-child {
  margin-bottom: 0;
}
section p.name {
  text-align: right;
}
section ul,
section ol {
  margin-bottom: 1.5em;
}
section ul:last-child,
section ol:last-child {
  margin-bottom: 0;
}
section ul li,
section ol li {
  line-height: 1.5;
  margin-bottom: 1.5em;
}
section ul li:last-child,
section ol li:last-child {
  margin-bottom: 0;
}
section dl dd {
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  section {
    padding: 7% 0;
  }
  section .inner {
    padding: 0 2%;
  }
}
@media screen and (max-width: 767px) {
  section {
    padding: 10% 0;
  }
  section .inner {
    padding: 0 4%;
  }
}

@media screen and (max-width: 480px) {
  .pc_only {
    display: none !important;
  }
  .sp_only {
    display: block !important;
  }
}
@media screen and (min-width: 480px) {
  .sp_only {
    display: none !important;
  }
  .pc_only {
    display: block !important;
  }
}
img {
  max-width: 100%;
  height: auto;
  margin: auto;
}

.t_c {
  text-align: center;
}

.t_1 {
  color: #ea6d8d !important;
  font-weight: bold;
}

.fadeInDown {
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  visibility: visible !important;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
.single #toc_container {
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  margin-bottom: 5px;
}

/******************************************
	リンク

/******************************************/
a {
  color: #333;
  transition: all 0.3s ease;
}
@media screen and (min-width: 1025px) {
  a.alpha {
    transition: all 0.3s ease;
  }
  a.alpha:hover {
    opacity: 0.6;
  }
}
a.arw_1 {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffd500;
  border-radius: 20px;
  width: 226px;
  height: 40px;
  font-size: 18px;
  line-height: 28px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: auto;
  padding: 0 25px 0 0;
  transition: all 0.3s;
}
a.arw_1:hover {
  opacity: 0.6;
}
a.arw_1:hover span::after {
  right: -1.5em;
}
a.arw_1 span {
  position: relative;
  z-index: 0;
}
a.arw_1 span::after {
  content: "≫";
  position: absolute;
  width: 13px;
  height: 100%;
  transition: all 0.3s;
  top: 0;
  bottom: 2px;
  left: 0;
  right: -1.2em;
  margin: auto 0 auto auto;
}
a.arw_2 {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  max-width: 350px;
  width: 100%;
  height: 40px;
  color: #fff;
  font-size: 17px;
  line-height: 28px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: auto 0 auto auto;
  padding: 0;
  transition: all 0.3s;
}
@media screen and (max-width: 991px) {
  a.arw_2 {
    font-size: 18px;
    font-size: 1.8163471241vw;
  }
}
@media screen and (max-width: 575px) {
  a.arw_2 {
    margin: auto;
    font-size: 20px;
    font-size: 3.4782608696vw;
  }
}
a.arw_2:hover {
  opacity: 0.6;
}
a.arw_2:hover span::after {
  right: -1.5em;
}
@media screen and (max-width: 575px) {
  a.arw_2:hover span::after {
    right: -2.2em;
  }
}
a.arw_2 span,
a.arw_2 h4 {
  position: relative;
  z-index: 0;
  font-size: 17px;
  font-weight: normal;
  margin-bottom: 0;
}
@media screen and (max-width: 575px) {
  a.arw_2 span,
  a.arw_2 h4 {
    font-size: 15px;
  }
}
a.arw_2 span::after,
a.arw_2 h4::after {
  content: "≫";
  position: absolute;
  width: 1em;
  height: 100%;
  transition: all 0.3s;
  top: 0;
  bottom: 3px;
  left: 0;
  right: -1.2em;
  margin: auto 0 auto auto;
}
@media screen and (max-width: 575px) {
  a.arw_2 span::after,
  a.arw_2 h4::after {
    right: -1.7em;
  }
}
a.btn_news {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  border: 2px solid #333;
  max-width: 226px;
  width: 100%;
  height: 40px;
  color: #333;
  font-size: 18px;
  line-height: 28px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: auto;
  padding: 0 0 0 0.5em;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  a.btn_news {
    margin: auto;
  }
}
a.btn_news:hover {
  background: #333;
  color: #fff;
}
a.btn_info {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  border: 2px solid #333;
  max-width: 394px;
  width: 80%;
  height: 40px;
  color: #333;
  font-size: 18px;
  line-height: 28px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin: auto;
  padding: 0 0 0 0.5em;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  a.btn_info {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  a.btn_info {
    height: 80px;
    text-align: center;
    font-size: 14px;
  }
}
a.btn_info:hover {
  background: #333;
  color: #fff;
}

/******************************************
	ホバーエフェクト
******************************************/
a.t_link {
  color: #3fa9f5;
  text-decoration: underline;
}
a.t_link:hover {
  text-decoration: none;
}
a .zoom-box {
  display: inline-block;
  overflow: hidden;
}
a .zoom {
  display: block;
  transition-duration: 0.5s;
}
a:hover .zoom {
  transform: scale(1.2);
}

/******************************************
	カラープリセット
******************************************/
.bg_pink {
  background: #ff7f96;
}

.bg_green {
  background: #98d44d;
}

.bg_blue {
  background: #50bbe6;
}

.bg_orange {
  background: #f09400;
}

.bg_brown {
  background: #c49a6d;
}

.bg_purple {
  background: #a77bca;
}

.bg_gold {
  background: #c2a93b;
}

.bg_yellow {
  background: #ffd500;
}

.color_pink {
  color: #ff7f96;
}

.color_green {
  color: #98d44d;
}

.color_blue {
  color: #50bbe6;
}

.color_orange {
  color: #f09400;
}

.color_brown {
  color: #c49a6d;
}

.color_purple {
  color: #a77bca;
}

.color_gold {
  color: #c2a93b;
}

.color_yellow {
  color: #ffd500;
}

/******************************************
	ページタイトル
******************************************/
section.sec_h2, section.sec_h2_2 {
  background-repeat: no-repeat;
  background-position: right top;
  background-size: cover;
  height: 200px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 0;
}
@media screen and (max-width: 991px) {
  section.sec_h2, section.sec_h2_2 {
    height: 18.2vw;
  }
}
@media screen and (max-width: 575px) {
  section.sec_h2, section.sec_h2_2 {
    background-size: 100% auto;
    background-position: center top;
    background-color: #ffe700;
    height: auto;
  }
}
section.sec_h2 .inner, section.sec_h2_2 .inner {
  overflow: visible;
}
section.sec_h2 h2, section.sec_h2_2 h2 {
  color: #333;
  font-size: 40px;
  font-size: 4rem;
  font-family: "M PLUS Rounded 1c", sans-serif;
  line-height: 1;
  text-align: left;
  margin-bottom: 0;
  padding-bottom: 15px;
  max-width: 1140px;
  width: 50%;
  padding: 0;
  margin: auto auto auto 0;
  text-align: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1199px) and (min-width: 992px) {
  section.sec_h2 h2, section.sec_h2_2 h2 {
    font-size: 40px;
    font-size: 3.3361134279vw;
  }
}
@media screen and (max-width: 991px) {
  section.sec_h2 h2, section.sec_h2_2 h2 {
    font-size: 24px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_h2 h2, section.sec_h2_2 h2 {
    width: 100%;
    font-size: 20px;
    font-size: 2rem;
    height: 83.3333333333px;
    margin-top: 30.7vw;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 1em;
  }
}
@media screen and (max-width: 375px) {
  section.sec_h2 h2, section.sec_h2_2 h2 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
section.sec_h2 h2::before, section.sec_h2_2 h2::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_ttl.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 90px;
  height: 12px;
  top: 0;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto auto 0 auto;
  z-index: -1;
}
@media screen and (max-width: 575px) {
  section.sec_h2 h2::before, section.sec_h2_2 h2::before {
    width: 60px;
    height: 8px;
    margin: auto auto auto auto;
  }
}
@media screen and (max-width: 575px) {
  section.sec_h2.sec_h2_1 h2, section.sec_h2_1.sec_h2_2 h2 {
    line-height: 1.3;
  }
  section.sec_h2.sec_h2_1 h2::before, section.sec_h2_1.sec_h2_2 h2::before {
    margin-bottom: 0;
    bottom: 1.4em;
  }
}
section.sec_h2_2 {
  height: 300px;
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 {
    padding-top: 0;
    background-image: none !important;
    background-size: 100% auto;
    background-color: #fff;
    height: auto;
    overflow: hidden;
    position: relative;
    z-index: 0;
  }
  section.sec_h2_2::before {
    content: "";
    position: absolute;
    background: rgba(255, 213, 0, 0.1);
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto auto auto;
    z-index: -1;
  }
  section.sec_h2_2::after {
    content: "";
    position: absolute;
    background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
    width: 100%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto auto auto;
    z-index: -2;
  }
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 .inner {
    padding-top: 43vw;
    background-size: 100% auto;
    background-repeat: no-repeat;
  }
}
section.sec_h2_2 h2 {
  display: block;
  margin-bottom: 15px;
  text-align: left;
}
@media screen and (min-width: 992px) {
  section.sec_h2_2 h2 {
    text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  }
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 h2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_h2_2 h2 {
    margin-top: 0;
    height: auto;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 375px) {
  section.sec_h2_2 h2 {
    font-size: 26px;
    font-size: 6.9333333333vw;
  }
}
section.sec_h2_2 h2::before {
  content: none;
}
section.sec_h2_2 h2 span {
  font-size: 20px;
  display: block;
  margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 h2 span {
    font-size: 16px;
  }
}
section.sec_h2_2 h2 span::before {
  content: "◆";
  margin-right: 0.2em;
}
section.sec_h2_2 p {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 15px;
  word-break: break-all;
}
@media screen and (min-width: 992px) {
  section.sec_h2_2 p {
    height: 72px;
    text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, 0px 1px 0 #fff, -1px 0 #fff, -1px 0 0 #fff, 1px 0 0 #fff;
  }
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 p {
    width: 100%;
    font-size: 14px;
  }
}
section.sec_h2_2 .box {
  margin-top: auto;
  width: -moz-fit-content;
  width: fit-content;
  background: #fff;
  border-radius: 8px;
  border-style: dotted;
  border-width: 2px;
  padding: 15px;
  display: grid;
  gap: 5px 50px;
  grid-template-columns: max-content 1fr;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 .box {
    padding: 10px;
    margin: auto;
  }
}
@media screen and (max-width: 767px) {
  section.sec_h2_2 .box {
    width: 100%;
    grid-template-columns: 1fr;
    gap: 5px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_h2_2 .box {
    flex-direction: column;
  }
}
section.sec_h2_2 .box dl {
  display: flex;
  font-size: 20px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: left;
}
@media screen and (max-width: 1139px) {
  section.sec_h2_2 .box dl {
    font-size: 20px;
    font-size: 1.7559262511vw;
  }
}
@media screen and (max-width: 991px) {
  section.sec_h2_2 .box dl {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  section.sec_h2_2 .box dl {
    width: 100%;
    font-size: 15px;
  }
}
@media screen and (max-width: 375px) {
  section.sec_h2_2 .box dl {
    font-size: 15px;
    font-size: 4vw;
  }
}
section.sec_h2_2 .box dl dt {
  width: 3.2em;
  position: relative;
}
section.sec_h2_2 .box dl dt::after {
  content: "▶︎";
  position: absolute;
  width: 1em;
  height: 1em;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 0 auto auto;
}
section.sec_h2_2 .box dl dd {
  width: calc(100% - 3.2em);
  padding-left: 0.2em;
}
section.sec_h2_2.pink h2 span::before {
  color: #ff7f96;
}
section.sec_h2_2.pink .box {
  border-color: #ff7f96;
}
section.sec_h2_2.pink .box dt::after {
  color: #ff7f96;
}
section.sec_h2_2.green h2 span::before {
  color: #98d44d;
}
section.sec_h2_2.green .box {
  border-color: #98d44d;
}
section.sec_h2_2.green .box dt::after {
  color: #98d44d;
}
section.sec_h2_2.blue h2 span::before {
  color: #50bbe6;
}
section.sec_h2_2.blue .box {
  border-color: #50bbe6;
}
section.sec_h2_2.blue .box dt::after {
  color: #50bbe6;
}
section.sec_h2_2.orange h2 span::before {
  color: #f09400;
}
section.sec_h2_2.orange .box {
  border-color: #f09400;
}
section.sec_h2_2.orange .box dt::after {
  color: #f09400;
}
section.sec_h2_2.brown h2 span::before {
  color: #c49a6d;
}
section.sec_h2_2.brown .box {
  border-color: #c49a6d;
}
section.sec_h2_2.brown .box dt::after {
  color: #c49a6d;
}
section.sec_h2_2.purple h2 span::before {
  color: #a77bca;
}
section.sec_h2_2.purple .box {
  border-color: #a77bca;
}
section.sec_h2_2.purple .box dt::after {
  color: #a77bca;
}
section.sec_h2_2.gold h2 span::before {
  color: #c2a93b;
}
section.sec_h2_2.gold .box {
  border-color: #c2a93b;
}
section.sec_h2_2.gold .box dt::after {
  color: #c2a93b;
}

/******************************************
	セクションタイトル
******************************************/
section h3 {
  font-size: 34px;
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  text-align: left;
}
@media screen and (max-width: 991px) {
  section h3 {
    font-size: 22px;
    line-height: 1.5;
    text-align: center;
  }
}
section .h3_1 {
  background: #ffea00;
  border-radius: 15px 15px 0 0;
  text-align: center;
  padding-top: 1em;
}
section .h3_1 h3,
section .h3_1 .h3_1_title {
  font-size: 34px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section .h3_1 h3,
  section .h3_1 .h3_1_title {
    font-size: 22px;
  }
}
section .h3_1 h3 span,
section .h3_1 .h3_1_title span {
  display: block;
  background: #333;
  font-size: 16px;
  line-height: 28px;
  color: #fff;
  font-weight: 400;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
section .h3_1 .h3_1_title {
  margin-bottom: 1em;
}
section .h3_1 h4,
section .h3_1 .h3_1_text {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  section .h3_1 h4,
  section .h3_1 .h3_1_text {
    font-size: 12px;
  }
}
section .h3_2 {
  background: #fff079;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 132px;
  margin-top: -55px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  section .h3_2 {
    margin-top: -7%;
  }
}
@media screen and (max-width: 991px) {
  section .h3_2 {
    height: 70px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  section .h3_2 {
    margin-top: -10%;
  }
}
section .h3_2 h3 {
  font-size: 34px;
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #333;
  font-weight: 700;
  text-align: center;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 0.3em;
  margin-bottom: 0;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  section .h3_2 h3 {
    font-size: 20px;
    padding-bottom: 0.5em;
  }
}
@media screen and (max-width: 375px) {
  section .h3_2 h3 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
section .h3_2 h3::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_ttl.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 90px;
  height: 12px;
  top: 2em;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  section .h3_2 h3::before {
    width: 60px;
    height: 8px;
    top: 1.6em;
  }
}
@media screen and (max-width: 991px) {
  section .h3_2.h3_2_1 {
    height: 90px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  section .h3_2.h3_2_1 h3 {
    line-height: 1.3;
    padding-bottom: 0.7em;
  }
  section .h3_2.h3_2_1 h3::before {
    top: 3em;
  }
}
section h4 {
  font-family: "M PLUS Rounded 1c", sans-serif;
}
section h4.h4_2 {
  font-size: 30px;
  line-height: 1.5;
  text-align: center;
  background: #ffe700;
  padding: 0.5em 1em;
}
@media screen and (max-width: 991px) {
  section h4.h4_2 {
    margin: 0 0 30px;
    font-size: 18px;
  }
}

/******************************************
	セクション背景
******************************************/
section.bg_1 {
  background: rgba(255, 213, 0, 0.1);
  position: relative;
  z-index: 0;
}
section.bg_1::before {
  content: "";
  position: absolute;
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
section.bg_1_1 {
  margin-bottom: 0 !important;
  background: rgba(255, 213, 0, 0.1);
  position: relative;
  z-index: 0;
}
section.bg_1_1::before {
  content: "";
  position: absolute;
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
section .block-white {
  background: #fff;
}
section .block-white .inner {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  section .block-white .inner {
    padding-top: 3%;
    padding-bottom: 3%;
  }
}
@media screen and (max-width: 767px) {
  section .block-white .inner {
    padding-top: 7%;
    padding-bottom: 7%;
  }
}
section .block-gray {
  background: #ececec;
}
section .block-gray .inner {
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  section .block-gray .inner {
    padding-top: 3%;
    padding-bottom: 3%;
  }
}
@media screen and (max-width: 767px) {
  section .block-gray .inner {
    padding-top: 7%;
    padding-bottom: 7%;
  }
}

/******************************************
	共通セクション
******************************************/
section.info_compile {
  background: #ffd500;
}
section.info_compile .box-wrap {
  background: #fff;
  padding: 40px 20px;
}
@media screen and (max-width: 767px) {
  section.info_compile .box-wrap {
    padding: 40px 10px;
  }
}
section.info_compile .box-wrap .box-inner {
  max-width: 900px;
  width: 100%;
  margin: auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  section.info_compile .box-wrap .box-inner {
    flex-direction: column;
  }
}
section.info_compile .box-wrap .box {
  max-width: 404px;
  width: 100%;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) and (min-width: 576px) {
  section.info_compile .box-wrap .box {
    max-width: 100%;
  }
  section.info_compile .box-wrap .box figure {
    width: 200px !important;
  }
  section.info_compile .box-wrap .box .box-contents {
    width: calc(100% - 200px - 20px) !important;
  }
}
section.info_compile .box-wrap .box a {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
section.info_compile .box-wrap .box a:hover {
  opacity: 0.6;
}
section.info_compile .box-wrap .box figure {
  width: 48%;
  height: 128px;
  margin: 0;
  overflow: hidden;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  section.info_compile .box-wrap .box figure {
    width: 30%;
  }
}
@media screen and (max-width: 767px) {
  section.info_compile .box-wrap .box figure {
    height: 28vw;
  }
}
section.info_compile .box-wrap .box figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
section.info_compile .box-wrap .box .box-contents {
  width: 48%;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  section.info_compile .box-wrap .box .box-contents {
    width: 68%;
  }
}
section.info_compile .box-wrap .box .box-contents p {
  word-break: break-all;
  font-size: 16px;
  line-height: 24px;
}
section.info_compile .box-wrap .box .box-contents p.date {
  font-size: 14px;
  margin-bottom: 0.5em;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  section.info_compile .box-wrap .box .box-contents p.date {
    flex-direction: column;
    align-items: flex-start;
  }
}
section.info_compile .box-wrap .box .box-contents p.date .cat {
  width: 106px;
  height: 26px;
  color: #fff;
  border-radius: 5px;
  font-size: 14px;
  vertical-align: middle;
  padding: 3px 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
}
@media screen and (max-width: 991px) {
  section.info_compile .box-wrap .box .box-contents p.date .cat {
    margin-top: 0;
    font-size: 12px;
    padding: 0.1em;
  }
}
section.info_compile .box-wrap .box .box-contents p.ttl {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 991px) {
  section.info_compile .box-wrap .box .box-contents p.ttl {
    font-size: 16px;
  }
}
section.info_compile .box-wrap .box .box-contents p small {
  color: #3fa7f3;
  text-decoration: underline;
}
section.info_compile .box-wrap .box .box-contents .ttlh4 {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 991px) {
  section.info_compile .box-wrap .box .box-contents .ttlh4 {
    font-size: 16px;
  }
}
section.sec_voice {
  background: #ffd500;
}
section.sec_voice h3 {
  text-align: center;
}
section.sec_voice .box {
  max-width: 900px;
  width: 100%;
  margin: auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
  background: #fff;
}
@media screen and (max-width: 767px) {
  section.sec_voice .box {
    flex-direction: column;
    padding: 20px;
  }
}
section.sec_voice .box figure {
  width: 346px;
  margin: 0 0 -3px;
}
@media screen and (max-width: 767px) {
  section.sec_voice .box figure {
    width: 100%;
    margin-bottom: 1em;
  }
}
section.sec_voice .box .box-inner {
  width: calc(100% - 346px);
  padding: 20px 20px;
}
@media screen and (max-width: 767px) {
  section.sec_voice .box .box-inner {
    width: 100%;
    padding: 0;
  }
}
section.sec_voice p {
  font-size: 23px;
  line-height: 33px;
  font-weight: bold;
}
@media screen and (max-width: 991px) {
  section.sec_voice p {
    font-size: 18px;
  }
}
section.each_school {
  background: #ececec;
}
section.each_school h3 {
  text-align: center;
}
section.each_school .box-wrap {
  display: grid;
  gap: 40px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 991px) {
  section.each_school .box-wrap {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  section.each_school .box-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
section.each_school .box-wrap .box {
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  background: #fff;
}
section.each_school .box-wrap .box a {
  transition: all 0.3s ease;
}
section.each_school .box-wrap .box a:hover {
  opacity: 0.6;
}
section.each_school .box-wrap .box figure {
  border-radius: 8px 8px 0 0;
  margin-bottom: -2px;
}
section.each_school .box-wrap .box figure img {
  width: 100%;
}
section.each_school .box-wrap .box h4 {
  text-align: center;
  font-size: 18px;
  line-height: 28px;
  margin-bottom: 0;
  padding: 15px 0;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  section.each_school .box-wrap .box h4 {
    font-size: 16px;
  }
}
section.each_school .box-wrap .box h4::before {
  content: "";
  position: absolute;
  background-image: url("../images/top/room_af.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 20px;
  height: 21px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto 0 0 auto;
  z-index: -1;
}
section.course_sec_1 ul {
  background: #fff;
  border-radius: 8px;
  max-width: 1000px;
  margin: auto;
  padding: 40px;
  display: grid;
  gap: 40px 100px;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  section.course_sec_1 ul {
    padding: 20px;
    gap: 30px;
    grid-template-columns: repeat(1, 1fr);
  }
}
section.course_sec_1 ul li {
  font-size: 22px;
  margin-bottom: 0;
  padding-left: 95px;
  min-height: 74px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1139px) and (min-width: 992px) {
  section.course_sec_1 ul li {
    font-size: 22px;
    font-size: 1.9315188762vw;
  }
}
@media screen and (max-width: 991px) and (min-width: 576px) {
  section.course_sec_1 ul li {
    font-size: 16px;
    font-size: 1.614530777vw;
  }
}
@media screen and (max-width: 991px) {
  section.course_sec_1 ul li {
    font-size: 16px;
    font-weight: 700;
    font-family: "M PLUS Rounded 1c", sans-serif;
    padding-left: 60px;
    min-height: 50px;
  }
}
@media screen and (max-width: 375px) {
  section.course_sec_1 ul li {
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}
section.course_sec_1 ul li::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 42px 48px;
  background-position: center;
  width: 74px;
  height: 74px;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  section.course_sec_1 ul li::before {
    background-size: 28px 32px;
    width: 49.3333333333px;
    height: 49.3333333333px;
  }
}
section.course_sec_1 ul li:first-child::before {
  background-image: url("../images/course/point_1.png");
}
section.course_sec_1 ul li:nth-child(2)::before {
  background-image: url("../images/course/point_2.png");
}
section.course_sec_1 ul li:nth-child(3)::before {
  background-image: url("../images/course/point_3.png");
}
section.course_sec_1 ul li:nth-child(4)::before {
  background-image: url("../images/course/point_4.png");
}
section.course_sec_1 ul.pink li::before {
  background-color: #ff7f96;
}
section.course_sec_1 ul.green li::before {
  background-color: #98d44d;
}
section.course_sec_1 ul.blue li::before {
  background-color: #50bbe6;
}
section.course_sec_1 ul.orange li::before {
  background-color: #f09400;
}
section.course_sec_1 ul.brown li::before {
  background-color: #c49a6d;
}
section.course_sec_1 ul.purple li::before {
  background-color: #a77bca;
}
section.course_sec_1 ul.gold li::before {
  background-color: #c2a93b;
}
section.course_sec_2 h4 {
  font-size: 34px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 h4 {
    font-size: 16px;
  }
}
section.course_sec_2 p {
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  max-width: 900px;
  margin: auto auto 40px auto;
  padding: 10px 20px 10px 4.5em;
  border: 6px solid #fff079;
  background: #fff;
  border-radius: 8px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 p {
    font-size: 14px;
    margin-bottom: 20px;
    padding-left: 5em;
  }
}
@media screen and (max-width: 767px) {
  section.course_sec_2 p {
    background: #fff079;
    padding: 10px 0px 10px 4.5em;
  }
}
@media screen and (max-width: 375px) {
  section.course_sec_2 p {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
@media screen and (max-width: 350px) {
  section.course_sec_2 p {
    font-size: 12px;
    font-size: 3.4285714286vw;
  }
}
section.course_sec_2 p::before {
  content: "テーマ";
  position: absolute;
  width: 85px;
  height: 1em;
  font-size: 20px;
  font-weight: normal;
  top: 0;
  bottom: 0;
  left: 10px;
  right: 0;
  margin: auto auto auto 0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #fff;
  padding: 7px 5px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 p::before {
    font-size: 14px;
    width: 3em;
  }
}
@media screen and (max-width: 767px) {
  section.course_sec_2 p::before {
    position: absolute;
    width: 3em;
    height: 1em;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto auto auto 0;
  }
}
@media screen and (max-width: 375px) {
  section.course_sec_2 p::before {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
section.course_sec_2 p.pink::before {
  background-color: #ff7f96;
}
section.course_sec_2 p.green::before {
  background-color: #98d44d;
}
section.course_sec_2 p.blue::before {
  background-color: #50bbe6;
}
section.course_sec_2 p.orange::before {
  background-color: #f09400;
}
section.course_sec_2 p.brown::before {
  background-color: #c49a6d;
}
section.course_sec_2 p.purple::before {
  background-color: #a77bca;
}
section.course_sec_2 p.gold::before {
  background-color: #c2a93b;
}
section.course_sec_2 .box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  max-width: 900px;
  margin: auto;
}
section.course_sec_2 .box ul {
  width: calc(69.7777777778% - 50px);
  display: grid;
  gap: 45px;
  grid-template-columns: repeat(1, 1fr);
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 .box ul {
    gap: 25px;
  }
}
@media screen and (max-width: 767px) {
  section.course_sec_2 .box ul {
    width: 100%;
  }
}
section.course_sec_2 .box ul li {
  font-size: 28px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  background: #fff;
  border-radius: 8px;
  min-height: 92px;
  margin-left: 30px;
  margin-bottom: 0;
  padding-left: 50px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 .box ul li {
    font-size: 16px;
    margin-left: 21px;
    padding-left: 2em;
    min-height: 60px;
  }
}
section.course_sec_2 .box ul li::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 64px;
  height: 64px;
  top: 0;
  bottom: 0;
  left: -30px;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 .box ul li::before {
    width: 42.6666666667px;
    height: 42.6666666667px;
    left: -21px;
  }
}
section.course_sec_2 .box ul li::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 24px 22px 0 22px;
  top: 0;
  bottom: -35px;
  left: 0;
  right: 0;
  margin: auto auto 0 auto;
}
@media screen and (max-width: 991px) {
  section.course_sec_2 .box ul li::after {
    border-width: 16px 14.6666666667px 0 14.6666666667px;
    bottom: -22px;
  }
}
section.course_sec_2 .box ul li:first-child::before {
  background-image: url("../images/course/ico_n1.png");
}
section.course_sec_2 .box ul li:nth-child(2)::before {
  background-image: url("../images/course/ico_n2.png");
}
section.course_sec_2 .box ul li:nth-child(3)::before {
  background-image: url("../images/course/ico_n3.png");
}
section.course_sec_2 .box ul li:nth-child(3)::before {
  background-image: url("../images/course/ico_n3.png");
}
section.course_sec_2 .box ul li:nth-child(4)::before {
  background-image: url("../images/course/ico_n4.png");
}
section.course_sec_2 .box ul li:nth-child(5)::before {
  background-image: url("../images/course/ico_n5.png");
}
section.course_sec_2 .box ul li:nth-child(5)::after {
  content: none;
}
section.course_sec_2 .box ul.pink li::after {
  border-color: #ff7f96 transparent transparent transparent;
}
section.course_sec_2 .box ul.green li::after {
  border-color: #98d44d transparent transparent transparent;
}
section.course_sec_2 .box ul.blue li::after {
  border-color: #50bbe6 transparent transparent transparent;
}
section.course_sec_2 .box ul.orange li::after {
  border-color: #f09400 transparent transparent transparent;
}
section.course_sec_2 .box ul.brown li::after {
  border-color: #c49a6d transparent transparent transparent;
}
section.course_sec_2 .box ul.purple li::after {
  border-color: #a77bca transparent transparent transparent;
}
section.course_sec_2 .box ul.gold li::after {
  border-color: #c2a93b transparent transparent transparent;
}
section.course_sec_2 .box figure {
  width: 30.2222222222%;
  margin: auto 0 0 auto;
}
@media screen and (max-width: 767px) {
  section.course_sec_2 .box figure {
    display: none;
  }
}
section.course_sec_3 .inner {
  max-width: 680px;
}
section.course_sec_3 p {
  font-size: 20px;
}
@media screen and (max-width: 991px) {
  section.course_sec_3 p {
    font-size: 14px;
  }
}
section.course_sec_4 dl {
  max-width: 400px;
  margin: auto auto 30px;
  font-size: 20px;
  border: 3px solid #fff279;
  border-radius: 8px;
  display: flex;
  flex-flow: row wrap;
}
@media screen and (max-width: 991px) {
  section.course_sec_4 dl {
    font-size: 16px;
    margin-bottom: 20px;
  }
}
section.course_sec_4 dl dt,
section.course_sec_4 dl dd {
  padding: 15px;
  border-top: 3px solid #fff279;
}
section.course_sec_4 dl dt:first-of-type,
section.course_sec_4 dl dd:first-of-type {
  border-top: none;
}
section.course_sec_4 dl dt {
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  background: #fff9c6;
  width: 30%;
}
section.course_sec_4 dl dd {
  background: #fff;
  width: 70%;
}
section.course_sec_4 p {
  font-size: 18px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section.course_sec_4 p {
    font-size: 14px;
  }
}
section.faq .inner {
  max-width: 1040px;
}
section.faq dl {
  background: #fff;
  border-radius: 8px;
  padding: 15px 25px;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  section.faq dl {
    padding: 10px;
  }
}
section.faq dl:last-child {
  margin-bottom: 0;
}
section.faq dl.toggle dt {
  padding-right: 45px;
  cursor: pointer;
}
section.faq dl.toggle dt::after {
  content: "";
  position: absolute;
  background-image: url("../images/common/arw_2.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 24px;
  height: 24px;
  top: 2px;
  bottom: 0;
  left: 0;
  right: 5px;
  margin: 0 0 auto auto;
  z-index: -1;
  transition: all 0.3s ease;
}
section.faq dl.toggle dt.open::after {
  transform: rotateZ(180deg);
}
section.faq dl.toggle dd {
  display: none;
}
section.faq dl dt {
  padding-left: 45px;
  padding-top: 3px;
  font-weight: bold;
  transition: all 0.3s ease;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  section.faq dl dt {
    padding-top: 0.2em;
  }
}
section.faq dl dt::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_q_2@2x.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 28px;
  height: 28px;
  top: 0;
  bottom: 0;
  left: 5px;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -1;
}
section.faq dl dd {
  border-top: 2px dotted #c6c6c6;
  margin-top: 10px;
  padding-left: 45px;
  padding-top: 12px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  section.faq dl dd {
    padding-top: 11px;
  }
}
section.faq dl dd::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_a_2@2x.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 28px;
  height: 28px;
  top: 10px;
  bottom: 0;
  left: 5px;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -1;
}
section.faq dl dd span {
  font-weight: bold;
  color: #bb272d;
}
section.faq dl dd p {
  font-size: 16px;
}
@media screen and (max-width: 991px) {
  section.faq dl dd p {
    font-size: 16px;
  }
}
section.faq ul li {
  font-size: 16px;
  margin-bottom: 0;
  padding-left: 1em;
  word-break: break-all;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  section.faq ul li {
    font-size: 14px;
    margin-bottom: 0.5em;
  }
}
section.faq ul li::before {
  content: "＊";
  position: absolute;
  width: 1em;
  height: 1em;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto auto 0;
}

/******************************************
	テンプレートパーツ
******************************************/
section.sec_survey {
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  section.sec_survey h3 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
section.sec_survey p.p_1 {
  font-size: 24px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section.sec_survey p.p_1 {
    font-size: 15px;
  }
}
section.sec_survey h5 {
  font-size: 30px;
  line-height: 1;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 1em;
  text-align: center;
}
@media screen and (max-width: 991px) {
  section.sec_survey h5 {
    font-size: 18px;
  }
}
section.sec_survey h5::before {
  content: "";
  display: inline-block;
  background-image: url("../images/common/ico_q.png");
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  width: 41px;
  height: 40px;
  padding-right: 10px;
}
@media screen and (max-width: 991px) {
  section.sec_survey h5::before {
    width: 27.3333333333px;
    height: 26.6666666667px;
    padding-right: 5px;
  }
}
section.sec_survey .box-wrap {
  margin-bottom: 50px;
}
section.sec_survey .box-wrap:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  section.sec_survey .box-wrap {
    margin-bottom: 30px;
  }
}
section.sec_survey .box-wrap .box {
  max-width: 1000px;
  padding: 10px 20px 20px;
  background: #fff;
  border-radius: 8px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 767px) {
  section.sec_survey .box-wrap .box {
    padding: 10px;
  }
}
section.sec_survey .box-wrap .box:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  section.sec_survey .box-wrap .box figure {
    margin-bottom: 0;
  }
}
section.sec_survey .box-wrap .box .box-inner {
  background: #fff1f3;
  border-radius: 8px;
  padding: 1em;
}
section.sec_survey .box-wrap .box .box-inner dl dt {
  font-size: 18px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 0.5em;
}
section.sec_survey .box-wrap .box .box-inner dl dd {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  section.sec_survey .box-wrap .box .box-inner dl dd {
    font-size: 14px;
  }
}
section.sec_course {
  background: #ebebeb;
}
section.sec_course .inner {
  background: url("../images/top/top_sec1_img_af.png") no-repeat right 30px bottom;
}
@media screen and (max-width: 767px) {
  section.sec_course .inner {
    background: none;
  }
}
section.sec_course .box-wrap {
  display: grid;
  grid-gap: 35px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 1024px) {
  section.sec_course .box-wrap {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 767px) {
  section.sec_course .box-wrap {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 15px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap {
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 15px;
  }
}
section.sec_course .box-wrap .box {
  max-width: 248px;
  width: 100%;
  background: #fff;
  border-radius: 10px;
  border-style: solid;
  border-width: 3px;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  section.sec_course .box-wrap .box {
    max-width: 100%;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box {
    margin: auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
}
section.sec_course .box-wrap .box:first-child {
  border-color: #ff7f96;
}
section.sec_course .box-wrap .box:first-child h5,
section.sec_course .box-wrap .box:first-child .box_h3 {
  background: #ff7f96;
}
section.sec_course .box-wrap .box:first-child a::before {
  background-color: #ff7f96;
}
section.sec_course .box-wrap .box:nth-child(2) {
  border-color: #98d44d;
}
section.sec_course .box-wrap .box:nth-child(2) h5,
section.sec_course .box-wrap .box:nth-child(2) .box_h3 {
  background: #98d44d;
}
section.sec_course .box-wrap .box:nth-child(2) a::before {
  background-color: #98d44d;
}
section.sec_course .box-wrap .box:nth-child(3) {
  border-color: #50bbe6;
}
section.sec_course .box-wrap .box:nth-child(3) h5,
section.sec_course .box-wrap .box:nth-child(3) .box_h3 {
  background: #50bbe6;
}
section.sec_course .box-wrap .box:nth-child(3) a::before {
  background-color: #50bbe6;
}
section.sec_course .box-wrap .box:nth-child(4) {
  border-color: #f09400;
}
section.sec_course .box-wrap .box:nth-child(4) h5,
section.sec_course .box-wrap .box:nth-child(4) .box_h3 {
  background: #f09400;
}
section.sec_course .box-wrap .box:nth-child(4) a::before {
  background-color: #f09400;
}
section.sec_course .box-wrap .box:nth-child(5) {
  border-color: #c49a6d;
}
section.sec_course .box-wrap .box:nth-child(5) h5,
section.sec_course .box-wrap .box:nth-child(5) .box_h3 {
  background: #c49a6d;
}
section.sec_course .box-wrap .box:nth-child(5) a::before {
  background-color: #c49a6d;
}
section.sec_course .box-wrap .box:nth-child(6) {
  border-color: #a77bca;
}
section.sec_course .box-wrap .box:nth-child(6) h5,
section.sec_course .box-wrap .box:nth-child(6) .box_h3 {
  background: #a77bca;
}
section.sec_course .box-wrap .box:nth-child(6) a::before {
  background-color: #a77bca;
}
section.sec_course .box-wrap .box:nth-child(7) {
  border-color: #c2a93b;
}
section.sec_course .box-wrap .box:nth-child(7) h5,
section.sec_course .box-wrap .box:nth-child(7) .box_h3 {
  background: #c2a93b;
}
section.sec_course .box-wrap .box:nth-child(7) a::before {
  background-color: #c2a93b;
}
section.sec_course .box-wrap .box figure {
  margin: -4px -3px -3px;
  width: calc(100% + 6px);
}
@media screen and (max-width: 1024px) {
  section.sec_course .box-wrap .box figure img {
    width: 100%;
    object-fit: cover;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box figure {
    width: 35%;
    margin: 0 0 -1px;
    border-radius: 0 0 0 10px;
  }
  section.sec_course .box-wrap .box figure img {
    height: 100%;
    object-fit: cover;
    border-radius: 0 0 0 10px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box figure.pc {
    display: none !important;
  }
}
section.sec_course .box-wrap .box figure.sp {
  display: none;
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box figure.sp {
    display: block !important;
  }
}
section.sec_course .box-wrap .box h5,
section.sec_course .box-wrap .box .box_h3 {
  color: #fff;
  font-size: 16px;
  line-height: 28px;
  font-weight: 700;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  text-align: center;
  padding: 0.5em 0;
  margin: 0 -3px;
}
@media screen and (max-width: 1099px) {
  section.sec_course .box-wrap .box h5,
  section.sec_course .box-wrap .box .box_h3 {
    font-size: 15px;
    font-size: 1.3648771611vw;
  }
}
@media screen and (max-width: 991px) {
  section.sec_course .box-wrap .box h5,
  section.sec_course .box-wrap .box .box_h3 {
    font-size: 14px;
    font-size: 1.4127144299vw;
  }
}
@media screen and (max-width: 991px) {
  section.sec_course .box-wrap .box h5,
  section.sec_course .box-wrap .box .box_h3 {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box h5,
  section.sec_course .box-wrap .box .box_h3 {
    width: calc(100% + 6px);
    margin-top: -3px;
    border-radius: 10px 10px 0 0;
  }
}
section.sec_course .box-wrap .box .box-inner {
  border-style: solid;
  border-width: 3px;
  border-radius: 0 0 10px 10px;
}
section.sec_course .box-wrap .box ul {
  padding: 0.5em 1em 1em;
  margin-bottom: 0;
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box ul {
    width: 65%;
    border-radius: 0 0 0 10px;
  }
}
@media screen and (max-width: 350px) {
  section.sec_course .box-wrap .box ul {
    padding: 0.5em 0.5em 1em;
  }
}
section.sec_course .box-wrap .box ul li {
  font-size: 15px;
  line-height: 33px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  border-bottom: 2px dashed #e4e4e4;
  margin-bottom: 0;
}
@media screen and (max-width: 1140px) {
  section.sec_course .box-wrap .box ul li {
    font-size: 14px;
    font-size: 1.2280701754vw;
  }
}
@media screen and (max-width: 991px) {
  section.sec_course .box-wrap .box ul li {
    font-size: 15px;
    font-size: 1.5136226034vw;
  }
}
@media screen and (max-width: 767px) {
  section.sec_course .box-wrap .box ul li {
    font-size: 14px;
  }
}
@media screen and (max-width: 575px) {
  section.sec_course .box-wrap .box ul li {
    font-size: 12px;
  }
}
@media screen and (max-width: 350px) {
  section.sec_course .box-wrap .box ul li {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
}
section.sec_course .box-wrap .box ul li h4 {
  margin-bottom: 0em;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
section.sec_course .box-wrap .box ul li a {
  display: block;
  transition: all 0.3s;
  position: relative;
  z-index: 0;
}
section.sec_course .box-wrap .box ul li a::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 0 auto auto;
  transition: all 0.3s;
}
section.sec_course .box-wrap .box ul li a::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
  width: 10px;
  height: 10px;
  border: 5px solid transparent;
  border-left: 7px solid #fff;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto 0 auto auto;
  transition: all 0.3s;
}
section.sec_course .box-wrap .box ul li a:hover {
  opacity: 0.6;
}
section.sec_course .box-wrap .box ul li a:hover::before {
  right: -5px;
}
section.sec_course .box-wrap .box ul li a:hover::after {
  right: -5px;
}
section.f_ad {
  background: repeating-linear-gradient(-45deg, #fff, #fff 3px, rgb(253, 245, 212) 3px, rgb(253, 245, 212) 6px);
  padding: 20px 0;
}
section.f_ad .inner {
  margin-bottom: 20px;
}
section.f_ad .inner:last-child {
  margin-bottom: 0;
}
section.f_ad .inner a {
  display: inline-block;
}
section.f_ad .inner a img {
  max-width: 780px;
  width: 100%;
}
section.f_bnr {
  background: #ededed;
  padding: 20px 0;
}
@media screen and (max-width: 991px) {
  section.f_bnr {
    padding: 3% 0;
  }
}
@media screen and (max-width: 767px) {
  section.f_bnr {
    padding: 5% 0;
  }
}
section.f_bnr .inner {
  max-width: 810px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  section.f_bnr .inner {
    flex-direction: column;
    justify-content: center;
  }
}
section.f_bnr .inner figure {
  margin: 0;
  width: auto;
}
@media screen and (max-width: 767px) {
  section.f_bnr .inner figure {
    width: 100%;
  }
}

/******************************************
	共通パーツ
******************************************/
.box-l {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box-l figure {
  width: 49%;
  margin-bottom: 0;
}
.box-l figure img {
  margin-left: 0;
}
.box-l .box-contents {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .box-l figure {
    width: 80%;
    margin-bottom: 1em;
  }
  .box-l figure img {
    margin: auto !important;
  }
  .box-l .box-contents {
    width: 100%;
  }
}

.box-r {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
}
.box-r figure {
  width: 49%;
  margin-bottom: 0;
}
.box-r figure img {
  margin-right: 0;
}
.box-r .box-contents {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .box-r figure {
    width: 80%;
    margin-bottom: 1em;
  }
  .box-r figure img {
    margin: auto !important;
  }
  .box-r .box-contents {
    width: 100%;
  }
}

.box-repeat_l .items {
  margin-top: 3em;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box-repeat_l .items:first-child {
  margin-top: 0;
}
.box-repeat_l .items figure {
  width: 49%;
  margin-bottom: 0;
}
.box-repeat_l .items .box-contents {
  width: 49%;
}
.box-repeat_l .items:nth-of-type(even) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .box-repeat_l .items {
    margin-top: 2em;
  }
  .box-repeat_l .items figure {
    width: 80%;
    margin-bottom: 1em;
  }
  .box-repeat_l .items .box-contents {
    width: 100%;
  }
}

.box-repeat_r .items {
  margin-top: 3em;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box-repeat_r .items:first-child {
  margin-top: 0;
}
.box-repeat_r .items figure {
  width: 49%;
  margin-bottom: 0;
}
.box-repeat_r .items .box-text {
  width: 49%;
}
.box-repeat_r .items:nth-of-type(odd) {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .box-repeat_r .items {
    margin-top: 2em;
  }
  .box-repeat_r .items figure {
    width: 80%;
    margin-bottom: 1em;
  }
  .box-repeat_r .items .box-text {
    width: 100%;
  }
}

.box-triple {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  justify-content: flex-start;
  margin-left: 1%;
}
.box-triple .items,
.box-triple li {
  width: 31%;
  margin-top: 3em;
  margin-bottom: 0;
  margin-right: 3%;
}
.box-triple .items:nth-of-type(3n),
.box-triple li:nth-of-type(3n) {
  margin-right: 0;
}
.box-triple .items:nth-child(-n+3),
.box-triple li:nth-child(-n+3) {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .box-triple {
    margin-left: 0;
  }
  .box-triple .items,
  .box-triple li {
    width: 100%;
    margin-top: 2em;
    margin-right: 0;
  }
  .box-triple .items:nth-child(-n+3),
  .box-triple li:nth-child(-n+3) {
    margin-top: 2em;
  }
  .box-triple .items:first-child,
  .box-triple li:first-child {
    margin-top: 0;
  }
}

.box-column-3 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box-column-3::after {
  content: "";
  display: block;
  width: 32%;
  height: 0;
}
.box-column-3 .items {
  width: 32%;
  padding: 16px;
  box-sizing: border-box;
}

.box-column-4 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.box-column-4::before {
  content: "";
  display: block;
  width: 24%;
  height: 0;
  order: 1;
}
.box-column-4::after {
  content: "";
  display: block;
  width: 24%;
  height: 0;
}
.box-column-4 .items {
  width: 24%;
  padding: 16px;
  box-sizing: border-box;
}

.text-center {
  display: block;
  text-align: center;
}
.text-center p {
  display: inline-block;
  text-align: left;
}

.list-center {
  display: block;
  text-align: center;
}
.list-center ul,
.list-center ol {
  display: inline-block;
}
.list-center ul li,
.list-center ol li {
  text-align: left;
}

/******************************************
	ページトップ
******************************************/
#page_top {
  position: fixed;
  right: 100px;
  bottom: 10px;
  z-index: 50;
}
#page_top a {
  display: block;
  text-decoration: none;
}
#page_top a:hover {
  opacity: 0.6;
  transition: all 0.3s ease;
}
@media screen and (max-width: 1200px) {
  #page_top {
    right: 10px;
  }
}
@media screen and (max-width: 768px) {
  #page_top {
    right: 5px;
    bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  #page_top {
    right: 10px;
    bottom: 70px;
    width: 13%;
    height: auto;
  }
}

/******************************************
	パンくず
******************************************/
.pankuzu {
  max-width: 1000px;
  width: 100%;
  margin: 10px auto;
  font-size: 11px;
}
.pankuzu ul {
  margin: 0;
  display: flex;
  flex-flow: row wrap;
}
.pankuzu li {
  font-size: 11px;
  font-weight: normal;
  line-height: 1.5;
  letter-spacing: 0;
}
.pankuzu li + li::before {
  content: "＞";
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.pankuzu li span {
  text-decoration: underline;
}
.pankuzu li a {
  text-decoration: none;
}
.pankuzu li a:hover {
  opacity: 1;
  text-decoration: underline;
}
@media screen and (max-width: 991px) {
  .pankuzu {
    padding: 0 2%;
  }
}
@media screen and (max-width: 767px) {
  .pankuzu {
    padding: 0 4%;
    margin: 10px auto;
  }
  .pankuzu li {
    padding-left: 0;
  }
}

/******************************************
	ページネーション
******************************************/
.pagenation {
  padding-top: 0;
  text-align: center;
}
.pagenation span {
  color: #333;
}
.pagenation span.current {
  font-weight: bold;
}
.pagenation a {
  color: #333;
}
.pagenation nav {
  display: block !important;
}

/******************************************
  ヘッダー

/******************************************/
html {
  scroll-padding-top: 160px; /* 固定ヘッダの高さ分 */
}
@media screen and (max-width: 1024px) {
  html {
    scroll-padding-top: 60px;
  }
}

header {
  width: 100%;
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  background-image: url("../images/common/bg_header.png");
  background-repeat: repeat-x;
  background-position: bottom;
  background-color: #fff;
}
@media screen and (max-width: 1024px) {
  header {
    background-image: url("../images/common/bg_header_sp.png");
    background-size: 100% auto;
    background-position: center bottom;
    background-repeat: no-repeat;
  }
}
header h1 {
  font-size: 12px;
  line-height: 2.5;
  font-weight: normal;
  color: #4d4d4d;
  background: #f8f8f8;
  margin: 0;
}
header h1 span {
  display: block;
  max-width: 1280px;
  padding: 0 30px;
  margin: auto;
}
header .inner {
  max-width: 1280px;
  width: 100%;
  height: 130px;
  margin: auto;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-left: 30px;
  padding-right: 30px;
  position: relative;
}
header .inner .logo {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 30px;
  display: flex;
}
@media screen and (max-width: 1024px) {
  header .inner .logo {
    max-height: 56px;
  }
  header .inner .logo img {
    height: 100%;
    width: auto;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .logo {
    width: 17%;
  }
}
@media screen and (max-width: 767px) {
  header .inner .logo {
    width: 38%;
    left: 15px;
  }
}
header .inner .logo a {
  margin: auto;
}
@media screen and (max-width: 1024px) {
  header .inner .logo .pc_only {
    display: none !important;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .logo .sp_only {
    display: block !important;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .logo img {
    max-height: 56px;
  }
}
header .inner .nav_area {
  width: 76%;
}
header .inner .nav_area .h_navi_1 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (min-width: 1025px) {
  header .inner .nav_area .h_navi_1 {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 {
    flex-direction: column;
    justify-content: center;
  }
}
header .inner .nav_area .h_navi_1 ul {
  display: flex;
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 ul {
    flex-direction: column;
    justify-content: center;
    margin-bottom: 25px;
    width: 100%;
  }
}
@media screen and (max-width: 1199px) and (min-width: 1025px) {
  header .inner .nav_area .h_navi_1 ul li {
    font-size: 15px;
    font-size: 1.2510425354vw;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 ul li {
    border-bottom: 1px solid #4d4d4d;
    text-align: center;
  }
}
header .inner .nav_area .h_navi_1 ul li:first-child {
  padding-right: 25px;
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 ul li:first-child {
    padding-right: 0;
  }
}
header .inner .nav_area .h_navi_1 ul li:nth-child(2) {
  padding-left: 25px;
  border-left: 1px solid #4d4d4d;
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 ul li:nth-child(2) {
    padding-left: 0;
    border-left: none;
  }
}
header .inner .nav_area .h_navi_1 ul li a {
  color: #4d4d4d;
}
header .inner .nav_area .h_navi_1 ul li a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 ul li a {
    display: block;
    padding: 1em;
  }
}
header .inner .nav_area .h_navi_1 .h_btn_1 {
  margin: 0 30px;
}
@media screen and (max-width: 1199px) and (min-width: 1024px) {
  header .inner .nav_area .h_navi_1 .h_btn_1 {
    font-size: 16px;
    font-size: 1.3344453711vw;
  }
}
@media screen and (max-width: 1024px) {
  header .inner .nav_area .h_navi_1 .h_btn_1 {
    margin-bottom: 25px;
  }
}
header .inner .nav_area .h_navi_1 .h_btn_1 a {
  color: #4d4d4d;
  border: 1px solid #4d4d4d;
  border-radius: 20px;
  padding: 10px 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
header .inner .nav_area .h_navi_1 .h_btn_1 a:hover {
  background: #4d4d4d;
  color: #fff;
}
header .inner .nav_area .h_navi_1 .h_btn_2 a {
  background: #009fde;
  border-radius: 8px;
  box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.3);
  color: #fff;
  font-size: 18px;
  padding: 10px 20px;
  border: 2px solid #009fde;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
@media screen and (max-width: 1199px) and (min-width: 1025px) {
  header .inner .nav_area .h_navi_1 .h_btn_2 a {
    font-size: 16px;
    font-size: 1.3344453711vw;
  }
}
@media screen and (max-width: 991px) {
  header .inner .nav_area .h_navi_1 .h_btn_2 a {
    font-size: 17px;
    font-size: 4.5333333333vw;
  }
}
header .inner .nav_area .h_navi_1 .h_btn_2 a:hover {
  color: #009fde;
  background: #fff;
}
@media screen and (max-width: 1024px) {
  header {
    height: 60px;
    background-size: 100% auto;
  }
  header h1 {
    display: none;
  }
  header .inner {
    padding-right: 0;
    height: 100%;
  }
}

/******************************************
	グロナビ
******************************************/
header nav {
  width: 100%;
}
@media screen and (min-width: 1025px) {
  header nav {
    display: flex;
    flex-direction: column-reverse;
  }
}
header nav .gnavi {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
  align-items: center;
  margin-bottom: 0;
  width: 100%;
}
header nav .gnavi li {
  font-size: 14px;
  font-weight: bold;
}
@media screen and (max-width: 1199px) and (min-width: 1024px) {
  header nav .gnavi li {
    font-size: 10px;
    font-size: 1.0080645161vw;
  }
}
header nav .gnavi li a {
  color: #333;
  display: block;
}
header nav .gnavi li a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 1024px) {
  header nav .gnavi li a {
    position: relative;
    z-index: 0;
  }
  header nav .gnavi li a::after {
    content: "≫";
    position: absolute;
    width: 1em;
    height: 100%;
    top: 55%;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: -1;
    transition: all 0.3s ease;
  }
}
header nav .gnavi li:nth-child(2) {
  position: relative;
  z-index: 0;
}
header nav .gnavi li:nth-child(2)::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 6px 0 6px;
  border-color: #ffd900 transparent transparent transparent;
  top: 0;
  bottom: 0;
  left: -1em;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 1199px) and (min-width: 1025px) {
  header nav .gnavi li:nth-child(2)::before {
    left: -29%;
  }
}
@media screen and (max-width: 1024px) {
  header nav .gnavi li:nth-child(2)::before {
    content: none;
  }
}
header nav .gnavi li:nth-child(2) span {
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  header nav .gnavi li:nth-child(2) span {
    display: block;
    padding: 1em 20px;
    position: relative;
    z-index: 0;
  }
  header nav .gnavi li:nth-child(2) span::after {
    content: "";
    position: absolute;
    background-image: url("../images/common/menu_ico_arw_sp.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 21px;
    height: 21.5px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: -1;
    transition: all 0.3s;
  }
  header nav .gnavi li:nth-child(2) span.open::after {
    transform: rotateZ(180deg);
  }
}
header nav .gnavi li:nth-child(4) {
  position: relative;
  z-index: 0;
}
@media screen and (min-width: 1025px) {
  header nav .gnavi li:nth-child(4) {
    margin-left: 1em;
  }
}
header nav .gnavi li:nth-child(4)::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/menu_ico_1.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 17px;
  height: 22px;
  top: 0;
  bottom: 0;
  left: -1.5em;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 1199px) and (min-width: 1025px) {
  header nav .gnavi li:nth-child(4)::before {
    left: -39%;
  }
}
@media screen and (max-width: 1024px) {
  header nav .gnavi li:nth-child(4)::before {
    left: 20px;
    top: 10px;
    margin: 0 auto auto 0;
    z-index: 0;
  }
}
header nav .gnavi li:nth-child(4) span {
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  header nav .gnavi li:nth-child(4) span {
    display: block;
    padding: 1em 20px 1em calc(20px + 1.5em);
    position: relative;
    z-index: 0;
  }
  header nav .gnavi li:nth-child(4) span::after {
    content: "";
    position: absolute;
    background-image: url("../images/common/menu_ico_arw_sp.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 21px;
    height: 21.5px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: -1;
    transition: all 0.3s;
  }
  header nav .gnavi li:nth-child(4) span.open::after {
    transform: rotateZ(180deg);
  }
}
header nav p {
  display: none;
}
@media screen and (max-width: 1024px) {
  header nav {
    display: none;
    background: #fff;
    height: auto;
    padding: 0 0 5%;
    position: fixed;
    top: 60px;
    left: 0;
    z-index: 2000;
  }
  header nav .gnavi {
    background: #fff6c6;
    width: 100%;
    margin-bottom: 2em;
  }
  header nav .gnavi li {
    font-size: 14px;
    width: 100%;
    height: auto;
    margin: 0 0 0;
    border-bottom: 1px dashed #b1b1b1;
    position: relative;
  }
  header nav .gnavi li a {
    color: #000;
    padding: 1em 20px;
  }
}

.sp_menu {
  display: none;
}
@media screen and (max-width: 1024px) {
  .sp_menu {
    display: block;
    position: absolute;
    width: 40px;
    height: 24px;
    cursor: pointer;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto 0 auto auto;
    z-index: 2001;
  }
  .sp_menu::before {
    content: "";
    position: absolute;
    background-color: #ffd500;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 3px;
    margin: auto 0 auto auto;
    z-index: -1;
  }
  .sp_menu span {
    display: block;
    position: absolute;
    width: 70%;
    height: 4px;
    background: #000;
    border-radius: 0;
    -webkit-transition: 0.35s ease-in-out; /*変化の速度を指定*/
    -moz-transition: 0.35s ease-in-out; /*変化の速度を指定*/
    transition: 0.35s ease-in-out; /*変化の速度を指定*/
  }
  .sp_menu span:nth-child(1) {
    top: 0;
  }
  .sp_menu span:nth-child(2) {
    top: 10px;
  }
  .sp_menu span:nth-child(3) {
    top: 20px;
  }
  .sp_menu.active span:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .sp_menu.active span:nth-child(2), .sp_menu.active span:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}

.fixed {
  position: fixed !important;
  top: 0;
  left: 0;
  z-index: 99;
}
@media screen and (max-width: 1024px) {
  .fixed {
    position: inherit;
  }
}

/******************************************
	ヘッダーメニューはみ出し対策
******************************************/
@media screen and (max-width: 1024px) {
  header nav {
    height: calc(100% - 60px);
    overflow: auto;
  }
}

/******************************************
	ドロップダウンメニュー
******************************************/
@media screen and (min-width: 1025px) {
  .gnavi li {
    padding: 0.5em 0;
  }
}
@media screen and (min-width: 1025px) {
  .gnavi .drop_menu:hover {
    opacity: 1;
  }
  .gnavi .drop_menu:hover .drop_menu-list {
    display: block;
  }
}
.gnavi .drop_menu-list {
  display: none;
}
@media screen and (min-width: 1025px) {
  .gnavi .drop_menu-list {
    width: 100%;
    position: absolute;
    top: 1.1em;
    left: 0;
    right: 0;
    padding-top: 30px;
    font-size: 16px;
    line-height: 28px;
    font-weight: bold;
  }
  .gnavi .drop_menu-list::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 30.5px 42px 30.5px;
    border-color: transparent transparent #fff679 transparent;
    top: 5px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto auto auto;
    z-index: -1;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1024px) {
  .gnavi .drop_menu-list::before {
    content: none;
  }
}
@media screen and (min-width: 1025px) {
  .gnavi .drop_menu-list.drop_menu-list_1 {
    width: 780px;
    left: -360px;
  }
  .gnavi .drop_menu-list.drop_menu-list_2 {
    width: 260px;
    left: -100px;
  }
  .gnavi .drop_menu-list.drop_menu-list_2 .drop_menu-list-inner p {
    display: none;
  }
  .gnavi .drop_menu-list.drop_menu-list_2 .drop_menu-list-inner dl {
    padding-left: 25px;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1024px) {
  .gnavi .drop_menu-list.drop_menu-list_2 .drop_menu-list-inner dl {
    padding-left: 0;
  }
}
.gnavi .drop_menu-list p {
  display: block;
  margin-bottom: 1em;
}
.gnavi .drop_menu-list p a {
  display: inline;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list p {
    display: block;
    margin-bottom: 0;
    border-top: 1px dashed #b1b1b1;
  }
  .gnavi .drop_menu-list p a {
    display: block;
    position: relative;
    z-index: 0;
  }
  .gnavi .drop_menu-list p a::after {
    content: "≫";
    position: absolute;
    width: 1em;
    height: 100%;
    top: 55%;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: -1;
    transition: all 0.3s ease;
  }
}
.gnavi .drop_menu-list dl {
  margin-bottom: 1em;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list dl {
    margin-bottom: 0;
    border-top: 1px dashed #b1b1b1;
  }
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list dl dt {
    padding: 1em 20px;
    border-bottom: 1px dashed #b1b1b1;
    position: relative;
    z-index: 0;
  }
  .gnavi .drop_menu-list dl dt::after {
    content: "";
    position: absolute;
    background-image: url("../images/common/menu_ico_arw_sp.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 21px;
    height: 21.5px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: -1;
    transition: all 0.3s;
  }
  .gnavi .drop_menu-list dl dt.open::after {
    transform: rotateZ(180deg);
  }
}
.gnavi .drop_menu-list dl dd {
  padding-right: 1.5em;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list dl dd {
    border-bottom: 1px dashed #b1b1b1;
    background: #fff6c6;
    padding-right: 0;
  }
  .gnavi .drop_menu-list dl dd:last-child {
    border-bottom: none;
  }
}
.gnavi .drop_menu-list dl dd a {
  position: relative;
  z-index: 0;
}
.gnavi .drop_menu-list dl dd a::after {
  content: "≫";
  position: absolute;
  width: 1em;
  height: 100%;
  top: 30%;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto 0 auto auto;
  z-index: -1;
  transition: all 0.3s ease;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list dl dd a::after {
    height: 100%;
    top: 55%;
    right: 1.5em;
  }
}
.gnavi .drop_menu-list dl dd a:hover {
  text-decoration: underline;
}
@media screen and (min-width: 1025px) {
  .gnavi .drop_menu-list dl dd a:hover::after {
    right: -0.5em;
  }
}
.gnavi .drop_menu-list .drop_menu-list-inner {
  background: #fff579;
  width: 100%;
  padding: 20px;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list .drop_menu-list-inner {
    background: #fff6c6;
    padding: 0;
  }
}
.gnavi .drop_menu-list .drop_menu-list-inner .box-3 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list .drop_menu-list-inner .box-3 {
    display: block;
  }
}
.gnavi .drop_menu-list .drop_menu-list-inner .box-3 div {
  width: 240px;
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list .drop_menu-list-inner .box-3 div {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list .drop_menu-list-inner .box-3 dl dt {
    background: #ffea00;
  }
}
@media screen and (max-width: 1024px) {
  .gnavi .btn_drop_menu {
    display: none;
  }
}
.gnavi .btn_drop_menu a {
  width: 220px;
  height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #333;
  border: 2px solid #333;
  font-size: 18px;
  border-radius: 20px;
}
.gnavi .btn_drop_menu a:hover {
  background: #fff;
  color: #333;
  opacity: 1;
}

/******************************************
	アコーディオンメニュー
******************************************/
@media screen and (max-width: 1024px) {
  .gnavi .drop_menu-list .drop_menu-list-inner .box-3 dl div {
    display: none;
  }
}

/******************************************
  フッター

/******************************************/
.cta_pc {
  position: fixed;
  width: 60px;
  top: 40%;
  right: 0;
  z-index: 2;
}
.cta_pc a:hover {
  opacity: 0.6;
}
@media screen and (max-width: 991px) {
  .cta_pc {
    width: 52px;
  }
}
@media screen and (max-width: 767px) {
  .cta_pc {
    display: none;
  }
}

.cta_sp {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  display: flex;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .cta_sp {
    display: none;
  }
}
.cta_sp a {
  width: 50%;
  font-size: 14px;
  line-height: 20px;
  padding: 1em 0 1em 2em;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 575px) {
  .cta_sp a {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.cta_sp a:first-child {
  background: #ffea00;
  color: #333;
  position: relative;
  z-index: 0;
}
.cta_sp a:first-child::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_sp_cta_1.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 34.5px;
  height: 40px;
  top: 0;
  bottom: 0;
  left: 20px;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 350px) {
  .cta_sp a:first-child::before {
    width: 27.6px;
    height: 32px;
  }
}
.cta_sp a:last-child {
  background: #009ddc;
  color: #fff;
  position: relative;
  z-index: 0;
}
.cta_sp a:last-child::before {
  content: "";
  position: absolute;
  background-image: url("../images/common/ico_sp_cta_2.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 39.5px;
  height: 26px;
  top: 0;
  bottom: 0;
  left: 10px;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 350px) {
  .cta_sp a:last-child::before {
    width: 31.6px;
    height: 20.8px;
  }
}

footer {
  background: #fff8c8;
}
@media screen and (max-width: 767px) {
  footer {
    background: #fff;
    padding-bottom: 68px;
  }
}
@media screen and (max-width: 575px) {
  footer {
    padding-bottom: 18%;
  }
}
footer section {
  padding: 0 0 35px;
}
footer .f_nav {
  padding: 35px 0 55px;
}
@media screen and (max-width: 767px) {
  footer .f_nav {
    padding-top: 0;
  }
}
footer .f_nav a:hover {
  text-decoration: underline;
}
footer .f_nav .inner {
  max-width: 1220px;
  margin: 0 auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1220px) {
  footer .f_nav .inner {
    max-width: 800px;
  }
}
@media screen and (max-width: 767px) {
  footer .f_nav .inner {
    padding: 0;
  }
}
footer .f_nav .nav_list {
  padding: 0 20px;
  min-width: 25%;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list {
    min-width: 100%;
    background: #fff8c8;
    padding: 0;
  }
}
@media screen and (max-width: 1220px) and (min-width: 768px) {
  footer .f_nav .nav_list:first-child {
    order: 2;
  }
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list:first-child {
    padding-top: 20px;
  }
}
footer .f_nav .nav_list:nth-child(2) {
  width: 50%;
  border-left: 2px dashed #333;
  border-right: 2px dashed #333;
}
@media screen and (max-width: 1220px) and (min-width: 768px) {
  footer .f_nav .nav_list:nth-child(2) {
    width: 100%;
    border-left: none;
    border-right: none;
    border-bottom: 2px dashed #333;
    margin-bottom: 1em;
    order: 1;
  }
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list:nth-child(2) {
    width: 100%;
    border-left: none;
    border-right: none;
  }
  footer .f_nav .nav_list:nth-child(2) p {
    border-bottom: none;
    border-top: 1px dashed #b3b3b3;
  }
}
footer .f_nav .nav_list:nth-child(2) ul li, footer .f_nav .nav_list:last-child ul li {
  width: 165px;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list:nth-child(2) ul li, footer .f_nav .nav_list:last-child ul li {
    width: auto;
  }
}
footer .f_nav .nav_list:nth-child(2) ul li a, footer .f_nav .nav_list:last-child ul li a {
  width: 100%;
  display: block;
  position: relative;
  z-index: 0;
}
footer .f_nav .nav_list:nth-child(2) ul li a::after, footer .f_nav .nav_list:last-child ul li a::after {
  content: "≫";
  position: absolute;
  width: 1em;
  height: 24px;
  top: 0;
  bottom: 2px;
  left: 0;
  right: 0;
  margin: auto 0 auto auto;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list:nth-child(2) ul li a::after, footer .f_nav .nav_list:last-child ul li a::after {
    right: 20px;
  }
}
@media screen and (max-width: 1220px) and (min-width: 768px) {
  footer .f_nav .nav_list:last-child {
    order: 3;
  }
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list:last-child {
    border-bottom: 1px dashed #b3b3b3;
  }
  footer .f_nav .nav_list:last-child h4 {
    border-bottom: 1px dashed #b3b3b3;
  }
  footer .f_nav .nav_list:last-child ul {
    border-bottom: 1px dashed #b3b3b3;
  }
  footer .f_nav .nav_list:last-child ul li:first-child {
    border-top: none;
  }
}
footer .f_nav .nav_list .nav_list_course_wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list .nav_list_course_wrap .nav_list_course {
    width: 100%;
  }
  footer .f_nav .nav_list .nav_list_course_wrap .nav_list_course h5 + ul {
    display: none;
  }
}
footer .f_nav .nav_list h4 {
  width: 100%;
  font-size: 14px;
  line-height: 2em;
  font-weight: bold;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list h4 {
    padding: 10px 20px;
    margin-bottom: 0;
    border-top: 1px dashed #b3b3b3;
    position: relative;
  }
  footer .f_nav .nav_list h4::after {
    content: "";
    position: absolute;
    background-image: url(../images/common/menu_ico_arw_sp.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 21px;
    height: 21.5px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: 0;
    transition: all 0.3s;
  }
  footer .f_nav .nav_list h4.open::after {
    transform: rotateZ(180deg);
  }
  footer .f_nav .nav_list h4 + div, footer .f_nav .nav_list h4 + .nav_list_course_wrap {
    display: none;
  }
  footer .f_nav .nav_list h4 span {
    display: none;
  }
}
footer .f_nav .nav_list h5 {
  font-size: 12px;
  line-height: 2em;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list h5 {
    padding: 10px 20px;
    border-top: 1px dashed #b3b3b3;
    background: #ffea00;
    position: relative;
  }
  footer .f_nav .nav_list h5::after {
    content: "";
    position: absolute;
    background-image: url(../images/common/menu_ico_arw_sp.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 21px;
    height: 21.5px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 1.5em;
    margin: auto 0 auto auto;
    z-index: 0;
    transition: all 0.3s;
  }
  footer .f_nav .nav_list h5.open::after {
    transform: rotateZ(180deg);
  }
}
footer .f_nav .nav_list p {
  width: 100%;
  font-size: 14px;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list p {
    margin-bottom: 0;
    border-bottom: 1px dashed #b3b3b3;
  }
  footer .f_nav .nav_list p a {
    display: block;
    padding: 1em 20px;
    position: relative;
    z-index: 0;
  }
  footer .f_nav .nav_list p a::after {
    content: "≫";
    position: absolute;
    width: 1em;
    height: 24px;
    top: 0;
    bottom: 2px;
    left: 0;
    right: 20px;
    margin: auto 0 auto auto;
  }
}
footer .f_nav .nav_list p:last-child {
  line-height: 2em;
  margin-top: 3em;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list p:last-child {
    margin-bottom: 1em;
    padding: 0 20px;
    border-bottom: none;
  }
  footer .f_nav .nav_list p:last-child a {
    padding: 0;
  }
  footer .f_nav .nav_list p:last-child a::after {
    content: none;
  }
}
footer .f_nav .nav_list p svg {
  vertical-align: middle;
  margin-bottom: 0.2em;
}
footer .f_nav .nav_list ul {
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list ul {
    margin-bottom: 0;
  }
}
footer .f_nav .nav_list ul li {
  font-size: 12px;
  line-height: 2em;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list ul li {
    border-top: 1px dashed #b3b3b3;
    margin: 0 -25px;
    padding: 0 25px;
  }
  footer .f_nav .nav_list ul li:last-of-type {
    border-bottom: none;
  }
  footer .f_nav .nav_list ul li a {
    width: 100%;
    display: block;
    padding: 1em 0;
    position: relative;
    z-index: 0;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  footer .f_nav .nav_list ul li a {
    padding: 1em 20px;
  }
}
@media screen and (max-width: 767px) {
  footer .f_nav .nav_list ul li a::after {
    content: "≫";
    position: absolute;
    width: 1em;
    height: 24px;
    top: 0;
    bottom: 2px;
    left: 0;
    right: 0;
    margin: auto 0 auto auto;
    z-index: -1;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  footer .f_nav .nav_list ul li a::after {
    right: 20px;
  }
}
footer .f_sns {
  width: 300px;
  margin: auto;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: baseline;
}
footer .f_sns figure {
  width: auto;
  margin: 0;
}
footer .f_sns figure:first-child img {
  width: 63px;
  height: auto;
}
footer .f_sns figure:last-child img {
  width: 71.5px;
  height: auto;
}
footer .f_bnr_footer {
  padding: 30px 15px 10px;
}
@media screen and (max-width: 767px) {
  footer .f_bnr_footer {
    padding: 20px 15px 0;
  }
}
footer .f_bnr_footer .inner {
  max-width: 900px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
@media screen and (max-width: 767px) {
  footer .f_bnr_footer .inner {
    flex-direction: column;
    gap: 12px;
  }
}
footer .f_bnr_footer .inner figure {
  margin: 0;
  width: 31%;
  max-width: 336px;
}
@media screen and (max-width: 767px) {
  footer .f_bnr_footer .inner figure {
    width: 100%;
    max-width: 336px;
  }
}
footer .f_bnr_footer .inner figure img {
  width: 100%;
  height: auto;
}
footer .copyright {
  background: #333;
}
footer .copyright p {
  color: #fff;
  font-size: 12px;
  line-height: 2;
  padding: 1em 0;
  text-align: center;
}
@media screen and (max-width: 991px) {
  footer .inner {
    padding: 0 2%;
  }
}
@media screen and (max-width: 767px) {
  footer .inner {
    padding: 0 4%;
  }
}

/******************************************
	トップページ
******************************************/
.home h3 {
  font-size: 34px;
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .home h3 {
    font-size: 22px;
    line-height: 1.5;
  }
}
.home .sec_mv {
  padding: 0;
}
.home .sec_mv video {
  width: 100%;
}
.home .sec_sld {
  padding-bottom: 0;
}
.home .sec_sld .bnr_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 30px;
}
@media screen and (max-width: 991px) {
  .home .sec_sld .bnr_wrap {
    gap: 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_sld .bnr_wrap {
    gap: 15px;
  }
}
.home .sec_sld .bnr_wrap .bnr_item {
  flex-basis: calc((100% - 60px) / 3);
  text-align: center;
}
@media screen and (max-width: 991px) {
  .home .sec_sld .bnr_wrap .bnr_item {
    flex-basis: calc((100% - 40px) / 3);
  }
}
@media screen and (max-width: 767px) {
  .home .sec_sld .bnr_wrap .bnr_item {
    flex-basis: calc((100% - 15px) / 2);
  }
}
.home .sec_sld .bnr_wrap .bnr_item a {
  display: inline-block;
}
.home .sec_sld .slider {
  padding: 0 25px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .home .sec_sld .slider {
    padding: 0 30px;
  }
}
.home .sec_sld .slider figure {
  margin-bottom: 0;
}
.home .sec_sld .slider .slide-arrow {
  transition: all 0.3s ease;
}
@media screen and (max-width: 1024px) {
  .home .sec_sld .slider .slide-arrow {
    width: 26.6666666667px;
    height: auto;
  }
}
.home .sec_sld .slider .slide-arrow:hover {
  opacity: 0.6;
}
.home .sec_sld .slider .slide-arrow.prev-arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -20px;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .home .sec_sld .slider .slide-arrow.prev-arrow {
    left: -10px;
  }
}
.home .sec_sld .slider .slide-arrow.next-arrow {
  position: absolute;
  top: 0;
  bottom: 0;
  right: -20px;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .home .sec_sld .slider .slide-arrow.next-arrow {
    right: -10px;
  }
}
.home .sec_course {
  background: url("../images/top/top_sec1_bg.png") no-repeat center bottom;
}
.home .sec_course .inner {
  background: url("../images/top/top_sec1_img_af.png") no-repeat right 30px bottom;
}
@media screen and (max-width: 767px) {
  .home .sec_course .inner {
    background: none;
  }
}
.home .sec_2 {
  background: rgba(255, 213, 0, 0.1);
  position: relative;
  z-index: 0;
}
.home .sec_2::before {
  content: "";
  position: absolute;
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
.home .sec_2 .box-wrap {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1024px) {
  .home .sec_2 .box-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 575px) {
  .home .sec_2 .box-wrap {
    grid-template-columns: repeat(1, 1fr);
  }
}
.home .sec_2 .box-wrap .box {
  background-color: #fff;
  background-image: url("../images/top/sec2_box_bg.png");
  padding: 10px;
  position: relative;
  z-index: 0;
}
.home .sec_2 .box-wrap .box::before {
  content: "";
  position: absolute;
  background-color: #fff;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
.home .sec_2 .box-wrap .box h5,
.home .sec_2 .box-wrap .box .merit {
  font-size: 21px;
  line-height: 28px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 1em;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1139px) and (min-width: 1025px) {
  .home .sec_2 .box-wrap .box h5,
  .home .sec_2 .box-wrap .box .merit {
    font-size: 21px;
    font-size: 1.8437225637vw;
  }
}
.home .sec_2 .box-wrap .box h5 img,
.home .sec_2 .box-wrap .box .merit img {
  margin: 0 12px 0 0;
}
.home .sec_2 .box-wrap .box .merit {
  text-align: left;
}
.home .sec_2 .box-wrap .box .box-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
}
.home .sec_2 .box-wrap .box figure {
  width: 140px;
  margin: 0;
}
.home .sec_2 .box-wrap .box p {
  width: calc(100% - 140px - 15px);
  font-size: 14px;
  line-height: 18px;
}
.home .sec_2 .box-wrap .box p span {
  font-size: 10px;
}
.home .sec_2 .box-wrap .box a {
  display: block;
  text-align: right;
  color: #3fa7f3;
  font-size: 12px;
}
.home .sec_2 .box-wrap .box a:hover {
  text-decoration: underline;
}
.home .sec_4 {
  background: #f6f6f6;
}
.home .sec_4 h3 {
  text-decoration: underline;
  text-decoration-color: #ffd500;
  text-decoration-thickness: 10px;
  text-underline-offset: -5px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .home .sec_4 h3 {
    margin-bottom: 1.5em;
  }
}
.home .sec_4 .inner {
  max-width: 940px;
}
.home .sec_4 .box-wrap {
  display: grid;
  gap: 50px;
}
@media screen and (max-width: 767px) {
  .home .sec_4 .box-wrap {
    gap: 25px;
  }
}
.home .sec_4 .box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .home .sec_4 .box {
    flex-direction: column;
  }
}
.home .sec_4 .box figure {
  width: 338px;
}
@media screen and (min-width: 768px) {
  .home .sec_4 .box figure {
    margin: 0;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_4 .box figure {
    width: 70%;
  }
}
.home .sec_4 .box .box-inner {
  width: calc(100% - 338px - 60px);
}
@media screen and (max-width: 767px) {
  .home .sec_4 .box .box-inner {
    width: 100%;
  }
}
.home .sec_4 .box h4 {
  font-size: 30px;
  line-height: 30px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
@media screen and (max-width: 991px) {
  .home .sec_4 .box h4 {
    font-size: 20px;
    text-align: center;
  }
}
.home .sec_4 .box p {
  font-size: 18px;
  line-height: 24px;
}
@media screen and (max-width: 991px) {
  .home .sec_4 .box p {
    font-size: 14px;
  }
}
.home .sec_5 {
  background: rgba(255, 213, 0, 0.1);
  position: relative;
  z-index: 0;
}
.home .sec_5::before {
  content: "";
  position: absolute;
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
.home .sec_5 .inner {
  max-width: 940px;
}
.home .sec_5 .box_title {
  font-size: 30px;
  line-height: 1;
  padding: 0 40px;
  font-weight: 700;
  text-align: left;
  margin-bottom: 1em;
}
@media screen and (max-width: 991px) {
  .home .sec_5 .box_title {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box_title {
    padding: 0 20px;
    font-size: 18px;
  }
}
.home .sec_5 .box_title span {
  display: block;
  font-size: 26px;
  font-weight: 400;
  margin-top: 0.3em;
}
@media screen and (max-width: 991px) {
  .home .sec_5 .box_title span {
    font-size: 18px;
    margin-top: 0.5em;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box_title span {
    font-size: 12px;
    line-height: 1.3;
    margin-top: 0.2em;
  }
}
.home .sec_5 .box-inner_title {
  font-size: 22px;
  line-height: 28px;
  font-weight: 700;
  text-align: left;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-inner_title {
    font-size: 16px;
  }
}
.home .sec_5 p {
  font-size: 20px;
}
@media screen and (max-width: 767px) {
  .home .sec_5 p {
    font-size: 14px;
  }
}
.home .sec_5 .box-wrap {
  display: grid;
  gap: 50px;
}
.home .sec_5 .box-wrap .box:first-child .box_title {
  background-image: url("../images/top/top_sec5_img_1.png");
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box:first-child .box_title {
    background-image: url("../images/top/top_sec5_img_1_sp.png");
  }
}
.home .sec_5 .box-wrap .box:nth-child(2) .box_title {
  background-image: url("../images/top/top_sec5_img_2.png");
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box:nth-child(2) .box_title {
    background-image: url("../images/top/top_sec5_img_2_sp.png");
  }
}
.home .sec_5 .box-wrap .box:nth-child(3) .box_title {
  background-image: url("../images/top/top_sec5_img_3.png");
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box:nth-child(3) .box_title {
    background-image: url("../images/top/top_sec5_img_3_sp.png");
  }
}
.home .sec_5 .box-wrap .box:nth-child(4) .box_title {
  background-image: url("../images/top/top_sec5_img_4.png");
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box:nth-child(4) .box_title {
    background-image: url("../images/top/top_sec5_img_4_sp.png");
  }
}
.home .sec_5 .box-wrap .box:nth-child(5) .box_title {
  background-image: url("../images/top/top_sec5_img_5.png");
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box:nth-child(5) .box_title {
    background-image: url("../images/top/top_sec5_img_5_sp.png");
  }
}
.home .sec_5 .box-wrap .box .box_title {
  font-family: "M PLUS Rounded 1c", sans-serif;
  background-repeat: no-repeat;
  background-position: right top;
  display: flex;
  justify-content: center;
  flex-direction: column;
  max-width: 900px;
  width: 100%;
  height: 113px;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .home .sec_5 .box-wrap .box .box_title {
    border-radius: 16px 16px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box .box_title {
    background-color: #ffea00;
    background-position: top right;
    background-size: 170px auto;
    width: 100%;
    height: 66.5px;
    border-radius: 10px 10px 0 0;
  }
}
.home .sec_5 .box-wrap .box .box-inner-wrap {
  display: grid;
  gap: 20px;
}
.home .sec_5 .box-wrap .box .box-inner-wrap .box-inner {
  border-top: 2px dashed #e4e4e4;
  padding-top: 20px;
}
.home .sec_5 .box-wrap .box .box-inner-wrap .box-inner:first-child {
  border-top: none;
  padding-top: 0;
}
.home .sec_5 .box-wrap .box .box-inner {
  margin: 0 60px;
}
@media screen and (max-width: 991px) {
  .home .sec_5 .box-wrap .box .box-inner {
    margin: 0;
  }
}
.home .sec_5 .box-wrap .box .item {
  position: relative;
  z-index: 0;
}
.home .sec_5 .box-wrap .box .item::before {
  content: "";
  position: absolute;
  background-image: url("../images/top/top_sec5_ico_1.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 98px;
  height: 66px;
  top: 5px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box .item::before {
    width: 65.3333333333px;
    height: 44px;
    top: 9px;
  }
}
.home .sec_5 .box-wrap .box .item .text {
  background: #fff;
  width: 660px;
  margin: auto 0 15px auto;
  border-style: solid;
  border-width: 2px;
  border-radius: 10px;
  padding: 20px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  .home .sec_5 .box-wrap .box .item .text {
    width: 84%;
  }
}
@media screen and (max-width: 767px) {
  .home .sec_5 .box-wrap .box .item .text {
    width: 76%;
    padding: 10px;
  }
}
.home .sec_5 .box-wrap .box .item .text::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 18px 9px 0;
  border-color: transparent #ffffff transparent transparent;
  top: 32px;
  bottom: 0;
  left: -18px;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -2;
}
.home .sec_5 .box-wrap .box .item .text::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 16px 6px 0;
  border-color: transparent #ffffff transparent transparent;
  top: 35px;
  bottom: 0;
  left: -15px;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -1;
}
.home .sec_5 .box-wrap .box .item .text.pink {
  border-color: #ff7f96;
}
.home .sec_5 .box-wrap .box .item .text.pink::before {
  border-color: transparent #ff7f96 transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.green {
  border-color: #98d44d;
}
.home .sec_5 .box-wrap .box .item .text.green::before {
  border-color: transparent #98d44d transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.blue {
  border-color: #50bbe6;
}
.home .sec_5 .box-wrap .box .item .text.blue::before {
  border-color: transparent #50bbe6 transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.orange {
  border-color: #f09400;
}
.home .sec_5 .box-wrap .box .item .text.orange::before {
  border-color: transparent #f09400 transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.brown {
  border-color: #c49a6d;
}
.home .sec_5 .box-wrap .box .item .text.brown::before {
  border-color: transparent #c49a6d transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.purple {
  border-color: #a77bca;
}
.home .sec_5 .box-wrap .box .item .text.purple::before {
  border-color: transparent #a77bca transparent transparent;
}
.home .sec_5 .box-wrap .box .item .text.gold {
  border-color: #c2a93b;
}
.home .sec_5 .box-wrap .box .item .text.gold::before {
  border-color: transparent #c2a93b transparent transparent;
}
.home .sec_news ul {
  max-width: 900px;
  width: 100%;
  margin: auto auto 2em;
}
.home .sec_news ul li {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px dashed #c5c5c5;
  word-break: break-all;
}
.home .sec_news ul li span.date {
  display: block;
  width: 100%;
  font-size: 12px;
  flex-grow: 2;
}
.home .sec_news ul li span.ttl {
  display: flex;
  align-content: center;
}
@media screen and (max-width: 767px) {
  .home .sec_news ul li span.ttl {
    flex-direction: column;
  }
}
.home .sec_news ul li span.ttl .cat_wrap {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin-right: 1em;
}
@media screen and (max-width: 767px) {
  .home .sec_news ul li span.ttl .cat_wrap {
    flex-direction: column;
    gap: 5px;
    margin-right: 0;
  }
}
.home .sec_news ul li span.ttl .cat {
  width: 106px;
  height: 26px;
  color: #fff;
  border-radius: 5px;
  font-size: 14px;
  margin-top: 0.3em;
  vertical-align: middle;
  padding: 3px 2px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 991px) {
  .home .sec_news ul li span.ttl .cat {
    margin-top: 0;
    font-size: 12px;
    padding: 0.1em;
  }
}
.home .sec_news ul li span.ttl .cat a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  color: #fff;
}
@media screen and (max-width: 991px) {
  .home .sec_news ul li span.ttl .cat a {
    font-size: 12px;
  }
}
.home .sec_news ul li span.ttl .cat a:hover {
  text-decoration: none;
}
.home .sec_news ul li span.ttl a {
  font-size: 20px;
  line-height: 1.6;
}
@media screen and (max-width: 991px) {
  .home .sec_news ul li span.ttl a {
    font-size: 16px;
  }
}
.home .sec_news ul li span.ttl a:hover {
  text-decoration: underline;
}
.home .info_class {
  background: rgba(255, 213, 0, 0.1);
  position: relative;
  z-index: 0;
}
.home .info_class::before {
  content: "";
  position: absolute;
  background: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1) 4px, rgba(255, 213, 0, 0.1) 4px, rgba(255, 213, 0, 0.1) 8px);
  width: 100%;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
.home .info_class .box-wrap {
  background: #fff;
  padding: 40px 20px 80px;
  border-radius: 10px;
  display: grid;
  gap: 80px;
}
@media screen and (max-width: 767px) {
  .home .info_class .box-wrap {
    gap: 40px;
  }
}
.home .info_class .box-wrap .box {
  max-width: 900px;
  width: 100%;
  padding: 20px 0 0;
  margin: auto;
  border-top: 1px dashed #c5c5c5;
}
.home .info_class .box-wrap .box:first-child {
  border-top: none;
}
.home .info_class .box-wrap .box a {
  transition: all 0.3s ease;
}
.home .info_class .box-wrap .box a:hover {
  opacity: 0.6;
}
.home .info_class .box-wrap .box .data {
  display: flex;
  margin-bottom: 0.5em;
}
.home .info_class .box-wrap .box .data span.date {
  font-size: 14px;
}
.home .info_class .box-wrap .box .data span.cat {
  font-size: 10px;
  width: 76px;
  border-radius: 3px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 1em;
}
.home .info_class .box-wrap .box .box-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 575px) {
  .home .info_class .box-wrap .box .box-inner {
    flex-direction: column;
  }
}
.home .info_class .box-wrap .box .box-inner figure {
  width: 220px;
  margin: 0;
}
@media screen and (max-width: 575px) {
  .home .info_class .box-wrap .box .box-inner figure {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }
}
.home .info_class .box-wrap .box .box-inner figure img {
  object-fit: cover;
}
@media screen and (max-width: 575px) {
  .home .info_class .box-wrap .box .box-inner figure img {
    width: 100%;
  }
}
.home .info_class .box-wrap .box .box-inner .box-contents {
  width: calc(100% - 220px - 60px);
  word-break: break-all;
}
@media screen and (max-width: 991px) {
  .home .info_class .box-wrap .box .box-inner .box-contents {
    width: calc(100% - 220px - 30px);
  }
}
@media screen and (max-width: 575px) {
  .home .info_class .box-wrap .box .box-inner .box-contents {
    width: 100%;
  }
}
.home .info_class .box-wrap .box .box-inner .box-contents h4 {
  font-size: 22px;
  line-height: 31px;
}
@media screen and (max-width: 991px) {
  .home .info_class .box-wrap .box .box-inner .box-contents h4 {
    font-size: 18px;
  }
}
.home .info_class .box-wrap .box .box-inner .box-contents p {
  font-size: 16px;
  line-height: 24px;
}
@media screen and (max-width: 991px) {
  .home .info_class .box-wrap .box .box-inner .box-contents p {
    font-size: 14px;
  }
}
.home .info_class .box-wrap .box .box-inner .box-contents p span {
  color: #3fa7f3;
  text-decoration: underline;
}
.home .flow {
  background: #fff6c6;
}
.home .flow .box-wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 991px) {
  .home .flow .box-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    row-gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .home .flow .box-wrap {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    column-gap: 20px;
    row-gap: 20px;
  }
}
.home .flow .box-wrap .box {
  width: 17.8%;
}
@media screen and (max-width: 991px) {
  .home .flow .box-wrap .box {
    width: 100%;
  }
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .home .flow .box-wrap .box:nth-child(4) .box-contents, .home .flow .box-wrap .box:nth-child(5) .box-contents {
    margin-top: -1em;
  }
}
.home .flow .box-wrap .box .box-inner {
  position: relative;
  height: 61%;
  margin-bottom: 15px;
}
@media screen and (max-width: 1051px) {
  .home .flow .box-wrap .box .box-inner {
    height: 56%;
  }
}
@media screen and (max-width: 991px) {
  .home .flow .box-wrap .box .box-inner {
    height: 36.5vw;
  }
}
@media screen and (max-width: 767px) {
  .home .flow .box-wrap .box .box-inner {
    height: auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
  }
}
.home .flow .box-wrap .box .box-inner p {
  position: absolute;
  bottom: 24%;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 2;
  line-height: 1;
  margin-bottom: 0;
}
@media screen and (max-width: 1051px) {
  .home .flow .box-wrap .box .box-inner p {
    bottom: 24%;
  }
}
@media screen and (max-width: 767px) {
  .home .flow .box-wrap .box .box-inner p {
    position: relative;
    width: 13%;
  }
}
.home .flow .box-wrap .box .box-inner h4 {
  padding-top: 100%;
  text-align: center;
  font-size: 20px;
  line-height: 24px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  text-align: center;
  margin-bottom: 0;
}
@media screen and (max-width: 1051px) {
  .home .flow .box-wrap .box .box-inner h4 {
    font-size: 18px;
    font-size: 1.7126546147vw;
  }
}
@media screen and (max-width: 1024px) {
  .home .flow .box-wrap .box .box-inner h4 {
    font-size: 18px;
    font-size: 1.7578125vw;
  }
}
@media screen and (max-width: 991px) {
  .home .flow .box-wrap .box .box-inner h4 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .home .flow .box-wrap .box .box-inner h4 {
    padding-top: 0;
    margin-bottom: 0;
    flex-grow: 2;
    max-width: calc(47% - 10px);
    font-size: 18px;
    text-align: left;
    padding-left: 0.5em;
  }
}
.home .flow .box-wrap .box .box-inner figure {
  position: absolute;
  top: 0;
}
@media screen and (max-width: 767px) {
  .home .flow .box-wrap .box .box-inner figure {
    position: relative;
    width: 40%;
    margin: 0;
  }
}
@media screen and (max-width: 991px) {
  .home .flow .box-wrap .box .box-inner figure img {
    width: 100%;
  }
}
.home .flow .box-wrap .box p {
  font-size: 14px;
  line-height: 20px;
}
.home .flow .box-wrap .box p a {
  color: #3fa7f3;
  text-decoration: underline;
}
.home .flow .box-wrap .box p a:hover {
  text-decoration: none;
}
.home .each_school {
  background: #ffd500;
}
.home .each_school h3 {
  text-align: center;
}
.home .sec_oxford {
  margin: 55px 0 0px;
}
.home .sec_oxford .sec_oxford_inner {
  background-color: #fff;
  padding: 55px 0 0px;
  padding: 5%;
}
.home .sec_oxford h3 {
  text-decoration: underline;
  text-decoration-color: #ffd500;
  text-decoration-thickness: 10px;
  text-underline-offset: -5px;
  margin-bottom: 30px;
}
.home .sec_oxford p {
  text-align: center;
  font-size: 17px;
  line-height: 1.8;
}
.home .sec_oxford figure {
  text-align: center;
}
.home .sec_oxford figure img {
  max-width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .home .sec_oxford p {
    text-align: left;
    font-size: 15px;
    line-height: 1.6;
  }
  .home .sec_oxford figure img {
    max-width: 100%;
  }
}

/******************************************
	イングリッシュワールドとは ページ
******************************************/
.about .sec_h2 {
  background-image: url("../images/about/h2_bg.png");
}
@media screen and (max-width: 575px) {
  .about .sec_h2 {
    background-image: url("../images/about/h2_bg_sp.png");
  }
}
.about .sec_1 .sec_1_1 {
  padding-bottom: 55px;
  margin-bottom: 55px;
}
@media screen and (max-width: 767px) {
  .about .sec_1 .sec_1_1 {
    padding-bottom: 10%;
    margin-bottom: 10%;
  }
}
.about .sec_1 .sec_1_1 p {
  font-size: 26px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .about .sec_1 .sec_1_1 p {
    font-size: 16px;
  }
}
.about .sec_1 .sec_1_2 {
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .about .sec_1 .sec_1_2 {
    margin-bottom: 30px;
  }
}
.about .sec_1 .sec_1_2 p {
  text-align: center;
  font-size: 18px;
  line-height: 1.4;
}
@media screen and (max-width: 991px) {
  .about .sec_1 .sec_1_2 p {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_1 .sec_1_2 p {
    font-size: 16px;
    text-align: left;
  }
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .about .sec_1 .box-r figure {
    width: 40%;
  }
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .about .sec_1 .box-r .box-contents {
    width: 58%;
  }
}
.about .sec_1 .box-r dl {
  margin-bottom: 20px;
}
.about .sec_1 .box-r dl:first-child dt::before {
  background-image: url("../images/about/about_ico_point_1.png");
}
.about .sec_1 .box-r dl:nth-child(2) dt::before {
  background-image: url("../images/about/about_ico_point_2.png");
}
.about .sec_1 .box-r dl:last-child {
  margin-bottom: 0;
}
.about .sec_1 .box-r dl:last-child dt::before {
  background-image: url("../images/about/about_ico_point_3.png");
}
.about .sec_1 .box-r dl dt {
  font-size: 20px;
  line-height: 24px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  height: 70px;
  background: #ffe700;
  border-radius: 15px 15px 0px 0px;
  padding-left: 80px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1100px) and (min-width: 992px) {
  .about .sec_1 .box-r dl dt {
    font-size: 18px;
    font-size: 1.6378525933vw;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_1 .box-r dl dt {
    font-size: 18px;
    font-size: 1.8163471241vw;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_1 .box-r dl dt {
    font-size: 16px;
    min-height: 60px;
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 15px;
  }
}
.about .sec_1 .box-r dl dt::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 50px;
  height: 50px;
  top: 0;
  bottom: 0;
  left: 15px;
  right: 0;
  margin: auto auto auto 0;
  z-index: -1;
}
.about .sec_1 .box-r dl dd {
  font-size: 14px;
  line-height: 18px;
  background: #fffade;
  border-radius: 0px 0px 15px 15px;
  padding: 10px 15px;
}
.about .sec_2 {
  font-family: "M PLUS Rounded 1c", sans-serif;
}
.about .sec_2 p.p_1 {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 991px) {
  .about .sec_2 p.p_1 {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_2 p.p_1 {
    text-align: left;
  }
}
.about .sec_2 p.p_2 {
  font-size: 16px;
  line-height: 26px;
  text-align: center;
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 991px) {
  .about .sec_2 p.p_2 {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_2 p.p_2 {
    text-align: left;
  }
}
.about .sec_2 .box-l figure {
  width: 55%;
}
@media screen and (max-width: 1119px) and (min-width: 991px) {
  .about .sec_2 .box-l figure {
    width: 53%;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l figure {
    width: 100%;
  }
}
.about .sec_2 .box-l .box-contents {
  width: 42%;
}
@media screen and (max-width: 1119px) and (min-width: 991px) {
  .about .sec_2 .box-l .box-contents {
    width: 45%;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l .box-contents {
    width: 100%;
    margin-top: 20px;
  }
}
.about .sec_2 .box-l dl {
  height: 130px;
  margin-bottom: 30px;
  padding-top: 5px;
}
@media screen and (max-width: 1119px) and (min-width: 991px) {
  .about .sec_2 .box-l dl {
    height: 13.7vw;
    margin-bottom: 0;
    padding-top: 0;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l dl {
    height: auto;
  }
}
.about .sec_2 .box-l dl figure {
  margin-bottom: 0.5em;
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l dl figure.sp_only {
    display: block !important;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l dl figure.sp_only {
    width: 40%;
  }
}
@media screen and (max-width: 575px) {
  .about .sec_2 .box-l dl figure.sp_only {
    width: 100%;
  }
}
.about .sec_2 .box-l dl dt {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
  .about .sec_2 .box-l dl dt {
    font-size: 20px;
  }
}
.about .sec_2 .box-l dl dd {
  font-size: 14px;
  line-height: 18px;
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .about .sec_3 .box-repeat_r .items:nth-child(odd) .img {
    float: right;
    margin: 0 0 10px 10px;
  }
}
@media screen and (max-width: 991px) and (min-width: 768px) {
  .about .sec_3 .box-repeat_r .items:nth-child(even) .img {
    float: left;
    margin: 10px 10px 0 0;
  }
}
.about .sec_3 .box-repeat_r figure {
  width: 336px;
  margin: 0;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r figure.pc_only {
    display: none !important;
  }
}
.about .sec_3 .box-repeat_r .box-contents {
  width: calc(100% - 336px - 60px);
  padding-left: 188px;
  position: relative;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r .box-contents {
    width: 100%;
    padding-left: 0;
  }
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r .box-contents .box-ttl {
    padding-left: 13%;
    display: flex;
    align-items: center;
    height: 10vw;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_3 .box-repeat_r .box-contents .box-ttl {
    padding-left: 23%;
    display: flex;
    align-items: center;
    height: 19vw;
    margin-bottom: 10px;
  }
}
.about .sec_3 .box-repeat_r .box-contents h4 {
  font-size: 26px;
  line-height: 1;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r .box-contents h4 {
    font-size: 20px;
    margin-bottom: 0;
  }
}
.about .sec_3 .box-repeat_r .box-contents h4 img {
  position: absolute;
  top: 20px;
  left: 0;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r .box-contents h4 img {
    width: 10%;
    top: 0;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_3 .box-repeat_r .box-contents h4 img {
    width: 20%;
    top: 0;
  }
}
.about .sec_3 .box-repeat_r .box-contents h4 span {
  display: block;
  font-size: 20px;
  line-height: 1.2;
  margin-top: 10px;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .box-repeat_r .box-contents h4 span {
    font-size: 16px;
    margin-top: 5px;
  }
}
.about .sec_3 .box-repeat_r .box-contents p {
  font-size: 14px;
  line-height: 1.5;
}
.about .sec_3 .img {
  display: none;
}
@media screen and (max-width: 991px) {
  .about .sec_3 .img {
    display: block;
    clear: both;
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  .about .sec_3 .img {
    float: right;
    margin: 0 0 10px 10px;
    width: 49%;
  }
}
.about .sec_4 {
  font-family: "M PLUS Rounded 1c", sans-serif;
}
.about .sec_4 dl {
  max-width: 600px;
  margin: auto;
}
.about .sec_4 dl dt {
  font-size: 26px;
  line-height: 37px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .about .sec_4 dl dt {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 1em;
  }
}
.about .sec_4 dl dd {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
.about .sec_4 dl dd figure {
  width: 225px;
  margin: 0;
}
@media screen and (max-width: 991px) {
  .about .sec_4 dl dd figure {
    width: 32%;
  }
}
.about .sec_4 dl dd p {
  width: calc(100% - 240px);
  font-size: 16px;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .about .sec_4 dl dd p {
    width: 65%;
  }
}
.about .sec_about_oxford .oxford-item {
  display: flex;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
}
.about .sec_about_oxford .oxford-item p {
  width: 56%;
}
.about .sec_about_oxford .oxford-item div {
  width: 38%;
}
.about .sec_about_oxford .oxford-top {
  margin-bottom: 3rem;
}
.about .sec_about_oxford .oxford-top div {
  order: 1;
}
.about .sec_about_oxford .movie-wrap {
  position: relative;
  padding-bottom: 56.25%;
  /*アスペクト比 16:9の場合の縦幅*/
  height: 0;
  overflow: hidden;
}
.about .sec_about_oxford .oxford-movie {
  max-width: 600px;
  margin: 4rem auto 0;
}
.about .sec_about_oxford .movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .about .sec_about_oxford .h3_2 {
    height: 90px;
  }
  .about .sec_about_oxford .h3_2 h3::before {
    top: 2.8em;
  }
  .about .sec_about_oxford .oxford-item {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .about .sec_about_oxford .oxford-item p {
    width: 100%;
  }
  .about .sec_about_oxford .oxford-item div {
    width: 100%;
    margin-bottom: 1rem;
  }
  .about .sec_about_oxford .oxford-top {
    margin-bottom: 3rem;
  }
}

/******************************************
	コース紹介 ページ
******************************************/
.course .sec_h2 {
  background-image: url("../images/course/h2_bg.png");
}
@media screen and (max-width: 575px) {
  .course .sec_h2 {
    background-image: url("../images/course/h2_bg_sp.png");
  }
}
.course .sec_0 p {
  font-size: 26px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .course .sec_0 p {
    font-size: 16px;
  }
}
@media screen and (max-width: 375px) {
  .course .sec_0 p {
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}
.course .sec_0 .box-wrap {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(7, 1fr);
  justify-content: center;
}
@media screen and (max-width: 1239px) {
  .course .sec_0 .box-wrap {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .course .sec_0 .box-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
.course .sec_0 .box-wrap .box a {
  display: block;
  border-style: solid;
  border-width: 2px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: bold;
  padding-top: 15px;
  background: #fff;
  text-align: center;
  height: 65px;
  transition: all 0.3s ease;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .course .sec_0 .box-wrap .box a {
    padding-top: 12px;
    height: 50px;
  }
}
.course .sec_0 .box-wrap .box a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 7px 0 7px;
  top: 0;
  bottom: 5px;
  left: 0;
  right: 0;
  margin: auto auto 0 auto;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .course .sec_0 .box-wrap .box a::after {
    border-width: 6px 12.5px 0 12.5px;
  }
}
.course .sec_0 .box-wrap .box a:hover {
  color: #fff !important;
}
.course .sec_0 .box-wrap .box a:hover::after {
  border-color: #fff transparent transparent transparent !important;
}
.course .sec_0 .box-wrap .box.box-pink a {
  border-color: #ff7f96;
  color: #ff7f96;
}
.course .sec_0 .box-wrap .box.box-pink a::after {
  border-color: #ff7f96 transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-pink a:hover {
  background: #ff7f96;
}
.course .sec_0 .box-wrap .box.box-green a {
  border-color: #98d44d;
  color: #98d44d;
}
.course .sec_0 .box-wrap .box.box-green a::after {
  border-color: #98d44d transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-green a:hover {
  background: #98d44d;
}
.course .sec_0 .box-wrap .box.box-blue a {
  border-color: #50bbe6;
  color: #50bbe6;
}
.course .sec_0 .box-wrap .box.box-blue a::after {
  border-color: #50bbe6 transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-blue a:hover {
  background: #50bbe6;
}
.course .sec_0 .box-wrap .box.box-orange a {
  border-color: #f09400;
  color: #f09400;
}
.course .sec_0 .box-wrap .box.box-orange a::after {
  border-color: #f09400 transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-orange a:hover {
  background: #f09400;
}
.course .sec_0 .box-wrap .box.box-brown a {
  border-color: #c49a6d;
  color: #c49a6d;
}
.course .sec_0 .box-wrap .box.box-brown a::after {
  border-color: #c49a6d transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-brown a:hover {
  background: #c49a6d;
}
.course .sec_0 .box-wrap .box.box-purple a {
  border-color: #a77bca;
  color: #a77bca;
}
.course .sec_0 .box-wrap .box.box-purple a::after {
  border-color: #a77bca transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-purple a:hover {
  background: #a77bca;
}
.course .sec_0 .box-wrap .box.box-gold a {
  border-color: #c2a93b;
  color: #c2a93b;
}
.course .sec_0 .box-wrap .box.box-gold a::after {
  border-color: #c2a93b transparent transparent transparent;
}
.course .sec_0 .box-wrap .box.box-gold a:hover {
  background: #c2a93b;
}
.course .box_course-wrap {
  max-width: 1000px;
  margin: auto;
}
.course .box_course-wrap .box_course-1 {
  background: #fff;
  border-radius: 8px;
  padding: 45px 50px 30px;
  margin-bottom: 35px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-1 {
    margin-bottom: 15px;
    padding: 15px 10px 10px;
  }
}
.course .box_course-wrap .box_course-1 .box-contents {
  width: calc(73.3333333333% - 35px);
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-1 .box-contents {
    width: 100%;
  }
}
.course .box_course-wrap .box_course-1 .box-contents h4 {
  font-size: 34px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
@media screen and (max-width: 991px) {
  .course .box_course-wrap .box_course-1 .box-contents h4 {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-1 .box-contents h4 {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 375px) {
  .course .box_course-wrap .box_course-1 .box-contents h4 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.course .box_course-wrap .box_course-1 .box-contents p {
  font-size: 20px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-1 .box-contents p {
    font-size: 14px;
  }
}
.course .box_course-wrap .box_course-1 figure {
  width: 26.6666666667%;
  margin: 0 0 auto auto;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-1 figure {
    display: none;
  }
}
.course .box_course-wrap .box_course-2, .course .box_course-wrap .box_course-2_1 {
  margin-bottom: 35px;
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-2, .course .box_course-wrap .box_course-2_1 {
    grid-template-columns: repeat(1, 1fr);
    gap: 15px;
  }
}
.course .box_course-wrap .box_course-2 dl, .course .box_course-wrap .box_course-2_1 dl {
  background: #fff;
  width: 100%;
  padding: 20px 15px;
  border-radius: 8px;
}
.course .box_course-wrap .box_course-2 dl dt, .course .box_course-wrap .box_course-2_1 dl dt {
  font-size: 22px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-2 dl dt, .course .box_course-wrap .box_course-2_1 dl dt {
    font-size: 16px;
  }
}
.course .box_course-wrap .box_course-2 dl dd, .course .box_course-wrap .box_course-2_1 dl dd {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .box_course-2 dl dd, .course .box_course-wrap .box_course-2_1 dl dd {
    font-size: 14px;
  }
}
.course .box_course-wrap .box_course-2_1 {
  display: block;
}
.course .box_course-wrap .btn_area {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 991px) {
  .course .box_course-wrap .btn_area {
    grid-template-columns: max-content max-content;
  }
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .btn_area {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
.course .box_course-wrap .btn_area a {
  width: 280px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 30px;
  color: #fff;
  font-size: 16px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .course .box_course-wrap .btn_area a {
    margin: auto;
    width: 90%;
    border-radius: 10px;
  }
}
@media screen and (max-width: 375px) {
  .course .box_course-wrap .btn_area a {
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}
.course .box_course-wrap .btn_area a::after {
  content: "";
  position: absolute;
  background-image: url("../images/common/arw_1.png");
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 21px;
  height: 20px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 1.3em;
  margin: auto 0 auto auto;
  transition: all 0.3s ease;
}
.course .box_course-wrap .btn_area a:hover {
  opacity: 0.6;
}
.course .box_course-wrap .btn_area a:hover::after {
  right: 0.8em;
}
.course .sec_1,
.course .sec_2,
.course .sec_3,
.course .sec_4,
.course .sec_5,
.course .sec_6,
.course .sec_7 {
  background: #ededed;
}

/******************************************
	コース ー ベビーコース ページ
******************************************/
.age1_baby .sec_h2_2 {
  background-image: url("../images/age1_baby/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age1_baby .sec_h2_2 .inner {
    background-image: url("../images/age1_baby/h2_bg_sp.png");
  }
}

/******************************************
	コース ー PRコース ページ
******************************************/
.age2_pr .sec_h2_2 {
  background-image: url("../images/age2_pr/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age2_pr .sec_h2_2 .inner {
    background-image: url("../images/age2_pr/h2_bg_sp.png");
  }
}

/******************************************
	コース ー プリスクールコース ページ
******************************************/
.age2_preschool .sec_h2_2 {
  background-image: url("../images/age2_preschool/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age2_preschool .sec_h2_2 .inner {
    background-image: url("../images/age2_preschool/h2_bg_sp.png");
  }
}
@media screen and (min-width: 992px) {
  .age2_preschool .sec_h2_2 p {
    width: 53%;
  }
}

/******************************************
	コース ー 幼児マスターコース ページ
******************************************/
.age3_master .sec_h2_2 {
  background-image: url("../images/age3_master/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age3_master .sec_h2_2 .inner {
    background-image: url("../images/age3_master/h2_bg_sp.png");
  }
}
@media screen and (min-width: 992px) {
  .age3_master .sec_h2_2 p {
    width: 70%;
  }
}

/******************************************
	コース ー 幼児レギュラーコース ページ
******************************************/
.age3_regular .sec_h2_2 {
  background-image: url("../images/age3_regular/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age3_regular .sec_h2_2 .inner {
    background-image: url("../images/age3_regular/h2_bg_sp.png");
  }
}
@media screen and (min-width: 992px) {
  .age3_regular .sec_h2_2 p {
    width: 68%;
  }
}

/******************************************
	コース ー 小学生マスターコース ページ
******************************************/
.age4_master .sec_h2_2 {
  background-image: url("../images/age4_master/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age4_master .sec_h2_2 .inner {
    background-image: url("../images/age4_master/h2_bg_sp.png");
  }
}
@media screen and (min-width: 991px) {
  .age4_master .sec_h2_2 p {
    width: 75%;
  }
}

/******************************************
	コース ー 小学生レギュラーコース ページ
******************************************/
.age4_regular .sec_h2_2 {
  background-image: url("../images/age4_regular/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age4_regular .sec_h2_2 .inner {
    background-image: url("../images/age4_regular/h2_bg_sp.png");
  }
}
@media screen and (min-width: 991px) {
  .age4_regular .sec_h2_2 p {
    width: 60%;
  }
}

/******************************************
	コース ー 英文法コース ページ
******************************************/
.age46_grammar .sec_h2_2 {
  background-image: url("../images/age46_grammar/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age46_grammar .sec_h2_2 .inner {
    background-image: url("../images/age46_grammar/h2_bg_sp.png");
  }
}

/******************************************
	コース ー 中学生・高校生会話コース ページ
******************************************/
.age6_conversation .sec_h2_2 {
  background-image: url("../images/age6_conversation/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age6_conversation .sec_h2_2 .inner {
    background-image: url("../images/age6_conversation/h2_bg_sp.png");
  }
}

/******************************************
	コース ー 帰国子女コース ページ
******************************************/
.age5_returnee .sec_h2_2 {
  background-image: url("../images/age5_returnee/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age5_returnee .sec_h2_2 .inner {
    background-image: url("../images/age5_returnee/h2_bg_sp.png");
  }
}

/******************************************
	コース ー 大人会話コース ページ
******************************************/
.age7_adultconversation .sec_h2_2 {
  background-image: url("../images/age7_adultconversation/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age7_adultconversation .sec_h2_2 .inner {
    background-image: url("../images/age7_adultconversation/h2_bg_sp.png");
  }
}

/******************************************
	コース ー 大人超初級コース ページ
******************************************/
.age7_adultbeginner .sec_h2_2 {
  background-image: url("../images/age7_adultbeginner/h2_bg.png");
}
@media screen and (max-width: 991px) {
  .age7_adultbeginner .sec_h2_2 .inner {
    background-image: url("../images/age7_adultbeginner/h2_bg_sp.png");
  }
}

/******************************************
	教室を探す ページ
******************************************/
.school .sec_h2 {
  background-image: url("../images/school/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .school .sec_h2 {
    background-image: url("../images/school/h2_bg_sp.png");
  }
}
.school .sec_1 .inner {
  max-width: 900px;
  margin: auto;
  overflow: visible;
}
.school .sec_1 .box-anc {
  margin-bottom: 40px;
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(7, 1fr);
  justify-content: center;
}
@media screen and (max-width: 1239px) {
  .school .sec_1 .box-anc {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .school .sec_1 .box-anc {
    margin-bottom: 30px;
    grid-template-columns: repeat(2, 1fr);
  }
}
.school .sec_1 .box-anc a {
  display: block;
  border-style: solid;
  border-width: 2px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: bold;
  padding-top: 15px;
  background: #ffd200;
  text-align: center;
  height: 60px;
  transition: all 0.3s ease;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .school .sec_1 .box-anc a {
    padding-top: 12px;
  }
}
.school .sec_1 .box-anc a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 7px 0 7px;
  top: 0;
  bottom: 5px;
  left: 0;
  right: 0;
  margin: auto auto 0 auto;
  z-index: -1;
  border-color: #000 transparent transparent transparent !important;
}
.school .sec_1 .box-anc a:hover {
  opacity: 0.6;
}
.school .sec_1 .box-wrap {
  display: grid;
  gap: 30px;
}
.school .sec_1 .box-wrap .box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  background: #fff;
  border-radius: 8px;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
  padding: 20px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .school .sec_1 .box-wrap .box {
    padding: 10px;
  }
}
.school .sec_1 .box-wrap .box figure {
  width: 17.8888888889%;
  margin: 0;
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box figure {
    display: none;
  }
}
.school .sec_1 .box-wrap .box .box-contents {
  width: 82.1111111111%;
  padding-left: 5.5555555556%;
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box .box-contents {
    width: 100%;
    padding-left: 0;
    display: flex;
    flex-flow: row wrap;
  }
}
.school .sec_1 .box-wrap .box .box-contents figure {
  display: none;
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box .box-contents figure {
    display: block;
    order: 1;
    width: 21.4666666667%;
    margin-right: 20px;
    float: left;
  }
}
.school .sec_1 .box-wrap .box h4 {
  font-size: 18px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 10px;
}
@media screen and (max-width: 991px) {
  .school .sec_1 .box-wrap .box h4 {
    font-size: 16px;
  }
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box h4 {
    order: 2;
    font-size: 16px;
    width: calc(78.5333333333% - 20px);
    margin-bottom: 5vw;
    line-height: 1.2;
  }
}
@media screen and (max-width: 350px) {
  .school .sec_1 .box-wrap .box h4 {
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}
.school .sec_1 .box-wrap .box dl {
  padding: 10px 0;
  border-top: 2px dotted #c7c7c7;
  font-size: 14px;
  line-height: 1.5;
  display: grid;
  gap: 10px 1em;
  grid-template-columns: max-content 1fr;
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box dl {
    order: 4;
    width: 100%;
  }
}
.school .sec_1 .box-wrap .box dl:first-of-type {
  border-top: none;
}
.school .sec_1 .box-wrap .box dl dt {
  vertical-align: middle;
  margin-bottom: 0;
}
.school .sec_1 .box-wrap .box dl dt:last-of-type {
  padding-top: 0.25em;
}
.school .sec_1 .box-wrap .box dl dd {
  vertical-align: middle;
  margin-bottom: 0;
}
.school .sec_1 .box-wrap .box dl dd a.tel_link {
  font-size: 18px;
  font-weight: bold;
}
.school .sec_1 .box-wrap .box a.link-school {
  margin-top: 10px;
  width: 170px;
  height: 30px;
  background: #ffd700;
  border-radius: 15px;
  font-size: 14px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 575px) {
  .school .sec_1 .box-wrap .box a.link-school {
    order: 3;
    width: 100%;
    border-radius: 8px;
    width: calc(78.5333333333% - 20px);
    margin: -30px 0 0 auto;
  }
}
.school .sec_1 .box-wrap .box a.link-school::after {
  content: "≫";
  position: absolute;
  width: 1em;
  height: 1em;
  top: 0;
  bottom: 1px;
  left: 0;
  right: 2em;
  margin: auto 0 auto auto;
  z-index: -1;
  transition: all 0.3s ease;
}
.school .sec_1 .box-wrap .box a.link-school:hover::after {
  right: 1.5em;
}

/******************************************
	スクールイベント ページ
******************************************/
.events .sec_h2 {
  background-image: url("../images/events/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .events .sec_h2 {
    background-image: url("../images/events/h2_bg_sp.png");
  }
}
.events .sec_1 {
  padding-top: 40px;
}
@media screen and (max-width: 991px) {
  .events .sec_1 {
    padding-top: 20px;
  }
}
.events .sec_1 .inner {
  max-width: 1040px;
}
.events .sec_1 .inner > p {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) {
  .events .sec_1 .inner > p {
    font-size: 14px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 350px) {
  .events .sec_1 .inner > p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.events .sec_1 h3 {
  margin-bottom: 0;
}
.events .sec_1 .box_1-wrap {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_1-wrap {
    margin-bottom: 20px;
  }
}
.events .sec_1 .box_1-wrap .box-inner {
  background: #fff;
  padding: 10px 20px 15px;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 991px) {
  .events .sec_1 .box_1-wrap .box-inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_1-wrap .box-inner {
    padding: 0 20px;
    grid-template-columns: repeat(1, 1fr);
  }
}
.events .sec_1 .box_1-wrap .box-inner .box {
  padding: 15px 10px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  border-top: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_1-wrap .box-inner .box {
    padding: 15px 0;
    border-right: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 991px) {
  .events .sec_1 .box_1-wrap .box-inner .box:nth-child(-n+2) {
    border-top: none;
  }
  .events .sec_1 .box_1-wrap .box-inner .box:nth-child(even) {
    border-right: none;
  }
}
@media screen and (min-width: 992px) {
  .events .sec_1 .box_1-wrap .box-inner .box:nth-child(-n+3) {
    border-top: none;
  }
  .events .sec_1 .box_1-wrap .box-inner .box:nth-child(3n) {
    border-right: none;
  }
}
.events .sec_1 .box_1-wrap .box-inner .box .box-contents {
  width: calc(68.6666666667% - 10px);
}
.events .sec_1 .box_1-wrap .box-inner .box figure {
  width: 31.3333333333%;
  margin: 0;
}
.events .sec_1 .box_1-wrap .box-inner .box h4 {
  width: 100%;
  font-size: 18px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 5px;
}
.events .sec_1 .box_1-wrap .box-inner .box h4 > span {
  margin-right: 1em;
}
.events .sec_1 .box_1-wrap .box-inner .box h4 > span span {
  font-size: 24px;
}
.events .sec_1 .box_1-wrap .box-inner .box ul {
  margin-bottom: 0;
}
.events .sec_1 .box_1-wrap .box-inner .box ul li {
  font-size: 13px;
  padding-left: 1em;
  text-indent: -1em;
  margin-bottom: 0;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_1-wrap .box-inner .box ul li {
    font-size: 14px;
  }
}
.events .sec_1 .box_1-wrap .box-inner .box p {
  font-size: 13px;
}
.events .sec_1 .box_1-wrap > p {
  font-size: 12px;
  text-align: right;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_1-wrap > p {
    display: none;
  }
}
.events .sec_1 .box_2-wrap {
  max-width: 900px;
  margin: auto;
  display: grid;
  gap: 40px;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_2-wrap {
    gap: 20px;
  }
}
.events .sec_1 .box_2-wrap .box {
  background: #fff;
  border-radius: 8px;
  padding: 20px 35px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_2-wrap .box {
    flex-direction: column;
    padding: 10px;
  }
}
.events .sec_1 .box_2-wrap .box .box-contents {
  width: calc(49.7674418605% - 20px);
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_2-wrap .box .box-contents {
    width: 100%;
    margin-bottom: 10px;
  }
}
.events .sec_1 .box_2-wrap .box figure {
  width: 50.2325581395%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .events .sec_1 .box_2-wrap .box figure {
    width: 100%;
  }
}
.events .sec_1 .box_2-wrap h4 {
  font-size: 22px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  border-bottom: 1px solid #ffeb00;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
@media screen and (max-width: 991px) {
  .events .sec_1 .box_2-wrap h4 {
    font-size: 18px;
    margin-bottom: 5px;
    padding-bottom: 5px;
  }
}
.events .sec_1 .box_2-wrap p {
  font-size: 14px;
  line-height: 1.5;
}

/******************************************
	バス送迎について ページ
******************************************/
.bus .sec_h2 {
  background-image: url("../images/bus/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .bus .sec_h2 {
    background-image: url("../images/bus/h2_bg_sp.png");
  }
}
.bus .sec_1 .inner {
  max-width: 940px;
}
.bus .sec_1 .inner > p {
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .bus .sec_1 .inner > p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .bus .sec_1 .inner > p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.bus .sec_1 figure {
  margin-bottom: 60px;
}
@media screen and (max-width: 991px) {
  .bus .sec_1 figure {
    margin-bottom: 30px;
  }
}
.bus .sec_1 h5 {
  font-size: 34px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) {
  .bus .sec_1 h5 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .bus .sec_1 h5 {
    margin-bottom: 15px;
  }
}
.bus .sec_1 h5 span {
  display: block;
  font-size: 14px;
  font-weight: normal;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
.bus .sec_1 dl {
  max-width: 800px;
  width: 100%;
  margin: auto auto 35px;
}
@media screen and (max-width: 767px) {
  .bus .sec_1 dl {
    margin-bottom: 20px;
  }
}
.bus .sec_1 dl dt {
  font-size: 18px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 991px) {
  .bus .sec_1 dl dt {
    font-size: 16px;
    font-size: 1.614530777vw;
  }
}
@media screen and (max-width: 767px) {
  .bus .sec_1 dl dt {
    font-size: 16px;
    font-size: 2.0860495437vw;
  }
}
@media screen and (max-width: 575px) {
  .bus .sec_1 dl dt {
    font-size: 16px;
  }
}
@media screen and (max-width: 350px) {
  .bus .sec_1 dl dt {
    font-size: 16px;
    font-size: 4.2666666667vw;
  }
}
.bus .sec_1 dl dd {
  font-size: 13px;
  border-bottom: 1px dashed #adadad;
  margin-bottom: 1em;
  padding-bottom: 1em;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .bus .sec_1 dl dd {
    font-size: 13px;
    font-size: 1.3118062563vw;
  }
}
@media screen and (max-width: 767px) {
  .bus .sec_1 dl dd {
    font-size: 13px;
    font-size: 1.6949152542vw;
  }
}
@media screen and (max-width: 575px) {
  .bus .sec_1 dl dd {
    font-size: 13px;
  }
}
@media screen and (max-width: 350px) {
  .bus .sec_1 dl dd {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
.bus .sec_1 dl dd:last-of-type {
  border-bottom: none;
  margin-bottom: 0;
}
@media screen and (max-width: 480px) {
  .bus .sec_1 dl dd span.sp_only {
    display: inline !important;
  }
}
.bus .sec_1 dl p {
  font-size: 12px;
}

/******************************************
	幼稚園・保育園への講師派遣 ページ
******************************************/
.kindergarten .sec_h2 {
  background-image: url("../images/kindergarten/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_h2 {
    background-image: url("../images/kindergarten/h2_bg_sp.png");
  }
  .kindergarten .sec_h2 h2::before {
    bottom: 0.7em !important;
  }
}
.kindergarten .sec_1 h3 {
  font-size: 26px;
  line-height: 1.5;
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_1 h3 {
    font-size: 16px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_1 figure {
    width: 100%;
  }
}
.kindergarten .sec_1 h4 {
  font-size: 28px;
  line-height: 1.5;
  font-weight: 700;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_1 h4 {
    font-size: 16px;
    text-align: center;
  }
}
.kindergarten .sec_1 p {
  font-weight: 16px;
}
.kindergarten .sec_2 .box-wrap {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_2 .box-wrap {
    flex-direction: column;
  }
}
.kindergarten .sec_2 .box-wrap .box {
  max-width: 320px;
}
@media screen and (max-width: 1049px) {
  .kindergarten .sec_2 .box-wrap .box {
    width: 29.0909090909%;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_2 .box-wrap .box {
    max-width: 100%;
    width: 100%;
    margin-bottom: 35px;
  }
  .kindergarten .sec_2 .box-wrap .box:last-child {
    margin-bottom: 0;
  }
}
.kindergarten .sec_2 figure {
  margin-bottom: 20px;
}
.kindergarten .sec_2 h5 {
  text-align: center;
  margin-bottom: 20px;
}
.kindergarten .sec_2 h4 {
  font-size: 21px;
  font-weight: 700;
  text-align: center;
  text-decoration: underline;
  text-decoration-color: #f6e821;
  text-decoration-thickness: 8px;
  text-underline-offset: -4px;
  text-underline-position: under;
  text-decoration-skip-ink: none;
  margin-bottom: 20px;
}
@media screen and (max-width: 1049px) {
  .kindergarten .sec_2 h4 {
    font-size: 20px;
    font-size: 1.8885741265vw;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_2 h4 {
    font-size: 20px;
  }
}
.kindergarten .sec_2 p {
  font-size: 14px;
}
.kindergarten .sec_2 p span {
  font-weight: bold;
  color: #bb272d;
}
.kindergarten .sec_3 .inner {
  max-width: 940px;
}
.kindergarten .sec_3 .box:first-of-type {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 .box:first-of-type {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
    margin-bottom: 40px;
  }
}
.kindergarten .sec_3 .box:last-of-type {
  display: grid;
  gap: 35px;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 .box:last-of-type {
    grid-template-columns: repeat(1, 1fr);
    gap: 25px;
  }
}
.kindergarten .sec_3 .box:last-of-type dt {
  height: 85px;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 .box:last-of-type dt {
    height: auto;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 dl {
    margin-bottom: 0;
  }
}
.kindergarten .sec_3 dl dt {
  font-size: 20px;
  line-height: 1.3;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  width: 100%;
  height: 70px;
  background-color: #ffd100;
  padding: 20px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_3 dl dt {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 dl dt {
    height: auto;
    padding: 10px;
    margin-bottom: 15px;
  }
}
.kindergarten .sec_3 dl dt::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 17.5px 0 17.5px;
  border-color: #ffd000 transparent transparent transparent;
  top: 0;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto auto 0 auto;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 dl dt::after {
    border-width: 15px 20px 0 20px;
    bottom: -10px;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_3 dl dt br {
    display: none;
  }
}
.kindergarten .sec_3 dl dd {
  font-size: 14px;
  line-height: 1.5;
}
.kindergarten .sec_4 .inner {
  max-width: 900px;
  overflow: visible;
  position: relative;
  z-index: 0;
}
.kindergarten .sec_4 .inner::before {
  content: "";
  position: absolute;
  background-image: url("../images/kindergarten/kindergarten_sec4_bg.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 185px;
  height: 114px;
  top: 0;
  bottom: 0;
  left: -225px;
  right: 0;
  margin: 0 auto auto 0;
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_4 figure {
    width: 100%;
  }
}
.kindergarten .sec_4 h4 {
  font-size: 28px;
  line-height: 1.5;
  font-family: "M PLUS Rounded 1c", sans-serif;
  border-bottom: 2px solid #ffeb00;
  padding-bottom: 0.7em;
  margin-bottom: 1em;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_4 h4 {
    font-size: 20px;
  }
}
.kindergarten .sec_4 p {
  font-size: 14px;
}
.kindergarten .sec_6 .inner {
  max-width: 1040px;
}
.kindergarten .sec_6 .box {
  background: #fff;
  border-radius: 8px;
  padding: 60px 100px;
}
@media screen and (max-width: 1019px) {
  .kindergarten .sec_6 .box {
    padding: 60px 10%;
  }
}
@media screen and (max-width: 767px) {
  .kindergarten .sec_6 .box {
    padding: 20px 15px;
  }
}
.kindergarten .sec_6 .box > p {
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_6 .box > p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .kindergarten .sec_6 .box > p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.kindergarten .sec_6 .box > p.tel a {
  font-size: 30px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  letter-spacing: 0.6px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 350px) {
  .kindergarten .sec_6 .box > p.tel a {
    font-size: 30px;
    font-size: 8vw;
  }
}
.kindergarten .sec_6 .box > p.tel a::before {
  content: "";
  display: inline-block;
  background-image: url("../images/common/ico_tel@2x.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  vertical-align: middle;
  width: 22.5px;
  height: 22.5px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto 0.3em auto auto;
  z-index: -1;
}
.kindergarten .sec_6 .box .box-instagram {
  border-top: 1px solid #c6c6c6;
  margin-top: 20px;
  padding-top: 20px;
}
.kindergarten .sec_6 .box .box-instagram figure {
  width: 146px;
}
.kindergarten .sec_6 .box .box-instagram p {
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .kindergarten .sec_6 .box .box-instagram p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .kindergarten .sec_6 .box .box-instagram p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}

/******************************************
	英検・英検Jr.対策 ページ
******************************************/
.eiken {
  /* 20240409 追記 */
}
.eiken .sec_h2 {
  background-image: url("../images/eiken/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .eiken .sec_h2 {
    background-image: url("../images/eiken/h2_bg_sp.png");
  }
}
.eiken .sec_1 p {
  font-size: 30px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .eiken .sec_1 p {
    font-size: 20px;
  }
}
@media screen and (max-width: 575px) {
  .eiken .sec_1 p {
    font-size: 19px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_1 p {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.eiken .sec_1 p span.large {
  font-size: 40px;
}
@media screen and (max-width: 991px) {
  .eiken .sec_1 p span.large {
    font-size: 30px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_1 p span.large {
    font-size: 30px;
    font-size: 8vw;
  }
}
.eiken .sec_1 p span.small {
  font-size: 16px;
  font-weight: normal;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  display: block;
  margin: 1em auto -2em;
}
@media screen and (max-width: 991px) {
  .eiken .sec_1 p span.small {
    font-size: 14px;
    margin-bottom: -1em;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_1 p span.small {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.eiken .sec_1 p span.t_line {
  text-decoration: underline;
  text-decoration-color: #f6e821;
  text-decoration-thickness: 8px;
  text-underline-offset: -4px;
  text-underline-position: under;
  text-decoration-skip-ink: none;
}
.eiken .sec_1 p span.pc_only {
  display: inline !important;
}
@media screen and (max-width: 991px) {
  .eiken .sec_1 p br.br_tab {
    display: block !important;
  }
}
.eiken .sec_2 {
  padding-bottom: 0;
}
.eiken .sec_2 .inner {
  max-width: 940px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  .eiken .sec_2 .inner {
    padding-top: 3%;
    padding-bottom: 3%;
  }
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .inner {
    padding-top: 7%;
    padding-bottom: 7%;
  }
}
.eiken .sec_2 .h3_2 {
  margin-bottom: 0;
}
.eiken .sec_2 h4 {
  font-size: 30px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 35px;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 h4 {
    font-size: 19px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_2 h4 {
    font-size: 19px;
    font-size: 5.0666666667vw;
  }
}
.eiken .sec_2 .box_1 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
.eiken .sec_2 .box_1 p {
  width: 47.7777777778%;
  font-size: 16px;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_1 p {
    width: 100%;
    font-size: 14px;
    margin-bottom: 1em;
  }
}
.eiken .sec_2 .box_1 figure {
  width: 44.4444444444%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_1 figure {
    width: 100%;
  }
}
.eiken .sec_2 .box_2 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.eiken .sec_2 .box_2 figure {
  width: 31.2222222222%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_2 figure {
    width: 47.2058823529%;
  }
  .eiken .sec_2 .box_2 figure:last-child {
    margin: auto;
  }
}
.eiken .sec_2 .box_3 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_3 {
    display: grid;
    gap: 0.6em;
    grid-template-columns: repeat(2, 1fr);
  }
}
.eiken .sec_2 .box_3 .items {
  width: 22.6666666667%;
  background: #fff;
  border-radius: 15px;
  padding: 1.5em 1em 1em;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_3 .items {
    width: 100%;
  }
}
.eiken .sec_2 .box_3 .items figure {
  margin-bottom: 0.7em;
}
.eiken .sec_2 .box_3 .items p {
  font-size: 14px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box_3 .items p {
    font-size: 11px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_2 .box_3 .items p {
    font-size: 10px;
    font-size: 2.6666666667vw;
  }
}
.eiken .sec_2 .box_4 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_4 {
    display: grid;
    gap: 15px;
    grid-template-columns: 1fr;
  }
}
.eiken .sec_2 .box_4 .items {
  width: 33.3333333333%;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_4 .items {
    width: 100%;
    background: #fff;
    border-radius: 8px;
    padding: 10px;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
  }
}
.eiken .sec_2 .box_4 figure {
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_4 figure {
    width: 21.7647058824%;
    margin: 0;
  }
}
.eiken .sec_2 .box_4 p {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_4 p {
    width: calc(78.2352941176% - 1em);
    font-size: 24px;
    font-weight: normal;
    text-align: left;
    line-height: 1.3;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_2 .box_4 p {
    font-size: 24px;
    font-size: 6.4vw;
  }
}
.eiken .sec_2 .box_4 p span {
  display: none;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_4 p span {
    display: inline;
  }
}
.eiken .sec_2 .box_5 {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_5 {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .eiken .sec_2 .box_5 .items {
    width: 31.1111111111%;
    border: 4px dotted #ffd000;
    border-radius: 10px;
    padding: 25px 15px 15px;
  }
}
@media screen and (max-width: 767px) {
  .eiken .sec_2 .box_5 .items {
    width: 100%;
    border-bottom: 2px dotted #dfdfdf;
    padding: 1em;
  }
  .eiken .sec_2 .box_5 .items:first-child {
    padding-top: 0;
  }
  .eiken .sec_2 .box_5 .items:last-child {
    border-bottom: none;
  }
}
.eiken .sec_2 .box_5 .items dl dt {
  font-size: 28px;
  line-height: 1.2;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 20px;
  height: 66px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
.eiken .sec_2 .box_5 .items dl dt::before {
  content: "";
  position: absolute;
  background-color: #ffd000;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto auto auto auto;
  z-index: -1;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box_5 .items dl dt {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_2 .box_5 .items dl dt {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.eiken .sec_2 .box_5 .items dl dd {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box_5 .items dl dd {
    font-size: 14px;
  }
}
.eiken .sec_2 .box_5 + p {
  margin-top: 30px;
}
.eiken .sec_2 .contents-center {
  text-align: center;
}
.eiken .sec_2 .contents-center ol {
  display: inline-block;
}
.eiken .sec_2 .contents-center ol li {
  font-size: 26px;
  line-height: 1.5;
  margin-bottom: 5px;
  text-align: left;
  padding-left: 1.2em;
  text-indent: -1em;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .contents-center ol li {
    font-size: 15px;
  }
}
.eiken .sec_2 .contents-center ol li:last-child {
  margin-bottom: 0;
}
.eiken .sec_2 .box-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 25px;
  margin-top: 69px;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box-grid-2 {
    margin-top: 46px;
  }
}
@media screen and (max-width: 575px) {
  .eiken .sec_2 .box-grid-2 {
    grid-template-columns: 1fr;
    gap: 45px;
    margin-top: 46px;
  }
}
.eiken .sec_2 .box-grid-2 .items {
  border: 4px dotted #ffd000;
  border-radius: 10px;
  padding: 75px 35px 25px;
  position: relative;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box-grid-2 .items {
    padding: 40px 15px 25px;
  }
}
.eiken .sec_2 .box-grid-2 .items h5 {
  position: absolute;
  top: -34px;
  left: 0;
  right: 0;
  max-width: 345px;
  width: 100%;
  height: 68px;
  margin: auto;
  display: grid;
  place-content: center;
  background: #ffd000;
  border-radius: 33px;
  font-weight: bold;
  font-size: 26px;
  color: #ffffff;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box-grid-2 .items h5 {
    width: 90%;
    height: 50px;
    font-size: 18px;
    top: -26px;
  }
}
.eiken .sec_2 .box-grid-2 .items dl dt {
  font-size: 28px;
  line-height: 1.2;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box-grid-2 .items dl dt {
    font-size: 20px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 350px) {
  .eiken .sec_2 .box-grid-2 .items dl dt {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.eiken .sec_2 .box-grid-2 .items dl dd {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .box-grid-2 .items dl dd {
    font-size: 14px;
  }
}
.eiken .sec_2 .btn {
  max-width: 550px;
  width: 100%;
  height: 68px;
  margin: 30px auto auto;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .btn {
    height: 50px;
  }
}
.eiken .sec_2 .btn a {
  width: 100%;
  height: 100%;
  display: grid;
  place-content: center;
  background: #009fde;
  border: 2px solid #009fde;
  border-radius: 34px;
  font-size: 30px;
  color: #ffffff;
  transition: 0.3s all ease;
}
@media screen and (max-width: 991px) {
  .eiken .sec_2 .btn a {
    font-size: 20px;
  }
}
.eiken .sec_2 .btn a:hover {
  color: #009fde;
  background: #fff;
}
.eiken .sec_2 a.link {
  color: #009fde;
  text-decoration: underline;
}
.eiken .sec_2 a.link:hover {
  text-decoration: none;
}
.eiken .sec_3 .inner {
  max-width: 940px;
}
.eiken .sec_3 .box {
  display: flex;
  justify-content: space-between;
  flex-direction: column-reverse;
  flex-flow: row wrap;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .eiken .sec_3 .box {
    flex-direction: column;
  }
}
.eiken .sec_3 .box .box_l {
  width: 36.6666666667%;
}
@media screen and (max-width: 767px) {
  .eiken .sec_3 .box .box_l {
    width: 100%;
  }
}
.eiken .sec_3 .box .box_r {
  width: 55.5555555556%;
}
@media screen and (max-width: 767px) {
  .eiken .sec_3 .box .box_r {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .eiken .sec_3 dl {
    margin-bottom: 50px;
  }
}
.eiken .sec_3 dl dt {
  font-size: 28px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  border-bottom: 2px solid #ffea00;
  padding-bottom: 0;
  margin-bottom: 0.3em;
}
@media screen and (max-width: 991px) {
  .eiken .sec_3 dl dt {
    font-size: 20px;
  }
}
.eiken .sec_3 dl dd {
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 40px;
}
.eiken .sec_3 dl dd:last-of-type {
  margin-bottom: 0;
}
.eiken .sec_3 dl dd p {
  font-size: 14px;
  line-height: 1.5;
}
.eiken .sec_success-voice .box-wrap {
  display: grid;
  gap: 60px;
}
@media screen and (max-width: 767px) {
  .eiken .sec_success-voice .box-wrap {
    gap: 40px;
  }
}
.eiken .sec_success-voice .box-wrap .box {
  display: grid;
  grid-template-columns: 225px 1fr;
  gap: 27px;
}
@media screen and (max-width: 575px) {
  .eiken .sec_success-voice .box-wrap .box {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.eiken .sec_success-voice .box-wrap figure {
  margin-bottom: 0;
}
.eiken .sec_success-voice .box-wrap .box-r {
  display: grid;
  gap: 30px;
}
.eiken .sec_success-voice .box-wrap .box-r h4 {
  font-weight: bold;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .eiken .sec_success-voice .box-wrap .box-r h4 {
    font-size: 14px;
  }
}
.eiken .sec_success-voice .box-wrap .box-r p {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .eiken .sec_success-voice .box-wrap .box-r p {
    font-size: 14px;
  }
}

/******************************************
	お客様の声 ページ
******************************************/
.user .sec_h2 {
  background-image: url("../images/user/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .user .sec_h2 {
    background-image: url("../images/user/h2_bg_sp.png");
  }
}
.user .sec_1 {
  padding-top: 0;
}
.user .sec_1 .inner {
  max-width: 1040px;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (max-width: 1024px) {
  .user .sec_1 .inner {
    padding-top: 3%;
    padding-bottom: 3%;
  }
}
@media screen and (max-width: 767px) {
  .user .sec_1 .inner {
    padding-top: 5%;
    padding-bottom: 5%;
  }
}
@media screen and (max-width: 767px) {
  .user .sec_1 .block-white {
    background: none;
  }
}
.user .sec_1 .block-white p {
  font-size: 26px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .user .sec_1 .block-white p {
    font-size: 15px;
  }
}
@media screen and (max-width: 350px) {
  .user .sec_1 .block-white p {
    font-size: 15px;
    font-size: 4vw;
  }
}
.user .sec_1 .box {
  background: #fff;
  border-radius: 8px;
  padding: 0 5%;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box {
    padding: 0 15px;
  }
}
.user .sec_1 .box article {
  padding: 35px 0;
  border-bottom: 1px dotted #adadad;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  clear: both;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article {
    padding: 25px 0;
  }
}
.user .sec_1 .box article:last-child {
  border-bottom: none;
}
.user .sec_1 .box article > figure {
  width: 29.1111111111%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article > figure {
    display: none;
  }
}
.user .sec_1 .box article .box-contents {
  width: 62%;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article .box-contents {
    width: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
  }
}
.user .sec_1 .box article .box-contents figure {
  display: none;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article .box-contents figure {
    display: block;
    width: 50%;
    margin: 0 0 0.5em;
  }
}
.user .sec_1 .box article h4 {
  font-size: 24px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article h4 {
    width: 50%;
    font-size: 18px;
    text-align: center;
    padding-left: 15px;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 350px) {
  .user .sec_1 .box article h4 {
    font-size: 18px;
    font-size: 4.8vw;
  }
}
.user .sec_1 .box article h4 span.sub {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 120px;
  height: 26px;
  padding: 0.2em 0.5em 0;
  background: #ffd100;
  border-radius: 30px;
  font-size: 16px;
  margin-bottom: 3px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article h4 span.sub {
    width: 110px;
    font-size: 12px;
    margin: auto auto 5px;
    border-radius: 8px;
  }
}
@media screen and (min-width: 480px) {
  .user .sec_1 .box article h4 span.pc_only {
    display: inline !important;
  }
}
@media screen and (max-width: 575px) {
  .user .sec_1 .box article h4 span.sp_small {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .user .sec_1 .box article h4 span.sp_small {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .user .sec_1 .box article dl {
    width: 100%;
  }
}
.user .sec_1 .box article dl dt {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
}
@media screen and (max-width: 991px) {
  .user .sec_1 .box article dl dt {
    font-size: 16px;
  }
}
.user .sec_1 .box article dl dd {
  font-size: 16px;
  line-height: 1.5;
  margin-bottom: 1.5em;
}
@media screen and (max-width: 991px) {
  .user .sec_1 .box article dl dd {
    font-size: 14px;
  }
}
.user .sec_1 .box article dl dd:last-of-type {
  margin-bottom: 0;
}

/******************************************
	求人案内 ページ
******************************************/
.recruit .sec_h2 {
  background-image: url("../images/recruit/h2_bg.png");
}
@media screen and (max-width: 767px) {
  .recruit .sec_h2 {
    background-image: url("../images/recruit/h2_bg_sp.png");
  }
}
.recruit .sec_1 h4 {
  font-size: 26px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 1em;
}
@media screen and (max-width: 991px) {
  .recruit .sec_1 h4 {
    font-size: 20px;
  }
}
@media screen and (max-width: 350px) {
  .recruit .sec_1 h4 {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.recruit .sec_1 p {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .recruit .sec_1 p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .recruit .sec_1 p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.recruit .sec_2 .inner > p {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .recruit .sec_2 .inner > p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .recruit .sec_2 .inner > p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.recruit .sec_2 .inner > p span {
  font-size: 14px;
}
@media screen and (max-width: 350px) {
  .recruit .sec_2 .inner > p span {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.recruit .sec_2 .box-wrap {
  max-width: 900px;
  width: 100%;
  margin: auto;
}
.recruit .sec_2 .box-wrap .box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  border-bottom: 1px dotted #acacac;
  padding-top: 30px;
  padding-bottom: 25px;
}
.recruit .sec_2 .box-wrap .box:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .recruit .sec_2 .box-wrap .box {
    flex-direction: column;
  }
  .recruit .sec_2 .box-wrap .box:first-child {
    padding-top: 0;
  }
}
.recruit .sec_2 .box-wrap .box figure {
  width: 38.5555555556%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .recruit .sec_2 .box-wrap .box figure {
    width: 100%;
    margin-bottom: 15px;
  }
}
.recruit .sec_2 .box-wrap .box .box-contents {
  width: 54.7777777778%;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .recruit .sec_2 .box-wrap .box .box-contents {
    width: 100%;
  }
}
.recruit .sec_2 .box-wrap .box .box-contents h4 {
  font-size: 24px;
  line-height: 1.3;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 991px) {
  .recruit .sec_2 .box-wrap .box .box-contents h4 {
    font-size: 16px;
  }
}
.recruit .sec_2 .box-wrap .box .box-contents p {
  font-size: 16px;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .recruit .sec_2 .box-wrap .box .box-contents p {
    font-size: 14px;
  }
}
.recruit .sec_2 .box-wrap .box .box-contents a {
  margin-top: auto;
  margin-left: 0;
  padding-right: 0;
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  .recruit .sec_2 .box-wrap .box .box-contents a {
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .recruit .sec_2 .box-wrap .box .box-contents a {
    border-radius: 10px;
  }
}
.recruit .sec_3 p {
  font-size: 18px;
  text-align: center;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  .recruit .sec_3 p {
    font-size: 14px;
  }
}
.recruit .sec_3 dl {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.recruit .sec_4 .inner > p {
  font-size: 18px;
  text-align: center;
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .inner > p {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .recruit .sec_4 .inner > p {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
@media screen and (max-width: 350px) {
  .recruit .sec_4 h4 {
    font-size: 18px;
    font-size: 4.8vw;
  }
}
.recruit .sec_4 .box-wrap {
  margin-top: 60px;
  display: grid;
  gap: 45px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap {
    margin-top: 50px;
    grid-template-columns: repeat(1, 1fr);
    gap: 100px;
  }
}
.recruit .sec_4 .box-wrap .box {
  position: relative;
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap .box {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 575px) {
  .recruit .sec_4 .box-wrap .box {
    max-width: 90%;
  }
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap .box::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 22px 0 22px;
    border-color: #333333 transparent transparent transparent;
    top: 0;
    bottom: -55px;
    left: 0;
    right: 0;
    margin: auto auto 0 auto;
  }
}
.recruit .sec_4 .box-wrap .box:last-child::after {
  content: none;
}
.recruit .sec_4 .box-wrap .box:last-child figure::after {
  content: none;
}
.recruit .sec_4 .box-wrap .box figure {
  margin: 0 0 15px;
  padding: 0 10px;
  position: relative;
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap .box figure {
    width: 220px;
    margin-left: auto;
    margin-right: auto;
  }
}
.recruit .sec_4 .box-wrap .box figure::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 22px 0 22px 24px;
  border-color: transparent transparent transparent #333333;
  top: 0;
  bottom: 0;
  left: 0;
  right: -37px;
  margin: auto 0 auto auto;
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap .box figure::after {
    content: none;
  }
}
.recruit .sec_4 .box-wrap .box figure span {
  position: absolute;
  top: -20px;
  left: -10px;
  width: 24.5833333333%;
}
.recruit .sec_4 .box-wrap .box dl dt {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 20px;
  height: 2em;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
@media screen and (max-width: 1139px) {
  .recruit .sec_4 .box-wrap .box dl dt {
    font-size: 19px;
    font-size: 1.6681299385vw;
  }
}
@media screen and (max-width: 991px) {
  .recruit .sec_4 .box-wrap .box dl dt {
    font-size: 20px;
    height: auto;
    margin-bottom: 15px;
  }
}
.recruit .sec_4 .box-wrap .box dl dd {
  font-size: 14px;
}
.recruit .sec_5 .inner {
  max-width: 1140px;
}
.recruit .sec_5 dl {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

/******************************************
	よくあるご質問 ページ
******************************************/
.qa .faq h4 {
  font-size: 28px;
  line-height: 1.5;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 991px) {
  .qa .faq h4 {
    font-size: 20px;
    margin-bottom: 20px;
  }
}

/******************************************
	サイトマップ ページ
******************************************/
.sitemap .sec_1 .inner {
  max-width: 1040px;
}
.sitemap .sec_1 .box {
  padding: 40px 100px;
  background: #fff;
  border-radius: 8px;
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box {
    padding: 30px 15px;
  }
}
.sitemap .sec_1 .box > dl {
  margin-bottom: 50px;
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl {
    margin-bottom: 1.5em;
    padding-bottom: 1.5em;
    border-bottom: 1px solid #e0e0e0;
  }
}
.sitemap .sec_1 .box > dl:nth-child(4) div {
  display: grid;
  gap: 0 30px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl:nth-child(4) div {
    grid-template-columns: repeat(3, 1fr);
    gap: 0 1em;
    margin-top: 1em;
  }
}
.sitemap .sec_1 .box > dl:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl:last-child {
    padding-bottom: 0;
    border-bottom: none;
  }
}
.sitemap .sec_1 .box > dl > dt {
  font-size: 26px;
  line-height: 1.5;
  border-bottom: 1px solid #e0e0e0;
  margin-bottom: 15px;
  padding-bottom: 10px;
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl > dt {
    font-size: 20px;
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 350px) {
  .sitemap .sec_1 .box > dl > dt {
    font-size: 20px;
    font-size: 5.3333333333vw;
  }
}
.sitemap .sec_1 .box > dl > dt:first-child + dd {
  margin-top: 1em;
}
.sitemap .sec_1 .box > dl dd {
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 350px) {
  .sitemap .sec_1 .box > dl dd {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.sitemap .sec_1 .box > dl dd span {
  color: #ffd100;
}
.sitemap .sec_1 .box > dl dd dl div {
  display: grid;
  gap: 30px;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box > dl dd dl div {
    gap: 0;
    grid-template-columns: repeat(1, 1fr);
  }
}
@media screen and (max-width: 991px) {
  .sitemap .sec_1 .box a {
    display: block;
  }
}
.sitemap .sec_1 .box a:hover {
  text-decoration: underline;
}

/******************************************
	個人情報保護方針 ページ
******************************************/
.privacy .sec_1 .inner {
  max-width: 1040px;
}
.privacy .sec_1 .inner .box {
  background: #fff;
  padding: 40px 100px;
  border-radius: 8px;
}
@media screen and (max-width: 991px) {
  .privacy .sec_1 .inner .box {
    padding: 30px 15px;
  }
}
.privacy .sec_1 .inner .box > p {
  font-size: 14px;
}
.privacy .sec_1 .inner .box > p.txt-r {
  margin: 40px auto 0;
  text-align: right;
}
.privacy .sec_1 .inner .box > p.date {
  margin: 20px auto 0;
  text-align: right;
}
.privacy .sec_1 .boxPrivacyInner {
  margin: 0 auto 25px;
}
.privacy .sec_1 .boxPrivacyInner h3.ttl {
  text-align: left;
  margin: 0 auto 10px;
  color: #009fde;
  font-weight: bold;
  font-size: 16px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
.privacy .sec_1 .boxPrivacyInner .boxTxt {
  padding: 0 0 0 20px;
}
.privacy .sec_1 .boxPrivacyInner .boxTxt p {
  font-size: 14px;
  margin: 0 auto 20px;
}
.privacy .sec_1 .boxPrivacyInner .boxTxt dl {
  font-size: 14px;
  margin: 10px auto 0;
  display: flex;
  flex-flow: row wrap;
}
.privacy .sec_1 .boxPrivacyInner .boxTxt dl dt {
  width: 2em;
  margin-bottom: 5px;
  line-height: 1.5;
}
.privacy .sec_1 .boxPrivacyInner .boxTxt dl dd {
  width: calc(100% - 2em);
  margin-bottom: 5px;
}

/******************************************
	お問い合わせ ページ
******************************************/
.form .sec_1 .inner,
.confirm .sec_1 .inner,
.thanks .sec_1 .inner {
  max-width: 1040px;
}
.form .sec_1 .container,
.confirm .sec_1 .container,
.thanks .sec_1 .container {
  background: #fff;
  border-radius: 8px;
  padding: 3.5% 5% 6%;
  overflow: hidden;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .container,
  .confirm .sec_1 .container,
  .thanks .sec_1 .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 767px) {
  .form .sec_1 .container,
  .confirm .sec_1 .container,
  .thanks .sec_1 .container {
    padding: 20px 5% 40px;
  }
}
.form .sec_1 .block_1,
.confirm .sec_1 .block_1,
.thanks .sec_1 .block_1 {
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_1,
  .confirm .sec_1 .block_1,
  .thanks .sec_1 .block_1 {
    margin-bottom: 40px;
  }
}
.form .sec_1 .block_1 h4,
.confirm .sec_1 .block_1 h4,
.thanks .sec_1 .block_1 h4 {
  font-size: 34px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_1 h4,
  .confirm .sec_1 .block_1 h4,
  .thanks .sec_1 .block_1 h4 {
    font-size: 20px;
  }
}
.form .sec_1 .block_1 .box-wrap,
.confirm .sec_1 .block_1 .box-wrap,
.thanks .sec_1 .block_1 .box-wrap {
  display: grid;
  gap: 0 3%;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_1 .box-wrap,
  .confirm .sec_1 .block_1 .box-wrap,
  .thanks .sec_1 .block_1 .box-wrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 50px;
  }
}
.form .sec_1 .block_1 .box-wrap .box,
.confirm .sec_1 .block_1 .box-wrap .box,
.thanks .sec_1 .block_1 .box-wrap .box {
  position: relative;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_1 .box-wrap .box,
  .confirm .sec_1 .block_1 .box-wrap .box,
  .thanks .sec_1 .block_1 .box-wrap .box {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 575px) {
  .form .sec_1 .block_1 .box-wrap .box,
  .confirm .sec_1 .block_1 .box-wrap .box,
  .thanks .sec_1 .block_1 .box-wrap .box {
    max-width: 90%;
  }
}
.form .sec_1 .block_1 .box-wrap .box figure,
.confirm .sec_1 .block_1 .box-wrap .box figure,
.thanks .sec_1 .block_1 .box-wrap .box figure {
  margin: 0 0 15px;
  padding: 0 10px;
  position: relative;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_1 .box-wrap .box figure,
  .confirm .sec_1 .block_1 .box-wrap .box figure,
  .thanks .sec_1 .block_1 .box-wrap .box figure {
    width: 220px;
    margin-left: auto;
    margin-right: auto;
  }
}
.form .sec_1 .block_1 .box-wrap .box figure span,
.confirm .sec_1 .block_1 .box-wrap .box figure span,
.thanks .sec_1 .block_1 .box-wrap .box figure span {
  position: absolute;
  top: -20px;
  left: -10px;
  width: 24.5833333333%;
}
.form .sec_1 .block_1 .box-wrap .box dl dt,
.confirm .sec_1 .block_1 .box-wrap .box dl dt,
.thanks .sec_1 .block_1 .box-wrap .box dl dt {
  font-size: 16px;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 20px;
  height: 2em;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
@media screen and (max-width: 1139px) {
  .form .sec_1 .block_1 .box-wrap .box dl dt,
  .confirm .sec_1 .block_1 .box-wrap .box dl dt,
  .thanks .sec_1 .block_1 .box-wrap .box dl dt {
    font-size: 16px;
    font-size: 1.4047410009vw;
  }
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_1 .box-wrap .box dl dt,
  .confirm .sec_1 .block_1 .box-wrap .box dl dt,
  .thanks .sec_1 .block_1 .box-wrap .box dl dt {
    font-size: 20px;
    height: auto;
    margin-bottom: 15px;
  }
}
.form .sec_1 .block_1 .box-wrap .box dl dd,
.confirm .sec_1 .block_1 .box-wrap .box dl dd,
.thanks .sec_1 .block_1 .box-wrap .box dl dd {
  font-size: 14px;
}
.form .sec_1 .block_2,
.confirm .sec_1 .block_2,
.thanks .sec_1 .block_2 {
  margin: 0 50px;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_2,
  .confirm .sec_1 .block_2,
  .thanks .sec_1 .block_2 {
    margin: 0;
  }
}
.form .sec_1 .block_2 h4,
.confirm .sec_1 .block_2 h4,
.thanks .sec_1 .block_2 h4 {
  font-size: 22px;
  margin-bottom: 30px;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_2 h4,
  .confirm .sec_1 .block_2 h4,
  .thanks .sec_1 .block_2 h4 {
    font-size: 18px;
    width: 100vw;
    margin-left: calc(50% - 50vw);
  }
}
.form .sec_1 .block_2 h5,
.confirm .sec_1 .block_2 h5,
.thanks .sec_1 .block_2 h5 {
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid #adadad;
  padding-bottom: 10px;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_2 h5,
  .confirm .sec_1 .block_2 h5,
  .thanks .sec_1 .block_2 h5 {
    font-size: 18px;
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 25px;
  }
}
.form .sec_1 .block_2 dl,
.confirm .sec_1 .block_2 dl,
.thanks .sec_1 .block_2 dl {
  line-height: 1.5;
  margin-bottom: 40px;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl,
  .confirm .sec_1 .block_2 dl,
  .thanks .sec_1 .block_2 dl {
    flex-direction: column;
  }
}
.form .sec_1 .block_2 dl:last-child,
.confirm .sec_1 .block_2 dl:last-child,
.thanks .sec_1 .block_2 dl:last-child {
  margin-bottom: 0;
}
.form .sec_1 .block_2 dl dt,
.confirm .sec_1 .block_2 dl dt,
.thanks .sec_1 .block_2 dl dt {
  width: 31.25%;
  margin-bottom: 30px;
  padding-top: calc(0.3em + 1px);
  padding-right: calc(46px + 0.5em);
  position: relative;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_2 dl dt,
  .confirm .sec_1 .block_2 dl dt,
  .thanks .sec_1 .block_2 dl dt {
    width: 33.75%;
    padding-right: 46px;
  }
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dt,
  .confirm .sec_1 .block_2 dl dt,
  .thanks .sec_1 .block_2 dl dt {
    width: 100%;
    font-size: 20px;
    padding-top: 0;
    margin-bottom: 10px;
  }
}
.form .sec_1 .block_2 dl dt:last-of-type,
.confirm .sec_1 .block_2 dl dt:last-of-type,
.thanks .sec_1 .block_2 dl dt:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dt:last-of-type,
  .confirm .sec_1 .block_2 dl dt:last-of-type,
  .thanks .sec_1 .block_2 dl dt:last-of-type {
    margin-bottom: 20px;
  }
}
.form .sec_1 .block_2 dl dt span,
.confirm .sec_1 .block_2 dl dt span,
.thanks .sec_1 .block_2 dl dt span {
  position: absolute;
  top: calc(0.3em + 1px);
  right: 0;
  width: 46px;
  height: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dt span,
  .confirm .sec_1 .block_2 dl dt span,
  .thanks .sec_1 .block_2 dl dt span {
    top: 0.2em;
  }
}
.form .sec_1 .block_2 dl dt span.must,
.confirm .sec_1 .block_2 dl dt span.must,
.thanks .sec_1 .block_2 dl dt span.must {
  color: #ff7f96;
  border: 1px solid #ff7f96;
}
.form .sec_1 .block_2 dl dt span.must::before,
.confirm .sec_1 .block_2 dl dt span.must::before,
.thanks .sec_1 .block_2 dl dt span.must::before {
  content: "必須";
}
.form .sec_1 .block_2 dl dt span.optional,
.confirm .sec_1 .block_2 dl dt span.optional,
.thanks .sec_1 .block_2 dl dt span.optional {
  color: #fff;
  background: #c6c6c6;
}
.form .sec_1 .block_2 dl dt span.optional::before,
.confirm .sec_1 .block_2 dl dt span.optional::before,
.thanks .sec_1 .block_2 dl dt span.optional::before {
  content: "任意";
}
.form .sec_1 .block_2 dl dd,
.confirm .sec_1 .block_2 dl dd,
.thanks .sec_1 .block_2 dl dd {
  width: 65%;
  margin-bottom: 30px;
}
@media screen and (max-width: 991px) {
  .form .sec_1 .block_2 dl dd,
  .confirm .sec_1 .block_2 dl dd,
  .thanks .sec_1 .block_2 dl dd {
    width: 62.5%;
  }
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd,
  .confirm .sec_1 .block_2 dl dd,
  .thanks .sec_1 .block_2 dl dd {
    width: 100%;
    font-size: 16px;
  }
}
.form .sec_1 .block_2 dl dd:last-of-type,
.confirm .sec_1 .block_2 dl dd:last-of-type,
.thanks .sec_1 .block_2 dl dd:last-of-type {
  margin-bottom: 0;
}
.form .sec_1 .block_2 dl dd.birth > div,
.confirm .sec_1 .block_2 dl dd.birth > div,
.thanks .sec_1 .block_2 dl dd.birth > div {
  padding-top: 0;
  display: flex;
  align-items: center;
}
.form .sec_1 .block_2 dl dd.birth > div .select,
.confirm .sec_1 .block_2 dl dd.birth > div .select,
.thanks .sec_1 .block_2 dl dd.birth > div .select {
  width: 3.5em;
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.form .sec_1 .block_2 dl dd.birth > div .select:first-child,
.confirm .sec_1 .block_2 dl dd.birth > div .select:first-child,
.thanks .sec_1 .block_2 dl dd.birth > div .select:first-child {
  width: 4.5em;
  margin-left: 0;
}
.form .sec_1 .block_2 dl dd.address input[type=text],
.confirm .sec_1 .block_2 dl dd.address input[type=text],
.thanks .sec_1 .block_2 dl dd.address input[type=text] {
  display: block;
  width: 100%;
}
.form .sec_1 .block_2 dl dd.address input[type=text]:first-child,
.confirm .sec_1 .block_2 dl dd.address input[type=text]:first-child,
.thanks .sec_1 .block_2 dl dd.address input[type=text]:first-child {
  margin-bottom: 10px;
}
.form .sec_1 .block_2 dl dd p,
.confirm .sec_1 .block_2 dl dd p,
.thanks .sec_1 .block_2 dl dd p {
  font-size: 12px;
  margin-top: 10px;
}
.form .sec_1 .block_2 dl dd > div,
.confirm .sec_1 .block_2 dl dd > div,
.thanks .sec_1 .block_2 dl dd > div {
  padding-top: calc(0.3em + 1px);
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd > div,
  .confirm .sec_1 .block_2 dl dd > div,
  .thanks .sec_1 .block_2 dl dd > div {
    padding-top: 0;
  }
}
.form .sec_1 .block_2 dl dd > div.select,
.confirm .sec_1 .block_2 dl dd > div.select,
.thanks .sec_1 .block_2 dl dd > div.select {
  padding-top: 0;
  width: 200px;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd > div.select,
  .confirm .sec_1 .block_2 dl dd > div.select,
  .thanks .sec_1 .block_2 dl dd > div.select {
    width: 90%;
    margin: auto;
  }
}
.form .sec_1 .block_2 dl dd > div > span,
.confirm .sec_1 .block_2 dl dd > div > span,
.thanks .sec_1 .block_2 dl dd > div > span {
  margin-right: 2em;
  margin-left: 0;
  display: inline-block;
}
.form .sec_1 .block_2 dl dd > div.row-2_1,
.confirm .sec_1 .block_2 dl dd > div.row-2_1,
.thanks .sec_1 .block_2 dl dd > div.row-2_1 {
  display: flex;
  flex-flow: row wrap;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd > div.row-2_1,
  .confirm .sec_1 .block_2 dl dd > div.row-2_1,
  .thanks .sec_1 .block_2 dl dd > div.row-2_1 {
    flex-direction: column;
  }
}
.form .sec_1 .block_2 dl dd > div.row-2_1 span,
.confirm .sec_1 .block_2 dl dd > div.row-2_1 span,
.thanks .sec_1 .block_2 dl dd > div.row-2_1 span {
  margin-right: 0;
  width: 28.5714285714%;
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd > div.row-2_1 span,
  .confirm .sec_1 .block_2 dl dd > div.row-2_1 span,
  .thanks .sec_1 .block_2 dl dd > div.row-2_1 span {
    width: 100%;
  }
}
.form .sec_1 .block_2 dl dd > div.row-2_2,
.confirm .sec_1 .block_2 dl dd > div.row-2_2,
.thanks .sec_1 .block_2 dl dd > div.row-2_2 {
  display: grid;
  gap: 0 0.5em;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1039px) {
  .form .sec_1 .block_2 dl dd > div.row-2_2,
  .confirm .sec_1 .block_2 dl dd > div.row-2_2,
  .thanks .sec_1 .block_2 dl dd > div.row-2_2 {
    gap: 0 1em;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .form .sec_1 .block_2 dl dd > div.row-2_2,
  .confirm .sec_1 .block_2 dl dd > div.row-2_2,
  .thanks .sec_1 .block_2 dl dd > div.row-2_2 {
    grid-template-columns: repeat(1, 1fr);
  }
}
.form .sec_1 .block_2 dl dd > div.row-2_2 span,
.confirm .sec_1 .block_2 dl dd > div.row-2_2 span,
.thanks .sec_1 .block_2 dl dd > div.row-2_2 span {
  margin-right: 0;
}
.form .sec_1 .block_2 .agree,
.confirm .sec_1 .block_2 .agree,
.thanks .sec_1 .block_2 .agree {
  text-align: center;
  margin-bottom: 40px;
}
.form .attention,
.confirm .attention,
.thanks .attention {
  width: 100%;
  margin: auto auto 20px;
}
.form .attention p,
.confirm .attention p,
.thanks .attention p {
  font-size: 16px;
  color: #ff0000;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.form .attention p:last-child,
.confirm .attention p:last-child,
.thanks .attention p:last-child {
  margin-bottom: 0;
}
.form .attention p a,
.confirm .attention p a,
.thanks .attention p a {
  color: #3fa9f5;
  text-decoration: underline;
}

.confirm .sec_1 .block_2 dl dt {
  padding-top: 0;
}
.confirm .sec_1 .block_2 dl dt span {
  top: 0;
}
.confirm .sec_1 .block_2 dl dd > div {
  padding-top: 0;
}
.confirm .select::before {
  content: none;
}

/******************************************
	フォーム
******************************************/
form input {
  color: #333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
form input[type=text], form input[type=email] {
  background: none;
  border: 1px solid #bebebe;
  border-radius: 5px;
  padding: 0.3em 0.5em;
  font-size: 14px;
  font-size: 1.4rem;
}
@media screen and (max-width: 991px) {
  form input[type=text], form input[type=email] {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  form input[type=text], form input[type=email] {
    width: 100%;
  }
}
form input[type=text] {
  width: 49.0566037736%;
}
form input[type=email] {
  width: 100%;
}
form input[type=radio], form input[type=checkbox] {
  display: none;
}
form input[type=radio].radio-col:checked + span::after, form input[type=radio].check-col:checked + span::after, form input[type=checkbox].radio-col:checked + span::after, form input[type=checkbox].check-col:checked + span::after {
  opacity: 1;
}
form input[type=radio].radio-col + span, form input[type=radio].check-col + span, form input[type=checkbox].radio-col + span, form input[type=checkbox].check-col + span {
  padding-left: 1.2em;
  margin-left: 0;
  position: relative;
}
form input[type=radio].radio-col + span::before, form input[type=radio].radio-col + span::after, form input[type=radio].check-col + span::before, form input[type=radio].check-col + span::after, form input[type=checkbox].radio-col + span::before, form input[type=checkbox].radio-col + span::after, form input[type=checkbox].check-col + span::before, form input[type=checkbox].check-col + span::after {
  content: "";
  position: absolute;
}
form input[type=radio].radio-col + span::before, form input[type=radio].check-col + span::before, form input[type=checkbox].radio-col + span::before, form input[type=checkbox].check-col + span::before {
  background-color: #fff;
  border-radius: 0%;
  border: 1px solid #333;
  width: 0.8em;
  height: 0.8em;
  transform: translateY(-50%);
  top: 50%;
  left: 0;
}
form input[type=radio].radio-col + span::after, form input[type=radio].check-col + span::after, form input[type=checkbox].radio-col + span::after, form input[type=checkbox].check-col + span::after {
  border-bottom: 2px solid #333;
  border-left: 2px solid #333;
  opacity: 0;
  height: 4px;
  width: 9px;
  transform: rotate(-45deg);
  top: 4px;
  left: 2px;
}
form input::placeholder {
  color: #c6c6c6;
}
form select {
  padding: 0.1em 0.5em 0;
  border: 1px solid #bebebe;
  border-radius: 5px;
  font-size: 14px;
  line-height: 2;
}
form .select {
  position: relative;
  z-index: 0;
}
form .select::before {
  content: "";
  position: absolute;
  background-image: url("../images/form/ico_select.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 15px;
  height: 16px;
  top: 0.5em;
  bottom: 0;
  left: 0;
  right: 0.3em;
  margin: 0 0 auto auto;
  pointer-events: none;
}
form .select select {
  width: 100%;
  -webkit-appearance: none;
  appearance: none;
}
form textarea {
  background: none;
  border: 1px solid #bebebe;
  border-radius: 5px;
  width: 100%;
  height: 20em;
  padding: 0.3em;
  color: #000;
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}
@media screen and (max-width: 991px) {
  form textarea {
    height: 10em;
  }
}
form textarea::placeholder {
  color: #c6c6c6;
}
form .submit {
  width: 270px;
  margin: auto;
}
form input[type=submit] {
  width: 100%;
  height: 50px;
  margin: auto;
  background: #ff7f92;
  border-radius: 25px;
  box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
  text-align: center;
  border: none;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.36px;
  cursor: pointer;
  transition: all 0.3s ease;
}
form input[type=submit]:hover {
  opacity: 0.6;
}
form input[type=submit]:disabled {
  background: #bebebe;
  cursor: inherit;
}
form input[type=submit]:disabled:hover {
  opacity: 1;
}
form button {
  width: 100%;
  height: 50px;
  margin: auto auto 20px;
  background: #ff7f92;
  border-radius: 25px;
  box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
  text-align: center;
  border: none;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.36px;
  cursor: pointer;
  transition: all 0.3s ease;
}
form button:hover {
  opacity: 0.6;
}
form button.back-btn {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  display: block;
  margin-top: 35px;
  height: 40px;
  background: #a9a9a9;
  font-size: 17px;
  cursor: pointer;
  transition: all 0.3s ease;
}
form button.back-btn:hover {
  opacity: 0.6;
}

/******************************************
	メール配信のサンクスページ ページ
******************************************/
.conf .sec_1 .inner {
  max-width: 1040px;
}
.conf .sec_1 .inner .box {
  background: #fff;
  padding: 40px 100px;
  border-radius: 8px;
}
@media screen and (max-width: 991px) {
  .conf .sec_1 .inner .box {
    padding: 30px 15px;
  }
}
.conf .sec_1 .inner .box p {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .conf .sec_1 .inner .box p {
    font-size: 16px;
  }
}

/******************************************
	お知らせ一覧 ページ
******************************************/
.blog .sec_news ul,
.archive .sec_news ul {
  max-width: 900px;
  width: 100%;
  margin: auto auto 2em;
}
.blog .sec_news ul li,
.archive .sec_news ul li {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 1px dashed #c5c5c5;
  word-break: break-all;
}
.blog .sec_news ul li span.date,
.archive .sec_news ul li span.date {
  display: block;
  width: 100%;
  font-size: 12px;
  flex-grow: 2;
}
.blog .sec_news ul li span.ttl,
.archive .sec_news ul li span.ttl {
  display: flex;
  align-content: center;
}
@media screen and (max-width: 767px) {
  .blog .sec_news ul li span.ttl,
  .archive .sec_news ul li span.ttl {
    flex-direction: column;
  }
}
.blog .sec_news ul li span.ttl .cat_wrap,
.archive .sec_news ul li span.ttl .cat_wrap {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  margin-right: 1em;
}
@media screen and (max-width: 767px) {
  .blog .sec_news ul li span.ttl .cat_wrap,
  .archive .sec_news ul li span.ttl .cat_wrap {
    flex-direction: row;
    gap: 5px;
    margin-right: 0;
  }
}
.blog .sec_news ul li span.ttl .cat,
.archive .sec_news ul li span.ttl .cat {
  width: 106px;
  height: 26px;
  color: #fff;
  border-radius: 5px;
  font-size: 14px;
  margin-top: 0.3em;
  vertical-align: middle;
  padding: 3px 2px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 991px) {
  .blog .sec_news ul li span.ttl .cat,
  .archive .sec_news ul li span.ttl .cat {
    margin-top: 0;
    font-size: 12px;
    padding: 0.1em;
  }
}
.blog .sec_news ul li span.ttl .cat a,
.archive .sec_news ul li span.ttl .cat a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  color: #fff;
}
@media screen and (max-width: 991px) {
  .blog .sec_news ul li span.ttl .cat a,
  .archive .sec_news ul li span.ttl .cat a {
    font-size: 12px;
  }
}
.blog .sec_news ul li span.ttl .cat a:hover,
.archive .sec_news ul li span.ttl .cat a:hover {
  text-decoration: none;
}
.blog .sec_news ul li span.ttl a,
.archive .sec_news ul li span.ttl a {
  font-size: 20px;
  line-height: 1.6;
}
@media screen and (max-width: 991px) {
  .blog .sec_news ul li span.ttl a,
  .archive .sec_news ul li span.ttl a {
    font-size: 16px;
  }
}
.blog .sec_news ul li span.ttl a:hover,
.archive .sec_news ul li span.ttl a:hover {
  text-decoration: underline;
}

/******************************************
	投稿ページ
******************************************/
.single .contents .inner {
  max-width: 900px;
}
.single.single-matome .single-label-wrapper {
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5em;
}
.single.single-matome .single-label-wrapper .cat_wrap {
  margin-left: 0;
}
@media screen and (max-width: 767px) {
  .single.single-matome .single-label-wrapper .cat_wrap {
    margin-bottom: 0.5em;
  }
}
.single.single-matome .single-label-wrapper time {
  display: flex;
  gap: 1em;
}
.single .single-label-wrapper {
  display: flex;
  align-items: center;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .single .single-label-wrapper {
    display: block;
  }
}
.single .single-label-wrapper .cat_wrap {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  margin-left: 1em;
}
@media screen and (max-width: 767px) {
  .single .single-label-wrapper .cat_wrap {
    gap: 5px;
    margin-left: 0;
    margin-top: 5px;
  }
}
.single .single-label-wrapper .cat {
  width: 106px;
  color: #fff;
  border-radius: 5px;
  font-size: 14px;
  vertical-align: middle;
  padding: 0 2px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .single .single-label-wrapper .cat {
    margin-right: 0.5em;
  }
}
@media screen and (max-width: 991px) {
  .single .single-label-wrapper .cat {
    font-size: 12px;
    padding: 0.1em;
  }
}
.single .single-label-wrapper .cat a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  padding: 5px 0;
  color: #fff;
}
@media screen and (max-width: 991px) {
  .single .single-label-wrapper .cat a {
    font-size: 12px;
  }
}
.single .single-label-wrapper .cat a:hover {
  text-decoration: none;
}
.single .box h1 {
  font-size: 22px;
  line-height: 31px;
  font-weight: 700;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin-bottom: 40px;
}
@media screen and (max-width: 991px) {
  .single .box h1 {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
.single .single-content h2 {
  font-size: 24px;
  font-family: "M PLUS Rounded 1c", sans-serif;
  padding: 8px 5px;
  border-top: 1px solid;
  border-bottom: 1px solid;
  margin: 3em 0 1.5em;
}
@media screen and (max-width: 991px) {
  .single .single-content h2 {
    font-size: 20px;
  }
}
.single .single-content h3 {
  text-align: left;
  font-size: 22px;
  padding: 5px;
  background-color: #eee;
  margin: 2em 0 1em;
}
@media screen and (max-width: 991px) {
  .single .single-content h3 {
    font-size: 18px;
  }
}
.single .single-content h4 {
  font-size: 20px;
  padding-left: 5px;
  border-left: 5px solid #ffd100;
  margin: 2em 0 1em;
}
@media screen and (max-width: 991px) {
  .single .single-content h4 {
    font-size: 17px;
  }
}
.single .single-content h5 {
  font-size: 18px;
  color: #ffd100;
  font-family: "M PLUS Rounded 1c", sans-serif;
  margin: 1.5em 0 0.5em;
}
@media screen and (max-width: 991px) {
  .single .single-content h5 {
    font-size: 16px;
  }
}
.single .single-content p {
  margin-bottom: 0;
  line-height: 1.8;
}
.single .single-content ul {
  padding-left: 25px;
  margin: 1em 0 1em;
}
.single .single-content ul li {
  list-style-type: disc;
  font-size: 16px;
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  .single .single-content ul li {
    font-size: 14px;
  }
}
.single .single-content ol {
  padding-left: 25px;
  margin: 1em 0 1em;
}
.single .single-content ol li {
  list-style-type: auto;
  font-size: 16px;
  margin-bottom: 0;
}
@media screen and (max-width: 991px) {
  .single .single-content ol li {
    font-size: 14px;
  }
}
.single .single-content .wp-block-table {
  text-align: left;
}
.single .single-content table {
  border-collapse: collapse;
  width: 100%;
  margin: 1em 0 1em;
}
.single .single-content table th,
.single .single-content table td {
  border: 1px solid #bfbfbf;
  border-collapse: collapse;
  padding: 10px;
}
.single .single-content table tr td:nth-child(1),
.single .single-content table th {
  background-color: #eee;
}
.single .single-content .has-text-align-left {
  text-align: left;
  margin-bottom: 0;
}
.single .single-content .has-text-align-center {
  text-align: center;
  margin-bottom: 0;
}
.single .single-content .has-text-align-right {
  text-align: right;
  margin-bottom: 0;
}
.single .single-content a {
  color: #0071a7;
  text-decoration: underline;
}
.single .single-content .cta-inpost {
  background: #f6f6f6;
  padding: 30px 55px;
  margin: 30px auto;
}
@media screen and (max-width: 767px) {
  .single .single-content .cta-inpost {
    padding: 30px 15px;
  }
}
.single .single-content .cta-inpost p {
  margin: 0 0 1em;
  font-size: 16px;
}
@media screen and (max-width: 991px) {
  .single .single-content .cta-inpost p {
    font-size: 14px;
  }
}
.single .single-content .cta-inpost .link {
  margin-top: 30px;
  display: grid;
  gap: 1rem;
}
.single .single-content .cta-inpost .link:first-child {
  margin-top: 0;
  margin-bottom: 30px;
}
.single .single-content .cta-inpost .link p {
  text-align: center;
  margin-bottom: 0;
}
.single .single-image {
  margin-bottom: 1em;
}
.single .archive-back-wrapper {
  text-align: center;
  margin-top: 3em;
}
.single .archive-back-wrapper a:hover {
  text-decoration: underline;
}

/******************************************
	404 ページ
******************************************/
.error404 section .inner {
  max-width: 1040px;
}
.error404 section .box {
  padding: 40px 100px;
  background: #fff;
  border-radius: 8px;
}
@media screen and (max-width: 991px) {
  .error404 section .box {
    padding: 30px 15px;
  }
}
.error404 section .box h2 {
  text-align: center;
  margin-bottom: 1em;
}
@media screen and (max-width: 991px) {
  .error404 section .box h2 {
    font-size: 18px;
  }
}
.error404 section .box p {
  text-align: center;
}
.error404 section .box a {
  margin-top: 3em;
  display: block;
  text-align: center;
}
.error404 section .box a:hover {
  text-decoration: underline;
}

.campaign {
  padding: 100px 0 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .campaign {
    padding: 30px 0 0;
  }
}
.campaign .campaign-warp {
  position: relative;
  max-width: 1400px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.campaign img {
  margin-left: auto;
  margin-right: auto;
}
.campaign img.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .campaign img.sp {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .campaign img.pc {
    display: none;
  }
}
.campaign .campaign-text {
  margin-top: -30px;
  padding: 0 15px;
  line-height: 1.4;
}
.campaign .campaign-img {
  text-align: center;
}
.campaign .campaign-cta {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
}
@media screen and (max-width: 767px) {
  .campaign .campaign-cta {
    margin-top: 24px;
    gap: 14px;
    padding: 0 15px;
  }
}
.campaign .campaign-cta .campaign-btn_form {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #e2566a;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  border-radius: 9999px;
  padding: 18px 64px;
  box-shadow: 0 0 0 3px #fff, 0 0 0 4px #e2566a;
}
.campaign .campaign-cta .campaign-btn_form:hover {
  opacity: 0.85;
}
@media screen and (max-width: 767px) {
  .campaign .campaign-cta .campaign-btn_form {
    font-size: 15px;
    padding: 14px 40px;
    gap: 8px;
  }
}
.campaign .campaign-cta .campaign-btn_icon {
  flex-shrink: 0;
}
@media screen and (max-width: 767px) {
  .campaign .campaign-cta .campaign-btn_icon {
    width: 18px;
    height: 18px;
  }
}
.campaign .campaign-cta .campaign-btn_tel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #e2566a;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid #e2566a;
  border-radius: 9999px;
  padding: 10px 36px;
}
.campaign .campaign-cta .campaign-btn_tel:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .campaign .campaign-cta .campaign-btn_tel {
    font-size: 13px;
    padding: 8px 28px;
  }
}

/***************************************
記事内キャンペーンバナー（ASSIGNMENT-13822 期間限定）
***************************************/
.single-matome .post_campaign_bnr {
  margin: 40px auto 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .single-matome .post_campaign_bnr {
    margin-top: 30px;
  }
}
.single-matome .post_campaign_bnr img {
  width: 100%;
  height: auto;
}

/***************************************
監修者情報
***************************************/
html body.single-matome main section.post_supervisor_section {
  padding-bottom: 0;
}
html body.single-matome main section .post_supervisor_wrapper {
  padding: 20px 25px 25px;
  background: #fff8c8;
}
html body.single-matome main section .post_supervisor_wrapper h2 {
  font-size: 20px;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  margin-bottom: 15px;
  padding-bottom: 10px;
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_image {
  width: 120px;
}
@media screen and (max-width: 767px) {
  html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_image {
    width: 100%;
    text-align: center;
  }
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_image img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_image img {
    width: 120px;
  }
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_text {
  flex: 1;
}
@media screen and (max-width: 767px) {
  html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_text {
    width: 100%;
  }
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_text h3 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_text p {
  font-size: 12px;
}
html body.single-matome main section .post_supervisor_wrapper .post_supervisor_inner .post_supervisor_text a {
  display: inline-block;
  margin-top: 10px;
  color: #2d87ff;
  text-decoration: underline;
}

/*# sourceMappingURL=style.css.map */
