@charset "utf-8";
/* ===========================================================

	Title: other.css
	Created: 2021-2-25

=========================================================== */
/*

		link
		sitemap
		account


=========================================================== */
/* ===========================================================

	link

=========================================================== */
/* link-list
----------------------------------------------------------- */
.link-list {
}
.link-list {
}
.link-list li {
  background: url(../img/global/icon__blank--a.png) 0 50% no-repeat;
  background-size: 13px auto;
  border-bottom: dotted 1px #ddd;
  margin: 0;
  padding: 10px 0 10px 20px;
}
.link-list ul li a {
  display: block;
}
.link-list li a:link,
.link-list ul li a:visited {
}
.link-list li a:hover {
}
.link-list li img {
  margin: 0 0 0 5px;
  vertical-align: text-bottom;
}

.reminder-link a {
  color: var(--main-color);
}
.reminder-link a:hover {
  text-decoration-line: underline;
}
/* ===========================================================

	sitemap

=========================================================== */
.sitemap {
  display: flex;
  flex-wrap: wrap;
}
.sitemap ul {
  width: 33%;
  font-size: 16px;
  font-size: 1.6rem;
}
.sitemap li {
  margin: 0 0 10px 0;
}
.sitemap li a {
  position: relative;
}
.sitemap > ul > li > a::after {
  content: "";
  width: 260px;
  height: 1px;
  display: inline-block;
  background-color: var(--main-color);
  position: absolute;
  bottom: -16px;
  left: 0;
}

.sitemap a:link,
.sitemap a:visited {
  text-decoration: none;
  color: #000;
}
.sitemap li a:hover {
  color: var(--main-color);
}
.sitemap li ul {
  padding: 32px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
  width: 100%;
}
.sitemap li ul a {
  color: #000 !important;
  padding: 0 0 0 10px;
}
.sitemap li ul a:before {
  content: "";
  width: 11px;
  height: 8px;
  position: absolute;
  left: 0;
  top: 58%;
  transform: translate(0, -60%);
  background-image: url(../img/global/icon__arrow--green.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 11px auto;
}
.sitemap ul li li a:hover {
  text-decoration: underline;
  color: var(--main-color);
}
.sitemap li a.blank:before {
  display: none;
}
.sitemap li a.blank {
  background-position: 0 50% !important;
  padding: 0 0 0 15px !important;
}

.sitemap__navigation span:hover {
  color: var(--main-color);
}
.sitemap__navigation span {
  margin-left: 1rem;
}
.sitemap__navigation--other {
  border-top: 1px solid var(--main-color);
  width: 260px;
}

/* ===========================================================

	account

=========================================================== */
.reminder-form,
.password-area {
  width: 900px;
  background-color: #eeeeee;
  padding: 32px;
}
.radio-list {
  margin: 2em 0 2em !important;
}
.textfield {
  border: none;
  height: 60px;
  width: 100%;
  line-height: 48px;
  padding: 0 8px;
  font-size: 1.4rem;
  color: #111;
  background-color: #fff;
  border: solid 1px #ddd;
  border-radius: 4px;
  margin-bottom: 32px;
}
.textfield::-webkit-input-placeholder {
  color: #7e7e7e;
  font-size: 14px;
  font-weight: normal;
  padding-left: 1rem;
}
.password-area .textfield {
  margin-bottom: 8px;
}
.input-btn input[type="submit"] {
  background-color: var(--main-color) !important;
  border-radius: 4px;
  width: 320px;
  margin-top: 48px;
  padding: 17px;
  font-weight: bold;
  color: #fff;
  border: none;
}
.input-btn input[type="submit"]:hover {
  background-color: var(--main-color-dark) !important;
}
.account ul.error li {
  color: red;
  font-weight: bold;
}
.account .password-table th,
.account .password-table td {
  vertical-align: middle;
}
.account em {
  color: red;
}
.account .password-table input[type="text"],
.account .password-table input[type="password"] {
  border: solid 1px #ccc;
  padding: 5px;
  margin: 0 0 5px;
}
.account .password-table input[type="text"]:last-child,
.account .password-table input[type="password"]:last-child {
  margin: 0;
}
.account .password-table input[type="text"] {
  width: 60%;
}
.account .password-table input[type="password"] {
  width: 30%;
}
.account .input-btn input[type="submit"] {
  padding: 5px 10px;
  border: solid 1px #ccc;
  border-radius: 3px;
  cursor: pointer;
}
.account .account-message {
  font-size: 1.36em;
  font-weight: bold;
}

/* ラジオボタン */
.ECM_RadioInput {
  display: flex;
  align-items: center;
  cursor: pointer;
}
.ECM_RadioInput-Input {
  opacity: 0;
  width: 0;
  margin: 0;
}
.ECM_RadioInput-Input:focus + .ECM_RadioInput-DummyInput {
}
.ECM_RadioInput-Input:checked + .ECM_RadioInput-DummyInput {
  border: solid 2px #333333;
  background: #fff;
}
.ECM_RadioInput-Input:checked + .ECM_RadioInput-DummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #333333;
}
.ECM_RadioInput-DummyInput {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #b9b9b9;
}
.ECM_RadioInput-LabelText {
  margin-left: 12px;
  display: block;
  font-size: 16px;
}
/* ===========================================================

	.input-ui

=========================================================== */
.error {
  color: #004889;
  font-weight: bold;
}
.input-ui {
}
.input-ui input[type="radio"],
.input-ui input[type="checkbox"] {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.input-ui input[type="radio"] ~ label:before,
.input-ui input[type="checkbox"] ~ label:before {
  font-family: FontAwesome;
  display: inline-block;
  content: "\f1db";
  font-size: 1em;
  color: #999;
  width: 1.4em;
}

.input-ui input[type="radio"]:checked ~ label:before,
.input-ui input[type="checkbox"]:checked ~ label:before,
.input-ui input[type="radio"]:checked ~ label,
.input-ui input[type="checkbox"]:checked ~ label {
  color: #004889;
}

.input-ui input[type="radio"] ~ label:before {
  content: "\f10c";
}
.input-ui input[type="radio"]:checked ~ label:before {
  content: "\f192";
}

.input-ui input[type="checkbox"] ~ label:before {
  content: "\f096";
}
.input-ui input[type="checkbox"]:checked ~ label:before {
  content: "\f14a";
}

.input-ui input[type="radio"]:focus ~ label:before,
.input-ui input[type="checkbox"]:focus ~ label:before,
.input-ui input[type="radio"]:focus ~ label,
.input-ui input[type="checkbox"]:focus ~ label {
  color: #004889;
}

.input-ui-text {
  display: block;
  width: 100%;
  padding: 5px;
  margin: 0;
}
.input-ui-text input.input-ui__text {
  display: block;
  width: 100%;
  padding: 5px 1em;
  margin: 0;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15);
  border-radius: 0;
  background-color: #fff;
  transition: all 0.5s;
}
.input-ui-text input.input-ui__text:focus {
  box-shadow: 0 0 10px 0 rgba(35, 43, 79, 0.5);
  background-color: #fff;
}

.input-ui-button {
  display: block;
  min-width: 200px;
  padding: 5px;
  margin: 0;
}

.input-ui-button input.input-ui__button,
.input-ui-button input.input-ui__button--sub {
  display: block;
  border: solid 1px #004889;
  background-color: #004889;
  color: #fff;
  line-height: 40px;
  text-align: center;
  width: 100%;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.5s;
}
.input-ui-button input.input-ui__button--sub {
  border: solid 1px #111;
  background-color: #111;
}
.input-ui-button input.input-ui__button:hover {
  background-color: #004889;
  color: #fff;
}
.input-ui-button input.input-ui__button:hover,
.input-ui-button input.input-ui__button--sub:hover {
  opacity: 0.5;
}

.input-ui__footer-button {
  display: block;
  padding: 0;
  margin: 0;
  clear: both;
}
.input-ui__footer-button ul {
  display: block;
  padding: 0;
  margin: 0;
  clear: both;
  text-align: center;
}
.input-ui__footer-button li {
  display: inline-block;
  padding: 0;
  margin: 0;
}

.input-ui-radio input,
.vertical-align select {
  vertical-align: middle !important;
}
