@charset "UTF-8";
/* CSS Document */

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

/*-------------------------------------------------------------------------------------
PC用レイアウト（769px以上のスクリーン）
----------------------------------------------------------------------------------------*/

/*--------------------------------------------------
全体レイアウト／背景設定（PC）
-----------------------------------------------------*/
/*記事(ボディ)エリア*/
.article {
  background-color: #fff;
  font-size: 1.6em; /*=16px*/
}

.article{
	width: 100%;
}

/*カラム全体の幅を変更する*/
.top_image_in,.section_inr {
  width: 950px;
  margin: 0 auto; /*真ん中に要素を置きたいときに使う*/
}

.pc_bg{
  background-color: #e7f5ff;
  margin: 0 auto;
  display: flex;
  justify-content: center;

}

.pc_contents_border{
  border: 1px solid #ccc; /* ← ここで境界線 */
    box-sizing: border-box;
}

.pc_header_bg{
  background-color: #f3ffef;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}




/*--------------------------------------------------
上部固定ヘッダー設定
-----------------------------------------------------*/
/*上部固定ヘッダー全体*/
.header {
  max-width: 720px;
  margin: 0 auto;
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 5000;
  max-width: 720px;
  margin: 0 auto;
  border: 1px solid #ccc;
  box-sizing: border-box;
  /* overflow: auto; は削除 */
 
}

/*ヘッダー内部をカラム幅にする*/
.header_inr {
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  display: flex;
  background-color: #fff;

  
}

/*ヘッダーのロゴ*/
.header_logo{
  float: left;
  width: 40%;
  margin: 0.5em 0.5em 0 ;
    
  }
  
  
  /*ヘッダーの問い合わせボタン*/
  .header_btns {
  display: flex;
  justify-content: flex-end; /* 右寄せ */
  width: 60%;              /* 横幅いっぱいに広げる */
  margin: 0;                /* 余計な外余白をリセット */
  padding: 0;               /* 内余白もリセット */
  box-sizing: border-box;   /* 念のため */
}


  .header_line {
     width: 20%;
    
  }
  
  .header_mail {
     width: 20%;
  }





 


/*--------------------------------------------------
ファーストビュー設定
-----------------------------------------------------*/
.top_image {
  max-width: 720px;
  margin: 0 auto;
  background-image: none;
}

.top_image{
  margin-bottom: 0;
}

/*--------------------------------------------------
CTA
-----------------------------------------------------*/

.cta_area {
  max-width: 720px;
  margin: 0 auto;
background-color: #ffa502;
  padding: 1.6em 1em 2em;
}

.cta_inr{
  background-color: #fff;
  padding: 0.9em 0.7em 1em;
}

.cta_title{
  text-align: center;
  margin-bottom: 0.6em;
}

.cta_btn_mail,.cta_btn_line{
  margin-bottom: 0.7em;
}

.cta_btn_tel{
  margin-bottom: 0.2em;
}

.cta_pc_tel{
  display: none;
}

.cta_btn_flex{
  display: flex;
  
  gap: 0.1em;
}

.cta_inr_title{
  margin-bottom: 0.8em;
}

.campaign{
  margin-top: 1em;
}







/*--------------------------------------------------
悩み
-----------------------------------------------------*/
.section_nayami{
  max-width: 720px;
  margin: 0 auto;

}

.nayami_title{
  margin: 0 0.7em 1em;
}

.nayami_inr{
  padding: 1.3em 0.8em 4em;
  background-color: #eae6e3;
}

.nayami_contents{
  margin: 1em 0 1em;
}

.nayami_triangle{
  text-align: center;
  margin-top: 1em;
}

.nayami_kaiketsu{
  margin-top: -2.26em;
}

/*--------------------------------------------------
注意喚起
-----------------------------------------------------*/
.section_chuikanki{
max-width: 720px;
  margin: 0 auto;
}


/*--------------------------------------------------
理由
-----------------------------------------------------*/
.section_reason{
  max-width: 720px;
  margin: 0 auto;
  padding: 1em 0 0em;

}

.reason_title{
  margin: 0 0.6em 1em;
}

.reason_top_img{
  width: 90%;
  margin: 0 auto;
}

.reason_inr{
  background-color: #2fb700;
 padding: 0.8em 0em 1.2em;
  
}


.reason_01,.reason_02,.reason_03,.reason_04,.reason_05{
 
  margin: 0 0.8em 1.5em;
}


/*--------------------------------------------------
料金
-----------------------------------------------------*/
.section_price{
  max-width: 720px;
  margin: 0 auto;
  background-color: #fff002;
  padding: 1.8em 0.8em 1em;

}

.price_title{
  text-align: center;
  margin-bottom: 1.5em;
}

.price_hosoku{
  margin-top: 1.4em;
}

.price_arrow{
  text-align: center;
  margin-top: 1em;
}




/*--------------------------------------------------
step
-----------------------------------------------------*/
.section_step{
  max-width: 720px;
  margin: 0 auto;

  padding: 1.8em 0.8em 1.2em;
  background-color: #2fb700;

}

.step_title{
 
  margin: 0 auto;
  margin-bottom: 1.8em;
  
}

.step_inr img{
  margin-bottom: 0.6em;
}

.step_triangle{
  text-align: center;
 
}




/*--------------------------------------------------
お客様の声
-----------------------------------------------------*/
.section_voice{
  max-width: 720px;
  margin: 0 auto;
  background-color: #fff;
padding: 0.8em 0.8em 1.5em;

  }

  .voice_title{
    margin-bottom: 1.5em;
  }





  .voice_01{
    
  }

  .voice_02{
    margin-top: 1.4em;
  }

  .voice_03{
    margin-top:1.4em ;
  }





/*--------------------------------------------------
qa
-----------------------------------------------------*/
.section_qa{
  max-width: 720px;
  margin: 0 auto;
  background-color:#ffe6cc;
  padding: 2em 0.8em 2.5em;
 
  
}

.qa_title{
  width: 100%;
  margin: 0 auto;
  margin-bottom: 1.8em;
}

.qa_01,.qa_02,.qa_03,.qa_04{

  margin-bottom: 1.5em;
}






/*--------------------------------------------------
フッター部分
-----------------------------------------------------*/
.footer {
  max-width: 720px;
  margin: 0 auto;
  padding: 0.6em 0em;
  text-align: center;
  font-size: 0.8em;
  background-color: #fff;
}

.footer p{
  font-family:'Hiragino Kaku Gothic ProN';
  color: #000;
}

/* ▼▼▼ ここからプライバシーポリシー用のCSSを `style.css` の最後に追加 ▼▼▼ */
.policy-page {
  font-family:'Hiragino Kaku Gothic ProN'; 
  max-width: 800px;
  width: 90%;  /* 追加 */
  margin: 0 auto;
  padding: 0.8em;
  background: #f9f9f9;
  
  
}

.policy-page h1 {
  text-align: center;
  font-size: 1.4em;
}

.policy-page section {
  background: white;
  padding: 0.8em;
  margin: 0.8em 0;
  border-radius: 1px;
}

.policy-page h2 {
  font-size: 1.4em;
  color: #222222;
  border-bottom: 2px solid #ccc;
  padding-bottom: 1em;
}

.policy-page p {
  font-size: 1em;
  color: #222222;
}

.back-button {
  display: block;
  text-align: center;
  padding: 0.8em;
  background: #ddd;
  color: #222222;
  text-decoration: none;
  border-radius: 1px;
  margin-top: 20px;
  
}

.back-button:hover {
  background: #ccc;
}

.bk_btn{
  text-align: center;
}




/* ▼▼▼ ここからフォーム用のCSSを `style.css` の最後に追加 ▼▼▼ */

/* リセット用 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.contact-page {
  font-family:'Hiragino Kaku Gothic ProN'; 
  background: #f9f9f9;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2em 1.5em; /* 内側の余白 */
}

.form_p {
  text-align: center;
  font-size: 2.5em; /* 見出しのサイズ */
  color: #222222;
  margin-bottom: 0.7em;
}

.form_hosoku {
  font-size: 1.1em;
  color: #222222;
  margin-bottom: 1.5em;
  text-align: center;
}

/* フォーム設定 */
.contact-page form {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 40em;
  padding: 0.2em 1.2em;
  background: white;
  border-radius: 2px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.contact-page label {
  display: block;
  margin-top: 1.5em;
  font-weight: bold;
}

.contact-page input,
.contact-page select,
.contact-page textarea {
  width: 100%;
  max-width: 35em;
  padding: 1em;
  margin-top: 0.5em;
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 1.2em;
  background-color: white;
}

.contact-page button {
  display: block;
  width: 100%;
  max-width: 35em;
  margin: 2em auto;
  padding: 1em;
  background: #eb9a63;
  color: white;
  border: none;
  border-radius: 2px;
  font-size: 1.2em;
  cursor: pointer;
}

.contact-page button:hover {
  background: #d17a42;
}

.contact-page textarea {
  height: 200px; /* ←ここを追加または調整 */
}


/* 戻るボタン */
.back-button {
  display: block;
  width: 100%;
  max-width: 35em;
  margin: 2em auto;
  text-align: center;
  padding: 1em;
  background: #ddd;
  color: #333;
  text-decoration: none;
  border-radius: 0.5em;
}

.back-button:hover {
  background: #ccc;
}

.contact-page select {
  width: 100%;
  max-width: 35em;
  padding: 1em;
  margin-top: 0.5em;
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 1.2em;
  background-color: white;
  appearance: none; /* 可能なら、ブラウザごとのデフォルト矢印を非表示 */
}


.privacy-policy-box {
  margin-top: 20px;
  max-width: 600px;
}

.privacy-scroll {
  border: 1px solid #ccc;
  padding: 15px;
  height: 200px;
  overflow-y: scroll;
  background-color: #f9f9f9;
  font-size: 14px;
  line-height: 1.8;
}

.privacy-policy-box {
  margin-top: 20px;
  max-width: 600px;
}

.privacy-scroll {
  border: 1px solid #ccc;
  padding: 15px;
  height: 200px;
  overflow-y: scroll;
  background-color: #f9f9f9;
  font-size: 14px;
  line-height: 1.8;
}

h2 {
  font-size: 18px; /* h2を少し小さく */
  margin-top: 2em;
}




/* ▲▲▲ ここまでを `style.css` の最後に追加 ▲▲▲ */
	
	
/* サンクスページのスタイル */
.thanks-page {
  font-family:'Hiragino Kaku Gothic ProN'; 
  max-width: 800px;
  width: 90%;
  margin: 0 auto;
  padding: 0.3em;
  background: #fff;
  text-align: center;
}

.thanks-page h1 {
  font-size: 1.6em;
  margin-bottom: 1em;
  font-weight: normal;
  margin-top: 1em;
  color: #000;
}

.thanks-page p {
  font-size: 1.2em;
  color: #222222;
  margin-bottom: 1.5em;
  background-color: #f6f8f9;
  padding: 1.2em 0.8em;
}

.back-button {
  display: inline-block;
  padding: 10px 20px;
  background: #ccc;
  color: #222222;
  text-decoration: none;
  border-radius: 1px;
}

.back-button:hover {
  background: #ccc;
}

.required-mark {
  color: red;
  font-weight: bold;
  margin-left: 0.25em;
}








.fixed-buttons {
  position: fixed;
  bottom: 0em;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.9); /* 白の透明 */
  display: flex;
  justify-content: center;
  gap: 0.5em; /* ボタンの間隔 */
  padding: 0.5em 0 0.1em;
  z-index: 1000;

  /* ふんわり表示対応 */
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.fixed-buttons.show {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.buttom_fix_tel a img,
.fixed-buttons img {
  width: 60%;
  margin: 0 auto;
  height: auto;
  display: block;
}

.buttom_fix_tel{
  margin: 0 0.8em;
}

.buttom_fix_tel {
  position: relative;
  display: inline-block;
  overflow: hidden;
  line-height: 0;
}

.buttom_fix_tel::after {
  content: "";
  position: absolute;
  top: -100%;
  left: -100%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: rotate(25deg);
  animation: shine 3s infinite;
  pointer-events: none;
  opacity: 0;
}

@keyframes shine {
  0% {
    transform: translateX(-100%) rotate(25deg);
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  30% {
    transform: translateX(100%) rotate(25deg); /* ゆっくり移動 */
    opacity: 1;
  }
  35% {
    opacity: 0;
  }
  100% {
    transform: translateX(100%) rotate(25deg);
    opacity: 0;
  }
}


/* 特商法ページのスタイル */
#commercial-law {
  max-width: 800px;
  margin: 30px auto;
  padding: 20px;
  background-color: #f5f5f5;
  border-radius: 8px;
  text-align: left;
  font-size: 16px;
  margin-top: 0;
}

#commercial-law h2 {
  font-size: 24px;
  color: #333;
  margin-bottom: 20px;
  text-align: center;
}

#commercial-law table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

#commercial-law td {
  padding: 8px;
  border: 1px solid #ddd;
}

#commercial-law td:first-child {
  font-weight: bold;
  width: 30%;
}

#commercial-law td a {
  color: #4CAF50;
  text-decoration: none;
}

#commercial-law td a:hover {
  text-decoration: underline;
}

/* 戻るボタンのスタイル */
.return-home {
  display: inline-block;
  padding: 12px 20px;
  background-color: #4CAF50;
  color: white;
  text-decoration: none;
  border-radius: 4px;
  font-size: 16px;
  margin-top: 20px;
}

.return-home:hover {
  background-color: #45a049;
}

/* 戻るボタンのスタイル */
.return-home {
  display: block;  /* 変更: inline-block → block */
  width: 200px;    /* 追加: ボタンの幅を指定 */
  padding: 12px 20px;
  background-color: #4CAF50;
  color: white;
  text-decoration: none;
  border-radius: 4px;
  font-size: 16px;
  margin: 20px auto;  /* 変更: margin-top と margin-left, margin-right を auto にして中央揃え */
  text-align: center;  /* 追加: 中央揃えを補完 */
}

.return-home:hover {
  background-color: #45a049;
}
















}