/* 全体のリセットと基本スタイル */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
html {
    scroll-behavior: smooth;

}
ul {
  list-style: none;
}

.what li {
  text-align: center;
  font-size: 1.2rem;
    padding-left: 1em;
  text-indent: -1em;
}
.parent li {
  font-size: 1rem !important;
}
body {
  font-family: "Noto Sans JP-Bold", Helvetica;
  font-optical-sizing: auto;
  font-style: bold;
  color: #25693D;
  margin: 0;
  padding: 0;
  background-color: burlywood;
  overflow-x: hidden;
  scroll-behavior: smooth;
}

.header {
  position: fixed;
  top: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  height: 60px;
  background-color: #18A526;
  /*background-size: 100% 100%;*/
  z-index: 1000;
  color: #ffffff;
  justify-content: space-between;
  align-items: center;
}

.header-inner {
  height: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center; /* 縦方向で中央揃え */
  /*max-width: 1200px; /* 最大幅を設定 */
  /*margin: 0 auto; /* 水平中央揃え */
}

.header .mochiyasu-logo {
  top: 0;
  left: 0;
  display: flex;
  justify-content: flex-start; 
  align-items: center;
  margin-top: 10px;
  margin-left: 8px;
}


.header .catch-copy {
  width: 197px;
  font-weight: 700;
  font-size: 0.75rem;

  letter-spacing: 0;
  line-height: normal;
}




.frame-nav .parent {
  display: flex;                 /* 子要素（リンク）をフレックスアイテムにする */
  gap: 15px;                     /* リンク間にスペースを追加 */
  align-items: center;           /* リンクの縦方向で中央揃え */

}



.header .frame-nav{
  display: flex;                 /* 子要素をフレックスアイテムにする */
  justify-content: flex-end;     /* ナビゲーション全体を右揃えにする */
  padding-right: 170px;          /* 右に余白を設定 */
  opacity:1;
}

.header a{
  text-decoration: none;
  color: #FFF;
}

.parent a {
  padding: 15px 18px; /* 上下10px、左右20pxの余白を追加 */
  text-decoration: none;
}

.parent .check-button2 {
  display: none;
}

.parent a:hover {
  color: #FFF;
  background-color: #25693D; /* バックグラウンドカラーも変更する場合 */
  transition: background-color 0.3s; /* なめらかな色の変化を追加 */
}

.header .check-button {
  position: absolute;
  width: 170px;
  height: 60px;
  top: 0;
  right: 0;
  background-color: #FF7A00;
  border: none;
  margin-right: 0; /* 隙間をなくすための設定 */
  align-items: center; /* 横方向で中央揃え */
  text-align: center; /* テキストの中央揃え */

}

.check-button-container {
  padding-top: 0.4rem;
  padding-bottom: 0.5rem;
  
}


.check-button div:hover {
  color: #FF7A00;
  background-color: #FFEA7E; /* バックグラウンドカラーも変更する場合 */
  transition: background-color 0.3s; /* なめらかな色の変化を追加 */
}

.check-button .b{
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 0.625rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.a6{
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-decoration: none;
  /* padding: 10px 0; */
  color: #fff;
}

/* ハンバーガーメニューのスタイル */
.hamburger {
  display: none; /* デフォルトでは非表示 */
  cursor: pointer;
  flex-direction: column;
  justify-content: space-between;
  width: 30px;
  height: 20px;
}

.hamburger span {
  display: block;
  width: 100%;
  height: 3px;
  background-color: white;
  border-radius: 2px;
}


.marker {
  background: linear-gradient(transparent 70%, #FFEA7E 70%);
}

.FV {
  background-color: #FFFFFF;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.main-view {
  /* width: 70%; */
  width: 100%;
  background-color: #ffffff;
  border: 15px solid;
  border-color: #17a525;
  text-align: center;
  margin-top: 6.4rem;
  margin-bottom: 6.4rem;
  height: auto;
  padding: 40px;
  }

.title-logo {
  color: #17a525;
  font-family: "Josefin Sans", sans-serif;
  font-size: 1.875rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;

}

.title-catch-copy {
  color: #17a525;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.message1 {
  color: #17a525;
  text-align: center;
  /* font-size: 2.875rem; */
  font-size: 4rem;
  font-style: normal;
  font-weight: 700;
}

.message2 {
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 120%; /* 1.2rem */
  margin-top: 1.78rem;
  margin-bottom: 1.78rem;
}

.main-view .FV-check-button {
  position: absolute;
  width: 28rem;
  height: 5.625rem;
  background-color: #FF7A00;
  left: 50%; /* ボックスの横中央に配置 */
  transform: translateX(-50%); /* ボタンを中央揃え */
  cursor: pointer;
  border-radius: 3.75rem; /* 角を丸める */
  border: 4px solid #FFF;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  display: flex;
  justify-content: center; /* 水平方向の中央揃え */
  align-items: center; /* 垂直方向の中央揃え */
  margin-top: 15px;
  transition: transform 0.1s ease, box-shadow 0.1s ease; /* クリック時のアニメーション */
}

.main-view .FV-check-button:active {
  transform: translateX(-50%) translateY(3px); /* クリック時に下へ沈む */
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.25); /* 影を小さくして沈んだように見せる */
}

.img-FV-1 .img-FV-2 img{
  height: auto;
  width: auto;
  width: 15%;
  margin-top: 5.6rem;
}

.img-FV-3 img{
  width: 75%;
}


.container-check-button{
  display: flex;
  align-items: center; /* アイコンとテキストを縦に中央揃え */
  color: #FFF;
  font-family: "Noto Sans JP";
  text-decoration: none; /* リンクの下線を削除 */
}

.cbm {
  margin-left: 1rem; /* アイコンとの間にスペースを追加 */
}

.cbm .b {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 700;
  line-height: 100%; /* 0.875rem */
  letter-spacing: 0.175rem;
    font-family: "Zen Maru Gothic";
}

.cbm .a6 {
  font-size: 1.9rem;
  font-style: normal;
  font-weight: 700;
  line-height: 100%;
  background: linear-gradient(transparent 70%, #18A526 70%);
    font-family: "Zen Maru Gothic";
}


.V2 {
  background: #EDF8EE;
  height: auto;
  width: 100%;
}

.what {
  text-align: center;
  padding-top: 6.25rem;
  padding-bottom: 6.25rem;
  padding-right: 20px;
  padding-left: 20px;
}

.what-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.orange {
  color: #FF7A00;
}

.light-green {
  color: #18A526;
}

.what-message {
  font-size: 1rem;
  font-weight: 700;
  line-height: 200%; /* 2rem */
  font-style: normal;
  width:100%;

}



/* V3  */
/* V3  */
/* V3  */
/* V3  */



.V3 {
  background: #EDF8EE;
  width: 100%;
  padding: 6.25rem 0;
  height: auto;
  text-align: center;
}

.V3-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.subtitle {
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.09375rem;
  color: #18A526;
}

.steps,
.reason_area {
  display: flex;
  justify-content: center;

}
.steps {
  height: 22.0625rem;
}
.step {
  border: 4px solid;
  border-color: #18A526;
  background: #FFF;
  margin-right: 1.5rem;
  align-items: center;
  width: 18.75rem;
  position: relative;
}
.step._v3 {
  height: 26rem;
}
.step-title {
  background-color: #18A526;
  color: #FFF;
  padding-top: 0.56rem;
  padding-bottom: 0.56rem;
  font-size: 1.375rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}


.step-message-v1-1 ,
.step-message-v2-1 ,
.step-message-v3-1 ,
.step-message-v3-2 {
  font-size: 1.1rem;
  font-style: normal;
  font-weight: 700;
  padding: 1.3rem 15px;
  bottom: 1.5rem;
  box-sizing: border-box;
}

.step-message-v1-1 ._small ,
.step-message-v2-1 ._small ,
.step-message-v3-1 ._small ,
.step-message-v3-2 ._small{
  font-size: 0.8rem;
}

.step-message-v1-2 ,
.step-message-v2-2{
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-top: 1rem;
}

.V3-img {
  /*margin-top: 0.72rem;
  margin-bottom: 1.5rem;*/
  position: absolute;
  bottom: 1rem; /* ボックスの底辺から1.5remの位置に配置 */
  left: 50%; /* ボックスの中央に配置（必要に応じて削除） */
  transform: translateX(-50%); /* 画像の中央揃え（必要に応じて削除） */
}

.V3-plus {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.extra {
  padding-bottom: 6.25rem;
}


/* V4  */
/* V4  */
/* V4  */
/* V4  */

.V4 {
  height: auto;
  width: 100%;
  background-color: #fff;
  padding-top: 6.25rem;
  text-align: center;
}


.V4-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.terms {
  width: 39.5rem;
  height: 3.3125rem;
  background-color: #FFF;
  margin: auto;
}

.element-wrapper {
  padding-top: 0.8rem;
  padding-bottom: 0.8rem;
}

.compare {
  margin-top: 1.5rem;
}

.triangle {
  width: 0;
  height: 0;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  border-top: 50px solid #FFF;
  margin: auto;
  margin-top: 1.5rem;
}

.result {
  margin-top: 1.5rem;
  padding-bottom: 6.25rem;;
}


/* V5  */
/* V5  */
/* V5  */
/* V5  */

.V5 {
  height: auto;
  width: 100%;
  background: #FFF;
  padding: 6.25rem 0;
  text-align: center;
}

.V5-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.V5-message {
  font-size: 1rem;
  font-weight: 700;
  line-height: 200%; /* 2rem */
}

.why-img {
  display: flex;
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center;
}

.why-container {
  display: flex;
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center;
}

.why-img2 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding-top: 2.25rem;
  padding-bottom: 2.25rem;
  width: 39.5rem;
  height: auto;
  background: #EDF8EE;
  text-align: center;
}
.why-img2::before{
  content: "";
  position: absolute;
  top: -30px;
  left: 80%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #EDF8EE;
}

.because {
  background: #18A526;
  width: 25.9375rem;
  height: auto;
  margin: 1rem auto 0;  /* 自動で中央揃えにするためのマージン */
  text-align: center;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #FFF;
}

.white {
  color: #FFF;
  text-align: center;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.yellow {
  color: #FFEA7E;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}


/* V6  */
/* V6  */
/* V6  */
/* V6  */

.V6 {
  height: auto;
  width: 100%;
  background: #EDF8EE;
  padding: 6.25rem 1rem;
  text-align: center;
}

.V6-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.users {
  display: flex;
  flex-direction: column; /* 子要素を縦に並べる */
  align-items: center; /* 水平方向に中央揃え */
}

.users img{
  margin-bottom: 1.5rem;
}

/* V7  */
/* V7  */
/* V7  */
/* V7  */

.V7 {
  height: auto;
  width: 100%;
  background: #fff;
  padding: 6.25rem 0;
  text-align: center;
}

.V7-title {
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}

.V7-message {
  text-align: left;
  color: #25693D;
  display: inline-block; /* 中央揃えを適用するために、インラインブロックを使用 */
  text-align: left; /* 内部のテキストを左揃え */
}

.V7-message1 {
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: 2.4rem; /* 1.75rem */ 
  margin-bottom: 1.5rem; 
}

.V7-message2 {
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.6rem; /* 1.225rem */
  /* padding-bottom: 6.25rem; */
}
.V7-message1 .condition {
  display: block;
  padding: 1.6rem 0;
  border-bottom: 1px solid #ddd;
}

.V7-message1 .condition ._small{
  font-size: 0.8rem;
  margin: 0;
  line-height: 1;
}

/* V8  */
/* V8  */
/* V8  */
/* V8  */

.V8 {
  padding: 6.25rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  height: auto;
  width: 100%;
  background: #FFF;
}

.V8-header {
  background: #FF7A00;
  clip-path: polygon(0 0, 100% 0, 100% 80%, 50% 100%, 0 80%);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 0; 
  padding: 0; /* パディングが余計なスペースを作らないようにする */
  position: absolute; /* V8の上部に配置 */
  top: 0; /* V8の上部に0pxの位置に配置 */
  left: 0;
  width: 100%;
  height: 17.56rem;
}

.V8-title {
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  /* margin-top: 5.38rem; */
  padding-top: 0%;
}

.V8-sub {
  color: #FFF;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.09375rem;
}

.V8-main-title {
  color: #FFF;
  font-size: 3rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
}


.form-container {
  display: flex;             /* 子要素を横に並べる */
  justify-content: center;   gap: 1.25rem;                 /* 要素間のスペースを調整 */
  position: relative;
  z-index: 10; /* 他の要素より上に表示される */
  padding-top: 13.75rem;
  top: 0%;
  width: 100%;
}

.form1 {
  background: #FFFCFC;    /* 背景色を設定（必要に応じて） */
  padding: 2.25rem;             /* パディングを設定 */
  border: 6px solid #25693D;
  width: 45%;
}

.site {
  display: flex;
  flex-direction: column; /* 子要素を縦に並べる */
  align-items: center; /* 子要素を中央に揃える */
}

.form-title {
  width: 100%;
  height: 4.5rem;
  background: #25693D;
  color: #FFF;
  font-size: 1.875rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  display: flex; /* フレックスボックスを使用 */
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center; /* 垂直方向に中央揃え */
}

.form-steps {
  width: 100%;
}


.form-step-title {
  display: flex;
  margin-top: 1.5rem;
  height: 1.5rem;
  margin-bottom: 1.44rem;
  margin-left: 0;
}

.step-logo {
  color: #FFF;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 700;
  width: 3.75rem;
  height: 1.75rem;
  background-color: #25693D;
  padding: 0.25rem 0.5rem;
}

.what-to-do {
  color: #25693D;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 900;
  line-height: 1.8rem;
  padding-left: 1rem;
  padding-bottom: 0.25rem;
}



.annotation {
  text-align: right;
}

.LINE {
  display: flex;
  flex-direction: column; /* 子要素を縦に並べる */
  align-items: center; /* 子要素を中央に揃える */
}

.LINE-how-to-title {
  text-align: center;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 900;
  line-height: 140%; /* 2.1rem */
  margin: 1.5rem 0;
}


.LINE-how-to-title ._small {
  font-size: 1rem;
}

.LINE-how-to-subtitle {
  width: 25.125rem;
  height: auto;
  background: #25693D;
  color: #FFF;
  text-align: center;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-align: center;
  display: flex;
  justify-content: center; /* 水平方向の中央揃え */
  text-align: center; /* テキストの中央揃え */
  width: 98%; /* 親要素の幅に合わせる */
  padding-top: 0.34rem;
  margin-top: 0.75rem;
  letter-spacing: 0.056rem;  /* 文字間の間隔を指定 */
}

.LINE-message {
  display: flex;
  margin-bottom: 1.5rem;
}

.LINE-message img {
  width: 60%; /* 親要素の幅に合わせてリサイズ */
  height: auto; /* アスペクト比を保ったまま高さを自動調整 */
  max-width: 100%; /* 画像が親要素を超えないようにする */
}

.LINE-annotation {
  height: 10.6875rem;
  background: #EDF8EE;
  padding: 2rem;
  text-align: center;
  display: flex;
  justify-content: center; /* 水平方向の中央揃え */
  text-align: center; /* テキストの中央揃え */
  width: 100%; /* 親要素の幅に合わせる */
}

/*.checkbox {
  margin-top: 2.25rem;
  margin-bottom: 2.25rem;
} */

/* チェックボックスのデフォルトスタイルを無効化 */
input[type="checkbox"] {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 20px !important;
  height: 20px !important;
  background-color: #EDF8EE; /* 初期状態の背景色 */
  border: 1px solid #777 !important;
  position: relative;
  cursor: pointer;
  transition: background-color 0.3s ease; /* 背景色の変化をスムーズに */
}

input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus  {
  outline: none;
}

/* チェックボックスが押された際の背景色変更 */
input[type="checkbox"]:checked {
  background-color: #25693D; /* チェックされたときの背景色 */
}

/* チェックマークのカスタマイズ */
input[type="checkbox"]::after {
  content: '';
  position: absolute;
  top: 0.032rem;
  left: 0.36rem;
  width: 0.3125rem;
  height: 0.625rem;
  border-right: 0.125rem solid white; /* チェックマークの色 */
  border-bottom: 0.125rem solid white; /* チェックマークの色 */
  transform: rotate(45deg);
  opacity: 0; /* デフォルトは非表示 */
  transition: opacity 0.2s ease; /* スムーズに表示 */
}

/* チェックされた時にチェックマークを表示 */
input[type="checkbox"]:checked::after {
  opacity: 1; /* チェック時に表示 */
}

.checkbox label {
  padding-left: 15px !important;
}
.V8-check-button {
  width: 23.4375rem;
  height: 4.125rem;
  cursor: pointer;
  border-radius: 3.75rem; /* 角を丸める */

  display: flex;
  justify-content: center; /* ボタン内のコンテンツを中央に配置 */
  align-items: center; /* ボタン内のコンテンツを中央に配置 */
  border-radius: 3.75rem;
  border: 4px solid #FFF;
  background: #FF7A00;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  transition: transform 0.1s ease, box-shadow 0.1s ease; /* アニメーション */
}

.form-container .V8-check-button:active {
  transform: translateY(3px); /* クリック時に少し下に動く */
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.25); /* 影を縮める */
}


.V8-container-check-button {
  display: flex;
  align-items: center; /* アイコンとテキストを縦に中央揃え */
  color: #FFF;
  font-family: "Noto Sans JP";
  text-decoration: none; /* リンクの下線を削除 */
}

.click img {
  width: 2.4rem;
  height: 2.4rem;
  margin: 1rem 0 0 1rem;
}

.V8-cbm {
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-left: 1.5rem;
}

.V8-LINE-button {
  width: 23.4375rem;
  height: auto;
  background: #20D332;
  cursor: pointer;
  border-radius: 3.75rem; /* 角を丸める */
  padding: 0.5rem 0;
  margin: 20px 0 0 0;
  display: flex;
  justify-content: center; /* ボタン内のコンテンツを中央に配置 */
  align-items: center; /* ボタン内のコンテンツを中央に配置 */
  border-radius: 3.75rem;
  border: 4px solid #FFF;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
  transition: transform 0.1s ease, box-shadow 0.1s ease; /* アニメーション */
}

.form-container .V8-LINE-button:active {
  transform: translateY(3px); /* クリック時に少し下に動く */
  box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.25); /* 影を縮める */
}


.V8-container-check-button {
  display: flex;
  align-items: center; /* アイコンとテキストを縦に中央揃え */
  color: #FFF;
  font-family: "Noto Sans JP";
  text-decoration: none; /* リンクの下線を削除 */
}

.line-click {
  padding-top: 0.4rem;
}

.V8-cbm {
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin-left: 1.5rem;
}

.footer {
  display: flex;
  justify-content: center;
  width: 100%;
  background: #18A526;
  /* padding: 1.8rem 5.6rem; */
}

.footer-group {
  display: flex;
  justify-content: space-between; /* 両端に配置 */
  align-items: center; /* 縦方向の中央揃え */
}

.footer-logo {
  color: #FFF;
  font-family: "Josefin Sans";
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.footer-p {
  color: #FFF;
  font-family: "Josefin Sans";
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 400;
  line-height: 0.75rem; /* 100% */
}

.about-company {
  color: #FFF;
  font-family: "Josefin Sans";
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.br-sp {
  display: none;
  }

.br-1220 {
  display: none;
  }
.fv-min-br {
  display: none;
}


/* メディアクエリ（1436px以下のとき） */
@media (max-width: 1436px) {
    .fvbr{
        display: block;
        }

      

}

/* メディアクエリ（1220px以下のとき） */
@media (max-width: 1220px) {
      
    .what-to-do {
        font-size: 1.4rem;
    }
    

    
    
      
    
      .br-1220 {
        display: block;
        }

      .LINE-annotation {
        height: auto;
      }
    
}





@media (max-width: 1180px) {
      .V8-LINE-button {
        padding: 2rem 0;  
    }


    .frame-nav ul{
        opacity: 0;
        transition: opacity 0.3s ease; /* スムーズに表示するための設定 */
    }

    .frame-nav .parent {
        display: none; 
      }
  
    .hamburger {
      display: flex; /* ハンバーガーメニューを表示 */
      position: absolute;
      top: 0;
      right: 170px; /* check-buttonの左側に配置 */
      margin: 1.05em;
    }

    .hamburger span {
        display: block;
        width: 100%;
        height: 3px;
        transition: transform 0.3s ease, opacity 0.3s ease;
      }
  
    /* ハンバーガーメニューがクリックされた時に表示されるナビゲーション */
    .frame-nav.active {
      display: flex;
      flex-direction: column;
      position: absolute;
      top: 60px;
      left: 0;
      width: 100%;
      background-color: #18A526;
      padding: 20px;
    }

    .frame-nav.active .parent {
        display: flex; /* 表示 */
        flex-direction: column; /* 縦に並べる */
      }

    .frame-nav.frame-nav.active ul{
        opacity: 1;
    }
    
    .check-button2{
        background-color: #FF7A00;;
    }

  
    /* check-buttonの位置を固定 */
    .check-button {
      position: fixed;
      top: 0;
      right: 0;
      height: 60px;
    }
  
  
/* ハンバーガーメニューがアクティブの時 */
.hamburger.active span:nth-child(1) {
    transform: rotate(45deg) translate(5.5px, 5.5px); /* 45度回転して右上に移動 */
    transform-origin: center; /* 回転の基準を中央に */
  }
  
  .hamburger.active span:nth-child(2) {
    opacity: 0; /* 中央のラインを消す */
  }
  
  .hamburger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(5.5px, -5.5px); /* -45度回転して左上に移動 */
    transform-origin: center; /* 回転の基準を中央に */
  }


  .img-FV-1 img {
    margin-top: 0;
    position: absolute;
    top: 0;             /* 画面の上に配置 */
    right: 0;           /* 画面の右端に配置 */
    width: 24%;         /* 画像の幅を調整 */
    height: auto;
    max-width: 100%; 
    margin-top: 60px;
  }
  
  .img-FV-2 img {
    margin-top: 10%;
    position: absolute;
    left: 0;            /* 画面の左端に配置 */
    width: 24%;         /* 画像の幅を調整 */
    height: auto;
    max-height: 100%; 
  }


  /* main-viewの下に重ねるためにposition: relativeを設定 */
  .main-view {
    /* width: 65%; */
    margin-bottom:4rem;;
    position: relative;  /* 親要素を基準に子要素が絶対位置で配置されるようにする */
    z-index: 1;          /* main-viewを上に表示するためにz-indexを指定 */
  }

  /* img-FV-1とimg-FV-2をmain-viewの下に重ねる */
  .img-FV-1, .img-FV-2 {
    z-index: 0;          /* 画像をmain-viewの下に配置 */
  }



.message1 {
    font-size: 3.3rem;
}

.steps {
    margin-left: 1.5rem;
}


.step-title {

    font-size: 1rem;

}

.step-message-v1-1 ,
.step-message-v2-1 ,
.step-message-v3-1 ,
.step-message-v3-2 {
  font-size: 0.9rem;
}
.step._v3 {
  height: 22rem;
}

.extra img{
    width: 90%;
}

/* .V8-title {
    margin-top: 4rem;
} */

.V8-main-title {
    font-size: 1.6rem;
}

.form-container {
    padding-top: 12rem;
}

.form-title {
    width: 98%;
    padding: auto;
    font-size: 1.8rem;
}


  
.what-to-do {
    font-size: 1.4rem;
}




  .V8-check-button {
    width: 100%;
    height: 8%;
  }

  .V8-cbm {
    margin-left: 0.8rem;
  }

  .LINE-how-to-title {
    font-size: 0.8rem;
  }

  .LINE-how-to-subtitle {
    margin-top: 1.6rem;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 1rem;
  }

  .LINE-message1 {
    font-size: 0.64rem;
  }


  .V8-LINE-button {
    width: 100%;
    height: 8%;
  }
}

/* メディアクエリ（760px以下のとき） */
@media (max-width: 760px) {
  input[type="checkbox"] {
    margin-top: 0 !important;
  }
      .what li {
      text-align: left;
        font-size: 1rem;

    }
    .checkbox {
      font-size: 13px;
      margin: 0 !important;
    }
    .V5 {
      padding: 3rem 0;
    }
    .br-sp {
        display: block;
        }

    .header .mochiyasu-logo {
        display: flex; /* flexboxを維持 */
        flex-direction: column; /* 要素を縦に並べる */
        align-items: flex-start; /* 左に揃える */
      }

    .header .logo-main {
        font-size: 1.2rem;
      }
    
    .header .catch-copy {
  font-size: 0.4rem;
}


.hamburger {
    right: 0; /* check-buttonの左側に配置 */
  }
  /* ハンバーガーメニューがクリックされた時に表示されるナビゲーション */
  .frame-nav.active ul {
    display: flex; /* メニューを表示 */
    flex-direction: column; /* メニュー項目を縦に並べる */
    opacity: 1;
    transition: opacity 0.3s ease;
  }

  .frame-nav .parent {
    gap: 0;
  }

  .parent a {
    width: 100%;
    text-align: center;
    display: block;
  }

  .parent .check-button2 {
    display: block;
  }

    .check-button2{
    font-size: 1.2rem;
    font-weight: 600;
  }

  .header .check-button {
    display: none;
  }  

.main-view {

    border: 0.4rem solid;
    border-color: #17a525;
    text-align: center;
    margin-top: 6.4rem;
    margin-bottom: 4.8rem;
    padding: 20px;
    padding-bottom: 40px;
    }

    .title-logo {
        color: #17a525;
        font-family: "Josefin Sans", sans-serif;
        font-size: 1.2rem;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
      
      }
      
      .title-catch-copy {
        color: #17a525;
        font-size: 0.4rem;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
      }
      
      .message1 {
        color: #17a525;
        text-align: center;
        font-size: 3.3rem;
        font-style: normal;
        font-weight: 700;
      }
      
      .message2 {
        font-size: 0.8rem;
        font-style: normal;
        font-weight: 700;
        line-height: 120%; /* 1.2rem */
        margin-top: 1.64rem;
        margin-bottom: 1.64rem;
      }



      .main-view .FV-check-button {
        width: 16rem;
        height: 5rem;
      }

      .img-FV-2 img {
        margin-top: 20%;
      }

      .click img {
        width: 1.5rem;
      height: 1.5rem;
      margin: 0.8rem 0 0 0.8rem;
      }

      .cbm .b {
        font-size: 0.8rem;
        font-style: normal;
        font-weight: 700;
        line-height: 100%; /* 0.875rem */
        letter-spacing: 0.008rem;
      }
      .a6 {
        font-size: 1.atan2();rem !important;
        font-style: normal;
        font-weight: 700;
        line-height: 100%; /* 2rem */
        letter-spacing: 0.08rem;
        text-decoration: none;
      }

      .what {
        text-align: center;
        padding-top: 4rem;
        padding-bottom: 4rem;
      }

      .what-title {
        width:100%;
        text-align: center;
        display: flex;
        justify-content: center;
        font-size: 2rem;
      }


      .what-message {
        font-size: 0.8rem;
      }

      .V3 {
          height: auto;
      }

      .steps,
      .reason_area {
        display: block;
      }

      
      .steps,
      .reason_area {
        display: flex;
        flex-direction: column; /* 子要素を縦に並べる */
        align-items: center; /* 子要素を中央揃えにする */
        height: auto; /* 高さを自動調整 */
        margin-left: 0;
      }
      .reason_area {
        height: 38rem;
      } 
    
      /* 各 step の幅を調整 */
      .step {
        margin-right: 0;
        margin-bottom: 1.5rem; /* 各 step の間に余白を追加 */
        width: 90%; /* 幅を調整してスマホ画面に収まるようにする */
        /* height: 20rem; */
               height: auto;
 
      }


    .terms {
        width: 90%;
    }

    .element-wrapper {
        padding-top: 0.4rem;
        padding-bottom: 0.4rem;
    }

    .element-17 {
        font-size: 0.8rem;
    }

    .compare {
        display: flex;              /* 子要素を横並びにする */
        justify-content: center;     /* コンテンツを中央揃えにする（オプション） */
        align-items: center;         /* 縦方向の中央揃え */
        gap: 1rem;                   /* 画像の間に余白を追加する（オプション） */
      }
      
      .nomal-img {
        width: 40%;               /* 任意の幅を指定 */
        height: auto;               /* 縦横比を保つ */
      }
      
      /* 2つ目の画像のサイズ */
      .mochiyasu-img {
        width: 45%;               /* もう1つの画像の幅を指定 */
        height: auto;               /* 縦横比を保つ */
      }

      .result img{
        width: 90%;
      }

    .why-img{
        width: 100%;
    }

    .imgs{
        width: 20%;
    }

    .arrow {
        width: 10%;
    }

    .why-container {
        width: 100%;
        align-items: center;
    }

    .why-img2 {
        width: 90%;
        padding-top: 1.6rem;
        padding-bottom: 1.6rem;
    }

    .why-img2 img {
        width: 90%;
    }

    .because {
        width: 90%;
    }

    .users img {
        width: 95%;
    }

    .V7-message {
        width: 90%;
    }

    .V7-message1 {
        font-size: 1rem;
    }

    .V7-message1 .condition {
        display: block; /* インライン要素ではなくブロック要素として扱う */
        padding: 1.2rem 0; /* 下に1remの余白を追加 */
        line-height: 1.5;
        border-bottom: 1px solid #ddd;
      }

    .V7-message2 {
        font-size: 0.76rem;
    }
    .V7-title {
      font-size: 1.8rem;
    }

    .V8-header img {
        width:20%;
    }

    .V8-header {
        height: 12rem;
    }

    /* .V8-title {
        margin-top: 2.4rem;
      } */
    
    .V8-main-title {
        font-size: 1.6rem;
    }
    
    .form-container {
        padding-top: 12rem;
        display: flex;
        flex-direction: column; /* 子要素を縦に並べる */
        align-items: center; /* 子要素を中央揃えにする */
        height: auto; /* 高さを自動調整 */
        width: 100%;
    }
    
    .form-title {
        width: 98%;
        padding: auto;
        font-size: 1.6rem;
    }
    
    

      
    .what-to-do {
        font-size: 1.2rem;
    }

    .annotation {
        font-size: 0.56rem;
    }

    .checkbox label {
        font-size: 0.72rem;
    }
    /* .checkbox {
        margin-top: 1rem;
        margin-bottom: 1rem;
      } */
    
      .footer {
        height: auto;
        width: 100%;
        padding: 1.6rem;
      }

      .footer-group {
        display: flex;
        flex-direction: column; /* 子要素を縦に並べる */
        align-items: start; /* 子要素を中央揃えにする */
        height: auto; /* 高さを自動調整 */
        width: 90%;
      }
      
      .about-company {
        margin-top: 0.4rem;
      }

}


@media (max-width: 474px) {
    .main-view {
        /* width: 80%; */
    }

    .img-FV-2 img {
        margin-top: 40%;
      }

    .message1 {
        font-size: 2.4rem;
        margin-top: 0.64rem;
    }

    .fv-min-br {
        display: block;
      }
    
      .V7-message2 {
        font-size: 0.72rem;
      }

  }

/* 0414 */
.header_logo {
  width: 144px;  
  height: auto;
  display: inline-block;
  margin: 0 0 0 10px;
}
.header_logo img {
  width: 100%;
  height: auto;
  display: block;
}
.v9_text1 {
  text-align: center;
}
.v9_text2 {
  font-size: 16px;
}
#modal_area,
#modal_area2,
#modal_area3,
#modal_area4,
#modal_area5,
#modal_area6 {
  z-index: 1000;
}
.modal_area {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.modal_bg {
  width: 100%;
  height: 100%;
  background-color: rgba(52,52,52,1);
}
.modal_block {
  width: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
}
.modal_wrapper {
  height: auto;
  background: #fff;
  padding: 3.125vw;
  box-shadow: 0px 2px 10px #00000033;
  border-radius: 20px;
  overflow: hidden;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  height: 80vh;
}
.modal_img {
 position: relative;
}
.close_modal {
  position: absolute;
  top: 3%;
  right: 3%;
  cursor: pointer;
  text-align: center;
  font-family: "Zen Maru Gothic";
  letter-spacing: 0px;
  color: #333333;
  font-size: 1.5vw;
  font-weight: 500;
  margin: 0;
}
.modal_note {
  position: absolute;
  bottom: -4%;
  right: 4%;
  margin: 0;
  text-align: center;
  font-family: "Zen Maru Gothic";
  letter-spacing: 0px;
  font-weight: 500;
  font-size: 0.938vw;
  color: #FFFFFF;
}
.careerstep_area {
  display: flex;
}
.open_modal {
  text-decoration: underline;
  cursor: pointer;
}
.careerstep_area img:last-child {
  margin-right: 0;
}
.modal_img img {
  width: 100%;
  height: auto;
}
.modal_title {
  background: #EDFBF2 0% 0% no-repeat padding-box;
  border-radius: 5px;
  padding: 0.833vw 1.25vw;
  margin: 10px 0 0 0;
}
.modal_content {
  padding: 10px 0 40px 0;
}
.modal_text1 {
  text-align: left;
  font: normal normal bold 24px/24px Noto Sans JP;
  letter-spacing: 0px;
  color: #00C853;
  margin: 0;
}

.modal_text2 {
  text-align: left;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0;
}
.modal_text3 {
  text-align: left;
  font: normal normal bold 30px/30px Noto Sans JP;
  letter-spacing: 0px;
  margin: 0 0 20px 0;
  color: #FF7A00;
}

@media screen and (max-width: 960px) {
  .close_modal {
    font-size: 2.933vw !important;
  }
  .modal_wrapper {
    padding: 5vw;
  }
  .modal_note {
    bottom: -10%;
    font-size: 2.933vw !important;
  }
  .modal_block {
    width: 90%;
  }
  .modal_note {
    font-size:  3.2vw;
  }
  .modal_title {
    padding: 2vw 3vw;
  }
}

/* accodion */
.qa_area {
  background: #EDF8EE;
  padding: 6.25rem 20%;
}
.qa_h2 {
  text-align: center;
  font-size: 2.25rem;
  font-weight: 900;
}
.accordion {
  border-bottom: 1px solid #DDDDDD;
  /* margin: 0 0 30px 0; */
}
.accordion_img {
  width: 40px;
  height: 40px;
}
.accordion summary {
  display: flex;
  position: relative;
  cursor: pointer;
  align-items: center;
  padding: 1.667vw;
  line-height: 40px;
}
.accordion_text1 {
  text-align: left;
  letter-spacing: 0px;
  color: #25693D;
  margin: 0;
}
.accordion_text1 {
  font-size: 18px;
  font-weight: 700;
}
.accordion_text2 {
  text-align: left;
  font-size: 16px;
  font-weight: 700;
  color: #FF7A00;
  margin: 0;
}
.accordion_text3 {
  text-align: left;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #000000;
  margin: 0;
}
.accordion summary::-webkit-details-marker {
    display: none;
}
.accordion summary::after {
  content: '';
  transform: translateY(-25%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #00C853;
  border-right: 2px solid #00C853;
  transition: transform .4s;
  top: 45%;
  right: 10px;
  position: absolute;
}
.accordion[open] summary::after {
  transform: rotate(225deg);
}
.accordion[open] p {
  transform: none;
  opacity: 1;
}
.answer_wrapper {
  padding-bottom: 30px;
}
.answer {
  line-height: 30px;
  padding: 0 1.667vw  1.667vw  1.667vw;
}
.accordion_img {
  margin: 0 10px 0 0;
}
@media screen and (max-width: 960px) {
  .qa_area {
    padding: 6.25rem 5.33%;
  }

  .accordion_img {
    width: 30px;
    height: 30px;
  }
  .accordion summary {
    padding: 3vw 8vw 3vw 5.33vw;
  }
  .answer_wrapper {
    padding-bottom: 30px;
  }
  .answer {
    line-height: 40px;
  }
  .answer {
    padding: 0 5.33vw  5.323vw  5.33vw;
  }
}


.V8-title {
  width: 100%;
  text-align: center;
  font-size: 2.25rem;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  padding-bottom: 2.25rem;
}


/* contact */
.contact {
  background: #fff;
}
.wrapper {
  display: flex;
  justify-content: center;
}
.heading {
  width: 100%;
  padding: 6.25rem 20%;
  text-align: center;
}
.contact_block {
  margin: 0 0 20px 0;
}
.contact_title {
  display: flex;
  align-items: center;
  margin: 0 0 10px 0;
}
.contact_text1 {
  text-align: left;
  font: normal normal bold 16px/16px Noto Sans JP;
  letter-spacing: 0px;
  color: #25693D;
  margin: 0;
}
.contact_text1 .required {
  text-align: left;
  font: normal normal normal 15px/15px Noto Sans JP;
  letter-spacing: 0px;
  color: #B70000;
  margin: 0 0 0 10px;
}
input.form-control,
select.form-select,
textarea.form-control {
  background: #FFFFFF 0% 0% no-repeat padding-box;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  padding: 20px 2%;
}
input.form-control {
  width: 95%;
  height: 24px;
}
select.form-select {
  width: 45%;
}
textarea.form-control {
  width: 95%;
  height: 200px !important;
}
button.btn-success {
  cursor: pointer;
}
.consent_wrapper {
  display: flex;
  justify-content: center;
  position: relative;
  align-items: center;
}
.contact_text3 {
  text-align: left;
  font: normal normal normal 16px/28px Noto Sans JP;
  letter-spacing: 0px;
  color: #25693D;
  text-decoration: none;
  margin: 0 0 0 10px;
}
.check_left {
  margin: 0 0 0 10px;  
}
.btn_wrapper {
  display: flex;
  justify-content: center;
  margin: 30px 0 0 0;
}
.btn_more9 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 210px;
  border-radius: 30px;
  padding: 12px;
  text-decoration: none;
  background-color: #ff7a00;
  border: #ff7a00;
}


/* validation */

#consent-error {
  position: absolute;
  left: 50%;
  margin-top: 35px;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  color: #D30001;
  font-weight: normal;
  font-size: 16px;
}
.validation-block {
  color: #fff;
}
.has-error .validation-block {
  text-align: left;
  color: #D30001;
}




/* bootstrap */
.btn {
  font-size: 15px;
  font-weight: 400;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  border-radius: 4px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  padding: 8px 20px;
}
.btn01 .btn {
  background-color: #009E96;
  width: 120px;
  margin-left: 20px;
  margin-left: 15px;
  color: #fff;
}
.modal-dialog {
    max-width: 600px;
    margin: 150px auto 0;
    width: calc(100% - 40px);
}
.modal-body {
  text-align: center;
}
.modal-footer {
  display: flex;
  justify-content: center;
}
.btn.btn-md {
  padding: 8px 20px !important;
  box-sizing: border-box;
}
.btn.btn-lg {
  padding: 18px 36px !important;
  box-sizing: border-box;
}
.btn:hover, .btn:active, .btn:focus {
  box-shadow: none !important;
  outline: none !important;
}
.btn-primary {
  background: #3958A7;
  color: #fff;
  border: 2px solid #3958A7;
}

.footer_text1 {
  text-align: center;
  font-size: 14px;
  color: #ccc;
  margin: 0 10px 0 0;
  text-decoration: none;
}
.common {
  background: #fff;
  min-height: 93vh;
  padding-top: 70px;
}
.common_text1 {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 20px 0;
}
.common_text2 {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  margin: 20px 0 0 0;
  background: #FF7A00;
  border-radius: 25px;
  color: #fff;
  text-decoration: none;
  padding: 10px 25px;
  display: inline-block;
  box-sizing: border-box;
}
.step_text1 {
  text-align: left !important;
  font-size: 0.8rem;
  line-height: 1;
}
.pc {
  display: block;
}
.sp {
  display: none;
}
.green {
  background-color: #EDF8EE;
}
.line_img {
  width: 40px;
  height: auto;
}
.footer_wrapper {
  width: 100%;
  max-width: 1200px;
  padding: 30px min(15%, 180px);
  box-sizing: border-box;

text-align: center;
}
@media screen and (max-width: 760px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .form1 {
    width: 89%;
    padding: 1.5rem;
  }
  .common {
    min-height: 85vh;
  }

  .heading {
    width: 100%;
    padding: 6.25rem 5.33%;
  }
  input.form-control,
  textarea.form-control {
    width: 100%;
  }
  select.form-select {
    width: 100%;
  }
  .footer_wrapper {
    width: 100%;
    max-width: 480px;
    padding: 20px min(5.333%, 20px);
  }
  .footer_text1 {
    width: 100%;
   margin: 0 auto 10px auto;
   text-align: center;
   display: block;
  }
  .V4-title {
   font-size: 1.6rem;
  }
  .V3-title {
   font-size: 1.5rem;
  }
  .step._v3 {
    height: 20rem;
  }
  .V3,
  .V6,
  .V7,
  .qa_area {
    padding: 4rem 0.6rem;
  }
  .V8 {
    padding: 4rem 0;
  }
  .V4 {
    padding-top: 4rem;
  }
  .line_img {
    width: 30px;
  }
}


/* 0502 */
.v7_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 30px 0;
}
.v7_block1,
.v7_block2 {
  width: 46%;
  margin: 0 3% 0 0;
}
.v7_block1 {
  border: 5px solid #D2D2D2;
}
.v7_block2 {
  border: 5px solid #25693D;
}
.v7_block:last-child {
  margin: 0;
}
.v7_title1 {
  background: #D2D2D2 0% 0% no-repeat padding-box;
    padding: 4% 0;
}
.v7_title2 {
  background: #25693D 0% 0% no-repeat padding-box;
    padding: 4% 0;
}
.v7_content1,
.v7_content2 {
    padding: 4%;
}
.v7_text1,
.v7_text1_2 {
  text-align: center;
  font: normal normal bold 34px/34px Noto Sans JP;
  letter-spacing: 0px;
  margin: 0;
}
.v7_text1 {
  color: #6D6D6D;  
}
.v7_text1_2 {
  color: #fff;    
}
.v7_text2,
.v7_text2_2 {
  text-align: center;
  font: normal normal normal 22px/34px Noto Sans JP;
  letter-spacing: 0px;
  margin: 0;
}
._color1 {
  color: #25693D;
  font-weight: 700;
}
.v7_text2 {
  color: #6D6D6D;
}
.v7_text2_2 {
  color: #25693D;
  font-weight: 700;
  margin: 0 0 20px 0;
}
.v7_text3 {
  text-align: center;
  font: normal normal normal 16px/24px Noto Sans JP;
  letter-spacing: 0px;
  color: #25693D;
  margin: 0 0 10px 0;
}
.v7_text4 {
  text-align: center;
  font: normal normal bold 22px/32px Noto Sans JP;
  letter-spacing: 0px;
  margin: 0;
}
.fv_text1 {
  font-size: 28px;
  line-height: 1;
  margin: 50px 0;
}
   .common h1 {
        font-size: 2em;
        color: #2c3e50;
        border-bottom: 2px solid #FF7A00;
        padding-bottom: 10px;
        margin-bottom: 40px;
    }

   .common h2 {
        font-size: 1.5em;
        color: #34495e;
        margin-top: 10px;
        margin-bottom: 15px;
        border-left: 5px solid #FF7A00;
        padding-left: 10px;
        text-align: left;
    }

    .common p, li {
        font-size: 1em;
        margin-bottom: 10px;
        text-align: left;
    }
    .common p {
      margin-bottom: 40px;
    }

    .common ol {
        padding-left: 20px;
        text-align: left;
        margin: 0 0 20px 0;
    }

    .common ol ol {
        padding-left: 30px;
        text-align: left;
    }
    .common ol ol li {
      position: relative;
      list-style-type: none;
    }
    .common ol ol li:before {
    position: absolute;
    right: calc(100% + 0.5rem);  /* 0.5remは連番とテキストとの余白 */
    content: "(" counter(list-item) ")";
    }
        .common ol ol ol {
          margin: 20px 0 0 0;
        }
    .common ol ol ol li {
    list-style-type: decimal;
    }
    .common ol ol ol li:before {
      content: none;
    }
  .common ul ul li {
      list-style-type: disc;    
  }

    .common p {
        text-align: justify;
    }

    .common .section {
        margin-bottom: 50px;
    }



@media screen and (max-width: 1080px) {
  .v7_block1,
  .v7_block2 {
    width: 89%;
    margin: 0 0 20px 0;
  }
}
@media screen and (max-width: 760px) {
  .v7_block1,
  .v7_block2 {
    width: 100%;
    margin: 0 0 20px 0;
  }
  .v7_text1,
  .v7_text1_2 {
    font-size: 21px;
   }
  .v7_text2,
  .v7_text2_2 {
    text-align: left;
    font-size: 16px;
  }
  .v7_text3 {
    text-align: left;
    font-size: 11px;
  }
  .img-FV-3 img{
    width: 90%;
  }
  .fv_text1 {
    font-size: 19px;
  }

  .common h1 {
      font-size: 1.8em;
  }

  .common h2 {
      font-size: 1.3em;
  }

}

/* 0623 */
.FV {
  padding: 2vw 0 5vw 0;
  box-sizing: border-box;
}
.block0 {
  height: 60px;
  background: #fff;
}
.fv_wrapper {
  position: relative;
  width: 100%;
}
.kv_img {
  width: 91%;
  margin: 0 auto;
}
.btn_link1 {
  display: inline-block;
  width: 26%;
  position: absolute;
  bottom: -8%;
  left: 50%;
  transform: translateX(-50%);
}
.btn_link1 img {
  width: 100%;
}
@media screen and (max-width: 760px) {
  .FV {
    padding: 2.667vw 0;
  }
  .header_logo {
    width: 114px; 
    height: auto;
  }
  .header {
    height: 55px;
  }
  .header-inner {
    height: 55px;    
  }
  .frame-nav.active {
    top: 55px;
  }
  .btn_link1 {
    width: 70%;
    bottom: 7%;
  }
  .block0 {
    height: 55px;
  }
}


/* 0927 */
.footer-upper {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 0 0 20px 0;
}

@media screen and (max-width: 760px) {
  .footer-upper {
    display: block;
  }

}


/* 0124 */
.what._point {
  padding-top: 0;
  padding-bottom: 0;
}

.V3._point {
 /* background: ; */
}

.V5-title p._point {
  font-size: 1.4rem;
}

.div-7._point li {
  font-size: 0.9rem;
}



/* 0119 */
.what_img {
  max-width: 1000px;
  width: 89%;
  margin: 0 auto;
}

.footer_img1 {
  width: 50px;
  margin: 20px 0 0 0;
}


@media screen and (max-width: 760px) {
  .what_img {
    max-width: 480px;
  }

}