@charset "utf-8";
@import url("reset.css");
body {
  font-size: 0.9em;
  line-height: 1.5em;
  color: #58595b;
  font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
  padding: 0 40px 50px;
}

#logo {
  width: 260px;
  height: 95px;
  background: url('../images/img_logo.png') no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  margin: 0 -40px;
}

#div_maincontent {
  width: 100%;
  background: url('../images/bg.png') no-repeat 50% top;
  background-attachment: fixed;
}

.div_maincontent_form {
  width: 800px;
  margin: 0 auto;
  padding: 0 40px 40px;
  background: #fff;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}

h1 {
  margin-bottom: 20px;
  font-size: 1.5em;
  line-height: 1.3em;
}

h2 {
  background: #00a73c;
  padding: 9px 10px 7px;
  color: #fff;
  font-size: 1.1em;
  margin: 25px 0 10px;
}

h3 {
  background: #2d5c92;
  color: #fff;
  padding: 7px 15px;
}

p {
  margin: 0.5em 0;
}

.red {
  color: #ee3424;
}

.section {
  margin-bottom: 40px;
}

.mb5 {
  margin-bottom: 5px;
}

a {
  color: #0943a4;
  text-decoration: none;
}

a:hover {
  color: #2062cf;
}


/* -----------------------------------------------
tableの設定＜基本情報用＞
----------------------------------------------- */

table.form_basic {
  width: 100%;
  border-top: 1px dotted #ccc;
}

table.form_basic th {
  background: #ecf5ff;
  text-align: right;
  color: #00428c;
  font-weight: bold;
  width: 32%;
}

table.form_basic th, table.form_basic td {
  border-bottom: 1px dotted #ccc;
  padding: 8px 18px;
  vertical-align: middle;
}

table.form_basic td:last-child {
  width: 8%;
}


/* -----------------------------------------------
tableの設定＜オプション用＞
----------------------------------------------- */

table.form_option {
  width: 100%;
}

table.form_option th {
  background: #ecf5ff;
  text-align: left;
  color: #00428c;
  font-weight: bold;
  width: 53%;
}

table.form_option th, table.form_option td {
  border-bottom: 1px dotted #ccc;
  padding: 11px 18px;
  vertical-align: middle;
}


/* -----------------------------------------------
フォーム周りの設定
----------------------------------------------- */

.inputText_H {
  width: 30%;
}

.inputText_L {
  width: 100%;
}

.inputText_S {
  width: 60%;
}

.requiredIpt, .requiredIptRC {
  background-color: #ffebe9;
}

input, select, textarea {
  border: 0;
  padding: 8px 10px 10px;
  border: solid 1px #ccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  margin: 5px 0px;
  color: #58595b;
  line-height: 1.3em;
  vertical-align: middle;
  font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
}

::-webkit-input-placeholder {
  color: #ccc;
  font-weight: normal;
}

:-ms-input-placeholder {
  color: #ccc;
  font-weight: normal;
}

::-moz-placeholder {
  color: #ccc;
  font-weight: normal;
}

.choice {
  display: inline-block;
  width: 49%;
}

.choice_h {
  line-height: 2em;
}

.check_icon {
  width: 22px;
  height: 22px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
}

.check_ok {
  background: url('../images/icon_ok.png') no-repeat;
}

.check_ng {
  background: url('../images/icon_ng.png') no-repeat;
}

.btnArea {
  text-align: center;
  margin: 1.5em 0 1em 0;
}

.btn_submit {
  font-size: 1.1em;
  border-radius: 10px;
  color: #fff;
  padding: 15px 70px;
  box-shadow: inset 0 0 0 1px #fff, 0.574px 0.819px 3px 0px rgba(132, 132, 132, 0.35);
}

.submit_check_ng {
  background-image: -webkit-linear-gradient( 90deg, #8c8d8f 0%, #c3c4c6 100%);
  background-image: -moz-linear-gradient( 90deg, #8c8d8f 0%, #c3c4c6 100%);
  background-image: -ms-linear-gradient( 90deg, #8c8d8f 0%, #c3c4c6 100%);
}

.submit_check_ok {
  background-image: -webkit-linear-gradient( 90deg, #e9360d 0%, #f8b101 100%);
  background-image: -moz-linear-gradient( 90deg, #e9360d 0%, #f8b101 100%);
  background-image: -ms-linear-gradient( 90deg, #e9360d 0%, #f8b101 100%);
  cursor: pointer;
}

.submit_check_ok:hover {
  background-image: -webkit-linear-gradient( 90deg, #eb4b2b 0%, #f8b91f 100%);
  background-image: -moz-linear-gradient( 90deg, #eb4b2b 0%, #f8b91f 100%);
  background-image: -ms-linear-gradient( 90deg, #eb4b2b 0%, #f8b91f 100%);
  cursor: pointer;
}

.error {
  color: #ee3424;
}

/* -----------------------------------------------
部分的なレイアウトの設定
----------------------------------------------- */

.div_postcode {
  float: left;
  width: 30%;
  margin-right: 10px;
}

.div_address1 {}


/* -----------------------------------------------
ラジオボタンの設定
----------------------------------------------- */

.inputRadio {
  display: none;
}

.radio-parts {
  padding-left: 20px;
  position: relative;
  margin-right: 20px;
  opacity: 0.7;
}

.radio-parts::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #999;
  border-radius: 50%;
}

.inputRadio:checked+.radio-parts {
  /*color: #2d5c92;*/
}

.inputRadio:checked+.radio-parts {
  opacity: 1;
}

.inputRadio:checked+.radio-parts::after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 4px;
  width: 10px;
  height: 10px;
  background: #2d5c92;
  border-radius: 50%;
}

/* -----------------------------------------------
チェックボックスの設定
----------------------------------------------- */

.checkbox-input {
  display: none;
}

.checkbox-parts {
  padding-left: 20px;
  position: relative;
  margin-right: 20px;
}

.checkbox-parts::before {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 2px solid #999;
  border-radius: 4px;
  background: #fff;
}

.checkbox-input:checked+.checkbox-parts::after {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 6px;
  width: 7px;
  height: 12px;
  transform: rotate(40deg);
  border-bottom: 3px solid #002f65;
  border-right: 3px solid #002f65;
}


/* -----------------------------------------------
ツールチップの設定
----------------------------------------------- */

.hide {
  display: none;
}

a.tgTtip {
  margin: 0;
  text-decoration: none;
  font-size: 1em;
}

span.tooltip {
  width: 12px;
  height: 12px;
  background: url('../images/img_exclamation.png') no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  cursor: pointer;
}

.tooltip-txt, .tooltip-txt[show-status=false] {
  display: none;
  font-weight: normal;
  margin-top: 5px;
  padding: 0.7em;
  border-radius: 5px;
  background: #d7e2f1;
  font-size: 0.8rem;
}

.tooltip-txt[show-status=true] {}


/* -----------------------------------------------
選択肢に応じて表示/非表示を行なうブロックの設定
----------------------------------------------- */

.showTargetWhenChecked, .showTargetWhenChecked[show-status=false] {
  display: none;
}

.showTargetWhenChecked[show-status=true] {}


/* -----------------------------------------------
個人情報取り扱いの設定
----------------------------------------------- */

.policy_wrap {
  height: 10em;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  background-color: #fff;
  border: 1px solid #d1d3d4;
  margin: 10px 0;
}

.policy_frame {
  width: 100%;
  height: 100%;
  border: none;
  display: block;
}

.agreement {
  background: #eaf1c4;
  padding: 15px;
  text-align: center;
}

.agreement label, .choice label, .choice_h label, .agreement_error label {
  cursor: pointer;
}

.agreement_error {
  background: #ffdedb;
  border: 2px solid #ee3424;
  padding: 15px;
  text-align: center;
}

/* -----------------------------------------------
トップページの設定
----------------------------------------------- */
#div_maincontent_index {
    width: 100%;
    background: url(../images/bg_index.png) no-repeat 50% top;
    background-attachment: fixed;
}
.top_contents_wrap {
  display: flex;
  justify-content: space-between;
}

.top_contents:hover {
  opacity: .9;
}
.top_contents {
/*  display: flex;
  justify-content: space-between;*/
}
h4 {
    font-size: 1.5em;
    line-height: 1.5;
}

.top_contents li {
  border: 1px solid #d4d4d4;
  width: 48.5%;
  padding: 20px;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  border-radius: 7px;
  box-shadow: 0px 0px 3px 0px #d4d4d4;
  -moz-box-shadow: 0px 0px 3px 0px #d4d4d4;
  -webkit-box-shadow: 0px 0px 3px 0px #d4d4d4;
  min-height: 130px;
}

.top_contents h3 {
  color: #00428c;
  background: #fff;
  border-bottom: 1px dotted #b1b1b2;
  padding: 0 0 5px 0;
  font-weight: bold;
  font-size: 1.2em;
}

.top_contents h3::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 14px;
  background: url("../images/img_arrow.png") top left no-repeat;
  background-size: 8px 14px;
  margin: 2px 20px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
}

input[type=number] {
	-moz-appearance:textfield;
	ime-mode: disabled;
}
input[type=postcode] {
	ime-mode: disabled;
}
input[type=kana] {
	ime-mode: active;
}

/*-------------------------------------------------
管理画面
-------------------------------------------------*/
.select_status {
  text-align: right;
  margin: 3px 0px;
}
.select_status ul {
  display: flex;
  justify-content: flex-end;
}
.select_status li {
  margin: auto 0;
  margin-left: 20px;
}
.select_status span {
  color: #b20000;
  font-weight: bold;
}
.select_status label {
  cursor: pointer;
}
#div_management_form {
  /*margin-bottom: 20px;
  position: relative;*/
}
#div_management_head {
  display: flex;
}
.id_refine {
  margin: 10px 0 0 auto;
}
#management_title {
  position: absolute;
  left: 280px;
  top: 10px;
  display: flex;
}
#div_management table {
  width: 100%;
}
.management_form th {
  background: rgb(170, 170, 170);
  color:#fff;
  font-weight: bold;
}
.management_form tr,
.management_form td,
.management_form th,
.management_form_detail tr,
.management_form_detail th,
.management_form_detail td {
  border: 1px solid #ccc;
  padding: 4px 6px;
  vertical-align: middle;
}
.management_form_c a {
  display: inline-block;
  border-radius: 5px;
  background: rgba(0, 91, 172, 1);
  padding: 3px 10px;
  color: #fff;
}
.management_form a:hover {
  opacity: 0.8;
}
.sf {
  color: rgba(0, 47, 101, 1);
  font-weight: bold;
}
.jc {
  color: #37429c;
  font-weight: bold;
}
.management_form_address {
  font-size: 1.1em;
  font-weight: bold;
}
.management_form_r {
  text-align: right;
}
.management_form_c {
  text-align: center;
}
.management_h2 {
  margin: 0 0 2px 0;
}

.management_form_detail {
  margin-bottom: 20px;
}

.management_form_detail th {
  background: #ededed;
  font-weight: bold;
  text-align: left;
  width: 20%;
}
.status_change {
  padding: 10px 20px;
  background: #ededed;
  display: flex;
  align-items: center;
}
.status_change div {
  margin-right: 30px;
}
.management_status_h2 {
  background: rgba(0, 91, 172, 1);
  margin: 0 0 2px 0;
}
.management_btn_submit {
  border-radius: 5px;
  background: rgba(0, 91, 172, 1);
  padding: 10px;
  color: #fff;
  border: none;
  cursor: pointer;
}
