@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Shippori+Mincho&display=swap");
/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* -----------------------------------------------
base
----------------------------------------------- */
html {
  font-size:62.5%;
}
body {
  color:#000;
  font-size: 1.6em;
  letter-spacing: .1em;
  position:relative;
}
ul {
  padding:0;
  margin:0;
}
li {
  list-style:none;
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0;
  font-weight: 700;
}
p {
  margin:0;
  padding:0;
}
picture {
  display: block;
}
img {
  max-width:100%;
  height:auto;
}
a {
  cursor: pointer;
  text-decoration:none;
}
a:hover {
  text-decoration:none;
  color: initial;
  opacity: 0.8;
  color: unset;
}
ul.list-nomal li {
  margin: 0;
  padding: 0;
  list-style: disc !important;
}

.inner__wrap {
  margin-inline: auto;
}

@media(max-width:767px) {
  
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
  .inner__wrap {
    width: 87.277%;
    max-width: unset;
    padding-inline: 0;
  }
}

@media(min-width:768px) {

  .sp {
    display: none;
  }
  .pc {
    display: block;
  }  
  .inner__wrap {
    /* max-width: 1512px; */
    /* max-width: calc(1512px + 60px); */
    /* padding-inline: 30px; */
    /* width: min(85vw, 1572px); */
    padding-inline: 10.42%;
  }
  

  
}


/* -----------------------------------------------
breadcrumb
----------------------------------------------- */
.bc__list__wrap{
  text-align: center;
}
.bc__list__wrap .bc__list {
  display: flex;
	justify-content: center;
  align-items: center;
}
.bc__list * {
  color: #000;
}
.bc__list li:not(:last-child):after{
  content: '＞';
  margin-inline: 1em;
}
.bc__list a:hover{
  text-decoration: underline;
}

@media(max-width:767px) {

  .bc__list__wrap {
    display: none;
  }

}
@media(min-width:768px) {

  .bc__list {
    /* height: 56px; */
    height: 2.7em;
  }
  .bc__list * {
    font-size: min(1.04vw, 2rem);
  }

}


/* -----------------------------------------------
header
----------------------------------------------- */
header {
  background:#444;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 5;
}
.header__inner * {
  color: #fff;
}
.header__inner {
  position:relative;
  margin-inline: auto;
}
.header__inner__logo {}
.header__inner__logo strong {
  display: block;
}

.header__sub__nav * {
  font-weight: bold;
}
.form__link li a {
  background: #FF4E00;
  border: 2px solid #fff;
  box-sizing: border-box;
  display: flex;
	justify-content: center;
	align-items: center;
}

.child__wrap a {
  letter-spacing: 0;
}


@media(max-width:1000px) {

  .header__inner {
    /* width: 87.277%; */
    width: 94%;
  }
  .header__inner .header__inner__logo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    min-height: 54px;
  }
  .header__inner__logo strong {
    width: 20.4%;
    /* margin-right: 4.66%; */
    margin-right: 4%;
  }
  .header__inner__logo .form__link {
    /* width: 57.72%; */
    width: 59.72%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .header__inner__logo .form__link li {
    width: 47.98%;
  }
  .header__inner__logo .form__link li a {
    /* font-size: min(2.03vw,8px); */
    font-size: min(2.93vw,10px);
    padding-block: .58em;
    border-width: 1px;
  }
  button.menu__btn {
    position: fixed;
    top: 0;
    right: 0;
    display: block;
    background: none;
    width: 54px;
    height: 54px;
    border: 0;
    outline: none;
  }
  button.menu__btn span {
    background: #fff;
    position: absolute;
    left: 0;
    display: block;
    width: 34px;
    height: 3px;
    top: calc(50% - 1.5px);
    transition: all 0.4s ease;
  }
  button.menu__btn span:nth-child(1) {
    transform: translateY(-11px);
  }
  button.menu__btn span:nth-child(2) {
  }
  button.menu__btn span:nth-child(3) {
    transform: translateY(11px);
  }
  header.open button.menu__btn span:nth-child(1) {
    transform: rotate(45deg);
  }
  header.open button.menu__btn span:nth-child(2) {
    height: 0;
  }
  header.open button.menu__btn span:nth-child(3) {
    transform: rotate(-45deg);
  }
  .header__nav__wrap {
    display: none;
    height: 100vh;
    padding-top: 15px;
  }
  .header__nav {
    margin-bottom: 30px;
  }
  header.open .header__nav__wrap {
    display: block;
  }
  .header__nav__parents > li {
    margin-bottom: 8px;
  }
  .header__nav__parents > li > a {
    background: #fff;
    color: #000 !important;
    display: block;
    font-size: 1.6rem;
    line-height: 32px;
    position: relative;
    padding-inline: 1em;
  }
  .header__nav__parents > li:has(.child__wrap) > a:before,
  .header__nav__parents > li:has(.child__wrap) > a:after {
    content: "";
    position: absolute;
    top: calc(50% - 6px);
    right: 6%;
    width: 2px;
    height: 12px;
    border-radius: 9999px;
    background-color: #000000;
    transform-origin: 50% calc(100% - 1px);
  }
  .header__nav__parents > li:has(.child__wrap) > a:before {
    transform: rotate(45deg);
  }
  .header__nav__parents > li:has(.child__wrap) > a:after {
    transform: rotate(-45deg);
  }
  .header__nav__parents > li > a.open:before,
  .header__nav__parents > li > a.open:after {
    top: calc(50% - 15px);
  }
  .header__nav__parents > li > a.open:before {
    transform: rotate(-135deg);
  }
  .header__nav__parents > li > a.open:after {
    transform: rotate(-225deg);
  }
  .child__wrap {
    display: none;
    padding-block: 1em;
  }
  .child__wrap a {
    font-size: 1.2rem;
    padding-block: .5em;
    display: block;
  }
  .child__wrap li {
    margin-bottom: .5em;
  }

  .header__sub__nav {
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: stretch;
  }
  .header__sub__nav p {
    text-align: center;
    font-size: 2.8rem;
  }
  .header__sub__nav .form__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
  }
  .header__sub__nav .form__link li {
    width: 47.813%;
  }
  .header__sub__nav .form__link li a {
    border-width: 1px;
    /* font-size: 1.8rem; */
    font-size: 1.4rem;
    text-align: center;
    width: 100%;
    height: 50px;
    line-height: 50px;
  }

}



@media(min-width:1001px) {

  .header__inner,
  .header__nav__wrap,
  .header__sub__nav,
  .header__sub__nav ul.form__link {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .header__inner {
    max-width: calc(1860px + 60px);
    /* min-height: 96px; */
    padding-inline: 30px;
  }

  .header__inner .header__inner__logo {
    margin-left: 16px;
    width: 6.95%;
    max-width: 126px;
  }
  .header__inner__logo strong {
    /* max-width: 126px; */
    /* width: 126px; */
    width: 100%;
  }
  
  .header__inner .header__nav__wrap {
    margin-left: 45px;
    margin-right: auto;
    max-width: 1718px;
    width: 92.366%;
  }
  .header__nav__wrap .header__nav {
    max-width: 898px;
    width: 53.67%;
  }


  /* .header__nav__parents,
  .header__nav__parents > li, */
  .header__nav__parents > li > a {
    height: 100%;
    min-height: 96px;

    min-height: 6em;
  }
  .header__nav__parents > li:has(.child__wrap) > a:after {
    content: "▼";
    margin-left: .4em;
  }

  ul.header__nav__parents {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 2%;
  }
  .header__nav__parents > li {
    position: relative;
  }
  .header__nav__parents > li > a {
    font-size: min(0.834vw, 1.6rem);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .header__nav__parents > li .child__wrap {
    background: #4D4D4D;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 260px;
    opacity: 0;
    transition: all .5s;
    visibility: hidden;
    padding: 1em 0 0;
  }
  .child__wrap a {
    font-size: 1.2rem;
  }
  .header__nav__parents > li:hover .child__wrap {
    visibility: visible;
    top: 100%;
    opacity: 1;
    padding-bottom: 1em;
  }
  .header__sub__nav {
    width: 43.12%;
    flex-wrap: wrap;
  }
  .header__sub__nav p {
    font-size: 3.2rem;
    letter-spacing: 0.07em;
  }
  .form__link {
    gap: 12px;
    margin: 2% 0;
    width: 53.814%;
  }
  .form__link li {
    width: 48.45%;
  }
  .form__link li a {
    /* font-size: min(1vw,2.1rem); */
    font-size: min(.9vw,2.1rem);
    width: 100%;
    height: 58px;
  }

}

@media(min-width:1001px) and (max-width:1892px) {

  .header__sub__nav {}
  .header__sub__nav p {
    font-size: min(1.4vw, 3.2rem);
  }

}




/* -----------------------------------------------
footer
----------------------------------------------- */

#global-footer {
  position:relative;
}

.footer-top {
  background:#e5e5e5;
  padding: 1rem 0;
}

.footer-nav {
  display:flex;
  display:-ms-flexbox;
  justify-content:center;
  -ms-flex-pack:center;
}

.footer-nav li {
  display:flex;
  display:-ms-flexbox;
  justify-content:center;
  -ms-flex-pack:center;
align-items:center;
-ms-flex-align:center;
}

.footer-nav a {
  display:block;
width:100%;
  min-width:200px;
  padding:20px 10px;
  font-size:1.3rem;
  font-weight:bold;
  text-align:center;
  color:#000;
}

.footer-bottom {
  background:#000;
  color:#fff;
}

.footer-inner {
  display:flex;
  display:-ms-flexbox;
  justify-content:space-between;
  -ms-flex-pack:justify;
  align-items:center;
  -ms-flex-align:center;
}

.footer-logo {
  flex-basis: 15%; 
  display:block;
  padding:10px;
}

.footer-inner small {
  font-size:1.1rem;
}

/* mediaquery */

@media(max-width:991px) {
  #global-footer .container{
      max-width:100%;
  }
.footer-nav {
  flex-wrap:wrap;
  -ms-flex-wrap:wrap;
}
.footer-nav > li:last-of-type {
  width:100%;
}
  .footer-nav a {
      min-width:auto;
      padding:20px;
  }
}

@media(max-width:767px) {
  .footer-nav a {
      padding:15px;
      font-size:1.1rem;
  }
}

@media(max-width:575px) {
  .footer-nav {
      flex-direction:column;
      -ms-flex-direction:column;
      padding:10px;
  }
  .footer-nav a {
      padding:10px;
      text-align:center;
  }

  .footer-inner {
      flex-direction:column;
      -ms-flex-direction:column;
  }
}

/*footer Link霑ｽ蜉�*/
.ftLink{
flex-basis: 55%; 
display: flex;
    align-items:center;
  justify-content:flex-start;
}
.ftLink a{
font-size: 1.1rem;
color: #FFF;
margin-right: 1rem;
}
.ftLink a:last-child{
margin-right: 0rem;
}
.ftLink a:after {
  content: "\f08e";
  font-family: fontawesome;
  margin: 0 0.3em;
  color: #dddddd;
}

@media(max-width:767px) {
.ftLink{
  flex-basis: 55%; 
  display: contents;
}
.ftLink a{
  margin-right: 0rem;
    margin-bottom: 1rem;
}
.ftLink a:first-child{
    margin-top: 1rem;
}

}

.page-kintone #global-footer{
  margin-top: 115px;
}

@media(max-width:991px) {
.page-kintone #global-footer{
  margin-top: 122px;
}
}
@media (max-width: 767px) {
  .page-kintone #global-footer {
      margin-bottom: 60px;
      margin-top: 0;
  }
}









/* CTA */
.cta__area {
  position: relative;
  z-index: 2;
}
.cta__wrap {}
.cta__fx .cta__item {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  height: auto;
}
.cta__item__inner a {
  color: #fff;
  text-align: center;
}
.cta__item__inner a * {
  display: block;
}
.cta__head span {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  line-height: 1;
}
.alt__link {
  color: #fff;
  background-color: #000;
  text-align: center;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50vw;
  max-width: 100%;
  text-align: center;
  margin-inline: auto;
}
.alt__link:after {
  content: "";
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='22.792' height='22.792' data-name='Icon ionic-ios-arrow-dropright'><path fill='%23fff' d='M8.914 5.457a1.061 1.061 0 0 1 1.5 0l5.227 5.243a1.056 1.056 0 0 1 .033 1.457l-5.15 5.167a1.057 1.057 0 1 1-1.5-1.49l4.378-4.443-4.487-4.443a1.045 1.045 0 0 1-.001-1.491Z'/><path fill='%23fff' d='M0 11.396a11.4 11.4 0 1 0 11.4-11.4A11.394 11.394 0 0 0 0 11.396Zm1.753 0A9.639 9.639 0 0 1 18.212 4.58 9.64 9.64 0 1 1 4.58 18.212a9.56 9.56 0 0 1-2.827-6.816Z'/></svg>");
}

@media(max-width:767px) {

  .cta__wrap .cta__fx {}
  .cta__fx .cta__item {
    padding-block: 21px 24px;
  }
  .cta__item.item__01 {
    background-image: url(../images/cta_bg_01_sp.jpg);
  }
  .cta__item.item__02 {
    background-image: url(../images/cta_bg_02_sp.jpg);
  }
  .cta__head {
    font-size: 1.3rem;
  }
  .cta__head span {
    font-size: 4.2rem;
    margin: 0.04em 0 .28em;
  }
  .cta__cap {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .alt__link {
    width: 206px;
    max-width: 100%;
    height: 27px;
    line-height: 27px;
    font-size: 1rem;
    margin-top: 18px;
  }
  .alt__link:after {
    width: 12px;
    height: 12px;
    right: 15px;
  }

}

@media(min-width:768px) {

  .cta__wrap .cta__fx {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
  .cta__fx .cta__item {
    width: 50%;
    height: 100%;
    padding-block: 124px 66px;
  }
  .cta__item.item__01 {
    background-image: url(../images/cta_bg_01_pc.jpg);
  }
  .cta__item.item__02 {
    background-image: url(../images/cta_bg_02_pc.jpg);
  }
  .cta__head {
    font-size: min(1.6666666667vw, 32px);
  }
  .cta__head span {
    font-size: min(4.375vw, 84px);
    margin: 0.04em 0 .28em;
  }
  .cta__cap {
    font-size: min(1.25vw, 24px);
    line-height: 1.6;
  }
  .alt__link {
    width: 400px;
    height: 37px;
    line-height: 37px;
    font-size: 1.6rem;
    margin-top: 58px;
  }
  .alt__link:after {
    width: 23px;
    height: 23px;
    right: 15px;
  }
  
}




/* -----------------------------------------------
fixed__wrap
----------------------------------------------- */
.fixed__wrap {
  position: fixed;
  top: 96px;
  right: 0;
  left: 0;
}


/* -----------------------------------------------
mv__wrap
----------------------------------------------- */
.mv__wrap {
  background-position: 50% 0;
  background-size: cover;
  background-repeat: no-repeat;
}
.mv__wrap .mv__inner {
  margin-inline: auto;
}
.mv__cap__wrap {
  text-align: center;
}
.mv__cap__wrap h1 * {
  display: block;
  margin-inline: auto;
}
.mv__cap__wrap p {
  font-weight: bold;
}
.mv__link a {
  background: #FF4E00;
  border-radius: 50vh;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  position: relative;
}
.mv__link a:after {
  content: "";
  aspect-ratio: 50 / 40;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="50" height="40" viewBox="0 0 50 40"><path id="Arrow_Right_Big_White" d="M33.48.884l-2.178,2.811s9.129,10.12,13.042,14.056c-13.729-.157-44.344,0-44.344,0v3.374s30.625-.123,44.344,0c-3.908,4.498-13.042,14.619-13.042,14.619l2.174,3.374,16.524-19.679L33.48.884Z" fill="%23ffffff"/></svg>');
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  height: auto;
}

@media screen and (max-width: 767px) {

  .mv__wrap {
    aspect-ratio: 786 / 1200;
    background-image: url(../images/mv_sp.jpg);
  }
  .mv__wrap .mv__inner {
    width: 87.277%;
  }
  .mv__banner__wrap {
    width: 39.65%;
  }
  .mv__banner__wrap ul {
    padding-top: 14%;
  }
  .mv__banner__wrap ul li {
    margin-bottom: 7%;
  }

  .mv__cap__wrap {
    /* bottom: 5%; */
    position: absolute;
    width: 87.277%;
    margin-top: 5%;
  }
  .mv__cap__wrap h1 {
    margin-bottom: 1%;
  }
  .mv__cap__wrap h1 img {
    width: 72.88%;
    margin-bottom: 1.4%;
  }
  .mv__cap__wrap h1 strong {
    font-size: 2.1rem;
    letter-spacing: .066em;
    line-height: 1.52;
  }
  .mv__cap__wrap p {
    font-size: 1.2rem;
    line-height: 2;
    letter-spacing: 0;
    margin-bottom: 3.2%;
  }
  .mv__cap__wrap .icon__wrap {
    width: 75.8%;
    margin-inline: auto;
    margin-bottom: 1.9%;
  }
  .mv__link a {
    font-size: 1.2rem;
    max-width: 616px;
    width: 90%;
    height: 3.16em;
    line-height: 3.16em;
    letter-spacing: .08em;
    padding-right: 1.5em;
  }
  .mv__link a:after {
    width: 20px;
    right: 10px;
  }

}

@media screen and (min-width: 768px) {

  .mv__wrap {
    /* aspect-ratio: 2880 / 1395; */
    background-image: url(../images/mv_pc.jpg);
    background-position: 100% 0;
  }
  .mv__wrap .mv__inner {
    max-width: calc(1700px + 60px);
    padding-inline: 30px;
    padding-bottom: 54px;
  }
  .mv__banner__wrap {
    padding-top: min(1vw,19px);
    margin-bottom: min(1.474vw, 28px);
    /* padding-top: 1.12%;
    margin-bottom: 1.647%; */
  }
  .mv__banner__wrap ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 30px;
  }
  .mv__banner__wrap ul li:first-child {
    width: min(20.3125vw, 390px);
  }
  .mv__banner__wrap ul li {
    /* width: 22.94%; */
    width: min(18.736vw, 356px);
  }


  .mv__cap__wrap h1 {
    margin-bottom: min(1.211vw, 23px);
    /* margin-bottom: 1.353%; */
  }
  .mv__cap__wrap h1 .sp {
    display: none;
  }
  .mv__cap__wrap h1 img {
    /* width: 35.69%;
    max-width: 628px; */
    width: min(33.05vw,628px);
    margin-bottom: min(1.894vw, 36px);
    /* margin-bottom: 2.12%; */
  }
  .mv__cap__wrap h1 strong {
    font-size: min(2.7vw, 5.2rem);
    letter-spacing: .066em;
  }
  .mv__cap__wrap p {
    font-size: min(1.35vw, 2.6rem);
    line-height: 2.076;
    letter-spacing: .05em;
    /* margin-bottom: 27px; */
    margin-bottom: min(1.42vw, 27px);
  }
  .mv__cap__wrap .icon__wrap {
    /* margin-bottom: 28px; */
    margin-bottom: min(1.473vw, 28px);
  }
  .mv__cap__wrap .icon__wrap img {
    width: min(25.78vw, 490px);
  }
  .mv__link a {
    font-size: min(1.46vw, 2.8rem);
    max-width: 616px;
    width: 80%;
    height: 2.857em;
    line-height: 2.857em;
    letter-spacing: .08em;
    padding-right: 1.5em;
  }
  .mv__link a:after {
    /* width: 50px; */
    width: 1.786em;
    right: 20px;
  }


}











/* -----------------------------------------------
main
----------------------------------------------- */
.fixed__wrap + main {
  position: relative;
  background: #fff;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
/* 
.fixed__wrap + main {
  margin-top: 100vh !important;
} */

}
/* -----------------------------------------------
catch__wrap
----------------------------------------------- */
.catch__wrap {}
.catch__list li {
  text-align: center;
  font-weight: bold;
}
.catch__list li picture {
  display: block;
}

@media screen and (max-width: 767px) {

  .catch__wrap {
    margin-bottom: 80px;
  }
  .catch__mv__fx {
    margin-bottom: 8%;
    padding-top: 32px;
  }
  .catch__mv__fx picture {
    width: 71.153%;
    margin-inline: auto;
    margin-bottom: 4%;
  }
  .catch__mv__fx h2 {
    font-size: 1.8rem;
    line-height: 1.66;
    text-align: center;
  }
  .catch__list {}
  .catch__list li {
    font-size: 1.4rem;
    line-height: 1.428;
    margin-bottom: 8%;
  }
  .catch__list li picture {
    margin-bottom: 4%;
    margin-inline: auto;
    width: 69%;
  }

}

@media screen and (min-width: 768px) {

  .catch__wrap {
    margin-bottom: 100px;
  }
  .catch__mv__fx {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 43px;
  }
  .catch__mv__fx picture {
    width: 39.153%;
    margin-right: -34px;
  }
  .catch__mv__fx h2 {
    font-size: min(2.396vw, 4.6rem);
    line-height: 1.739;
    margin-left: 6.5%;
  }

  .catch__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .catch__list li {
    width: calc(100% / 3);
    font-size: min(1.459vw, 2.8rem);
    line-height: 1.428;
  }
  .catch__list li picture {
    margin-bottom: 22px;
  }


}





/* -----------------------------------------------
en__head__wrap
----------------------------------------------- */
.en__head__wrap {
  text-align: center;
  position: relative;
}
.en__head__wrap h2 {
  position: relative;
  z-index: 1;
}
.en__head__wrap em img {
  position: absolute;
  opacity: .1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.en__head__wrap em img {}


@media screen and (max-width: 767px) {

  .en__head__wrap {}
  .en__head__wrap h2 {
    font-size: 1.8rem;
    line-height: 1.44;
  }
  .en__head__wrap em img {
    width: auto;
    height: 4.25em;
  }
  .en__head__wrap p {
    font-size: 1.4rem;
    line-height: 2;
    letter-spacing: .05em;
  }

}

@media screen and (min-width: 768px) {

  .en__head__wrap {}
  .en__head__wrap h2 {
    font-size: min(2.813vw, 5.4rem);
    line-height: 1.48;
  }
  .en__head__wrap em img {
    width: auto;
    height: 284px;
  }
  .en__head__wrap p {
    font-size: min(1.354vw, 2.6rem);
    line-height: 1.92;
  }

}


.en__head__wrap-border {
  border-top-color: #EA4F57;
  border-top-style: solid;
  display: inline-block;
}

@media screen and (max-width: 767px) {

  .en__head__wrap-border {
    width: 87.277%;
    margin-inline: auto;
    border-top-width: 2px;
    padding-top: 11px;

  }

}

@media screen and (min-width: 768px) {
  .en__head__wrap-border {
    border-top-width: 4px;
    padding-top: 30px;
  }

}



/* -----------------------------------------------
head__wrap
----------------------------------------------- */
.head__wrap {
  position: relative;
  text-align: center;
}
.head__wrap h2 em {
  display: inline-block;
  font-style: normal;
  background: linear-gradient(transparent 50%, #FEBF00 50%);
}
.head__wrap h2 strong {
  font-weight: bold;
}
.head__wrap > strong {
  font-weight: normal;
}


@media screen and (max-width: 767px) {

  .head__wrap {}
  .head__wrap h2 {
    font-size: 2.2rem;
    line-height: 1.48;
  }
  .head__wrap h2 strong {
    font-size: 3.9rem;
  }
  .head__wrap h2 em {
    padding-inline: .3em;
  }
  .head__wrap > strong {
    font-size: 1.8rem;
  }
  .head__wrap p {
    font-size: 1.2rem;
    line-height: 1.833;
    padding-top: 10px;
    letter-spacing: .05em;
  }
  
}

@media screen and (min-width: 768px) {

  .head__wrap {}
  .head__wrap h2 {
    font-size: min(2.813vw, 5.4rem);
    line-height: 1.48;
  }
  .head__wrap h2 strong {
    font-size: min(5.9896vw, 11.5rem);
  }
  .head__wrap h2 em {
    padding-inline: .3em;
  }
  .head__wrap > strong {
    font-size: 3.2rem;
  }
  .head__wrap p {
    font-size: min(1.354vw, 2.6rem);
    line-height: 2.307;
    padding-top: 20px;
  }

}







/* -----------------------------------------------
service__wrap
----------------------------------------------- */
.service__wrap {
  position: relative;
  z-index: 1;
}

.service__fx__cap strong {
  display: inline-block;
  background: #FEBF00;
  color: #fff;
}
.service__fx__cap em {
  display: block;
  font-style: normal;
  font-weight: bold;
  text-decoration: underline;
}

.service__fx__img picture img {
  width: 100%;
  height: auto;
}


@media screen and (max-width: 767px) {

  .service__inner {
    padding-top: 4%;
    margin-bottom: 32px;
  }
  .service__wrap .en__head__wrap em img {
    transform: translate(-50%, -100%);
  }
  .service__item:not(:last-child) {
    margin-bottom: 52px;
  }
  .service__item .service__fx {
    margin-bottom: 7%;
  }
  .service__fx .service__fx__img {
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
  }
  .service__fx .service__fx__img picture {
    overflow: hidden;
  }
  .service__fx .service__fx__cap {
    width: 86.88%;
    margin-inline: auto;
  }
  .service__fx__cap strong {
    font-size: 2.2rem;
    height: 1.818em;
    line-height: 1.818em;
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-bottom: 3%;
    text-align: center;
  }
  .service__fx__cap h3 {
    font-size: 3.2rem;
    line-height: 1.25;
    margin-bottom: 3%;
    letter-spacing: 0;
    width: 105%;
  }
  .service__fx__cap em {
    font-size: 1.4rem;
    line-height: 1.64;
    margin-bottom: 3%;
  }
  .service__fx__cap p {
    font-size: 1.3rem;
    line-height: 2;
  }
  .service__item picture {
    text-align: center;
  }

}

@media screen and (min-width: 768px) {

  .service__inner {
    padding-top: 30px;
    margin-bottom: 74px;
  }
  .service__item:not(:last-child) {
    margin-bottom: 133px;
  }
  .service__item .service__fx {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin-bottom: 50px;
  }
  .service__fx .service__fx__img {
    position: relative;
    width: 57.4vw;
    margin-right: auto;
    margin-left: calc(50% - 50vw);
  }
  .service__fx .service__fx__img picture {
    border-radius: 0 40px 40px 0;
    overflow: hidden;
  }
  .service__fx.rev {
    flex-direction: row-reverse;
  }
  .rev .service__fx__img {
    margin-left: auto;
    margin-right: calc(50% - 50vw);
  }
  .rev .service__fx__img picture {
    border-radius: 40px 0 0 40px;
  }
  .service__fx.rev .service__fx__cap {
    left: 0;
    right: unset;
    text-align: left;
  }

  .service__fx .service__fx__cap {
    /* top: 80px; */
    top: 10.4%;
    position: absolute;
    left: unset;
    right: 0;
    text-align: right;
  }
  .service__fx__cap strong {
    font-size: min(2.5vw, 4.8rem);
    /* height: 102px;
    line-height: 102px; */
    /* min-width: 746px; */
    width: min(38.86vw, 746px);
    margin-bottom: 20px;
    text-align: center;
    height: 2.125em;
    line-height: 2.125em;
  }
  .service__fx__cap h3 {
    font-size: min(4.167vw, 8rem);
    line-height: 1.25;
    margin-bottom: 16px;
  }
  .service__fx__cap em {
    font-size: min(1.875vw, 3.6rem);
    line-height: 1.66;
    margin-bottom: 38px;
  }
  .service__fx__cap p {
    font-size: min(1.25vw, 2.4rem);
    line-height: 2.083;
  }


}






/* -----------------------------------------------
training__wrap
----------------------------------------------- */
.training__wrap {}
.training__wrap .training__inner__fx {
  position: relative;
}
.training__item .training__cap__wrap p {
  font-weight: bold;
  background: linear-gradient(transparent 50%, #FDF6D5 50%);
}
.training__cap__wrap p span {
  text-decoration: underline;
}
.elearning h3 {
  background: #F97B59;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.elearning .training__cap__wrap {
  color: #F97B59;
}
.workshop h3 {
  background: #185B88;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.workshop .training__cap__wrap {
  color: #185B88;
}
.training__item .training__flow__list li {
  display: flex;
	justify-content: flex-start;
	align-items: center;
}
.training__flow__list strong img {
  width: 100%;
  height: auto;
}
.training__flow__list p {
  font-weight: bold;
}

@media screen and (max-width: 767px) {

  .training__wrap {
    margin-bottom: 40px;
  }
  .training__wrap .training__inner__fx {
    padding-top: 29px;
  }
  .training__inner__fx .training__item:not(:last-child) {
    margin-bottom: 46px;
  }
  .training__item h3 {
    font-size: 2.1rem;
    height: 1.714em;
    line-height: 1.714em;
    margin-bottom: 10px;
  }
  .training__cap__wrap {
    margin-bottom: 36px;
  }
  .training__cap__wrap p {
    font-size: 1.2rem;
    line-height: 2;
    letter-spacing: .02em;
    letter-spacing: 0;
    padding-left: .5em;
  }
  .training__flow__list {
    width: 90.88%;
    margin-inline: auto;
  }
  .training__item .training__flow__list li {
    justify-content: space-between;
  }
  .training__flow__list li:not(:last-child) {
    margin-bottom: 25px;
  }
  .training__flow__list li strong {
    width: 39.59%;
  }
  .training__flow__list li div {
    width: 54%;
  }
  .training__flow__list p {
    font-size: 1.3rem;
    line-height: 1.307;
    margin-bottom: 9px;
  }
  .training__flow__list span {
    font-size: .9rem;
    line-height: 1.333;
    display: inline-block;
  }

}

@media screen and (min-width: 768px) {

  .training__wrap {
    margin-bottom: 98px;
  }
  .training__wrap .training__inner__fx {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-top: 56px;
  }
  .training__inner__fx .training__item {
    width: 44.649%;
  }
  .training__item h3 {
    font-size: min(2.396vw, 4.6rem);
    height: 74px;
    line-height: 74px;
    margin-bottom: 26px;
  }
  .training__cap__wrap {
    margin-bottom: 75px;
  }
  .training__cap__wrap p {
    font-size: min(1.25vw, 2.4rem);
    line-height: 2;
    letter-spacing: .02em;
    padding-left: .5em;
  }
  .training__flow__list li:not(:last-child) {
    margin-bottom: 40px;
  }
  .training__flow__list li strong {
    width: 35.851%;
  }
  .training__flow__list li div {
    padding-left: 6%;
  }
  
  .training__flow__list p {
    font-size: min(1.563vw, 3rem);
  }
  .training__flow__list span {
    font-size: min(1.146vw, 2.2rem);
  }
  
}



/* -----------------------------------------------
case__wrap
----------------------------------------------- */
.case__wrap {
  background: #FAF9F7;
}
.case__wrap .en__head__wrap h2 {
  color: #EA4F57;
}
.case__fx .case__item .case__acc__box {
  background: #fff;
  box-shadow: 0 3px 6px rgba(0,0,0,.2);
  text-align: center;
}
.case__item button.case__acc__btn,
.case__item dl dt {
  background: #9D9494;
  color: #fff;
}
.case__item .case__acc__btn {
  position: relative;
  border: 0;
  margin-inline: auto;
  display: block;
  cursor: pointer;
}
.case__acc__btn:after {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-color: #ffffff transparent transparent transparent;
  transform: rotate(0deg);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.case__item h4,
.case__proposal__frame strong {
  color: #EA4F57;
  font-weight: bold;
}
.case__name,
.case__scale {
  border-bottom-color: #B5AAAA;
  border-bottom-style: solid;
  font-weight: bold;
}
.case__acc__box h3 {
  font-weight: bold;
}
.case__item dl dt {
  margin-inline: auto;
}
.case__item dl dd {
  position: relative;
}
.case__item dl dd:after {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-color: #B5AAAA transparent transparent transparent;
  transform: rotate(0deg);
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.case__proposal__frame {
  border-color: #EA4F57;
  border-style: solid; 
}
.case__proposal__cap {
  font-weight: bold;
}
.case__proposal__frame .case__time {
  background: #EA4F57;
  color: #fff;
  font-weight: bold;
}
.case__wrap .all__link {
  position: relative;
  z-index: 2;
}
.case__item a,
.case__wrap .all__link a {
  color: #000;
}
.case__item a:not([href]) {
  cursor: not-allowed;
}


@media screen and (max-width: 767px) {

  .case__wrap {
    padding-block: 16px 22px;
  }
  .case__wrap .en__head__wrap h2 {
    font-size: 2rem;
    margin-bottom: 5px;
  }
  .case__wrap .en__head__wrap em img {
    transform: translate(-50%, -193%);
  }
  .case__wrap .case__inner {
    padding-top: 58px;
  }
  .case__fx {}
  .case__fx .case__item {
    margin-bottom: 36px;
  }
  .case__item .case__acc__box {
    border-radius: 12px;
    padding-top: 58px;
  }
  .case__item .case__acc__btn {
    font-size: 1.4rem;
    height: 2.571em;
    line-height: 2.571em;
    min-width: 67%;
    margin-bottom: -1.4em;
  }
  .case__acc__btn:after {
    border-width: 12px 6px 0 6px;
    right: 10px;
  }

  .case__acc__box > *:not(picture) {
    margin-inline: 9.116%;
  }
  .case__name,
  .case__scale {
    border-bottom-width: 2px;
  }
  .case__name {
    font-size: 1.6rem;
    padding-bottom: 12px;
  }
  .case__name span {
    font-size: 1.2rem;
  }
  .case__scale {
    font-size: 1.4rem;
    padding-block: 9px
  }
  .case__acc__box h3 {
    font-size: 2rem;
    line-height: 1.35;
    padding-block: 6px 11px;
  }
  .case__acc__box dl dt {
    font-size: 1.6rem;
    max-width: 8em;
    height: 1.75em;
    line-height: 1.75em;
    margin-bottom: 7px;
  }
  .case__acc__box dl dd {
    font-size: 1.3rem;
    line-height: 1.533;
    padding-bottom: 11px;
  }
  .case__item dl dd:after {
    border-width: 20px 20px 0 20px;
    transform: translate(-50%, 0%);
  }
  .case__item h4 {
    font-size: 2.2rem;
    line-height: 1.347;
    letter-spacing: 0;
    padding-block: 22px 18px;
  }
  .case__proposal__frame {
    border-width: 2px;
    border-radius: 12px;
    padding-block: 17px 29px;
  }
  .case__proposal__frame strong {
    font-size: 1.8rem;
    /* line-height: 1.347; */
  }
  .case__proposal__cap {
    font-size: 1.3rem;
    line-height: 1.66;
    padding-top: 10px;
    padding-inline: 1em;
    margin-bottom: 45px;
  }
  .case__time {
    max-width: 80%;
    height: 1.944em;
    line-height: 1.944em;
    margin-inline: auto;
    font-size: 1.8rem;
  }
  .case__time span {
    font-size: 1.2rem;
    margin-right: 1em;
  }
  .case__link {
    padding-block: 22px 20px;
  }
  .case__link a {
    font-size: 1.6rem;
  }

  .case__fx .case__item:last-child {
    margin-bottom: 22px;
  }

  .case__wrap .all__link {
    text-align: center;
  }
  .case__wrap .all__link a {
    font-size: 1.6rem;
  }


}

@media screen and (min-width: 768px) {

  .case__wrap {
    padding-block: 86px 90px;
  }
  .case__wrap .en__head__wrap h2 {
    margin-bottom: 21px;
  }
  .case__wrap .en__head__wrap em img {
    transform: translate(-50%, -103%);
  }
  .case__wrap .case__inner {
    padding-top: 110px;
  }
  .case__fx {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .case__fx .case__item {
    width: 45.649%;
    margin-bottom: 114px;
  }
  .case__fx .case__item:nth-child(n+3) {
    margin-bottom: 56px;
  }
  .case__item .case__acc__box {
    border-radius: 34px;
    padding-top: 118px;
  }
  .case__item .case__acc__btn {
    font-size: min(1.25vw, 2.4rem);
    height: 72px;
    line-height: 72px;
    /* min-width: 456px; */
    min-width: 71.52%;
    margin-bottom: -36px;
  }
  .case__acc__btn:after {
    /* border-width: 24px 14px 0 14px; */
    border-width: 1.4em .8em 0 .8em;
    right: 20px;
  }

  .case__acc__box > *:not(picture) {
    margin-inline: 9.116%;
  }
  .case__name,
  .case__scale {
    border-bottom-width: 3px;
  }
  .case__name {
    font-size: min(1.875vw, 3.6rem);
    padding-bottom: 14px;
  }
  .case__name span {
    font-size: min(1.354vw, 2.6rem);
  }
  .case__scale {
    font-size: min(1.51vw, 2.9rem);
    padding-block: 18px
  }
  .case__acc__box h3 {
    font-size: min(2.083vw, 4rem);
    line-height: 1.35;
    padding-block: 22px 14px;
  }
  .case__acc__box dl dt {
    font-size: min(1.563vw, 3rem);
    max-width: 258px;
    height: 56px;
    line-height: 56px;
    margin-bottom: 14px;
  }
  .case__acc__box dl dd {
    font-size: min(1.25vw, 2.4rem);
    line-height: 1.833;
    padding-bottom: 22px;
  }
  .case__item dl dd:after {
    border-width: 40px 37px 0 37px;
    transform: translate(-50%, -22%);
  }
  .case__item h4 {
    font-size: min(2.396vw, 4.6rem);
    line-height: 1.347;
    letter-spacing: 0;
    padding-block: 54px 22px;
  }
  .case__proposal__frame {
    border-width: 3px;
    border-radius: 22px;
    padding-block: 39px 59px;
  }
  .case__proposal__frame strong {
    font-size: min(1.875vw, 3.6rem);
    /* line-height: 1.347; */
  }
  .case__proposal__cap {
    /* font-size: min(.937vw,1.8rem); */
    font-size: 1.8rem;
    line-height: 1.66;
    padding-top: 33px;
    padding-inline: 1em;
    margin-bottom: 40px;
  }
  .case__time {
    max-width: 426px;
    height: 70px;
    margin-inline: auto;
    line-height: 70px;
    font-size: min(1.875vw, 3.6rem);
    width: 90%;
  }
  .case__time span {
    font-size: 2rem;
    margin-right: 1em;
  }
  .case__link {
    padding-block: 42px 51px;
  }
  .case__link a {
    font-size: min(1.25vw, 2.4rem);
  }

  .case__wrap .all__link {
    text-align: center;
  }
  .case__wrap .all__link a {
    font-size: min(1.563vw, 3rem);
  }

}



/* -----------------------------------------------
dx__wrap
----------------------------------------------- */
.dx__wrap {}
.dx__wrap .en__head__wrap h2 {
  color: #EA4F57;
}
.dx__fx .dx__item {
  text-align: center;
}
.dx__item strong {
  background: #EA4F57;
  color: #fff;
  display: block;
}
.dx__item h3 {}
.dx__item h3 + p {
  position: relative;
}
.dx__item h3 + p:after {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-color: #000000 transparent transparent transparent;
  transform: rotate(0deg);
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}
.dx__item picture {}
.dx__item strong {}
.dx__item .dx__link {}
.dx__link a {
  color: #000;
}

@media screen and (max-width: 767px) {

  .dx__wrap {
    padding-block: 16px 0;
  }
  .dx__wrap .en__head__wrap h2 {
    margin-bottom: 14px;
  }
  .dx__wrap .en__head__wrap em img {
    transform: translate(-50%, -224%);
  }
  .dx__wrap .dx__inner {
    padding-top: 46px;
  }
  .dx__fx {}
  .dx__fx .dx__item {
    margin-bottom: 54px;
  }
  .dx__fx .dx__item:last-child {
    margin-bottom: 36px;
  }
  .dx__item h3 {
    font-size: 2.8rem;
    margin-bottom: 10px;
  }
  .dx__item h3 + p {
    font-size: 1.8rem;
    line-height: 1.428;
    padding-bottom: 10px;
  }
  .dx__item h3 + p:after {
    border-width: 8px 9px 0 9px;
  }
  .dx__item picture {
    margin-inline: auto;
    margin-bottom: 9px;
    width: 51%;
  }
  .dx__item strong {
    font-size: 2rem;
    border-radius: 11px;
    line-height: 1.6;
    margin-bottom: 10px;
    padding-block: 9px;
  }
  .dx__link a {
    font-size: 1.6rem;
  }
  
}

@media screen and (min-width: 768px) {

  .dx__wrap {
    padding-block: 46px 0;
  }
  .dx__wrap .en__head__wrap h2 {
    margin-bottom: 26px;
  }
  .dx__wrap .en__head__wrap em img {
    transform: translate(-50%, -106%);
  }
  .dx__wrap .dx__inner {
    padding-top: 106px;
  }
  .dx__fx {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .dx__fx .dx__item {
    width: 44.649%;
    margin-bottom: 112px;
  }
  .dx__item h3 {
    font-size: min(2.396vw, 4.6rem);
    margin-bottom: 18px;
  }
  .dx__item h3 + p {
    font-size: min(1.459vw, 2.8rem);
    line-height: 1.428;
    padding-bottom: 16px;
  }
  .dx__item h3 + p:after {
    border-width: 18px 18px 0 18px;
  }
  .dx__item picture {
    margin-bottom: 23px;
  }
  .dx__item strong {
    font-size: min(1.875vw, 3.6rem);
    border-radius: 20px;
    line-height: 1.388;
    margin-bottom: 20px;
    padding-block: 17px;
  }
  .dx__item .dx__link {}
  .dx__link a {
    font-size: 2.5rem;
  }
  
}




/* -----------------------------------------------
documents__wrap
----------------------------------------------- */
.documents__wrap {
  background: #FAF9F7;
}
.dl__list__wrap .all__link a {
  color: #000;
}

@media screen and (max-width: 767px) {

  .documents__wrap {
    padding-block: 21px 30px;
  }
  .dl__list__wrap {
    padding-top: 20px;
  }
  .dl__list__wrap ul.dl__list {}
  .dl__list li {
    margin-bottom: 15px;
  }
  .dl__list__wrap .all__link {
    padding-top: 14px;
    text-align: center;
  }
  .documents__wrap .all__link a {
    font-size: 1.6rem;
  }

}

@media screen and (min-width: 768px) {

  .documents__wrap {
    padding-block: 102px 50px;
  }
  .dl__list__wrap {
    padding-top: 28px;
  }
  .dl__list__wrap ul.dl__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
    gap: 60px 0;
    margin-bottom: 50px;
  }
  .dl__list li {
    width: 28.401%;
    margin-inline: 2.4%;
  }

  .dl__list__wrap .all__link {
    text-align: center;
  }
  .documents__wrap .all__link a {
    font-size: min(1.563vw, 3rem);
  }
  .all__link a:hover {
    text-decoration: underline;
  }

}




/* -----------------------------------------------
support__wrap
----------------------------------------------- */
.support__wrap {}
.support__fx {}
.support__fx .support__item {
  text-align: center;
}
.support__fx .support__item:not(:first-child) {
  color: #fff;
}
.support__item:nth-child(1),
.support__item:nth-child(1):before,
.support__item:nth-child(1):after {
  background: #FFD100;
}
.support__item:nth-child(2),
.support__item:nth-child(2):before {
  background: #43A486;
}
.support__item:nth-child(3),
.support__item:nth-child(3):before {
  background: #00744B;
}
.support__item:nth-child(4),
.support__item:nth-child(4):after {
  background: #50A5D5;
}
.support__item:nth-child(5),
.support__item:nth-child(5):after {
  background: #02759C;
}

.support__item h3 span {
  display: block;
}
.support__item p {
  font-weight: bold;
}

@media screen and (max-width: 767px) {

  .support__wrap {
    padding-top: 72px;
  }
  .support__fx {}
  .support__fx .support__item {
    position: relative;
    width: 100%;
    padding-block: 36px 24px;
  }
  .support__item:nth-child(2):after {
    background: #43A486;
  }
  .support__item:nth-child(3):after {
    background: #00744B;
  }
  .support__item:nth-child(4):before {
    background: #50A5D5;
  }
  .support__item:nth-child(5):before {
    background: #02759C;
  }
  .support__item:before,
  .support__item:after {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
  }
  .support__item:before {
    right: 100%;
  }
  .support__item:after {
    left: 100%;
  }

  .support__item {}
  .support__item h3 {
    font-size: 2.2rem;
    margin-bottom: 15px;
  }
  .support__item h3 span {
    font-size: 1.8rem;
    padding-top: 4px;
  }
  .support__item p {
    font-size: 1.8rem;
    line-height: 1.25;
    margin-bottom: 5px;
  }
  .support__item strong {
    font-size: 4rem;
  }

}

@media screen and (min-width: 768px) {
  
  .support__wrap {
    padding-top: 72px;
  }
  .support__fx {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .support__fx .support__item {
    position: relative;
    width: 100%;
    padding-block: 54px 42px;
  }
  .support__fx .support__item:not(:first-child) {
    width: 50%;
  }
  .support__item:before,
  .support__item:after {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
  }
  .support__item:before {
    right: 100%;
  }
  .support__item:after {
    left: 100%;
  }
  .support__item:nth-child(1) {
    order: 1;
    padding-block: 60px 44px;
  }
  .support__item:nth-child(1) p {
    margin-bottom: 25px;
  }
  .support__item:nth-child(2) {order: 2;}
  .support__item:nth-child(3) {order: 4;}
  .support__item:nth-child(4) {order: 3;}
  .support__item:nth-child(5) {order: 5;}
  .support__item {}
  .support__item h3 {
    font-size: min(2.083vw, 4rem);
    margin-bottom: 32px;
  }
  .support__item h3 span {
    font-size: 1.8rem;
    padding-top: 6px;
  }
  .support__item p {
    font-size: min(1.642vw, 2rem);
    line-height: 1.25;
    margin-bottom: 5px;
    padding-inline: 2em;
  }
  .support__item strong {
    font-size: min(3.76vw,5.3rem);
  }

}



/* -----------------------------------------------
faq__wrap
----------------------------------------------- */
.faq__wrap {
  border-bottom-color: #B5AAAA;
  border-bottom-style: solid;
}

@media screen and (max-width: 767px) {

  .faq__wrap {
    padding-block: 32px 50px;
    border-bottom-width: 2px;
  }

}

@media screen and (min-width: 768px) {

  .faq__wrap {
    padding-block: 92px 160px;
    border-bottom-width: 3px;
  }

}




/* -----------------------------------------------
news__wrap
----------------------------------------------- */
.news__wrap {
  background: #FAF9F7;
  border-bottom-color: #B5AAAA;
  border-bottom-style: solid;
}
.news__list__wrap .news__list {
  margin-inline: auto;
}
.news__list a {
  color: #000;
  display: block;
  word-break: break-all;
}
.news__list a div .news__cat {
  background: #E3E3E3;
  text-align: center;
  display: inline-block;
}


.news__wrap .all__link a {
  color: #000;
  position: relative;
  font-weight: bold;
}
.news__wrap .all__link a:after {
  content: "";
  aspect-ratio: 1 / 1;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='42' height='42'><path d='M20.999,0c11.598,0,21,9.401,21.001,20.999,0,11.598-9.401,21-20.999,21.001C9.403,42.001,0,32.599,0,21.001,0,21,0,21,0,20.999-.002,9.403,9.397.002,20.993,0c.002,0,.004,0,.006,0ZM11.177,24.722h9.822v6.003c-.007.559.44,1.017.998,1.025.277.004.544-.107.738-.305l9.675-9.725c.395-.395.396-1.035,0-1.431,0,0,0,0,0,0l-9.679-9.738c-.39-.4-1.03-.408-1.431-.018-.199.194-.309.46-.305.738v6.003h-9.819c-.557.004-1.008.455-1.012,1.012v5.427c.004.557.455,1.008,1.012,1.012Z' fill='%23febf00'/></svg>");
  display: inline-block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {

  .news__wrap {
    border-bottom-width: 2px;
    padding-block: 30px 34px;
  }
  .news__list__wrap {
    padding-top: 20px;
  }
  .news__list li {
    margin-bottom: 35px;
  }
  .news__list a {
    font-size: 1.2rem;
  }
  .news__list a div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .news__list a div * {
    line-height: 1.538;
    display: -webkit-flex;
  }
  .news__list time {
    width: 48%;
    line-height: 3em !important;
  }
  .news__list .news__cat {
    width: 48%;
    line-height: 3em;
    height: 3em;
  }
  .news__list p {
    width: 100%;
    margin-top: 4px;
  }
  .news__wrap .all__link {
    text-align: right;
  }
  .news__wrap .all__link a {
    font-size: 1.3rem;
    padding-right: 30px;
  }
  .news__wrap .all__link a:after {
    width: 20px;
    height: auto;
  }

}

@media screen and (min-width: 768px) {

  .news__wrap {
    border-bottom-width: 3px;
    padding-block: 82px 100px;
  }
  .news__list__wrap {
    padding-top: 56px;
  }
  .news__list__wrap .news__list {
    max-width: 1314px;
    margin-bottom: 78px;
  }
  .news__list a {
    font-size: min(1.354vw, 2.6rem);
    padding-block: 20px;
  }
  .news__list a div {
  	display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .news__list a div * {
    line-height: 1.538;
    display: -webkit-flex;
    padding-block: 15px;
  }
  .news__list time {
    width: 17.35%;
    margin-right: 2.28%;
  }
  .news__list .news__cat {
    width: 23.74%;
  }
  .news__list p {
    width: 58.91%;
    padding-left: 5%;
    /* line-height:  */
  }

  .news__wrap .all__link {
    text-align: right;
  }
  .news__wrap .all__link a {
    font-size: min(1.563vw, 3rem);
    padding-right: 50px;
  }
  .news__wrap .all__link a:after {
    width: 42px;
    height: auto;
  }

}




/* -----------------------------------------------
download__wrap
----------------------------------------------- */
.download__wrap {}
.download__fx div strong {}
.download__wrap .arrow__link {
  text-align: center;
}
.download__wrap .arrow__link a {
  background: #FF4E00;
  border-radius: 50vh;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  position: relative;
}
.download__wrap .arrow__link a:after {
  content: "";
  aspect-ratio: 50 / 40;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="50" height="40" viewBox="0 0 50 40"><path id="Arrow_Right_Big_White" d="M33.48.884l-2.178,2.811s9.129,10.12,13.042,14.056c-13.729-.157-44.344,0-44.344,0v3.374s30.625-.123,44.344,0c-3.908,4.498-13.042,14.619-13.042,14.619l2.174,3.374,16.524-19.679L33.48.884Z" fill="%23ffffff"/></svg>');
  display: block;
  top: 50%;
  position: absolute;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  height: auto;
}

@media screen and (max-width: 767px) {

  .download__wrap {
    padding-block: 36px 30px;
  }
  .download__wrap .head__wrap h2 em {
    font-size: 2rem;
    line-height: 1.25;
    background: linear-gradient(transparent 20% 20%, #FEBF00 20%);
    padding-inline: 1.8em;
    padding-bottom: 5px;
  }
  .download__fx > picture {
    width: 69%;
    margin-inline: auto;
  }
  .download__fx div {
    text-align: center;
    margin-bottom: 28px;
  }
  .download__fx div strong {
    font-size: 2.4rem;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .download__fx div picture {
    padding-top: 18px;
  }
  .download__wrap .arrow__link a {
    font-size: 1.4rem;
    width: 100%;
    height: 2.714em;
    line-height: 2.714em;
    letter-spacing: .02em;
    padding-right: 1.5em;
  }
  .download__wrap .arrow__link a:after {
    width: 20px;
    right: 10px;
  }

}

@media screen and (min-width: 768px) {
  
  .download__wrap {
    padding-block: 98px 110px;
  }
  .download__inner {}
  .download__inner .download__fx {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-block: 44px 38px;
  }
  .download__fx > picture {
    width: 36.24%;
    margin-left: 4%;
  }
  .download__fx div {
    margin-right: 3.4%;
    max-width: 758px;
    text-align: center;
    width: 51%;
    margin-bottom: 10px;
  }
  .download__fx div strong {
    font-size: min(2.083vw, 4rem);
    line-height: 1.5;
    letter-spacing: 0;
  }
  .download__fx div picture {
    padding-top: 42px;
  }
  .download__wrap .arrow__link a {
    font-size: min(1.459vw, 2.8rem);
    max-width: 744px;
    width: 80%;
    height: 80px;
    line-height: 80px;
    letter-spacing: .08em;
    padding-right: 1.5em;
  }
  .download__wrap .arrow__link a:after {
    width: 50px;
    right: 20px;
  }

}



/* -----------------------------------------------
kintone__wrap
----------------------------------------------- */
.kintone__wrap {}
.kintone__wrap .kintone__mv {
  position: relative;
}
.kintone__mv picture {}
.kintone__mv picture img {
  width: 100%;
  height: auto;
}
.kintone__mv .kintone__mv__cap {}
.kintone__mv__cap div {
  text-align: center;
}
.kintone__list__wrap {
  margin-inline: auto;
}
.kintone__inner h3 {
  background: #FFD100;
  color: #000;
  text-align: center;
}

.kintone__merit__wrap {}
.merit__head {
  text-align: center;
  position: relative;
  margin-inline: auto;
}
.merit__head:before,
.merit__head:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50%;
}
.merit__head:before {
  right: 109%;
  background-image: url(../images/merit_head_lf.svg); 
}
.merit__head:after {
  left: 109%;
  background-image: url(../images/merit_head_rg.svg); 
}
.merit__head h4 {}
.merit__head strong {
  display: inline-block;
  background: #000;
  color: #FEBF00;
}
.merit__list__wrap {
  margin-inline: auto;
}
.merit__item {
  text-align: center;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .2);
}
.merit__item strong {
  display: block;
  background: linear-gradient(transparent 50%, #FEBF00 50%);
  margin-inline: auto;
}
.merit__item strong span:before {
  content: "";
  display: inline-block;
  background: url(../images/merit_icon.svg) 50% / contain no-repeat;
  width: 1.1em;
  height: 1.1em;
  transform: translateY(.2em);
  margin-right: .4em;
}
.merit__item picture {
  margin-inline: auto;
}
.merit__item p {}

@media screen and (max-width: 767px) {

  .kintone__wrap {
    padding-bottom: 78px;
  }
  .kintone__wrap .kintone__mv {
    margin-bottom: 42px;
  }
  .kintone__mv picture {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 35px;
  }
  .kintone__mv .kintone__mv__cap {
    padding-inline: 30px;
    margin-inline: auto;
    width: 100%;
    height: auto;
    text-align: center;
  }
  .kintone__mv__cap h2 {
    width: 52.478%;
    margin-inline: auto;
    margin-bottom: 29px;
  }
  .kintone__mv__cap strong {
    font-size: 2.2rem;
    line-height: 1.5;
  }

  .kintone__item__fx {
    margin-bottom: 30px;
  }
  .kintone__item__fx .kintone__item__img {
    max-width: 90%;
    margin-bottom: 28px;
  }
  .kintone__item__img picture {
    width: 100%;
  }
  .kintone__item__img picture img {
    margin-inline: auto;
    display: block;
    max-height: 210px;
  }
  .kintone__item__fx .kintone__item__cap {
    text-align: center;
  }

  .kintone__item__cap div {
    margin-inline: 0 auto;
    max-width: 710px;
  }
  .rev .kintone__item__cap div {
    margin-inline: auto 0;
  }

  .kintone__item__cap strong {
    font-size: 2.4rem;
    line-height: 1.166;
  }
  .kintone__item__cap p {
    font-size: 1.8rem;
    line-height: 1.55;
    text-align: left;
    padding-top: 10px;
    padding-inline: 2em;
  }
  .kintone__wrap .kintone__inner {
    margin-bottom: 23px;
  }
  .kintone__inner > h3 {
    font-size: 2.2rem;
    line-height: 1.4;
    padding-block: 32px;
    width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  .merit__head {
    margin-bottom: 18px;
  }
  .merit__head:before,
  .merit__head:after {
    width: 62px;
    height: 313px;
  }
  .merit__head:before {
    right: 87%;
  }
  .merit__head:after {
    left: 87%;
  }
  
  .merit__head h4 {
    font-size: 2rem;
    line-height: 1.3;
    margin-bottom: 7px;
  }
  .merit__head strong {
    font-size: 1.4rem;
    height: 2.42em;
    line-height: 2.42em;
    padding-inline: 1em;
    /* width: 100%; */
  }
  .merit__list__wrap {
    /* max-width: 1064px; */
    margin-inline: auto;
    width: 87.277%;
  }
  .merit__item {
    border-radius: 11px;
    padding-block: 15px 14px;
  }
  .merit__item:not(:last-child) {
    margin-bottom: 25px;
  }
  .merit__item strong {
    font-size: 1.8rem;
    max-width: 64.14%;
    margin-inline: auto;
    margin-bottom: 8px;
  }
  .merit__item picture {
    max-width: 64.14%;
    margin-inline: auto;
    margin-bottom: 7px;
  }
  .merit__item p {
    font-size: 1.2rem;
    line-height: 1.5;
    max-width: 86.30%;
    margin-inline: auto;
    letter-spacing: 0;
  }



}

@media screen and (min-width: 768px) {

  .kintone__wrap {
    padding-bottom: 183px;
  }
  .kintone__wrap .kintone__mv {
    aspect-ratio: 1444 / 643;
  }
  .kintone__mv picture {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
  }
  .kintone__mv picture img {
    width: 100%;
    height: auto;
  }
  .kintone__mv .kintone__mv__cap {
    max-width: 1572px;
    width: calc(1512px + 60px);
    padding-inline: 30px;
    margin-inline: auto;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
  }
  .kintone__mv__cap h2 {
    margin-bottom: 45px;
  }
  .kintone__mv__cap strong {
    font-size: min(2.083vw, 4rem);
    line-height: 1.5;
  }

  .kintone__list__wrap {}
  .kintone__item__fx {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 60px;
  }
  .kintone__item__fx.rev {
    flex-direction: row-reverse;
  }
  .kintone__item__fx .kintone__item__img {
    position: relative;
    max-width: 610px;
    width: 40.344%;
  }
  .kintone__item__img picture {
    width: 100%;
  }
  .kintone__item__img picture img {
    margin-inline: auto;
    display: block;
  }
  .kintone__item__fx .kintone__item__cap {
    max-width: 902px;
    width: 59.656%;
  }

  .kintone__item__cap div {
    margin-inline: 0 auto;
    max-width: 710px;
  }
  .rev .kintone__item__cap div {
    margin-inline: auto 0;
  }

  .kintone__item__cap strong {
    font-size: min(2.2396vw, 4.3rem);
  }
  .kintone__item__cap p {
    font-size: min(1.25vw, 2.4rem);
    line-height: 2.08;
  }
  .kintone__wrap .kintone__inner {
    margin-bottom: 178px;
  }
  .kintone__inner > h3 {
    font-size: min(2.292vw, 4.4rem);
    line-height: 1.4;
    padding-block: 32px;
  }


  .kintone__merit__wrap {}
  .merit__head {
    max-width: 694px;
    margin-bottom: 134px;
  }
  .merit__head:before,
  .merit__head:after {
    width: 200px;
    height: 313px;
  }
  .merit__head:before {
  }
  .merit__head:after {
  }
  
  .merit__head h4 {
    font-size: min(2.917vw, 5.6rem);
    line-height: 1.428;
  }
  .merit__head strong {
    font-size: min(2.083vw, 4rem);
    height: 98px;
    line-height: 98px;
    width: 100%;
  }
  .merit__list__wrap {
    /* max-width: 1064px; */
    margin-inline: 10.41%;
  }
  .merit__item {
    border-radius: 34px;
    padding-block: 46px 70px;
    max-width: 1064px;
    margin-inline: auto;
  }
  .merit__item:not(:last-child) {
    margin-bottom: 162px;
  }
  .merit__item strong {
    font-size: min(2.917vw, 5.6rem);
    max-width: 694px;
    margin-bottom: 34px;
    width: 90%;
  }
  .merit__item picture {
    max-width: 694px;
    margin-bottom: 7px;
    width: 90%;
  }
  .merit__item:nth-child(1) picture {
    max-width: 726px;
  }
  .merit__item:nth-child(1) picture img {
    margin-right: -33px;
  }
  .merit__item p {
    font-size: min(1.25vw, 2.4rem);
    line-height: 2.083;
  }
  
}






/* -----------------------------------------------
banner__wrap
----------------------------------------------- */
.banner__wrap {}
.banner__wrap .banner__list {
  margin-inline: auto;
}
.banner__list li a {
  display: block;
}

@media screen and (max-width: 767px) {

  .banner__wrap {}
  .banner__wrap .banner__list {
    /* max-width: 1066px; */
  }
  .banner__list li {
    margin-bottom: 14px;
  }

}

@media screen and (min-width: 768px) {

  .banner__wrap {}
  .banner__wrap .banner__list {
    max-width: 1066px;
  }
  .banner__list li {
    margin-bottom: 27px;
  }

}


.fixed__btn {
  position: fixed;
  right: 18px;
  bottom: 18px;
  width: 80px;
  height: 80px;
  z-index: 99;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
@media screen and (max-width: 768px) {
  .fixed__btn {
    width: 41px;
    height: 41px;
  }
}






/* FAQ */

.c-accordion__btn, .c-accordion__btn2 {
  position: relative;
  cursor: pointer;
}
.c-accordion__btn:after, .c-accordion__btn2:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23.616' height='13.503'%3E%3Cpath fill='%23fff' d='m11.813 9.433 8.93-8.937a1.681 1.681 0 0 1 2.384 0 1.7 1.7 0 0 1 0 2.391L13.013 13.012a1.685 1.685 0 0 1-2.327.049L.493 2.894A1.688 1.688 0 0 1 2.877.503Z' data-name='Icon ionic-ios-arrow-forward'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .c-accordion__btn:after, .c-accordion__btn2:after {
    right: 11px;
    width: 10px;
    height: 7px;
  }
}
.c-accordion__btn.is-on:after, .c-accordion__btn2.is-on:after {
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
}
.c-accordion__content {
  max-height: 0;
  overflow: hidden;
  -webkit-transition: 0.8s cubic-bezier(0.23, 1, 0.32, 1) max-height;
  transition: 0.8s cubic-bezier(0.23, 1, 0.32, 1) max-height;
  padding-top: 0;
}

.c-tab__item {
  cursor: pointer;
}
.c-tab__content {
  display: none;
}
.c-tab__content--current {
  display: block;
}

.c-pageheader {
  height: 800px;
  padding-bottom: 68px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-size: cover;
  background-position: center;
}



.p-top-faq {
  padding-top: 67px;
  padding-bottom: 115px;
}
@media screen and (max-width: 768px) {
  .p-top-faq {
    padding-top: 19px;
    padding-bottom: 47px;
  }
}
.p-top-faq__tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .p-top-faq__tab {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 14px;
  }
}
.p-top-faq__tabItem {
  cursor: pointer;
  font-size: min(1.9867549669vw, 30px);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  width: 25%;
  color: #B2B2B2;
  border-left: 3px solid #000;
  padding-block: 16px 26px;
}
@media screen and (max-width: 768px) {
  .p-top-faq__tabItem {
    font-size: 11px;
    width: 50%;
    border-left-width: 1px;
    padding-block: 6px 11px;
  }
}
.p-top-faq__tabItem.c-tab__item--current {
  text-decoration: underline;
  color: #000;
}
.p-top-faq__tabItem:last-child {
  border-right: 3px solid #000;
}
@media screen and (max-width: 768px) {
  .p-top-faq__tabItem:last-child {
    border-right-width: 1px;
  }
}
@media screen and (max-width: 768px) {
  .p-top-faq__tabItem:nth-child(2n) {
    border-right: 1px solid #000;
  }
}
.p-top-faq__contentWrap {
  margin-top: 54px;
}
@media screen and (max-width: 768px) {
  .p-top-faq__contentWrap {
    margin-top: 21px;
  }
}
.p-top-faq__accordionBtn:after {
  right: 48px;
  width: 22px;
}
@media screen and (max-width: 768px) {
  .p-top-faq__accordionBtn:after {
    right: 22px;
    width: 10px;
    height: 7px;
  }
}
.p-top-faq__q, .p-top-faq__a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-column-gap: min(5.4966887417vw, 83px);
     -moz-column-gap: min(5.4966887417vw, 83px);
          column-gap: min(5.4966887417vw, 83px);
  font-size: min(1.9867549669vw, 30px);
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.04em;
  padding: 1.0666666667em 1.8333333333em 1.2666666667em;
}
@media screen and (max-width: 768px) {
  .p-top-faq__q, .p-top-faq__a {
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
    font-size: 11px;
    padding: 14px 32px 14px 20px;
  }
}
.p-top-faq__q:before, .p-top-faq__a:before {
  content: "";
  font-family: "Roboto", sans-serif;
  font-size: 1.4666666667em;
  line-height: 1;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .p-top-faq__q:before, .p-top-faq__a:before {
    font-size: 15px;
  }
}
.p-top-faq__q {
  background-color: #000;
  border: 1px solid #707070;
  color: #fff;
}
.p-top-faq__q:before {
  content: "Q";
}
.p-top-faq__a:before {
  content: "A";
}
.p-top-faq__a p {
  font-size: min(1.9867549669vw, 30px);
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.04em;
}


