@charset "UTF-8";
/* CSS Document */
/* -----------------------------------
 
 (c) 2023 melong works
  info@melong-works.com
  「2307_grand_golf_base」230717

----------------------------------- */

/*****************************************************

	システム

*****************************************************/
html {
  scroll-behavior: smooth;
}
body {
  color: #666666;
  /*游明朝体　基本 約物半角あり*/
  font-family: YakuHanMP, "Yu Mincho Light", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", "MS Mincho", "Noto Serif JP", serif;
  font-weight: 500;/*Medium*/
}

.no_yakuhan_mincho {
  font-family: "Yu Mincho Light", "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "MS PMincho", "MS Mincho", "Noto Serif JP", serif;
}

/*文章の両橋揃え*/
.txt_justify_on {
  word-break: break-all;
  text-align: justify;
  text-justify: inter-ideograph;
}
/*文字カーニング*/
.txt_kerning {
  font-feature-settings: "palt";
}

.hide { display: none !important; }
  @media all and (min-width: 769px) { .sp { display: none !important; } }/*sp時に表示時*/
  @media all and (max-width: 768px) { .pc { display: none !important; } }/*pc時に表示時*/

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {

}/*スマホ 表示 end*/

/* =========================================================

　リンク関係

========================================================= */
a {
  color: inherit;
  text-decoration: none;
  transition: 0.3s;
}
a img {
  transition: 0.3s;
}
/* リンクのホバー動作をPCのみに
--------------------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
  a:hover {
    color: inherit;
    text-decoration: none;
    opacity: 0.6;
  }
  a:hover img {
    opacity: 0.8;
  }

}/* end */

/* =========================================================

　SVG 素材 格納場所　設定

========================================================= */

/*素材格納場所を非表示に*/
.svg_parts_box {
  display: none;
}

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　サイト　枠　設定
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* PC 表示
--------------------------------------------------------- */
.base {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.base img {
  width: 100%;
  height: auto;
}

.main_contents {
  background-color: #384b5e;
  width: 100%;
}

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　共通　パーツ
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　トップに戻るボタン ver02

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.page-top {
  display: none;
  position: fixed;
  right: 30px;
  bottom: 40px;
  z-index: 9999;
}
.move-page-top {
  background: #384b5e;
  border-radius: 9999px;
  width: 65px;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s;
  cursor: pointer;
}
.move-page-top .svg_wrap {
  width: 30px;
  position: relative;
  aspect-ratio: 33 / 18.621;
}
.move-page-top svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.move-page-top:hover {
  opacity: 0.7;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .page-top {
    right: 10px;
    bottom: 20px;
  }
  .move-page-top {
    width: 44px;
    height: 44px;
  }
  .move-page-top .svg_wrap {
    width: 18px;
  }
}/*スマホ 表示 end*/

/* =========================================================

　リスト　リストマーク１文字用 テキスト 

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.list_mark_ul {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
/* ----- リスト　リストマーク１文字用 ----- */
.list_mark_ul.mark li {
  display: flex;
  align-items: baseline;
}
.list_mark_ul.mark li::before {
	content: attr(data-li_mark);
	color: inherit;
  font-size: 0.9em;
  font-feature-settings: normal;
  text-align: center;
  margin: 0 0.3em 0 0;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {

}/*スマホ 表示 end*/

/* =========================================================

　リスト　脚注マーク用 2文字　※1 など

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.list_mark_ul.numbered li {
  display: flex;
  justify-content: flex-start;
  align-items: baseline;
}
.list_mark_ul.numbered li::before {
	content: attr(data-li_mark);
  display: inline-block;
	color: inherit;
  letter-spacing: 0em;
  text-align: left;
  margin: 0 0.5em 0 0;
}
.list_mark_ul.numbered li p {
  flex: 1;
}
/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {

}/*スマホ 表示 end*/

/* =========================================================

　リスト以外　マーク１文字用 テキスト 

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.marked_txt {
  display: flex;
  align-items: baseline;
}
.marked_txt::before {
	content: attr(data-li_mark);
	color: inherit;
  font-feature-settings: normal;
  text-align: center;
  margin: 0 0.2em 0 0;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　ヘッダー PCとSPともにハンバーガーメニュー
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　メニュー　制御部分

========================================================= */
/* ----- toggle_btn ----- */
#nav_toggle {
  background-color: #384b5e;
  mix-blend-mode: multiply;
  border-radius: 4.16px;
  width: 53px;
  height: 53px;
  display: block;
  position: fixed;
  top: 2vw;
  right: 1.5vw;
  transition: all .5s;
  cursor: pointer;
  z-index: 9999;
}
#nav_toggle span {
  background-color: #fff;
  border-radius: 4px;
  width: 35px;
  height: 2px;
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: all .5s;
}
#nav_toggle span:nth-child(1) {
  top: 13px;
}
#nav_toggle span:nth-child(2) {
  top: 26px;
}
#nav_toggle span:nth-child(3) {
  bottom: 13px;
}
.open_navi #nav_toggle {
  mix-blend-mode: normal;
}
.open_navi #nav_toggle span {
  background-color: #fff;
  left: 17%;
  transform: translateX(-50%);
}
.open_navi #nav_toggle span:nth-child(1) {
  transform: translateY(13px) rotate(-315deg);
}
.open_navi #nav_toggle span:nth-child(2) {
  left: 50%;
  opacity: 0;
}
.open_navi #nav_toggle span:nth-child(3) {
  transform: translateY(-13px) rotate(315deg);
}
/* スマホ 表示
--------------------------------------------------------- */
#header_origin.sp_view_navi #nav_toggle {
  top: 4vw;
  right: 3vw;
}

/* ----- mask ----- */
#mask {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  animation: show 1s linear 0s;
  animation-direction: reverse;
}
.open_navi #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  z-index: 99;
  animation: show 0.5s linear 0s forwards;
}

@keyframes show {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.8;
  }
}

/* ----- 背景スクロール禁止 ----- */
body.is_fixed {
  width: 100%;
  height: 100%;
  overflow: hidden;
}

/* =========================================================

　メインメニュー 設定

========================================================= */
/* 共通　表示 スマホファースト
--------------------------------------------------------- */
#header_origin {
  width: 100%;
  display: block;
  position: fixed;
  top: 0;
  right: -100%;/*ちらつき防止*/
  z-index: 9999;
}

/*メニュー部分 閉じてる時*/
#header_origin #g_nav_set #g_nav_wrap {
  background: #384b5e;
  max-width: 500px;
  width: 100%;
  height: 100%;
  display: block;
  position: fixed;
  top: 0;
  right: -100%;
  padding: 22% 4%;
  transition: 0.2s;
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 999;
}
/*メニュー部分 開いた時*/
#header_origin #g_nav_set.open_navi #g_nav_wrap {
  right: 0;
}

#header_origin .menu_logo {
  width: 87px;
  margin: 0 auto;
}
#header_origin .menu_logo a {
  width: 100%;
  height: 100%;
  display: block;
}

#header_origin .g_navi {
  width: 100%;
  margin-top: 14vw;
}
#header_origin .g_navi li + li {
  margin-top: 12vw;
}
#header_origin .g_navi .menu_01_concept {
  width: 137px;
  margin-left: auto;
  margin-right: auto;
}
#header_origin .g_navi .menu_02_feature {
  width: 127px;
  margin-left: auto;
  margin-right: auto;
}
#header_origin .g_navi .menu_03_flow {
  width: 78px;
  margin-left: auto;
  margin-right: auto;
}
#header_origin .g_navi .menu_04_plan {
  width: 71px;
  margin-left: auto;
  margin-right: auto;
}
#header_origin .g_navi .menu_05_access {
  width: 105px;
  margin-left: auto;
  margin-right: auto;
}
#header_origin .g_navi .menu_06_contact {
  width: 137px;
  margin-left: auto;
  margin-right: auto;
}

#header_origin .menu_btn_wrap {
  width: 100%;
  margin-top: 14vw;
}
#header_origin .menu_btn {
  max-width: 215px;
  width: 100%;
  aspect-ratio: 216 / 76;
  display: block;
  position: relative;
  margin: 0 auto;
}
#header_origin .menu_btn + .menu_btn {
  margin-top: 12vw;
}
#header_origin .menu_btn a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#header_origin .menu_btn .btn_txt {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
  font-weight: 600;
  transform: translateX(-5%);
  z-index: 2;
}
#header_origin .menu_btn .btn_svg {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
#header_origin .menu_btn .btn_bg {
  fill: #8e854c;
}

/* PC 表示
--------------------------------------------------------- */
/*メニュー部分 閉じてる時*/
#header_origin.pc_view_navi #g_nav_set #g_nav_wrap {
  padding: 6% 2%;
}
#header_origin.pc_view_navi .menu_logo {
  width: 116px;
}
#header_origin.pc_view_navi .g_navi {
  width: 100%;
  margin-top: 15%;
}

#header_origin.pc_view_navi .g_navi li + li {
  margin-top: 10%;
}

#header_origin.pc_view_navi .menu_btn_wrap {
  margin-top: 15%;
}
#header_origin.pc_view_navi .menu_btn + .menu_btn {
  margin-top: 10%;
}

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　ファーストビュー sec_fv
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* PC 表示
--------------------------------------------------------- */
.sec_fv {
  width: 100%;
  aspect-ratio: 1920 / 800;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin: 0;
}
.sec_fv .fv_img {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.fv_contents_box {
  width: 52.0834%;
  position: relative;
  padding: 2vw 0;
  transform: translateY(4.8vw);
  transition: 0.3s;
  z-index: 2;
}

.sec_fv .fv_logo {
  max-width: 154px;
  width: 30%;
  margin: 0 auto;
}

.sec_fv .fv_catch {
  width: 100%;
  color: #FFFFFF;
  font-size: 24px;
  font-size: clamp(0.938rem, 0.6rem + 1.44vw, 1.5rem);
  font-weight: 600;
  letter-spacing: 0.01em;
  text-align: center;
  margin-top: 3.1vw;
}

.fv_btn_wrap {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2.3vw;
}

.fv_btn {
  max-width: 190px;
  width: 100%;
  aspect-ratio: 216 / 76;
  position: relative;
}

.fv_btn + .fv_btn {
  margin-left: 1.1vw;
}
.fv_btn a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fv_btn .btn_txt {
  color: #FFFFFF;
  font-size: 18px;
  font-size: clamp(0.813rem, 0.625rem + 0.8vw, 1.125rem);
  font-weight: 600;
  transform: translateX(-5%);
  z-index: 2;
}

.fv_btn .btn_svg {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
.fv_btn .btn_bg {
  fill: #8e854c;
}

/* PCとスマホの間 表示
--------------------------------------------------------- */
@media all and (max-width: 1240px) {
  .fv_contents_box {
      transform: translateY(0);
  }

}/*スマホ 表示 end*/

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
.sec_fv {
        aspect-ratio: 750 / 1200;
}

.fv_contents_box {
        width: 100%;
        padding: 0 0;
        transform: translateY(18.5vw);
}

.sec_fv .fv_logo {
        max-width: 100%;
        width: 26.9334%;
}

.sec_fv .fv_catch {
        font-size: 15px;
        font-size: clamp(0.938rem, 0.6rem + 1.44vw, 1.5rem);
        margin-top: 11vw;
}

.fv_btn_wrap {
        width: 80%;
        margin: 12.3vw auto 0;
}

.fv_btn {
        max-width: 100%;
        width: 47.334%;
}

.fv_btn + .fv_btn {
        margin-left: 5vw;
}

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec 01 CONCEPT  sec_concept
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_concept {
  background-image: url("../images/jpg/sec_concept_bg01_pc.jpg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_concept .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 8.9vw 0 4vw;
}

.sec_concept .sec_head {
  max-width: 992px;
  width: 51.667%;
  margin: 0 auto;
}

.sec_concept .sec_catch {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.813rem, 0.706rem + 0.45vw, 1.25rem);
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.06em;
  text-align: center;
  margin: 3.1vw auto 0;
}

.sec_concept .contents_img {
  max-width: 1200px;
  width: calc(100% - 6%);
  margin: 5.4vw auto 0;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_concept {
          background-image: url("../images/jpg/sec_concept_bg01_sp_2x.jpg");
          background-repeat: no-repeat;
          background-size: contain;
          background-position: top center;
  }
  .sec_concept .sec_wrap {
          padding: 11vw 0 0;
  }

  .sec_concept .sec_head {
          max-width: 100%;
          width: 74.934%;
  }

  .sec_concept .sec_catch {
          font-size: 13px;
          font-size: clamp(0.813rem, 0.706rem + 0.45vw, 1.25rem);
          line-height: 1.8;
          letter-spacing: 0.005em;
          margin: 8.1vw auto 0;
  }

  .sec_concept .contents_img {
          max-width: 100%;
          width: 100%;
          margin: 13.6vw auto 0;
          padding: 0 5.335%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分 スライダー設定

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.concept_slide_wrap {
  max-width: 1200px;
  width: calc(100% - 6%);
  position: relative;
  margin: 6.4vw auto 0;
}

.concept_slide.swiper {
  width: 100%;
  padding-bottom: 50px;/*ページネーション分開ける*/
}

.concept_slide .swiper-slide {
  width: 100%;
  margin: 0;
  padding: 0;
}
.concept_slide .swiper-slide img {
  width: 100%;
  height: auto;
}

.concept_slide .swiper-pagination {
  bottom: 20px !important;
}

/* ページネーション（ドット）カスタマイズ */
.concept_slide .swiper-pagination .swiper-pagination-bullet {
  /* 初期スタイルをリセット */
  background-color: transparent; /* 背景色リセット */
  border-radius: unset; /* 各丸リセット */
  opacity: 1; /* 透過をリセット */
  /*カスタム設定*/
  background-image: url("../images/swiper/slide_dot.svg?ver2307");
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
  margin: 0 6px!important;
}
.concept_slide .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-image: url("../images/swiper/slide_dot_active.svg?ver2307");
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 10px;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .concept_slide_wrap {
          max-width: 100%;
          width: 100%;
          margin: 11.4vw auto 0;
          padding: 0 5.335%;
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec 02 FEATURE  sec_feature
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_feature {
  background-image: url("../images/jpg/sec_feature_bg01_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_feature .sec_wrap {
  width: 100%;
  margin: 4.9vw auto 0;
  padding: 10.95vw 0 11.9vw;
}

.sec_feature .sec_head {
  max-width: 980px;
  width: 51.0417%;
  margin: 0 auto;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_feature {
          background-image: url("../images/jpg/sec_feature_bg01_sp_2x.jpg");
          background-repeat: no-repeat;
          background-size: cover;
  }
  .sec_feature .sec_wrap {
          margin: 9.5vw auto 0;
          padding: 15.5vw 0 20.9vw;
  }

  .sec_feature .sec_head {
          max-width: 100%;
          width: 74.1334%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_feature .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_feature .contetnts_unit {
  max-width: 1200px;
  width: calc(100% - 6%);
  display: flex;
  justify-content: space-between;
  margin: 7.65vw auto 0;
}

.sec_feature .feature_list {
  flex-grow: 1;
  flex-shrink: 0;
}
.sec_feature .feature_list ul {
  width: 100%;
}
.sec_feature .feature_list li {
  display: flex;
  align-items: center;
  margin-left: 0.95em;
}

.sec_feature .feature_list li + li {
  margin-top: 14.5%;
}

.sec_feature .feature_list .mark_svg {
  width: 10px;
  flex-shrink: 0;
}
.sec_feature .feature_list .mark_img {
  fill: #596582;
}
.sec_feature .feature_list li p {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  margin-left: 0.6em;
}

.sec_feature .feature_img_list {
  max-width: 922px;
  width: 80%;
  flex-shrink: 1;
  margin-left: 5%;
}

.sec_feature .feature_img_list ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.sec_feature .feature_img_list ul li {
  max-width: 216px;
  width: 100%;
}
.sec_feature .feature_img_list ul li + li {
  margin-left: 1.5%;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_feature .contetnts_unit {
          max-width: 100%;
          width: 100%;
          display: block;
          margin: 11.65vw auto 0;
          padding: 0 5.335%;
  }

  .sec_feature .feature_list {
          width: auto;
          display: inline-block;
          position: relative;
          left: 47%;
          transform: translateX(-50%);
  }
  .sec_feature .feature_list ul {
          width: auto;
  }

  .sec_feature .feature_list li + li {
          margin-top: 16.0%;
  }

  .sec_feature .feature_list .mark_svg {
          width: 7px;
  }
  .sec_feature .feature_list li p {
          font-size: 15px;
          font-size: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
  }

  .sec_feature .feature_img_list {
          max-width: 100%;
          width: 100%;
          margin-left: 0;
          margin-top: 8.4vw;
  }

  .sec_feature .feature_img_list ul li {
          max-width: 100%;
          width: 42.1334%;
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec 03 FLOW  sec_flow
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_flow {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_flow .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 10.55vw 0 17.4vw;
}

.sec_flow .sec_head {
  max-width: 589px;
  width: 30.6771%;
  margin: 0 auto;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_flow .sec_wrap {
          padding: 15.5vw 0 7.4vw;
  }

  .sec_flow .sec_head {
          max-width: 100%;
          width: 44.5334%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_flow .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_flow .usage_flow {
  max-width: 1200px;
  width: calc(100% - 4%);
  margin: 7.6vw auto 0;
}
.sec_flow .usage_flow ul {
  display: flex;
  justify-content: center;
}

.sec_flow .usage_flow_unit {
  max-width: 254px;
  width: 100%;
  position: relative;
}

.sec_flow .usage_flow_unit + .usage_flow_unit {
  margin-left: 1.2%;
}

.sec_flow .usage_flow_unit .unit_contents {
  width: 100%;
  aspect-ratio: 254 / 170;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2% 0 4%;
}
.sec_flow .usage_flow_unit .usage_flow_img {
  max-width: 107px;
  width: 45%;
}
.sec_flow .usage_flow_unit .usage_flow_txt {
  color: #FFFFFF;
  font-size: 24px;
  font-size: clamp(0.875rem, 0.723rem + 0.65vw, 1.5rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  margin-top: auto;
}

.sec_flow .usage_flow_unit .unit_svg01 {
  aspect-ratio: 254 / 170;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(10%);
}
.sec_flow .usage_flow_unit .unit_bg01 {
  fill: #fff;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

/*ver04調整*/
.sec_flow .usage_flow_unit.ver04 .unit_svg02 {
  max-width: 196px;
  width: 100%;
  aspect-ratio: 196 / 170;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sec_flow .usage_flow_unit.ver04 .unit_bg02 {
  fill: none;
  stroke: #fff;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_flow .usage_flow {
          max-width: 100%;
          margin: 15.0vw auto 0;
  }
  .sec_flow .usage_flow ul {
          display: block;
  }

  .sec_flow .usage_flow_unit {
          max-width: 100%;
          width: 53.334%;
          margin: 0 auto;
  }

  .sec_flow .usage_flow_unit + .usage_flow_unit {
          margin: 2.3% auto 0;
  }

  .sec_flow .usage_flow_unit .unit_contents {
          aspect-ratio: 192 / 133;
          padding: 6% 0 19%;
  }
  .sec_flow .usage_flow_unit .usage_flow_img {
          max-width: 100%;
          width: 31.25%;
          transform: translateX(5.0%);
  }
  .sec_flow .usage_flow_unit .usage_flow_txt {
          font-size: 14px;
          font-size: clamp(0.875rem, 0.723rem + 0.65vw, 1.5rem);
  }

  .sec_flow .usage_flow_unit .unit_svg01 {
          aspect-ratio: 192 / 133;
          transform: translateX(0);
  }

  /*ver04調整*/
  .sec_flow .usage_flow_unit.ver04 .unit_svg02 {
          max-width: 100%;
          aspect-ratio: 192 / 103;
          top: 0;
          bottom: auto;
          left: 0;
          transform: translateX(0);
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec 04 PLAN  sec_plan
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_plan {
  background-image: url("../images/jpg/sec_plan_bg01_pc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom right;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_plan .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 12.6vw 0 10.75vw;
}

.sec_plan .sec_head {
  max-width: 560px;
  width: 29.1667%;
  margin: 0 auto;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_plan {
          background-image: url("../images/jpg/sec_plan_bg01_sp_2x.jpg");
          background-repeat: no-repeat;
          background-size: cover;
          background-position: bottom right;
  }
  .sec_plan .sec_wrap {
          padding: 12.6vw 0 18.75vw;
  }

  .sec_plan .sec_head {
          max-width: 100%;
          width: 42.4%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_plan .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_plan .contents_unit {
  max-width: 980px;
  width: calc(100% - 4%);
  display: flex;
  justify-content: space-between;
  margin: 10vw auto 0;
}

/**/
.price_by_plan {
  padding-left: 2.4%;
}
.sec_plan .plan_unit {
  max-width: 375px;
  width: 100%;
}
.sec_plan .plan_unit + .plan_unit {
  margin-top: 34.5%;
}

.sec_plan .plan_unit .plan_name {
  max-width: 372px;
  width: 100%;
}

.sec_plan .plan_unit .price_txt::before {
  content: '';
  background: #596582;
  width: 50%;
  height: 1px;
  display: block;
  flex: 1;
  margin-right: 0.5em;
}
.sec_plan .plan_unit .price_txt {
  display: flex;
  align-items: center;
  color: #FFFFFF;
  font-size: 24px;
  font-size: clamp(0.938rem, 0.801rem + 0.58vw, 1.5rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  margin-top: 11.1%;
}

/*真ん中のライン*/
.sec_plan .plan_content_list::before {
  content: '';
  background: #596582;
  width: 1px;
  height: 100%;
  display: block;
}

/**/
.sec_plan .plan_content_list {
  width: 40%;
  display: flex;
  flex-grow: 0;
  flex-shrink: 0;
  margin-left: 5%;
}

.sec_plan .plan_content_list ul {
  width: 100%;
  position: relative;
  margin-top: auto;
  margin-left: 6.5%;
  transform: translateY(-2.1%);
}

.sec_plan .plan_content_list li {
  display: flex;
  align-items: baseline;
  margin-left: 0.95em;
}

.sec_plan .plan_content_list li + li {
  margin-top: 7.3%;
}

.sec_plan .plan_content_list .mark_svg {
  width: 10px;
  flex-shrink: 0;
  transform: translateY(-15%);
}
.sec_plan .plan_content_list .mark_img {
  fill: #FFFFFF;
}
.sec_plan .plan_content_list li p {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  line-height: 1.667;
  margin-left: 0.5em;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_plan .contents_unit {
          max-width: 100%;
          display: block;
          margin: 18.3vw auto 0;
  }

  /**/
  .price_by_plan {
          padding-left: 0;
  }
  .sec_plan .plan_unit {
          max-width: 100%;
          width: 51.67%;
          margin: 0 auto;
  }
  .sec_plan .plan_unit + .plan_unit {
          margin-top: 17.5%;
  }

  .sec_plan .plan_unit .plan_name {
          max-width: 100%;
          width: 100%;
  }

  .sec_plan .plan_unit .price_txt {
          font-size: 15px;
          font-size: clamp(0.938rem, 0.801rem + 0.58vw, 1.5rem);
          margin-top: 10.1%;
  }

  /*真ん中のライン*/
  .sec_plan .plan_content_list::before {
          display: none;
  }

  /**/
  .sec_plan .plan_content_list {
          width: auto;
          display: inline-block;
          position: relative;
          left: 48.5%;
          transform: translateX(-50%);
          margin: 16.2vw auto 0;          
  }

  .sec_plan .plan_content_list ul {
          margin-left: 0;
          transform: translateY(0);
  }

  .sec_plan .plan_content_list li + li {
          margin-top: 7.5%;
  }

  .sec_plan .plan_content_list .mark_svg {
          width: 7px;
  }
  .sec_plan .plan_content_list li p {
          font-size: 15px;
          font-size: clamp(0.938rem, 0.862rem + 0.32vw, 1.25rem);
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec 05 ACCESS  sec_access
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_access {
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_access .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 7.1vw 0 7.1vw;
}

.sec_access .sec_head {
  max-width: 801px;
  width: 41.7188%;
  margin: 0 auto;
}


/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_access .sec_wrap {
          padding: 19.6vw 0 6.0vw;
  }

  .sec_access .sec_head {
          max-width: 100%;
          width: 60.5334%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_access .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_access .address_txt {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.06em;
  text-align: center;
  margin-top: 4.5vw;
}

.sec_access .map_iframe {
  max-width: 1200px;
  width: calc(100% - 6%);
  aspect-ratio: 1200 / 507;
  position: relative;
  margin: 1.65vw auto 0;
}
.sec_access .map_iframe iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.sec_access .caution_txt {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.06em;
  text-align: center;
  margin-top: 2.9vw;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_access .address_txt {
          font-size: 14px;
          font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
          line-height: 1.614;
          letter-spacing: 0.001em;
          margin-top: 10.5vw;
  }

  .sec_access .map_iframe {
          max-width: 100%;
          width: 100%;
          aspect-ratio: 337 / 355;
          margin: 9.1vw auto 0;
  }
  .sec_access .map_iframe iframe {
          padding: 0 5.335%;
  }

  .sec_access .caution_txt {
          font-size: 14px;
          font-size: clamp(0.875rem, 0.784rem + 0.39vw, 1.25rem);
          line-height: 1.614;
          letter-spacing: 0.001em;
          margin-top: 6.9vw;
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec_footer01
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_footer01 {
  background: repeating-linear-gradient(90deg, #495a6b, #495a6b 3px, #384b5e 3px, #384b5e 10px);
  background-color: #384b5e;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_footer01 .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 4.8vw 0 4.9vw;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
    .sec_footer01 {
            background: repeating-linear-gradient(90deg, #495a6b, #495a6b 2px, #384b5e 2px, #384b5e 6px);
            background-color: #384b5e;
    }
    .sec_footer01 .sec_wrap {
            padding: 15.8vw 0 15.8vw;
    }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_footer01 .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_footer01 .footer_btn_wrap {
  width: 100%;
  display: flex;
  justify-content: center;
}

.sec_footer01 .footer_btn {
  max-width: 267px;
  width: 100%;
  aspect-ratio: 216 / 76;
  position: relative;
}
.sec_footer01 .footer_btn + .footer_btn {
  margin-left: 1.7%;
}
.sec_footer01 .footer_btn a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sec_footer01 .footer_btn .btn_txt {
  color: #FFFFFF;
  font-size: 25px;
  font-size: clamp(0.938rem, 0.786rem + 0.65vw, 1.563rem);
  font-weight: 600;
  transform: translateX(-5%);
  z-index: 2;
}
.sec_footer01 .footer_btn .btn_svg {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.sec_footer01 .footer_btn .btn_bg {
  fill: #8e854c;
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_footer01 .footer_btn_wrap {
          width: 90%;
          justify-content: space-between;
          margin: 0 auto;
          padding: 0 5.335%;
  }

  .sec_footer01 .footer_btn {
          max-width: 100%;
          width: 48.36%;
  }
  .sec_footer01 .footer_btn .btn_txt {
          font-size: 15px;
          font-size: clamp(0.938rem, 0.786rem + 0.65vw, 1.563rem);
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　sec_footer02
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* =========================================================

　全体

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_footer02 {
  background-color: #28343d;
  width: 100%;
  position: relative;
  margin: 0;
  padding: 0;
}
.sec_footer02 .sec_wrap {
  width: 100%;
  margin: 0;
  padding: 5vw 0 5vw;
}

.sec_footer02 .footer_logo {
  max-width: 116px;
  width: 100%;
  margin: 0 auto;
}


/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_footer02 .sec_wrap {
          padding: 15vw 0 15vw;
  }

  .sec_footer02 .footer_logo {
          max-width: 100%;
          width: 23.2%;
  }

}/*スマホ 表示 end*/

/* =========================================================

　コンテンツ部分

========================================================= */
/* PC 表示
--------------------------------------------------------- */
.sec_footer02 .contents_wrap {
  width: 100%;
  position: relative;
  margin: 0;
}

.sec_footer02 .footer_menu {
  width: 100%;
  margin-top: 1.9vw;
}

.sec_footer02 .footer_menu ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.sec_footer02 .footer_menu ul li {
  margin-top: 1.9vw;
}

.sec_footer02 .footer_menu li + li {
  margin-left: 2.8%;
}

.sec_footer02 .footer_menu .menu_01_concept {
  max-width: 114px;
  width: 100%;
  flex-shrink: 0;
}
.sec_footer02 .footer_menu .menu_02_feature {
  max-width: 105px;
  width: 100%;
  flex-shrink: 0;
}
.sec_footer02 .footer_menu .menu_03_flow {
  max-width: 67px;
  width: 100%;
  flex-shrink: 0;
}
.sec_footer02 .footer_menu .menu_04_plan {
  max-width: 60px;
  width: 100%;
  flex-shrink: 0;
}
.sec_footer02 .footer_menu .menu_05_access {
  max-width: 87px;
  width: 100%;
  flex-shrink: 0;
}
.sec_footer02 .footer_menu .menu_06_contact {
  max-width: 115px;
  width: 100%;
  flex-shrink: 0;
}

/*footer_info_menu*/
.sec_footer02 .footer_info_menu {
  width: 100%;
  margin-top: 4.6vw;
}

.sec_footer02 .footer_info_menu ul {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sec_footer02 .footer_info_menu ul li + li {
  margin-left: 2.2%;
}

.sec_footer02 .footer_info_menu {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.813rem, 0.706rem + 0.45vw, 1.25rem);
  font-weight: 300;
  line-height: 1.75;
  letter-spacing: 0.06em;
}

.sec_footer02 .copyright_txt {
  color: #FFFFFF;
  font-size: 20px;
  font-size: clamp(0.75rem, 0.629rem + 0.52vw, 1.25rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  text-align: center;
  margin-top: 4.5vw; 
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_footer02 .footer_menu {
          width: 90%;
          margin: 7.1vw auto 0;
  }

  .sec_footer02 .footer_menu ul li {
          margin: 3vw 3vw;
  }

  .sec_footer02 .footer_menu li + li {
          margin: 3vw 3vw;
  }

  /*footer_info_menu*/
  .sec_footer02 .footer_info_menu {
          width: 90%;
          margin: 7.1vw auto 0;
  }

  .sec_footer02 .footer_info_menu ul {
          flex-wrap: wrap;
  }
  .sec_footer02 .footer_info_menu ul li {
          margin: 1vw 3vw;
  }
  .sec_footer02 .footer_info_menu ul li + li {
          margin: 1vw 3vw;
  }

  .sec_footer02 .footer_info_menu {
          font-size: 13px;
          font-size: clamp(0.813rem, 0.706rem + 0.45vw, 1.25rem);
  }

  .sec_footer02 .copyright_txt {
          font-size: 12px;
          font-size: clamp(0.75rem, 0.629rem + 0.52vw, 1.25rem);
          margin-top: 10.5vw; 
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　ここから　特定商取引法に基づく表記ページ　用 page_tokushoho
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
.page_tokushoho {
  
}
/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　特定商取引法に基づく表記 sec_tokushoho
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* PC 表示
--------------------------------------------------------- */
.sec_tokushoho {
  width: 100%;
  position: relative;
}
.sec_tokushoho .sec_wrap {
  padding: 10vw 0 10vw;
}

.sec_tokushoho .sec_head {
  width: fit-content;
  position: relative;
  color: #fff;
  font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: auto;
}
.sec_tokushoho .sec_head::after {
  content: '';
  background-color: #fff;
  width: 30%;
  height: 2px;
  display: block;
  position: absolute;
  bottom: -0.8em;
  left: 50%;
  transform: translateX(-50%);
}

.sec_tokushoho .contents_wrap {
  width: 100%;
  margin: 5vw auto 0;
}

.sec_tokushoho .tokushoho_table {
  max-width: 1000px;
  width: calc(100% - 4%);
  margin: 0 auto;
}

.sec_tokushoho .tokushoho_table dl {
  border: 1px solid #495a6b;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  color: #fff;
  font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
  line-height: 1.664;
  letter-spacing: 0.14em;
}

.sec_tokushoho .tokushoho_table dt {
  background-color: rgba(40,52,61,0.3);
  border-bottom: 1px solid #495a6b;
  flex-basis: 35%; 
  padding: 3% 2.5%;
}
.sec_tokushoho .tokushoho_table dd {
  background-color: #384b5e;
  border-bottom: 1px solid #495a6b;
  flex-basis: 65%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 3% 2.5%;
}
.sec_tokushoho .tokushoho_table dt:last-of-type,
.sec_tokushoho .tokushoho_table dd:last-of-type {
  border-bottom: none;
}


/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_tokushoho .sec_wrap {
          padding: 20vw 0 20vw;
  }

  .sec_tokushoho .sec_head {
    width: fit-content;
    position: relative;
    color: #fff;
    font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: auto;
  }
  .sec_tokushoho .sec_head::after {
    content: '';
    background-color: #fff;
    width: 30%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: -0.8em;
    left: 50%;
    transform: translateX(-50%);
  }

  .sec_tokushoho .contents_wrap {
    width: 100%;
          margin: 12vw auto 0;
  }

  .sec_tokushoho .tokushoho_table {
          max-width: 100%;
          width: 100%;
    margin: 0 auto;
          padding: 0 5.335%;
  }

  .sec_tokushoho .tokushoho_table dl {
    border: 1px solid #495a6b;
    width: 100%;
    display: flex;
          flex-flow: column;
    color: #fff;
    font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
    line-height: 1.664;
    letter-spacing: 0.14em;
  }

  .sec_tokushoho .tokushoho_table dt {
    background-color: rgba(40,52,61,0.3);
    border-bottom: 1px solid #495a6b;
    flex-basis: 35%; 
          padding: 3% 3%;
  }
  .sec_tokushoho .tokushoho_table dd {
    background-color: #384b5e;
    border-bottom: 1px solid #495a6b;
    flex-basis: 65%;
    display: flex;
    flex-direction: column;
    justify-content: center;
          padding: 3% 3%;
  }
  .sec_tokushoho .tokushoho_table dt:last-of-type,
  .sec_tokushoho .tokushoho_table dd:last-of-type {
    border-bottom: none;
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　ここから　プライバシーポリシー　用 page_privacypolicy
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
.page_privacypolicy {
  
}
/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　プライバシーポリシー sec_privacypolicy
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* PC 表示
--------------------------------------------------------- */
.sec_privacypolicy {
  width: 100%;
  position: relative;
}
.sec_privacypolicy .sec_wrap {
  padding: 10vw 0 10vw;
}

.sec_privacypolicy .sec_head {
  width: fit-content;
  position: relative;
  color: #fff;
  font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: auto;
}
.sec_privacypolicy .sec_head::after {
  content: '';
  background-color: #fff;
  width: 30%;
  height: 2px;
  display: block;
  position: absolute;
  bottom: -0.8em;
  left: 50%;
  transform: translateX(-50%);
}

.sec_privacypolicy .contents_wrap {
  width: 100%;
  margin: 5vw auto 0;
}

.sec_privacypolicy .privacypolicy_details {
  max-width: 1000px;
  width: calc(100% - 4%);
  color: #fff;
  font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
  line-height: 1.664;
  letter-spacing: 0.14em;
  margin: 0 auto;
}
.sec_privacypolicy .privacypolicy_details span {
  display: inline-block;
}

.sec_privacypolicy .contents_head {
  width: fit-content;
  position: relative;
  color: #fff;
  font-size: clamp(0.875rem, 0.714rem + 0.71vw, 1.25rem);/*360-1200 14-20px*/
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: auto;
}
.sec_privacypolicy .enactment_date,
.sec_privacypolicy .revision_date {
  text-align: right;
  margin-top: 1em;
}
.sec_privacypolicy .revision_date {
  margin-top: 0.2em;
}

.sec_privacypolicy .declaration {
  margin-top: 2em;
}

.sec_privacypolicy .details_contents {
  margin-top: 2em;
}

.sec_privacypolicy .details_contents ul li + li {
  margin-top: 1.5em;
}

.sec_privacypolicy .signature {
  text-align: right;
  margin-top: 2em;
}

.sec_privacypolicy .privacypolicy_info {
  max-width: 1000px;
  width: calc(100% - 4%);
  color: #fff;
  font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
  line-height: 1.664;
  letter-spacing: 0.14em;
  text-align: center;
  margin: 5vw auto 0;
}
.sec_privacypolicy .privacypolicy_info span {
  display: inline-block;
}
.sec_privacypolicy .privacypolicy_info .info_head + p {
  margin-top: 2em;
}
.sec_privacypolicy .privacypolicy_info .info_head span {
  margin-right: 0.5em;
}
.sec_privacypolicy .privacypolicy_info p + p {
  margin-top: 1em;
}

.sec_privacypolicy .privacypolicy_address span {
  margin-right: 0.5em;  
}

/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_privacypolicy .sec_wrap {
          padding: 20vw 0 20vw;
  }
  
  .sec_privacypolicy .sec_head {
    width: fit-content;
    position: relative;
    color: #fff;
    font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: auto;
  }
  .sec_privacypolicy .sec_head::after {
    content: '';
    background-color: #fff;
    width: 30%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: -0.8em;
    left: 50%;
    transform: translateX(-50%);
  }

  .sec_privacypolicy .contents_wrap {
    width: 100%;
          margin: 12vw auto 0;
  }

  .sec_privacypolicy .privacypolicy_details {
          max-width: 100%;
          width: 100%;
    color: #fff;
    font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
    line-height: 1.664;
          letter-spacing: 0.05em;
    margin: 0 auto;
          padding: 0 5.335%;
  }
  .sec_privacypolicy .privacypolicy_details span {
    display: inline-block;
  }

  .sec_privacypolicy .contents_head {
    width: fit-content;
    position: relative;
    color: #fff;
    font-size: clamp(0.875rem, 0.714rem + 0.71vw, 1.25rem);/*360-1200 14-20px*/
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: auto;
  }
  .sec_privacypolicy .enactment_date,
  .sec_privacypolicy .revision_date {
    text-align: right;
    margin-top: 1em;
  }
  .sec_privacypolicy .revision_date {
    margin-top: 0.2em;
  }

  .sec_privacypolicy .declaration {
    margin-top: 2em;
  }

  .sec_privacypolicy .details_contents {
    margin-top: 2em;
  }

  .sec_privacypolicy .details_contents ul li + li {
    margin-top: 1.5em;
  }

  .sec_privacypolicy .signature {
    text-align: right;
    margin-top: 2em;
  }

  .sec_privacypolicy .privacypolicy_info {
          max-width: 100%;
          width: 100%;
    color: #fff;
    font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
    line-height: 1.664;
          letter-spacing: 0.05em;
    text-align: center;
          margin: 12vw auto 0;
          padding: 0 5.335%;
  }
  .sec_privacypolicy .privacypolicy_info span {
    display: inline-block;
  }
  .sec_privacypolicy .privacypolicy_info .info_head + p {
    margin-top: 2em;
  }
  .sec_privacypolicy .privacypolicy_info .info_head span {
    margin-right: 0.5em;
  }
  .sec_privacypolicy .privacypolicy_info p + p {
    margin-top: 1em;
  }

  .sec_privacypolicy .privacypolicy_address span {
    margin-right: 0.5em;  
  }

}/*スマホ 表示 end*/

/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　ここから　利用規約　用 page_terms
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
.page_terms {
  
}
/* =========================================================

　詳細 項目 共通パーツ

========================================================= */
/* PC 表示
--------------------------------------------------------- */
/*汎用マージン調整*/
.sec_terms .mg_top_em01 {
  margin-top: 1em;
}
/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  /*汎用マージン調整*/
  .sec_terms .mg_top_em01 {
    margin-top: 1em;
  }
  .sec_terms .sp_mg_top_em01 {
    margin-top: 0.85em;
  }

}/*スマホ 表示 end*/
/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
＊
＊
＊　利用規約 sec_terms
＊
＊
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */
/* PC 表示
--------------------------------------------------------- */
.sec_terms {
  width: 100%;
  position: relative;
}
.sec_terms .sec_wrap {
  padding: 10vw 0 10vw;
}

.sec_terms .sec_head {
  width: fit-content;
  position: relative;
  color: #fff;
  font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
  font-weight: 600;
  letter-spacing: 0.05em;
  margin: auto;
}
.sec_terms .sec_head::after {
  content: '';
  background-color: #fff;
  width: 30%;
  height: 2px;
  display: block;
  position: absolute;
  bottom: -0.8em;
  left: 50%;
  transform: translateX(-50%);
}

.sec_terms .contents_wrap {
  width: 100%;
  margin: 5vw auto 0;
}

.sec_terms .terms_details {
  max-width: 1000px;
  width: calc(100% - 4%);
  color: #fff;
  font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
  line-height: 1.764;
  letter-spacing: 0.14em;
  margin: 0 auto;
}
.sec_terms .terms_details span {
  display: inline-block;
}

.sec_terms .terms_dl {
  
}
.sec_terms .terms_dl + .terms_dl {
  margin-top: 3em;
}
.sec_terms .terms_dl dt {
  font-size: clamp(1rem, 0.893rem + 0.48vw, 1.25rem);/*360-1200 16-20px*/
}
.sec_terms .terms_dl dd {
  margin-top: 1em;
}
.sec_terms .terms_dl dd ul li + li {
    margin-top: 0.8em;
}

.sec_terms .terms_end_txt {
  text-align: right;
  margin-top: 3em;
}


/* スマホ 表示
--------------------------------------------------------- */
@media all and (max-width: 768px) {
  .sec_terms .sec_wrap {
          padding: 20vw 0 20vw;
  }

  .sec_terms .sec_head {
    width: fit-content;
    position: relative;
    color: #fff;
    font-size: clamp(1.125rem, 0.857rem + 1.19vw, 1.75rem);/*360-1200 18-26px*/
    font-weight: 600;
    letter-spacing: 0.05em;
    margin: auto;
  }
  .sec_terms .sec_head::after {
    content: '';
    background-color: #fff;
    width: 30%;
    height: 2px;
    display: block;
    position: absolute;
    bottom: -0.8em;
    left: 50%;
    transform: translateX(-50%);
  }

  .sec_terms .contents_wrap {
    width: 100%;
          margin: 12vw auto 0;
  }

  .sec_terms .terms_details {
          max-width: 100%;
          width: 100%;
    color: #fff;
    font-size: clamp(0.813rem, 0.732rem + 0.36vw, 1rem);/*360-1200 13-16px*/
    line-height: 1.764;
    letter-spacing: 0.02em;
    margin: 0 auto;
          padding: 0 4.335%;
  }
  .sec_terms .terms_details span {
    display: inline-block;
  }

  .sec_terms .terms_dl {

  }
  .sec_terms .terms_dl + .terms_dl {
    margin-top: 3em;
  }
  .sec_terms .terms_dl dt {
    font-size: clamp(1rem, 0.893rem + 0.48vw, 1.25rem);/*360-1200 16-20px*/
  }
  .sec_terms .terms_dl dd {
    margin-top: 1em;
  }
  .sec_terms .terms_dl dd ul li + li {
    margin-top: 0.8em;
  }

  .sec_terms .terms_end_txt {
    text-align: right;
    margin-top: 3em;
  }

}/*スマホ 表示 end*/
