@charset "UTF-8";
/* CSS Document */
/*スマホ用スタイル*/
@media screen and (max-width: 767px) {

/*セクション間余白----------------------------------------------------------- */
section {
  padding: 45px 0;
}
footer {
  padding: 15px 0;
}

/*はみ出し画像中央----------------------------------------------------------- */
.wic1 img {
  width: 100%;
}
.wic1 {
  margin-left: -15px;
  margin-right: -15px;
}
.wic2 img {
  width: 100%;
}
.wic2 {
  margin-left: -15px;
  margin-right: -15px;
}
.wic3 img {
  width: 100%;
}
.wic3 {
  margin-left: -15px;
  margin-right: -15px;
}

/* other */
.s_tac {text-align: center;}
.btn a {
  width: 100%;
}
.btn_02 a {
  font-size: 14px;
  padding-block: 10px;
  width: 80%;
}
.btn_02 a::after {
  right: 15px;
}
.mv_btn a::before,
.cta_btn a::before {
  background: url(../img/sp_fv_balloon.png) no-repeat center center / contain;
  width: 60%;
}
/*Header----------------------------------------------------------- */
header {
  height: 60px;
  z-index: 999;
}
.header_logo {
  height: 80%;
}
.header_logo img {
  height: 100%;
}
.header_menu-wrap {
  display: none;
  position: absolute;
  top: 60px;
  left: 0;
  height: 100vh;
  width: 100%;
  z-index: 999;
  background-color: var(--back_03);
  text-align: center;
  padding: 30px;

}
.header_menu-wrap li {
  display: flex;
  justify-content: center;
  margin: 10px 0;
}
.header_menu-wrap li:not(:last-child) a {
  padding: 10px 0;
  font-size: 12px;
}
.header_btn a {
  margin-left: 0;
}
.header_drawers {
  position: relative;
  width: 30px;
  height: 34px;
  margin-top: 6px;
}
.header_drawers span {
  position: absolute;
  display: block;
  width: 100%;
  transition: all .3s ease 0s;
}
.header_drawers span:not(:last-child) {
  background-color: var(--color_bk);
  height: 3px;
}
.header_drawers span:nth-child(1) {
  top: 0;
}
.header_drawers span:nth-child(2) {
  top: 7px;
}
.header_drawers span:nth-child(3) {
  top: 14px;
}
.header_drawers span:last-child {
  bottom: 0;
  font-size: 8px;
}
.header_drawers span:nth-child(1).is-open {
  top: 7px;
  transform: rotate(35deg);
}
.header_drawers span:nth-child(2).is-open {
  display: none;
}
.header_drawers span:nth-child(3).is-open {
  top: 7px;
  transform: rotate(-35deg);
}
.header_drawers span:last-child.is-open {
  bottom: 0;
  font-size: 8px;
}
/*MV----------------------------------------------------------- */
.mv {
  background: url(../img/sp_fv_bg.png) no-repeat center center / cover;
}
.mv_btn {
  margin-top: 35px;
}
.mv_btn a {
  width: 100%;
  padding-block: 20px;
  font-size: 16px;
}
.mv_btn a::after {
  right: 20px;
}
.mv .indent {
  text-indent: -2.5em;
  padding-left: 2.5em;
}
.mv .shadow {
  text-shadow: none;
}
/*CTA----------------------------------------------------------- */
.cta {
  background: url(../img/sp_cta_bg.png) no-repeat top center / cover;
  padding-block: 30px;
}
.cta_inner::after {
  content: none;
}
.cta_contents {
  width: 100%;
}
.cta_btn a {
  width: 100%;
  padding-block: 10px;
}
.cta_btn a::before {
  background: url(../img/sp_cta_img01.png) no-repeat center center / contain;
  width: 100%;
}
/*sec01----------------------------------------------------------- */
.sec01 {
  margin-top: 0;
  background: url(../img/sp_sec01_bg.png) no-repeat center center / cover;
}
/*sec02----------------------------------------------------------- */
/* box 01 */
.sec02_box01 {
  padding: 15px;
  padding-bottom: 30px;
}
.sec02_box01::after {
  content: none;
}
.sec02_box01-contents {
  width: 100%;
}
.sec02_box01-contents > div {
  font-size: 16px;
  gap: 10px;
}
.sec02_box01-contents img {
  width: 20px;
  margin-top: 2px;
}
.sec02_box01-contents p {
  width: calc(100% - 30px);
}
.sec02_box01-img {
  width: 70%;
}

/* box 02 */
.sec02_box02 {
  padding: 15px;
}
.sec02_box02-arw {
  position: relative;
  margin-top: -30px;
}
.sec02_box02 .white_box_s {
  display: flex;
  gap: 5px;
}
.sec02_box02 .white_box_s img {
  width: 35%;
  height: 100%;
}
.sec02_box02_txt {
  width: 65%;
}
.sec02_box02-txt p {
  padding-inline: 5px;
}
.sec02_box02_txt p:first-child {
  text-align: left;
}
.sec02_box02_txt p:nth-child(2) {
  font-size: 12px;
}

/* box 03 */
.sec02_box03-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.sec02_box03-wrap img {
  width: 30%;
}
.sec02_box03-wrap p {
  width: 70%;
  text-align: left;
}
.sec02_box-btn-tp {
  font-size: 12px;
}
.sec02_box03 .btn_02 a {
  width: 85%;
}
/*sec03----------------------------------------------------------- */
.sec03_txt {
  height: 50px;
  font-size: 10px;
}
.sec03 h3 {
  display: inline-block;
  padding: 0 5px;
}
.sec03 h3 span {
  font-size: 20px;
}
.sec03 .fx-row {
  margin-top: 0;
  margin-left: -8px;
  margin-right: -8px;
}
.sec03 [class*="fx-col"] {
    margin-top: 0;
    padding-left: 8px;
    padding-right: 8px;
}
/*sec04----------------------------------------------------------- */
.sec04_item {
  padding: 15px;
}
.sec04_item:nth-child(2) .sec04_item-wrap {
  flex-direction: column-reverse;
}
.sec04_item:nth-child(1)::after,
.sec04_item:nth-child(3)::after {
  right: 0;
  transform: translateX(0);
}
.sec04_item:nth-child(1)::after {
  background: url(../img/sp_sec04_bg01.png) no-repeat center center / cover;
}
.sec04_item:nth-child(2)::after {
  background: url(../img/sp_sec04_bg02.png) no-repeat center center / cover;
  left: 0;
  transform: translateX(0);
}
.sec04_item:nth-child(3)::after {
  background: url(../img/sp_sec04_bg03.png) no-repeat center center / cover;
}
.sec04_item-wrap {
  flex-direction: column-reverse;
  gap: 0;
}
.sec04_item-head p {
  padding-inline: 5px;
}
.sec04_item-contents,
.sec04_item-img,
.sec04_box-contents,
.sec04_box-img {
  width: 100%;
}
.sec04_box {
  flex-direction: column-reverse;
}
.sec04_box-contents > p {
  text-align: center;
}
.sec04_box-txt {
  gap: 0;
}
.sec04_box-txt-sr {
  flex-direction: column;
}
.sec04_box-txt p:first-child {
  width: 30%;
}
.sec04_box-txt p:last-child {
  width: 70%;
}
.sec04_box-txt-sr p:first-child,
.sec04_box-txt-sr p:last-child {
  width: 100%;
}

/*sec05----------------------------------------------------------- */
.sec05 .white_box_l {
  padding: 15px;
}
.sec05_box-head-txt p {
  font-size: 12px;
}
.sec05_box-head-txt h3 {
  font-size: 20px;
}
.sec05_box-contents p:first-child {
  font-size: 12px;
}
.sec05_box-contents p:last-child {
  font-size: 8px;
}
.sec05_img-wrap {
  gap: 5px;
}
.sec05_img p {
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  line-height: 1.2;
}
.sec05_fz {
  font-size: 8px;
}
/*sec06----------------------------------------------------------- */
.sec06 .fx-row {
  margin-top: 0;
  margin-left: -8px;
  margin-right: -8px;
}
.sec06 [class*="fx-col"] {
    margin-top: 0;
    padding-left: 8px;
    padding-right: 8px;
}


/*sec07----------------------------------------------------------- */
.sec07 .white_box_l {
  padding: 15px;
}
.sec07_item-num {
  width: 30px;
  height: 30px;
  border-radius: 25px;
}
.sec07_item-contents {
  width: calc(100% - 45px);
}
/*sec08----------------------------------------------------------- */
.sec08_items {
  flex-direction: column;
}
.sec08_item {
  width: 100%;
}
.sec08_item-arw {
  position: relative;
  display: inline-block;
  transform: translate(-50%, 0) rotate(90deg);
  left: 50%;
  width: fit-content;
  padding-left: 15px;
}
/*sec09----------------------------------------------------------- */
.sec09_box-q-icon,
.sec09_box-a-icon {
  width: 30px;
  height: 30px;
  border-radius: 25px;
}
.sec09_box-wrap > p {
  width: calc(100% - 45px);
}
.sec09_fz {
  font-size: 12px;
}
/*sec10----------------------------------------------------------- */

/*Footer----------------------------------------------------------- */
footer ul {
  flex-wrap: wrap;
  justify-content: center;
}
footer a {
  padding: 5px;
}
}/*スマホ用スタイルend*/
