@charset "UTF-8";
/*------------------------------------------------------------
    Reset
------------------------------------------------------------*/
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,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
  display: block;
}
html {
  font-size: 62.5%;
}
body,
table,
input,
textarea,
select,
option,
h1,
h2,
h3,
h4,
h5,
h6 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
input,
textarea {
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: bold;
}
table,
input,
textarea,
select,
option {
  line-height: 1.1;
}
select {
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
input,
textarea {
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
:focus {
  outline: 0;
}
ins {
  text-decoration: none;
}
del {
  text-decoration: line-through;
}
img {
  vertical-align: top;
}
a,
a img {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
a {
  color: inherit;
  text-decoration: none;
}
@media only screen and (min-width: 1023px) {
  a:hover, a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
  }
}
button {
  cursor: pointer;
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  border: none;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
@media only screen and (min-width: 1023px) {
  button:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
  }
}
img {
  max-width: 100%;
}
/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Layout .l-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
    Navigation
------------------------------------------------------------*/
.c-nav1__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.c-nav1__item + .c-nav1__item {
  margin-top: 35px;
}
@media only screen and (max-width: 767px) {
  .c-nav1__item + .c-nav1__item {
    margin-top: 30px;
  }
}
.c-nav1__link {
  display: inline-block;
  color: #fff;
  font-family: "Bebas Neue", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-nav1__link {
    font-size: 4rem;
  }
}
/*------------------------------------------------------------
    Header
------------------------------------------------------------*/
.c-header {
  position: relative;
}
.c-header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  overflow: hidden;
  z-index: 19;
}
.c-header__logowrap {
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.c-header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 37px 33px 33px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 1023px) {
  .c-header__logo {
    padding: 24px 20px 20px;
  }
}
@media only screen and (max-width: 767px) {
  .c-header__logo {
    padding: 11px 10px 8px;
  }
}
.c-header__logoname {
  color: #fff;
  font-size: 7rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.2em;
  text-indent: 0.2em;
  text-transform: uppercase;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-header__logoname {
    font-size: 5.4rem;
  }
}
.c-header__logosubname {
  margin-top: -6px;
  color: #fff;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1.529;
  letter-spacing: 0.02em;
  text-indent: 0.02em;
  text-transform: uppercase;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-header__logosubname {
    margin-top: -3px;
    font-size: 1.3rem;
    line-height: 1.538;
  }
}
.c-header__groupbtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  position: fixed;
  top: 0;
  right: 130px;
  z-index: 19;
}
@media only screen and (max-width: 767px) {
  .c-header__groupbtn {
    right: 90px;
  }
}
.c-header__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  width: 130px;
  height: 130px;
  padding: 12px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .c-header__btn {
    width: 90px;
    height: 90px;
    padding: 8px;
  }
}
.c-header__btn--entry {
  background-color: #005ea2;
}
.c-header__btntitle {
  margin-top: 4px;
  color: #fff;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-header__btntitle {
    margin-top: 2px;
    font-size: 2.5rem;
  }
}
.c-header__btntext {
  margin-top: -3px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.778;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-header__btntext {
    font-size: 1.4rem;
    line-height: 1.714;
  }
}
.c-header__menubtn {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 21;
}
.c-header__menuouter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: rgba(14, 57, 108, 0.95);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 20;
  -webkit-transition: all 0.45s ease-in-out;
  transition: all 0.45s ease-in-out;
}
.c-header__menuouter.is-show {
  opacity: 1;
  visibility: visible;
  pointer-events: unset;
}
.c-header__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}
.c-header__menuinner {
  width: 100%;
  max-height: 100%;
  padding: 120px 40px;
  overflow-x: hidden;
  overflow-y: auto;
}
@media only screen and (min-width: 1023px) {
  .c-header__menuinner-webkit-scrollbar-track {
    background-color: #005ea2;
  }
  .c-header__menuinner::-webkit-scrollbar {
    width: 4px;
    background-color: #005ea2;
  }
  .c-header__menuinner::-webkit-scrollbar-thumb {
    background-color: #fff;
  }
}
@media only screen and (max-width: 767px) {
  .c-header__menuinner {
    padding: 120px 20px;
  }
}
/*------------------------------------------------------------
    Footer
------------------------------------------------------------*/
.c-footer {
  position: relative;
  padding: 124px 0 118px;
}
@media only screen and (max-width: 767px) {
  .c-footer {
    padding: 62px 0 64px;
  }
}
.c-footer__name {
  color: #fff;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1.5;
  text-transform: uppercase;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-footer__name {
    font-size: 3rem;
  }
}
.c-footer__body {
  margin-top: 16px;
}
@media only screen and (max-width: 767px) {
  .c-footer__body {
    margin-top: 13px;
  }
}
.c-footer__content {
  text-align: center;
}
.c-footer__brandlist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 31px;
}
@media only screen and (max-width: 767px) {
  .c-footer__brandlist {
    margin-top: 25px;
  }
}
.c-footer__branditem + .c-footer__branditem {
  margin-left: 16px;
}
@media only screen and (max-width: 767px) {
  .c-footer__branditem + .c-footer__branditem {
    margin-left: 10px;
  }
}
.c-footer__brand {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.c-footer__brand .icon {
  color: #fff;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .c-footer__brand .icon {
    font-size: 4.5rem;
  }
}
.c-footer__copyright {
  margin-top: 111px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.714;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-footer__copyright {
    margin-top: 56px;
    font-size: 1.2rem;
    line-height: 1.75;
  }
}
/*------------------------------------------------------------
    Layout
------------------------------------------------------------*/
body {
  position: relative;
  background-color: #0e396c;
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  word-break: break-word;
  scroll-behavior: smooth;
}
@media only screen and (max-width: 767px) {
  body {
    min-width: 320px;
  }
}
/*------------------------------------------------------------
    Container
------------------------------------------------------------*/
.l-container {
  width: 100%;
  max-width: 1168px;
  margin: 0 auto;
  padding: 0 40px;
}
@media only screen and (max-width: 767px) {
  .l-container {
    padding: 0 20px;
  }
}
/*------------------------------------------------------------
    Mainvisual
------------------------------------------------------------*/
.c-mv {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 650px;
  padding-top: 130px;
  padding-bottom: clamp(72px, 0.1379310345 * (100vh - 130px), 88px);
  overflow: hidden;
}
@media only screen and (max-width: 1023px) {
  .c-mv {
    padding-bottom: 72px;
  }
}
@media only screen and (max-width: 767px) {
  .c-mv {
    min-height: unset;
    padding-top: 90px;
    padding-bottom: 46px;
  }
}
.c-mv__main {
  position: relative;
  width: 100%;
  height: 100%;
}
.c-mv__bg {
  position: absolute;
  top: 0;
  right: 0;
  width: calc(100% - 205px);
  height: 100%;
  overflow: hidden;
}
@media only screen and (max-width: 1023px) {
  .c-mv__bg {
    width: calc(100% - 155px);
  }
}
@media only screen and (max-width: 767px) {
  .c-mv__bg {
    width: calc(100% - 80px);
  }
}
.c-mv__bginner {
  position: relative;
  width: 100%;
  height: 100%;
}
.c-mv__bginner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
@media only screen and (max-width: 1023px) {
  .c-mv__bginner img {
    -o-object-position: 59% center;
    object-position: 59% center;
  }
}
.c-mv__slider {
  position: relative;
  width: 100%;
  height: 100%;
}
.c-mv__thumb {
  position: relative;
  width: 100%;
  height: 100%;
}
.c-mv__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
@media only screen and (max-width: 1023px) {
  .c-mv__thumb img {
    -o-object-position: 59% center;
    object-position: 59% center;
  }
}
.c-mv__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 0 47px;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .c-mv__content {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: calc(100% + 16px);
  }
}
@media only screen and (max-width: 767px) {
  .c-mv__content {
    height: calc(100% + 12px);
    padding: 0 28px;
  }
}
.c-mv__title {
  margin-top: 14px;
  color: #fff;
  font-size: 14rem;
  font-weight: 400;
  line-height: 1;
}
@media only screen and (max-width: 1023px) {
  .c-mv__title {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .c-mv__title {
    font-size: 8rem;
  }
}
@media only screen and (max-width: 374px) {
  .c-mv__title {
    font-size: 7.5rem;
  }
}
.c-mv__sub {
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  .c-mv__sub {
    margin-top: 10px;
  }
}
.c-mv__subtitle {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 5px;
  background-color: #000f62;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.c-mv__subtitle + .c-mv__subtitle {
  margin-top: 13px;
}
@media only screen and (max-width: 767px) {
  .c-mv__subtitle + .c-mv__subtitle {
    margin-top: 6px;
  }
}
.c-mv__subtitle span {
  display: block;
  position: relative;
  margin: -3px 0;
  z-index: 1;
  color: #fff;
  font-size: 2rem;
  font-weight: 900;
  line-height: 1.5;
}
@media only screen and (max-width: 767px) {
  .c-mv__subtitle span {
    margin: -1px 0;
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 374px) {
  .c-mv__subtitle span {
    font-size: 1.4rem;
  }
}
/*------------------------------------------------------------
    Breadcrumb
------------------------------------------------------------*/
/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Component .c-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
    Box
------------------------------------------------------------*/
.c-box1 {
  display: block;
  position: relative;
  width: 100%;
  padding: 33px 39px 32px;
  background-color: transparent;
  border: 1px solid #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 1023px) {
  .c-box1 {
    padding: 33px 23px 32px;
  }
}
@media only screen and (max-width: 767px) {
  .c-box1 {
    padding: 26px 19px 29px;
  }
}
.c-box1__text {
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.667;
  text-align: center;
}
@media only screen and (max-width: 1023px) {
  .c-box1__text {
    font-size: 2.5rem;
    line-height: 1.68;
  }
}
@media only screen and (max-width: 767px) {
  .c-box1__text {
    font-size: 2rem;
    line-height: 1.6;
  }
}
/*------------------------------------------------------------
    Button
------------------------------------------------------------*/
.c-btn1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  width: 100%;
  min-height: 200px;
  padding: 44px 122px;
  background-color: transparent;
  border: 2px solid #fff;
  border-radius: 100px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.667;
}
@media only screen and (max-width: 1023px) {
  .c-btn1 {
    padding: 44px 88px;
  }
}
@media only screen and (max-width: 767px) {
  .c-btn1 {
    min-height: 120px;
    padding: 19px 47px;
    font-size: 2rem;
    line-height: 1.6;
  }
}
.c-btn1::after {
  content: "\e900";
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: inline-block;
  -webkit-transform: translateX(3px);
  transform: translateX(3px);
  margin-left: 16px;
  font-family: "icomoon";
  font-size: 5.6rem;
  font-weight: 400;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .c-btn1::after {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    font-size: 4.4rem;
  }
}
/*------------------------------------------------------------
    Card
------------------------------------------------------------*/
.c-card1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.c-card1__thumb {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.c-card1__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 65.9824046921%;
}
@media only screen and (max-width: 767px) {
  .c-card1__thumb::before {
    padding-top: 65.9420289855%;
  }
}
.c-card1__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.c-card1__content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  position: relative;
  width: 100%;
  padding: 43px 39px 54px;
}
@media only screen and (max-width: 1023px) {
  .c-card1__content {
    padding: 43px 23px 54px;
  }
}
@media only screen and (max-width: 767px) {
  .c-card1__content {
    padding: 29px 20px 33px;
  }
}
.c-card1__title {
  color: #fff;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-card1__title {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
/*------------------------------------------------------------
    Menu
------------------------------------------------------------*/
.c-menu1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  width: 130px;
  height: 130px;
  padding: 12px;
  background-color: #0083b4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .c-menu1 {
    width: 90px;
    height: 90px;
    padding: 8px;
  }
}
.c-menu1.is-open .c-menu1__inner span:nth-child(1) {
  -webkit-transform: translate(0, 0.65rem) rotate(30deg);
  transform: translate(0, 0.65rem) rotate(30deg);
}
@media only screen and (max-width: 767px) {
  .c-menu1.is-open .c-menu1__inner span:nth-child(1) {
    -webkit-transform: translate(0, 0.35rem) rotate(30deg);
    transform: translate(0, 0.35rem) rotate(30deg);
  }
}
.c-menu1.is-open .c-menu1__inner span:nth-child(2) {
  -webkit-transform: translate(0, -0.65rem) rotate(-30deg);
  transform: translate(0, -0.65rem) rotate(-30deg);
}
@media only screen and (max-width: 767px) {
  .c-menu1.is-open .c-menu1__inner span:nth-child(2) {
    -webkit-transform: translate(0, -0.55rem) rotate(-30deg);
    transform: translate(0, -0.55rem) rotate(-30deg);
  }
}
.c-menu1__title {
  color: #fff;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-menu1__title {
    font-size: 2.5rem;
  }
}
.c-menu1__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative;
  width: 40px;
  height: 14px;
  margin: 6px 0 5px;
}
@media only screen and (max-width: 767px) {
  .c-menu1__inner {
    width: 35px;
    height: 10px;
    margin: 4px 0 3px;
  }
}
.c-menu1__inner span {
  display: block;
  width: 40px;
  height: 1px;
  background-color: #fff;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media only screen and (max-width: 767px) {
  .c-menu1__inner span {
    width: 35px;
  }
}
/*------------------------------------------------------------
    Part
------------------------------------------------------------*/
.c-part1__top {
  position: relative;
  overflow: hidden;
}
.c-part1__bg {
  position: relative;
}
.c-part1__slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}
.c-part1__slide {
  width: 600px;
}
@media only screen and (max-width: 1023px) {
  .c-part1__slide {
    width: 528px;
  }
}
@media only screen and (max-width: 767px) {
  .c-part1__slide {
    width: 348px;
  }
}
.c-part1__thumbslide {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.c-part1__thumbslide::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 83.3333333333%;
}
.c-part1__thumbslide img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.c-part1__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 20px;
  z-index: 2;
}
@media only screen and (max-width: 767px) {
  .c-part1__content {
    position: relative;
    bottom: unset;
    left: unset;
    margin-top: -78px;
    padding: 0 20px;
  }
}
@media only screen and (max-width: 374px) {
  .c-part1__content {
    margin-top: -76px;
  }
}
.c-part1__slogantext {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 13px 12px 14px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .c-part1__slogantext {
    padding: 6px 12px 7px;
  }
}
@media only screen and (max-width: 374px) {
  .c-part1__slogantext {
    padding: 6px 8px 7px;
  }
}
.c-part1__slogantext + .c-part1__slogantext {
  margin-top: 7px;
}
.c-part1__slogantext span {
  display: block;
  position: relative;
  z-index: 1;
  color: #0e396c;
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .c-part1__slogantext span {
    font-size: 2.5rem;
    line-height: 1.4;
  }
}
@media only screen and (max-width: 374px) {
  .c-part1__slogantext span {
    font-size: 2.2rem;
    line-height: 1.5;
  }
}
.c-part1__info {
  margin-top: 31px;
}
@media only screen and (max-width: 767px) {
  .c-part1__info {
    margin-top: 25px;
  }
}
.c-part1__inforole {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: -1px;
  padding: 2px 10px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #0e396c;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.28;
}
@media only screen and (max-width: 767px) {
  .c-part1__inforole {
    margin-bottom: 0;
    padding: 0;
    background-color: transparent;
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.278;
  }
}
.c-part1__infoname {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 8px 27px 12px 12px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .c-part1__infoname {
    margin-top: 6px;
    padding: 0;
    background-color: transparent;
  }
}
.c-part1__infoja {
  color: #0e396c;
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .c-part1__infoja {
    color: #fff;
    font-size: 2.5rem;
  }
}
.c-part1__infoen {
  margin-top: 10px;
  margin-left: 26px;
  color: #0e396c;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.167;
}
@media only screen and (max-width: 767px) {
  .c-part1__infoen {
    margin-top: 3px;
    margin-left: 20px;
    color: #fff;
    font-size: 2rem;
    line-height: 1.6;
  }
}
.c-part1__infosub {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 12px;
  background-color: #fff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #0e396c;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .c-part1__infosub {
    margin-top: 4px;
    padding: 0;
    background-color: transparent;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.c-part1__bottom {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .c-part1__bottom {
    margin-top: 40px;
  }
}
.c-part1__bottom .c-part2 + .c-part2 {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .c-part1__bottom .c-part2 + .c-part2 {
    margin-top: 40px;
  }
}
.c-part1__bottom .c-part2:nth-child(2n) .c-part2__left {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
@media only screen and (max-width: 1023px) {
  .c-part1__bottom .c-part2:nth-child(2n) .c-part2__left {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
.c-part1__bottom .c-part2:nth-child(2n) .c-part2__right {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  padding-left: 0;
  padding-right: 40px;
}
@media only screen and (max-width: 1023px) {
  .c-part1__bottom .c-part2:nth-child(2n) .c-part2__right {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding-right: 0;
  }
}
.c-part1__bottom .c-part2:nth-child(2n) .c-part2__rightinner {
  margin-left: 0;
  margin-right: auto;
}
@media only screen and (max-width: 1023px) {
  .c-part1__bottom .c-part2:nth-child(2n) .c-part2__rightinner {
    margin-right: 0;
  }
}
.c-part2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .c-part2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.c-part2__left {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 44.0257352941%;
}
@media only screen and (max-width: 1023px) {
  .c-part2__left {
    -ms-flex-negative: unset;
    flex-shrink: unset;
    width: 100%;
  }
}
.c-part2__thumb {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.c-part2__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 68.0584551148%;
}
@media only screen and (max-width: 767px) {
  .c-part2__thumb::before {
    padding-top: 67.9144385027%;
  }
}
.c-part2__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.c-part2__right {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 55.9742647059%;
  padding-left: 40px;
}
@media only screen and (max-width: 1023px) {
  .c-part2__right {
    -webkit-box-flex: unset;
    -ms-flex-positive: unset;
    flex-grow: unset;
    width: 100%;
    margin-top: 28px;
    padding-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  .c-part2__right {
    margin-top: 18px;
  }
}
.c-part2__rightinner {
  width: 100%;
  max-width: 564px;
  margin-left: auto;
}
@media only screen and (max-width: 1023px) {
  .c-part2__rightinner {
    max-width: unset;
    margin-left: 0;
  }
}
.c-part2__title {
  margin-top: -3px;
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.667;
}
@media only screen and (max-width: 1023px) {
  .c-part2__title {
    text-align: center;
  }
}
@media only screen and (max-width: 767px) {
  .c-part2__title {
    margin-top: 0;
    font-size: 2rem;
    line-height: 1.6;
  }
}
.c-part2__content {
  margin: 16px 0 -3px;
}
@media only screen and (max-width: 767px) {
  .c-part2__content {
    margin: 13px 0 0;
  }
}
/*------------------------------------------------------------
    Text
------------------------------------------------------------*/
.c-text1 {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.778;
}
@media only screen and (max-width: 767px) {
  .c-text1 {
    font-size: 1.4rem;
    line-height: 1.714;
  }
}
.c-text2 {
  color: #fff;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.28;
}
@media only screen and (max-width: 767px) {
  .c-text2 {
    font-size: 1.8rem;
    line-height: 1.222;
  }
}
.c-text3 {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.45;
}
@media only screen and (max-width: 767px) {
  .c-text3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.c-text4 {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .c-text4 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
/*------------------------------------------------------------
    Title
------------------------------------------------------------*/
.c-title1 {
  color: #fff;
  font-size: 7rem;
  font-weight: 400;
  line-height: 1.143;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .c-title1 {
    font-size: 5rem;
    line-height: 1.2;
  }
}
.c-title2 {
  color: #fff;
  font-size: 8rem;
  font-weight: 400;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .c-title2 {
    font-size: 5rem;
    line-height: 1.2;
  }
}
.c-title2__sub {
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.067;
}
@media only screen and (max-width: 767px) {
  .c-title2__sub {
    font-size: 2rem;
    line-height: 1.6;
  }
}
/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Project .p-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
    CSS of Home page
------------------------------------------------------------*/
/*------------------------------------------------------------
    CSS of About section
------------------------------------------------------------*/
.home-about {
  position: relative;
  padding: 58px 0 223px;
  overflow: hidden;
}
@media only screen and (max-width: 1023px) {
  .home-about {
    padding: 58px 0 126px;
  }
}
@media only screen and (max-width: 767px) {
  .home-about {
    padding: 32px 0 24px;
  }
}
.home-about__main {
  position: relative;
  min-height: 1125px;
}
.home-about__inner {
  width: 100%;
  max-width: 626px;
  margin: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .home-about__inner {
    max-width: unset;
  }
}
.home-about__box {
  display: block;
  position: relative;
  padding: 67px 63px 100px;
  background-color: #00295a;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 1;
}
@media only screen and (max-width: 1023px) {
  .home-about__box {
    padding: 67px 40px 172px;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__box {
    padding: 62px 20px 70px;
  }
}
.home-about__content {
  margin-top: 30px;
}
@media only screen and (max-width: 767px) {
  .home-about__content {
    margin-top: 26px;
  }
}
.home-about__content p + p {
  margin-top: 32px;
}
@media only screen and (max-width: 767px) {
  .home-about__content p + p {
    margin-top: 24px;
  }
}
.home-about__bg {
  position: absolute;
  top: min(280px, 24.8888888889%);
  left: 0;
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 1023px) {
  .home-about__bg {
    position: relative;
    top: unset;
    left: unset;
    height: 658px;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__bg {
    height: auto;
  }
}
.home-about__thumbgroup {
  position: relative;
  width: 100%;
  height: min(987px, 87.7333333333%);
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbgroup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__thumbgroup {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.home-about__thumbitem {
  position: absolute;
  width: 50%;
  height: 81.053698075%;
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbitem {
    position: relative;
    height: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__thumbitem {
    width: 100%;
  }
}
.home-about__thumbitem:nth-child(1) {
  bottom: 0;
  left: 0;
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbitem:nth-child(1) {
    bottom: unset;
    left: unset;
  }
}
.home-about__thumbitem:nth-child(1) .home-about__people {
  top: min(51px, 6.375%);
  right: 298px;
  width: min(226px, 33.0893118594%);
  min-width: 226px;
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbitem:nth-child(1) .home-about__people {
    top: -75px;
    right: unset;
    left: 46px;
    width: 226px;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__thumbitem:nth-child(1) .home-about__people {
    top: unset;
    bottom: 0;
    left: 14.4927536232%;
    width: min(135px, 65.2173913043%);
    min-width: unset;
  }
}
.home-about__thumbitem:nth-child(2) {
  top: 0;
  right: 0;
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbitem:nth-child(2) {
    top: unset;
    right: unset;
  }
}
.home-about__thumbitem:nth-child(2) .home-about__people {
  bottom: min(33px, 4.125%);
  left: 282px;
  width: min(300px, 43.9238653001%);
  min-width: 276px;
}
@media only screen and (max-width: 1023px) {
  .home-about__thumbitem:nth-child(2) .home-about__people {
    bottom: unset;
    top: -116px;
    left: unset;
    right: 43px;
    width: 300px;
  }
}
@media only screen and (max-width: 767px) {
  .home-about__thumbitem:nth-child(2) .home-about__people {
    top: unset;
    bottom: -20px;
    right: 14.4927536232%;
    width: min(175px, 84.5410628019%);
    min-width: unset;
  }
}
.home-about__thumb {
  position: relative;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .home-about__thumb {
    max-height: 480px;
  }
}
.home-about__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 117.1303074671%;
}
@media only screen and (max-width: 767px) {
  .home-about__thumb::before {
    padding-top: 231.884057971%;
  }
}
.home-about__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.home-about__people {
  position: absolute;
  pointer-events: none;
  z-index: 2;
}
.home-about__people img {
  width: 100%;
}
/*------------------------------------------------------------
    CSS of Vision section
------------------------------------------------------------*/
.home-vision {
  position: relative;
  padding: 183px 0 132px;
}
@media only screen and (max-width: 767px) {
  .home-vision {
    padding: 62px 0 60px;
  }
}
.home-vision__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .home-vision__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.home-vision__left {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 51.8382352941%;
  min-width: 518px;
  padding-right: 40px;
}
@media only screen and (max-width: 1023px) {
  .home-vision__left {
    -ms-flex-negative: unset;
    flex-shrink: unset;
    width: 100%;
    min-width: unset;
    padding-right: 0;
  }
}
.home-vision__leftinner {
  width: 100%;
  max-width: 500px;
  margin-right: auto;
}
@media only screen and (max-width: 1023px) {
  .home-vision__leftinner {
    max-width: unset;
    margin-right: 0;
  }
}
.home-vision__heading {
  margin-top: 8px;
}
@media only screen and (max-width: 1023px) {
  .home-vision__heading {
    margin-top: 0;
    text-align: center;
  }
}
.home-vision__heading .c-title2__sub {
  margin-top: 14px;
}
@media only screen and (max-width: 767px) {
  .home-vision__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-vision__content {
  margin-top: 43px;
}
@media only screen and (max-width: 1023px) {
  .home-vision__content {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 767px) {
  .home-vision__content {
    margin-top: 20px;
  }
}
.home-vision__right {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 48.1617647059%;
}
@media only screen and (max-width: 1023px) {
  .home-vision__right {
    -webkit-box-flex: unset;
    -ms-flex-positive: unset;
    flex-grow: unset;
    width: 100%;
    margin-top: 56px;
  }
}
@media only screen and (max-width: 767px) {
  .home-vision__right {
    margin-top: 38px;
  }
}
.home-vision__thumb {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.home-vision__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.home-vision__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
@media only screen and (max-width: 1023px) {
  .home-vision__thumb--main {
    margin-top: 65px;
  }
}
@media only screen and (max-width: 767px) {
  .home-vision__thumb--main {
    margin-top: 40px;
  }
}
.home-vision__thumb--main::before {
  padding-top: 59.9236641221%;
}
@media only screen and (max-width: 767px) {
  .home-vision__thumb--main::before {
    padding-top: 59.8930481283%;
  }
}
.home-vision__thumb--sub1::before {
  padding-top: 73.3840304183%;
}
.home-vision__thumb--sub2::before {
  padding-top: 73.4042553191%;
}
.home-vision__thumbgroup {
  position: relative;
  width: 100%;
  margin-top: 67px;
}
@media only screen and (max-width: 1023px) {
  .home-vision__thumbgroup {
    margin-top: 0;
  }
}
.home-vision__thumbgroup::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 50%;
}
.home-vision__thumbinner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.home-vision__thumbitem {
  position: absolute;
}
.home-vision__thumbitem:nth-child(1) {
  bottom: 0;
  left: 8.9694656489%;
  width: 35.8778625954%;
}
.home-vision__thumbitem:nth-child(2) {
  top: 0;
  right: -40px;
  width: 50.1908396947%;
}
@media only screen and (max-width: 767px) {
  .home-vision__thumbitem:nth-child(2) {
    right: -20px;
  }
}
/*------------------------------------------------------------
    CSS of Advantage section
------------------------------------------------------------*/
.home-advantage {
  position: relative;
  border-top: 1px solid #fff;
  overflow: hidden;
}
.home-advantage__heading {
  position: relative;
  padding: 63px 0 64px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .home-advantage__heading {
    padding: 62px 0;
  }
}
.home-advantage__heading .c-title2__sub {
  margin-top: 14px;
}
@media only screen and (max-width: 767px) {
  .home-advantage__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-advantage__description {
  margin-top: 48px;
}
@media only screen and (max-width: 767px) {
  .home-advantage__description {
    margin-top: 22px;
  }
}
.home-advantage__body {
  position: relative;
  margin-left: -1px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
@media only screen and (max-width: 767px) {
  .home-advantage__body {
    margin-left: 0;
  }
}
.home-advantage__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
@media only screen and (max-width: 767px) {
  .home-advantage__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.home-advantage__item {
  width: 33.3333333333%;
  border-left: 1px solid #fff;
  border-top: 1px solid #fff;
}
@media only screen and (max-width: 1023px) {
  .home-advantage__item {
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .home-advantage__item {
    width: 100%;
    border-left: none;
  }
}
.home-advantage__item:nth-child(1) {
  border-top: none;
}
.home-advantage__item:nth-child(2) {
  border-top: none;
}
@media only screen and (max-width: 767px) {
  .home-advantage__item:nth-child(2) {
    border-top: 1px solid #fff;
  }
}
.home-advantage__item:nth-child(3) {
  border-top: none;
}
@media only screen and (max-width: 1023px) {
  .home-advantage__item:nth-child(3) {
    border-top: 1px solid #fff;
  }
}
/*------------------------------------------------------------
    CSS of Sponsor section
------------------------------------------------------------*/
.home-sponsor {
  position: relative;
  padding: 148px 0 0;
}
@media only screen and (max-width: 767px) {
  .home-sponsor {
    padding: 63px 0 0;
  }
}
.home-sponsor__heading {
  text-align: center;
}
.home-sponsor__heading .c-title2__sub {
  margin-top: 17px;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-sponsor__description {
  margin-top: 38px;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__description {
    margin-top: 22px;
  }
}
.home-sponsor__body {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__body {
    margin-top: 58px;
  }
}
.home-sponsor__main .c-text3 {
  margin-top: 26px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__main .c-text3 {
    margin-top: 20px;
  }
}
.home-sponsor__brand {
  display: block;
  position: relative;
  width: 100%;
  background-color: #fff;
  overflow: hidden;
}
.home-sponsor__brand::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.home-sponsor__brand img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
.home-sponsor__brand--main {
  max-width: 700px;
  margin: 0 auto;
}
@media only screen and (max-width: 1023px) {
  .home-sponsor__brand--main {
    max-width: 450px;
  }
}
@media only screen and (max-width: 767px) {
  .home-sponsor__brand--main {
    max-width: unset;
  }
}
.home-sponsor__brand--main::before {
  padding-top: 28.5714285714%;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__brand--main::before {
    padding-top: 28.6096256684%;
  }
}
.home-sponsor__brand--sub::before {
  padding-top: 27.2900763359%;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__brand--sub::before {
    padding-top: 27.2727272727%;
  }
}
.home-sponsor__sub {
  margin-top: 51px;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__sub {
    margin-top: 39px;
  }
}
.home-sponsor__sub .c-text2 {
  margin-top: 58px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .home-sponsor__sub .c-text2 {
    margin-top: 26px;
  }
}
.home-sponsor__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  margin: 0 -20px -39px;
}
@media only screen and (max-width: 1023px) {
  .home-sponsor__list {
    margin: 0 -10px -19px;
  }
}
@media only screen and (max-width: 767px) {
  .home-sponsor__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0;
  }
}
.home-sponsor__item {
  width: calc(50% - 40px);
  margin: 0 20px 39px;
}
@media only screen and (max-width: 1023px) {
  .home-sponsor__item {
    width: calc(50% - 20px);
    margin: 0 10px 19px;
  }
}
@media only screen and (max-width: 767px) {
  .home-sponsor__item {
    width: 100%;
    margin: 0;
  }
}
@media only screen and (max-width: 767px) {
  .home-sponsor__item + .home-sponsor__item {
    margin-top: 12px;
  }
}
/*------------------------------------------------------------
    CSS of Member section
------------------------------------------------------------*/
.home-member {
  position: relative;
  padding: 150px 0 0;
}
@media only screen and (max-width: 767px) {
  .home-member {
    padding: 75px 0 0;
  }
}
.home-member__heading {
  text-align: center;
}
.home-member__heading .c-title2__sub {
  margin-top: 21px;
}
@media only screen and (max-width: 767px) {
  .home-member__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-member__description {
  margin-top: 38px;
}
@media only screen and (max-width: 767px) {
  .home-member__description {
    margin-top: 22px;
  }
}
.home-member__body {
  margin-top: 65px;
}
@media only screen and (max-width: 767px) {
  .home-member__body {
    margin-top: 60px;
  }
}
.home-member__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
@media only screen and (max-width: 1023px) {
  .home-member__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}
.home-member__left {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 55.9742647059%;
  padding-right: 40px;
}
@media only screen and (max-width: 1023px) {
  .home-member__left {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-flex: unset;
    -ms-flex-positive: unset;
    flex-grow: unset;
    width: 100%;
    margin-top: 32px;
    padding-right: 0;
  }
}
@media only screen and (max-width: 767px) {
  .home-member__left {
    margin-top: 20px;
  }
}
.home-member__leftinner {
  width: 100%;
  max-width: 564px;
  margin-right: auto;
}
@media only screen and (max-width: 1023px) {
  .home-member__leftinner {
    max-width: unset;
    margin-right: 0;
  }
}
.home-member__content {
  margin: -3px 0;
}
@media only screen and (max-width: 1023px) {
  .home-member__content {
    margin: 0;
  }
}
.home-member__right {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 44.0257352941%;
}
@media only screen and (max-width: 1023px) {
  .home-member__right {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    -ms-flex-negative: unset;
    flex-shrink: unset;
    width: 100%;
  }
}
.home-member__thumb {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.home-member__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 68.0584551148%;
}
.home-member__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
/*------------------------------------------------------------
    CSS of Voice section
------------------------------------------------------------*/
.home-voice {
  position: relative;
  padding: 220px 0 0;
}
@media only screen and (max-width: 767px) {
  .home-voice {
    padding: 100px 0 0;
  }
}
.home-voice__heading {
  text-align: center;
}
.home-voice__heading .c-title2__sub {
  margin-top: 21px;
}
@media only screen and (max-width: 767px) {
  .home-voice__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-voice__body {
  margin-top: 66px;
}
@media only screen and (max-width: 767px) {
  .home-voice__body {
    margin-top: 58px;
  }
}
.home-voice__block + .home-voice__block {
  margin-top: 153px;
}
@media only screen and (max-width: 767px) {
  .home-voice__block + .home-voice__block {
    margin-top: 65px;
  }
}
.home-voice__box {
  margin-top: 115px;
}
@media only screen and (max-width: 767px) {
  .home-voice__box {
    margin-top: 58px;
  }
}
/*------------------------------------------------------------
    CSS of Team section
------------------------------------------------------------*/
.home-team {
  position: relative;
  padding: 75px 0 0;
}
@media only screen and (max-width: 767px) {
  .home-team {
    padding: 60px 0 0;
  }
}
.home-team__heading {
  text-align: center;
}
.home-team__heading .c-text1 {
  margin-top: 31px;
}
@media only screen and (max-width: 767px) {
  .home-team__heading .c-text1 {
    margin-top: 26px;
  }
}
.home-team__title {
  color: #fff;
  font-size: 5rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .home-team__title {
    font-size: 2.5rem;
    line-height: 1.52;
  }
}
@media only screen and (max-width: 374px) {
  .home-team__title {
    font-size: 2.2rem;
    line-height: 1.5;
  }
}
.home-team__body {
  margin-top: 45px;
}
@media only screen and (max-width: 767px) {
  .home-team__body {
    margin-top: 25px;
  }
}
.home-team__slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}
.home-team__slide {
  width: 300px;
}
@media only screen and (max-width: 767px) {
  .home-team__slide {
    width: 200px;
  }
}
.home-team__thumb {
  position: relative;
  width: 100%;
  background-color: #ccc;
  overflow: hidden;
}
.home-team__thumb::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
.home-team__thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}
/*------------------------------------------------------------
    CSS of Recruit section
------------------------------------------------------------*/
.home-recruit {
  position: relative;
  padding: 108px 0 0;
}
@media only screen and (max-width: 767px) {
  .home-recruit {
    padding: 62px 0 0;
  }
}
.home-recruit__heading {
  text-align: center;
}
.home-recruit__heading .c-title2__sub {
  margin-top: 21px;
}
@media only screen and (max-width: 767px) {
  .home-recruit__heading .c-title2__sub {
    margin-top: 4px;
  }
}
.home-recruit__body {
  margin-top: 53px;
}
@media only screen and (max-width: 767px) {
  .home-recruit__body {
    margin-top: 22px;
  }
}
.home-recruit__content {
  text-align: center;
}
.home-recruit__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 43px;
}
@media only screen and (max-width: 767px) {
  .home-recruit__btn {
    margin-top: 40px;
  }
}
.home-recruit__btn .c-btn1 {
  max-width: 800px;
}
@media only screen and (max-width: 767px) {
  .home-recruit__btn .c-btn1 {
    max-width: 480px;
  }
}
/*≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
// Utility .u-
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡*/
/*------------------------------------------------------------
    Display
------------------------------------------------------------*/
.u-none {
  display: none;
}
.u-inblock {
  display: inline-block;
}
/*------------------------------------------------------------
    Background
------------------------------------------------------------*/
/*------------------------------------------------------------
    Spacing
------------------------------------------------------------*/
/*------------------------------------------------------------
    Font
------------------------------------------------------------*/
.u-serif {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
.u-bebas-neue {
  font-family: "Bebas Neue", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
/*------------------------------------------------------------
    Text
------------------------------------------------------------*/
@media only screen and (max-width: 1023px) {
  .is-pc {
    display: none;
  }
}
.is-notpc {
  display: none;
}
@media only screen and (max-width: 1023px) {
  .is-notpc {
    display: block;
  }
}
.is-sp {
  display: none;
}
@media only screen and (max-width: 767px) {
  .is-sp {
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .is-notsp {
    display: none;
  }
}
.is-phone {
  pointer-events: none;
}
@media only screen and (max-width: 1023px) {
  .is-phone {
    pointer-events: unset;
  }
}