@charset "UTF-8";
/**------------------------------------------------------------------
 *  pc_frame.css
 *  pc_design: 001t
 *  color: 11
 ------------------------------------------------------------------**/
/*-----------------------------------------------------------------/
/ common
/-----------------------------------------------------------------*/
/* common CSS(pc) 入力フォーム形状／フォームのアラート／ボタン形状 */ /* base CSS 基礎設定 */
/* ベースのリセット
------------------------------------------------------------------*/
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, a,
img, ul, ol, dl, li, dt, dd, form, label, table, thead, tbody, tfoot, th, tr, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.5;
  overflow-wrap: break-word;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html {
  width: 100%;
  height: 100%;
  font-size: 10px;
}

body {
  width: 100%;
  height: 100%;
  line-height: 1.5;
  font-size: 1.3rem;
  color: #333;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif;
  text-align: left;
  word-break: break-word;
  white-space: normal;
  -webkit-font-smoothing: antialiased;
}

input, textarea, select {
  padding: 3px;
  font-size: 1.2rem;
}

ul, ol, dl {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th, td {
  font-size: 1.2rem;
  line-height: 1.5;
}

p, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: inherit;
  font-weight: inherit;
  vertical-align: baseline;
  background: transparent;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
}

a {
  background: transparent;
  margin: 0;
  padding: 0;
  color: #1f70c1;
  font-size: 100%;
  vertical-align: baseline;
  text-decoration: none;
}
a:hover {
  color: #6c96c1;
  text-decoration: none;
}

.txt_right {
  text-align: right;
}

.txt_center {
  text-align: center;
}

.txt_left {
  text-align: left;
}

.pager_bar {
  text-align: center;
}

:focus {
  outline: 0;
}

:visited, :link {
  color: #04c;
}

a, #header-wrap {
  -webkit-tap-highlight-color: transparent;
}

.job__offer__detail::after, .blog__text:after, #main__contents:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix:after {
  overflow: hidden;
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* ボタンのベース
------------------------------------------------------------------*/
input[type=button],
input[type=submit],
.btn {
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  display: inline-block;
  border: none;
  text-align: center;
  white-space: normal;
  cursor: pointer;
}
input[type=button] a,
input[type=submit] a,
.btn a {
  text-decoration: none;
}

.btn__wrap {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  cursor: pointer;
  z-index: 1;
}

/* フォームのベース
------------------------------------------------------------------*/
input[type=text],
input[type=password],
select, textarea,
.radio__item-name,
.form__item__title {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type=text]:focus,
input[type=password]:focus,
select:focus, textarea:focus {
  border: 1px solid rgba(90, 180, 255, 0.5);
  box-shadow: 0 0 3px rgba(90, 180, 255, 0.5);
}

input[type=text],
input[type=password],
select {
  padding: 5px 8px;
}

/* テキストエリアベース
------------------------------------------------------------------*/
textarea {
  min-height: 65px;
  padding: 12px 15px;
  line-height: 1.5;
  letter-spacing: 0.5px;
  font-family: inherit;
}

/* ラジオボタンベース
------------------------------------------------------------------*/
input[type=radio] {
  display: inline-block;
  margin: 0 5px 0 0;
  vertical-align: text-top;
}

.radio__wrap {
  width: 100%;
}

.radio__item + .radio__item {
  border-top: inherit;
  border-radius: 0;
}

.radio__item:last-child {
  border-top: none;
}

.half .radio__item {
  float: left;
  width: 50%;
  box-sizing: border-box;
}
.half .radio__item:first-child {
  float: left;
}
.half .radio__item:last-child {
  float: right;
  border-left: none;
}

.input__item-name {
  -webkit-tap-highlight-color: transparent;
  display: inline-block;
}

/* チェックボックスベース
------------------------------------------------------------------*/
input[type=checkbox] {
  margin: 0 5px 0 0;
  vertical-align: text-top;
  -webkit-tap-highlight-color: transparent;
}

.checkbox__wrap {
  width: 100%;
}

.checkbox__item {
  width: 100%;
  box-sizing: border-box;
}

.checkbox__item + .checkbox__item {
  border-top: inherit;
  border-radius: 0;
}

.checkbox__item:last-child {
  border-top: none;
}

/* セレクトボックスベース
------------------------------------------------------------------*/
select {
  vertical-align: middle;
}

select::-ms-expand {
  display: none;
}

.select_wrap {
  position: relative;
}

.select_wrap + .select_wrap {
  border-radius: 0;
}

/* ファイル選択
------------------------------------------------------------------*/
input[type=file] {
  border: 1px solid transparent;
  margin-top: 5px;
}

/* 言語対応
-------------------------------------------------------------------*/
.form__item__title__en,
.text__lang__en {
  display: block;
  margin: 0;
  font-weight: normal;
  line-height: 1.4;
}

.text__lang__en {
  margin-top: 3px;
  font-size: 1.15rem;
}

.setting__messege {
  margin: 8px 0;
}

.form__item__title__en {
  font-size: 1.1rem;
}

.simple__grp__title__en {
  margin-left: 8px;
  font-size: 1.1rem;
  font-weight: normal;
}

.verisign__text__en {
  margin-top: 3px;
  text-align: left;
  font-size: 0.9rem;
}

/* axolutil.sass */
/* axol.modalDialog
------------------------------------------------------------------*/
/* 絶対位置 */
._axol_modal_bind {
  /* position: fixed; : js側固定 */
  /* width: 100vw; : js側固定 */
  /* height: 100vh; : js側固定 */
  /* display: animate; : js側固定 */
  /* z-index:current-max; : js側固定 */
}

/* 背景バックの色 */
._axol_modal_back {
  /* width: 100%; : js側固定 */
  /* height: 100%; : js側固定 */
  background: rgba(0, 0, 0, 0.3);
}

/* モーダル枠 */
.axol_modal_dialog {
  /* position: absolute; : js側固定 */
  /* z-index:current-max; : js側固定 */
  background: #fff;
  max-width: 70%;
  max-height: 70%;
  border-radius: 10px;
  padding: 25px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  overflow-x: hidden;
  overflow-y: auto;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
.axol_modal_dialog img {
  max-width: 100%;
  max-height: 420px;
}

/* 閉じるボタン */
._axol_modal_close_btn {
  position: absolute;
  width: 14px;
  height: 14px;
  top: 8px;
  right: 8px;
  cursor: pointer;
}

._axol_modal_close_btn::before,
._axol_modal_close_btn::after {
  position: absolute;
  content: "";
  background: #333;
  width: 1px;
  height: 15px;
  top: 0;
  right: 6px;
}

._axol_modal_close_btn::before {
  transform: rotate(45deg);
}

._axol_modal_close_btn::after {
  transform: rotate(-45deg);
}

/* axol.axolModalTip
------------------------------------------------------------------*/
/* 絶対位置 */
.axolModalTip_parent {
  /* position: relative; : js側固定 */
  /* height: 0; : js側固定 */
  /* z-index:current-max; : js側固定 */
}

/* 背景バックの色 */
.axolModalTip_backWrapper {
  /* position: fixed; : js側固定 */
  /* width: 100vw; : js側固定 */
  /* height: 100vh; : js側固定 */
  /* z-index:current-max; : js側固定 */
  background: rgba(0, 0, 0, 0.3);
}

/* チップ枠 */
.axolModalTip_dialog {
  /* position:absolute; : js側固定 */
  /* top:**; : js側固定 */
  /* left:**; : js側固定 */
  /* z-index:current-max; : js側固定 */
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  min-width: 300px;
  max-width: 35%;
  padding: 15px 18px;
  box-sizing: border-box;
}

/* 三角矢印の色 */
.axolModalTip_triangle {
  /* positon:absolute; : js側固定 */
  /* top:**; : js側固定 */
  /* left:**; : js側固定 */
  /* width: 0; : js側固定 */
  /* height: 0; : js側固定 */
  /* z-index:current-max; : js側固定 */
  border-color: #fff;
  border-width: 8px;
}

/* 閉じるボタン */
.axolModalTip_cancelBtn {
  position: absolute;
  width: 18px;
  height: 18px;
  top: 0;
  right: 0;
  cursor: pointer;
}

.axolModalTip_cancelBtn::before,
.axolModalTip_cancelBtn::after {
  position: absolute;
  content: "";
  background: #333;
  width: 1px;
  height: 10px;
  top: 4px;
  right: 8px;
}

.axolModalTip_cancelBtn::before {
  transform: rotate(45deg);
}

.axolModalTip_cancelBtn::after {
  transform: rotate(-45deg);
}

/* axol.loadingDialog
------------------------------------------------------------------*/
.axol_modal_dialog._axol_modal_loading {
  width: 150px;
  height: 90px;
}

._axol_modal_loading .loading__wrap {
  position: relative;
  text-align: center;
}

._axol_modal_loading .loading__wrap:before {
  position: absolute;
  content: "now loading...";
  width: 150px;
  font-size: 11px;
  bottom: -25px;
  left: calc(50% - 72px);
}

._axol_modal_loading .loading__items {
  display: inline-block;
  background: #333;
  border-radius: 100%;
  width: 15px;
  height: 15px;
  margin: 0 3px;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

._axol_modal_loading .loading__items.loading__item1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

._axol_modal_loading .loading__items.loading__item2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}
@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
/* common CSS(pc/sp) フォーム全体 */
/* ボタン
------------------------------------------------------------------*/
.btn__area {
  margin: 20px 0 15px;
}

.go__pagetop a, .type__school__head .school__search, .type__school__head .school__detail__change, .type__postal input[type=button], .axol_pager .axol_pager_page_now,
.axol_pager .axol_pager_page_txt,
.axol_pager .axol_pager_pre_txt,
.axol_pager .axol_pager_post_txt, .mynavi__banner a,
.mynavi__link__btn a, .btn__s, .btn__l {
  position: relative;
  display: inline-block;
  border-radius: 5px;
  box-shadow: 0 3px 1px 0 rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.2s;
}
.go__pagetop a:active, .type__school__head .school__search:active, .type__school__head .school__detail__change:active, .type__postal input[type=button]:active, .axol_pager .axol_pager_page_now:active,
.axol_pager .axol_pager_page_txt:active,
.axol_pager .axol_pager_pre_txt:active,
.axol_pager .axol_pager_post_txt:active, .mynavi__banner a:active,
.mynavi__link__btn a:active, .btn__s:active, .btn__l:active {
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.1);
  top: 1px;
}

.btn__s.btn__submit, .btn__l.btn__submit {
  background-color: #ed4e3b;
  color: #fff;
  border-bottom: 3px solid #e02a15;
}
.btn__s.btn__submit:hover, .btn__l.btn__submit:hover {
  background-color: #d92914;
}
.btn__s.btn__confirm, .btn__l.btn__confirm {
  background-color: #1f81db;
  color: #fff;
  border-bottom: 3px solid #1967ae;
}
.btn__s.btn__confirm:hover, .btn__l.btn__confirm:hover {
  background-color: #1967af;
}
.btn__s.btn__back, .btn__l.btn__back {
  background-color: #e5e5e5;
  color: #2e2e2e;
  border-bottom: 3px solid #cccccc;
}
.btn__s.btn__back:hover, .btn__l.btn__back:hover {
  background-color: #dadada;
}
.btn__s.btn__edit, .btn__l.btn__edit {
  background-color: #aaa;
  color: white;
  border-bottom: 3px solid #919191;
}
.btn__s.btn__edit:hover, .btn__l.btn__edit:hover {
  background-color: #a2a2a2;
}
.btn__s.btn__move, .btn__l.btn__move {
  background-color: #555;
  color: #fff;
  border-bottom: 3px solid #3c3c3c;
}
.btn__s.btn__move:hover, .btn__l.btn__move:hover {
  background-color: #444444;
}
.btn__s.btn__disabled, .btn__l.btn__disabled {
  background-color: #ccc;
  color: #fafafa;
  border-bottom: 3px solid #b3b3b3;
}

.next__arrow {
  background-image: url(../images/icons/button_arrow.png);
  background-position: right center;
  background-repeat: no-repeat;
}
.next__arrow.btn__s {
  padding: 8px 28px 8px 8px;
}
.next__arrow.btn__l {
  padding: 12px 32px 12px 15px;
}

.back__arrow {
  background-image: url(../images/icons/button_modoru.png);
  background-position: left center;
  background-repeat: no-repeat;
}
.back__arrow.btn__s {
  padding: 6px 8px 6px 28px;
}
.back__arrow.btn__l {
  padding: 12px 15px 12px 32px;
}

.btn__back.back__arrow {
  background-image: url(../images/icons/button_modoru2.png);
}

.left__arrow {
  background-image: url(../images/icons/button_modoru2.png);
  background-position: left center;
  background-repeat: no-repeat;
}
.left__arrow.btn__s {
  padding: 6px 8px 6px 28px;
}
.left__arrow.btn__l {
  padding: 12px 15px 12px 25px;
}

.right__arrow {
  background-image: url(../images/icons/button_susumu2.png);
  background-position: right center;
  background-repeat: no-repeat;
  padding-left: 15px;
  padding-right: 25px;
}
.right__arrow.btn__s {
  padding: 6px 28px 6px 8px;
}
.right__arrow.btn__l {
  padding: 12px 25px 12px 15px;
}

/* フォーム
------------------------------------------------------------------*/
select, textarea, input[type=text],
input[type=password] {
  background: #fff;
  box-sizing: border-box;
  box-shadow: 0 2px 6px -4px rgba(0, 0, 0, 0.2) inset, 0 2px 4px -4px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #ccc;
  border-radius: 3px;
}

input[type=text],
input[type=password] {
  width: 100%;
  padding: 8px 12px;
}

textarea {
  width: 100%;
  height: 200px;
  max-width: 360px;
}

select {
  background: #fff url(../images/icons/down_arrow_b.svg) right 10px center/10px no-repeat;
  width: 100%;
  padding: 5px 28px 5px 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

.is_foreign .navy {
  width: 305px;
  display: inline-block;
}

.check__mark ul {
  color: #ff664b;
}
.check__mark li {
  display: inline-block;
  width: 100%;
  font-size: 1.2rem;
  font-weight: bold;
}
.check__mark li::before {
  content: "＊ ";
}

#main__contents .fb_alert input[type=text],
#main__contents .fb_alert input[type=password],
#main__contents .fb_alert input[type=checkbox],
#main__contents .fb_alert input[type=radio],
#main__contents .fb_alert input[type=file],
#main__contents .fb_alert input[type=img],
#main__contents .fb_alert select, #main__contents .fb_alert textarea {
  border-color: #ff664b;
}
#main__contents .fb_alert label {
  color: #ff664b;
}

.preview_dummy {
  color: #f00;
}

.nomenu #contents__area {
  width: 100%;
  margin: 0 auto;
}

#entry_error .go__login,
#mypage_error .go__login,
#mypage_logout .go__login {
  box-sizing: border-box;
  margin-top: 30px;
  text-align: center;
}
#entry_error .go__login__text,
#mypage_error .go__login__text,
#mypage_logout .go__login__text {
  color: #fff;
}

.login__info {
  display: none;
}

.display__change {
  background: linear-gradient(to top, #444444 0%, #555 100%);
  display: inline-block;
  text-align: center;
  border-radius: 5px;
  margin: 0 0 10px;
  transition: opacity 0.2s;
}
.display__change:hover {
  opacity: 0.75;
}
#footer .display__change a {
  font-size: 1.1rem;
  color: #fff;
}
.display__change.btn__s {
  padding: 0;
}
.display__change.btn__s a {
  display: inline-block;
  padding: 3px 8px;
}

/* ベリサイン(SSL)
-------------------------------------------------------------------*/
.verisign__img {
  float: left;
  width: 80px;
  height: 40px;
  margin-right: 10px;
}

.verisign__img__src {
  background: url(../images/outersite/norton-seal.png) center center/80px no-repeat;
}

.verisign__text {
  font-size: 0.85rem;
  line-height: 1.45em;
  text-align: justify;
  color: #333;
}

/* マイナビボタン（シームレスボタン）
-------------------------------------------------------------------*/
.mynavi__banner,
.mynavi__link__btn {
  width: 100%;
}
.mynavi__banner a,
.mynavi__link__btn a {
  display: block;
  background-color: #fff;
  background-image: url(../images/icons/button_arrow.png), url(../images/outersite/mynavi_logo.png);
  background-position: right center, calc(50% - 10px) center;
  background-size: auto, 100px;
  background-repeat: no-repeat, no-repeat;
  box-sizing: border-box;
  border: 1px solid #e6e6e6;
  border-bottom: 3px solid #d9d9d9;
  height: 45px;
}
.mynavi__banner a:hover,
.mynavi__link__btn a:hover {
  background-color: #eee;
}
.mynavi__banner img,
.mynavi__link__btn img {
  display: none;
  width: 100%;
}

/* ログイン
-------------------------------------------------------------------*/
.login__message__wrap {
  width: 100%;
  margin-bottom: 25px;
}

#login__message {
  width: 100%;
  text-align: left;
}
#login__message + .login__all__message {
  margin-top: 15px;
}

/* SNS */
.menu__facebook a,
.menu__twitter a {
  height: 43px;
}
.menu__facebook a:hover,
.menu__twitter a:hover {
  opacity: 0.75;
}

li.menu__facebook a {
  background: url(../images/outersite/logo_facebook.png) left 12px center/auto no-repeat;
}

li.menu__twitter a {
  background: url(../images/outersite/logo_twitter.png) left 12px center/auto no-repeat;
}

li.menu__facebook a:hover {
  background: url(../images/outersite/logo_facebook.png) left 12px center/auto no-repeat;
}

li.menu__twitter a:hover {
  background: url(../images/outersite/logo_twitter.png) left 12px center/auto no-repeat;
}

/* ダイレクトアクセスの表示
-------------------------------------------------------------------*/
#top_kanri_mp {
  background-color: rgba(243, 152, 0, 0.05);
  box-sizing: border-box;
  border: 1px solid #f39800;
  margin: 10px auto 15px;
  padding: 5px 8px;
  color: #f39800;
  font-size: 13px;
}

.btn__s {
  font-size: 1.2rem;
  padding: 6px 10px;
}

.btn__l {
  min-width: 100px;
  margin: 0 10px;
  padding: 12px 15px;
  font-size: 14px;
}

.form_button {
  text-align: center;
  margin: 15px 0 30px;
}

input[type=text],
input[type=password],
textarea, select {
  font-size: 1.4rem;
}

select {
  background: #fff url(../images/icons/down_arrow_b.svg) right 10px center/10px no-repeat;
  width: 100%;
  padding: 8px 30px 8px 8px;
  cursor: pointer;
}

.form__item__title__wrap,
.need__item,
.need__item__small,
.noneed__item,
.noneed__item__small,
.form__item__group,
.form__item__multi {
  display: inline-block;
  vertical-align: middle;
}

/* 全体・ヘッダートップ
-------------------------------------------------------------------*/
#page__all {
  -js-display: flex;
  display: flex;
  flex-direction: column;
  position: relative;
  min-width: 980px;
  min-height: 100%;
  height: 100%;
}

.user__item {
  display: inline-block;
  width: auto;
}

.username {
  display: inline-block;
  background: url(../images/icons/icon_account.svg) 8px calc(50% - 1px)/13px 13px no-repeat;
  margin: 0 5px 0 12px;
  padding: 5px 8px 5px 28px;
  text-align: center;
  line-height: 1;
  font-weight: bold;
  font-size: 1.2rem;
}

.link__logout {
  display: inline-block;
  background: #333 url(../images/icons/logout_w.svg) 8px calc(50% - 1px)/13px 13px no-repeat;
  border-bottom: 3px solid #000;
  border-radius: 0 0 3px 3px;
  padding: 6px 8px 5px 28px;
  text-align: center;
  line-height: 1;
  font-size: 1.1rem;
  color: #fff;
  cursor: pointer;
  transition: 0.1s;
}
.link__logout:hover {
  opacity: 0.8;
}

/* 各ページのメインコンテンツ上下のマージンを設定 */
#mypage_schedule #main__contents {
  margin: 0 auto 25px;
}

.contents__message {
  margin: 0 0 12px;
  width: 100%;
}

/* フッター
-------------------------------------------------------------------*/
#footer__sub {
  display: none;
}

#footer {
  width: 100%;
  margin: 0 auto 25px;
  text-align: center;
}

#footer__wrap {
  box-sizing: border-box;
  width: 980px;
  min-height: 50px;
  margin: 0 auto;
  padding: 15px 0;
}

.copyright__text {
  display: block;
  margin: 0 auto;
  padding: 0;
  font-family: verdana, "メイリオ", "Meiryo", arial, clean, sans-serif;
  font-size: 10px;
  color: #333;
  letter-spacing: 0.05em;
  clear: both;
}

#verisign__block {
  width: 370px;
  margin: 0 0 0 auto;
}

.verisign__text {
  padding: 2px 0;
  color: #333;
}

/* テキストメニュー
-------------------------------------------------------------------*/
#menu__text {
  display: inline-block;
  box-sizing: border-box;
  padding: 0;
  text-align: right;
}
#menu__text .menu__text__button {
  display: inline-block;
  margin-left: 10px;
}
#menu__text .menu__now {
  font-weight: bold;
}
#menu__text a {
  display: block;
  padding: 3px 0;
  font-size: 1.2rem;
  color: #333;
  text-decoration: underline;
}
#menu__text a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.nomenu #menu__area {
  display: none;
}

.pagenation__area__top,
.pagenation__area__bottom {
  display: inline-block;
  text-align: right;
}

.pagenation__area__top {
  width: 100%;
  margin-bottom: 15px;
}

.pagenation__area__bottom {
  width: calc(100% - 150px);
  margin-top: 10px;
}

.pagenation__caption {
  display: inline-block;
  text-align: left;
  width: calc(100% - 355px);
  vertical-align: bottom;
}

.pagenation__item {
  display: inline-block;
  width: 340px;
  margin-left: 10px;
  text-align: right;
}

.axol_pager {
  display: block;
}
.axol_pager a {
  display: inline-block;
  margin: 0 3px;
}
.axol_pager .axol_pager_page_now,
.axol_pager .axol_pager_page_txt,
.axol_pager .axol_pager_pre_txt,
.axol_pager .axol_pager_post_txt {
  display: inline-block;
  border: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  padding: 4px 12px;
  text-align: center;
  color: #333;
}
.axol_pager .axol_pager_page_now:hover,
.axol_pager .axol_pager_page_txt:hover,
.axol_pager .axol_pager_pre_txt:hover,
.axol_pager .axol_pager_post_txt:hover {
  background: #f3f2f1;
  color: #333;
}
.axol_pager .axol_pager_page_now {
  background: #1f81db;
  border: 1px solid #1f81db;
  border-bottom: 3px solid #1967ae;
  margin: 0 3px;
  color: #fff;
}
.axol_pager .axol_pager_page_now:active {
  top: 0;
}
.axol_pager .axol_pager_page_now:hover {
  background: #1f81db;
  color: #fff;
}

/* ベリサインがあるベージのみレイアウト変更
-------------------------------------------------------------------*/
#mypage_login #footer,
#entry_agreement #footer {
  text-align: left;
}
#mypage_login .copyright,
#entry_agreement .copyright {
  text-align: center;
}

/* 登録重複画面画面
-------------------------------------------------------------------*/
#entry_matched .login__input__area,
#entry_matched_mn .login__input__area {
  width: 500px;
  margin: 30px auto 15px;
}
#entry_matched .login__input__area .id__area,
#entry_matched .login__input__area .pass__area,
#entry_matched_mn .login__input__area .id__area,
#entry_matched_mn .login__input__area .pass__area {
  display: inline-block;
  width: 47.5%;
  margin: 0 5px 5px;
}
#entry_matched .login__input__area .fb_ownAlertBox,
#entry_matched_mn .login__input__area .fb_ownAlertBox {
  text-align: center;
}
#entry_matched .login__forget,
#entry_matched_mn .login__forget {
  display: block;
  text-align: center;
}
#entry_matched .login__forget a,
#entry_matched_mn .login__forget a {
  background: #555;
  margin: 0 auto;
  color: #fff;
}
#entry_matched .match__message__toiawase,
#entry_matched_mn .match__message__toiawase {
  background: #f3f2f1;
  box-sizing: border-box;
  border: 1px solid #ccc;
  margin-top: 15px;
  padding: 10px 12px;
}
#entry_matched .go__seamless__mynavi,
#entry_matched_mn .go__seamless__mynavi {
  margin: 10px auto 0;
}
#entry_matched .go__seamless__mynavi a,
#entry_matched_mn .go__seamless__mynavi a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
}
#entry_matched .match__message,
#entry_matched_mn .match__message {
  margin-top: 20px;
}
#entry_matched .match__message u,
#entry_matched_mn .match__message u {
  text-decoration: none;
  font-weight: bold;
}

/* ブログ・レターなどの写真サイズ・配置
-------------------------------------------------------------------*/
.img__box__in_l,
.img__box__in_r,
.img__box__out_l,
.img__box__out_r,
.img__box__out_c {
  margin: 0;
}

.img__size__SS,
.img__size__S,
.img__size__M,
.img__size__R,
.img__size__L {
  max-width: 100%;
}

.img__box__out_l a,
.img__box__out_r a,
.img__box__out_c a,
.img__box__in_l a,
.img__box__in_r a {
  display: block;
}
.img__box__out_l .img__size__L,
.img__box__out_r .img__size__L,
.img__box__out_c .img__size__L,
.img__box__in_l .img__size__L,
.img__box__in_r .img__size__L {
  width: 780px;
}
.img__box__out_l .img__size__R,
.img__box__out_r .img__size__R,
.img__box__out_c .img__size__R,
.img__box__in_l .img__size__R,
.img__box__in_r .img__size__R {
  width: 444px;
}
.img__box__out_l .img__size__M,
.img__box__out_r .img__size__M,
.img__box__out_c .img__size__M,
.img__box__in_l .img__size__M,
.img__box__in_r .img__size__M {
  width: 260px;
}
.img__box__out_l .img__size__S,
.img__box__out_r .img__size__S,
.img__box__out_c .img__size__S,
.img__box__in_l .img__size__S,
.img__box__in_r .img__size__S {
  width: 150px;
}
.img__box__out_l .img__size__SS,
.img__box__out_r .img__size__SS,
.img__box__out_c .img__size__SS,
.img__box__in_l .img__size__SS,
.img__box__in_r .img__size__SS {
  width: 65px;
}

.img__box__out_l .img__size__L,
.img__box__in_l .img__size__L {
  margin: 25px 0;
}
.img__box__out_l .img__size__R,
.img__box__in_l .img__size__R {
  margin: 20px 28px 20px 0;
}
.img__box__out_l .img__size__M,
.img__box__in_l .img__size__M {
  margin: 10px 22px 10px 0;
}
.img__box__out_l .img__size__S,
.img__box__in_l .img__size__S {
  margin: 4px 20px 4px 0;
}
.img__box__out_l .img__size__SS,
.img__box__in_l .img__size__SS {
  margin: 4px 16px 4px 0;
}

.img__box__out_r .img__size__L,
.img__box__in_r .img__size__L {
  margin: 25px 0;
}
.img__box__out_r .img__size__R,
.img__box__in_r .img__size__R {
  margin: 20px 0 20px 28px;
}
.img__box__out_r .img__size__M,
.img__box__in_r .img__size__M {
  margin: 10px 0 10px 22px;
}
.img__box__out_r .img__size__S,
.img__box__in_r .img__size__S {
  margin: 4px 0 4px 20px;
}
.img__box__out_r .img__size__SS,
.img__box__in_r .img__size__SS {
  margin: 4px 0 4px 16px;
}

.img__box__out_c .img__size__L {
  margin: 25px 0;
}
.img__box__out_c .img__size__R {
  margin: 20px 28px;
}
.img__box__out_c .img__size__M {
  margin: 10px 22px;
}
.img__box__out_c .img__size__S {
  margin: 4px 20px;
}
.img__box__out_c .img__size__SS {
  margin: 4px 16px;
}

.img__box__in_l {
  float: left;
}

.img__box__in_r {
  float: right;
}

.img__box__out_l {
  text-align: left;
}

.img__box__out_r {
  text-align: right;
}

.img__box__out_c {
  text-align: center;
}

.img__box__out_l, .img__box__out_r, .img__box__out_c {
  clear: both;
}

.mov_block {
  margin: 10px 0;
  text-align: center;
}
.mov_block video {
  max-width: 100%;
}

/*-----------------------------------------------------------------/
/ pc_Design
/-----------------------------------------------------------------*/
/* login */
/* 全体
-------------------------------------------------------------------*/
#mypage_login #menu__contents__wrap {
  flex: 0 0 auto;
  height: auto;
}
#mypage_login #contents__wrap {
  height: 100%;
  margin: 0 auto;
}
#mypage_login #menu__area {
  box-sizing: border-box;
  width: 220px;
  margin: 0;
}
#mypage_login #menu__wrap {
  box-sizing: border-box;
  overflow: auto;
}
#mypage_login #contents__area {
  flex: 0 0 auto;
  height: 100%;
}
#mypage_login #contents__area__wrap {
  height: 100%;
  box-sizing: border-box;
}
#mypage_login #contents__title__wrap {
  display: none;
}
#mypage_login #main__contents {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  box-sizing: border-box;
  margin: 0 auto;
}
#mypage_login.nomenu .mypage__msg__common {
  width: 100%;
}

/* ログインボックス
-------------------------------------------------------------------*/
#login_box {
  display: flex;
  justify-content: center;
  flex-direction: column;
  background: transparent;
  width: 100%;
  margin: 0;
}

.login__message {
  display: none;
  margin-bottom: 10px;
}

/* 通常時 or シームレス or LINE
-------------------------------------------------------------------*/
#login_main {
  display: flex;
  flex-direction: row;
  margin: 0 auto;
  /* ID PASS ログイン時 */
  /* シームレス or line */
  /* シームレス + LINE */
}
#login_main #origin_login_box {
  width: 100%;
}
#login_main.normal .input__box {
  width: 100%;
}
#login_main.normal.seamless #origin_login_box, #login_main.normal.line #origin_login_box {
  display: flex;
  align-items: flex-start;
}
#login_main.normal.seamless #origin_login,
#login_main.normal.seamless #other_login, #login_main.normal.line #origin_login,
#login_main.normal.line #other_login {
  width: calc(50% - 12px);
}
#login_main.normal.seamless #other_login, #login_main.normal.line #other_login {
  margin-left: 24px;
}
#login_main.normal.seamless #other_login .seamless_info,
#login_main.normal.seamless #other_login .line_info, #login_main.normal.line #other_login .seamless_info,
#login_main.normal.line #other_login .line_info {
  margin-bottom: 10px;
  line-height: 1.7;
}
#login_main.normal.seamless.line #origin_login {
  width: 280px;
}
#login_main.normal.seamless.line #origin_login .login__id-pass__wrap {
  display: flex;
  flex-direction: column;
}
#login_main.normal.seamless.line #origin_login .login__id-pass__wrap .origin_id,
#login_main.normal.seamless.line #origin_login .login__id-pass__wrap .origin_pass {
  width: 100%;
}
#login_main.normal.seamless.line #origin_login .login__id-pass__wrap .origin_pass {
  margin: 8px 0 0;
}
#login_main.normal.seamless.line #other_login {
  width: calc(100% - 305px);
}
#login_main.normal.seamless.line #other_login #line_login {
  margin-top: 25px;
}

/* 通常時
-------------------------------------------------------------------*/
.login__id-pass__wrap {
  margin-bottom: 12px;
}
.login__id-pass__wrap.fb_alert .check__mark {
  position: absolute;
  background: #ff664b;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  padding: 8px 12px;
  bottom: 160px;
  left: 0;
}
.login__id-pass__wrap.fb_alert .check__mark::before {
  position: absolute;
  content: "";
  border-top: 7px solid #ff664b;
  border-left: 7px solid transparent;
  bottom: -6px;
  left: 12px;
}
.login__id-pass__wrap.fb_alert .check__mark li {
  color: #fff;
  opacity: 1;
}

.origin_id, .origin_pass {
  display: inline-block;
  width: calc(50% - 5px);
  margin-bottom: 3px;
}
.origin_id input, .origin_pass input {
  width: 100%;
}
.normal .origin_id input, .normal .origin_pass input {
  height: 42px;
  padding: 10px 15px;
}

.origin_pass {
  width: calc(50% - 5px);
  margin-left: 5px;
}

.id__label,
.pass__label {
  margin-bottom: 2px;
  font-size: 1.2rem;
  color: #333;
}

.login__button .btn__l {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  min-width: 100%;
  margin: 0;
  font-weight: bold;
  transition: 0.2s;
}
.login__button .btn__l:hover, .login__button .btn__l:focus {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
  opacity: 1;
}

/* シームレス時
-------------------------------------------------------------------*/
#seamless_login_box {
  display: flex;
  flex-direction: row;
}
#seamless_login_box .seamless_info,
#seamless_login_box .seamless_info_sub {
  margin-bottom: 15px;
  font-size: 1.15rem;
  line-height: 1.6;
  text-align: justify;
  color: #333;
}
#seamless_login_box .text__lang__en {
  margin-top: 5px;
}
#seamless_login_box .mynavi__banner {
  width: 100%;
  text-align: center;
}
#seamless_login_box .mynavi__banner img {
  width: 130px;
}
#seamless_login_box .seamless_info_sub {
  display: none;
  margin-top: 10px;
}

/* LINE設定時
-------------------------------------------------------------------*/
.line__banner {
  width: 100%;
  text-align: center;
}
.line__banner a {
  display: block;
  background-color: #00c300;
  background-image: url(../images/icons/button_arrow.png), url(../images/outersite/line_icon.png);
  background-position: right center, left 5px center;
  background-size: auto, 30px;
  background-repeat: no-repeat, no-repeat;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  border-bottom: 3px solid #00aa00;
  border-radius: 5px;
  padding: 11px 30px 11px 70px;
  font-weight: bold;
  color: #FFFFFF;
}
.line__banner a:hover {
  background-color: #00E000;
}
.line__banner a:active {
  background-color: #00B300;
}

/* what's new
-------------------------------------------------------------------*/
#login__whatsnew {
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}

.login__whatsnew__contents {
  max-height: 112px;
  padding: 12px 0 5px;
  overflow: auto;
  color: #333;
}
.login__whatsnew__contents dt {
  display: inline-block;
  width: 85px;
  margin-bottom: 5px;
  font-size: 1.2rem;
  text-align: center;
  vertical-align: top;
}
.login__whatsnew__contents dd {
  display: inline-block;
  width: calc(100% - 90px);
  margin-bottom: 12px;
  padding-bottom: 12px;
}
.login__whatsnew__contents dd:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 8px;
}

/* 規約ブロック
-------------------------------------------------------------------*/
#login__kiyaku {
  background: rgba(44, 169, 225, 0.1);
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: 100%;
  height: 122px;
  margin-top: 30px;
  padding: 10px 12px;
  overflow: auto;
  font-size: 1.2rem;
  color: #333;
}

/* 画像認証
-------------------------------------------------------------------*/
#login_auth .login__auth__area {
  background: #fff;
  border-radius: 5px;
  margin: 50px auto;
  padding: 30px;
  text-align: center;
}
#login_auth .login__auth__area img {
  background: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  margin: 0 auto;
  padding: 38px 18px 44px 30px;
}
#login_auth .login__auth__area #login_box {
  display: block;
  background: transparent;
  width: auto;
  margin: 18px auto;
}
#login_auth .login__auth__area #login_box input {
  text-align: center;
}
#login_auth .login__auth__area .login__forget {
  background: transparent;
  width: auto;
  border-radius: 0;
  margin-top: 10px;
}
#login_auth .login__auth__area .login__forget a {
  font-size: 1.08rem;
  text-decoration: underline;
  color: #333;
}
#login_auth .login__auth__area .form_button {
  margin: 0;
}
#login_auth .login__auth__area .btn__l {
  width: 100%;
  margin: 0;
}

/* layout CSS （縦メニュー）*/
/* ヘッダー
-------------------------------------------------------------------*/
#header__top__wrap {
  position: relative;
  width: 980px;
  margin: 0 auto;
  text-align: right;
  font-size: 0;
}
#header__top__wrap div, #header__top__wrap span, #header__top__wrap ul {
  vertical-align: middle;
}

/* メインエリア
-------------------------------------------------------------------*/
#menu__contents__wrap {
  flex: 1 0 auto;
  position: relative;
  width: 100%;
  height: auto;
}
#mypage_logout #menu__contents__wrap, #mypage_error #menu__contents__wrap, #entry_error #menu__contents__wrap {
  display: block;
}

#contents__wrap {
  display: flex;
  flex-direction: row;
  justify-content: center;
  width: 980px;
  height: 100%;
  margin: 0 auto;
}

#menu__area {
  position: relative;
  width: 200px;
  margin: 0 0 30px;
}

#menu__wrap {
  background: none;
  margin: 0;
  padding: 0;
}

#menu {
  min-height: 120px;
}

.menu__button {
  position: relative;
  display: block;
  font-weight: bold;
}
.menu__button a {
  display: block;
  box-sizing: border-box;
  color: #333;
}

#menu__sub {
  border-top: 1px dashed #ccc;
  width: 200px;
  margin-bottom: 15px;
  padding: 15px 0;
}
#menu__sub a {
  display: block;
  font-size: 1.1rem;
  transition: 0.2s;
  color: #333;
}
#menu__sub a:hover {
  color: #2ca9e1;
}

/* メインコンテンツ
-------------------------------------------------------------------*/
#contents__area {
  width: calc(100% - 60px - 200px);
  margin: 0 0 0 60px;
}

#contents__title__wrap #contents__title {
  width: 100%;
}

#main__contents {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* flash alert
-------------------------------------------------------------------*/
.flash_message {
  display: block;
  background-color: #ffd1c9;
  box-sizing: border-box;
  border: 1px solid #ff856f;
  width: 100%;
  margin: 10px 0 15px;
  padding: 10px 0;
  text-align: center;
  color: #c61e00;
}
.flash_message.is_success {
  background-color: #d7ecc7;
  border: 1px solid #94cd69;
  color: #487527;
}

/* 各ページ
-------------------------------------------------------------------*/
body#mypage_com div.form__wrap,
body#mypage_com div.form__item__wrap.type__memo {
  width: 100%;
  margin: 25px auto;
  box-sizing: border-box;
}
body#mypage_com .check__mark.fb_ownAlertStrs {
  display: block;
  width: auto;
}

.reserve__confirm__detail .form__item__group .address__item__left {
  display: block;
  box-sizing: border-box;
  border-right: none;
  border-left: 2px solid #ccc;
  width: 100%;
  margin-bottom: 2px;
  padding-left: 10px;
}
.reserve__confirm__detail .form__item__group .address__item__right {
  display: block;
  width: 100%;
  padding-left: 12px;
}

/*-----------------------------------------------------------------*/
/* design CSS 001t
/*-----------------------------------------------------------------*/
/* 全体の背景色・文字色
-------------------------------------------------------------------*/
div#page__all {
  background: #fff;
}

#header__top {
  background: transparent;
}

#page__all div#menu__contents__wrap {
  background: transparent;
}

#page__all div#contents__wrap {
  background: transparent;
}

#page__all div#menu__area {
  background: transparent;
}

#page__all div#contents__area {
  background: transparent;
}

div#footer {
  background: transparent;
}

div#footer__wrap {
  background: transparent;
}

#page__all div#menu__area #menu__text a,
#page__all div#menu__area .copyright__text,
#page__all div#menu__area .verisign__text,
#page__all div#menu__area .verisign__text__en,
#page__all #menu__text a,
#page__all .copyright__text,
#page__all .verisign__text,
#page__all .verisign__text__en,
#header__top #menu__text a,
#header__top .copyright__text,
#header__top .verisign__text,
#header__top .verisign__text__en,
#footer #menu__text a,
#footer .copyright__text,
#footer .verisign__text,
#footer .verisign__text__en {
  color: #333;
}

div#footer {
  border-top: 3px solid rgba(44, 169, 225, 0.2);
}

/* 見出しのデザイン title_03
-------------------------------------------------------------------*/
#contents__title__wrap {
  margin: 0 0 25px;
}

#contents__title {
  position: relative;
  border-bottom: 1px solid #2ca9e1;
  box-sizing: border-box;
  width: auto;
  margin: 0 auto;
  padding: 0 12px 10px 15px;
}
#contents__title p {
  vertical-align: middle;
  font-size: 16px;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #2ca9e1;
}

.login__info {
  color: #2ca9e1;
}

#top__message__title,
#top__letter__title {
  background: rgba(44, 169, 225, 0.7);
  background: linear-gradient(to bottom, rgba(44, 169, 225, 0.7) 0%, #2ca9e1 100%);
  border-radius: 15px;
  margin-bottom: 15px;
  padding: 6px 15px 5px;
  color: #fff;
}
#top__message__title span,
#top__letter__title span {
  display: inline-block;
  font-size: 1.3rem;
  color: #fff;
}

.login__whatsnew__title,
.login__title {
  background: rgba(44, 169, 225, 0.7);
  background: linear-gradient(to bottom, rgba(44, 169, 225, 0.7) 0%, #2ca9e1 100%);
  border-bottom: 1px solid #2ca9e1;
  border-radius: 15px;
  padding: 6px 15px 5px;
  color: #fff;
}

.login__whatsnew__title {
  margin-bottom: 0;
}

.login__title {
  margin-bottom: 10px;
}

#login__whatsnew {
  border-bottom: 1px solid #2ca9e1;
}

.login__whatsnew__contents dd {
  border-bottom: 1px dashed #2ca9e1;
}

/* ボタンのデザインと動き
-------------------------------------------------------------------*/
#menu {
  padding: 30px 0;
}

/* メニューボタン btn_05t
-------------------------------------------------------------------*/
.menu__button {
  width: 200px;
  vertical-align: top;
}
.menu__button + .menu__button {
  margin-top: 10px;
}
.menu__button a {
  position: relative;
  border-radius: 3px;
  border: 1px solid #ddd;
  padding: 1.175rem 0.8em;
  color: #333;
  transition: 0.1s;
}
.menu__button a::before, .menu__button a::after {
  content: "";
  position: absolute;
  width: calc(100% - 20px);
  margin: auto;
  left: 0;
  right: 0;
}
.menu__button a::before {
  border-top: 4px solid #fff;
  top: -2px;
}
.menu__button a::after {
  border-bottom: 4px solid #fff;
  bottom: -2px;
}
.menu__button a:hover {
  box-shadow: 0 0 0 2px #ddd inset;
}
.menu__button.menu__now a {
  box-shadow: 0 0 0 2px #ddd inset;
  color: #2ca9e1;
}
.menu__button.menu__now a::before {
  content: "";
  position: absolute;
  border-top: 7px solid transparent;
  border-left: 7px solid #ddd;
  border-bottom: 7px solid transparent;
  width: 0;
  top: calc(50% - 7px);
  left: auto;
  right: 5px;
  bottom: auto;
}
.menu__button.menu__now a::after {
  border-bottom: none;
}

.menu__mid a {
  color: #ff664b;
}
.menu__mid.menu__now a {
  color: #ff664b;
}

.menu__high a {
  border: 1px solid #ff664b;
  color: #ff664b;
}
.menu__high a:hover {
  box-shadow: 0 0 0 2px #ff664b inset;
}
.menu__high.menu__now a {
  box-shadow: 0 0 0 2px #ff664b inset;
  color: #ff664b;
}
.menu__high.menu__now a::before {
  border-left: 7px solid #ff664b;
}

#menu__sub {
  border-top: none;
  border-bottom: none;
  border-top: 1px dashed #ccc;
  padding: 15px 0;
}
#menu__sub .menu__now a {
  font-weight: bold;
  color: #2ca9e1;
}

.menu__sub__button a {
  margin-left: 8px;
  padding: 5px 0 2px;
  font-size: 1.3rem;
  color: #333;
  transition: 0.2s;
}
.menu__sub__button a:hover {
  color: #2ca9e1;
}
.menu__sub__button a::before {
  content: "・";
  margin-right: 3px;
  color: inherit;
  font-size: inherit;
  transition: 0.2s;
}

/* 各ページに対するCSS
-------------------------------------------------------------------*/
/* 全体
------------------------------------*/
div#page__all {
  box-sizing: border-box;
  border: 25px solid rgba(44, 169, 225, 0.2);
  min-width: 1030px;
  height: auto;
}
div#page__all #header__main {
  border-bottom: 3px solid rgba(44, 169, 225, 0.2);
}
div#page__all .header__main__contents {
  width: 980px;
  height: 110px;
  margin: 0 auto;
}
div#page__all #contents__area__wrap {
  padding: 30px 0;
}
div#page__all .form__wrap, div#page__all .form__item__wrap.type__memo {
  width: auto;
  margin: 0 auto;
}
div#page__all .proof__wrap .form__item {
  width: calc(100% - 50px);
  margin: 0 auto;
}

/* ログイン
------------------------------------*/
/* top画面
------------------------------------*/
#mypage_top .login__info {
  color: #2ca9e1;
}
#mypage_top div#main__contents {
  padding: 0 0 40px;
}

/*-----------------------------------------------------------------/
/ pc_page
/-----------------------------------------------------------------*/
/* pc_マイページコンテンツ */
/* reminder CSS id・passお忘れ */
#mypage_reminder .form__wrap {
  width: calc(100% - 200px);
  margin: 25px auto;
}
#mypage_reminder .notice__example {
  margin-top: 8px;
}
#mypage_reminder .finish__textbox {
  margin: 0;
  font-size: 15px;
  text-align: center;
}
#mypage_reminder .type__tel input {
  width: 200px;
  text-align: left;
}

/* from CSS 予約フォーム */
.simple__grp__title {
  position: relative;
  background: #eee;
  box-sizing: border-box;
  margin: 25px 0 10px;
  padding: 8px 12px;
  font-weight: bold;
}
.simple__grp__title span {
  margin-left: 8px;
  font-size: 1.1rem;
  font-weight: normal;
}
.simple__grp__title .btn__edit {
  position: absolute;
  top: 5px;
  right: 17px;
}

.form__item {
  display: block;
  box-sizing: border-box;
  border-top: 1px dashed #ddd;
  margin: 0;
  padding: 15px 0;
}
.form__item:first-of-type {
  border-top: none;
}
.form__item label {
  display: inline-flex;
  align-items: center;
  margin: 5px 10px 0 0;
  cursor: pointer;
  transition: 0.1s;
}
.form__item label:hover {
  opacity: 0.7;
}
.form__item label.lineBreak {
  display: flex;
  margin: 0 0 8px 0;
}

.form__item__title__wrap {
  width: 140px;
  font-size: 1.2rem;
}
.form__item__title__wrap div {
  display: table;
  width: 100%;
  margin-bottom: 1px;
  line-height: 1.2;
  font-weight: bold;
  text-align: right;
  word-wrap: break-word;
}
.form__item__title__wrap .form__item__title__en {
  margin-top: 3px;
  font-size: 1.1rem;
  font-weight: normal;
}

.form__item__multi,
.form__item__group {
  width: calc(100% - 245px);
  margin-left: 15px;
}

.form__item__multi .form__item {
  margin: 15px 0 0;
  padding: 15px 0 0;
}
.form__item__multi .form__item:first-of-type {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}
.form__item__multi .form__item__title__wrap {
  width: 100px;
}
.form__item__multi .form__item__title__wrap div {
  text-align: left;
}
.form__item__multi .form__item__group {
  width: calc(100% - 120px);
}

.form__item__group input[value=キャンセル],
.form__item__group input[value=変更] {
  background: #eee;
  border: 1px solid #d6d6d6;
  box-sizing: border-box;
  border-radius: 3px;
  margin: 0 0 0 10px;
  padding: 5px 10px;
  vertical-align: middle;
  font-size: 12px;
  color: #303030;
}
.form__item__group input[value=キャンセル]:focus,
.form__item__group input[value=変更]:focus {
  background: #e2e2e2;
}

.need__item, .noneed__item {
  width: 28px;
  height: 18px;
  line-height: 18px;
}

.need__item {
  background: #ff664b;
  color: #fff;
  border-radius: 3px;
  margin-left: 15px;
  font-size: 10px;
  text-align: center;
}
.is_foreign .need__item {
  background: transparent;
  color: #ff664b;
}
.is_foreign .need__item span {
  font-size: 16px;
}

.noneed__item {
  background: transparent;
  color: transparent;
  margin-left: 15px;
}

.need__item__small,
.noneed__item__small {
  position: relative;
  width: 100%;
}
.need__item__small::before,
.noneed__item__small::before {
  position: absolute;
  content: "*";
  font-size: 15px;
  top: 8px;
  left: -10px;
}

.need__item__small::before {
  color: #ff664b;
}

.noneed__item__small::before {
  color: transparent;
}

/* formの素材
//----------------------------------------------------------------*/
.name__left,
.name__right {
  display: inline-block;
  width: calc(50% - 8px);
}
.name__left input,
.name__right input {
  width: 100%;
}

.name__left {
  margin-right: 10px;
}

.input__label {
  margin-bottom: 2px;
  font-size: 1.1rem;
  line-height: 1.1;
}

.type__sex label {
  margin: 4px 0;
}

.type__postal {
  margin: 5px 0;
}
.type__postal span[name=yubing],
.type__postal span[name=yubink] {
  margin-right: 10px;
}
.type__postal input[name$=_h] {
  width: 75px;
  margin-right: 2px;
  text-align: center;
}
.type__postal input[name$=_l] {
  margin-left: 2px;
  width: 80px;
  text-align: center;
}
.type__postal input[type=button] {
  background: #eee;
  border: 1px solid #d6d6d6;
  box-sizing: border-box;
  border-radius: 3px;
  min-width: 120px;
  height: 35px;
  margin: 0;
  padding: 9px 12px;
  vertical-align: top;
  font-size: 12px;
  color: #303030;
}
.type__postal input[type=button]:focus {
  background: #e2e2e2;
}

.check__country {
  margin-top: 2px;
  vertical-align: 1px;
}
.check__country input {
  margin: 0 8px 0 0;
  vertical-align: 1px;
}

.type__prefectures select {
  display: inline-block;
  width: auto;
}

.form__tel__wrap {
  margin: 5px 0;
}

.type__tel input {
  width: 95px;
  text-align: center;
}

.type__tel.jusho__kaigai__g input {
  width: 200px;
}

.jusho__kaigai__g,
.jusho__kaigai__k input {
  width: 200px;
}

.address__same .form__item__group {
  width: 100%;
  margin: 8px 0 5px;
}
.address__same label {
  display: block;
  background: #fff;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 5px;
  width: 100%;
  margin-bottom: 8px;
  padding: 8px 12px;
  font-size: 1.3rem;
  transition: 0.2s;
}
.address__same label:hover {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
}

.type__e-mail,
.type__k-mail {
  margin: 5px 0 5px 15px;
}
.type__e-mail .notice__example,
.type__k-mail .notice__example {
  margin-top: 1px;
}

.mail__double:nth-child(1) input {
  border-radius: 3px 3px 0 0;
  border-bottom: 1px dashed #ccc;
  height: 35px;
  margin: 0;
}

.mail__double:nth-child(2) input {
  box-shadow: none;
  border-top: none;
  border-radius: 0 0 3px 3px;
  height: 34px;
  margin: 0 0 5px 0;
}
.mail__double:nth-child(2) input:focus {
  border: 1px solid rgba(90, 180, 255, 0.5);
  border-top: none;
  box-shadow: 0 1px 3px rgba(90, 180, 255, 0.5);
}

.mail__double.fb_alert .check__mark:before {
  top: -31px;
}

.type__school__head input {
  width: 100%;
}
.type__school__head ._search_param_label {
  margin-right: 10px;
}
.type__school__head .search_params_active {
  display: inline-block;
  width: 65px;
  margin-right: 12px;
  text-align: center;
}
.type__school__head .school__search, .type__school__head .school__detail__change {
  background: #555;
  color: #fff;
  border-radius: 3px;
  width: auto;
  padding: 10px 12px;
}
.type__school__head .school__search:focus, .type__school__head .school__detail__change:focus {
  background: #888;
}
.type__school__head .school__search:disabled, .type__school__head .school__detail__change:disabled {
  background: #ccc;
  color: #fafafa;
  box-shadow: none;
  cursor: default;
}
.type__school__head .school__search:disabled:hover, .type__school__head .school__detail__change:disabled:hover {
  box-shadow: none;
  opacity: 1;
}
.type__school__head .school__detail__change {
  margin-left: 0;
}
.type__school__head .notice__example {
  margin-top: 5px;
}

.type__school {
  margin-left: 15px;
}
.type__school select {
  background: none;
  width: 100%;
  min-height: 100px;
}
.type__school .dbk_text_wrap {
  margin: 5px 0 0;
}

.dbk_select_wrap select {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dbk_select_wrap select:disabled {
  background: #eee;
  color: #999;
  cursor: default;
}

.dbk_text_wrap {
  margin-top: 8px;
}
.dbk_text_wrap input {
  width: 100%;
}

._search_param_label {
  font-weight: bold;
}

.type__hi-school select {
  background: #fff;
}

.type__sc-parts input {
  display: inline-block;
}
.type__sc-parts input[type=text] {
  width: calc(100% - 212px);
  margin-right: 12px;
}
.type__sc-parts .search_freeze {
  margin-right: 10px;
}
.type__sc-parts input[type=button] {
  background: #555;
  color: #fff;
  border-radius: 3px;
  width: auto;
  margin-left: 0;
  padding: 10px 12px;
}

.type__sc-name {
  display: inline-block;
}
.type__sc-name select {
  background: none;
}

.sc__on-off__switch {
  display: inline-block;
  margin: 15px 0 10px;
}
.sc__on-off__switch label {
  display: block;
  background: #fff;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 7px 10px;
  font-size: 1.3rem;
  transition: 0.2s;
}
.sc__on-off__switch label input {
  margin: 0 5px 0 0;
  vertical-align: text-top;
}

.type__sc-name__other {
  display: inline-block;
  width: 100%;
}

.proof__wrap {
  box-shadow: 0 0 0 2px #ccc inset;
  margin-top: 15px;
}
.proof__wrap .form__item {
  border-top: none;
  width: calc(100% - 200px);
  margin: 0 auto;
}
.proof__wrap .form__item__title__wrap {
  width: 110px;
}
.proof__wrap .form__item__print:last-child {
  border-bottom: none;
}

.pass__double__wrap {
  display: inline-block;
  width: 325px;
  margin: 5px 0;
  vertical-align: middle;
}

.pass__double {
  display: inline-block;
  width: calc(50% - 5px);
}

.check__mark.fb_ownAlertStrs {
  display: block;
  width: 100%;
  vertical-align: middle;
}

.fb_ownAlertBox {
  margin-top: 5px;
}

.notice__example {
  margin-top: 5px;
  font-size: 1.15rem;
  color: #999;
}

.notice__example__pass {
  border-bottom: 1px solid #ff664b;
  margin: 10px auto 5px;
  padding: 5px;
  font-weight: bold;
  color: #ff664b;
  letter-spacing: 0.5px;
  text-align: center;
}

.type__antispam {
  margin: 5px 3px;
}
.type__antispam input {
  width: 138px;
  margin-left: 10px;
}

.antispam__img {
  background: #fff;
  width: 120px;
  vertical-align: -10px;
}

.form__bottom__textbox {
  border-top: 1px solid #ccc;
  margin-top: 20px;
  padding: 20px 0 10px;
  text-align: center;
}

.form__item__print .form__item__group,
.form__item__print .form__item__multi {
  width: calc(100% - 270px);
  margin-left: 30px;
}
.form__item__print .form__item__title,
.form__item__print .form__item__title__sub {
  font-weight: normal;
}
.form__item__print .form__item__group {
  font-weight: bold;
}
.form__item__print .form__item__multi .form__item__title__wrap {
  width: 90px;
}
.form__item__print .form__item__multi .form__item__group {
  width: calc(100% - 125px);
}

/* entry CSS 登録フォーム */
/* 規約 規約画面 (エントリー時)
------------------------------------------------------------------*/
#entry_agreement .agree__textbox {
  width: 100%;
  margin: 20px 0;
}
#entry_agreement .agree__rule {
  box-shadow: 0 2px 6px -4px rgba(0, 0, 0, 0.2) inset, 0 2px 4px -4px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: calc(100% - 200px);
  height: 300px;
  margin: 15px auto 0;
  padding: 15px;
  overflow: auto;
}
#entry_agreement div.form__bottom__textbox {
  text-align: center;
}
#entry_agreement .mynavi__link__area {
  box-sizing: border-box;
  border-top: 1px solid #ccc;
  margin: 20px auto 0;
  padding: 12px 0;
}
#entry_agreement .mynavi__link__text,
#entry_agreement .mynavi__link__btn {
  display: inline-block;
  vertical-align: middle;
}
#entry_agreement .mynavi__link__text {
  width: calc(100% - 170px);
  font-size: 1.2rem;
  margin-right: 15px;
}
#entry_agreement .mynavi__link__btn {
  width: 150px;
}
#entry_agreement .mynavi__link__btn a {
  display: block;
}
#entry_agreement .mynavi__link__btn img {
  width: 100%;
}

/* 登録情報 入力画面 (エントリー時)
------------------------------------------------------------------*/
#entry_input div.form__wrap {
  width: calc(100% - 80px);
  margin: 0 auto;
}
#entry_input div.form__bottom__textbox {
  text-align: center;
}

/* 登録情報 確認画面 (エントリー時)
------------------------------------------------------------------*/
#entry_confirm .form__wrap,
#entry_confirm .form__item__wrap {
  width: calc(100% - 200px);
  margin: 0 auto;
}
#entry_confirm .proof__wrap .form__item {
  width: calc(100% - 190px);
  margin: 0 auto;
}
#entry_confirm div.form__bottom__textbox {
  text-align: center;
}

/* 登録 完了画面 (エントリー時)
------------------------------------------------------------------*/
#entry_submit p {
  text-align: center;
}
#entry_submit .main__contents {
  text-align: center;
}
#entry_submit .finish__textbox {
  margin: 30px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
#entry_submit .finish__detail__wrap {
  background: #f8f8f8;
  border: 1px solid #ccc;
  margin: 25px auto;
}
#entry_submit .finish__detail {
  border-bottom: 1px dashed #ccc;
  margin: 15px;
  padding-bottom: 10px;
}
#entry_submit .finish__detail:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
#entry_submit .finish__detail__title {
  display: inline-block;
  width: calc(50% - 15px);
  margin-right: 20px;
  text-align: right;
  vertical-align: middle;
}
#entry_submit .finish__detail__text {
  display: inline-block;
  width: calc(50% - 15px);
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
}
#entry_submit .finish__btn__area {
  margin: 20px 0;
  text-align: center;
}
#entry_submit #link_url_a {
  margin: 0 auto;
}
#entry_submit .textbox {
  margin-top: 45px;
}
#entry_submit .reserve__confirm__detail {
  border: 1px solid #ccc;
}
#entry_submit .reserve__confirm__detail .reserve__header {
  text-align: left;
}
#entry_submit .reserve__confirm__detail .form__item {
  padding: 10px 0;
}
#entry_submit .reserve__confirm__detail .reserve__item__title {
  width: 100px;
}
#entry_submit .reserve__confirm__detail .form__item__group {
  width: calc(100% - 125px);
  text-align: left;
}

/* top CSS トップページ */
#mypage_top {
  background: #fff;
}
#mypage_top #contents__title {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
#mypage_top #contents__title p {
  display: inline-block;
  max-width: calc(100% - 465px);
  margin: 0 auto 0 0;
}
#mypage_top #login_info {
  display: block;
}
#mypage_top #login_num,
#mypage_top #last_login_time {
  display: inline-block;
  margin-left: 12px;
  vertical-align: bottom;
  font-size: 1.1rem;
}
#mypage_top .login__info .text__lang__en {
  display: block;
  margin: 0;
  font-size: 1rem;
}
#mypage_top #top__all__message {
  margin: 0 0 12px;
  width: 100%;
}
#mypage_top #main__contents {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  box-sizing: border-box;
}
#mypage_top #main__contents.top__freecontents {
  display: block;
}
#mypage_top #top__message__box {
  width: 64%;
}
#mypage_top #top__message__box.no__top__letter {
  width: 100%;
}
#mypage_top #top__letter__box {
  width: calc(36% - 35px);
  max-height: 365px;
  margin-left: 35px;
}
#mypage_top #top__message__contents {
  padding: 0 10px;
}
#mypage_top #top__letter__contents__item {
  border-bottom: 1px solid #ccc;
  margin: 5px 0;
  padding: 8px 10px;
}
#mypage_top #top__letter__contents__item:first-of-type {
  margin-top: 0;
  padding-top: 0;
}
#mypage_top #top__letter__contents__item .top__letter__date {
  display: block;
}
#mypage_top #top__letter__contents__item .top__letter__date.top__letter__unread:after {
  content: "new";
  background: #ff664b;
  border-radius: 3px;
  margin-left: 5px;
  padding: 2px 5px;
  vertical-align: text-top;
  font-size: 1rem;
  color: #fff;
}
#mypage_top #top__letter__contents__item .top__letter__subject {
  display: inline-block;
  margin-left: 0;
  width: 100%;
  vertical-align: middle;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  color: #1f70c1;
}
#mypage_top #top__letter__contents__item .top__letter__unread.top__letter__subject {
  font-weight: bold;
}
#mypage_top #top__no-letter__message {
  padding-left: 10px;
}

/* 規約確認画面 (ログイン時)
------------------------------------------------------------------*/
#mypage_agree .agree__textbox,
#mypage_pool .agree__textbox {
  width: 100%;
  margin: 20px 0;
}
#mypage_agree .agree__rule,
#mypage_pool .agree__rule {
  box-shadow: 0 2px 6px -4px rgba(0, 0, 0, 0.2) inset, 0 2px 4px -4px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: calc(100% - 200px);
  height: 300px;
  margin: 15px auto 0;
  padding: 15px;
  overflow: auto;
}
#mypage_agree .agree__confirm,
#mypage_pool .agree__confirm {
  border-top: 1px solid #ccc;
  margin-top: 20px;
  text-align: center;
  padding: 20px 0 10px;
}
#mypage_agree .agree__confirm label,
#mypage_pool .agree__confirm label {
  font-size: 1.4rem;
  font-weight: bold;
}
#mypage_agree .agree__confirm #confirm-check,
#mypage_pool .agree__confirm #confirm-check {
  opacity: 1;
  cursor: pointer;
}
#mypage_agree .agree__confirm #confirm-check + span,
#mypage_pool .agree__confirm #confirm-check + span {
  cursor: pointer;
}
#mypage_agree .agree__confirm #confirm-check:disabled,
#mypage_pool .agree__confirm #confirm-check:disabled {
  opacity: 0.5;
  cursor: default;
}
#mypage_agree .agree__confirm #confirm-check:disabled + span,
#mypage_pool .agree__confirm #confirm-check:disabled + span {
  opacity: 0.5;
  cursor: default;
}
#mypage_agree .agree__confirm .agree__confirm__caption,
#mypage_pool .agree__confirm .agree__confirm__caption {
  margin-top: 5px;
  font-size: 1.2rem;
  color: #ff664b;
}
#mypage_agree .agree__confirm + .form_button .btn__submit:disabled,
#mypage_pool .agree__confirm + .form_button .btn__submit:disabled {
  background-color: #c8c8c8;
  box-shadow: none;
  border-bottom: 3px solid transparent;
  color: #fff;
  cursor: default;
}
#mypage_agree .agree__confirm + .form_button .btn__submit:disabled:active,
#mypage_pool .agree__confirm + .form_button .btn__submit:disabled:active {
  top: 0;
}

#mypage_pool .agree__confirm {
  border: none;
  margin: 0;
}

/* letter CSS レターボックス */
.back__button {
  margin-top: 15px;
}

.tab__head__wrap {
  margin-bottom: 15px;
  border-bottom: 3px solid #1f81db;
}
.tab__head__wrap a {
  display: block;
  font-size: 1.3rem;
}

.tab__head__selected,
.tab__head__tab {
  display: inline-block;
  border-radius: 5px 5px 0 0;
  margin: 0;
  text-align: center;
  font-size: 0;
  vertical-align: bottom;
}

.tab__head__selected {
  background: #1f81db;
  border-top: 3px solid #1c74c5;
  width: 160px;
  padding: 8px 0 6px;
}
.tab__head__selected a {
  color: #fff;
  cursor: default;
}

.tab__head__tab {
  background: #eee;
  border-top: 3px solid #e1e1e1;
  width: 160px;
  padding: 6px 0 4px;
  transition: 0.2s;
}
.tab__head__tab a {
  color: #333;
}
.tab__head__tab:hover {
  padding: 8px 0 6px;
}

.mail__receive__list__top {
  position: relative;
  text-align: left;
}

.letter__message__no {
  margin-bottom: 10px;
}

.letter__message__new {
  display: inline-block;
  margin-bottom: 10px;
  padding: 5px 12px;
  font-size: 1.4rem;
  font-weight: bold;
  color: #ff664b;
}

.letter__folder__wrap {
  position: absolute;
  display: inline-block;
  max-width: calc(100% - 320px);
  top: -54px;
  right: 0;
}
.letter__folder__wrap #letter_folder {
  padding: 5px 30px 5px 8px;
  font-size: 1.3rem;
}

.mail__receive__list,
.mail__send__list {
  width: 100%;
  border: 1px solid #ccc;
  padding: 10px;
}
.mail__receive__list th,
.mail__send__list th {
  padding: 5px;
  background: #eee;
  text-align: center;
  font-size: 12px;
}
.mail__receive__list th .text__cell,
.mail__send__list th .text__cell {
  text-align: left;
}
.mail__receive__list td,
.mail__send__list td {
  padding: 8px;
  font-size: 1.3rem;
  text-align: center;
}
.mail__receive__list td a,
.mail__send__list td a {
  font-size: inherit;
}
.mail__receive__list tr:nth-child(odd),
.mail__send__list tr:nth-child(odd) {
  background: #eee;
}
.mail__receive__list .midoku .text__cell,
.mail__send__list .midoku .text__cell {
  font-weight: bold;
}
.mail__receive__list .midoku .text__cell:hover,
.mail__send__list .midoku .text__cell:hover {
  text-decoration: underline;
  color: #04c;
}
.mail__receive__list .text__cell,
.mail__receive__list .date__cell,
.mail__send__list .text__cell,
.mail__send__list .date__cell {
  text-align: left;
}
.mail__receive__list .text__cell a,
.mail__receive__list .date__cell a,
.mail__send__list .text__cell a,
.mail__send__list .date__cell a {
  text-align: left;
}
.mail__receive__list .date__cell,
.mail__send__list .date__cell {
  width: 120px;
  padding: 5px 12px;
}

.read__cell {
  width: 30px;
  padding: 0 0 0 10px;
}

.midoku .read__mark {
  background: url(../images/icons/mail_midoku_mark.svg) center center/15px no-repeat;
  color: transparent;
  animation: flash 1s infinite;
}
.kidoku .read__mark {
  color: transparent;
}
@keyframes flash {
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}

.append__cell,
.send__cell,
.important__cell {
  width: 22px;
  padding: 0;
}

.have__append {
  background: url(../images/icons/append_mark.svg) center center/15px no-repeat;
}

.have_send {
  background: url(../images/icons/retern_mark.svg) center center/12px no-repeat;
}

.important__mark {
  text-align: center;
  background: #ff664b;
  border-radius: 8px;
  margin: 0 auto;
  line-height: 20px;
  color: transparent;
  font-size: 10px;
}
.dgr1 .important__mark {
  width: 8px;
  height: 8px;
  background: #ff664b;
}
.dgr2 .important__mark {
  position: relative;
  width: 16px;
  height: 16px;
}
.dgr2 .important__mark:before {
  position: absolute;
  content: "！";
  color: #fff;
  font-size: 10px;
  top: -1px;
  left: 3px;
  font-weight: bold;
}

.letter__dgr2, .letter__dgr3 {
  position: relative;
  display: inline-block;
  float: right;
  font-size: 12px;
  padding: 3px 0 3px 8px;
  border-radius: 5px;
  text-align: right;
  margin: 0 0 3px;
}
.letter__dgr2:before, .letter__dgr3:before {
  position: absolute;
  background: #ff664b;
  margin: 0 auto;
  padding: 0 3px;
  line-height: 15px;
  font-size: 10px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  top: 3px;
  left: -13px;
}

.letter__dgr2:before {
  content: "";
  border-radius: 5px;
  width: 4px;
  height: 10px;
  top: 6px;
  left: -10px;
}

.letter__dgr3:before {
  content: "！";
  border-radius: 10px;
}

.letter__caption {
  font-size: 11px;
  margin-bottom: 15px;
}

.letter__detail__area {
  width: 100%;
  border: 1px solid #ccc;
  margin: 20px 0 5px;
}
.letter__detail__area td {
  padding: 10px 15px;
  border-bottom: 1px solid #ccc;
  font-size: 13px;
}
.letter__detail__area .letter__detail__title {
  width: 42px;
  text-align: center;
}
.letter__detail__area .letter__detail__title.detail__type__receive {
  border-left: 1px solid #ccc;
}
.letter__detail__area .letter__detail__text {
  border-left: 1px dashed #ccc;
}
.letter__detail__area .letter__detail__text.detail__type__date {
  width: 125px;
}
.letter__detail__area .letter__detail__add__file {
  display: inline-block;
  background: url(../images/icons/append_mark.svg) left center/15px no-repeat;
  padding-left: 20px;
}
.letter__detail__area .letter__detail__body {
  padding: 20px 23px;
  line-height: 1.6em;
  font-size: 1.3rem;
}

.letter__confirm__area {
  position: relative;
  background: #fff;
  border: 1px solid #ccc;
  border-top: 3px solid #ccc;
  padding: 18px 23px 25px;
  margin: 0 0 10px;
}
.letter__confirm__area .form_button {
  margin: 15px 0 0;
}

.letter__confirm__form__wrap {
  width: 100%;
  margin: 15px 0 0;
}
.letter__confirm__form__wrap:first-child {
  margin: 0;
}
.letter__confirm__form__wrap .letter__confirm__title {
  margin-bottom: 3px;
  font-size: 13px;
}
.letter__confirm__form__wrap textarea {
  min-width: 100%;
  max-width: 100%;
  min-height: 120px;
  max-height: 300px;
}
.letter__confirm__form__wrap .letter__confirm {
  border-top: 1px dashed #ccc;
  padding-top: 10px;
}

.letter__confirm.reply_contents {
  white-space: pre-wrap;
}

.confirm__top__text {
  margin: 10px 0;
}

.go__pagetop {
  display: inline-block;
  float: left;
  margin: 12px 10px 30px 0;
  text-align: left;
}
.go__pagetop a {
  background: #555 url(../images/icons/up_arrow.svg) 12px center/12px no-repeat;
  border-radius: 5px;
  box-sizing: border-box;
  border-bottom: 3px solid #3c3c3c;
  padding: 6px 14px 6px 28px;
  font-size: 1.1rem;
  color: #fff;
  transition: 0.2s;
}
.go__pagetop a:hover {
  background-color: #484848;
}

/* reserve CSS 予約フォーム */
.reserve__event {
  border: 1px solid #ccc;
  margin: 15px 0;
  padding: 15px 15px;
}
.reserve__event .reserve__event__title {
  position: relative;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 15px;
}
.reserve__event .reserve__event__title:before {
  position: absolute;
  content: "";
  background: #e0bf2d;
  width: 3px;
  height: 25px;
  top: -3px;
  left: -15px;
}
.reserve__event .text_open {
  background: #f3f2f1;
  box-sizing: border-box;
  margin-bottom: 25px;
  padding: 8px 12px;
}
.reserve__event .reserve__event__text {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.reserve__event .reserve__event__text > span {
  margin: 0 8px 8px 0;
}
.reserve__event .reserve__event__text .reserve__btn__next {
  display: inline-block;
  margin: 0 0 0 auto;
}
.reserve__event .reserve__event__text .reserve__btn__next .btn__l {
  margin: 0;
}

.textbox.notices {
  margin-top: 5px;
}

.reserve__list__wrap {
  margin: 15px 0;
}
.reserve__list__wrap h1 {
  margin-bottom: 5px;
}
.reserve__list__wrap p {
  margin-left: 15px;
}
.reserve__list__wrap .no__reserve__day {
  border: 1px solid #ccc;
  margin: 20px 15px;
  padding: 12px 15px;
}

.reserve__list {
  cursor: pointer;
}

.reserve__list__item {
  position: relative;
  display: block;
  border: 1px solid transparent;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  margin: 20px 15px;
  padding: 12px 0;
  color: #333;
  cursor: pointer;
  transition: 0.2s;
}
.reserve__list__item:hover {
  border: 1px solid #00abeb;
}
.reserve__list__item input {
  vertical-align: middle;
}

.reserve__list__accordion .reserve__list__check .item__recep, .reserve__list__accordion .reserve__list__check span, .item__cell .item__recep {
  border-radius: 5px;
  width: 50px;
  padding: 2px 4px;
  font-size: 11px;
  text-align: center;
}

.item__recep.form__open {
  background: #75c63c;
  color: #fff;
}

.item__recep.form__ready {
  border: 1px solid #aaa;
  color: #888;
}

.item__recep.form__sankaku {
  background: #f5be00;
  color: #fff;
}

.item__recep.form__full {
  background: #f95800;
  color: #fff;
}

.item__recep.form__close {
  background: #888;
  color: #fff;
}

.item__recep.form__reserved {
  border: 1px solid #ed4e3b;
  box-sizing: border-box;
  width: 58px;
  font-weight: bold;
  color: #ed4e3b;
}

.item__check {
  width: 50px;
  text-align: center;
}
.item__check input {
  margin: 0;
}

.item__cell {
  display: table-cell;
  vertical-align: middle;
}
.item__cell .item__kaijyo {
  display: block;
  width: 100%;
  font-weight: bold;
  font-size: 15px;
  margin: 0 15px;
}
.item__cell .item__date {
  margin: 0 10px 0 15px;
}
.item__cell .item__date .item__day {
  display: inline-block;
}
.item__cell .item__date .item__time {
  display: inline-block;
  margin-left: 10px;
}

.reserve__list__accordion .reserve__list__item {
  padding: 0;
}
.reserve__list__accordion .reserve__list__item label {
  box-shadow: none;
  cursor: pointer;
}
.reserve__list__accordion .item__day {
  margin: 0 15px;
}
.reserve__list__accordion .reserve__list__check {
  padding: 12px;
  transition: 0.2s;
}
.reserve__list__accordion .reserve__list__check label {
  display: inline-block;
  box-sizing: border-box;
  margin: 0 20px;
  padding: 8px 8px 8px 5px;
  border-radius: 5px;
  transition: 0.2s;
}
.reserve__list__accordion .reserve__list__check label:hover {
  background: #fbffb9;
}
.reserve__list__accordion .reserve__list__check .item__check {
  display: inline-block;
  width: 20px;
  text-align: center;
}
.reserve__list__accordion .reserve__list__check .item__recep {
  display: inline-block;
}
.reserve__list__accordion .reserve__list__check .item__time {
  display: inline-block;
}
.reserve__list__accordion input[type=checkbox].on-off {
  display: none;
}
.reserve__list__accordion input[type=checkbox].on-off:checked {
  position: relative;
}
.reserve__list__accordion input[type=checkbox].on-off + .reserve__list__check {
  width: 100%;
  max-height: 0;
  overflow: hidden;
  padding: 0 10px;
}
.reserve__list__accordion input[type=checkbox].on-off:checked + .reserve__list__check {
  width: 100%;
  max-height: 100em;
  border-top: 1px dashed #ccc;
  box-sizing: border-box;
  padding: 10px;
}

.reserve__cancel:hover {
  opacity: 0.75;
}

.reserve__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f3f2f1;
  border-bottom: 3px solid #ddd;
  margin-bottom: 10px;
  padding: 5px 5px 5px 15px;
  line-height: 2.5;
  font-size: 1.4rem;
  font-weight: bold;
}

.reserve__header__title {
  display: inline-block;
}
.reserve__header__title .text__lang__en {
  margin: 0;
}

.reserve__confirm__buttons {
  float: right;
  display: inline-block;
  font-size: 0;
}
.reserve__confirm__buttons form[name=form_cancel] {
  position: relative;
}
.reserve__confirm__buttons form, .reserve__confirm__buttons .button__left, .reserve__confirm__buttons .button__right {
  display: inline-block;
  vertical-align: top;
}
.reserve__confirm__buttons input {
  display: inline-block;
  height: 38px;
  margin: 0;
  padding: 0 8px 0 28px;
  font-size: 1.2rem;
  transition: 0.2s;
}
.reserve__confirm__buttons input:hover {
  background-color: #e9e8e7;
  opacity: 1;
}
.reserve__confirm__buttons .reserve__cancel {
  background: url(../images/icons/icon_cancel.svg) 12px 50%/11px no-repeat;
}
.reserve__confirm__buttons .reserve__change {
  background: url(../images/icons/icon_change.svg) 12px 50%/11px no-repeat;
}
.reserve__confirm__buttons .reserve__print {
  background: #777 url(../images/icons/icon_print.svg) 12px 50%/11px 11px no-repeat;
  border-bottom: 3px solid #555;
  border-radius: 3px;
  font-size: 1.2rem;
  color: #fff;
}
.reserve__confirm__buttons .reserve__print:hover {
  background-color: #555;
}
.reserve__confirm__buttons .cancel__box {
  display: none;
  position: absolute;
  background: #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  top: 43px;
  left: 0;
  z-index: 10;
}
.reserve__confirm__buttons .cancel__box::before {
  content: "";
  position: absolute;
  border-top: 8px solid transparent;
  border-left: 8px solid #fff;
  top: -8px;
  left: 15px;
}
.reserve__confirm__buttons .cancel__box .reserve__menu__btn {
  background: none;
  transition: 0.2s;
}
.reserve__confirm__buttons .cancel__box .reserve__menu__btn:hover {
  background: #f6f5f4;
}
.reserve__confirm__buttons .cancel__box .reserve__menu__btn + .reserve__menu__btn {
  border-top: 1px solid #ddd;
}
.reserve__confirm__buttons .cancel__box input {
  background: transparent;
  border-bottom: none;
  width: 265px;
  height: auto;
  padding: 10px 12px;
  text-align: left;
}

.reserve__confirm__detail {
  position: relative;
  margin: 10px 0 0;
}
.reserve__confirm__detail .form__item:nth-of-type(2) {
  border-top: none;
}
.reserve__confirm__detail .form__item:last-child {
  border-bottom: none;
}
.reserve__confirm__detail .reserve__item__title {
  display: inline-block;
  width: 80px;
  text-align: right;
  vertical-align: middle;
}
.reserve__confirm__detail .item__address .reserve__item__title,
.reserve__confirm__detail .item__important .reserve__item__title {
  vertical-align: top;
}
.reserve__confirm__detail .form__item__group {
  width: calc(100% - 110px);
  margin: 0;
  padding-left: 20px;
  font-weight: bold;
}
.reserve__confirm__detail .address__item__group {
  margin-bottom: 8px;
  font-weight: normal;
}
.reserve__confirm__detail .item__map img {
  max-width: 300px;
}
.reserve__confirm__detail .item__map .map__caption a {
  position: relative;
  margin-left: 10px;
  font-size: 12px;
  font-weight: normal;
}
.reserve__confirm__detail .item__map .map__caption a::before {
  position: absolute;
  content: "";
  border-top: 5px solid transparent;
  border-left: 5px solid #04c;
  border-bottom: 5px solid transparent;
  top: calc(50% - 5px);
  left: -10px;
}
.reserve__confirm__detail .address__item__left {
  display: inline-block;
  box-sizing: border-box;
  border-right: 1px solid #ccc;
  width: 90px;
  margin-right: 10px;
  padding-right: 10px;
  font-weight: normal;
  vertical-align: top;
}
.reserve__confirm__detail .address__item__right {
  display: inline-block;
  box-sizing: border-box;
  width: calc(100% - 120px);
  vertical-align: top;
  font-weight: bold;
}
.reserve__confirm__detail .address__item__right a {
  text-decoration: underline;
}

.reserve__confirm__detail.no__map .form__item {
  width: 100%;
}

#print__ticket {
  background: #fff;
  box-sizing: border-box;
  padding: 10px;
}
#print__ticket .reserve__ticket__header {
  min-width: 670px;
  margin-bottom: 12px;
}
#print__ticket .reserve__qr {
  float: left;
}
#print__ticket .reserve__qr img {
  width: 120px;
}
#print__ticket .reserve__barcode {
  float: right;
  padding: 13px 13px 5px;
}
#print__ticket .reserve__confirm__detail {
  box-sizing: border-box;
  min-width: 800px;
  padding: 0;
}
#print__ticket .reserve__ticket__title {
  border-bottom: 2px solid #333;
  margin: 0 15px 30px 135px;
}
#print__ticket .reserve__ticket__mark {
  display: inline-block;
  height: 25px;
  margin: 0 5px;
  padding-top: 5px;
  font-size: 16px;
}
#print__ticket .reserve__ticket__mark span {
  vertical-align: bottom;
}
#print__ticket .reserve__ticket__mark span:first-child {
  border-right: 1px solid #333;
  padding-right: 10px;
  margin-right: 10px;
  font-weight: bold;
}
#print__ticket .reserve__ticket__title__name {
  margin: 16px 5px;
  line-height: 1.3;
  font-size: 22px;
  font-weight: bold;
}
#print__ticket .ticket__detail {
  padding: 0 13px;
  font-size: 1.5rem;
}
#print__ticket .ticket__detail__title {
  display: inline-block;
  box-sizing: border-box;
  border: 1px solid #333;
  width: 95px;
  margin: 12px 48px 0 0;
  padding: 8px 3px;
  font-weight: bold;
  text-align: center;
  vertical-align: top;
}
#print__ticket .ticket__detail__body {
  display: inline-block;
  width: 100%;
  vertical-align: top;
}
#print__ticket .reserve__item {
  width: 100%;
  box-sizing: border-box;
  margin: 5px 0;
}
#print__ticket .reserve__item:first-child {
  margin-top: 0;
}
#print__ticket .item__idname .item__body span {
  margin-right: 20px;
}
#print__ticket .item__address div + div {
  margin-top: 3px;
}
#print__ticket .item__address .item__address_caption {
  margin-top: 5px;
  font-weight: normal;
}
#print__ticket .item__address .item__title,
#print__ticket .item__printmap .item__title,
#print__ticket .item__caution .item__title {
  vertical-align: top;
}
#print__ticket .item__address .item__body,
#print__ticket .item__printmap .item__body,
#print__ticket .item__caution .item__body {
  margin: 5px 0 0 22px;
}
#print__ticket .item__place__address {
  margin-top: 3px;
}
#print__ticket .item__caution {
  border-top: 1px dashed #333;
  margin-top: 15px;
  padding-top: 20px;
}
#print__ticket .item__title {
  display: inline-block;
  box-sizing: border-box;
  border-right: 1px solid #ccc;
  min-width: 95px;
  padding: 5px 10px 0 0;
  text-align: right;
  vertical-align: middle;
  font-size: 13px;
}
#print__ticket .item__title div {
  text-align: right;
  vertical-align: top;
}
#print__ticket .item__body {
  display: inline-block;
  width: calc(100% - 125px);
  margin: 0 0 0 22px;
  font-size: 14px;
  vertical-align: middle;
}
#print__ticket .item__body img {
  max-width: 350px;
  max-height: 300px;
  margin: 0;
}
#print__ticket .important {
  font-weight: bold;
}

/* com CSS 設問フォーム */
.type__memo .form__item__title__wrap {
  margin: 2px 0;
  vertical-align: top;
}
.type__memo .need__item,
.type__memo .noneed__item {
  vertical-align: top;
}

.form__item__text {
  margin-bottom: 5px;
}

.memo_question_alert_str {
  font-size: 1.1rem;
  color: #ff664b;
}

.form__item__print .form__item__text {
  color: #888;
}
.form__item__print .form__item__answer {
  margin-left: 12px;
}

.form__item .memo__select {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.form__item .memo__checkbox {
  display: block;
}
.form__item .memo__num {
  width: 100px;
  ime-mode: disabled;
}
.form__item .memo__text {
  width: 100%;
}
.form__item input[type=text].memo__span {
  width: 80px;
  margin-right: 5px;
}
.form__item input[type=text].memo__span + .memo__span {
  width: 65px;
  margin-left: 13px;
}
.form__item .select_wrap .fb_dateElement_Y {
  width: 85px;
  margin-left: 0;
}
.form__item .select_wrap .fb_dateElement_m,
.form__item .select_wrap .fb_dateElement_d {
  width: 65px;
  margin-left: 10px;
}
.form__item .memo__area {
  width: 100%;
  max-width: none;
  min-height: 50px;
  margin-bottom: 0;
}

#mypage_com .form__item__multi,
#mypage_com .form__item__group {
  width: calc(100% - 208px);
}
#mypage_com .form__item__multi .form__item__group {
  width: calc(100% - 120px);
}
#mypage_com .form__item__print .form__item__multi,
#mypage_com .form__item__print .form__item__group {
  width: calc(100% - 175px);
}
#mypage_com .form__item__print .form__item__multi .form__item__group {
  width: calc(100% - 125px);
}
#mypage_com .type__tel input {
  width: 85px;
}
#mypage_com .type__memo .form__item__title__wrap {
  width: 65px;
}
#mypage_com .type__memo .form__item__group {
  width: calc(100% - 132px);
}
#mypage_com .type__memo .form__item__multi {
  width: calc(100% - 85px);
}
#mypage_com .type__memo .form__item__multi .need__item, #mypage_com .type__memo .form__item__multi .noneed__item {
  margin: 0;
}
#mypage_com .type__memo .form__item__multi .form__item__group {
  display: inline-block;
  width: calc(100% - 48px);
}
#mypage_com .type__memo .form__item__print {
  display: block;
  border-bottom: 1px dashed #ddd;
  padding: 15px 0;
}
#mypage_com .type__memo .form__item__print .form__item__group {
  width: calc(100% - 100px);
}
#mypage_com .type__memo .form__item__print .form__item__multi {
  width: calc(100% - 100px);
  margin-left: 30px;
}
#mypage_com .type__memo .form__item__print .form__item__multi .form__item__group {
  width: 100%;
  margin: 0;
}

#main__contents {
  position: relative;
}

.position_wrapper {
  float: right;
  text-align: right;
  z-index: 1000;
}

.session__limit {
  display: flex;
  align-items: center;
  background: #f9f8f7;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(0, 0, 0, 0.2);
  border: 1px solid #ddd;
  padding-left: 12px;
  font-size: 1.1rem;
  top: 0;
  right: 0;
  z-index: 1;
}
.session__limit div, .session__limit input {
  display: inline-block;
}

.session__limit__time {
  background: #fff;
  box-shadow: 0 2px 6px -4px rgba(0, 0, 0, 0.2) inset, 0 2px 4px -4px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #e3e2e1;
  padding: 5px 8px;
}

.session__limit__reload__btn {
  background: #777;
  border-bottom: 3px solid #999;
  height: 33px;
  margin-left: 5px;
  padding: 0 8px;
  color: #fff;
  transition: 0.2s;
}
.session__limit__reload__btn:hover {
  opacity: 0.75;
}

.counter span {
  display: inline-block;
  background: #555;
  border-radius: 3px;
  margin: 8px 0 0;
  padding: 5px 8px;
  font-size: 1.1rem;
  color: #fff;
  cursor: pointer;
  transition: 0.1s;
}
.counter span:hover {
  opacity: 0.75;
}

.com__save {
  padding: 12px 15px;
}

.is_foreign .form__item .select_wrap .fb_dateElement_m,
.is_foreign .form__item .select_wrap .fb_dateElement_d,
.is_foreign .form__item .select_wrap .fb_dateElement_Y {
  margin: 0;
}

/* ment CSS 登録情報修正 */
#mypage_ment .type__login-pass .notice__example {
  margin: 0 0 5px 130px;
}
#mypage_ment .type__login-pass .form__item__title__wrap {
  width: 65px;
}
#mypage_ment .type__login-pass .form__item__group {
  margin: 0 0 0 10px;
}
#mypage_ment .type__login-pass input[type=password] {
  width: 100%;
  margin: 0;
}
#mypage_ment .type__login-pass .login__forget {
  background: transparent;
  width: calc(100% - 210px);
  margin: 5px 0 0 130px;
  text-align: left;
  font-size: 1.2rem;
}
#mypage_ment .type__login-pass .login__forget a {
  text-decoration: underline;
}

#mypage_ment .form__item__print .form__item__multi {
  width: calc(100% - 260px);
}
#mypage_ment .form__item__title__wrap {
  width: 120px;
}
#mypage_ment .ment__input .type__memo .form__item__title__wrap {
  width: 65px;
}
#mypage_ment .ment__input .type__memo .form__item__multi, #mypage_ment .ment__input .type__memo .form__item__group {
  width: calc(100% - 132px);
}
#mypage_ment .form__item__multi .form__item__title__wrap {
  width: 90px;
}
#mypage_ment .ment__input .form__item__multi .form__item__group {
  width: calc(100% - 110px);
}
#mypage_ment .form__wrap {
  width: 100%;
}
#mypage_ment .form__item__print,
#mypage_ment .form__item__print__wrap {
  position: relative;
}
#mypage_ment .form__item__print.type__memo input.btn__s,
#mypage_ment .form__item__print__wrap.type__memo input.btn__s {
  top: -45px;
}
#mypage_ment .form__item__print .form__item__group {
  max-width: 480px;
}
#mypage_ment .form__button {
  margin: 20px 0;
  text-align: center;
}
#mypage_ment .btn__edit {
  position: absolute;
  top: calc(50% - 18px);
  right: 0;
}
#mypage_ment .type__memo {
  margin: 0;
}
#mypage_ment .type__memo .form__item__group {
  width: calc(100% - 155px);
}
#mypage_ment .form__item__print.type__pass {
  width: 100%;
  margin: 0;
}
#mypage_ment .form__item__print.type__pass .form__item__title {
  display: inline-block;
  width: 120px;
  margin-bottom: 1px;
  line-height: 1.2;
  font-weight: bold;
  text-align: right;
  color: #555;
  vertical-align: middle;
  word-wrap: break-word;
}
#mypage_ment .form__item__print.type__pass .form__item__group {
  max-width: none;
}
#mypage_ment .ment__input .form__item__multi {
  width: calc(100% - 188px);
}
#mypage_ment .type__pass__new .type__pass {
  width: calc(100% - 300px);
  margin: 0 0 0 15px;
}
#mypage_ment .on-off__switch {
  display: none;
}
#mypage_ment #d_line {
  display: none;
}

.ment__stop__area {
  background: #ffebe6;
  border: none;
}
.ment__stop__area .form__item__group {
  margin-left: 12px;
}
.ment__stop__area .form__item__group div {
  display: inline-block;
  margin: 3px 0;
}
.ment__stop__area .form__item__title {
  display: inline-block;
  width: 140px;
  text-align: right;
  font-weight: bold;
  color: #333;
}
.ment__stop__area input {
  margin: 0;
}
.ment__stop__area #taikai_form_area {
  margin-right: 10px;
}

/* toiawase CSS お問い合わせ */
.contact__top__text {
  display: inline-block;
  width: calc(100% - 145px);
  margin: 10px 0;
}

.contact__confirm__area {
  position: relative;
  background: #fff;
  border: 1px solid #ccc;
  border-top: 3px solid #ccc;
  padding: 18px 23px 25px;
  margin: 0 0 10px;
}
.contact__confirm__area .form_button {
  margin: 15px 0 0;
}

.contact__confirm__form__wrap {
  width: 100%;
  margin: 15px 0 0;
}
.contact__confirm__form__wrap:first-child {
  margin: 0;
}
.contact__confirm__form__wrap .contact__confirm__title {
  display: flex;
  align-items: center;
  margin-bottom: 3px;
  font-size: 13px;
}
.contact__confirm__form__wrap .contact__confirm__title .need__item,
.contact__confirm__form__wrap .contact__confirm__title .noneed__item {
  float: initial;
  margin-left: 8px;
}
.contact__confirm__form__wrap textarea {
  min-width: 100%;
  max-width: 100%;
  min-height: 120px;
  max-height: 300px;
}
.contact__confirm__form__wrap .contact__confirms {
  border-top: 1px dashed #ccc;
  padding-top: 10px;
}

.contact__confirms.contact__contents {
  white-space: pre-wrap;
}

.contact__send__list {
  width: 100%;
  border: 1px solid #ccc;
  margin: 10px 0;
}
.contact__send__list tr:nth-child(odd) {
  background: #eee;
}
.contact__send__list th {
  padding: 5px 8px;
  background: #eee;
  text-align: left;
  font-size: 12px;
}
.contact__send__list td {
  padding: 5px 8px;
  font-size: 13px;
  text-align: left;
}
.contact__send__list td a {
  font-size: inherit;
}
.contact__send__list .title__cell {
  text-align: left;
}
.contact__send__list .section__cell {
  width: 140px;
  text-align: center;
}
.contact__send__list .date__cell {
  width: 185px;
  text-align: left;
}

.contact__detail__area {
  width: 100%;
  border: 1px solid #ccc;
  box-sizing: border-box;
  margin: 20px 0 5px;
}
.contact__detail__area td {
  padding: 5px 10px;
  border-bottom: 1px solid #ccc;
  font-size: 13px;
}
.contact__detail__area + .contact__detail__area {
  margin-top: 10px;
}
.contact__detail__area .contact__detail__title {
  width: 42px;
  text-align: center;
}
.contact__detail__area .detail__type__send {
  width: 60px;
  border-left: 1px solid #ccc;
}
.contact__detail__area .contact__detail__text {
  border-left: 1px dashed #ccc;
}
.contact__detail__area .detail__type__date {
  width: 180px;
  text-align: center;
}
.contact__detail__area .contact__detail__body {
  line-height: 1.6em;
  font-size: 13px;
}

#mypage__toiawase__open .form__wrap {
  padding: 0 25px;
}
#mypage__toiawase__open span[name=tel] input {
  display: inline-block;
  width: 95px;
}
#mypage__toiawase__open .form__item__caption {
  margin-top: 5px;
  font-size: 1.15rem;
  color: #999;
}
#mypage__toiawase__open textarea {
  width: 100%;
  min-width: 100%;
  margin-bottom: 0;
}
#mypage__toiawase__open [name=tel] {
  width: 200px;
}
#mypage__toiawase__open .form__item__print .form__item__group {
  margin-left: 60px;
}
#mypage__toiawase__open .form__item__print .name__left,
#mypage__toiawase__open .form__item__print .name__right {
  width: auto;
}
#mypage__toiawase__open .form__item__print .form__item__answer {
  margin-left: 0;
}
#mypage__toiawase__open .type__antispam {
  margin-left: 12px;
}
#mypage__toiawase__open .contact__top__text {
  width: 100%;
}

#mypage_nomenu #page__all #contents__area {
  width: calc(100% - 60px);
  margin: 0;
}

/* child_entry CSS 職種エントリー（親子） */
.entry__caption {
  margin: 20px 0;
}

.child__list {
  border-top: 1px solid #ccc;
  margin: 10px 0;
}
.child__list .child__div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #ccc;
  padding: 15px 0 15px 10px;
}
.child__list .child__name {
  font-size: 15px;
  font-weight: bold;
}
.child__list .button__shuryo,
.child__list .button__kaisimae {
  box-shadow: none;
  color: #888;
  cursor: default;
}
.child__list .button__shuryo:active,
.child__list .button__kaisimae:active {
  top: 0;
}

/* blog CSS ブログ */
.blog__menu {
  text-align: right;
}
.blog__menu select {
  width: auto;
}

.blog__contents {
  border: 1px solid #ccc;
  margin: 30px auto;
  padding: 30px 30px 20px;
}
.blog__contents:first-of-type {
  margin-top: 15px;
}

.blog__title {
  border-bottom: 1px solid #2ca9e1;
  padding-bottom: 20px;
  font-size: 2rem;
  font-weight: bold;
}

.blog__date {
  font-size: 12px;
  color: #aaa;
  margin: 20px 0 30px;
}

.blog__text {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.4px;
  word-break: normal;
}
.blog__state {
  text-align: right;
  margin: 20px 0 0;
}
.blog__state a {
  border-radius: 3px;
  padding: 5px 8px;
  font-size: 1.2rem;
}
.blog__state .blog__permlink_bt {
  border: 1px solid #ddd;
  background-color: #eee;
}
.blog__state .blog__permlink_bt:hover {
  background-color: #ddd;
}
.blog__state .blog__category_bt {
  border: 1px solid #c0e5f6;
  background-color: #eaf6fc;
}
.blog__state .blog__category_bt:hover {
  background-color: #c0e5f6;
}

.blog__pager__top {
  display: inline-block;
  width: 100%;
  margin-top: 10px;
}
.blog__pager__top .axol_pager_wrapper {
  display: inline-block;
  margin-right: 15px;
  vertical-align: bottom;
}

.blog__pager__bottom {
  text-align: center;
  margin-bottom: 45px;
}

/* photo CSS フォトアルバム */
.album__box {
  display: flex;
  flex-flow: row wrap;
}

.photo__base {
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  width: 30%;
  min-height: 325px;
  margin: 30px 2.5% 0;
  transition: 0.3s ease-out;
}
.photo__base:first-of-type {
  margin-left: 0;
}
.photo__base:nth-of-type(3n +1) {
  margin-left: 0;
}
.photo__base:nth-of-type(3n +0) {
  margin-right: 0;
}
.photo__base:hover {
  box-shadow: 0 0 5px rgba(44, 169, 225, 0.3), 0 0 2px rgba(44, 169, 225, 0.5);
}
.photo__base a {
  display: block;
  width: 100%;
}

.photo__index {
  position: relative;
  background: #fff;
  box-sizing: border-box;
  height: 214px;
  overflow: hidden;
}
.photo__index:after {
  position: absolute;
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.2) inset;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.photo__index img {
  position: absolute;
  top: 0;
  left: calc(50% - 160px);
}

.photo__title {
  background: #fff;
  min-height: 79px;
  padding: 20px 15px 15px;
}
.photo__title p, .photo__title p:hover {
  color: #333;
}
.photo__title p {
  position: relative;
}
.photo__title p:after {
  position: absolute;
  content: "";
  background: #2ca9e1;
  width: 50px;
  height: 2px;
  left: 0;
  bottom: -10px;
}

.photo__box {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 45px;
}

.photo__item {
  background: #fff;
  width: 30%;
  margin: 30px 2.5% 0;
}
.photo__item:first-of-type {
  margin-left: 0;
}
.photo__item:nth-of-type(3n +1) {
  margin-left: 0;
}
.photo__item:nth-of-type(3n +0) {
  margin-right: 0;
}
.photo__item img {
  display: block;
  width: 100%;
  margin: 0;
}

.photo__item__image {
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
  width: 100%;
  transition: 0.3s ease-out;
}
.photo__item__image:hover {
  box-shadow: 0 0 5px rgba(44, 169, 225, 0.3), 0 0 2px rgba(44, 169, 225, 0.5);
}
.photo__item__image a {
  display: block;
  width: 100%;
}

.photo__item__caption {
  margin-top: 12px;
}

/* フォトアルバムモーダル
------------------------------------------------------------------*/
.axol_modal_dialog.photoAlbumDlg {
  width: 650px;
  height: auto;
}

.photoAlbumDlg .album__btn__wrap {
  position: absolute;
  width: 100%;
  top: 25px;
  left: 0;
}

.photoAlbumDlg .album__btn__wrap div {
  position: absolute;
  width: 45px;
  height: 422px;
  top: 0;
}

.photoAlbumDlg .album__btn__wrap div::before {
  position: absolute;
  content: "";
  border: 1px solid #333;
  width: 12px;
  height: 12px;
  top: calc(100% - 225px);
  transform: rotate(45deg);
}

.photoAlbumDlg .album__btn__wrap div input {
  background: transparent;
  width: 100%;
  height: 100%;
  padding: 0;
}

.photoAlbumDlg .album__btn__wrap .album__btn__prev {
  left: 0;
}

.photoAlbumDlg .album__btn__wrap .album__btn__prev::before {
  border-top: none;
  border-right: none;
  left: 20px;
}

.photoAlbumDlg .album__btn__wrap .album__btn__next {
  right: 0;
}

.photoAlbumDlg .album__btn__wrap .album__btn__next::before {
  border-left: none;
  border-bottom: none;
  right: 20px;
}

.jsPhotoAlbumImg {
  border: 1px solid #ccc;
  width: 560px;
  margin: 0 auto;
  text-align: center;
}

.jsPhotoAlbumImg img {
  display: block;
}

.jsPhotoAlbumCaption {
  margin: 15px 20px 0;
}

.photoAlbumDlg .album__btn__wrap .album__btn__disabled input {
  cursor: default;
}

.photoAlbumDlg .album__btn__wrap .album__btn__disabled::before {
  content: none;
}

/* qa CSS Q&A */
.qa__category__wrap {
  margin: 30px 0;
  box-sizing: border-box;
}
.qa__category__wrap label {
  display: block;
  margin: 20px 0 20px 15px;
  border: 1px solid #ccc;
  cursor: pointer;
  transition: 0.4s;
}
.qa__category__wrap label:hover {
  border: 1px solid #2ca9e1;
}
.qa__category__wrap input[type=checkbox].on-off {
  display: none;
}
.qa__category__wrap input[type=checkbox].on-off + .qa__answer {
  border-top: 1px solid transparent;
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  transition: 0.2s;
}
.qa__category__wrap input[type=checkbox].on-off:checked + .qa__answer {
  height: auto;
  border-top: 1px solid #ccc;
  padding: 20px 15px 20px 75px;
}
.qa__category__wrap input[type=checkbox].on-off:checked + .qa__answer:before {
  position: absolute;
  content: "A";
  background: #e0bf2d;
  width: 35px;
  height: 35px;
  color: #fff;
  top: 12px;
  left: 12px;
  text-align: center;
  line-height: 36px;
}

.qa__category {
  display: block;
  background: #eaf6fc;
  color: #2ca9e1;
  margin: 15px 0 5px;
  padding: 10px 15px;
  font-weight: bold;
}

.qa__title, .qa__answer {
  position: relative;
  padding: 20px 15px 20px 75px;
  color: #555;
}

.qa__title:before {
  position: absolute;
  content: "Q";
  background: #2ca9e1;
  width: 35px;
  height: 35px;
  color: #fff;
  top: 12px;
  left: 12px;
  text-align: center;
  line-height: 36px;
}

/* schedule CSS スケジュール */
#calendar_contents {
  width: 100%;
}
#calendar_contents .go_month_btn {
  display: inline-block;
  background: #eee;
  box-shadow: none;
  border-radius: 5px 5px 0 0;
  border-bottom: none;
  padding: 5px 22px 1px;
  text-decoration: underline;
  color: #333;
  cursor: pointer;
}

.top__calender {
  background: #eee;
  margin: 0 0 25px;
  padding: 5px;
}
.top__calender td {
  background: #fff;
  border: 1px solid #ccc;
  padding: 5px;
}
.top__calender .date {
  background: transparent;
  border-radius: 10px;
  height: 18px;
  padding: 2px 5px;
  text-align: center;
  font-weight: bold;
}

.axol_modal_dialog.saiyoTopMonthCalendar {
  width: 800px;
}

.month-calendar__header {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin-bottom: 15px;
}
.month-calendar__header table {
  width: 100%;
}

.calendar__month {
  position: relative;
  font-size: 2.5rem;
}

.calendar__prev,
.calendar__next {
  position: relative;
  width: 20px;
  cursor: pointer;
}
.calendar__prev::before,
.calendar__next::before {
  position: absolute;
  content: "";
  border: 1px solid #333;
  width: 12px;
  height: 12px;
  top: 12px;
  transform: rotate(45deg);
}

.calendar__prev::before {
  border-top: none;
  border-right: none;
  left: 8px;
}

.calendar__next::before {
  border-left: none;
  border-bottom: none;
  right: 8px;
}

.week-calendar__body,
.month-calendar__body {
  margin: 0 auto;
}
.week-calendar__body table,
.month-calendar__body table {
  table-layout: fixed;
  width: 100%;
}
.week-calendar__body thead td,
.month-calendar__body thead td {
  height: auto;
  padding: 5px 0;
}
.week-calendar__body tbody td,
.month-calendar__body tbody td {
  border: 1px solid #ccc;
  width: 1%;
  padding: 5px;
  max-height: 150px;
  vertical-align: top;
}

.week-calendar__body td {
  height: 90px;
}

.month-calendar__body td {
  height: 65px;
}

.calendar__weekday {
  text-align: center;
}

.calendar__day {
  background: transparent;
  border-radius: 10px;
  height: 18px;
  padding: 2px 5px;
  text-align: center;
  font-weight: bold;
}

.calendar__title {
  box-sizing: border-box;
  border-radius: 3px;
  width: 100%;
  padding: 2px 4px;
  text-align: left;
  font-size: 11px;
  color: #1f70c1;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  cursor: pointer;
  transition: 0.2s;
}
.calendar__title:hover {
  opacity: 0.7;
}
.calendar__title:not(:last-child) {
  margin-bottom: 2px;
}

.cat_yoyaku {
  background: #ff664b;
  box-sizing: border-box;
  border-radius: 3px;
  margin: 3px 0;
  padding: 3px 5px;
  text-align: center;
  font-size: 1.1rem;
  color: #fff;
}

.axol_modal_dialog.dialogCalendarDetail {
  max-width: 745px;
  max-height: 80%;
}
.axol_modal_dialog.dialogCalendarDetail .schedule__detail {
  width: auto;
  min-width: 250px;
}

.calendar__day {
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  height: 18px;
  padding: 2px 5px;
  text-align: center;
  font-weight: bold;
  transition: 0.2s;
  cursor: pointer;
}
.calendar__day:hover {
  background: rgba(255, 241, 90, 0.4);
}
.today .calendar__day {
  background: #fff15a;
}

.weekday__holiday {
  background: #fff2f0;
  color: #ff664b;
}

.weekday__saturday {
  background: #ebf8ff;
  color: #168bc7;
}

.out__month {
  color: #ccc;
}
.out__month.weekday__holiday {
  color: #ffbea8;
}
.out__month.weekday__saturday {
  color: #a9cce8;
}

.schedule__detail {
  width: 350px;
}

.schedule__detail__day {
  background: #f3f2f1;
  padding: 5px 8px;
  text-align: center;
  font-weight: bold;
}

.schedule__detail__wrap {
  margin-top: 15px;
}
.schedule__detail__wrap:not(:last-child) {
  margin-bottom: 20px;
}
.schedule__detail__wrap dt, .schedule__detail__wrap dd {
  display: inline-block;
}
.schedule__detail__wrap dl {
  display: inline-block;
  vertical-align: middle;
}
.schedule__detail__wrap dd {
  margin-left: 5px;
}
.schedule__detail__wrap .schedule__detail__time__wrap {
  margin-right: 8px;
}
.schedule__detail__wrap .schedule__detail__title {
  border-bottom: 2px solid #2ca9e1;
  font-weight: bold;
  margin-bottom: 8px;
  padding: 5px 5px 5px 0;
}
.schedule__detail__wrap .schedule__detail__title.cat_yoyaku {
  border-bottom: none;
}
.schedule__detail__wrap .schedule__detail__title.cat_yoyaku:hover {
  color: #fff;
}
.schedule__detail__wrap dl {
  margin: 3px 0;
  font-size: 1.2rem;
}
.schedule__detail__wrap .schedule__detail__text {
  border-top: 1px dashed #ccc;
  margin-top: 5px;
  padding-top: 12px;
}

.schedule__caption {
  margin-top: 5px;
  font-size: 1.3rem;
}

.schedule__category__area {
  margin: 5px 0;
}

.schedule__category {
  display: inline-block;
  padding: 2px 5px;
  margin: 3px;
  border-radius: 5px;
  font-size: 12px;
  color: #fff;
  cursor: default;
}
.schedule__category span {
  font-size: 1.2rem;
  margin-right: 2px;
}
.schedule__category span:after {
  content: ":";
  margin-left: 2px;
}

.schedule__category.schedule__mark__1, .schedule__category.schedule__mark__11, .schedule__category.schedule_mark__21 {
  background: #E64A19;
}
.schedule__category.schedule__mark__1 div, .schedule__category.schedule__mark__11 div, .schedule__category.schedule_mark__21 div {
  color: #fff;
}
.schedule__category.schedule__mark__2, .schedule__category.schedule__mark__12, .schedule__category.schedule_mark__22 {
  background: #FFA000;
}
.schedule__category.schedule__mark__2 div, .schedule__category.schedule__mark__12 div, .schedule__category.schedule_mark__22 div {
  color: #fff;
}
.schedule__category.schedule__mark__3, .schedule__category.schedule__mark__13, .schedule__category.schedule_mark__23 {
  background: #AFB42B;
}
.schedule__category.schedule__mark__3 div, .schedule__category.schedule__mark__13 div, .schedule__category.schedule_mark__23 div {
  color: #fff;
}
.schedule__category.schedule__mark__4, .schedule__category.schedule__mark__14, .schedule__category.schedule_mark__24 {
  background: #388E3C;
}
.schedule__category.schedule__mark__4 div, .schedule__category.schedule__mark__14 div, .schedule__category.schedule_mark__24 div {
  color: #fff;
}
.schedule__category.schedule__mark__5, .schedule__category.schedule__mark__15, .schedule__category.schedule_mark__25 {
  background: #00796B;
}
.schedule__category.schedule__mark__5 div, .schedule__category.schedule__mark__15 div, .schedule__category.schedule_mark__25 div {
  color: #fff;
}
.schedule__category.schedule__mark__6, .schedule__category.schedule__mark__16, .schedule__category.schedule_mark__26 {
  background: #0097A7;
}
.schedule__category.schedule__mark__6 div, .schedule__category.schedule__mark__16 div, .schedule__category.schedule_mark__26 div {
  color: #fff;
}
.schedule__category.schedule__mark__7, .schedule__category.schedule__mark__17, .schedule__category.schedule_mark__27 {
  background: #1976D2;
}
.schedule__category.schedule__mark__7 div, .schedule__category.schedule__mark__17 div, .schedule__category.schedule_mark__27 div {
  color: #fff;
}
.schedule__category.schedule__mark__8, .schedule__category.schedule__mark__18, .schedule__category.schedule_mark__28 {
  background: #303F9F;
}
.schedule__category.schedule__mark__8 div, .schedule__category.schedule__mark__18 div, .schedule__category.schedule_mark__28 div {
  color: #fff;
}
.schedule__category.schedule__mark__9, .schedule__category.schedule__mark__19, .schedule__category.schedule_mark__29 {
  background: #512DA8;
}
.schedule__category.schedule__mark__9 div, .schedule__category.schedule__mark__19 div, .schedule__category.schedule_mark__29 div {
  color: #fff;
}
.schedule__category.schedule__mark__10, .schedule__category.schedule__mark__20, .schedule__category.schedule_mark__30 {
  background: #C2185B;
}
.schedule__category.schedule__mark__10 div, .schedule__category.schedule__mark__20 div, .schedule__category.schedule_mark__30 div {
  color: #fff;
}

.calendar__title.cat_1, .calendar__title.cat_11, .calendar__title.cat_21 {
  background: #E64A19;
  color: #fff;
}
.calendar__title.cat_2, .calendar__title.cat_12, .calendar__title.cat_22 {
  background: #FFA000;
  color: #fff;
}
.calendar__title.cat_3, .calendar__title.cat_13, .calendar__title.cat_23 {
  background: #AFB42B;
  color: #fff;
}
.calendar__title.cat_4, .calendar__title.cat_14, .calendar__title.cat_24 {
  background: #388E3C;
  color: #fff;
}
.calendar__title.cat_5, .calendar__title.cat_15, .calendar__title.cat_25 {
  background: #00796B;
  color: #fff;
}
.calendar__title.cat_6, .calendar__title.cat_16, .calendar__title.cat_26 {
  background: #0097A7;
  color: #fff;
}
.calendar__title.cat_7, .calendar__title.cat_17, .calendar__title.cat_27 {
  background: #1976D2;
  color: #fff;
}
.calendar__title.cat_8, .calendar__title.cat_18, .calendar__title.cat_28 {
  background: #303F9F;
  color: #fff;
}
.calendar__title.cat_9, .calendar__title.cat_19, .calendar__title.cat_29 {
  background: #512DA8;
  color: #fff;
}
.calendar__title.cat_10, .calendar__title.cat_20, .calendar__title.cat_30 {
  background: #C2185B;
  color: #fff;
}
.calendar__title.cat_, .calendar__title.cat_999999 {
  background: #f3f2f1;
  border: 1px solid #e3e2e1;
  color: #333;
}

.schedule__detail__title.cat_1, .schedule__detail__title.cat_11, .schedule__detail__title.cat_21 {
  border-color: #E64A19;
}
.schedule__detail__title.cat_2, .schedule__detail__title.cat_12, .schedule__detail__title.cat_22 {
  border-color: #FFA000;
}
.schedule__detail__title.cat_3, .schedule__detail__title.cat_13, .schedule__detail__title.cat_23 {
  border-color: #AFB42B;
}
.schedule__detail__title.cat_4, .schedule__detail__title.cat_14, .schedule__detail__title.cat_24 {
  border-color: #388E3C;
}
.schedule__detail__title.cat_5, .schedule__detail__title.cat_15, .schedule__detail__title.cat_25 {
  border-color: #00796B;
}
.schedule__detail__title.cat_6, .schedule__detail__title.cat_16, .schedule__detail__title.cat_26 {
  border-color: #0097A7;
}
.schedule__detail__title.cat_7, .schedule__detail__title.cat_17, .schedule__detail__title.cat_27 {
  border-color: #1976D2;
}
.schedule__detail__title.cat_8, .schedule__detail__title.cat_18, .schedule__detail__title.cat_28 {
  border-color: #303F9F;
}
.schedule__detail__title.cat_9, .schedule__detail__title.cat_19, .schedule__detail__title.cat_29 {
  border-color: #512DA8;
}
.schedule__detail__title.cat_10, .schedule__detail__title.cat_20, .schedule__detail__title.cat_30 {
  border-color: #C2185B;
}
.schedule__detail__title.cat_, .schedule__detail__title.cat_999999 {
  border-color: #333;
}

.schedule__mark__1 + input:checked + .schedule__in__content, .schedule__mark__11 + input:checked + .schedule__in__content, .schedule__mark__21 + input:checked + .schedule__in__content {
  border-color: #E64A19;
}

.schedule__mark__2 + input:checked + .schedule__in__content, .schedule__mark__12 + input:checked + .schedule__in__content, .schedule__mark__22 + input:checked + .schedule__in__content {
  border-color: #FFA000;
}

.schedule__mark__3 + input:checked + .schedule__in__content, .schedule__mark__13 + input:checked + .schedule__in__content, .schedule__mark__23 + input:checked + .schedule__in__content {
  border-color: #AFB42B;
}

.schedule__mark__4 + input:checked + .schedule__in__content, .schedule__mark__14 + input:checked + .schedule__in__content, .schedule__mark__24 + input:checked + .schedule__in__content {
  border-color: #388E3C;
}

.schedule__mark__5 + input:checked + .schedule__in__content, .schedule__mark__15 + input:checked + .schedule__in__content, .schedule__mark__25 + input:checked + .schedule__in__content {
  border-color: #00796B;
}

.schedule__mark__6 + input:checked + .schedule__in__content, .schedule__mark__16 + input:checked + .schedule__in__content, .schedule__mark__26 + input:checked + .schedule__in__content {
  border-color: #0097A7;
}

.schedule__mark__7 + input:checked + .schedule__in__content, .schedule__mark__17 + input:checked + .schedule__in__content, .schedule__mark__27 + input:checked + .schedule__in__content {
  border-color: #1976D2;
}

.schedule__mark__8 + input:checked + .schedule__in__content, .schedule__mark__18 + input:checked + .schedule__in__content, .schedule__mark__28 + input:checked + .schedule__in__content {
  border-color: #303F9F;
}

.schedule__mark__9 + input:checked + .schedule__in__content, .schedule__mark__19 + input:checked + .schedule__in__content, .schedule__mark__29 + input:checked + .schedule__in__content {
  border-color: #512DA8;
}

.schedule__mark__10 + input:checked + .schedule__in__content, .schedule__mark__20 + input:checked + .schedule__in__content, .schedule__mark__30 + input:checked + .schedule__in__content {
  border-color: #C2185B;
}

/* shain CSS ブログ */
#mypage_shain .contents__head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#mypage_shain .calendar__day:hover {
  background: inherit;
  cursor: default;
}

.contents__head {
  position: relative;
  margin: 20px 0;
  text-align: left;
}
.contents__head a {
  color: #333;
}
.contents__head p {
  width: 100%;
  text-align: left;
  margin-bottom: 5px;
}

.staff__reserve__confirm {
  display: inline-block;
}

.staff__menu {
  display: inline-block;
  vertical-align: top;
}
.staff__menu select {
  width: auto;
  text-align: left;
}

.staff__box {
  margin-bottom: 45px;
}

.staff__card {
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin: 50px auto;
}
.staff__card a {
  color: #333;
}

.staff__photo {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  background: #fff;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  border: 5px solid #fff;
  width: 250px;
  height: 210px;
  margin-right: 30px;
  text-align: center;
  overflow: hidden;
  transition: 0.3s ease-out;
}
.staff__photo:hover {
  box-shadow: 0 0 5px rgba(44, 169, 225, 0.3), 0 0 2px rgba(44, 169, 225, 0.5);
}
.staff__photo img {
  max-width: 100%;
  width: 100%;
  height: auto;
}

.staff__overview__wrap {
  width: calc(100% - 280px);
}

.staff__name__wrap {
  margin-bottom: 5px;
  text-align: left;
}

.staff__name {
  text-align: left;
  font-size: 2.2rem;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.staff__title {
  text-align: left;
  margin: 5px 0;
  padding: 0 0 5px;
  border-bottom: 1px solid #2ca9e1;
  letter-spacing: 0.4px;
}
.staff__box .staff__title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.staff__detail {
  margin-top: 10px;
  border-collapse: separate;
  border-spacing: 2px;
}
.staff__detail td, .staff__detail th {
  padding: 3px 7px;
  vertical-align: top;
  white-space: normal;
}

.staff__detail__title {
  min-width: 90px;
  max-width: 50%;
  box-sizing: border-box;
  text-align: right;
  font-weight: bold;
  background-color: #eee;
}

.staff__detail__box {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 30px 0 15px;
}
.staff__detail__box .staff__movie {
  width: 100%;
  margin-bottom: 15px;
  text-align: center;
}
.staff__detail__box .staff__photo {
  width: 280px;
  height: 210px;
}
.staff__detail__box .staff__photo img {
  width: 100%;
  min-height: 195px;
}
.staff__detail__box .staff__detail__area {
  width: calc(100% - 312px);
}
.staff__detail__box .staff__detail__area.movie_detail {
  width: 100%;
}
.staff__detail__box .staff__name {
  font-size: 2.5rem;
  overflow: initial;
  text-overflow: initial;
  white-space: normal;
}
.staff__detail__box .staff__detail__item {
  font-size: 1.3rem;
  text-overflow: clip;
  white-space: normal;
}
.staff__detail__box.file_align_right .staff__photo {
  margin: 0;
}

.file_align_right {
  flex-direction: row-reverse;
}

.staff__reserve__btn__area {
  text-align: right;
}
.staff__reserve__btn__area input {
  margin: 0;
}

.staff__contents__warp {
  border-top: 1px dashed #ccc;
  margin-top: 25px;
  padding-top: 10px;
}

.staff__contents {
  margin: 20px 0;
  padding-bottom: 15px;
}

.staff__contents__title {
  border-left: 3px solid #2ca9e1;
  margin-bottom: 12px;
  padding: 8px 0 0 20px;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.4px;
}

.staff__contents__text {
  padding-left: 20px;
  font-size: 1.4rem;
  letter-spacing: 0.4px;
  line-height: 1.7;
}

.btn__area.staff__page {
  margin-bottom: 45px;
  text-align: center;
}
.btn__area.staff__page a {
  color: #333;
}

/* koza CSS 講座コンテンツ */
.koza__box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin-top: 35px;
}

.koza__base__wrap {
  width: calc(50% - 20px);
  margin: 25px 0;
  cursor: pointer;
}
.koza__base__wrap a {
  display: block;
  height: 100%;
  color: #04c;
}
.koza__base__wrap a:hover {
  color: #04c;
}

.koza__base {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #ccc;
  height: 100%;
  min-height: 100px;
  transition: 0.2s;
}
.koza__base::after {
  position: absolute;
  content: "";
  background: #2ca9e1;
  width: 3px;
  height: 50%;
  top: 25%;
  left: 0;
  transition: 0.2s;
}
.koza__base:hover::after {
  height: 100%;
  top: 0;
  left: 0;
}

.koza__title__wrap {
  box-sizing: border-box;
  width: calc(100% - 100px);
  padding: 12px 20px;
}

.koza__title {
  width: auto;
  font-size: 1.6rem;
  font-weight: bold;
  color: #333;
}
.koza__title:hover {
  color: #333;
}

.koza__base__wrap .koza__photo, .koza__base__wrap .koza__movie {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100px;
  min-width: 100px;
  height: 100px;
  text-align: center;
  overflow: hidden;
}
.koza__base__wrap .koza__photo img, .koza__base__wrap .koza__movie img {
  width: 100%;
}

.koza__text {
  margin-top: 10px;
  font-size: 1.2rem;
}

.koza__contents__header {
  display: flex;
  flex-direction: row;
  align-items: center;
  background: linear-gradient(to bottom, #fff 0%, rgba(44, 169, 225, 0.1) 100%);
  border: 1px solid #ccc;
  margin: 35px 0 45px;
}
.koza__contents__header .koza__photo,
.koza__contents__header .koza__movie {
  width: 280px;
}
.koza__contents__header .koza__photo img,
.koza__contents__header .koza__movie img {
  width: 100%;
  vertical-align: middle;
}
.koza__contents__header a {
  display: table-cell;
  width: 100%;
  height: 100%;
}

.koza__header__text__wrap {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 30px;
}
.koza__header__text__wrap::before {
  position: absolute;
  content: "";
  background: #2ca9e1;
  width: 3px;
  height: 100%;
  top: 0;
  right: 0;
  transition: 0.2s;
}

.koza_file_align_right .koza__img__wrap {
  order: 1;
}
.koza_file_align_right .koza__header__text__wrap {
  order: 0;
}
.koza_file_align_right .koza__header__text__wrap::before {
  position: absolute;
  content: "";
  background: #2ca9e1;
  width: 3px;
  height: 100%;
  top: 0;
  left: 0;
  transition: 0.2s;
}

.koza__header__title {
  font-size: 2rem;
  font-weight: bold;
}

.koza__header__text {
  margin-top: 10px;
}

.koza__contents {
  margin: 45px 0;
  clear: both;
}
.koza__contents .img_show_wide {
  float: left;
  width: 260px;
  margin: 0 25px 18px;
}
.koza__contents .img_show_wide.photo_r {
  float: right;
}
.koza__contents .img_show_wide img {
  width: 100%;
}

.koza__contents__title {
  border-top: 1px solid #2ca9e1;
  margin-bottom: 20px;
  padding: 25px 25px 0;
  font-size: 1.8rem;
  font-weight: bold;
  letter-spacing: 0.08rem;
}

.koza__contents__text {
  padding: 0 25px;
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: 0.4px;
  word-break: normal;
}

/* com movie CSS 動画アップロード */
.movie__up__after {
  border: 1px solid #ccc;
  margin-top: 30px;
  padding: 12px 15px;
  text-align: center;
}
.movie__up__after img {
  border: 20px solid #ccc;
  width: 320px;
  margin-top: 12px;
}
.movie__up__after .movie__up__after__wrap {
  text-align: left;
}
.movie__up__after .movie__up__after__status {
  margin: 5px 0;
  font-weight: bold;
}
.movie__up__after .movie__up__after__caption {
  font-size: 1.1rem;
}

.movie__text__box {
  border: 1px solid #ccc;
  margin: 30px 0 0;
  padding: 18px 25px;
}
.movie__text__box.type__2 {
  margin: 0;
}

.movie__text__title {
  font-size: 1.6rem;
  margin-bottom: 8px;
}

.movie__text li {
  margin: 12px 0 0 15px;
  list-style-type: square;
}
.movie__text li:last-child {
  margin-bottom: 0;
}
.movie__text .caution__text {
  font-weight: bold;
  color: #ff664b;
}

.movie__step__list {
  margin-top: 12px;
}
.movie__step__list .movie__step__wrap + .movie__step__wrap {
  margin-top: 12px;
}
.movie__step__list .movie__step__wrap {
  margin: 12px 0 0 0;
  list-style-type: none;
}
.movie__step__list .movie__step__title {
  font-weight: bold;
}
.movie__step__list .movie__step__text {
  margin: 5px 0 0 15px;
}

.movie__theme__send {
  border: 1px solid #ccc;
  margin: 10px;
  padding: 8px;
}

.movie__caption {
  margin: 10px 15px 30px;
  padding: 0 10px 0;
  font-size: 1.3rem;
}
.movie__caption div {
  font-size: 1rem;
}

.theme__send, .movie__direct__up {
  display: block;
  background-color: #79c143;
  border-bottom: 3px solid #619d34;
  box-sizing: border-box;
  margin: 15px 0;
  padding: 12px 15px;
  text-align: center;
  color: #fff;
  cursor: pointer;
}
.theme__send:hover, .movie__direct__up:hover {
  background-color: #619d34;
}
.theme__send a, .movie__direct__up a {
  display: block;
  color: #fff;
}

.movie__com__question {
  padding-top: 30px;
}
.movie__com__question .need__item {
  margin: 0 5px 0 0;
  vertical-align: text-bottom;
}

#movie_submitter {
  margin: 25px 0 15px;
  text-align: center;
}

.com__form.movie__file {
  margin: 15px 0;
  text-align: center;
}
.com__form.movie__file input {
  font-size: 1.4rem;
}

/* pdf CSS PDF印刷 */
#mypage_pdf input {
  padding: 10px 15px;
}

.pdf__set__text {
  margin-top: 20px;
}

.pdf__caption {
  background: #f3f2f1;
  box-sizing: border-box;
  width: 100%;
  margin: 15px 0;
  padding: 5px 8px;
  font-size: 1.1rem;
}

.pdf__install__area {
  display: block;
  width: 100%;
  margin: 15px 0 0;
  font-size: 1.1rem;
  text-align: center;
}
.pdf__install__area a {
  display: block;
  margin: 5px 0;
  text-align: center;
  color: #333;
}
.pdf__install__area img {
  display: block;
  margin: 0 auto 5px;
}

/* line CSS LINE連携 */
.line__entry__wrap {
  display: flex;
  align-items: stretch;
  margin-top: 20px;
  padding: 0 15px;
}

.line__entry__box {
  border: 1px solid #ccc;
  border-top: 5px solid #00B900;
  border-radius: 5px;
  width: 100%;
  padding: 18px 20px;
}
.line__entry__box + .line__entry__box {
  margin-left: 30px;
}

.line__box__title {
  font-size: 15px;
  font-weight: bold;
  color: #00B900;
}

.line__box__text {
  margin-top: 8px;
}

.line__link__area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 15px;
}
.line__link__area.type__entry a {
  background: #00c300 url(../images/outersite/line_icon.png) left 5px center/30px no-repeat;
  border-radius: 5px;
  padding: 10px 30px 10px 70px;
  color: #FFFFFF;
}
.line__link__area.type__entry a:hover {
  background-color: #00E000;
}
.line__link__area.type__entry a:active {
  background-color: #00B300;
}
.line__link__area.type__leave {
  height: auto;
  margin-top: 20px;
}
.line__link__area.type__leave a {
  background: #888;
  border-radius: 5px;
  padding: 10px 30px;
  color: #FFFFFF;
}
.line__link__area.type__leave a:hover {
  background-color: #999;
}
.line__link__area.type__leave a:active {
  background-color: #777;
}
.line__link__area img {
  width: 180px;
}
.line__link__area .line__link__btn {
  background: #00c300 url(../images/outersite/line_icon.png) left 5px center/30px no-repeat;
  border-radius: 5px;
  padding: 10px 30px 10px 70px;
  color: #FFFFFF;
}
.line__link__area .line__link__btn:hover {
  background-color: #00E000;
}
.line__link__area .line__link__btn:active {
  background-color: #00B300;
}

.line__agree__text__area {
  margin-bottom: 15px;
}

#line_entry .mynavi__link__text {
  margin-bottom: 15px;
}

.entry__link__area {
  margin-top: 8px;
}
.entry__link__area .entry__link__btn {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  text-align: center;
}
.entry__link__area .entry__link__btn a {
  font-weight: normal;
  color: #fff;
}

/* pdf CSS ライブ面接 */
.live__main__title {
  margin-bottom: 10px;
  font-size: 1.6rem;
  font-weight: bold;
}

.live__main__title__sub {
  margin-bottom: 10px;
}

.live__info__area {
  display: block;
  border: 1px solid #ccc;
  margin-bottom: 25px;
  padding: 12px 15px;
}

.live__info__item + .live__info__item {
  border-top: 1px dashed #ccc;
  margin-top: 12px;
  padding: 12px 0 0 0;
}

.live__info__title {
  display: inline-block;
  width: 120px;
  margin-right: 12px;
  vertical-align: top;
}

.live__info__text {
  display: inline-block;
  width: calc(100% - 140px);
  vertical-align: top;
  font-weight: bold;
}

.live__info__caution {
  margin-top: 3px;
  font-weight: normal;
  color: #ff664b;
}

.live__info__text__sub {
  margin-top: 15px;
}

.live__bottom__wrap {
  margin-top: 30px;
}
.live__bottom__wrap .error__message {
  background: #fff1ee;
  border: 1px solid #ff664b;
  padding: 12px;
  text-align: center;
  color: #ff664b;
}

.live__caption {
  background: #f3f2f1;
  margin-bottom: 30px;
  padding: 12px 18px;
}

.live__caption__title {
  margin-bottom: 5px;
  font-size: 1.4rem;
  font-weight: bold;
}

.live__caption__text {
  font-size: 1.1rem;
}

.live__confirm__item {
  font-weight: bold;
  line-height: 1.75;
  font-size: 1.4rem;
}
.live__confirm__item a::before {
  content: "・";
}

.live__confirm__caution {
  margin-top: 15px;
}
.live__confirm__caution .live__main__title__sub {
  text-decoration: underline;
  font-size: 1.5rem;
  font-weight: bold;
}

/* homon CSS 社員訪問 */
#mypage_homon #top__message__contents {
  margin-bottom: 15px;
}

.homon__head__tab {
  display: flex;
  align-items: center;
}

.homon__head__item {
  position: relative;
  border: 1px solid #ccc;
  border-bottom: none;
  border-radius: 3px 3px 0 0;
  padding: 8px 15px 5px;
  color: #333;
  transition: 0.2s;
  top: 1px;
}
.homon__head__item:hover {
  color: #333;
  opacity: 0.75;
}
.homon__head__item.mode__active {
  background: #f3f2f1;
  border-bottom: 1px solid #f3f2f1;
  font-weight: bold;
}

.staff__search__box {
  border: 1px solid #ddd;
}

.staff__search__box__title {
  display: block;
  margin: 10px 0 5px;
  padding: 0 12px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

#search__area__switch {
  display: none;
}

.staff__search__area {
  background: #f3f2f1;
  box-sizing: border-box;
  width: 100%;
  padding: 15px 25px;
}

.staff__search__item {
  padding: 8px 0;
}
.staff__search__item div {
  display: inline-block;
  vertical-align: middle;
}
.staff__search__item label {
  display: inline-block;
  margin-right: 5px;
  cursor: pointer;
}
.staff__search__item.search__type__category, .staff__search__item.search__type__word {
  padding: 10px 0;
}
.staff__search__item.type__date .search__contents > span {
  display: flex;
  align-items: center;
}
.staff__search__item.type__date .fb_textdateElement_Y,
.staff__search__item.type__date .fb_textdateElement_m,
.staff__search__item.type__date .fb_textdateElement_d {
  margin-left: 5px;
  text-align: right;
}
.staff__search__item.type__date .fb_textdateElement_Y {
  width: 75px;
}
.staff__search__item.type__date .fb_textdateElement_m,
.staff__search__item.type__date .fb_textdateElement_d {
  width: 50px;
}

.search__title {
  width: 150px;
  text-align: right;
  font-weight: bold;
}

.search__contents {
  width: calc(100% - 175px);
  margin-left: 15px;
}

.search__type__word input[name=word], .search__type__word label {
  display: inline-block;
}
.search__type__word input[name=word] {
  width: calc(100% - 180px);
  margin-right: 12px;
}
.search__type__word label {
  width: 80px;
}

.staff__search__btn__area {
  margin: 12px auto;
  text-align: center;
}
.staff__search__btn__area input[type=submit] {
  background: #1f81db url(../images/icons/down_arrow.svg) calc(50% - 32px) center/13px 13px no-repeat;
  border-bottom: 3px solid #1967ae;
  border-radius: 5px;
  padding: 12px 15px 12px 38px;
  color: #fff;
  font-size: 1.4rem;
}

.homon__reserve__info {
  margin: 30px 0 40px;
}

.homon__reserve__info__text {
  margin-bottom: 8px;
}

.homon__reserve__staff + .homon__reserve__staff {
  margin-top: 8px;
}
.homon__reserve__staff > a {
  display: block;
  box-sizing: border-box;
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.1);
  border: 1px solid #ddd;
  border-radius: 3px;
  width: 100%;
  padding: 12px 15px;
  color: #333;
  cursor: pointer;
  transition: 0.1s;
}
.homon__reserve__staff > a:hover {
  background: #1f81db;
  border: 1px solid #1967ae;
  color: #fff;
}

.homon__reserve__staff__info {
  display: flex;
  align-items: center;
}
.homon__reserve__staff__info .info__item + .info__item {
  margin-left: 12px;
}

.staff__reserve__wrap {
  margin-top: 50px;
}

.staff__reserve__contents h2 {
  font-size: 23px;
  font-weight: bold;
}
.staff__reserve__contents .staff__reserve__contents__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 0 8px;
}
.staff__reserve__contents.type__staff {
  margin-top: 50px;
}
.staff__reserve__contents.type__staff h2 {
  margin: 0 8px 15px;
}
.staff__reserve__contents.type__calender > .contents__head {
  display: none;
}
.staff__reserve__contents.type__calender h2 {
  margin: 0 0 15px;
}
.staff__reserve__contents.type__calender .calendar_contents {
  background: #f3f2f1;
  box-sizing: border-box;
  border: 1px solid #ccc;
  padding: 15px 20px;
}
.staff__reserve__contents.type__calender .week-calendar__body tbody,
.staff__reserve__contents.type__calender .month-calendar__body tbody {
  background: #fff;
}
.staff__reserve__contents.type__calender .homon__calender__month {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 5px 0 10px;
  text-align: left;
}
.staff__reserve__contents.type__calender .homon__calender__month .homon__calender__month__left,
.staff__reserve__contents.type__calender .homon__calender__month .homon__calender__month__right {
  display: inline-block;
  width: 120px;
}
.staff__reserve__contents.type__calender .homon__calender__month .homon__calender__month__left {
  text-align: left;
}
.staff__reserve__contents.type__calender .homon__calender__month .homon__calender__month__right {
  text-align: right;
}
.staff__reserve__contents.type__calender .homon__calender__month select {
  background-color: transparent;
  font-size: 1.8rem;
}
.staff__reserve__contents.type__calender .homon__calender__month [type=button] {
  box-sizing: border-box;
  background: #fff;
  box-shadow: 0 2px 1px rgba(0, 0, 0, 0.1);
  border: 1px solid #ddd;
  border-radius: 3px;
  padding: 3px 8px;
  color: #333;
  cursor: pointer;
  transition: 0.1s;
}
.staff__reserve__contents.type__calender .calendar__contents {
  margin-top: 5px;
}
.staff__reserve__contents.type__calender .calendar__contents input + input {
  margin-top: 3px;
}
.staff__reserve__contents .calerndar__day {
  cursor: default;
}

.homon__wrap {
  float: right;
  margin-left: 15px;
}

.homon__mark {
  position: relative;
  display: inline-block;
  border-radius: 5px;
  padding: 5px 8px;
  font-size: 1.2rem;
  color: #fff;
}
.calendar__contents .homon__mark:hover {
  top: 1px;
  opacity: 0.75;
}

.homon__my__yoyaku {
  background: #79c143;
}

.homon__yoyaku__enable {
  background: #1f81db;
}

.homon__yoyaku__manseki,
.homon__yoyaku__disable {
  background: #ccc;
  color: #888;
}

.homon__block {
  margin-top: 12px;
}
.homon__block .simple__grp__title {
  margin: 0 0 10px;
}

.homon__type__schedule,
.homon__type__confirm {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.homon__type__schedule input,
.homon__type__confirm input {
  min-width: 0;
  margin: 0;
}

.homon__category__list {
  margin-top: 20px;
}

.homon__category__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
  padding: 10px 0 10px 8px;
}
.homon__category__item:first-of-type {
  border-top: 1px solid #ccc;
}
.homon__category__item .btn__move {
  display: inline-block;
  padding: 6px 28px 6px 10px;
  vertical-align: middle;
}

.homon__category__title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.homon__user__count {
  background: #fff15a;
  border-radius: 10px;
  margin-left: 10px;
  padding: 3px 6px;
  font-size: 10px;
  vertical-align: middle;
  text-align: center;
}

.homon__calender__month {
  margin: 20px 0 10px;
  text-align: center;
}
.homon__calender__month select {
  background: #fff url(../images/icons/down_arrow_b.svg) right 10px center/15px no-repeat;
  box-shadow: none;
  border: none;
  width: auto;
  margin: 0 auto;
  padding: 2px 30px 2px 0;
  font-size: 2.2rem;
  cursor: pointer;
}
.homon__calender__month select:focus {
  border: none;
  box-shadow: none;
}

.homon__calender .calendar__contents {
  min-height: 45px;
  text-align: center;
}

.reserve__list__tip__item {
  display: block;
  color: #333;
  cursor: pointer;
  transition: 0.15s;
}
.reserve__list__tip__item:hover {
  color: #333;
  opacity: 0.75;
}
.reserve__list__tip__item:hover .reserve__list__tip__name::before {
  position: absolute;
  content: "";
  background: #79c143;
  width: 5px;
  height: 100%;
  top: 0;
  left: -18px;
}
.reserve__list__tip__item + .reserve__list__tip__item {
  border-top: 1px dashed #ccc;
  margin-top: 10px;
  padding-top: 10px;
}

.reserve__list__tip__name {
  position: relative;
  font-weight: bold;
  margin-bottom: 0;
}

.staff__reserve__card__wrap {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  margin-top: 20px;
}

.staff__reserve__card {
  display: flex;
  align-items: center;
  background: #fff;
  width: 100%;
  overflow: hidden;
  color: #333;
  transition: 0.1s;
}
.staff__reserve__card.type__detail {
  margin-top: 50px;
}
.staff__reserve__card.type__detail .staff__reserve__card__img {
  width: 180px;
  height: 240px;
  margin-right: 40px;
}
.staff__reserve__card.type__detail .staff__reserve__card__img .staff__reserve__table {
  margin-top: 20px;
}
.staff__reserve__card + .staff__reserve__card {
  margin-top: 15px;
}
.staff__reserve__card .staff__reserve__card__img {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 135px;
  min-width: 135px;
  height: 180px;
  margin-right: 30px;
}
.staff__reserve__card .staff__reserve__card__img.type__no {
  background: #ccc;
}
.staff__reserve__card .staff__reserve__card__img.type__no__use {
  background: #f3f2f1;
  border: none;
}
.staff__reserve__card .staff__reserve__card__img.type__no__use img {
  width: 60%;
}
.staff__reserve__card .staff__reserve__card__img::after {
  content: "";
  padding-top: 132%;
  width: 100%;
}
.staff__reserve__card img {
  max-width: 100%;
  min-width: 100%;
  width: 100%;
}

.staff__reserve__info {
  width: calc(100% - 165px);
  padding: 18px 0;
  text-align: left;
}
.type__staff__detail .staff__reserve__info {
  width: calc(100% - 220px);
}
.staff__reserve__info .staff__reserve__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #2ca9e1;
  padding-bottom: 8px;
}

.staff__reserve__btn {
  display: block;
  background: #86c400;
  border-bottom: 3px solid #76ac00;
  border-radius: 3px;
  min-width: 125px;
  margin-left: 8px;
  padding: 5px 10px;
  line-height: 1;
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  transition: 0.1s;
}
.staff__reserve__btn:hover {
  background: #76ac00;
  color: #fff;
}

.staff__reserve__table {
  border-collapse: separate;
  border-spacing: 2px;
  margin-top: 12px;
}
.staff__reserve__table tr {
  border-collapse: separate;
  border-spacing: 2px;
}
.staff__reserve__table td, .staff__reserve__table th {
  padding: 3px 7px;
  vertical-align: top;
  white-space: normal;
}
.staff__reserve__table th {
  background-color: #eee;
  min-width: 90px;
  max-width: 50%;
  box-sizing: border-box;
  text-align: right;
  font-weight: bold;
}

.staff__reserve__name {
  font-size: 22px;
}
.staff__reserve__name + table {
  margin-top: 8px;
}

.staff__reserve__sub {
  margin: 3px 0 8px;
  font-size: 11px;
}

.staff__reserve__last__school {
  margin-top: 8px;
}

.staff__reserve__mark span {
  display: inline-block;
  border-radius: 3px;
  margin-right: 3px;
  padding: 5px 8px;
  line-height: 1;
  font-size: 12px;
  color: #fff;
}
.staff__reserve__mark .type__homon {
  background: #555;
}
.staff__reserve__mark .type__web {
  background: #555;
}

.staff__reserve__detail {
  display: flex;
  align-items: center;
  margin-top: 20px;
}

.staff__reserve__detail__img {
  margin-right: 30px;
}
.staff__reserve__detail__img.type__no__use {
  background: #f3f2f1;
  width: 280px;
  text-align: center;
}
.staff__reserve__detail__img.type__no__use .reserve__staff__image,
.staff__reserve__detail__img.type__no__use .reserve__staff__movie {
  width: 280px;
  height: 210px;
  overflow: hidden;
}
.staff__reserve__detail__img.type__no__use .reserve__staff__image img,
.staff__reserve__detail__img.type__no__use .reserve__staff__movie img {
  width: auto;
}
.staff__reserve__detail__img .reserve__staff__image {
  margin-left: auto;
  padding: 0;
}

.staff__reserve__detail__info {
  padding: 0;
}

.staff__reserve__detail__mark {
  margin-top: 22px;
}

.staff__reserve__top__mark {
  margin: 0 0 10px 0;
}

.staff__reserve__top__mark .detail__mark,
.staff__reserve__detail__mark .detail__mark {
  border-radius: 3px;
  padding: 5px 8px;
  line-height: 1;
  font-size: 12px;
  color: #fff;
}
.staff__reserve__top__mark .detail__mark + .detail__mark,
.staff__reserve__detail__mark .detail__mark + .detail__mark {
  margin-left: 5px;
}
.staff__reserve__top__mark .detail__mark.type__ok,
.staff__reserve__detail__mark .detail__mark.type__ok {
  background: #4abd16;
}
.staff__reserve__top__mark .detail__mark.type__check,
.staff__reserve__detail__mark .detail__mark.type__check {
  background: #ee2d00;
}
.staff__reserve__top__mark .detail__mark.type__no,
.staff__reserve__detail__mark .detail__mark.type__no {
  background: #ccc;
}
.staff__reserve__top__mark .detail__mark.type__meet,
.staff__reserve__detail__mark .detail__mark.type__meet {
  background: #555;
}
.staff__reserve__top__mark .detail__mark.type__WEB,
.staff__reserve__detail__mark .detail__mark.type__WEB {
  background: #eb9712;
}

.staff__reserve__detail__name {
  border-bottom: 1px solid #2ca9e1;
  margin-bottom: 12px;
  padding-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
}
.staff__reserve__detail__name span {
  margin-left: 20px;
  font-size: 13px;
  font-weight: normal;
}

.staff__reserve__detail__last__school {
  margin-top: 5px;
}

.staff__reserve__detail__job {
  margin-top: 5px;
}

.staff__reserve__detail__message {
  border-top: 1px dashed #ccc;
  margin-top: 15px;
  padding-top: 15px;
}

.staff__reserve__article__wrap {
  margin: 30px 0;
}

.staff__reserve__article {
  padding: 25px 0;
}
.staff__reserve__article__img {
  display: block;
  width: 100%;
  margin: 25px 0 0;
  text-align: center;
}
.staff__reserve__article__img img {
  max-width: 100%;
}

.staff__reserve__article__title {
  border-bottom: 1px solid #2ca9e1;
  padding: 0 15px 8px;
  font-size: 20px;
  font-weight: bold;
}

.staff__reserve__article__text {
  margin-top: 18px;
  padding: 0 15px;
  line-height: 1.75;
  font-size: 14px;
}

.staff__reserve__button__area {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  margin-top: 25px;
}

.staff__reserve__button__line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 15px;
  font-weight: bold;
}
.staff__reserve__button__line + .staff__reserve__button__line {
  border-top: 1px dashed #ccc;
}
.staff__reserve__button__line .staff__reserve__info__title {
  display: flex;
  align-items: center;
}
.staff__reserve__button__line .reserve__mark {
  display: inline-block;
  border-radius: 3px;
  width: 55px;
  margin-right: 15px;
  padding: 3px 8px;
  text-align: center;
  font-size: 12px;
}
.staff__reserve__button__line .reserve__mark.type__checked {
  background: #ed4e3b;
  color: #fff;
}
.staff__reserve__button__line .reserve__mark.type__ok {
  background: #4abd16;
  color: #fff;
}
.staff__reserve__button__line .reserve__mark.type__no {
  background: #eee;
  color: #888;
}
.staff__reserve__button__line .reserve__place {
  max-width: 450px;
  margin-top: 3px;
}
.staff__reserve__button__line button {
  border: none;
  border-radius: 3px;
  margin-left: 5px;
  padding: 5px 8px;
  font-size: 12px;
  cursor: pointer;
}
.staff__reserve__button__line .btn__reserved {
  background: #555;
  border-bottom: 3px solid #333;
  color: #fff;
}
.staff__reserve__button__line .btn__cancel {
  background: #f3f2f1;
  border-bottom: 3px solid #ccc;
}
.staff__reserve__button__line .btn__submit {
  background: #86c400;
  border-bottom: 3px solid #76ac00;
  color: #fff;
}
.staff__reserve__button__line .caution__text {
  font-weight: normal;
}

.reserve__confirm__buttons .btn__reserve__staff {
  background: #777;
  border-bottom: 3px solid #555;
  border-radius: 3px;
  padding: 0 10px;
  font-size: 1.2rem;
  color: #fff;
}
.reserve__confirm__buttons .btn__reserve__staff:hover {
  background-color: #555;
}

.reserve__staff__info__wrap {
  display: flex;
  align-content: flex-start;
  justify-content: space-between;
  max-width: 100%;
}

.reserve__staff__image,
.reserve__staff__movie {
  width: 200px;
  margin-left: 30px;
  padding: 15px;
}
.reserve__staff__image video, .reserve__staff__image img,
.reserve__staff__movie video,
.reserve__staff__movie img {
  width: 100%;
}

.reserve__staff__info {
  width: 100%;
}
.reserve__staff__info .form__item__group {
  width: auto;
}
.reserve__staff__info .form__item:nth-of-type(2) {
  border-top: 1px dashed #ddd;
}
.reserve__staff__info + .form__item.item__photo {
  width: 250px;
  margin-left: 20px;
}
.reserve__staff__info + .form__item.item__photo img {
  width: 100%;
}

/* リファラル用登録フォームの表記 */
.referral__entry__wrap {
  background: #f3f2f1;
  margin-top: 25px;
  padding: 20px 25px 1px;
}
.referral__entry__wrap > p {
  line-height: 1.6;
  font-size: 1.2rem;
  color: #555;
}
.referral__entry__wrap .btn__l.btn__confirm {
  background-color: #aaa;
  border-bottom: 3px solid #858585;
  padding: 5px 28px 5px 12px;
  font-size: 1.3rem;
}

/* referral CSS ブログ */
.referral__top__text {
  margin-bottom: 15px;
  line-height: 1.8;
  font-size: 1.5rem;
  font-weight: bold;
}

.referral__img {
  width: 100%;
}
.referral__img img {
  max-width: 100%;
}

.referral__main__text {
  margin-top: 15px;
  line-height: 1.8;
}

.referral__btn__wrap {
  margin-top: 30px;
  text-align: center;
}

.btn__referral__entry {
  background: #00abeb;
  border: none;
  padding: 8px 12px;
  color: #fff;
}

/* pool CSS タレントプール */
#mypage_pool .agree__textbox,
#mypage_reverse .agree__textbox {
  width: 100%;
  margin: 20px 0;
}
#mypage_pool .agree__image img,
#mypage_reverse .agree__image img {
  width: 100%;
}
#mypage_pool .agree__rule,
#mypage_reverse .agree__rule {
  box-shadow: 0 2px 6px -4px rgba(0, 0, 0, 0.2) inset, 0 2px 4px -4px rgba(0, 0, 0, 0.2) inset;
  border: 1px solid #ccc;
  box-sizing: border-box;
  width: calc(100% - 60px);
  height: 250px;
  margin: 30px auto 0;
  padding: 15px;
  overflow: auto;
}
#mypage_pool div.form__bottom__textbox,
#mypage_reverse div.form__bottom__textbox {
  text-align: center;
}
#mypage_pool .mynavi__link__area,
#mypage_reverse .mynavi__link__area {
  box-sizing: border-box;
  border-top: 1px solid #ccc;
  margin: 20px auto 0;
  padding: 12px 0;
}
#mypage_pool .mynavi__link__text,
#mypage_pool .mynavi__link__btn,
#mypage_reverse .mynavi__link__text,
#mypage_reverse .mynavi__link__btn {
  display: inline-block;
  vertical-align: middle;
}
#mypage_pool .mynavi__link__text,
#mypage_reverse .mynavi__link__text {
  width: calc(100% - 170px);
  font-size: 1.2rem;
  margin-right: 15px;
}
#mypage_pool .mynavi__link__btn,
#mypage_reverse .mynavi__link__btn {
  width: 150px;
}
#mypage_pool .mynavi__link__btn a,
#mypage_reverse .mynavi__link__btn a {
  display: block;
}
#mypage_pool .mynavi__link__btn img,
#mypage_reverse .mynavi__link__btn img {
  width: 100%;
}
#mypage_pool .agree__reverse__text,
#mypage_reverse .agree__reverse__text {
  border: 1px solid #ccc;
  margin: 15px 0;
  padding: 8px 12px;
}
#mypage_pool .agree__check,
#mypage_reverse .agree__check {
  margin-top: 12px;
}

/* pc_マイページコンテンツ */
/* career CSS キャリア版 */
/* キャリア版に関するCSSを記述 */
/* 登録フォーム関連
------------------------------------------------------------------*/
.type__education input[type=text] {
  width: 425px;
}
.type__education select[name=c_school_shubetsu],
.type__education select[name=c_school_to_kubun] {
  width: 195px;
}

.type__job input[type=text] {
  width: 425px;
}
.type__job select {
  width: 340px;
}
.type__job textarea {
  max-width: 425px;
  min-width: 425px;
  height: 150px;
}

.career__job__text {
  margin: 0 12px;
}

.career__job input[type=text] {
  width: 425px;
}
.career__job select {
  width: 340px;
}
.career__job textarea {
  max-width: 425px;
  min-width: 425px;
  height: 150px;
}
.career__job .career__job__wrap {
  position: relative;
  margin: 25px 0;
}
.career__job .career__job__title {
  box-sizing: border-box;
  margin: 0 1px;
  padding: 0 15px 3px;
  text-align: left;
  font-size: 1.4rem;
  font-weight: bold;
}
.career__job .career__item__delete {
  position: absolute;
  background: url(../images/icons/icon_delete.svg) center center/11px 11px no-repeat;
  border: 1px solid #ccc;
  border-radius: 3px 3px 0 0;
  width: 30px;
  height: 27px;
  cursor: pointer;
  transition: 0.1s;
  top: -4px;
  right: 11px;
}
.career__job .career__item__delete:hover {
  background-color: #f3f2f1;
}
.career__job .form__wrap {
  border: 1px solid #ccc;
  border-radius: 3px 0 3px 3px;
  padding: 15px 28px;
}

.add__button__area {
  margin: 15px 10px;
}
.add__button__area .add__button {
  background: url(../images/icons/icon_add.svg) 12px center/11px 11px no-repeat;
  border: 1px solid #ccc;
  border-radius: 3px;
  margin: 0 auto;
  padding: 8px 12px 8px 30px;
  font-size: 1.2rem;
  cursor: pointer;
}
.add__button__area .add__button:hover {
  background-color: #f3f2f1;
}

/* 登録フォーム確認画面
------------------------------------------------------------------*/
.form__item__print.career__job__wrap {
  margin: 10px 0;
}
.form__item__print.career__job__wrap .form__item__multi .form__item {
  margin: 8px 0 0;
  padding: 8px 0 0;
}
.form__item__print.career__job__wrap .form__item__multi .form__item__title__wrap {
  width: 100px;
}
.form__item__print.career__job__wrap .form__item__multi .form__item__group {
  width: calc(100% - 135px);
}

/* 職種検索
------------------------------------------------------------------*/
.job__search__box__title {
  display: block;
  margin: 10px 0 5px;
  padding: 0 12px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
}

#search__area__switch {
  display: none;
}

.job__search__area {
  box-sizing: border-box;
  border: 1px solid #ccc;
  width: 100%;
  padding: 15px 25px;
}

.job__search__item {
  padding: 8px 0;
}
.job__search__item div {
  display: inline-block;
  vertical-align: middle;
}
.job__search__item.search__type__category, .job__search__item.search__type__word {
  padding: 10px 0;
}

.search__title {
  width: 100px;
  text-align: right;
  font-weight: bold;
}

.search__contents {
  width: calc(100% - 120px);
  margin-left: 15px;
}

.search__type__word input[name=word], .search__type__word label {
  display: inline-block;
}
.search__type__word input[name=word] {
  width: calc(100% - 180px);
  margin-right: 12px;
}
.search__type__word label {
  width: 80px;
}

.job__search__btn__area {
  margin: 12px auto;
  text-align: center;
}
.job__search__btn__area input.btn__confirm {
  background: #1f81db url(../images/icons/down_arrow.svg) calc(50% - 32px) center/15px 15px no-repeat;
  padding: 12px 15px 12px 40px;
}

#job_search_ans {
  margin: 25px 0 15px;
  text-align: center;
}

.now_area_str,
.hit_cnt_str {
  margin-right: 2px;
  font-size: 16px;
  font-weight: bold;
}

.hit_cnt_str {
  color: #f00;
}

.job__offer__box {
  margin-bottom: 32px;
}

.job__offer__box__wrap {
  border: 1px solid #2ca9e1;
  border-radius: 5px;
}

.job__offer__title {
  display: flex;
  justify-content: space-between;
  background: rgba(44, 169, 225, 0.1);
  border-bottom: 1px solid #2ca9e1;
  border-radius: 3px 3px 0 0;
  margin-bottom: 0;
  padding-left: 15px;
  font-size: 1.4rem;
  font-weight: bold;
  color: #2ca9e1;
}
.job__offer__title div {
  display: flex;
  align-items: center;
}
.job__offer__title .job__offer__title__text {
  display: block;
  padding: 8px 0;
}
.job__offer__title .job__offer__title__btn {
  justify-content: flex-end;
  margin: 6px 8px;
}
.job__offer__title .job__offer__title__btn input {
  border-radius: 3px;
  height: 100%;
  padding: 6px 28px 6px 12px;
  font-size: 1.1rem;
  color: #fff;
}
.job__offer__title .job__offer__title__btn .jsAxolJob_mail {
  margin-right: 8px;
  padding: 6px 12px;
}
.job__offer__title .job__entry__entried {
  background: #ff664b;
  border: 1px solid #ff664a;
  border-radius: 3px;
  margin-right: 3px;
  padding: 5px 12px;
  font-size: 1.2rem;
  color: #fff;
}
.job__offer__title .job__entry__disable {
  text-align: center;
  font-size: 1.2rem;
}

.job__offer__detail {
  padding: 10px 15px;
}
.job__offer__detail.jsAxolJob_foldings {
  border-top: 1px dashed #2ca9e1;
}
.job__offer__main__photo__area {
  padding: 5px 0 12px;
}

.job__offer__photo {
  width: 100%;
}
.job__offer__photo a {
  display: block;
  width: 100%;
  height: 100%;
}
.job__offer__photo img {
  width: 100%;
}

.job__offer__photo__area {
  float: right;
  display: inline-block;
  width: 190px;
  margin-left: 8px;
  text-align: right;
}
.job__offer__photo__area a {
  display: block;
  width: 100%;
  height: 100%;
}
.job__offer__photo__area img {
  width: 100%;
}

.job__offer__detail__item {
  display: flex;
  padding: 3px 0;
}
.job__offer__detail__item:last-child {
  border-bottom: none;
}
.job__offer__detail__item div {
  box-sizing: border-box;
}

.job__offer__detail__title {
  background: #f3f2f1;
  width: 120px;
  height: 100%;
  padding: 5px 10px;
  text-align: right;
}

.job__offer__detail__text {
  width: calc(100% - 140px);
  padding: 5px 0;
  margin-left: 15px;
}

.jsAxolJob_jusho_switch {
  text-decoration: underline;
  color: #00f;
  cursor: pointer;
}

.job__jusho__detail .job__jusho__name {
  font-size: 1.6rem;
  font-weight: bold;
}
.job__jusho__detail .job__jusho__jusho {
  padding: 5px 0;
}
.job__jusho__detail .job__jusho__station {
  border-top: 1px dashed #ccc;
  padding-top: 8px;
}

.entry__button__bottom {
  display: flex;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 15px;
}
.entry__button__bottom input {
  display: flex;
  align-items: center;
}
.entry__button__bottom .entry__button__bottom__block {
  margin: 0 10px;
}
.entry__button__bottom .entry__button__bottom__block input {
  display: inline-block;
  vertical-align: middle;
}
.entry__button__bottom .job__detail__switch {
  background: #555 url(../images/icons/down_arrow.svg) 12px center/11px no-repeat;
  border-radius: 5px;
  margin-right: 3px;
  padding: 12px 15px 12px 32px;
}
.entry__button__bottom .jsAxolJob_mail {
  border-radius: 5px;
  padding: 12px 15px;
}
.entry__button__bottom .entry__button__bottom__wrap {
  display: flex;
  margin: 0 10px;
}
.entry__button__bottom .job__entry__button {
  flex-wrap: wrap;
  border-radius: 5px;
  padding: 12px 32px 12px 15px;
  color: #fff;
}

.job__mail__address input {
  display: inline-block;
  vertical-align: middle;
}
.job__mail__address .job__mail__address__input {
  width: 70%;
}

.jobsearch__hit {
  background-color: yellow;
}

#job_detail .jsAxolJob_mail {
  padding: 12px 15px;
  margin-right: 8px;
}
#job_detail .entry__button__bottom__wrap {
  display: inline-block;
}

.job__box {
  border: 1px solid #2ca9e1;
  border-radius: 3px;
  padding: 20px 25px 10px;
}
.job__box .job__offer__detail {
  padding: 0;
}

.entry__button {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin: 10px 0 15px;
  text-align: center;
}
.entry__button .job__entry__disable {
  background-color: #f3f2f1;
  border: 1px solid #ccc;
  padding: 10px 15px;
  color: #333;
}
.entry__button .job__entry__button {
  padding: 12px 32px 12px 15px;
}

/* 職種一覧・職種カテゴリ一覧
------------------------------------------------------------------*/
.job__start__text {
  margin-bottom: 15px;
}

.offer__list__area {
  margin-bottom: 25px;
  padding: 0 15px;
}

.offer__list__category {
  font-weight: bold;
  margin-bottom: 3px;
  padding: 0 3px;
}

.offer__list {
  justify-content: space-between;
  background: rgba(204, 204, 204, 0.1);
  border: 1px solid #ccc;
  border-radius: 5px;
}
.offer__list + .offer__list {
  margin-top: 8px;
}

.offer__list__item {
  padding: 8px 12px;
  font-size: 1.4rem;
  text-decoration: underline;
}
.offer__list__item a {
  color: #2ca9e1;
  text-decoration: underline;
}
.offer__list__item + .offer__list__item {
  border-top: 1px dashed #ccc;
}

/* 職種検索（都道府県）※日本地図
------------------------------------------------------------------*/
.japan__map__wrap {
  position: relative;
  background: url(../images/map_item/japan.svg) left top/5040px no-repeat;
  max-width: 720px;
  height: 510px;
  margin: 0 auto;
}

.map__check__area {
  position: absolute;
  width: 100%;
  height: 510px;
  top: 0;
  left: 0;
}

.check__1 {
  background: url(../images/map_item/japan.svg) -720px top/5040px no-repeat;
}

.check__2 {
  background: url(../images/map_item/japan.svg) -1440px top/5040px no-repeat;
}

.check__3 {
  background: url(../images/map_item/japan.svg) -2160px top/5040px no-repeat;
}

.check__4 {
  background: url(../images/map_item/japan.svg) -2880px top/5040px no-repeat;
}

.check__5 {
  background: url(../images/map_item/japan.svg) -3600px top/5040px no-repeat;
}

.check__6 {
  background: url(../images/map_item/japan.svg) -4320px top/5040px no-repeat;
}

.check__7 {
  background: url(../images/map_item/japan.svg) left -450px/5040px no-repeat;
}

.check__8 {
  background: url(../images/map_item/japan.svg) -720px -450px/5040px no-repeat;
}

.check__9 {
  background: url(../images/map_item/japan.svg) -1440px -450px/5040px no-repeat;
}

.check__10 {
  background: url(../images/map_item/japan.svg) -2160px -450px/5040px no-repeat;
}

.check__11 {
  background: url(../images/map_item/japan.svg) -2880px -450px/5040px no-repeat;
}

.check__12 {
  background: url(../images/map_item/japan.svg) -3600px -450px/5040px no-repeat;
}

.check__13 {
  background: url(../images/map_item/japan.svg) -4320px -450px/5040px no-repeat;
}

.check__14 {
  background: url(../images/map_item/japan.svg) left -900px/5040px no-repeat;
}

.check__15 {
  background: url(../images/map_item/japan.svg) -720px -900px/5040px no-repeat;
}

.check__16 {
  background: url(../images/map_item/japan.svg) -1440px -900px/5040px no-repeat;
}

.check__17 {
  background: url(../images/map_item/japan.svg) -2160px -900px/5040px no-repeat;
}

.check__18 {
  background: url(../images/map_item/japan.svg) -2880px -900px/5040px no-repeat;
}

.check__19 {
  background: url(../images/map_item/japan.svg) -3600px -900px/5040px no-repeat;
}

.check__20 {
  background: url(../images/map_item/japan.svg) -4320px -900px/5040px no-repeat;
}

.check__21 {
  background: url(../images/map_item/japan.svg) left -1350px/5040px no-repeat;
}

.check__22 {
  background: url(../images/map_item/japan.svg) -720px -1350px/5040px no-repeat;
}

.check__23 {
  background: url(../images/map_item/japan.svg) -1440px -1350px/5040px no-repeat;
}

.check__24 {
  background: url(../images/map_item/japan.svg) -2160px -1350px/5040px no-repeat;
}

.check__25 {
  background: url(../images/map_item/japan.svg) -2880px -1350px/5040px no-repeat;
}

.check__26 {
  background: url(../images/map_item/japan.svg) -3600px -1350px/5040px no-repeat;
}

.check__27 {
  background: url(../images/map_item/japan.svg) -4320px -1350px/5040px no-repeat;
}

.check__28 {
  background: url(../images/map_item/japan.svg) left -1800px/5040px no-repeat;
}

.check__29 {
  background: url(../images/map_item/japan.svg) -720px -1800px/5040px no-repeat;
}

.check__30 {
  background: url(../images/map_item/japan.svg) -1440px -1800px/5040px no-repeat;
}

.check__31 {
  background: url(../images/map_item/japan.svg) -2160px -1800px/5040px no-repeat;
}

.check__32 {
  background: url(../images/map_item/japan.svg) -2880px -1800px/5040px no-repeat;
}

.check__33 {
  background: url(../images/map_item/japan.svg) -3600px -1800px/5040px no-repeat;
}

.check__34 {
  background: url(../images/map_item/japan.svg) -4320px -1800px/5040px no-repeat;
}

.check__35 {
  background: url(../images/map_item/japan.svg) left -2250px/5040px no-repeat;
}

.check__36 {
  background: url(../images/map_item/japan.svg) -720px -2250px/5040px no-repeat;
}

.check__37 {
  background: url(../images/map_item/japan.svg) -1440px -2250px/5040px no-repeat;
}

.check__38 {
  background: url(../images/map_item/japan.svg) -2160px -2250px/5040px no-repeat;
}

.check__39 {
  background: url(../images/map_item/japan.svg) -2880px -2250px/5040px no-repeat;
}

.check__40 {
  background: url(../images/map_item/japan.svg) -3600px -2250px/5040px no-repeat;
}

.check__41 {
  background: url(../images/map_item/japan.svg) -4320px -2250px/5040px no-repeat;
}

.check__42 {
  background: url(../images/map_item/japan.svg) left -2700px/5040px no-repeat;
}

.check__43 {
  background: url(../images/map_item/japan.svg) -720px -2700px/5040px no-repeat;
}

.check__44 {
  background: url(../images/map_item/japan.svg) -1440px -2700px/5040px no-repeat;
}

.check__45 {
  background: url(../images/map_item/japan.svg) -2160px -2700px/5040px no-repeat;
}

.check__46 {
  background: url(../images/map_item/japan.svg) -2880px -2700px/5040px no-repeat;
}

.check__47 {
  background: url(../images/map_item/japan.svg) -3600px -2700px/5040px no-repeat;
}

/* 各エリア別 都道府県ボタン
------------------------------------------------------------------*/
.area__card {
  position: absolute;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
  border-radius: 3px;
  width: 75px;
  padding: 8px 8px;
}

.area__item__base {
  position: relative;
  display: inline-block;
  background: linear-gradient(to bottom, #fff 0%, #f3f2f1 100%);
  border: 1px solid #ccc;
  border-bottom: 3px solid #ccc;
  width: 60px;
  padding: 3px 5px;
  text-align: center;
  cursor: pointer;
}
.area__item__base.disabled {
  background: #fff;
  border: 1px solid #f3f2f1;
  margin-bottom: 2px;
  color: #ccc;
  top: 2px;
  cursor: default;
}
.area__item__base.disabled:hover {
  background: #fff;
}
.area__item__base:hover {
  background: linear-gradient(to bottom, #eee 0%, #e3e2e1 100%);
}

.area__hokkaido__tohoku {
  border: 1px solid #E1A3A3;
  width: 150px;
  height: 118px;
  top: 169px;
  left: 550px;
}
.area__hokkaido__tohoku .selected {
  background: linear-gradient(to bottom, #e02e32 0%, #c52e32 100%);
  border: 1px solid #c52e32;
  color: #fff;
}

.area__hokuriku {
  border: 1px solid #EEB8AD;
  width: 302px;
  height: 31px;
  top: 50px;
  left: 141px;
}
.area__hokuriku .selected {
  background: linear-gradient(to bottom, #e44e2f 0%, #c64b2f 100%);
  border: 1px solid #c64b2f;
  color: #fff;
}

.area__chubu {
  border: 1px solid #EEB8AD;
  width: 150px;
  height: 90px;
  top: 385px;
  left: 293px;
}
.area__chubu .selected {
  background: linear-gradient(to bottom, #f1db1d 0%, #cfb91d 100%);
  border: 1px solid #cfb91d;
}

.area__kanto {
  border: 1px solid #F2D1A9;
  width: 150px;
  height: 118px;
  top: 322px;
  left: 478px;
}
.area__kanto .selected {
  background: linear-gradient(to bottom, #f19522 0%, #dc8022 100%);
  border: 1px solid #dc8022;
  color: #fff;
}

.area__kansai {
  border: 1px solid #D7DEB0;
  width: 149px;
  height: 90px;
  top: 115px;
  left: 218px;
}
.area__kansai .selected {
  background: linear-gradient(to bottom, #a2ba37 0%, #879f35 100%);
  border: 1px solid #879f35;
  color: #fff;
}

.area__chugoku {
  border: 1px solid #BBD3BB;
  width: 149px;
  height: 90px;
  top: 115px;
  left: 34px;
}
.area__chugoku .selected {
  background: linear-gradient(to bottom, #539a57 0%, #448745 100%);
  border: 1px solid #448745;
  color: #fff;
}

.area__shikoku {
  border: 1px solid #A1C9C5;
  width: 149px;
  height: 59px;
  top: 415px;
  left: 110px;
}
.area__shikoku .selected {
  background: linear-gradient(to bottom, #097f72 0%, #097063 100%);
  border: 1px solid #097063;
  color: #fff;
}

.area__kyushu__okinawa {
  border: 1px solid #A0BBC6;
  width: 75px;
  height: 235px;
  top: 240px;
  left: 0;
}
.area__kyushu__okinawa .selected {
  background: linear-gradient(to bottom, #085776 0%, #084d6c 100%);
  border: 1px solid #084d6c;
  color: #fff;
}

.area__foreign {
  border: 1px solid #aaa;
  width: 75px;
  height: 28px;
  top: 20px;
  left: 0;
}
.area__foreign .selected {
  background: linear-gradient(to bottom, #555 0%, #444 100%);
  border: 1px solid #444;
  color: #fff;
}

.ken__1 {
  order: 1;
}

.ken__2 {
  order: 0;
}

.ken__3 {
  order: 3;
}

.ken__4 {
  order: 5;
}

.ken__5 {
  order: 2;
}

.ken__6 {
  order: 4;
}

.ken__7 {
  order: 6;
}

.ken__8 {
  order: 3;
}

.ken__9 {
  order: 1;
}

.ken__10 {
  order: 0;
}

.ken__11 {
  order: 2;
}

.ken__12 {
  order: 5;
}

.ken__13 {
  order: 4;
}

.ken__14 {
  order: 6;
}

.ken__15 {
  order: 3;
}

.ken__16 {
  order: 2;
}

.ken__17 {
  order: 1;
}

.ken__18 {
  order: 0;
}

.ken__19 {
  order: 3;
}

.ken__20 {
  order: 1;
}

.ken__21 {
  order: 0;
}

.ken__22 {
  order: 4;
}

.ken__23 {
  order: 2;
}

.ken__24 {
  order: 3;
}

.ken__25 {
  order: 3;
}

.ken__26 {
  order: 1;
}

.ken__27 {
  order: 2;
}

.ken__28 {
  order: 0;
}

.ken__29 {
  order: 4;
}

.ken__30 {
  order: 3;
}

.ken__31 {
  order: 1;
}

.ken__32 {
  order: 0;
}

.ken__33 {
  order: 3;
}

.ken__34 {
  order: 2;
}

.ken__35 {
  order: 4;
}

.ken__36 {
  order: 3;
}

.ken__37 {
  order: 1;
}

.ken__38 {
  order: 0;
}

.ken__39 {
  order: 2;
}

/* エージェントログイン画面
------------------------------------------------------------------*/
#login_box.agent__login {
  width: auto;
}
#login_box.agent__login #login_main {
  justify-content: center;
}

/*-----------------------------------------------------------------/
/ pc_custom カスタマイズする場合は以下に記述して下さい
/-----------------------------------------------------------------*/
/* 001t_custom */
.header__main__contents {
  background: url(../images/header_logo.jpg) left center/150px no-repeat;
}

/*-----------------------------------------------------------------/
/ pc_custom end カスタマイズの記述はここまで
/-----------------------------------------------------------------*/

/*# sourceMappingURL=frame_c001t_11.css.map */
