@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;700;900&display=swap");
@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700italic,700,900);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800);
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
/*****************************************************

 フォーム
 
*****************************************************/
.contactform_container {
  width: 94%;
  margin: 0 auto; }
  .contactform_container ul {
    width: 100%;
    margin: 20px 0;
    padding-left: 28px;
    box-sizing: border-box; }
    .contactform_container ul li {
      /*padding-left:16px;text-indent:-16px;box-sizing: border-box;*/
      list-style: disc; }
  .contactform_container h3 {
    padding-left: 20px;
    font-size: 24px;
    color: #003c60;
    font-weight: bold;
    margin-bottom: 20px; }
    .contactform_container h3:last-of-type {
      margin-top: 40px; }
  .contactform_container p {
    font-size: 16px; }
  .contactform_container table {
    width: 100%;
    margin-top: 50px;
    table-layout: fixed;
    border-collapse: collapse; }
    .contactform_container table tr:last-child th {
      border-bottom: none;
      vertical-align: top; }
    .contactform_container table tr:last-child td {
      border-bottom: none; }
    .contactform_container table th {
      width: 30%;
      border-bottom: 1px solid #43A6A1;
      font-size: 16px;
      color: #333;
      padding: 26px 0 26px 20px;
      box-sizing: border-box; }
      .contactform_container table th span {
        font-size: 14px;
        color: #FFF;
        text-align: center;
        padding: 2px 15px;
        background: #c30d23;
        float: right; }
      .contactform_container table th .multi_line {
        display: inline-block;
        vertical-align: middle; }
    .contactform_container table td {
      border-bottom: 1px solid #c6c6c6;
      font-size: 16px;
      color: #333;
      padding: 20px 40px;
      box-sizing: border-box; }

.agreementicon {
  font-size: 14px;
  color: #FFF;
  text-align: center;
  padding: 2px 14px;
  background: #c30d23;
  margin-right: 16px; }

.confirm_box {
  width: 100%;
  margin: 0 auto;
  display: block;
  background: #7a6a56;
  color: #FFF;
  padding: 10px;
  box-sizing: border-box; }

.policy_title {
  font-size: 18px;
  padding: 10px 0 0;
  text-align: center; }

.privacypolicy {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 300px;
  margin: 24px auto;
  padding: 24px;
  border: 1px #CCCCCC solid;
  background: #efefef;
  overflow-y: scroll;
  text-align: left !important; }
  .privacypolicy p {
    text-align: left !important; }
  .privacypolicy h4 {
    margin: 40px 0 20px;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #fff; }
    .privacypolicy h4:first-child {
      margin-top: 0; }

.privacypolicy::-webkit-scrollbar {
  width: 8px; }

.privacypolicy::-webkit-scrollbar-track {
  background: #ccc; }

.privacypolicy::-webkit-scrollbar-thumb {
  background: #999; }

.privacypolicy_checkbox_container {
  width: 100%;
  text-align: center; }

/*PHP版フォームで使用*/
#formWrap h3 {
  font-size: 24px;
  color: #003c60;
  font-weight: bold;
  margin-bottom: 40px; }

.form_table {
  width: 90%;
  margin: 40px auto;
  border-collapse: collapse; }
  .form_table th {
    width: 30%;
    border-bottom: 1px solid #227482;
    font-size: 16px;
    color: #333;
    padding: 26px 20px;
    box-sizing: border-box;
    text-align: center; }
  .form_table td {
    width: 70%;
    border-bottom: 1px solid #ccc;
    font-size: 16px;
    color: #333;
    padding: 20px 40px;
    box-sizing: border-box; }

.form_h3 {
  box-sizing: border-box; }

.form_section {
  padding: 120px 0 80px; }

.form_to_top {
  text-decoration: none;
  margin: 50px auto;
  display: block;
  text-align: center;
  background: #43A6A1;
  font-weight: 300;
  font-size: 16px;
  color: #FFF;
  padding: 10px 0;
  width: 30%;
  height: auto; }

@media screen and (max-width: 896px) {
  .contactform_container {
    width: 100%;
    margin: 0 auto; }

  .privacypolicy {
    width: 100%; }

  .contactform_container table tr:last-child th {
    border-bottom: 1px solid #43A6A1; }

  .contactform_container table th {
    width: 100%;
    display: block;
    padding: 26px 8px; }

  .contactform_container table td {
    width: 100%;
    display: block;
    padding: 20px 0;
    border-bottom: none; }

  .form_table th {
    width: 100%;
    display: block;
    text-align: left;
    border-bottom: none;
    padding: 20px 20px 0; }

  .form_table td {
    width: 100%;
    display: block;
    padding: 20px; }

  .form_to_top {
    margin: 20px auto;
    width: 80%; } }
/* フォーム装飾
----------------------------------------------------*/
input[type="text"], input[type="tel"], input[type="email"], textarea, select {
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding: 15px;
  background: #FFF;
  border-radius: 3px;
  transition: all .3s;
  border: 1px solid #afafaf; }
  input[type="text"].w100, input[type="tel"].w100, input[type="email"].w100, textarea.w100, select.w100 {
    width: 98%;
    margin-left: 10px; }
  input[type="text"].w80, input[type="tel"].w80, input[type="email"].w80, textarea.w80, select.w80 {
    width: 80%;
    margin-left: 10px; }
  input[type="text"].w60, input[type="tel"].w60, input[type="email"].w60, textarea.w60, select.w60 {
    width: 60%;
    margin-left: 10px; }
  input[type="text"].w40, input[type="tel"].w40, input[type="email"].w40, textarea.w40, select.w40 {
    width: 40%;
    margin-right: 20px;
    margin-left: 10px; }
  input[type="text"].w30, input[type="tel"].w30, input[type="email"].w30, textarea.w30, select.w30 {
    width: 30%;
    margin-left: 10px; }

input[type="checkbox"] {
  padding: 10px 12px;
  background: #efefef;
  transition: all .3s;
  width: 25px;
  height: 25px;
  vertical-align: bottom;
  margin-right: 8px; }

input[type="file"] {
  padding: 10px 0;
  transition: all .3s; }

textarea {
  height: 160px;
  margin-bottom: 20px;
  margin-left: 10px; }

::-webkit-input-placeholder {
  color: #cccccc; }

::-moz-placeholder {
  color: #cccccc; }

:-ms-input-placeholder {
  color: #cccccc; }

input[type="submit"] {
  width: 278px;
  display: block;
  margin: 40px auto 0;
  color: #003685;
  background: #fff;
  font-family: 'Noto Sans Japanese';
  font-weight: 500;
  font-size: 16px;
  text-align: center;
  padding: 14px 0;
  border: solid 1px #003685;
  text-decoration: none;
  transition: .3s;
  cursor: pointer; }
  input[type="submit"]:hover {
    background: #003685;
    color: #FFF;
    transition: .3s; }

input[type="button"] {
  text-decoration: none;
  margin: 40px auto -40px;
  display: block;
  text-align: center;
  background: #FFF;
  border: 1px solid #003C60;
  font-weight: 300;
  font-size: 16px;
  color: #003C60;
  padding: 10px;
  box-sizing: border-box;
  width: 40%;
  height: auto;
  transition: .3s;
  position: relative;
  cursor: pointer; }

@media screen and (max-width: 896px) {
  input[type="button"] {
    width: 80%; }

  input[type="submit"] {
    width: 80%; }

  input[type="text"], input[type="tel"], input[type="email"], textarea, select {
    background: #fff; }

  input[type="text"].w40, input[type="tel"].w40, input[type="email"].w40, textarea.w40, select.w40 {
    width: 100%;
    margin: 0; }

  input[type="text"].w60, input[type="tel"].w60, input[type="email"].w60, textarea.w60, select.w60 {
    width: 100%;
    margin: 0; }

  input[type="text"].w80, input[type="tel"].w80, input[type="email"].w80, textarea.w80, select.w80 {
    width: 100%;
    margin: 0; }

  input[type="text"].w100, input[type="tel"].w100, input[type="email"].w100, textarea.w100, select.w100 {
    width: 100%;
    margin: 0; }

  textarea {
    margin-left: 0; } }
