@charset "utf-8";

/* ------------------------------------------------------
    ▼移行に伴い追記（PC）
---------------------------------------------------------*/

/* td padding 調整 */
body.form .contents table td{
  padding: 0 0 25px !important;
}

/* 電話番号・メールアドレス調整 */
body.form .contents table .form-tel th,
body.form .contents table .form-email th {
  display: block;
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 16px;
  width: auto;
}
body.form .contents table .form-tel td,
body.form .contents table .form-email td {
  display: block;
  margin-bottom: 25px;
  padding-bottom: 25px;
  border-bottom: 1px solid #e8e8e8;
  font-size: 16px;
}
body.form .contents.confirm table .form-tel th,
body.form .contents.confirm table .form-email th {
  font-size: 14px;
}
body.form .contents.confirm table .form-tel td,
body.form .contents.confirm table .form-email td {
  font-size: 16px;
}
body.form .contents table .form-tel input[type=tel],
body.form .contents table .form-email input[type=text] {
  box-sizing: border-box;
  padding: 15px 1.5em;
  width: 100%;
  background: #f2fcfe;
  border: 1px solid #a8a8a8;
  border-radius: 5px;
  font-size: 16px;
}

/* 同意チェック padding 調整 */
.agree-acquisition-personal-information{
    padding: 0px 0px 15px !important;
}

/* 同意チェックなし */
input#btn-submit:disabled{
  opacity: 1;
  cursor:default;

  color: #fff;
  background: #dfdfdf;
  font-size: 18px;
  width: 160px;
  padding: 15px 1.5em;
  border: none;
  border-radius: 5px;
  font-weight: 600;
  margin-right: 15px;
}

/* 個別調整 */
body.form .contents table .form-email #item03,
body.form .contents table .form-tel #item04{
  width: 70%;
}

/* ------------------------------------------------------
    ▲移行に伴い追記（PC）
---------------------------------------------------------*/





/* 項目のクラス名は毎回変わる →「毎回変わる」で検索 */

/* 背景 */
body.form { 
  background-color: #bbeeeb;
}

/* ------------------------------------------------------
    レイアウト
   ------------------------------------------------------ */

/* ページ最小横幅指定 */
body.form { min-width: 680px; }

/* --コンテンツの幅指定-- */
body.form #wrapper {
  width: 680px;
  min-height: 100vh;
}
/* --フォームの左右余白-- */
body.form #wrapper .contents {
  box-sizing: border-box;
  padding: 30px;
  border-radius: 10px;
  background: #fff;
}
/* --完了画面-- */
body.form #wrapper .contents.complete {
  min-height: 180px;
}
/* --フッター-- */
body.form #wrapper .footer {
  padding-bottom: 60px;
}
/* ヘッダー画像 */
body.form #wrapper .title img { width: 100%; }

/* ------------------------------------------------------
    フォーム
   ------------------------------------------------------ */

/* --フォームの横幅指定を解除-- */
body.form .input-form,
body.form .contents table,
body.form .contents .entry,
body.form .footer .link-group,
body.bbs-form .contents form,
body.bbs-form .contents table,
body.bbs-form .footer .link-group,
body.bbs-list .footer .link-group {
  width: auto;
}

body.form .contents table { width: 100%; }

/* --項目名-- */
body.form .contents table .form-img th,
body.form .contents table .form-text th,
body.form .contents table .form-hr th,
body.form .contents table .form-textbox th,
body.form .contents table .form-textarea th,
body.form .contents table .form-select th,
body.form .contents table .form-radio th,
body.form .contents table .form-checkbox th,
body.form .contents table .form-photo th,
body.form .contents table .form-movie th {
  display: block;
  margin-bottom: 15px;
  font-weight: bold;
  font-size: 16px;
  width: auto;
}

body.form .contents table td { width: 100%; }

/* 【追加】--入力内容-- */
body.form .contents table .form-textbox td,
body.form .contents table .form-textarea td,
body.form .contents table .form-select td,
body.form .contents table .form-radio td, 
body.form .contents table .form-checkbox td, 
body.form .contents table .form-photo td,
body.form .contents table .form-movie td {
  display: block;
  margin-bottom: 25px;
  padding-bottom: 25px;
  border-bottom: 1px solid #e8e8e8;
  font-size: 16px;
}
body.form .contents table .form-radio td,
body.form .contents table .form-checkbox td{
  padding-bottom: 0;
}
/* 【追加】--画像付きラジオボタン・チェックボタン-- */
body.form .contents table .form-radio td,
body.form .contents table .form-checkbox td{
  display: flex;
  flex-wrap: wrap;
}
/* 【追加】--確認画面　項目名-- */
body.form .contents.confirm table .form-img th,
body.form .contents.confirm table .form-text th,
body.form .contents.confirm table .form-hr th,
body.form .contents.confirm table .form-textbox th,
body.form .contents.confirm table .form-textarea th,
body.form .contents.confirm table .form-select th,
body.form .contents.confirm table .form-radio th,
body.form .contents.confirm table .form-checkbox th,
body.form .contents.confirm table .form-photo th,
body.form .contents.confirm table .form-movie th {
  font-size: 14px;
}
/* 【追加】--確認画面　入力内容-- */
body.form .contents.confirm table .form-textbox td,
body.form .contents.confirm table .form-textarea td,
body.form .contents.confirm table .form-select td,
body.form .contents.confirm table .form-radio td, 
body.form .contents.confirm table .form-checkbox td, 
body.form .contents.confirm table .form-photo td,
body.form .contents.confirm table .form-movie td {
  font-size: 16px;
}

body.form .contents table .required {
  font-weight: bold;
  color: #03c2b8;
  margin-left: .5em;
}
body.form .contents table .required::after{
  content: "必須";
  width: 2em;
  font-size: 12px;
}

/* --画像-- */
body.form .contents table .form-img .img {
  margin-bottom: 20px;
}
body.form .contents table .form-img .img img {
  width: 100%;
  vertical-align: bottom;
}

/* --テキスト-- */
body.form .contents table .form-text .text {
  box-sizing: border-box;
  padding: 20px;
  margin-bottom: 40px;
  background: #f5f8fc;
  font-size: 14px;
  text-align: left;
  line-height: 1.8;
  font-weight: 400;
}

/* 【追加】--テキスト-- */
body.form h1{
  margin-bottom: 0;
}
body.form h2{
  display: none;
}
body.form .contents .text1{
  font-size: 13px;
  margin-bottom: 50px;
  line-height: 1.6;
  text-align: left;
  border-radius: 10px;
  letter-spacing: .05em;
}
body.form .contents .text1 a{
  color: #027deb;
}
body.form .contents .text1 .red{
  color: #ff1b2a;
}
body.form .contents .text1 .caution{
  display: block;
  padding: 10px 20px 20px;
  background: #fff8e1;
  border-radius: 10px;
  margin-bottom: 20px;
}
body.form .contents .text1 .caution .text1-tit{
  border-left: none;
  padding-left: 0;
}
body.form .contents .text2,
body.form .contents .text3{
font-weight: bold;
font-size: 18px;
margin-bottom: 20px;
}
body.form .form-error{
  margin-bottom: 60px;
  color: #ff1b2a;
  font-weight: bold;
  font-size: 16px;
  text-align: left;
}
body.form .contents .form-error li{
  margin-bottom: 10px;
}
.file-name-view{
  color: #428bca;
  font-size: 16px;
}

/* --区切り線-- */
body.form .contents table .form-hr .form-hr hr {
  margin-bottom: 20px;
}

/* --入力枠-- */
body.form .contents input,
body.form .contents textarea {
  padding: 15px 1.5em;
  margin-bottom: 0;
}
body.form .contents textarea {
  resize: vertical;
  box-sizing: border-box;
  width: 100%;
  background: #f2fcfe;
  border-radius: 5px;
}
body.form .contents table .form-textbox input[type=text] {
  box-sizing: border-box;
  padding: 15px 1.5em;
  width: 100%;
  background: #f2fcfe;
  border: 1px solid #a8a8a8;
  border-radius: 5px;
  font-size: 16px;
}

/* ▼ #item01の番号は毎回変わる ▼ */
/* ▼ 指定しなければ100% ▼ */
/* 【追加】--年齢-- */
body.form .contents table .form-textbox #item06{
  width: 20%;
}
/* 【追加】--郵便番号-- */
body.form .contents table .form-textbox #item01,
body.form .contents table .form-textbox #item02{
  width: 40%;
}
/* 【追加】--番地-- */
body.form .contents table .form-textbox #item03{
	width: 70%;
  }
body.form .contents table .form-textbox #item04{
  width: 60%;
}
/* 【追加】--電話番号-- */
body.form .contents table .form-textbox #item07{
  width: 70%;
}

/* --プルダウンメニュー-- */
body.form .form-select select {
  width: auto;
  padding: 15px 1.5em;
  font-size: 16px;
  border-radius: 5px;
}
/* --ラジオボタン・チェックボックス-- */
body.form .form-radio .item,
body.form .form-checkbox .item {
  background: #f5f5f5;
  text-align: left;
  margin-bottom: 20px;
  margin-right: 3%;
  width: 100%;
  border-radius: 5px;
}
/* 【追加】性別--ラジオボタン・チェックボックス-- */
/* ▼ #item10の番号は毎回変わる ▼ */
body.form .form-radio.item00 .item{
  width: 120px;
}
body.form .form-radio .item label,
body.form .form-checkbox .item label{
  display: inline-block;
  box-sizing: border-box;
  padding: 15px;
  width: 100%;
  height: 100%;
}
/* 【追加】--画像付きラジオボタン・チェックボタン-- */
/* ▼ #item16、#item17の番号は毎回変わる ▼ */
body.form .form-radio.item00 td,
body.form .form-checkbox.item00 td{
  justify-content: space-between;
}
body.form .form-radio.item00 .item,
body.form .form-checkbox.item00 .item{
  text-align: center;
  width: 30%;
}
body.form .form-radio.item00 .item:nth-child(3n),
body.form .form-checkbox.item00 .item:nth-child(3n){
  margin-right: 0;
}

body.form .form-radio .item img,
body.form .form-checkbox .item img {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 100%;
}
body.form .form-radio .item input,
body.form .form-checkbox .item input {
  display: inline-block;
}

body.form .contents table .form-zipcode-btn:hover {
  opacity: 0.5;
}

/* --画像投稿・動画投稿-- */
body.form .contents table .form-image,
body.form .contents table .form-video,
body.form .contents table .form-photo,
body.form .contents table .form-movie {
  word-break: break-all;
}
/* 【追加】--画像選択ボタン・動画選択ボタン-- */
/* ▼ 郵便番号検索ボタンと同じスタイル ▼ */
body.form .contents table .form-image button,
body.form .contents table .form-video button{
  color: #fff;
  background: #03c2b8;
  font-size: 14px;
  padding: 10px 1em;
  border: none;
  border-radius: 25px;
}
body.form .contents table .form-image button:hover,
body.form .contents table .form-video button:hover{
  opacity: .5;
}

/* --確認ボタン-- */
body.form .btn-set {
  margin-bottom: 20px;
}

/* 【追加】--確認ボタン・登録するボタン-- */
body.form .contents .btn-set input[type=button]{
  color: #fff;
  background: #03c2b8;
  font-size: 18px;
  width: 160px;
  padding: 15px 1.5em;
  border: none;
  border-radius: 5px;
  font-weight: 600;
  margin-right: 15px;
}
/* 【追加】--リセットボタン-- */
body.form .contents .btn-set input[type=reset],
body.form .contents .btn-set input#btn-back[type=button]{
  color:#03c2b8;
  background: #fff;
  font-size: 18px;
  width: 160px;
  padding: 14px 1.5em;
  border: 2px solid #03c2b8;
  border-radius: 5px;
  font-weight: 600;
  margin-right: 0;
}
body.form .contents input.btn-send:hover,
body.form .contents input.btn-reset:hover{
  opacity: .5;
}

/* --閉じるボタン-- */
body.form .footer .link-close {
  margin-bottom: 0;
}
body.form .footer .link-close a {
  display: inline-block;
  color: #333;
  font-size: 18px;
  text-align: center;
  text-decoration: none;
  font-weight: 600;
  position: relative;
}
/* 【追加】--閉じるボタンのバツ-- */
body.form .footer .link-close a::before{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: -1.5em;
  width: 20px;
  height: 3px;
  margin-top: -2px;
  background: #000;
  transform: rotate(45deg);
}
body.form .footer .link-close a::after{
display: block;
content: "";
position: absolute;
top: 50%;
left: -1.5em;
width: 20px;
height: 3px;
margin-top: -2px;
background: #000;
transform: rotate(-45deg);
}
body.form .footer .link-close a:hover {
  opacity: 0.5;
}


/* ------------------------------------------------------
    スマートフォン対応
   ------------------------------------------------------ */
@media screen and (max-width: 680px){


/* ------------------------------------------------------
    ▼移行に伴い追記（SP）
---------------------------------------------------------*/

  /* 電話番号・メールアドレス調整 */
  body.form .contents table .form-tel input[type=tel],
  body.form .contents table .form-email input[type=text] {
    padding: 12px 1em;
  }
  body.form .contents table .form-tel th,
  body.form .contents table .form-email th {
    margin-bottom: 15px;
    font-size: 16px;
  }
  body.form .contents table .form-tel td,
  body.form .contents table .form-email td {
    width: 100%; 
    /* margin-bottom: 20px;
    padding-bottom: 20px; */
    font-size: 16px;
  }
  body.form .contents table .form-tel td,
  body.form .contents table .form-email td {
    font-size: 14px;
  }
  body.form .contents.confirm table .form-tel th,
  body.form .contents.confirm table .form-email th {
    font-size: 16px;
  }

  /* 同意チェック padding 調整 */
  .agree-acquisition-personal-information{
    padding: 0px 0px 10px !important;
  }

  /* チェックボックスとラベルのズレ */
  input[type="checkbox"]{
    vertical-align:middle;
  }

  /*同意チェックなし*/
  input#btn-submit:disabled{
    opacity: 1;
    cursor:default;

    color: #fff;
    background: #dfdfdf;
    font-size: 16px;
    width: 120px;
    padding: 10px 1.5em;
    margin-right: 10px;
  }

  /* 個別調整 */
body.form .contents table .form-textbox #item01,
body.form .contents table .form-textbox #item02{
  width: 70%;
}


/* ------------------------------------------------------
    ▲移行に伴い追記（SP）
---------------------------------------------------------*/


  /* ページ横幅指定解除 */
  body.form { min-width: 100%; }

  /* --コンテンツの幅指定を解除-- */
  body.form #wrapper { width: 100%; }

  /* フォームの左右余白 */
  body.form #wrapper .contents {
    width: 100%;
    padding: 20px 5%;
  }

  /* --入力枠横幅-- */
  body.form .contents table .form-textbox input[type=text] {
    padding: 12px 1em;
  }

  /* ------------------------------------------------------
    フォームのラベルと入力項目を横並びにする場合は下記を削除
   ------------------------------------------------------ */
  /* --項目名-- */
  body.form .contents table .form-img th,
  body.form .contents table .form-text th,
  body.form .contents table .form-hr th,
  body.form .contents table .form-textbox th,
  body.form .contents table .form-textarea th,
  body.form .contents table .form-select th,
  body.form .contents table .form-radio th,
  body.form .contents table .form-checkbox th,
  body.form .contents table .form-photo th,
  body.form .contents table .form-movie th {
    margin-bottom: 15px;
    font-size: 16px;
  }
  /* --入力内容-- */
  body.form .contents table .form-textbox td,
  body.form .contents table .form-textarea td,
  body.form .contents table .form-select td,
  body.form .contents table .form-radio td,
  body.form .contents table .form-checkbox td,
  body.form .contents table .form-photo td,
  body.form .contents table .form-movie td {
    width: 100%; 
    /* margin-bottom: 20px;
    padding-bottom: 20px; */
    font-size: 16px;
  }
  body.form .contents table .form-radio td,
  body.form .contents table .form-checkbox td{
    padding-bottom: 0;
  }

  body.form .contents table td { width: 100%; }
  /* 【追加】--入力内容-- */
  body.form .contents table .form-textbox td,
  body.form .contents table .form-textarea td,
  body.form .contents table .form-select td,
  body.form .contents table .form-radio td, 
  body.form .contents table .form-checkbox td, 
  body.form .contents table .form-photo td,
  body.form .contents table .form-movie td {
    font-size: 14px;
  }
  /* 【追加】--確認画面　項目名-- */
  body.form .contents.confirm table .form-img th,
  body.form .contents.confirm table .form-text th,
  body.form .contents.confirm table .form-hr th,
  body.form .contents.confirm table .form-textbox th,
  body.form .contents.confirm table .form-textarea th,
  body.form .contents.confirm table .form-select th,
  body.form .contents.confirm table .form-radio th,
  body.form .contents.confirm table .form-checkbox th,
  body.form .contents.confirm table .form-photo th,
  body.form .contents.confirm table .form-movie th {
    font-size: 16px;
  }

  body.form .contents .text2,
  body.form .contents .text3{
  font-size: 16px;
  }
  /* --入力枠-- */
  body.form .contents input,
  body.form .contents textarea {
    padding: 12px 1.5em;
  }
  /* --プルダウンメニュー-- */
  body.form .form-select select {
    padding: 12px 1.5em;
  }
  body.form .contents table .form-textbox input[type=text] {
    padding: 12px 1.5em;
  }

/* 【追加】--年齢-- */
/*
body.form .contents table .form-textbox #item06{
  width: 30%;
}
*/
/* 【追加】--郵便番号-- */
/*
body.form .contents table .form-textbox #item01{
  width: 40%;
}
*/
/* 【追加】--番地-- */
/*
body.form .contents table .form-textbox #item04{
  width: 70%;
}
*/
/* 【追加】--電話番号-- */
/*
body.form .contents table .form-textbox #item07{
  width: 70%;
}
*/

  /* 【追加】--画像付きラジオボタン・チェックボタン-- */
  body.form .form-radio.item00 .item,
  body.form .form-checkbox.item00 .item{
    width: 47%;
  }
  body.form .form-radio.item00 .item:nth-child(3n),
  body.form .form-checkbox.item00 .item:nth-child(3n){
    margin-right: 3%;
  }
  body.form .form-radio.item00 .item:nth-child(2n),
  body.form .form-checkbox.item00 .item:nth-child(2n){
    margin-right: 0;
  }
  
  /* 【追加】--画像選択ボタン・動画選択ボタン-- */
  body.form .contents table .form-image button:hover,
  body.form .contents table .form-video button:hover{
    opacity: 1;
  }
  /* 【追加】--確認ボタン・登録するボタン-- */
  body.form .contents .btn-set input[type=button]{
    color: #fff;
    background: #03c2b8;
    font-size: 16px;
    width: 120px;
    padding: 10px 1.5em;
    margin-right: 10px;
  }
  /* 【追加】--リセットボタン-- */
  body.form .contents .btn-set input[type=reset],
  body.form .contents .btn-set input#btn-back[type=button]{
    color:#03c2b8;
    background: #fff;
    font-size: 16px;
    width: 120px;
    padding: 9px 1.5em;
    margin-right: 0;
  }
  body.form .contents input.btn-send:hover,
  body.form .contents input.btn-reset:hover{
    opacity: 1;
  }

  /* --閉じるボタン-- */
  body.form .footer .link-close a {
    font-size: 16px;
  }
  /* 【追加】--閉じるボタンのバツ-- */
  body.form .footer .link-close a::before,
  body.form .footer .link-close a::after{
    width: 18px;
  }
  body.form .footer .link-close a:hover {
    opacity: 1;
  }

}

/* ------------------------------------------------------
    スマートフォン対応
   ------------------------------------------------------ */
   @media screen and (max-width: 480px){
       /* --項目名-- */
    body.form .contents table .form-img th,
    body.form .contents table .form-text th,
    body.form .contents table .form-hr th,
    body.form .contents table .form-textbox th,
    body.form .contents table .form-textarea th,
    body.form .contents table .form-select th,
    body.form .contents table .form-radio th,
    body.form .contents table .form-checkbox th,
    body.form .contents table .form-photo th,
    body.form .contents table .form-movie th {
      margin-bottom: 10px;
      padding-top: 0;
      padding-bottom: 0;
    }
   }