@charset "UTF-8";
/* =========================================================
reset
========================================================= */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;700;900&amp;display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&amp;display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@500;600&amp;display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@900&amp;family=Poppins:wght@800&amp;display=swap");
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&amp;display=swap&amp;subset=japanese");
@import url("https://fonts.googleapis.com/css?family=Roboto:500&amp;display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a,
abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike,
strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

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

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

a {
  -webkit-text-decoration: normal;
          text-decoration: normal;
  cursor: pointer;
}

blockquote, q {
  quotes: none;
}

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

input, select {
  vertical-align: middle;
}

/* =========================================================
Web fonts
========================================================= */
/* =========================================================
base
========================================================= */
html {
  font-size: 62.5%;
  height: auto;
}

body {
  letter-spacing: 0;
  -webkit-text-size-adjust: 100%;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  color: #222222;
  line-height: 1.7;
  font-size: 18px;
  width: 1200px;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 4vw;
    width: 100%;
  }
}

.btol-bace-c {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.8;
}

div {
  font-size: 0;
}

li {
  font-size: 0;
}

img {
  max-width: 100%;
  height: auto;
  font-size: 0;
}

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

figure {
  line-height: 0;
}

.orange-txt {
  color: #ff6b2b;
  font-weight: bold;
}

.bold {
  font-weight: bold;
}

.ta-c {
  text-align: center;
}

.ta-l {
  text-align: left;
}

.ta-r {
  text-align: right;
}

.d-ib {
  display: inline-block;
}

.d-b {
  display: block;
}

.d-i {
  display: inline;
}

.boxshadow-bl {
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

.bg-gray {
  background-color: #F7F7F7;
}

.bg-blue {
  background-color: #EBF7FF;
}

@media screen and (min-width: 768px) {
  .fs-pc14 {
    font-size: 14px;
  }
}

@media screen and (min-width: 768px) {
  .fs-pc18 {
    font-size: 18px;
  }
}

@media screen and (min-width: 768px) {
  .fs-pc20 {
    font-size: 20px;
  }
}

@media screen and (max-width: 767px) {
  .fs-sp20 {
    font-size: calc(20/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .fs-sp24 {
    font-size: calc(24/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .fs-sp26 {
    font-size: calc(26/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .fs-sp28 {
    font-size: calc(28/750 * 100vw);
  }
}

.w1000 {
  width: 1000px;
}
@media screen and (max-width: 767px) {
  .w1000 {
    width: 100%;
  }
}

.w1024 {
  width: 1024px;
}
@media screen and (max-width: 767px) {
  .w1024 {
    width: 100%;
  }
}

.w1080 {
  width: 1080px;
}
@media screen and (max-width: 767px) {
  .w1080 {
    width: 100%;
  }
}

.w1100 {
  width: 1100px;
}
@media screen and (max-width: 767px) {
  .w1100 {
    width: 100%;
  }
}

.w1200 {
  width: 1200px;
}
@media screen and (max-width: 767px) {
  .w1200 {
    width: 100%;
  }
}

.w1300 {
  width: 1300px;
}
@media screen and (max-width: 767px) {
  .w1300 {
    width: 100%;
  }
}

.w1400 {
  width: 1400px;
}
@media screen and (max-width: 767px) {
  .w1400 {
    width: 100%;
  }
}

.w1600 {
  width: 1600px;
}
@media screen and (max-width: 767px) {
  .w1600 {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .w-pc45per {
    width: 45%;
  }
}

@media screen and (min-width: 768px) {
  .w-pc50per {
    width: 50%;
  }
}

@media screen and (min-width: 768px) {
  .w-pc100per {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .w-sp45per {
    width: 45%;
  }
}

@media screen and (max-width: 767px) {
  .w-sp50per {
    width: 50%;
  }
}

@media screen and (max-width: 767px) {
  .w-sp85per {
    width: 85%;
  }
}

@media screen and (max-width: 767px) {
  .w-sp100per {
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .h-pc50 {
    height: 50px;
  }
}

@media screen and (min-width: 768px) {
  .h-pc100 {
    height: 100px;
  }
}

/* =========================================================
utility
========================================================= */
.pc-ui {
  display: block;
}
@media only screen and (max-width: 767px) {
  .pc-ui {
    display: none;
  }
}

.tab-ui {
  display: none;
}
@media only screen and (max-width: 990px) {
  .tab-ui {
    display: block;
  }
}

.sp-ui {
  display: none;
}
@media only screen and (max-width: 767px) {
  .sp-ui {
    display: block;
  }
}

.pc-in {
  display: inline;
}
@media only screen and (max-width: 767px) {
  .pc-in {
    display: none;
  }
}

.tab-in {
  display: none;
}
@media only screen and (max-width: 990px) {
  .tab-in {
    display: inline;
  }
}

.sp-in {
  display: none;
}
@media only screen and (max-width: 767px) {
  .sp-in {
    display: inline;
  }
}

/* clearfix
--------------------------------------------------------- */
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

/* border-box
--------------------------------------------------------- */
* {
  box-sizing: border-box;
}

* {
  box-sizing: border-box;
}

body {
  font-weight: 400;
  line-height: 1.5;
  min-width: 100%;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 4.2vw;
    font-weight: 400;
    line-height: 1.8;
  }
}

div {
  font-size: 16px;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a {
  display: block;
  text-decoration: none;
}

li {
  font-size: 16px;
}

.b-clear {
  background-color: rgba(255, 255, 255, 0.7);
}

.font-roboto {
  font-family: "Roboto";
}

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

.clearfix * {
  zoom: 1;
}

@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}
/* ============================
A B-TOL （人材）
===================================================*/
/* ============================
aのタイトルエリア
===================================================*/
.a-heading-area {
  text-align: center;
}

.a-heading-ttl {
  font-weight: 700;
  letter-spacing: 0.102em;
}
@media screen and (min-width: 768px) {
  .a-heading-ttl {
    font-size: 36px;
  }
  .a-heading-ttl::after {
    width: 100px;
    height: 3px;
    margin: 13px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .a-heading-ttl {
    font-size: calc(36/750 * 100vw);
    line-height: 1.4;
  }
  .a-heading-ttl::after {
    width: 114px;
    height: 3px;
    margin: 15px auto 0;
  }
}

.a-heading-sub-ttl {
  font-size: 20px;
  font-family: "Poppins", sans-serif;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-heading-sub-ttl {
    font-size: calc(24/750 * 100vw);
    font-family: "Poppins", sans-serif;
    font-weight: bold;
  }
}

/*Floating
******************************************************/
.a-floating {
  position: fixed;
  bottom: 0;
  width: 100%;
  height: 0;
  opacity: 0;
  z-index: 999;
  transition: 0.4s;
}

.a-floating.show {
  height: auto;
  opacity: 1;
  transition: 0.4s;
}

.a-floating-container {
  margin: auto;
}
@media screen and (max-width: 767px) {
  .a-floating-container {
    display: block;
    width: 100%;
    padding: 10px 0;
  }
}

.a-floating-btn-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  list-style: none;
}
@media screen and (max-width: 767px) {
  .a-floating-btn-list {
    display: inline-flex;
    flex-wrap: nowrap;
  }
}

@media screen and (min-width: 768px) {
  .a-floating-btn {
    width: auto;
    margin: auto;
    padding: 20px 0;
  }
}
@media screen and (max-width: 767px) {
  .a-floating-btn {
    width: 100%;
    padding: 0 20px;
  }
}

@media screen and (min-width: 768px) {
  .a-floating-btn-list li {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .a-floating-btn-list li {
    width: 100%;
  }
}

.a-flo-list-btn {
  position: relative;
  border-radius: 35px;
  color: #FFF;
  font-weight: 700;
  text-align: center;
  transition: 0.4s;
  position: relative;
  /* border-bottom: solid 3px #BF040A; */
  border-radius: 4px;
  background: #CC2424;
  transition: 0.4s;
}
.a-flo-list-btn:hover {
  opacity: 0.7;
}
@media screen and (min-width: 768px) {
  .a-flo-list-btn {
    width: 100%;
    height: 80px;
    padding: 14px 24px;
    font-size: 24px;
    display: flex;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 767px) {
  .a-flo-list-btn {
    width: 100%;
    padding: 2.4vw 4.6vw 2.4vw 4.6vw;
    font-size: 4vw;
    display: flex;
  }
}

.a-flo-list-btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/info_material_cursor_a.png) center no-repeat;
  background-size: contain;
}
@media screen and (min-width: 768px) {
  .a-flo-list-btn::after {
    right: 24px;
    width: 22px;
    height: 22px;
  }
}
@media screen and (max-width: 767px) {
  .a-flo-list-btn::after {
    right: 14px;
    width: 18px;
    height: 18px;
  }
}

@media screen and (min-width: 768px) {
  .a-flo-list-btn-txt {
    padding-left: 6%;
    font-size: 28px;
    margin: auto 0;
    line-height: 1;
    padding-top: 4px;
  }
}
@media screen and (max-width: 767px) {
  .a-flo-list-btn-txt {
    padding-left: 3%;
    margin: auto 0;
    font-size: calc(30/750 * 100vw);
    display: inline-block;
  }
}

@media screen and (min-width: 768px) {
  .a-flo-list-btn-img {
    width: 188px;
    height: 51px;
  }
}
@media screen and (max-width: 767px) {
  .a-flo-list-btn-img {
    width: 40%;
    height: 40%;
  }
}

/* ============================
a-header
===================================================*/
.a-header {
  background: #ffffff;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  z-index: 999;
}
@media screen and (max-width: 767px) {
  .a-header {
    height: 55px;
    min-width: 100%;
  }
}

.a-header-inner {
  margin: 0 auto;
  align-items: center;
  display: -ms-flexbox;
  justify-content: space-between;
  display: flex;
  height: 100%;
  width: 1080px;
}
@media screen and (max-width: 767px) {
  .a-header-inner {
    width: 100%;
    padding: 8px 3%;
  }
}

.a-header-logo {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .a-header-logo {
    width: calc(340/750 * 100vw);
    height: auto;
    float: left;
  }
}

.a-header-logo img {
  max-width: 100%;
  max-height: 100%;
  vertical-align: middle;
}

.a-header-info {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .a-header-info {
    display: flex;
    flex-wrap: wrap;
    width: calc(322/750 * 100vw);
    float: right;
  }
}
@media screen and (min-width: 768px) {
  .a-header-info {
    width: 260px;
  }
}

@media screen and (max-width: 767px) {
  .info-tel {
    width: 55%;
  }
}

.info-tel,
.info-material {
  display: block;
}

.info-tel-number {
  display: inline-flex;
  color: #333333;
}

.info-tel-time {
  color: #333333;
  line-height: 0.8;
}

.a-header-btn {
  display: block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .a-header-btn {
    width: 100%;
  }
}

.a-header-btn a {
  position: relative;
  border-radius: 4px;
  background: #0071BC;
  transition: 0.4s;
}

.a-header-btn a::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/info_material_cursor_a.png) center no-repeat;
  background-size: contain;
}

.a-header-btn-txt {
  color: #FFF;
  font-size: 18px;
  font-weight: bold;
}

.a-header-btn-txt {
  padding: 0;
  font-size: 20px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .a-header-btn-txt {
    font-size: calc(26/750 * 100vw);
    line-height: 1.1;
  }
}

.a-header-btn-txt-small {
  color: #FFF;
  font-weight: bold;
  font-size: 14px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .a-header-btn-txt-small {
    font-size: calc(20/750 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .a-header {
    min-width: 1000px;
    height: 100px;
  }
}

@media screen and (min-width: 768px) {
  .a-header-logo {
    width: 45%;
    height: 71px;
  }
}

@media screen and (min-width: 768px) {
  .info-tel,
.info-material {
    width: 50%;
  }
}

.info-tel-number {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  .info-tel-number {
    height: 0;
    margin: 0 auto;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
  }
}

.info-tel-number::before {
  content: "";
  display: inline-block;
  width: 43px;
  height: 43px;
  padding-right: 8px;
  background: url(../img/freedial.html) center no-repeat;
  background-size: contain;
}

.info-tel-time {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .info-tel-time {
    height: 0;
    margin: 0 auto;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
  }
}

@media screen and (max-width: 767px) {
  .info-tel a {
    display: block;
    width: 100%;
    height: 100%;
  }
}

.a-header-btn a {
  width: 276px;
  height: 56px;
  padding: 7px 20px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .a-header-btn a {
    font-feature-settings: "palt";
    width: 100%;
    height: calc(74/750 * 100vw);
    padding: calc(8/750 * 100vw) calc(20/750 * 100vw);
  }
}

.a-header-btn a:hover {
  opacity: 0.7;
}

.a-header-btn a::after {
  right: 8px;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border: 8px solid transparent;
  border-left: 10px solid #fff;
}
@media screen and (max-width: 767px) {
  .a-header-btn a::after {
    right: 0.5vw;
    box-sizing: border-box;
    width: 1vw;
    height: 1vw;
    border: 1.8vw solid transparent;
    border-left: 1.52vw solid #fff;
  }
}

/* ============================
mainvisual
===================================================*/
.a-mv {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .a-mv {
    min-width: 1000px;
    background: url(../img/mv.jpg) center no-repeat;
    background-size: cover;
  }
}
@media screen and (max-width: 767px) {
  .a-mv {
    width: 100%;
    background: url(../img/mv_sp.jpg) center no-repeat;
    background-size: cover;
  }
}

.a-mv-inner {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .a-mv-inner {
    width: 1000px;
    height: 620px;
  }
}
@media screen and (max-width: 767px) {
  .a-mv-inner {
    width: 100%;
    height: calc(750/750 * 100vw);
    display: flex;
    align-items: flex-end;
  }
}

.a-mv-inner-ttl {
  font-size: 0;
}

.a-mv-heading {
  display: table;
  color: #000;
  font-weight: 500;
  font-family: "Montserrat", sans-serif;
  -webkit-text-shadow: 2px 2px 7px white;
  text-shadow: 2px 2px 7px white;
}
@media screen and (min-width: 768px) {
  .a-mv-heading {
    margin-bottom: 14px;
    padding: 6px 14px 6px 0px;
    font-size: 30px;
    font-weight: bold;
  }
}
@media screen and (max-width: 767px) {
  .a-mv-heading {
    margin-bottom: 2vw;
    padding: 0.2rem 0.8rem 0rem 0rem;
    font-size: 5vw;
    font-weight: bold;
  }
}

.a-mv-heading-img {
  width: auto;
  height: auto;
}
@media screen and (max-width: 767px) {
  .a-mv-heading-img {
    width: calc(288/750 * 100vw);
    height: auto;
  }
}

.a-mv-middle {
  color: #000;
  font-weight: 700;
  margin-top: 0;
  padding-top: 0;
  line-height: 1;
  font-family: "Montserrat", sans-serif;
  -webkit-text-shadow: 2px 2px 7px white;
  text-shadow: 2px 2px 7px white;
}
@media screen and (min-width: 768px) {
  .a-mv-middle {
    font-size: 50px;
  }
}
@media screen and (max-width: 767px) {
  .a-mv-middle {
    font-size: 9vw;
    line-height: 1.2;
  }
}

.a-mv-underline {
  padding-bottom: 20px;
  border-bottom: 2px solid #222222;
  display: inline-block;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-mv-underline {
    padding-bottom: 0px;
    border-bottom: none !important;
    display: inline-block;
    margin-bottom: 0px;
  }
}

.a-mv-comment {
  color: #000;
  text-align: justify;
}
@media screen and (min-width: 768px) {
  .a-mv-comment {
    width: 630px;
    font-size: 18px;
    line-height: 39.6px;
  }
}

.a-mv-comment-txt {
  -webkit-text-shadow: 2px 2px 7px white;
  text-shadow: 2px 2px 7px white;
}

@media screen and (max-width: 767px) {
  .a-mv-min {
    font-size: 10vw;
  }
}

/* ============================
a-3
===================================================*/
.a-3 {
  background-color: #F7F7F7;
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-3 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-3 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-3-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-3-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

.a-3-area {
  display: flex;
}
@media screen and (max-width: 767px) {
  .a-3-area {
    display: flex;
    flex-direction: column;
  }
}

.a-3-ttl {
  font-size: 26px;
  font-weight: bold;
  padding-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .a-3-ttl {
    font-size: calc(36/750 * 100vw);
    padding-bottom: calc(80/750 * 100vw);
  }
}

.a-3-box {
  box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.2);
  background-color: #fff;
  width: 307px;
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .a-3-box {
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
    width: 100%;
    margin-right: 0px;
    margin-bottom: calc(80/750 * 100vw);
    display: flex;
  }
}

.a-3-box:last-child {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .a-3-box:last-child {
    margin-bottom: 0;
  }
}

.a-3-box-ttl {
  margin-left: 20px;
  margin-top: 20px;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-3-box-ttl {
    margin-left: calc(30/750 * 100vw);
    margin-top: calc(40/750 * 100vw);
    font-size: calc(28/750 * 100vw);
    font-weight: bold;
  }
}

.a-3-list {
  margin-left: 20px;
  margin-top: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-3-list {
    margin-left: calc(30/750 * 100vw);
    margin-top: calc(10/750 * 100vw);
    margin-bottom: calc(30/750 * 100vw);
  }
}

.a-3-list-item {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .a-3-list-item {
    font-size: calc(26/750 * 100vw);
  }
}

.a-3-list-item::before {
  content: "・";
  display: inline-block;
  width: 10px;
  height: 10px;
  padding-right: 10px;
}
@media screen and (max-width: 767px) {
  .a-3-list-item::before {
    content: "・";
    display: inline-block;
    width: 10px;
    height: 10px;
    padding-right: 10px;
  }
}

.a-3-list-item:first-child:before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 16px;
  background: url(../img/icon_money_a.html) top left/contain no-repeat;
  padding-right: 8px;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .a-3-list-item:first-child:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    background: url(../img/icon_money_a.html) top left/contain no-repeat;
    padding-right: 6px;
    vertical-align: middle;
  }
}

@media screen and (max-width: 767px) {
  .a-3-img-box {
    width: 45%;
  }
}

/* ============================
a-4
===================================================*/
.a-4 {
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-4 {
    min-width: 900px;
  }
}
@media screen and (max-width: 767px) {
  .a-4 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-4-inner {
  width: 900px;
  margin: 0 auto;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .a-4-inner {
    padding-bottom: calc(120/750 * 100vw);
    width: calc(670/750 * 100vw);
  }
}

.a-4-area {
  margin: auto;
}

.a-4-block {
  display: flex;
  justify-content: space-between;
  flex-flow: row wrap;
}
@media screen and (min-width: 768px) {
  .a-4-block {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
  }
}
@media screen and (max-width: 767px) {
  .a-4-block {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
  }
}

.a-4-body {
  height: auto;
}
@media screen and (min-width: 768px) {
  .a-4-body {
    width: 450px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-body {
    width: 100%;
    padding-top: 25px;
  }
}

.a-4-num {
  margin-bottom: 10px;
  color: #FFF;
  font-weight: 700;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 768px) {
  .a-4-num {
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-num {
    font-size: 4.3vw;
    padding: 0;
    margin-bottom: calc(20/750 * 100vw);
    margin-right: calc(20/750 * 100vw);
    display: flex;
    align-items: flex-end;
  }
}

.a-4-num-digit {
  display: inline-block;
  padding-left: 10px;
}
@media screen and (min-width: 768px) {
  .a-4-num-digit {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-num-digit {
    font-size: 4.8vw;
  }
}

.a-4-ttl {
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .a-4-ttl {
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-ttl {
    font-size: calc(34/750 * 100vw);
  }
}

.a-4-txt {
  margin-top: 5px;
  text-align: justify;
  font-size: 18px;
  line-height: 1.8;
  font-feature-settings: "palt";
  letter-spacing: -0.01rem;
}
@media screen and (min-width: 768px) {
  .a-4-txt {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-txt {
    margin-top: calc(20/750 * 100vw);
    font-size: calc(26/750 * 100vw);
  }
}
.a-4-txt small {
  font-size: 70%;
}

.a-4-txt-notes {
  font-size: 11px;
  padding-top: 15px;
}
@media screen and (max-width: 767px) {
  .a-4-txt-notes {
    font-size: calc(18/750 * 100vw);
    padding-top: calc(15/750 * 100vw);
  }
}

.a-4-img {
  content: "";
  display: block;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .a-4-img {
    width: 420px;
    height: 288px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-img {
    width: 100%;
    height: calc(460/750 * 100vw);
    font-size: 0;
  }
}

.a-4-img-01 {
  background-image: url(../img/reason_img01.png);
}

.a-4-img-02 {
  background-image: url(../img/reason_img02.png);
}

.a-4-img-03 {
  background-image: url(../img/reason_img03.png);
}

@media screen and (min-width: 768px) {
  .a-4-block:not(:last-child) {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 767px) {
  .a-4-block:not(:last-child) {
    margin-bottom: 50px;
  }
}

@media screen and (min-width: 768px) {
  .a-order-01,
.a-order-03 {
    order: 2;
  }
}

@media screen and (min-width: 768px) {
  .a-order-02 {
    order: 0;
  }
}

@media screen and (max-width: 767px) {
  .a-order-01,
.a-order-02,
.a-order-03 {
    order: 2;
  }
}

@media screen and (min-width: 768px) {
  .a-4-img-01::after,
.a-4-img-03::after {
    left: -10px;
  }
}

@media screen and (min-width: 768px) {
  .a-4-img-02::after {
    right: -10px;
  }
}

@media screen and (min-width: 768px) {
  .a-4-img-01,
.a-4-img-03 {
    order: 1;
  }
}

@media screen and (min-width: 768px) {
  .a-4-img-02 {
    order: 2;
  }
}

@media screen and (max-width: 767px) {
  .a-4-img-box {
    width: 100%;
    display: flex;
  }
}

@media screen and (max-width: 767px) {
  .a-4-img-01,
.a-4-img-02,
.a-4-img-03 {
    order: 1;
    background-size: contain;
  }
}

@media screen and (max-width: 767px) {
  .a-4-num-img {
    width: calc(220/750 * 100vw);
    height: auto;
  }
}

/* ============================
a-5
===================================================*/
.a-5 {
  background-color: #EBF7FF;
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-5 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-5 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-5-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-5-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

@media screen and (max-width: 767px) {
  .a-5 .container {
    width: 100%;
  }
}

.a-5-block {
  display: flex;
  justify-content: space-between;
  padding-top: 40px;
  flex-wrap: wrap;
}

.a-5-box {
  width: 313px;
  background-color: #fff;
  margin-bottom: 84px;
}
@media screen and (max-width: 767px) {
  .a-5-box {
    width: calc(480/750 * 100vw);
    margin-bottom: 0;
    margin-right: calc(30/750 * 100vw);
  }
}

.a-5-box-ttl {
  background-color: #F3F3F3;
  padding: 16px 0;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-5-box-ttl {
    background-color: #F3F3F3;
    padding: 16px 0;
    font-size: calc(28/750 * 100vw);
  }
}

.a-5-list {
  padding: 15px 20px;
}

.a-5-list-item {
  display: flex;
  height: 50px;
}
@media screen and (max-width: 767px) {
  .a-5-list-item {
    height: calc(80/750 * 100vw);
  }
}

.a-5-list-item-head {
  padding-right: 10px;
  width: 74px;
  font-size: 16px;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  .a-5-list-item-head {
    padding-right: 10px;
    width: calc(110/750 * 100vw);
    font-size: calc(26/750 * 100vw);
  }
}

.a-5-list-item-body {
  margin: auto 0;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-5-list-item-body {
    margin: auto 0;
    font-size: calc(26/750 * 100vw);
    font-weight: bold;
  }
}

.a-5-list-item01:before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  background: url(../img/icon_money02_a.html) top left/contain no-repeat;
  padding-right: 8px;
  display: block;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  .a-5-list-item01:before {
    content: "";
    display: inline-block;
    width: calc(30/750 * 100vw);
    height: calc(30/750 * 100vw);
    background: url(../img/icon_money02_a.html) top left/contain no-repeat;
    padding-right: 8px;
    display: block;
    margin: auto 0;
  }
}

.a-5-list-item02:before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  background: url(../img/icon_map_a.html) top left/contain no-repeat;
  padding-right: 8px;
  display: block;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  .a-5-list-item02:before {
    content: "";
    display: inline-block;
    width: calc(30/750 * 100vw);
    height: calc(30/750 * 100vw);
    background: url(../img/icon_map_a.html) top left/contain no-repeat;
    padding-right: 8px;
    display: block;
    margin: auto 0;
  }
}

.a-5-list-item03:before {
  content: "";
  display: inline-block;
  width: 19px;
  height: 19px;
  background: url(../img/icon_shiny_a.html) top left/contain no-repeat;
  padding-right: 8px;
  display: block;
  margin: auto 0;
}
@media screen and (max-width: 767px) {
  .a-5-list-item03:before {
    content: "";
    display: inline-block;
    width: calc(30/750 * 100vw);
    height: calc(30/750 * 100vw);
    background: url(../img/icon_shiny_a.html) top left/contain no-repeat;
    padding-right: 8px;
    display: block;
    margin: auto 0;
  }
}

.a-5-list-item01 .a-5-list-item-body {
  font-size: 18px;
  display: inline;
  color: #9A0000;
}
@media screen and (max-width: 767px) {
  .a-5-list-item01 .a-5-list-item-body {
    font-size: calc(26/750 * 100vw);
  }
}

.a-5-list-item01 .a-5-list-item-body span {
  font-size: 32px;
  display: inline;
}
@media screen and (max-width: 767px) {
  .a-5-list-item01 .a-5-list-item-body span {
    font-size: calc(44/750 * 100vw);
  }
}

.a-5-txt-box {
  padding: 0px 20px 20px;
}
@media screen and (max-width: 767px) {
  .a-5-txt-box {
    padding: 0px 20px 20px;
  }
}

.a-5-txt-ttl {
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .a-5-txt-ttl {
    font-size: calc(26/750 * 100vw);
    letter-spacing: 0.1em;
  }
}

.a-5-txt {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .a-5-txt {
    font-size: calc(26/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .a-5-slide-dots {
    text-align: center;
    padding-top: 10px;
  }
}

@media screen and (max-width: 767px) {
  .a-5-slide-dots li {
    display: inline-block;
    margin: 0 10px;
  }
}

@media screen and (max-width: 767px) {
  .a-5-slide-dots li button {
    position: relative;
    text-indent: -9999px;
    border: none;
    background-color: transparent;
  }
}

@media screen and (max-width: 767px) {
  .a-5-slide-dots li button:before {
    content: "";
    background: url(../img/dot_no_active_a.html) top left/contain no-repeat;
    font-size: 20px;
    text-indent: 0px;
    position: absolute;
    top: 0;
    left: 0;
    width: calc(25/750 * 100vw);
    height: calc(25/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .a-5-slide-dots li.slick-active button:before {
    background: url(../img/dot_active_a.html) top left/contain no-repeat;
  }
}

/* ============================
a-6
===================================================*/
.a-6 {
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-6 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-6 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-6-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-6-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

.a-6-area {
  padding-top: 40px;
}

.a-6-box {
  display: flex;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-6-box {
    display: block;
    padding-bottom: calc(160/750 * 100vw);
  }
}

.a-6-box:last-child {
  padding-bottom: 0px;
}
@media screen and (max-width: 767px) {
  .a-6-box:last-child {
    padding-bottom: 0px;
  }
}

.a-6-img-box {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .a-6-img-box {
    width: 100%;
    padding-bottom: calc(30/750 * 100vw);
  }
}

.a-6-block {
  width: 50%;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .a-6-block {
    width: 100%;
  }
}

.a-6-num {
  color: #0062B6;
  font-family: "Poppins", sans-serif;
  font-size: 30px;
  font-weight: bold;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-6-num {
    font-size: calc(34/750 * 100vw);
    padding-bottom: calc(20/750 * 100vw);
  }
}

.a-6-ttl {
  font-size: 24px;
  font-weight: bold;
  padding-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-6-ttl {
    font-size: calc(32/750 * 100vw);
    padding-bottom: calc(20/750 * 100vw);
  }
}

.a-6-txt {
  font-size: 18px;
  line-height: 2.4em;
}
@media screen and (max-width: 767px) {
  .a-6-txt {
    font-size: calc(26/750 * 100vw);
    padding-bottom: calc(40/750 * 100vw);
  }
}

.a-6-ba {
  margin-top: auto;
  align-items: flex-end;
  margin-bottom: 20px;
}

.a-6-ba-box {
  display: flex;
}

.a-6-ba-before {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .a-6-ba-before {
    font-size: calc(24/750 * 100vw);
  }
}

.a-6-ba-arrow {
  width: 30px;
  margin-right: 10px;
  margin-left: 10px;
}

.a-6-ba-after {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .a-6-ba-after {
    font-size: calc(24/750 * 100vw);
  }
}

.a-6-ba-after span {
  display: inline;
  color: #9A0000;
  font-weight: bold;
}

.a-6-ba-after-01 span {
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .a-6-ba-after-01 span {
    font-size: calc(28/750 * 100vw);
  }
}

.a-6-ba-after-02 span {
  font-size: 30px;
}
@media screen and (max-width: 767px) {
  .a-6-ba-after-02 span {
    font-size: calc(38/750 * 100vw);
  }
}

.a-6-ba-ttl {
  font-size: 22px;
  font-weight: bold;
  border-bottom: 1px solid #000;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-6-ba-ttl {
    font-size: calc(36/750 * 100vw);
    font-weight: bold;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
    margin-bottom: 20px;
  }
}

.a-6-ba-before-01,
.a-6-ba-after-01 {
  height: 60px;
  line-height: 1;
  display: flex;
  align-items: top;
}
@media screen and (max-width: 767px) {
  .a-6-ba-before-01,
.a-6-ba-after-01 {
    height: calc(80/750 * 100vw);
  }
}

.a-6-ba-before-02,
.a-6-ba-after-02 {
  /* height: 40px; */
  line-height: 1;
  display: flex;
  align-items: top;
}

.a-6-ba-before-01:before,
.a-6-ba-after-01:before {
  content: "";
  display: inline-block;
  width: 20px;
  background: url(../img/icon_money_a.html) top left/contain no-repeat;
  margin-right: 10px;
  vertical-align: top;
}
@media screen and (max-width: 767px) {
  .a-6-ba-before-01:before,
.a-6-ba-after-01:before {
    width: calc(24/750 * 100vw);
    height: calc(24/750 * 100vw);
    margin-right: calc(15/750 * 100vw);
  }
}

.a-6-ba-before-02:before,
.a-6-ba-after-02:before {
  content: "";
  display: inline-block;
  width: 20px;
  background: url(../img/icon_bag_a.html) top left/contain no-repeat;
  margin-right: 10px;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .a-6-ba-before-02:before,
.a-6-ba-after-02:before {
    width: calc(24/750 * 100vw);
    height: calc(24/750 * 100vw);
    margin-right: calc(15/750 * 100vw);
  }
}

.a-6-ba-arrow {
  background: url(../img/icon_arrow.html) center center/contain no-repeat;
}

@media screen and (max-width: 767px) {
  .a-6-ba-before-01 dt,
.a-6-ba-before-02 dt,
.a-6-ba-after-01 dt,
.a-6-ba-after-02 dt {
    width: calc(80/750 * 100vw);
  }
}

/* ============================
a-7
===================================================*/
.a-7 {
  background-color: #F9F9F8;
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-7 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-7 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-7-inner {
  width: 900px;
  margin: 0 auto;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .a-7-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(120/750 * 100vw);
    width: 92%;
  }
}

.a-7-block-box {
  width: 100%;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .a-7-block-box {
    display: flex;
    flex-direction: column;
  }
}

.point-block01 .a-7-block-box, .point-block02 .a-7-block-box {
  height: 300px;
}
@media screen and (max-width: 767px) {
  .point-block01 .a-7-block-box, .point-block02 .a-7-block-box {
    width: 100%;
    height: auto;
  }
}

.point-block03 .a-7-block-box {
  height: 320px;
}
@media screen and (max-width: 767px) {
  .point-block03 .a-7-block-box {
    width: 100%;
    height: auto;
  }
}

.a-7-block-box {
  margin-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .a-7-block-box {
    margin-bottom: calc(10/750 * 100vw);
  }
}

.a-7-block:last-child {
  margin-bottom: 0px;
}

.a-7-img-box {
  width: 430px;
}
@media screen and (max-width: 767px) {
  .a-7-img-box {
    width: 100%;
  }
}

.a-7-block:nth-child(2) .a-7-img-box {
  order: 3;
}
@media screen and (max-width: 767px) {
  .a-7-block:nth-child(2) .a-7-img-box {
    order: 1;
  }
}

@media screen and (max-width: 767px) {
  .a-7-num-img {
    width: calc(120/750 * 100vw);
  }
}

.a-7-body {
  width: 470px;
  padding: 35px 30px 0px 20px;
}
@media screen and (max-width: 767px) {
  .a-7-body {
    width: 100%;
    padding: calc(50/750 * 100vw) calc(40/750 * 100vw) calc(40/750 * 100vw);
  }
}

.point-block01 .a-7-body {
  background: url(../img/point_bg_01.png) top 13px right 20px/156px 71px no-repeat;
}
@media screen and (max-width: 767px) {
  .point-block01 .a-7-body {
    background: url(../img/point_bg_01.png) top 13px right 20px/calc(256/750 * 100vw) auto no-repeat;
  }
}

.point-block02 .a-7-body {
  background: url(../img/point_bg_02.png) top 13px right 20px/258px 88px no-repeat;
}
@media screen and (max-width: 767px) {
  .point-block02 .a-7-body {
    background: url(../img/point_bg_02.png) top 13px right 20px/calc(358/750 * 100vw) auto no-repeat;
  }
}

.point-block03 .a-7-body {
  background: url(../img/point_bg_03.png) top 13px right 20px/196px 71px no-repeat;
}
@media screen and (max-width: 767px) {
  .point-block03 .a-7-body {
    background: url(../img/point_bg_03.png) top 13px right 20px/calc(296/750 * 100vw) auto no-repeat;
  }
}

.a-7-block:nth-child(2) .a-7-body {
  padding: 35px 0px 0px 30px;
}
@media screen and (max-width: 767px) {
  .a-7-block:nth-child(2) .a-7-body {
    padding: calc(50/750 * 100vw) calc(40/750 * 100vw) calc(40/750 * 100vw);
  }
}

.a-7-block {
  margin-bottom: 60px;
}
.a-7-block:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .a-7-block {
    margin-bottom: calc(120/750 * 100vw);
  }
}

.a-7-ttl {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .a-7-ttl {
    font-size: calc(32/750 * 100vw);
    padding-bottom: calc(20/750 * 100vw);
  }
}

.a-7-txt {
  font-size: 16px;
  font-feature-settings: "palt";
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .a-7-txt {
    font-size: calc(26/750 * 100vw);
  }
}

.a-7-block-notes {
  font-size: 11px;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .a-7-block-notes {
    font-size: calc(18/750 * 100vw);
  }
}

/* ============================
a-8
===================================================*/
.a-8 {
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-8 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-8 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-8-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-8-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

.a-8-area {
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .a-8-area {
    padding-top: calc(60/750 * 100vw);
  }
}

.a-8-block {
  position: relative;
}

.a-8-body {
  display: block;
  position: absolute;
  background: rgba(255, 255, 255, 0.8);
  top: 54px;
  left: 400px;
  padding: 40px 30px;
  box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 767px) {
  .a-8-body {
    position: relative;
    top: 0;
    left: 0;
    box-shadow: none;
    padding: calc(50/750 * 100vw) 0px;
  }
}

.a-8-ttl {
  font-weight: bold;
  font-size: 20px;
  padding-bottom: 20px;
  line-height: 1.8em;
}
@media screen and (max-width: 767px) {
  .a-8-ttl {
    font-size: calc(30/750 * 100vw);
    padding-bottom: calc(50/750 * 100vw);
  }
}

.a-8-txt {
  font-size: 16px;
}

/* ============================
flow
===================================================*/
.a-9 {
  background-color: #EBF7FF;
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-9 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-9 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-9-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-9-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

.a-9-area {
  display: flex;
  justify-content: space-around;
  padding-top: 50px;
}
@media screen and (max-width: 767px) {
  .a-9-area {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding-top: calc(60/750 * 100vw);
  }
}

.a-9-intro-txt {
  text-align: center;
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .a-9-intro-txt {
    padding-top: calc(60/750 * 100vw);
  }
}

.a-9-block {
  width: 227px;
  background-color: #fff;
  padding: 15px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .a-9-block {
    width: auto;
    margin: 0 calc(20/750 * 100vw) calc(40/750 * 100vw);
    padding: 15px 30px;
  }
}

.a-9-block::before {
  position: absolute;
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  background: url(../img/icon_arrow02_a.html) center center/contain no-repeat;
  top: 50%;
  transform: translate(0%, -50%);
  right: -23px;
}
@media screen and (max-width: 767px) {
  .a-9-block::before {
    position: absolute;
    width: calc(65/750 * 100vw);
    height: calc(65/750 * 100vw);
    background: url(../img/icon_arrow03_a.html) center center/contain no-repeat;
    top: calc(-52/750 * 100vw);
    right: auto;
    left: 50%;
    transform: translate(-50%, 0%);
  }
}

.a-9-block:last-child:before {
  background: none;
}
@media screen and (max-width: 767px) {
  .a-9-block:last-child:before {
    background: url(../img/icon_arrow03_a.html) center center/contain no-repeat;
  }
}

.a-9-ttl {
  background: linear-gradient(transparent 47%, #000 47%, #000 52%, transparent 52%);
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  .a-9-ttl {
    width: 80%;
    margin: 0 auto;
  }
}

.a-9-ttl span {
  background: #fff;
  display: inline;
  padding: 0 8px;
}

.a-9-sub-ttl {
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  padding-bottom: 20px;
}

.a-9-img-box {
  width: 100%;
  height: 140px;
}
@media screen and (max-width: 767px) {
  .a-9-img-box {
    width: 100%;
    height: 140px;
    margin-bottom: calc(40/750 * 100vw);
  }
}

.a-9-img {
  margin: 0 auto;
  /* width: 50%; */
  height: 90%;
  display: block;
}

@media screen and (max-width: 767px) {
  .a-9-txt {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .a-9-block:first-child:before {
    background: none;
  }
}

/* ============================
performance
===================================================*/
.a-10 {
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-10 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-10 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-10-inner {
  width: 1000px;
  margin: 0 auto;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .a-10-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(150/750 * 100vw);
    width: 92%;
  }
}

.a-10-area {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: 60px;
}
@media screen and (max-width: 767px) {
  .a-10-area {
    padding-top: calc(60/750 * 100vw);
    margin: 0 calc(20/750 * 100vw);
  }
}

.a-10-img-box {
  width: 180px;
  border: #D9D9D9 solid 1px;
  margin-right: 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .a-10-img-box {
    width: calc(190/750 * 100vw);
    margin-right: calc(0/750 * 100vw);
    margin-bottom: calc(20/750 * 100vw);
  }
}

.a-10-img-box:nth-child(5n) {
  margin-right: 0px;
}
@media screen and (max-width: 767px) {
  .a-10-img-box:nth-child(5n) {
    margin-right: calc(20/750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .a-10-img-box:nth-child(3n) {
    margin-right: 0px !important;
  }
}

/* ============================
a-11
===================================================*/
.a-11 {
  position: relative;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
  overflow: initial;
}
@media screen and (min-width: 768px) {
  .a-11 {
    min-width: 1000px;
  }
}
@media screen and (max-width: 767px) {
  .a-11 {
    position: relative;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    overflow: initial;
  }
}

.a-11-inner {
  width: 900px;
  margin: 0 auto;
  padding-top: 80px;
  padding-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .a-11-inner {
    padding-top: calc(120/750 * 100vw);
    padding-bottom: calc(100/750 * 100vw);
    width: 92%;
  }
}

.a-11-area {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .a-11-area {
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .a-11-area {
    margin: 0 auto;
  }
}

.a-11-box {
  position: relative;
  width: 100%;
  margin: 0 auto;
  color: #000;
}

.z-box {
  border: solid 3px #E1E1E1;
}

.a-11-box {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .a-11-box {
    margin-bottom: calc(40/750 * 100vw);
  }
}

.a-11-box:last-child {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .a-11-box:last-child {
    margin-bottom: calc(30/750 * 100vw);
  }
}

.a-11-label {
  display: block;
  position: relative;
  margin: 0;
  cursor: pointer;
  background: #fff;
  font-weight: 700;
  letter-spacing: 0.079em;
  line-height: 1.09;
}
@media screen and (min-width: 768px) {
  .a-11-label {
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .a-11-label {
    font-size: 3.3vw;
  }
}

.a-11-q {
  font-size: 20px;
  display: flex;
  padding: 20px 48px 20px 20px;
  border: solid 3px #E1E1E1;
  position: relative;
  background: #fff;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .a-11-q {
    border: solid calc(4/750 * 100vw) #E1E1E1;
    padding: calc(25/750 * 100vw) calc(20/750 * 100vw);
  }
}

.a-11-q dt {
  font-family: "Oswald", sans-serif;
  color: #ff6b2b;
  font-size: 30px;
  display: inline;
  padding-right: 28px;
  line-height: 1;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-11-q dt {
    padding-top: calc(5/750 * 100vw);
    font-size: calc(36/750 * 100vw);
    padding-right: calc(30/750 * 100vw);
    line-height: 1;
  }
}

.a-11-ac {
  display: none;
  transition: max-height 0.35s;
  color: #333333;
  background: #ffede5;
}

.is-open .a-11-ac {
  display: block;
}

.a-11-ac-txt {
  padding: 20px 20px 20px 24px;
  font-weight: 500;
  display: flex;
  line-height: 1.8em;
}
@media screen and (max-width: 767px) {
  .a-11-ac-txt {
    font-size: calc(26/750 * 100vw);
    padding: calc(25/750 * 100vw) calc(24/750 * 100vw);
    line-height: 1.6;
  }
}

.a-11-ac-txt dt {
  font-family: "Oswald", sans-serif;
  color: #ff6b2b;
  font-size: 30px;
  display: inline;
  padding-right: 28px;
  line-height: 1.2em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-11-ac-txt dt {
    font-size: calc(36/750 * 100vw);
    padding-right: calc(30/750 * 100vw);
    line-height: 1;
  }
}

.is-open.a-11-check ~ .a-11-ac {
  max-height: 20em;
}

.a-11-toggle {
  position: absolute;
  right: 30px;
  border: 2px solid #dcdcdc;
  border-radius: 50%;
  display: block;
  top: 50%;
  transform: translate(0%, -50%);
}
@media screen and (min-width: 768px) {
  .a-11-toggle {
    width: 31px;
    height: 31px;
  }
}
@media screen and (max-width: 767px) {
  .a-11-toggle {
    width: 6vw;
    height: 6vw;
    right: calc(20/750 * 100vw);
  }
}

.a-11-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  width: 50%;
  background: #dcdcdc;
  transform: translate(-50%, -50%);
}

.a-11-toggle::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  height: 50%;
  width: 2px;
  background: #dcdcdc;
  transform: translate(-50%, -50%);
  transition: all 0.35s;
}

.is-open .a-11-toggle::before {
  transform: translate(-50%, -50%) rotate(90deg);
}

@media screen and (min-width: 768px) {
  .a-11-q::before {
    margin-left: -2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .a-11-q::before {
    margin-left: -2em;
  }
}

.a-11-q dd {
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .a-11-q dd {
    font-size: calc(28/750 * 100vw);
    padding-right: calc(60/750 * 100vw);
  }
}

.a-11-ac-txt dd {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .a-11-ac-txt dd {
    font-size: calc(26/750 * 100vw);
  }
}

.a-11-notes {
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .a-11-notes {
    font-size: calc(18/750 * 100vw);
  }
}

/* ============================
a-footer
===================================================*/
.a-footer {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .a-footer {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 767px) {
  .a-footer {
    padding-bottom: 15vw;
  }
}

.a-footer-main {
  margin: auto;
}
@media screen and (min-width: 768px) {
  .a-footer-main {
    width: 100%;
    margin: auto;
  }
}
@media screen and (max-width: 767px) {
  .a-footer-main {
    width: 100%;
    margin: auto;
  }
}

.a-footer-block {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 0 40px;
  width: 900px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .a-footer-block {
    width: 100%;
    padding: 0 0 calc(40/750 * 100vw);
    flex-direction: column;
  }
}

.a-footer-box-right {
  display: flex;
  font-size: 14px;
  justify-content: center;
  padding: 0px 0;
}
@media screen and (max-width: 767px) {
  .a-footer-box-right {
    display: flex;
    font-size: 14px;
    justify-content: center;
    padding: calc(40/750 * 100vw) 0 0;
  }
}

.a-footer-box-left-ttl {
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 10px;
}

.a-footer-box-left-txt {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .a-footer-box-left-txt {
    font-size: calc(24/750 * 100vw);
  }
}

.a-footer-p-icon-box {
  padding-left: 10px;
}
@media screen and (max-width: 767px) {
  .a-footer-p-icon-box {
    width: calc(296/750 * 100vw);
    padding-left: 0;
  }
}

.a-footer-main__copyright {
  text-align: center;
  letter-spacing: 0.079em;
  border-top: solid 1px #707070;
}
@media screen and (min-width: 768px) {
  .a-footer-main__copyright {
    padding: 40px 0 30px;
    font-size: 16px;
    color: #161616;
  }
}
@media screen and (max-width: 767px) {
  .a-footer-main__copyright {
    padding: 20px;
    font-size: 3vw;
  }
}

@media screen and (max-width: 767px) {
  .a-footer-box-left {
    width: auto;
    text-align: center;
  }
}

/* ============================
bnr-area-btn
===================================================*/
.book-bnr {
  text-align: center;
  margin: 40px 0;
}
@media screen and (max-width: 767px) {
  .book-bnr {
    margin: calc(60/750 * 100vw);
  }
}

.bnr-area-btn {
  display: block;
  text-align: center;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .bnr-area-btn {
    width: 100%;
    padding-bottom: 80px;

  }
}

.bnr-area-btn a {
  position: relative;
  border-radius: 4px;
  background: #0071BC;
  width: 800px;
  height: 100px;
  transition: 0.4s;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.4s;
}
.bnr-area-btn a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .bnr-area-btn a {
    width: calc(640/750 * 100vw);
    height: calc(120/750 * 100vw);
  }
}

.bnr-area-btn a::after {
  right: 10px;
  box-sizing: border-box;
  width: 15px;
  height: 15px;
  border: 15px solid transparent;
  border-left: 15px solid #fff;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  background: url(../img/info_material_cursor_a.png) center no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bnr-area-btn a::after {
    right: calc(10/750 * 100vw);
    box-sizing: border-box;
    width: calc(15/750 * 100vw);
    height: calc(15/750 * 100vw);
    border: calc(15/750 * 100vw) solid transparent;
    border-left: calc(15/750 * 100vw) solid #fff;
  }
}

.bnr-area-btn-txt {
  color: #FFF;
  font-size: 18px;
  font-weight: bold;
}

.bnr-area-btn-txt {
  padding: 0;
  font-size: 30px;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .bnr-area-btn-txt {
    padding-right: calc(10/750 * 100vw);
    font-size: calc(32/750 * 100vw);
  }
}

.baloon {
  position: relative;
  display: table;
  margin: auto;
  background-color: #ffffff;
  font-weight: 700;
}

@media (min-width: 768px) {
  .baloon {
    margin-bottom: 30px;
    padding: 12px 34px 10px;
    border: solid 2px #000;
    border-radius: 35px;
    font-size: 20px;
  }

  .support-body__bnr-area--txt {
    margin-bottom: -30px;
  }
}
@media (max-width: 767px) {
  .baloon {
    margin-bottom: calc(60 / 750 * 100vw);
    padding: calc(15 / 750 * 100vw) calc(50 / 750 * 100vw) calc(10 / 750 * 100vw);
    border: solid calc(3 / 750 * 100vw) #000;
    border-radius: calc(35 / 750 * 100vw);
    font-size: calc(28 / 750 * 100vw);
  }

  .support-body__bnr-area--txt {
    margin-bottom: calc(-30 / 750 * 100vw);
  }
}
.baloon::before, .baloon::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  display: block;
  height: 0;
  width: 0;
  border: solid transparent;
  pointer-events: none;
}

.baloon::before {
  border-color: rgba(0, 0, 255, 0);
  border-top-color: #000;
}

@media (min-width: 768px) {
  .baloon::before {
    margin: 2px 0 0 -10px;
    border-top-width: 12px;
    border-bottom-width: 14px;
    border-left-width: 10px;
    border-right-width: 10px;
  }
}
@media (max-width: 767px) {
  .baloon::before {
    margin: calc(2 / 750 * 100vw) 0 0 calc(-12 / 750 * 100vw);
    border-top-width: calc(14 / 750 * 100vw);
    border-bottom-width: calc(14 / 750 * 100vw);
    border-left-width: calc(12 / 750 * 100vw);
    border-right-width: calc(12 / 750 * 100vw);
  }
}
.baloon::after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #FFFFFF;
}

@media (min-width: 768px) {
  .baloon::after {
    margin-left: -10px;
    border-top-width: 12px;
    border-bottom-width: 12px;
    border-left-width: 10px;
    border-right-width: 10px;
  }
}
@media (max-width: 767px) {
  .baloon::after {
    margin-left: calc(-10 / 750 * 100vw);
    border-top-width: calc(12 / 750 * 100vw);
    border-bottom-width: calc(12 / 750 * 100vw);
    border-left-width: calc(10 / 750 * 100vw);
    border-right-width: calc(10 / 750 * 100vw);
  }
}
.main-ttl-wrap {
  text-align: center;
  padding-bottom: 90px;
}
@media screen and (max-width: 767px) {
  .main-ttl-wrap {
    padding-bottom: calc(90 / 750 * 100vw);
  }
}

.main-ttl {
  font-size: 36px;
  line-height: 1.3;
  display: inline-block;
  position: relative;
}
.main-ttl:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -30px;
  /*下線の上下位置調整*/
  display: inline-block;
  width: 100px;
  /*下線の幅*/
  height: 3px;
  /*下線の太さ*/
  transform: translate(-50%);
  /*位置調整*/
  background-color: #ff6b2b;
  /*下線の色*/
}
@media screen and (max-width: 767px) {
  .main-ttl {
    font-size: calc(42 / 750 * 100vw);
  }
  .main-ttl:before {
    bottom: calc(-30 / 750 * 100vw);
    /*下線の上下位置調整*/
    width: calc(100 / 750 * 100vw);
    /*下線の幅*/
    height: calc(3 / 750 * 100vw);
    /*下線の太さ*/
  }
}

.main-sub-ttl-wrap {
  text-align: center;
}

.main-sub-ttl {
  background: #ff6b2b;
  font-size: 22px;
  color: #fff;
  font-weight: bold;
  padding: 5px 36px;
  display: inline-block;
  border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .main-sub-ttl {
    font-size: calc(30 / 750 * 100vw);
    padding: calc(4 / 750 * 100vw) calc(40 / 750 * 100vw);
  }
}

/* ============================
about
===================================================*/
.about-inner {
  width: 900px;
  position: relative;
  margin: 0px auto 120px;
  padding-bottom: 0px;
}
@media screen and (max-width: 767px) {
  .about-inner {
    width: calc(670 / 750 * 100vw);
    margin: 0 auto 7rem;
    padding-bottom: 0;
  }
}

.about-txt-wrap {
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .about-txt-wrap {
    padding-bottom: calc(50 / 750 * 100vw);
  }
}

.about-txt {
  font-size: 18px;
  line-height: 1.8;
  padding-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .about-txt {
    font-size: calc(26 / 750 * 100vw);
    padding-bottom: calc(30 / 750 * 100vw);
  }
}

.about-sub-ttl {
  text-align: center;
  font-size: 0;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .about-sub-ttl {
    margin: 0 auto;
    width: calc(500 / 750 * 100vw);
    padding-bottom: calc(40 / 750 * 100vw);
  }
}

.about-main-sub-ttl-wrap {
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .about-main-sub-ttl-wrap {
    margin-bottom: calc(20 / 750 * 100vw);
  }
}

.about-list01 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .about-list01 {
    flex-direction: column;
    margin-bottom: 0;
  }
}

.about-list02 {
  display: flex;
  justify-content: space-between;
  margin: 0 45px 60px;
}
@media screen and (max-width: 767px) {
  .about-list02 {
    flex-direction: column;
    margin: 0 0 calc(40 / 750 * 100vw);
  }
}

@media screen and (max-width: 767px) {
  .about-list-item {
    margin-bottom: calc(20 / 750 * 100vw);
  }
}

.about-bottom-box {
  width: 840px;
  display: flex;
  margin: 0 auto;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .about-bottom-box {
    width: 100%;
    flex-direction: column;
  }
}

.about-bottom-box-txt {
  width: 380px;
}
.about-bottom-box-txt h4 {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 20px;
}
.about-bottom-box-txt p {
  font-size: 18px;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .about-bottom-box-txt {
    width: 100%;
  }
  .about-bottom-box-txt h4 {
    font-size: calc(32 / 750 * 100vw);
    font-weight: bold;
    padding-bottom: calc(20 / 750 * 100vw);
  }
  .about-bottom-box-txt p {
    font-size: calc(26 / 750 * 100vw);
  }
}

.about-bottom-box-img {
  width: 420px;
}
@media screen and (max-width: 767px) {
  .about-bottom-box-img {
    width: 100%;
  }
}

/* ============================
instructor
===================================================*/
.instructor-inner {
  width: 900px;
  position: relative;
  margin: 0px auto 120px;
  padding-bottom: 0px;
}
@media screen and (max-width: 767px) {
  .instructor-inner {
    width: calc(670 / 750 * 100vw);
    margin: 0 auto 7rem;
    padding-bottom: 0;
  }
}

.instructor01-container {
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .instructor01-container {
    margin-bottom: 5rem;
  }
}

.instructor01-box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 25px;
}
@media screen and (max-width: 767px) {
  .instructor01-box {
    flex-direction: column;
  }
}

.instructor01-box-txt-wrap {
  width: 560px;
}
@media screen and (max-width: 767px) {
  .instructor01-box-txt-wrap {
    width: 100%;
    order: 3;
  }
}

.instructor01-box-img {
  width: 290px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .instructor01-box-img {
    width: 100%;
    margin-bottom: calc(40 / 750 * 100vw);
  }
}

.instructor01-box-ttl-wrap {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #000;
}
@media screen and (max-width: 767px) {
  .instructor01-box-ttl-wrap {
    padding-bottom: calc(20 / 750 * 100vw);
    margin-bottom: calc(20 / 750 * 100vw);
  }
}

.instructor01-box-ttl {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.2rem;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .instructor01-box-ttl {
    font-size: calc(34 / 750 * 100vw);
  }
}

.instructor01-box-ttl-small {
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 10px;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .instructor01-box-ttl-small {
    font-size: calc(24 / 750 * 100vw);
    padding-bottom: calc(15 / 750 * 100vw);
  }
}

.instructor01-box-txt {
  font-size: 18px;
  line-height: 1.8;
  padding-bottom: 5px;
}
@media screen and (max-width: 767px) {
  .instructor01-box-txt {
    font-size: calc(26 / 750 * 100vw);
    padding-bottom: calc(10 / 750 * 100vw);
  }
}

small {
  font-size: 70%;
}

.instructor01-box-txt-notes {
  font-size: 11px;
}

.instructor01-message-box {
  background: #f7f7f7;
  padding: 40px 50px 25px;
}
@media screen and (max-width: 767px) {
  .instructor01-message-box {
    padding: calc(50 / 750 * 100vw) calc(40 / 750 * 100vw) calc(20 / 750 * 100vw);
  }
}
.instructor01-message-box p {
  font-size: 16px;
  line-height: 1.875;
  padding-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .instructor01-message-box p {
    padding-bottom: calc(30 / 750 * 100vw);
    font-size: calc(26 / 750 * 100vw);
  }
}

.instructor01-message-box-ttl {
  display: block;
  background: linear-gradient(transparent 50%, #000 50%, #000 51%, transparent 52%);
  text-align: center;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  .instructor01-message-box-ttl {
    margin-bottom: calc(20 / 750 * 100vw);
  }
}
.instructor01-message-box-ttl h4 {
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
  background: #f7f7f7;
  padding: 0 15px;
  letter-spacing: 0.2rem;
}
@media screen and (max-width: 767px) {
  .instructor01-message-box-ttl h4 {
    font-size: calc(30 / 750 * 100vw);
  }
}

.instructor02-main-sub-ttl-wrap {
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .instructor02-main-sub-ttl-wrap {
    margin-bottom: 2rem;
  }
}

.instructor02-txt {
  font-size: 18px;
  line-height: 1.8;
  padding-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .instructor02-txt {
    font-size: calc(26 / 750 * 100vw);
    padding-bottom: calc(60 / 750 * 100vw);
  }
}

.instructor02-list {
  display: flex;
}
@media screen and (max-width: 767px) {
  .instructor02-list {
    flex-wrap: wrap;
  }
}

.instructor02-list-item {
  width: 162px;
  margin-right: 24px;
}
.instructor02-list-item:last-child {
  margin-right: 0;
}
@media screen and (max-width: 767px) {
  .instructor02-list-item {
    width: calc(320 / 750 * 100vw);
    margin-right: calc(30 / 750 * 100vw);
    margin-bottom: calc(30 / 750 * 100vw);
  }
  .instructor02-list-item:nth-child(2n) {
    margin-right: 0;
  }
}

.instructor02-list-ttl {
  text-align: center;
  font-size: 18px;
  font-weight: 500;
  padding-top: 10px;
  letter-spacing: 0.04rem;
}
@media screen and (max-width: 767px) {
  .instructor02-list-ttl {
    font-size: calc(30 / 750 * 100vw);
    padding-top: calc(10 / 750 * 100vw);
  }
}

.instructor02-list-sub-ttl {
  text-align: center;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  font-size: 12px;
  color: #f48c5f;
}
@media screen and (max-width: 767px) {
  .instructor02-list-sub-ttl {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1;
  }
}

/* =======================================================
B B-TOL 汎用（英会話）
===================================================*/
/*---------------------------------------------------------
b ttl-item
---------------------------------------------------------*/
.b-ttl02 {
  width: 960px;
  background-color: #4c8c48;
  color: #ffe65a;
  margin: 0 auto;
  font-size: 26px;
  border-radius: 50px;
  padding: 10px 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-ttl02 {
    width: 87.5%;
    font-size: 1rem;
    font-size: 3.5vw;
  }
}

.b-ttl02-inner {
  position: relative;
}

.b-ttl02-inner::before {
  position: absolute;
  content: "“";
  font-size: 60px;
  line-height: 1;
  top: -0.8rem;
  left: -2.6rem;
}
@media screen and (max-width: 767px) {
  .b-ttl02-inner::before {
    position: absolute;
    content: "“";
    font-size: 3rem;
    font-size: 9.375vw;
    line-height: 1;
    top: -1rem;
    left: -1.2rem;
  }
}

.b-ttl02-inner::after {
  position: absolute;
  content: "”";
  font-size: 60px;
  line-height: 1;
  top: -0.8rem;
  right: -1.8rem;
}
@media screen and (max-width: 767px) {
  .b-ttl02-inner::after {
    position: absolute;
    content: "”";
    font-size: calc(54/640 * 100vw);
    line-height: 1;
    top: -1rem;
    right: -1rem;
  }
}

.b-ttl-comment-SS {
  font-size: 16px;
  font-weight: 400;
  color: #fff;
  opacity: 0.6;
  filter: alpha(opacity=60);
}
@media screen and (max-width: 767px) {
  .b-ttl-comment-SS {
    font-size: 0.8rem;
    font-size: 2.5vw;
    font-weight: 400;
    color: #fff;
    opacity: 0.6;
    filter: alpha(opacity=60);
  }
}

.b-ttl-comment-Y {
  font-size: 38px;
  color: #f2d42d !important;
}
@media screen and (max-width: 767px) {
  .b-ttl-comment-Y {
    font-size: 1.9rem;
    font-size: 5.9375vw;
    color: #f2d42d !important;
  }
}

.b-highlight {
  background: linear-gradient(transparent 70%, #ffe65a 0%);
  font-weight: 700;
}

/*---------------------------------------------------------
b-cvArea 
---------------------------------------------------------*/
.b-cvArea {
  background-color: #4c8c48;
  padding: 50px 0;
  color: #ffe65a;
  font-size: 22px;
  margin-bottom: 80px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-cvArea {
    padding: 1.5rem 0;
    font-size: 2.2rem;
    font-size: 6.875vw;
    margin-bottom: 4rem;
  }
}

.b-cvArea p {
  margin-bottom: 30px;
  font-weight: 600;
}
@media screen and (max-width: 767px) {
  .b-cvArea p {
    font-size: 1.6rem;
    font-size: 4.6875vw;
    margin-bottom: 1.5rem;
  }
}

@media screen and (max-width: 767px) {
  .b-cvArea a img {
    width: 87.8125%;
    margin: 0 auto;
  }
}

.b-cvArea a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

/*---------------------------------------------------------
header 
---------------------------------------------------------*/
.b-header {
  padding: 10px;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 1000;
}
@media screen and (max-width: 767px) {
  .b-header {
    text-align: left;
    padding: 1.2rem 1rem;
  }
}

.b-header-innner {
  max-width: 1280px;
  padding: 10px 0;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .b-header-innner {
    padding: 0;
  }
}

.b-header-logo {
  margin-right: auto;
  padding-top: 14px;
}
@media screen and (max-width: 767px) {
  .b-header-logo {
    width: 44.6875%;
    padding-top: 0;
  }
}

.b-header-linkArea {
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .b-header-linkArea {
    width: 44.6875%;
  }
}

.b-header-tel {
  width: 260px;
  float: left;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  .b-header-tel {
    width: 100%;
    margin: 0;
    float: right;
  }
}

.b-header-btn {
  width: 260px;
  float: right;
  margin-left: 20px;
}

.b-header-btn a img:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.b-header-btn img {
  width: 262px;
}

/*---------------------------------------------------------
mainV 
---------------------------------------------------------*/
.b-mv {
  background: url("../img/MV_b.html") center 0 no-repeat;
  background-size: cover;
  display: block;
  height: 540px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .b-mv {
    background: #fff;
    width: 100%;
    height: auto;
    position: static;
  }
}

.b-mv-inner {
  position: absolute;
  top: 123px;
  left: 46%;
}
@media screen and (max-width: 767px) {
  .b-mv-inner {
    position: static;
  }
}

.b-mv-txt {
  background-color: #4c8c48;
  text-align: center;
  color: #ffe65a;
  font-weight: 700;
  padding: 26px 0;
  letter-spacing: 2px;
  font-size: 22px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .b-mv-txt {
    font-size: 1.3rem;
    font-size: 4.0625vw;
    padding: 1rem 0;
    margin-bottom: 2rem;
  }
}

/*---------------------------------------------------------
バナー 
---------------------------------------------------------*/
.b-3 {
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-3 {
    width: 87.5%;
  }
}

.b-3 a {
  display: block;
  margin: 0 auto 50px;
  width: 800px;
}
@media screen and (max-width: 767px) {
  .b-3 a {
    display: block;
    margin: 0 auto 3rem;
    width: 100%;
  }
}

.b-3 a:hover img {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

/*---------------------------------------------------------
introduction 
---------------------------------------------------------*/
.b-4-wrap {
  width: 800px;
  position: relative;
  margin: 80px auto 120px;
  padding-bottom: 0px;
}
@media screen and (max-width: 767px) {
  .b-4-wrap {
    width: 87.5%;
    margin: 5rem auto 7rem;
    padding-bottom: 0;
  }
}

.b-4-ttl {
  text-align: center;
  font-size: 36px;
  font-weight: 700;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 30px 0;
  width: 800px;
  margin: 0 auto 40px;
}
@media screen and (max-width: 767px) {
  .b-4-ttl {
    width: 87.5%;
    font-size: 1.6rem;
    font-size: 5vw;
    padding: 1.5rem 0;
    margin: 0 auto 3rem;
  }
}

.b-4-list {
  width: 800px;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-4-list {
    width: 100%;
    margin: 0 auto;
    text-align: left;
  }
}

.b-4-list li {
  padding: 0 0 30px 65px;
  position: relative;
  font-size: 20px;
  font-weight: 700;
}
.b-4-list li:last-child {
  padding-bottom: 0;
}
@media screen and (max-width: 767px) {
  .b-4-list li {
    font-size: 1rem;
    font-size: 3.125vw;
    position: relative;
    padding: 0 0 1.5rem 1.5rem;
  }
}

.b-4-list li::before {
  width: 21px;
  height: 21px;
  content: "";
  background: url("../img/intoroduction_check.png");
  position: absolute;
  left: 30px;
  top: 4px;
}
@media screen and (max-width: 767px) {
  .b-4-list li::before {
    width: 1.1rem;
    height: 1.1rem;
    content: "";
    background: url("../img/intoroduction_check.png");
    background-size: 100% 100%;
    position: absolute;
    left: 0;
    top: 0.5rem;
  }
}

.b-4-img {
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .b-4-img {
    position: absolute;
    width: 32%;
    bottom: 0;
    right: 0;
    z-index: -999;
  }
}

.b-4-box {
  background-color: #fafafa;
  padding: 80px 0;
  text-align: center;
  position: relative;
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .b-4-box {
    background-color: #fafafa;
    padding: 3.5rem 0;
    text-align: center;
    position: relative;
    margin-bottom: 4rem;
  }
}

.b-4-box::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px;
  border-color: #fff transparent transparent;
}
@media screen and (max-width: 767px) {
  .b-4-box::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px;
    border-color: #fff transparent transparent;
  }
}

.b-4-txt {
  margin: 60px 0 80px;
  font-size: 24px;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 2px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-4-txt {
    margin: 3rem 0 2rem;
    font-size: 1.2rem;
    font-size: 3.75vw;
    font-weight: 700;
    line-height: 1.8;
    letter-spacing: 2px;
    text-align: center;
  }
}

.b-4-txt span {
  font-size: 40px;
}
@media screen and (max-width: 767px) {
  .b-4-txt span {
    font-size: 2rem;
    font-size: 6.25vw;
  }
}

@media screen and (max-width: 767px) {
  .b-4-box img {
    width: 86.875%;
    margin: 0 auto;
  }
}

/*---------------------------------------------------------
timeEfficiency b-5
---------------------------------------------------------*/
.b-5-ttl01 {
  background: url("../img/TimeEfficiency_titbg_pc.html") center 0 no-repeat;
  height: 348px;
  text-align: center;
  font-size: 24px;
  padding-top: 170px;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .b-5-ttl01 {
    background: url("../img/TimeEfficiency_titbg_sp.html") center 0 no-repeat;
    background-size: 100% auto;
    height: calc(348/640 * 100vw);
    text-align: center;
    font-size: 1.5rem;
    font-size: 4.6875vw;
    padding-top: calc(160/640 * 100vw);
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
  }
}

.b-5-box {
  width: 960px;
  margin: 80px auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-5-box {
    width: 87.5%;
    margin: calc(40/640 * 100vw) auto calc(70/640 * 100vw);
  }
}

.b-5-box dl {
  width: 326px;
  float: left;
}
@media screen and (max-width: 767px) {
  .b-5-box dl {
    width: 100%;
  }
}

.voice-txt02 {
  width: 800px;
  padding: 0 0 45px;
  margin: 0 auto;
  font-size: 14px;
  line-height: 1.8;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .voice-txt02 {
    width: 87.5%;
    padding: 1.5rem 0 2.5rem;
    margin: 0 auto;
    font-size: 1.2rem;
    font-size: 3.75vw;
    line-height: 1.8;
  }
}

.b-5-box dt {
  color: #3ba634;
  font-size: 22px;
  line-height: 1.8;
  margin-bottom: 24px;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .b-5-box dt {
    font-size: 1.4rem;
    font-size: 4.375vw;
    line-height: 1.8;
    margin-bottom: 1.8rem;
  }
}

.b-5-box dd {
  font-size: 14px;
}
@media screen and (max-width: 767px) {
  .b-5-box dd {
    margin-bottom: 2rem;
  }
}

.b-5-box img {
  float: right;
}

.b-5-box p {
  width: 326px;
  float: left;
  font-size: 14px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-5-box p {
    font-size: 1.2rem;
    font-size: 3.75vw;
    text-align: left;
    margin-bottom: 3rem;
  }
}

.b-5-Graph {
  margin-bottom: 80px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-5-Graph {
    margin-bottom: 4rem;
  }
}

.b-5-Graph h3 {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 15px 0;
  width: 472px;
  margin: 0 auto 40px;
  color: #3ba634;
}
@media screen and (max-width: 767px) {
  .b-5-Graph h3 {
    width: 80%;
    margin: 0 auto 2rem;
    font-size: 1.2rem;
    font-size: 3.75vw;
    padding: 1rem 0;
  }
}

/*---------------------------------------------------------
learningEfficiency b-6 
---------------------------------------------------------*/
.b-6-ttl01 {
  background: url("../img/LearningEfficiency_titbg_pc.html") center 0 no-repeat;
  height: 334px;
  text-align: center;
  font-size: 24px;
  padding-top: 170px;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .b-6-ttl01 {
    background: url("../img/LearningEfficiency_titbg_sp.html") center 0 no-repeat;
    background-size: 100% auto;
    height: calc(348/640 * 100vw);
    text-align: center;
    font-size: 1.5rem;
    font-size: 4.6875vw;
    padding-top: calc(160/640 * 100vw);
    font-weight: 700;
    color: #fff;
    line-height: 1.3;
  }
}

.b-6-list {
  width: 960px;
  margin: 80px auto;
}
@media screen and (max-width: 767px) {
  .b-6-list {
    width: 87.5%;
    margin: 2rem auto 0;
  }
}

.b-6-list li {
  float: left;
  width: 460px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-6-list li {
    width: 100%;
  }
}

.b-6-list li:first-child {
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .b-6-list li:first-child {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .b-6-list dl {
    width: 100%;
  }
}

.b-6-list dt {
  color: #3ba634;
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .b-6-list dt {
    font-size: 1.4rem;
    font-size: 4.375vw;
    line-height: 1.8;
    margin-bottom: 1.8rem;
  }
}

.b-6-list dd {
  font-size: 14px;
  line-height: 1.8;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .b-6-list dd {
    margin-bottom: 2rem;
  }
}

.b-6-list dd img {
  text-align: center;
}

/*---------------------------------------------------------
Voice b-7
---------------------------------------------------------*/
.b-7-box {
  width: 960px;
  margin: 80px auto;
  background-color: #f5f5f5;
  padding-top: 70px;
  position: relative;
}
@media screen and (max-width: 767px) {
  .b-7-box {
    width: 100%;
    margin: 4rem 0;
    padding-top: 3rem;
  }
}

.b-7-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #e2e2e2;
  height: 10px;
}
@media screen and (max-width: 767px) {
  .b-7-box::before {
    height: 5px;
  }
}

.b-7-box dt {
  font-size: 21px;
  line-height: 2;
  color: #3ba634;
  text-align: left;
  margin: 0 auto 20px;
  width: 800px;
}
@media screen and (max-width: 767px) {
  .b-7-box dt {
    width: 87.5%;
    margin: 0 auto 2rem;
    font-size: 1.6rem;
    font-size: 5vw;
  }
}

.b-7-txt01 {
  width: 800px;
  margin: 0 auto 35px;
  position: relative;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .b-7-txt01 {
    width: 100%;
  }
}

.b-7-txt01Inner {
  width: 570px;
  text-align: left;
  font-size: 14px;
  line-height: 1.8;
  padding-bottom: 40px;
  position: static;
}
@media screen and (max-width: 767px) {
  .b-7-txt01Inner {
    width: 87.5%;
    margin: 0 auto 2rem;
    font-size: 1.2rem;
    font-size: 3.75vw;
    padding-bottom: 0;
  }
}

.b-7-txt01 img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 208px;
}
@media screen and (max-width: 767px) {
  .b-7-txt01 img {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40%;
  }
}

.b-7-txt02 {
  width: 800px;
  padding: 0 0 45px;
  margin: 0 auto;
  font-size: 14px;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-7-txt02 {
    width: 87.5%;
    padding: 1.5rem 0 2.5rem;
    margin: 0 auto;
    font-size: 1.2rem;
    font-size: 3.75vw;
    line-height: 1.8;
  }
}

.b-7-btn {
  background-color: #ffef95;
  padding: 14px;
  font-size: 18px;
  font-weight: 700;
  cursor: pointer;
  text-align: center;
}

.b-7-btn img {
  margin-right: 10px;
  vertical-align: middle;
  margin-top: -2px;
}
@media screen and (max-width: 767px) {
  .b-7-btn img {
    width: 5%;
  }
}

.b-btn-more {
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .b-7-txtWS {
    width: 55%;
    display: block;
  }
}

/*---------------------------------------------------------
features b-8
---------------------------------------------------------*/
.b-8 {
  width: 960px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .b-8 {
    width: 100%;
  }
}

.b-8-cont01 {
  width: 960px;
  margin: 80px auto;
}
@media screen and (max-width: 767px) {
  .b-8-cont01 {
    width: 100%;
    margin: 3rem auto 0;
  }
}

.b-8-cont01Img {
  float: left;
  margin: 0 50px 0 70px;
}
@media screen and (max-width: 767px) {
  .b-8-cont01Img {
    width: 50%;
    margin: 0 auto;
    float: none;
  }
}

.b-8-cont01List {
  text-align: left;
  font-size: 16px;
  width: 560px;
  float: left;
}
@media screen and (max-width: 767px) {
  .b-8-cont01List {
    width: 87.5%;
    margin: 3rem auto;
    float: none;
  }
}

.b-8-cont01List li {
  padding-left: 50px;
  position: relative;
  padding-bottom: 17px;
  margin-bottom: 17px;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .b-8-cont01List li {
    font-size: 1.4rem;
    font-size: 4.375vw;
  }
}

.b-8-cont01List li:last-child {
  border-bottom: none;
}
@media screen and (max-width: 767px) {
  .b-8-cont01List li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
  }
}

.b-8-cont01List li::before {
  content: "";
  position: absolute;
  background: url("../img/features_icon.html");
  width: 16px;
  height: 16px;
  top: 18px;
  left: 17px;
  background-size: 100% auto;
}

.b-8-cont01List li:nth-child(2)::before {
  top: 5px;
}

.b-8-cont {
  background-color: #f8f8f8;
  padding: 50px 0;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .b-8-cont {
    padding: 3rem 0 2rem;
    margin-bottom: 3rem;
  }
}

.b-8-contTit {
  font-size: 24px;
  color: #4c8c48;
  font-weight: 700;
  padding-bottom: 20px;
  margin-bottom: 50px;
  position: relative;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-8-contTit {
    font-size: 1.6rem;
    font-size: 5vw;
    font-weight: 700;
    padding-bottom: 1rem;
    position: relative;
    width: 87.5%;
    margin: 0 auto 3rem;
  }
}

.b-8-contTit::after {
  content: "";
  width: 100px;
  height: 2px;
  background-color: #4c8c48;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .b-8-contTit::after {
    content: "";
    width: 8rem;
    height: 1px;
    background-color: #4c8c48;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}

.b-8-cont02List {
  width: 800px;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .b-8-cont02List {
    width: 87.5%;
    margin: 0 auto;
  }
}

.b-8-cont02List li {
  width: 380px;
  float: left;
}
@media screen and (max-width: 767px) {
  .b-8-cont02List li {
    width: 100%;
    margin: 0 auto;
  }
}

.b-8-cont02List li:first-child {
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .b-8-cont02List li:first-child {
    margin-bottom: 3rem;
  }
}

.b-8-cont02NameArea img {
  float: left;
  margin-right: 15px;
}
@media screen and (max-width: 767px) {
  .b-8-cont02NameArea img {
    width: 20%;
    margin-right: 1.5rem;
  }
}

.b-8-cont02Name {
  color: #4c8c48;
  font-size: 18px;
  line-height: 1.2;
  padding-top: 30px;
}
@media screen and (max-width: 767px) {
  .b-8-cont02Name {
    font-size: 1.6rem;
    font-size: 5vw;
    padding-top: 2rem;
  }
}

.b-8-cont02txt-s {
  font-size: 12px;
}

.b-8-contTxt {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .b-8-contTxt {
    margin-top: 1.5rem;
  }
}

.b-8-contBox {
  text-align: left;
  width: 800px;
  margin: 0 auto 40px;
}
@media screen and (max-width: 767px) {
  .b-8-contBox {
    width: 87.5%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .b-8-contBox img {
    width: 100%;
    display: block;
    margin-top: 3rem;
  }
}

.b-8-contBox dl {
  float: left;
  width: 380px;
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .b-8-contBox dl {
    width: 100%;
    margin-right: 0;
    float: none;
  }
}

.b-8-contBox dt {
  font-size: 21px;
  color: #4c8c48;
  font-weight: 700;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .b-8-contBox dt {
    font-size: 1.6rem;
    font-size: 5vw;
  }
}

.b-8-contBox dd {
  font-size: 14px;
  line-height: 1.8;
}

.b-8-cont03List {
  display: -moz-flex;
  display: -o-flex;
  display: -ms-flex;
  flex-wrap: wrap;
  display: flex;
  width: 800px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .b-8-cont03List {
    width: 87.5%;
    margin: 3rem auto 0;
  }
}

.b-8-cont03List li {
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .b-8-cont03List li {
    width: 46%;
    margin-right: 2.5rem;
    margin-bottom: 2rem;
  }
}

.b-8-cont03List li:last-child {
  margin-right: 0;
}

@media screen and (max-width: 767px) {
  .b-8-cont03List li:nth-child(2) {
    margin-right: 0;
  }
}

/*---------------------------------------------------------
footer 
---------------------------------------------------------*/
.b-footer {
  background-color: #4c8c48;
  padding-top: 60px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .b-footer {
    padding-top: 3rem;
  }
}

.b-footer-txt {
  font-size: 32px;
  margin-bottom: 40px;
  font-weight: 700;
  color: #ffe65a;
}
@media screen and (max-width: 767px) {
  .b-footer-txt {
    font-size: 1.8rem;
    font-size: 5.625vw;
    margin-bottom: 2rem;
    font-weight: 700;
  }
}

@media screen and (max-width: 767px) {
  .tel {
    width: 61%;
    margin: 0 auto;
  }
}

.b-footer-btnList {
  display: -moz-flex;
  display: -o-flex;
  display: -ms-flex;
  flex-wrap: wrap;
  display: flex;
  width: 880px;
  margin: 40px auto 50px;
}
@media screen and (max-width: 767px) {
  .b-footer-btnList {
    width: 87.5%;
    margin: 0 auto;
    display: block;
  }
}

.b-footer-btnList a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.b-footer-btnList li:first-child {
  margin-right: 40px;
}
@media screen and (max-width: 767px) {
  .b-footer-btnList li:first-child {
    margin: 2rem 0;
  }
}

.b-footer-copy {
  font-size: 10px;
  color: #fff;
  background-color: #3b6e3c;
  padding: 10px 0;
}
@media screen and (max-width: 767px) {
  .b-footer-copy {
    font-size: 1rem;
    font-size: 3.125vw;
    margin-top: 2rem;
  }
}



/* ============================
	message
 ===================================================*/
 @media (min-width: 768px) {
  .message-area {
    margin-top: 50px;
  }
}

@media (max-width: 767px) {
  .message-area {
    margin-top: calc(70 / 750 * 100vw);
  }
}

.message-area-list {
  list-style: none;
}

@media (min-width: 768px) {
  .message-area-list {
    margin-top: 0px;
  }
}

@media (max-width: 767px) {
  .message-area-list {
    margin-bottom: calc(50 / 750 * 100vw);
  }
}

.message-area-list li {
  border: 4px solid #CBCBCB;
  border-radius: 10px;
}

@media (min-width: 768px) {
  .message-area-list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 0px;
    padding: 40px 30px;
  }
}

@media (max-width: 767px) {
  .message-area-list li {
    display: grid;
    margin-top: calc(0 / 750 * 100vw);
    padding: calc(40 / 750 * 100vw);
  }
}

@media (min-width: 768px) {
  .message-area-list li:not(:last-child) {
    margin-bottom: 20px;
  }
}

@media (max-width: 767px) {
  .message-area-list li:not(:last-child) {
    margin-bottom: calc(40 / 750 * 100vw);
  }
}

.message-area-list-body {
  text-align: justify;
}

@media (min-width: 768px) {
  .message-area-list-body {
    flex-shrink: 0;
    width: 464px;
  }
}

@media (max-width: 767px) {
  .message-area-list-body {
    width: 100%;
    order: 2;
  }
}

.message-area-list-body-name {
  font-weight: 700;
  display: block;
  padding-bottom: 0px;
  color: #ff6b2b;
}
.message-area-list-body-name span{
  font-size: 60%;
}

@media (min-width: 768px) {
  .message-area-list-body-name {
    font-size: 28px;
  }
}

@media (max-width: 767px) {
  .message-area-list-body-name {
    margin-top: calc(30 / 750 * 100vw);
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.2;
  }
}

.message-area-list-body-heading {
  font-weight: 500;
  line-height: 1.72;
  color: #ff6b2b;
}

@media (min-width: 768px) {
  .message-area-list-body-heading {
    margin-top: 5px;
    font-size: 18px;
  }
}

@media (max-width: 767px) {
  .message-area-list-body-heading {
    margin-bottom: calc(20 / 750 * 100vw);
  }
}

.message-area-list-body-txt-q {
  border-bottom: #7e7e7e 1px solid;
  font-weight: bold;
}

@media (min-width: 768px) {
  .message-area-list-body-txt-q {
    margin-top: 25px;
    padding-bottom: 10px;
    margin-bottom: 10px;

  }
}

@media (max-width: 767px) {
  .message-area-list-body-txt-q {
    margin-top: calc(40 / 750 * 100vw);
    padding-bottom: calc(10 / 750 * 100vw);
    margin-bottom: calc(10 / 750 * 100vw);
    border-bottom: #7e7e7e calc(1 / 750 * 100vw) solid;
  }
}

@media (min-width: 768px) {
  .message-area-list-body-txt {
    margin-bottom: 0px;
  }
}

@media (max-width: 767px) {
  .message-area-list-body-txt {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .message-area-list img {
    flex-shrink: 0;
    width: 325px;
    height: 325px;
  }
}

@media (max-width: 767px) {
  .message-area-list img {
    width: 60%;
    margin: 0 auto;
    order: 1;
  }
}

.present-area{
  width: 750px;
  margin: 40px auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .present-area{
    width: 100%;
    margin: calc(40 / 750 * 100vw) auto;
    flex-direction: column;
  }
}

.present-area img{
  width: 283px;
}
@media (max-width: 767px) {
  .present-area img{
    width: calc(283 / 750 * 100vw);
    margin: 0 auto calc(20 / 750 * 100vw);
  }
}

.present-txt-area{
  width: 450px;
}
@media (max-width: 767px) {
  .present-txt-area{
    width: 80%;
    margin: 0 auto;
  }
}

.present-ttl{
  font-size: 24px;
  border-bottom: 1px #b0b0b0 solid;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: -0.02em;
  font-feature-settings: "palt";
  padding-bottom: 10px;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .present-ttl{
    font-size: calc(28 / 750 * 100vw);
    padding-bottom: calc(20 / 750 * 100vw);
    margin-bottom: calc(20 / 750 * 100vw);
    text-align: center;
  }
}

.present-ttl .em{
  font-size: 150%;
  color: #f78c00;
}

.present-notes{
  font-size: 14px;
}
@media (max-width: 767px) {
  .present-notes{
    font-size: calc(22 / 750 * 100vw);
  }
}