@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

input, button, textarea, select, option {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font: inherit;
}

input::-ms-clear {
  display: none;
}

input::-ms-reveal {
  display: none;
}

/**
 * イージングプロパティ
 * https://github.com/dmnsgn/sass-easing
 */
/**
 * ローディングアニメーション
 * @param {number} $size - 円のサイズ
 * @param {number} $thickness - 円の枠線の太さ
 * @param {string} $backcolor - 円の色
 * @param {string} $forecolor - 円の強調色
 * @param {string} [$duration=1] - アニメーションのスピード（単位は秒:s）
 */
/**
 * メディアクエリ
 * @param {string} $mode - max または min
 * @param {number} $width - 設定値
 */
/**
 * メディアクエリ PC
 * @param {number} [$width:$breakpoin] - 設定値
 */
/**
 * メディアクエリ SP
 * @param {number} [$width:$breakpoin] - 設定値
 */
/**
 * メディアクエリによるIE11ハック
 */
*, *:before, *:after {
  box-sizing: border-box;
}

body {
  background: #ffffff;
  color: #2E2E2E;
  font-family: Meiryo, Hiragino Kaku Gothic Pro, sans-serif;
  text-align: initial;
  line-height: 1.5;
}
@media screen and (min-width: 785px) {
  body {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  body {
    font-size: 12px;
  }
}

picture {
  display: block;
}

img {
  max-width: 100%;
}

a {
  cursor: pointer;
}

@media screen and (max-width: 784px) {
  .pc {
    display: none;
  }
}

@media screen and (min-width: 785px) {
  .sp {
    display: none;
  }
}

.block {
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
}

.block-container {
  margin-left: auto;
  margin-right: auto;
  max-width: 980px;
}
.block-container.wide {
   max-width: 980px;
}

@media screen and (min-width: 785px) {
  .global-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 40px;
   margin-bottom: 20px;
  }
}
@media screen and (max-width: 784px) {
  .global-header {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
.global-header .logo {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 785px) {
  .global-header .logo {
    height: 70px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .logo {
    height: 40px;
  }
}
.global-header .logo span {
  display: block;
}
.global-header .logo img {
  display: block;
  width: auto;
  height: 100%;
}
.global-header .logo .benesse-logo {
  height: 45%;
}
.global-header .logo .service-logo {
  height: 35%;
}
.global-header .step {
  display: flex;
  gap: 5px;
}
@media screen and (min-width: 785px) {
  .global-header .step {
    width: 640px;
    height: 70px;
    max-width: calc(100% - 270px);
  }
}
@media screen and (max-width: 784px) {
  .global-header .step {
    margin-top: 25px;
    height: 50px;
  }
}
.global-header .step li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  width: 100%;
  background-color: #EDEFF0;
  padding-left: 16px;
}
@media screen and (min-width: 785px) {
  .global-header .step li .num {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .step li .num {
    font-size: 10px;
  }
}
@media screen and (min-width: 785px) {
  .global-header .step li .txt {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .step li .txt {
    font-size: 12px;
    line-height: 1.2;
  }
}
.global-header .step li:before, .global-header .step li:after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  height: 0;
  width: 0;
  border-style: solid;
  z-index: 1;
}
@media screen and (max-width: 784px) {
  .global-header .step li:before, .global-header .step li:after {
    border-width: 25px 0px 25px 15px;
  }
}
@media screen and (min-width: 785px) {
  .global-header .step li:before, .global-header .step li:after {
    border-width: 35px 0px 35px 15px;
  }
}
.global-header .step li:before {
  margin-left: 5px;
  border-color: transparent transparent transparent #ffffff;
}
.global-header .step li:after {
  border-color: transparent transparent transparent #EDEFF0;
}
.global-header .step li.current {
  background-color: #aaaaaa;
  color: #ffffff;
  font-weight: bold;
}
.global-header .step li.current:after {
  border-color: transparent transparent transparent #aaaaaa;
}
.global-header .step li:last-child:before, .global-header .step li:last-child:after {
  display: none;
}
@media screen and (min-width: 785px) {
  .global-header .step.wide {
    width: 730px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .step.wide {
    height: 70px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .step.wide li:before, .global-header .step.wide li:after {
    border-width: 35px 0px 35px 15px;
  }
}
@media screen and (min-width: 785px) {
  .global-header .step.wide li .txt {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media screen and (max-width: 784px) {
  .global-header .step.wide li .txt {
    display: flex;
    align-items: center;
    height: 3em;
    text-align: center;
  }
}

@media screen and (min-width: 785px) {
  .global-footer {
    margin-top: 100px;
  }
}
@media screen and (max-width: 784px) {
  .global-footer {
    margin-top: 40px;
  }
}
.global-footer .securitymark {
  margin-bottom: 10px;
  display: flex;
  flex-direction: row-reverse;
}
.global-footer .copyright:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #e6e6e6;
}
.global-footer .copyright .inner {
  display: flex;
  padding-top: 15px;
  padding-bottom: 15px;
}
@media screen and (min-width: 785px) {
  .global-footer .copyright .inner {
    align-items: flex-end;
  }
}
@media screen and (max-width: 784px) {
  .global-footer .copyright .inner {
    flex-direction: column;
    align-items: center;
  }
}
@media screen and (min-width: 785px) {
  .global-footer .copyright .logo {
    height: 30px;
  }
}
@media screen and (max-width: 784px) {
  .global-footer .copyright .logo {
    height: 20px;
  }
}
.global-footer .copyright .logo img {
  display: block;
  width: auto;
  height: 100%;
}
.global-footer .copyright .text {
  color: #808080;
  line-height: 1.2;
}
@media screen and (min-width: 785px) {
  .global-footer .copyright .text {
    margin-left: 20px;
    font-size: 12px;
  }
}
@media screen and (max-width: 784px) {
  .global-footer .copyright .text {
    margin-top: 10px;
    font-size: 10px;
  }
}
.global-footer .privacy .container {
  display: flex;
  justify-content: flex-end;
}
@media screen and (max-width: 784px) {
  .global-footer .privacy .container {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 785px) {
  .global-footer .privacy a {
    position: absolute;
    bottom: 15px;
  }
}

@media screen and (min-width: 785px) {
  .index-menu {
    margin-top: 60px;
  }
}
.index-menu .button {
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 3px solid #CDCDCD;
  font-weight: bold;
}
@media screen and (min-width: 785px) {
  .index-menu .button {
    height: 65px;
    font-size: 28px;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .button {
    height: 50px;
    font-size: 20px;
  }
}
.index-menu .button.sho-1 {
  color: #F15379;
}
.index-menu .button.sho-2 {
  color: #348f28;
}
.index-menu .button.sho-3 {
  color: #094f94;
}
.index-menu .button.sho-4 {
  color: #ff4e00;
}
.index-menu .button.sho-5 {
  color: #80c31e;
}
.index-menu .button.sho-6 {
  color: #533a95;
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader {
    display: grid;
    gap: 20px 50px;
    grid-template-columns: repeat(auto-fill, minmax(460px, 1fr));
  }
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader .button {
    height: 95px;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .first-grader .button {
    height: 65px;
  }
}
.index-menu .first-grader .button p:nth-child(1) {
  color: #1780CE;
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader .button p:nth-child(1) {
    font-size: 28px;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .first-grader .button p:nth-child(1) {
    font-size: 20px;
  }
}
.index-menu .first-grader .button p:nth-child(2) {
  color: #333333;
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader .button p:nth-child(2) {
    font-size: 22px;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .first-grader .button p:nth-child(2) {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader .text {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .first-grader .text {
    margin-top: 10px;
  }
}
@media screen and (min-width: 785px) {
  .index-menu .first-grader .text p:not(:first-child) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .first-grader .text p:not(:first-child) {
    margin-top: 5px;
  }
}
.index-menu .list {
  width: 100%;
}
@media screen and (min-width: 785px) {
  .index-menu .list {
    margin-top: 35px;
    display: grid;
    gap: 35px 50px;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  }
}
@media screen and (max-width: 784px) {
  .index-menu .list {
    margin-top: 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
}
@media screen and (min-width: 785px) {
  .index-menu .list li {
    width: auto;
  }
}
@media screen and (max-width: 784px) {
  .index-menu .list li {
    width: 100%;
  }
}

@media screen and (min-width: 785px) {
  .index-other-link {
    margin-top: 60px;
  }
}
@media screen and (max-width: 784px) {
  .index-other-link {
    margin-top: 40px;
  }
}
@media screen and (max-width: 784px) {
  .index-other-link ul li:not(:first-child) {
    margin-top: 10px;
  }
}

.index-corp-info {
  margin-top: 40px;
}

@media screen and (min-width: 785px) {
  .heading {
    margin-top: 50px;
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 784px) {
  .heading {
    margin-top: 40px;
    margin-bottom: 20px;
  }
}
.heading .title {
  font-weight: bold;
}
@media screen and (min-width: 785px) {
  .heading .title {
    font-size: 28px;
  }
}
@media screen and (max-width: 784px) {
  .heading .title {
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) and (max-width: 389px) {
  .heading .title {
    font-size: 23px;
  }
}
@media screen and (min-width: 785px) {
  .heading .description {
    margin-top: 25px;
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 784px) {
  .heading .description {
    margin-top: 20px;
    margin-bottom: 40px;
  }
}
.heading .description .subject {
  font-weight: bold;
}
@media screen and (min-width: 785px) {
  .heading .description .subject {
    margin-bottom: 10px;
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .heading .description .subject {
    margin-bottom: 5px;
    font-size: 20px;
  }
}
.heading.size-m {
  margin-bottom: 10px;
}
@media screen and (min-width: 785px) {
  .heading.size-m .title {
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .heading.size-m .title {
    font-size: 18px;
  }
}
.heading.size-m .description {
  margin-top: 10px;
}
.heading.type-s {
  margin-bottom: 10px;
}
@media screen and (min-width: 785px) {
  .heading.type-s .title {
    font-size: 18px;
  }
}
@media screen and (max-width: 784px) {
  .heading.type-s .title {
    font-size: 18px;
  }
}
.heading.type-s .description {
  margin-top: 10px;
}

.field {
  display: flex;
}
@media screen and (min-width: 785px) {
  .field {
    margin-bottom: 30px;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media screen and (max-width: 784px) {
  .field {
    margin-bottom: 20px;
    flex-direction: column;
  }
}
@media screen and (max-width: 784px) {
  .field .field-head,
  .field .field-body,
  .field .field-body-wide {
    display: contents;
  }
}
@media screen and (min-width: 785px) {
  .field .field-head {
    width: 45.9183673469%;
  }
}
@media screen and (min-width: 785px) {
  .field .field-body {
    width: 48.9795918367%;
  }
}
@media screen and (min-width: 785px) {
  .field .field-body-wide {
    width: 100%;
  }
}
@media screen and (min-width: 785px) {
  .field .field-body.lower {
    margin-top: 45px;
  }
}
@media screen and (min-width: 785px) {
  .field .field-head.full,
  .field .field-body.full {
    width: 100%;
  }
  .field .field-head.full + .field-body:not(.full),
  .field .field-body.full + .field-body:not(.full) {
    margin-left: 48.9795918367%;
  }
}
@media screen and (min-width: 785px) {
  .field .field-title,
  .field .field-sub-title,
  .field .field-block,
  .field .field-error > *:last-child {
    margin-bottom: 20px;
  }
  .field .field-credit-label {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-title,
  .field .field-sub-title,
  .field .field-block,
  .field .field-error > *:last-child {
    margin-bottom: 10px;
  }
  .field .field-credit-label {
    margin-bottom: 8px;
  }
}
.field .field-title,
  .field .field-sub-title,
  .field .field-credit-label {
  font-weight: bold;
  line-height: 1.3;
  order: -1;
}
@media screen and (min-width: 785px) {
  .field .field-title {
    font-size: 28px;
  }
  .field .field-sub-title {
    font-size: 18px;
  }
  .field .field-credit-label {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-title {
    font-size: 24px;
    order: -1;
  }
  .field .field-sub-title {
    font-size: 16px;
    order: -1;
  }
  .field .field-credit-label {
    font-size: 12px;
  }
}
.field .field-title.required:after, .field .field-title.optional:after,
.field .field-sub-title.required:after, .field .field-sub-title.optional:after,
.field .field-credit-label.required:after, .field .field-credit-label.optional:after {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  padding: 3px 10px;
  border-radius: 4px;
  color: #ffffff;
  line-height: 1;
  margin-left: 0.5em;
}
@media screen and (min-width: 785px) {
  .field .field-title.required:after, .field .field-title.optional:after,
  .field .field-sub-title.required:after, .field .field-sub-title.optional:after,
  .field .field-credit-label.required:after, .field .field-credit-label.optional:after {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-title.required:after, .field .field-title.optional:after,
  .field .field-sub-title.required:after, .field .field-sub-title.optional:after,
  .field .field-credit-label.required:after, .field .field-credit-label.optional:after {
    font-size: 12px;
  }
}
.field .field-title.required:after,
.field .field-sub-title.required:after,
.field .field-credit-label.required:after  {
  content: "必須";
  background-color: #E13131;
}
.field .field-title.optional:after,
.field .field-sub-title.optional:after,
.field .field-credit-label.optional:after  {
  content: "任意";
  background-color: #2E2E2E;
}
@media screen and (min-width: 785px) {
  .field .field-title.size-s {
    font-size: 18px;
  }
  .isSp {
    display: none;
  }
 .title.size-l {
     font-size: 28px;
     font-weight: bold;
 }
}
@media screen and (max-width: 784px) {
  .field .field-title.size-s {
    font-size: 18px;
  }
  .isSp {
    display: block;
  }
 .title.size-l.sp-size-vw {
     font-size: 24px;
     font-weight: bold;
 }
}
.field .field-error {
  color: #e60207;
  font-weight: bold;
  order: -1;
}
.field .field-error dt {
  position: relative;
  padding-left: 25px;
}
@media screen and (min-width: 785px) {
  .field .field-error dt {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-error dt {
    font-size: 12px;
  }
}
.field .field-error dt:before {
  content: "";
  position: absolute;
  top: 0.75em;
  left: 0;
  margin-top: -9px;
  width: 18px;
  height: 18px;
  background: url(../img/common/icon-error-red.gif) no-repeat center/contain;
}
@media screen and (min-width: 785px) {
  .field .field-error dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-error dd {
    font-size: 12px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-body > div:nth-child(1) {
    order: 0;
  }
  .field .field-body > div:nth-child(2) {
    order: 1;
  }
  .field .field-body > div:nth-child(3) {
    order: 2;
  }
  .field .field-body > div:nth-child(4) {
    order: 3;
  }
  .field .field-body > div:nth-child(5) {
    order: 4;
  }
  .field .field-body > div:nth-child(6) {
    order: 5;
  }
  .field .field-body > div:nth-child(7) {
    order: 6;
  }
  .field .field-body > div:nth-child(8) {
    order: 7;
  }
  .field .field-body > div:nth-child(9) {
    order: 8;
  }
  .field .field-body > div:nth-child(10) {
    order: 9;
  }
  .field .field-body > div:nth-child(11) {
    order: 10;
  }
  .field .field-body > div:nth-child(12) {
    order: 11;
  }
  .field .field-body > div:nth-child(13) {
    order: 12;
  }
  .field .field-body > div:nth-child(14) {
    order: 13;
  }
  .field .field-body > div:nth-child(15) {
    order: 14;
  }
  .field .field-body > div:nth-child(16) {
    order: 15;
  }
  .field .field-body > div:nth-child(17) {
    order: 16;
  }
  .field .field-body > div:nth-child(18) {
    order: 17;
  }
  .field .field-body > div:nth-child(19) {
    order: 18;
  }
  .field .field-body > div:nth-child(20) {
    order: 19;
  }
  .field .field-block.sp-order-1 {
    order: 1;
  }
  .field .field-block.sp-order-2 {
    order: 2;
  }
  .field .field-block.sp-order-3 {
    order: 3;
  }
  .field .field-block.sp-order-4 {
    order: 4;
  }
  .field .field-block.sp-order-5 {
    order: 5;
  }
  .field .field-block.sp-order-6 {
    order: 6;
  }
  .field .field-block.sp-order-7 {
    order: 7;
  }
  .field .field-block.sp-order-8 {
    order: 8;
  }
  .field .field-block.sp-order-9 {
    order: 9;
  }
  .field .field-block.sp-order-10 {
    order: 10;
  }
}
.field .field-block .field-block {
  margin-bottom: 10px;
}
.field .field-block .field-block:last-child {
  margin-bottom: 0;
}
.field .field-block .field-label:not(:last-child) {
  margin-bottom: 5px;
}
.field .field-block .field-input {
  display: flex;
  align-items: center;
}

.field .field-block .field-input:not(:last-child) {
  margin-bottom: 10px;
}
.field .field-block .field-image:not(:last-child) {
  margin-bottom: 10px;
}
.field .filed-default {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.field .filed-default .default-value {
  width: calc(100% - 100px);
}
@media screen and (min-width: 785px) {
  .field .filed-default .default-value {
    font-size: 18px;
  }
}
@media screen and (max-width: 784px) {
  .field .filed-default .default-value {
    font-size: 14px;
  }
}
@media screen and (min-width: 785px) {
  .field .filed-default .default-button {
    width: 100px;
  }
}
@media screen and (max-width: 784px) {
  .field .filed-default .default-button {
    width: 70px;
  }
}
.field.type-confirm {
  margin-bottom: 0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
  }
  
  .block .field.type-confirm:first-child {
	  margin-top: -1px;
  }
  .block .field.type-confirm + .field.type-confirm {
  border-top: none;
  }
}
.field.type-confirm .field-head,
.field.type-confirm .field-body {
  display: flex;
  justify-content: center;
  flex-direction: column;
  
}
@media screen and (min-width: 785px) {
  .field.type-confirm .field-head,
  .field.type-confirm .field-body {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
.field.type-confirm .field-head {
  padding-left: 20px;
  padding-right: 20px;
  background-color: #EDEFF0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm .field-head {
    width: 325px;
    text-align: center;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm .field-head {
    padding-top: 7.5px;
    padding-bottom: 7.5px;
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm .field-body {
    width: calc(100% - 325px);
    padding-left: 30px;
    padding-right: 30px;
    background-color: #FFFFFF;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm .field-body {
    padding-top: 10px;
    padding-bottom: 20px;
  }
}
.field.type-confirm .field-title:last-child,
.field.type-confirm .field-block:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm .field-title {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm .field-title {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm.type-B {
    border-left: 1px solid #707070;
    border-right: 1px solid #707070;
  }
  .field.type-confirm.type-B .field-title {
    text-align: left;
    display: flex;
    justify-content: center;
  }
}
.field.type-enquete .field-title {
  margin-left: 1.5em;
  font-weight: normal;
  line-height: inherit;
}
@media screen and (min-width: 785px) {
  .field.type-enquete .field-title {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-enquete .field-title {
    font-size: 12px;
    margin-bottom: 10px;
  }
}
.field.type-enquete .field-title span {
  display: inline-block;
  width: 1.5em;
  margin-left: -1.5em;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-enquete .field-head {
    width: 46.2328767123%;
    text-align: left;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-enquete .field-body {
    width: 53.7671232877%;
  }
}
@media screen and (max-width: 784px) {
  .field.type-siblings {
    flex-direction: row;
    justify-content: space-between;
  }
}
@media screen and (min-width: 785px) {
  .field.type-siblings li:nth-child(1) {
    width: 45.9183673469%;
  }
}
@media screen and (max-width: 784px) {
  .field.type-siblings li:nth-child(1) {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 785px) {
  .field.type-siblings li:nth-child(2) {
    width: 48.9795918367%;
  }
}
@media screen and (max-width: 784px) {
  .field.type-siblings li:nth-child(2) {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 785px) {
  .field.type-option {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-option {
    margin-bottom: 50px;
  }
}
.field.type-option + .type-option {
  margin-top: -40px;
}

.error-box {
  color: #e60207;
}
@media screen and (min-width: 785px) {
  .error-box {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 784px) {
  .error-box {
    margin-bottom: 20px;
  }
}
.error-box dt {
  margin-bottom: 15px;
  font-weight: bold;
}
@media screen and (min-width: 785px) {
  .error-box dt {
    font-size: 18px;
  }
}
@media screen and (max-width: 784px) {
  .error-box dt {
    font-size: 15px;
  }
}
.error-box dd {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 60px;
  padding: 10px 20px 10px 70px;
  background: #fffed7;
  border: 1px solid #fda20c;
  border-radius: 8px;
  font-weight: bold;
}
@media screen and (min-width: 785px) {
  .error-box dd {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .error-box dd {
    font-size: 12px;
  }
}
.error-box dd:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 20px;
  margin-top: -18.5px;
  width: 37px;
  height: 37px;
  background: url(../img/common/icon-error-red.gif) no-repeat center/contain;
}

@media screen and (min-width: 785px) {
  .form-footer {
    margin-top: 50px;
  }
}
@media screen and (max-width: 784px) {
  .form-footer {
    margin-top: 50px;
  }
}
.form-footer .error-area:not(.is-active) {
  display: none;
}
@media screen and (max-width: 784px) {
  .navigation {
    display: flex;
    flex-direction: column-reverse;
  }
}
.navigation .note {
  max-width: 656px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  .navigation .note {
    margin-top: 10px;
    font-size: 18px;
  }
}
@media screen and (max-width: 784px) {
  .navigation .note {
    margin-top: 20px;
    font-size: 12px;
  }
}
.navigation ul {
  display: flex;
}
@media screen and (min-width: 785px) {
  .navigation ul {
    margin-top: 30px;
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .navigation ul {
    margin-top: 10px;
    font-size: 18px;
  }
}
.navigation ul a {
  text-decoration: none;
}
.navigation ul .pagetop {
  margin-left: auto;
  cursor: pointer;
}
.form-footer + .navigation ul {
  margin-top: 40px;
}

@media screen and (min-width: 785px) {
  .recommend {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 784px) {
  .recommend {
    margin-bottom: 30px;
  }
}
.recommend > *:not(:first-child) {
  margin-top: 15px;
}
.recommend .w-full {
  width: 100% !important;
  max-width: 100% !important;
}
.recommend .w-600 {
  width: 600px;
}
.recommend .w-300 {
  width: 300px;
}
.recommend .button {
  text-decoration: none;
}
@media screen and (min-width: 785px) {
  .recommend .button {
    width: 450px;
    height: 60px;
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .recommend .button {
    height: 40px;
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .recommend .button.type-link {
    width: 450px;
  }
}
@media screen and (max-width: 784px) {
  .recommend .button.type-link {
    width: 60%;
  }
}
.recommend .button.type-link:before, .recommend .button.type-link:after {
  content: "";
  position: absolute;
  height: 2px;
  background-color: #fff;
  transform-origin: right center;
}
@media screen and (min-width: 785px) {
  .recommend .button.type-link:before, .recommend .button.type-link:after {
    width: 12px;
    right: 20px;
  }
}
@media screen and (max-width: 784px) {
  .recommend .button.type-link:before, .recommend .button.type-link:after {
    width: 8px;
    right: 15px;
  }
}
.recommend .button.type-link:before {
  transform: rotate(45deg);
}
.recommend .button.type-link:after {
  transform: rotate(-45deg);
}

.input {
  position: relative;
  display: flex;
  align-items: center;
}
.input.full {
  width: 100%;
}

@media screen and (min-width: 785px) {
.input.size-m {
  width: 150px;
}
.input.size-m {
  width: 160px;
}
.input.size-s {
  width: 80px;
}

.input select {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #CDCDCD;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 5px 15px;
  margin: 0;
  height: 55px;
  font-size: 16px;
}
}
@media screen and (max-width: 784px) {
.input.size-m {
  width: 130px;
}
.input.size-m {
  width: 130px;
}
.input.size-s {
  width:60px;
}

.input select {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #CDCDCD;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 5px 15px;
  margin: 0;
  height: 55px;
}
}

.input input[type=text],
.input input[type=tel],
.input input[type=email],
.input input[type=password] {
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #CDCDCD;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 5px 15px;
  margin: 0;
  height: 55px;
  font-size: 16px;
}
.input input[type=text]::-moz-placeholder,.input input[type=tel]::-moz-placeholder, .input input[type=email]::-moz-placeholder, .input select::-moz-placeholder {
  color: #CDCDCD;
}
.input input[type=text]::placeholder,
.input input[type=tel]::placeholder,
.input input[type=email]::placeholder,
.input select::placeholder {
  color: #CDCDCD;
}
.input input[type=text][disabled],
.input input[type=tel][disabled],
.input input[type=email][disabled],
.input input[type=password][disabled],
.input select[disabled] {
  background-color: #CDCDCD;
}
.input input[type=text][disabled]::-moz-placeholder, .input input[type=tel][disabled]::-moz-placeholder, .input input[type=email][disabled]::-moz-placeholder, .input select[disabled]::-moz-placeholder {
  color: #ffffff;
}
.input input[type=text][disabled]::placeholder,
.input input[type=tel][disabled]::placeholder,
.input input[type=email][disabled]::placeholder,
.input select[disabled]::placeholder {
  color: #ffffff;
}
.input input[type=text]:focus,
.input input[type=tel]:focus,
.input input[type=email]:focus,
.input input[type=password]:focus,
.input select:focus {
  border: 1px solid #0365C8;
  box-shadow: 0px 0px 0px 1px #0365C8 inset;
}
.input input[type=radio],
.input input[type=checkbox] {
  display: none;
}
.input input[type=radio] + div,
.input input[type=checkbox] ~ div {
  display: flex;
  width: 100%;
  padding: 10px;
  border: 1px solid #CDCDCD;
  border-radius: 5px;
  line-height: 1.5;
  flex-direction: column;
  justify-content: center;
  cursor: pointer;
}
@media screen and (min-width: 785px) {
  .input input[type=radio] + div,
  .input input[type=checkbox] ~ div {
    font-size: 16px;
    min-height: 55px;
  }
}
@media screen and (max-width: 784px) {
  .input input[type=radio] + div,
  .input input[type=checkbox] ~ div {
    font-size: 12px;
    min-height: 45px;
  }
}
.input input[type=radio] + div > div,
.input input[type=checkbox] ~ div > div {
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 785px) {
  .input input[type=radio] + div > div,
  .input input[type=checkbox] ~ div > div {
    min-height: 35px;
  }
}
@media screen and (max-width: 784px) {
  .input input[type=radio] + div > div,
  .input input[type=checkbox] ~ div > div {
    min-height: 25px;
  }
}
.input input[type=radio] + div > div:nth-child(1),
.input input[type=checkbox] ~ div > div:nth-child(1) {
  padding-left: 25px;
  font-weight: bold;
}
.input input[type=radio] + div > div:nth-child(1):before,
.input input[type=radio] + div > div:nth-child(1):after{
  content: "";
  position: absolute;
  top: 50%;
  left: 8px;
  margin: auto;
  display: block;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.input input[type=checkbox] ~ div > div:nth-child(1):before,
.input input[type=checkbox] ~ div > div:nth-child(1):after {
  content: "";
  position: absolute;
  top: 50%;
  left: 8px;
  margin: auto;
  display: block;
  border-radius: 0%;
  transform: translate(-50%, -50%);
}
.input input[type=radio] + div > div:nth-child(1):before,
.input input[type=checkbox] ~ div > div:nth-child(1):before {
  width: 16px;
  height: 16px;
  border: 1px solid #CDCDCD;
}
.input input[type=radio] + div > div:nth-child(1):after,
.input input[type=checkbox] ~ div > div:nth-child(1):after {
  display: none;
  width: 10px;
  height: 10px;
  background-color: #0365C8;
}
.input input[type=radio] + div > div:nth-child(1) small,
.input input[type=checkbox] ~ div > div:nth-child(1) small {
  font-weight: normal;
}
.input input[type=radio] + div > div:nth-child(1) small.s,
.input input[type=checkbox] ~ div > div:nth-child(1) small.s {
  font-size: 80%;
}
.input input[type=radio] + div > div img,
.input input[type=checkbox] ~ div > div img {
  display: block;
  width: 80px;
  margin-right: 10px;
}
.input input[type=radio] + div .label-flag,
.input input[type=checkbox] ~ div .label-flag {
  margin-left: 5px;
  margin-right: 10px;
  display: block;
  padding: 0px 10px;
  background-color: #0365C8;
  color: #ffffff;
  font-weight: normal;
}
.input input[type=radio] + div hr,
.input input[type=checkbox] ~ div hr {
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
  border: none;
  border-bottom: 1px solid #CDCDCD;
}
.input input[type=radio]:checked + div,
.input input[type=checkbox]:checked ~ div {
  border-color: #0365C8;
  box-shadow: 0px 0px 0px 1px #0365C8 inset;
}
.input input[type=radio]:checked + div > div:nth-child(1):after,
.input input[type=checkbox]:checked ~ div > div:nth-child(1):after {
  display: block;
}
.field-label[style*="rgb(218, 229, 241)"] {
  background-color: #fff !important;
}

.input input[type=radio].type-checkbox + div > div:nth-child(1):before,
.input input[type=checkbox].type-checkbox ~ div > div:nth-child(1):before {
  width: 14px;
  height: 14px;
  border-radius: 0;
}
.input input[type=radio].type-checkbox + div > div:nth-child(1):after,
.input input[type=checkbox].type-checkbox ~ div > div:nth-child(1):after {
  width: 10px;
  height: 5px;
  border-radius: 0;
  border-top: 0;
  border-right: 0;
  border-bottom: 2px;
  border-left: 2px;
  border-style: solid;
  border-color: #fff;
  background: none;
  transform: translate(-50%, -85%) rotate(-45deg);
}
.input input[type=radio].type-checkbox:checked + div,
.input input[type=checkbox].type-checkbox:checked ~ div {
  border-color: #0365C8;
  box-shadow: 0px 0px 0px 1px #0365C8 inset;
}
.input input[type=radio].type-checkbox:checked + div > div:nth-child(1):before,
.input input[type=checkbox].type-checkbox:checked ~ div > div:nth-child(1):before {
  background-color: #0365C8;
  border-color: #0365C8;
}
.input input[type=radio].type-checkbox:checked + div > div:nth-child(1):after,
.input input[type=checkbox].type-checkbox:checked ~ div > div:nth-child(1):after {
  display: block;
}
.input.is-error input[type=text],
.input.is-error input[type=tel],
.input.is-error input[type=email],
.input is-error input[type=password],
.input.is-error select,
.input.is-error input[type=radio] + div,
.input.is-error input[type=checkbox] ~ div {
  background-color: rgb(255, 223, 223);
}
.input.type-panel {
  width: 100%;
}
.input.type-panel input[type=radio] + div > div {
  padding: 0;
  justify-content: center;
  width: 100%;
}
.input.type-panel input[type=radio] + div > div:before, .input.type-panel input[type=radio] + div > div:after {
  display: none !important;
}
.input.type-panel input[type=radio]:checked + div {
  position: relative;
  z-index: 1;
}
.input.type-panel:not(:first-child) {
  margin-left: -1px;
}
.input.type-panel:not(:first-child) input[type=radio] + div {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input.type-panel:not(:last-child) input[type=radio] + div {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input.type-simple input[type=radio] + div {
  border: none !important;
  box-shadow: none !important;
  padding: 0;
  min-height: 0;
}
.input.type-simple input[type=radio] + div > div:before, .input.type-simple input[type=radio] + div > div:after {
  left: 50%;
}

.input .school {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0px 10px;
  width: 100%;
  min-height: 55px;
  padding: 10px 15px;
  border: 1px solid #CDCDCD;
  border-radius: 5px;
  font-size: 16px;
}
.input .mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #CDCDCD;
  display: flex;
  align-items: center;
  padding: 5px 15px;
  border-radius: 5px;
  color: #ffffff;
  font-size: 16px;
  visibility: hidden;
}
.input input:disabled + .mask,
.input select:disabled + .mask,
.input button:disabled + .mask {
  visibility: visible;
}
.input.is-mask .mask {
  visibility: visible;
}

.input-unit:not(:first-child) {
  margin-left: 7.5px;
}
.input-unit:not(:last-child) {
  margin-right: 7.5px;
}
@media screen and (max-width: 784px) {
  .input-unit {
    font-size: 14px;
  }
}

.bullet-list > li {
  margin-left: 1em;
}
.bullet-list > li > span {
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}

.accordion-trigger,
.accordion-trigger-inner-item{
  text-decoration: underline;
  cursor: pointer;
  color: #0365C8;
}
.accordion-trigger:before,
.accordion-trigger-inner-item:before{
  display: inline-block;
  width: 1em;
  text-align: center;
  content: "＋";
}
.accordion-trigger.is-active:before,
.accordion-trigger-inner-item.is-active:before {
  content: "−";
}
.accordion-trigger.type-inline-icon:before,
.accordion-trigger-inner-item.type-inline-icon:before {
  display: none;
}
.accordion-trigger.type-inline-icon .icon:before,
.accordion-trigger-inner-item.type-inline-icon .icon:before  {
  content: "";
  width: 10px;
  height: 10px;
  margin-left: 5px;
  display: inline-block;
  background: url("../m01/static/sys/img/common/ic_acc01.gif") center center no-repeat;
}
.accordion-trigger.type-inline-icon.is-active .icon:before,
.accordion-trigger-inner-item.type-inline-icon.is-active .icon:before {
  content: "";
  width: 10px;
  height: 10px;
  margin-left: 5px;
  display: inline-block;
  background: url("../m01/static/sys/img/common/ic_acc01_on.gif") center center no-repeat;
}

.accordion-target {
  height: 0;
  opacity: 0;
  overflow: hidden;
}
@media screen and (min-width: 785px) {
  .accordion-target {
    font-size: 14px;
  }
}
.accordion-target.is-active {
  height: auto;
  opacity: 1;
  transition: opacity 0.4s ease;
}
@media screen and (min-width: 785px) {
  .accordion-target.is-active {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 784px) {
  .accordion-target.is-active {
    margin-top: 5px;
    margin-bottom: 5px;
  }
}

@media screen and (min-width: 785px) {
  .text-s {
    font-size: 12px;
  }
}
@media screen and (max-width: 784px) {
  .text-s {
    font-size: 10px;
  }
}

@media screen and (min-width: 785px) {
  .text-m {
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .text-m {
    font-size: 12px;
  }
}

.text-l {
  font-size: 150%;
}

.text-ll {
  font-size: 200%;
}

.text-bold {
  font-weight: bold;
}

.text-black {
  color: #2E2E2E;
}

.text-gray {
  color: #707070;
}

.text-blue {
  color: #0365C8;
}

.text-red {
  color: #E13131;
}

.text-underline {
  text-decoration: underline;
}

.text-link {
  cursor: pointer;
  color: #0365C8;
  text-decoration: underline;
}
.text-link.type-blank {
  position: relative;
  display: inline-block;
  padding-left: 25px;
}
.text-link.type-blank:before, .text-link.type-blank:after {
  content: "";
  position: absolute;
  top: calc(50% - 7.5px);
  left: 0;
  width: 15px;
  height: 10px;
  border-style: solid;
  border-width: 2px 1px 1px;
  border-color: #0365C8;
  background-color: #fff;
}
.text-link.type-blank:before {
  transform: translate(0px, 2px);
}
.text-link.type-blank:after {
  transform: translate(4px, -2px);
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.popup {
  position: relative;
}
.popup .popup-box {
  position: absolute;
  bottom: 100%;
  border: 2px solid #999999;
  background-color: #E2F2FF;
  padding: 15px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.popup .popup-box .inner {
  background-color: #ffffff;
}
.popup .popup-box.is-active {
  opacity: 1;
  pointer-events: auto;
}

.button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  height: 55px;
  border-radius: 5px;
  box-sizing: border-box;
  line-height: 1;
  text-decoration: none;
  cursor:pointer;
}
.button.color-blue {
  background-color: #0365C8;
  color: #ffffff;
}
.button.button-disabled {
  background-color: #A5C0DE;
  color: #ffffff;
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.button.color-green {
  background-color: #36C43D;
  color: #ffffff;
}
.button.color-white {
  border: 1px solid #0365C8;
  background-color: #ffffff;
  color: #0365C8;
}
.button:disabled, .button.is-disabled {
  background-color: #AAAAAA;
  color: #ffffff;
}
.button.type-submit {
  font-weight: bold;
  text-decoration: none;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  .button.type-submit {
    width: 656px;
    height: 85px;
    font-size: 28px;
  }
}
@media screen and (max-width: 784px) {
  .button.type-submit {
    width: 100%;
    height: 55px;
    font-size: 20px;
  }
}
@media screen and (min-width: 785px) {
  .button.type-login, .button.type-logout {
    font-size: 22px;
  }
}
@media screen and (max-width: 784px) {
  .button.type-login, .button.type-logout {
    height: 40px;
    font-size: 18px;
  }
}
.button.type-school {
  background-color: #0365C8;
  color: #ffffff;
  font-weight: bold;
  text-decoration: none;
}
@media screen and (min-width: 785px) {
  .button.type-school {
    width: 225px;
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .button.type-school {
    width: 140px;
    font-size: 16px;
  }
}
@media screen and (min-width: 785px) {
  .button.type-siblings {
    height: 65px;
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .button.type-siblings {
    height: 55px;
    font-size: 14px;
  }
}
.button.type-siblings.color-white {
  border-width: 2px;
}
@media screen and (min-width: 785px) {
  .button.type-edit {
    height: 45px;
  }
}
@media screen and (max-width: 784px) {
  .button.type-edit {
    height: 40px;
  }
}

.present-list {
  width: 100%;
  margin-bottom: 60px;
}
.present-list table {
  border: none;
  width: 100%;
}
@media screen and (max-width: 784px) {
  .present-list table {
    font-size: 10px;
  }
}
.present-list th,
.present-list td {
  padding-top: 10px;
  padding-bottom: 10px;
  vertical-align: middle;
}
.present-list th:nth-child(1),
.present-list td:nth-child(1) {
  font-weight: bold;
  padding-right: 1em;
}
@media screen and (min-width: 785px) {
  .present-list th:nth-child(2),
  .present-list td:nth-child(2) {
    width: 50px;
  }
}
@media screen and (max-width: 784px) {
  .present-list th:nth-child(2),
  .present-list td:nth-child(2) {
    width: 20px;
  }
}
.present-list th:nth-child(3), .present-list th:nth-child(4),
.present-list td:nth-child(3),
.present-list td:nth-child(4) {
  padding-left: 0.25em;
  padding-right: 0.25em;
}
@media screen and (min-width: 785px) {
  .present-list th:nth-child(3), .present-list th:nth-child(4),
  .present-list td:nth-child(3),
  .present-list td:nth-child(4) {
    width: 200px;
  }
}
@media screen and (max-width: 784px) {
  .present-list th:nth-child(3), .present-list th:nth-child(4),
  .present-list td:nth-child(3),
  .present-list td:nth-child(4) {
    width: 60px;
  }
}
.present-list thead th,
.present-list thead td {
  font-weight: bold;
}
.present-list tbody th,
.present-list tbody td {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}
.present-list img {
  width: 12px;
}

.important-manual {
  border: 1px solid #707070;
  overflow: auto;
}
@media screen and (min-width: 785px) {
  .important-manual {
    margin-bottom: 50px;
    padding: 30px;
    height: 550px;
    font-size: 14px;
  }
}
@media screen and (max-width: 784px) {
  .important-manual {
    margin-bottom: 40px;
    padding: 15px;
    height: 420px;
    font-size: 12px;
  }
}
.important-manual dl:not(:first-child) {
  margin-top: 1.5em;
}
.important-manual dt {
  font-weight: bold;
}
.important-manual.noscroll {
  border: 1px solid rgba(112, 112, 112, 0.2);
  height: auto;
}

.link {
  position: relative;
}

.modalbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  display: flex;
  padding: 20px;
  overflow: auto;
}
.modalbox.is-load {
  opacity: 1;
  pointer-events: auto;
}
.modalbox > div {
  position: relative;
  margin: auto;
  width: 800px;
  max-width: 100%;
  border: 6px solid #006eb3;
  background: #ffffff;
}
.modalbox > div > div iframe {
  display: block;
  width: 100%;
}
.modalbox > div > a {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  transform: translate(50%, -50%);
  background-color: #006eb3;
}
.modalbox > div > a:before, .modalbox > div > a:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 50%;
  height: 2px;
  background-color: #ffffff;
}
.modalbox > div > a:before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modalbox > div > a:after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (min-width: 785px) {
  .modal-content {
    padding: 30px;
  }
}
@media screen and (max-width: 784px) {
  .modal-content {
    padding: 20px;
  }
}
@media screen and (min-width: 785px) {
  .modal-content .modal-block:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 784px) {
  .modal-content .modal-block:not(:first-child) {
    margin-top: 15px;
  }
}
.modal-content .modal-borderbox {
  border: 3px solid #000;
  padding: 5px 10px;
}

.loading:before {
  content: "";
  padding-left: 12em;
}
.loading:after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 1em);
  left: 5em;
  text-indent: -9999em;
  animation: load5 1.1s infinite ease;
  transform: translateZ(0);
}
.loading.size-s {
  position: relative;
}
.loading.size-s:before, .loading.size-s:after {
  font-size: 3px;
}
@keyframes load5 {
  0%, 100% {
    box-shadow: 0em -2.6em 0em 0em #ff0000, 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.5), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.7);
  }
  12.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.7), 1.8em -1.8em 0 0em #ff0000, 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.5);
  }
  25% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.5), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.7), 2.5em 0em 0 0em #ff0000, 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  37.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.5), 2.5em 0em 0 0em rgba(255, 0, 0, 0.7), 1.75em 1.75em 0 0em #ff0000, 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  50% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.5), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.7), 0em 2.5em 0 0em #ff0000, -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.2), -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  62.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.5), 0em 2.5em 0 0em rgba(255, 0, 0, 0.7), -1.8em 1.8em 0 0em #ff0000, -2.6em 0em 0 0em rgba(255, 0, 0, 0.2), -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  75% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.5), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.7), -2.6em 0em 0 0em #ff0000, -1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2);
  }
  87.5% {
    box-shadow: 0em -2.6em 0em 0em rgba(255, 0, 0, 0.2), 1.8em -1.8em 0 0em rgba(255, 0, 0, 0.2), 2.5em 0em 0 0em rgba(255, 0, 0, 0.2), 1.75em 1.75em 0 0em rgba(255, 0, 0, 0.2), 0em 2.5em 0 0em rgba(255, 0, 0, 0.2), -1.8em 1.8em 0 0em rgba(255, 0, 0, 0.5), -2.6em 0em 0 0em rgba(255, 0, 0, 0.7), -1.8em -1.8em 0 0em #ff0000;
  }
}
[data-switch-keyword] {
  animation: toggleFadein 0.6s ease;
}
[data-switch-keyword]:not(.is-active):not([data-active-hide]) {
  display: none;
}
[data-switch-keyword].is-active[data-active-hide] {
  display: none;
}
[data-block-keyword]:not([data-block-keyword=""]),
[data-selectlist-keyword]:not([data-selectlist-keyword=""]) {
  animation: toggleFadein 0.6s ease;
}
[data-block-keyword]:not([data-block-keyword=""]):not(.is-active),
[data-selectlist-keyword]:not([data-selectlist-keyword=""]):not(.is-active) {
  display: none;
}
@keyframes toggleFadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

[data-keyword][data-active-hide].is-active {
  display: none;
}

.address-loading {
  position: absolute;
  top: calc(100% + 10px);
  left: -10px;
  right: -10px;
  display: flex;
  align-items: center;
  height: 100px;
  padding: 10px 10px 10px 10px;
  background-color: rgba(255, 231, 171, 0.8);
  border-radius: 4px;
  font-weight: bold;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
}
.address-loading .loading {
  position: relative;
  font-size: 4px;
}
.address-loading.is-active {
  opacity: 1;
  transition-duration: 0.2s;
}
.openclose {
  display: inline-block;
  padding:10px;
  border:1px solid #075BAB;
}

.div.h3 h3 {
    color: #075BAB;
}

.js-check-op h3 {
    display: inline-block;
    font-size: 1.17em;
    font-weight: bold;
    color: #075BAB;
}

.h3 {
    display: block;
    font-size: 1.17em;
    font-weight: bold;
    color: #075BAB;
}

.js-check-op {
    cursor: pointer;
    display: flex;
    align-items: center;
}

.js-check-op input[type="checkbox"] + .icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    font-size: 167%;
    background: #075BAB;
    margin-top: -0.2em;
    margin-right: 0.5em;
    position: relative;
    border-radius: 4px;
}

.js-check-op input[type="checkbox"] + .icon:before, .js-check-op input[type="checkbox"] + .icon:after {
    display: inline-block;
    height: 2px;
    width: .6em;
    color: #fff;
    background: #fff;
    content: "";
    margin: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    position: absolute;
    -webkit-transition: all 1s;
    transition: all 1s;
}

.field-sub {
  display: flex;
  font-weight: bold;
}

.aside-box {
  padding-top: 30px;
  padding-bottom: 30px;
}

.complete-aside {
  border: 1px solid #cecece;
  padding: 15px;
  margin-bottom: 30px;
}

.complete-aside .flexbox {
  position: relative;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.complete-aside-btn {
  margin-top: 30px;
  text-align: center;
}

.field.type-confirm-top {
  margin-bottom: 0;
}
.field.type-confirm-mid {
  margin-bottom: 0;
}
.field.type-confirm-bot {
  margin-bottom: 0;
}

@media screen and (min-width: 785px) {
  .field.type-confirm-top {
    border-top: 1px solid #707070;
    margin-top: -1px;
   }
  .field.type-confirm-mid {
    margin-top: -1px;
  }
  .field.type-confirm-bot {
    margin-top: -1px;
    border-bottom: 1px solid #707070;
  }

}



.field.type-confirm-top .field-head,
.field.type-confirm-top .field-body {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-top .field-head,
  .field.type-confirm-top .field-body {
    padding-top: 25px;
  }
}
.field.type-confirm-top .field-head {
  padding-left: 20px;
  padding-right: 20px;
  background-color: #EDEFF0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-top .field-head {
    width: 325px;
    text-align: center;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-top .field-head {
    padding-top: 7.5px;
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-top .field-body {
    width: calc(100% - 325px);
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-top .field-body {
    padding-top: 10px;
  }
}
.field.type-confirm-top .field-title:last-child,
.field.type-confirm-top .field-block:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-top .field-title {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-top .field-title {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-top.type-B {
    border-left: 1px solid #707070;
    border-right: 1px solid #707070;
  }
  .field.type-confirm-top.type-B .field-title {
    text-align: left;
    display: flex;
    justify-content: center;
  }
}


.field.type-confirm-mid .field-head,
.field.type-confirm-mid .field-body {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-mid .field-head,
  .field.type-confirm-mid .field-body {

  }
}
.field.type-confirm-mid .field-head {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-mid .field-head {
    width: 325px;
    text-align: center;
    background-color: #EDEFF0;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-mid .field-head {
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-mid .field-body {
    width: calc(100% - 325px);
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-mid .field-body {
  }
}
.field.type-confirm-mid .field-title:last-child,
.field.type-confirm-mid .field-block:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-mid .field-title {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-mid .field-title {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-mid.type-B {
    border-left: 1px solid #707070;
    border-right: 1px solid #707070;
  }
  .field.type-confirm-mid.type-B .field-title {
    text-align: left;
    display: flex;
    justify-content: center;
  }
}

.field.type-confirm-bot .field-head,
.field.type-confirm-bot .field-body {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-bot .field-head,
  .field.type-confirm-bot .field-body {
    padding-bottom: 25px;
  }
}
.field.type-confirm-bot .field-head {
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-bot .field-head {
    width: 325px;
    text-align: center;
    background-color: #EDEFF0;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-bot .field-head {
    padding-bottom: 7.5px;
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-bot .field-body {
    width: calc(100% - 325px);
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-bot .field-body {
    padding-bottom: 20px;
  }
}
.field.type-confirm-bot .field-title:last-child,
.field.type-confirm-bot .field-block:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 785px) {
  .field.type-confirm-bot .field-title {
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .field.type-confirm-bot .field-title {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .field.type-confirm-bot.type-B {
    border-left: 1px solid #707070;
    border-right: 1px solid #707070;
  }
  .field.type-confirm-bot.type-B .field-title {
    text-align: left;
    display: flex;
    justify-content: center;
  }
}
.button {
	width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 3px solid #CDCDCD;
    padding-top: 30px;
    padding-bottom: 30px;
}
.dispname {
    font-weight: bold;
    font-size: 170%;
    display: inline-block;
}

#modal-content {
	width: 350px ;
	margin: 0 ;
	padding: 10px 20px ;
	border: 2px solid #aaa ;
	background: #fff ;
	position: fixed ;
	display: none ;
	z-index: 2 ;
}

.modal-content-header{
	margin:0 auto;
	width:80%;
	font-size: 130%;
	font-weight: bold;
    padding-bottom:20px;
    color: #075BAB;
}

.modal-content-innar{
	margin:0 auto;
	width:80%;
    font-weight: bold;
    font-size: 12px;
	display: none ;
}

.modal-content-innar-button {
	width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 10px;
    padding-bottom: 10px;
    margin: 10px 2px;
    border: 2px solid #ededed;
    border-radius: 5px;
    box-sizing: border-box;
    cursor: pointer;
    zoom: 1;
} 

.modal-content-innar.is-active{
	display: block ;
}
  
#modal-overlay {
	z-index: 1 ;
	display: none ;
	position: fixed ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	height: 120% ;
	background-color: rgba( 0,0,0, 0.75 ) ;
}

.modal-close {
  background: transparent;
  border-color: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  width: 28px;
  display: inline-block;
  height: 28px;
}

.modal-close span {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 1px;
  background: black;
  display: block;
}

.modal-close span:nth-child(1) {
  transform: rotate(45deg);
}

.modal-close span:nth-child(2) {
  transform: rotate(-45deg);
}

.emphasisText {
  font-size:167%;
}
.label-versatile {
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  line-height: 1.5;
  flex-direction: column;
  justify-content: center;
  display: flex;
}

.cheack-versatile {
  border: 1px solid #CDCDCD;
}

.label-versatile > div {
  font-weight: bold;
}

@media screen and (min-width: 785px) {
  .label-versatile {
    font-size: 16px;
    min-height: 55px;
  }
}
@media screen and (max-width: 784px) {
  .label-versatile  {
    font-size: 12px;
    min-height: 45px;
  }
}

.requested, .inprogress {
  font-size: 12px;
  justify-content: center;
  margin-right: 4px;
  color: #FFF;
}

.requested {
  border: solid 2px #CC6633;
  background-color: #CC6633;
}

.inprogress {
  border: solid 2px #CC6633;
  background-color: #CC6633;
}

.button-koza {
	width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 3px solid #CDCDCD;
    padding-top: 30px;
    padding-bottom: 30px;
}
.dispname-koza {
    font-weight: bold;
    font-size: 170%;
    display: inline-block;
}
.disp-koza {
    display: none !important;
}
.harf {
    width: 50%;
}

.width70 {
    width: 70%;
}

.mask {
  display:none
}

.field .field-input input[type="text"].err,
.field .field-input input[type="tel"].err,
.field .field-input input[type="email"].err,
.field .field-input input[type="password"].err,
.field .field-input select.err,
.field .field-input label.err,
.field .field-input textarea.err,
.field li.err,
.field span.err
{ 
	background-color:#ffe6e6 !important;
	border-color:#ff0b0b;
}
.field .present-list td.err,
.field td.tdErr
{ 
	background-color:#ffe6e6 !important;
}


.subbox {
	border: 1px solid #CDCDCD;
	padding: 12px;
	margin-top: 5px;
}
.clearCreditCardNo {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #bbbbbb;
    border-radius: 3px;
    background: linear-gradient(to bottom, #fefefe 0%, #bbbbbb 100%);
    color: #000000;
    font-size: 12px;
    padding: 3px 10px;
    margin-left: 10px;
    margin-right: 10px;
}

.materialButton {
    display: flex;
}


table:has(#campaign_code_display) {
  width: auto;
  margin-bottom:0.5em;
  padding-left: 1em;
  border: 1px solid #cecece;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
}
table:has(#campaign_code_display) th,
table:has(#campaign_code_display) td {
  padding: 10px;
}

.schedule {
 margin-bottom: 0.5em;
    padding-left: 1em;
    border: 1px solid #cecece;
    border-collapse: collapse;
    border-spacing: 0;
    width: 100% !important;
    empty-cells: show;
}
.schedule th {
    border-style: solid none solid solid;
    border-width: 1px;
    border-color: #cecece;
    background-color: #f2f2f2;
    text-align: center;
    vertical-align: middle;
	padding: 10px;
}
.schedule td {
    border-style: none none solid solid;
    border-width: 1px;
    border-color: #cecece;
    text-align: center;
    vertical-align: middle;
	padding: 0 10px;
}
.schedule td .label {
    text-align: left;
    width: 60%;
}
.schedule input .radio,.schedule input .checkbox  {
    opacity: 1 !important;
	appearance: auto;
}
.schedule input[type="radio"]:checked +div,  input[type="checkbox"]:checked +div .inputNoBorder {
    border: none;
	box-shadow:none;
}

.schedule input[type="radio"] +div,  input[type="checkbox"] +div .inputNoBorder {
    border: none;
	box-shadow:none;
}

.vacant {
    color:#cccccc;
}

#scheduleResult{
	width:40%;
}

/* 割引のキャンペーンコード */
#campaign_code_display		{ position:relative;}
#campaign_code_display td	{ padding-bottom:6px; border-style:none;}
#campaign_code_display tr:last-child td
							{ padding-bottom:20px;}
#campaign_code_display span	{ display:block; padding:0 0 0 10px; text-align:left;}	 /*キャンペーンの名称を左寄せ*/
#campaign_code_display img	{ margin:0 10px 0 30px; vertical-align:middle; cursor:pointer;max-width: none;visibility: visible;}
#campaign_code_display img,  x:-moz-any-link	{ margin:0 10px 0 39px; vertical-align:middle; cursor:pointer;}

.campaignApply {
	display:flow-root;
}
@media screen and (max-width: 784px) {
  .field .field-body:has(#campaign_code_display) {
   display:block;
  }
}

table:has(#campaign_code_display) {
  width: auto;
  margin-bottom:0.5em;
  padding-left: 1em;
  border: 1px solid #cecece;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
}
table:has(#campaign_code_display) th,
table:has(#campaign_code_display) td {
  padding: 10px;
}
table:has(#campaign_code_display) td {
  text-align:center;
  vertical-align:middle;
}
.field .field-body .field-block .member-data {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.field .field-body .field-block .member-data .changeBtn {
    float:right;
}
.field .field-body .field-block .member-data .changeBtn a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #0365C8;
  border-radius: 5px;
  cursor: pointer;
  text-decoration: none;
}
@media screen and (min-width: 785px) {
  .field .field-body .field-block .member-data .changeBtn a {
    width: 95px;
    height: 55px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-body .field-block .member-data .changeBtn a {
    width: 70px;
    height: 40px;
  }
}
.field .field-body .field-block .member-data .changeBtn a span {
  color: #0365C8;
}
@media screen and (min-width: 785px) {
  .field .field-body .field-block .member-data .changeBtn a span {
    font-size: 24px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-body .field-block .member-data .changeBtn a span {
    font-size: 18px;
  }
}
.field .field-head .field-block .text-note {
  color: #707070;
}
@media screen and (min-width: 785px) {
  .field .field-head .field-block .text-note {
    font-size: 12px;
  }
}
@media screen and (max-width: 784px) {
  .field .field-head .field-block .text-note {
    font-size: 10px;
  }
}

.field .field-head .field-block .text-attention {
  color: #E13131;
}
.field .field-head .field-block .bullet-list > li {
  margin-left: 1em;
}
.indent1{
	padding-left:30px;
}
.content-header {
  margin-bottom: 10px;
}

/* モーダル */
#m-ground			{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000 url(/m01/static/sys/img/common/loading.gif) 50% 50% no-repeat;z-index:1000;zoom:1;}
#m-screen			{ position:absolute; top:50%; left:50%; width:670px; height:670px; margin:-335px 0 0 -335px; background-color:#ffffff; overflow:hidden; z-index:1100;}
#m-iframe			{ width:100%; margin:0 auto; border-style:none; overflow:hidden; overflow-y:hidden; }
#m-close			{ position:absolute; top:50%; left:50%; margin:-350px 0 0 315px; width:40px; height:40px; cursor:pointer; z-index:1200;}
#m-screen {
  border: 6px solid #006eb3;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-shadow: 5px 5px 6px 1px rgba(0, 0, 0, 0.3);
  box-shadow: 5px 5px 6px 1px rgba(0, 0, 0, 0.3);
  border-radius: 6px;
  width: 800px;
  margin: -405px 0 0 -405px;
}
#m-close {
  margin: -350px 0 0 365px;
}
/* --- モーダル --- */
/* pc */
@media screen and (min-width: 785px) {
  #m-screen{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    margin: -400px 0 0 -400px;
    border-radius: 6px;
    width: 800px;
  }
  #m-close.m-close-btn{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
}
/* sp */
@media screen and (max-width: 784px) {
  #m-screen{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    margin-left: -176.5px;
    border-radius: 6px;
    max-width: 320px;
    margin-left: -160px;
  }
  #m-close.m-close-btn{
    margin: 130px;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
  #m-close {
    margin: 130px;
  }
  #m-iframe {
    overflow-y: scroll;
  }
}
/* ログインボタン */
.button-login {
  border: 1px solid #0365C8;
  color: #0365C8;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-weight: normal;
  text-decoration: none;
}
@media screen and (min-width: 785px) {
.button-login {
    height: 55px;
    font-size: 22px;
  }
}
@media screen and (max-width: 784px) {
.button-login {
    height: 40px;
    font-size: 18px;
  }
}

/* 汎用ブロック */
.js-check-op input[type="checkbox"] {
  display: none;
}
.js-check-op input[type="checkbox"] ~ .icon-op {
  display: inline-block;
  width: 1em;
  height: 1em;
  font-size: 167%;
  background: #075BAB;
  margin-top: -0.2em;
  margin-right: 0.5em;
  position: relative;
  border-radius: 4px;
}
.js-check-op input[type="checkbox"] ~ .icon-op:before,
.js-check-op input[type="checkbox"] ~ .icon-op:after {
  display: inline-block;
  height: 2px;
  width: .6em;
  color: #fff;
  background: #fff;
  content: "";
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  position: absolute;
  -webkit-transition: all 1s;
  transition: all 1s;
}

.js-check-op input[type="checkbox"] ~ .icon-op:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.js-check-op input[type="checkbox"] ~ .icon-op:before {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.js-check-op input[type="checkbox"]:checked ~ .icon-op:after {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
.js-check-op input[type="checkbox"]:checked ~ .icon-op:before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* 汎用ブロック 非活性色変更 */
.nonactiveitem ~ div {
	background-color : #DDDDDD;
}

/* 受講選択 */
.jukokamoku {
  background-color:#ffffff;
  padding:0 10px 10px 15px;
  zoom:1;
}
.jukokamoku .is-error{
  background-color: rgb(255, 223, 223);
}
.jukokamoku table {
  width:100%;
  margin:4px 0;
  margin-bottom:0.5em;
  padding-left: 1em;
  border: 1px solid #cecece;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
  font-size:100%;
  color:#000000;
}
.jukokamoku table td:has(input) {
  border: 1px solid #cecece;
  text-align: center;
  vertical-align:middle;
  height: 10px;
}
.jukokamoku table td:not(:has(input)) {
  border: 1px solid #cecece;
  text-align: center;
  vertical-align:middle;
  padding: 10px;
}
.jukokamoku table td:has(label.initBackgroudColor) {
  background-color: rgb(218, 229, 241);
}
.jukokamoku table td label {
  height: auto;
}
.jukokamoku table th {
  padding: 10px;
  border-style:solid none solid solid;
  border-width:1px; border-color:#cecece;
  background-color:#f2f2f2;
  text-align:center;
  vertical-align:middle;
  font-weight: 700;
}
.jukokamoku .input input[type=checkbox] ~ div {
  border: none;
  align-items: center;
  box-shadow: none;
  border-radius: inherit;
}
.jukokamoku .input input[type=checkbox]:checked ~ div > div:nth-child(1):after {
  display: block;
  box-shadow: none;
}

/* 手続き開始ボタン(テキスト) */
@media screen and (min-width: 785px) {
  .alignTextButton {
    display: grid;
    gap: 20px 50px;
    grid-template-columns: repeat(auto-fill, minmax(460px, 1fr));
    align-items: flex-end;
  }
}
@media screen and (min-width: 785px) {
  .alignTextButton .button {
    height: 95px;
  }
}
@media screen and (max-width: 784px) {
  .alignTextButton .button {
    height: 65px;
  }
}
.alignTextButton .button p:nth-child(1) {
  color: #1780CE;
}
@media screen and (min-width: 785px) {
  .alignTextButton .button p:nth-child(1) {
    font-size: 28px;
  }
}
@media screen and (max-width: 784px) {
  .alignTextButton .button p:nth-child(1) {
    font-size: 20px;
  }
}
.alignTextButton .button p:nth-child(2) {
  color: #333333;
}
@media screen and (min-width: 785px) {
  .alignTextButton .button p:nth-child(2) {
    font-size: 22px;
  }
}
@media screen and (max-width: 784px) {
  .alignTextButton .button p:nth-child(2) {
    font-size: 12px;
  }
}
@media screen and (min-width: 785px) {
  .alignTextButton .text {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media screen and (max-width: 784px) {
  .alignTextButton .text {
    margin-top: 10px;
  }
}
@media screen and (min-width: 785px) {
  .alignTextButton .text p:not(:first-child) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 784px) {
  .alignTextButton .text p:not(:first-child) {
    margin-top: 5px;
  }
}
.alignTextButton .link{
    padding-top: 20px;
  }
.singleTextButton .link{
  max-width:656px;
  margin-left:
  auto;margin-right:
  auto;padding-top: 20px;
}
@media screen and (min-width: 785px) {
  .singleTextButton .button {
    height: 95px;
    color: #1780CE;
  }
}
@media screen and (max-width: 784px) {
  .singleTextButton .button {
    height: 65px;
    color: #1780CE;
  }
}
/* 講座選択画面モーダル表示 */
.commonmodal {
	padding:5px;
	margin-left: 5px;
	margin-right: 5px;
}
.lines-wide li{
	padding:5px 0;	
}

.m-modal {
  display: block !important;
}
h2.m-title {
  font-size: 20px;
  font-weight: bold;
}
table {
  width:100%;
}
table th,
table td {
  vertical-align: middle;
}
.x-scroll {
  -webkit-overflow-scrolling: touch;
  overflow: auto;
  white-space: nowrap;
}
.x-scroll::-webkit-scrollbar{
   height: 5px;
}
.x-scroll::-webkit-scrollbar-track{
   background: #F1F1F1;
}
.x-scroll::-webkit-scrollbar-thumb {
   background: #BCBCBC;
}
.m-modal__close {
  display: none !important;
}
.m-modal:not(.m-modal--no-frame) {
  box-shadow: none !important;
  background-color: #fff !important;
  box-sizing: border-box !important;
  border: none  !important;
  border-radius: 0 !important;
}
.modal-offer-box {
}
@media print, screen and (min-width: 769px) {
  .m-modal-year,
  .m-modal-offer {
    padding: 0;
    width: 100% !important;
  }
  .m-modal-year .m-unit__h2 {
    margin-top: 0;
  }
  .modal-offer-box {
    padding: 0;
  }
  .modal-offer-ttl {
    margin-top: 37px;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: bold;
    color: #0365C8;
  }
  .modal-offer-cont + .modal-offer-cont{
    margin-top: 16px;
  }
  .modal-offer-cont-ttl{
    font-size: 12px;
    font-weight: bold;
    background-color: #EDEFF0;
    line-height: 1.667;
    padding: 6px 0 6px 8px;
  }
  .modal-offer-cont-txt{
    font-size: 14px;
    margin-top: 8px;
  }
  .modal-offer-cont-txt + .m-remarklist{
    margin-top: 8px;
  }
  .pc-hidden{
    display: none;
  }
  .m-remarklist{
    font-size: 10px;
  }
  .modal-offer-cost{
    margin-top: 24px;
    margin-bottom: 25px;
  }
  .modal-offer-cost .m-title{
    margin-bottom: 8px;
  }
}
@media screen and (max-width:768px) {
.m-modal, .m-modal-mv {
    display: none;
    position: absolute;
    width: 100%;
    z-index: 2500;
}
}

  .m-modal-year,
  .m-modal-offer {
    padding: 0;
    box-sizing: border-box;
  }
  .modal-offer-box {
    padding: 0 34px 0 34px;
  }
  .modal-offer-box::-webkit-scrollbar {
    background:#eee;
    width:10px;
  }
  .modal-offer-box::-webkit-scrollbar-thumb {
    background:#ccc;
  }

  .modal-offer-ttl {
    margin-top: 37px;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: bold;
    color: #0365C8;
  }
  .modal-offer-cont + .modal-offer-cont{
    margin-top: 16px;
  }
  .modal-offer-cont-ttl{
    font-size: 12px;
    font-weight: bold;
    background-color: #EDEFF0;
    line-height: 1.667;
    padding: 6px 0 6px 8px;
  }
  .modal-offer-cont-txt{
    font-size: 14px;
    margin-top: 8px;
  }
  .modal-offer-cont-txt + .m-remarklist{
    margin-top: 8px;
  }
  .m-remarklist{
    font-size: 10px;
  }
  .modal-offer-cost{
    margin-top: 24px;
    margin-bottom: 25px;
  }
  .modal-offer-cost .m-title{
    margin-bottom: 8px;
  }
  .m-modal-year .m-unit__h2 {
    margin-top: 0;
  }
  .slide-button a:before {
    left: 20%;
    margin: -8px 0 0 0;
  }
  /* テーブル */

.g-table-01 {
  width:100%;
  border:#e0e0e0 solid 1px;
}

.g-table-01 {
    table-layout: fixed;
}

.table_fixed {
  table-layout: fixed;
}

.g-table-01 th,.g-table-01 td {
  border:#e0e0e0 solid 1px;
  padding:10px;
}

.g-table-01 th {
  background:#f2f2f2;
}

.g-table-01 td {
  background:#ffffff;
}

.g-vmiddle {
  vertical-align: middle;
}

.g-vtop {
  vertical-align: top;
}

.g-vbottom {
  vertical-align: bottom;
}

/* jQueryモーダル */
.modal-area {
  display: none;
  width: 90%;
  max-width: 500px;
  margin: 0;
  padding: 0;
  position: fixed;
  z-index: 11;
  line-height: 1.3;
}

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0,0,0,0.7);
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 10;
}

.modal-inner {
  -webkit-transform: scale(1);
          transform: scale(1);
  z-index: 20;
  max-height: 80vh;
  width: 90%;
  border-radius: 4px;
  background: #fff;
  -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
  -webkit-align-self: center;
  -ms-flex-item-align: center;
          align-self: center;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  border: 4px solid #005bac;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.modal-content {
  padding: 15px;
  box-sizing: border-box;
}

.modal-content {
  min-height: 20px;
  max-height: 70vh;
  overflow: auto;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}


.modal-open {
  position: fixed;
  width: 100%;
}

.pc-nodisplay {
  display: block;
}

.sp-nodisplay {
  display: none;
}



.modal-close {
  display: block;
  text-indent: -100px;
  overflow: hidden;
}

.modal-close:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
}

.modal-close:after {
  content: '';
  position: absolute;
  top: 45%;
  left: 90%;
  z-index: 20;
  font-size: 1.2em;
  text-decoration: none;
  text-indent: 0;
}

.close-btn {
  position: absolute;
  display: block;
  top: -18px;
  right: -18px;
  width: 30px;
  height: 30px;
  overflow: hidden;
  background: #005bac;
  border-radius: 50%;
}

.close-btn:before,
.close-btn:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 60%;
  top: 50%;
  left: 20%;
  margin-top: -1px;
  background: #fff;
}

.close-btn:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.close-btn:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}



/* --- モーダル（リニューアル2） --- */
/* pc */
@media screen and (min-width: 785px) {
  #renew #m-screen{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    margin: -400px 0 0 -400px;
    border-radius: 6px;
    width: 800px;
  }
  #renew #m-close.m-close-btn{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
  #m-screen.renewal2part{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    margin: -400px 0 0 -400px;
    border-radius: 6px;
    width: 800px;
  }
  #m-close.m-close-btn.renewal2part{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
  #m-close.m-close-btn.renewal2partfromold{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: calc( ( 3px + 50% ) );
    transform: translateX(-50%);
  }
}
/* sp */
@media screen and (max-width: 784px) {
  #renew #m-screen{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    max-width: 353px;
    margin-left: -176.5px;
    border-radius: 6px;
  }
  #renew #m-close.m-close-btn{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
  #m-screen.renewal2part{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    max-width: 353px;
    margin-left: -176.5px;
    border-radius: 6px;
  }
  #m-screen.renewal2partfromold{
    border: 3px solid #0365C8;
    padding-bottom: 85px;
    max-width: 353px;
    left: 50%;
    margin-left: -176.5px;
    border-radius: 6px;
  }
  #m-close.m-close-btn.renewal2part{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: 50%;
    transform: translateX(-50%);
  }
  #m-close.m-close-btn.renewal2partfromold{
    margin: 0 !important;
    width: 278px;
    height: auto;
    display: block;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
    left: calc( ( 3px + 50% ) );
    transform: translateX(-50%);
  }
}


/* --- パスワード登録のデザイン --- */
#zpw_span_message {
	font-weight:bold;
}
#zpw_span_message a {
	text-decoration: none;
}
/* --- 確認画面注記文言 ---*/
.requestBlock {
	padding: 10px;
	margin-bottom: 10px;
	margin-top: 20px;
	border: 1px solid #707070;
}
.regist-title {
	font-weight: bold;
	color: #FFFFFF;
	text-align: center;
	background-color: #FF0000;
	padding: 8px 0px 8px 0px;
}
.regist-sub-title {
	font-weight: bold;
	text-align: center;
	padding: 8px 0px 8px 0px;
}
.border-box .title-word {
	font-weight: bold;
	background: #DCDCDC;
	padding: 2px 0 2px 1em;
}
.border-box .detali-word{
	margin:0
}
a.accofflnk:after {
  content: "";
  width: 10px;
  height: 10px;
  margin-left: 5px;
  display: inline-block;
  background: url("../m01/static/sys/img/common/ic_acc01.gif") center center no-repeat;
}

a.acconlnk:after {
  content: "";
  width: 10px;
  height: 10px;
  margin-left: 5px;
  display: inline-block;
  background: url("../m01/static/sys/img/common/ic_acc01_on.gif") center center no-repeat;
}
a.inlinelnk {
  padding: 2px 0 2px 0;
  background: none;
}
.fontColor-black {
 color: #111111 !important;
 text-decoration: none;
}

.detail_link{
  cursor: pointer;
  border: none;
  background: none;
  color: #0000FF;
}
.detail_link.detail_link_open {
	display:inline-block;
}
.detail_link.detail_link_close {
	display:none;
}
.detail_link_body {
	display:none;
}
.pl-30 {
  padding-left: 30px !important;
}
.ml-35 {
  margin-left: 35px !important;
}
.padding-2 {
  padding: 2px !important;
}
.margin-0 {
  margin: 0px !important;
}
.margin-8 {
  margin: 8px !important;
}
.no-border {
  border: 1px solid #FFFFFF !important;
  box-shadow: 0px 0px 0px 1px #FFFFFF !important;
}

.subReceivedMoneyWayblock{
background-color:rgb(255, 242, 191);
}

.payment_bold {
  font-weight:900;
}
.red {
  color: red;
}

.bnnerSction {
    padding-bottom: 30px;
    margin-bottom: 20px;
}
.bnnerSction .borderBox {
    padding: 25px 30px 10px 30px;
    border: solid 1px #cecece;
    zoom: 1;
}
@media screen and (min-width: 785px) {
.bnnerSction .borderBox .inlineBox {
    display: flex;
    display: -moz-flex;
    display: -o-flex;
    display: -webkit-flex;
    display: -ms-flex;
    flex-direction: row;
    -moz-flex-direction: row;
    -o-flex-direction: row;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    justify-content: center;
}
}
@media screen and (max-width: 784px) {
.bnnerSction .borderBox .inlineBox {

}
}
.bnner-center {
    padding: 10px;
    margin-bottom: 10px;
    text-align: center;
}

/* --- いぬねこ入会アンケートのデザイン(Start) --- */
.dogCatTitle {
    display: block;
    font-size: 1.17em;
    font-weight: bold;
}
.dogCatInfo {
	border: 1px solid #707070;
	padding: 20px 30px 10px 10px;
}

.dogCatInfoConfirm:not(:first-child) {
	padding-top: 20px;
}
.dogCatInputArea dt {
	font-weight: bold;
}
.dogCatInputArea li {
	padding-top: 10px;
}
.dogCatInputArea .field-input:has(select) {
	padding-top: 10px;
}
.dogCatBottomBtn li {
	padding-top: 10px;
	padding-left: 5px;
	display: flex;
}
.dogCatBottomBtn li:nth-child(1) a {
  border: 2px solid #0365C8;
  background-color: #ffffff;
  color: #0365C8;
}
.dogCatBottomBtn li:nth-child(2) a {
  background-color: #0365C8;
  color: #ffffff;
}
.dogCatBottomBtn li a {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  padding: 10px 15px 10px 15px;
  text-decoration: none;
}
@media screen and (min-width: 785px) {
  .dogCatBottomBtn {
    display: flex;
    justify-content: space-evenly;
  }
}
@media screen and (max-width: 784px) {
  .dogCatBottomBtn {
    display: flex;
    flex-direction: column;
  }
}
.dogCatInfoDispNone, .dogCatInfoButtonDispNone {
	display:none;
}
/* --- いぬねこ入会アンケートのデザイン(End) --- */

.option_box 				{ font-size: 11px;}
.option_box img 			{ padding: 5px 5px; float: left !important;}
.option_box img.first_img 	{ margin: 0; padding: 5px 0 0 5px;}
.option_box img.second_img 	{ padding: 5px 18px 0 0;}

b{
  font-weight:bold
}

.fontColor-blue {
    color: #075BAB !important;
}
.fontColor-red {
color: #ea2425 !important;
}

/* --- BP0061_日程検索（モーダル）のデザイン(Start) --- */
.bp0061 .selectListName {
  font-weight: bold;
}
.bp0061 .option_box img {
  margin-top: 3px;
}
.bp0061 .notes {
  color: #6c6c6c;
}
.bp0061 .label.radio label >span::before {
  border-radius: 50%;
}
.bp0061 .checked .label label >span {
  color: #36C43D;
  background-color: #F6FFF2;
  border-radius: 2px;
}
.bp0061 .row >li {
  border: 2px solid #ededed;
  margin-bottom: 10px;
  padding-bottom: 0;
  position: relative;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.bp0061 .row >li.checked {
  border: 2px solid #36C43D;
  background-color: #F6FFF2;
}
.bp0061 .label {
  float: none;
  display: block;
  margin: 0;
  border-radius: 2px;
}
.bp0061 .label label{
  cursor:pointer;
  zoom:1;
}
.bp0061 .label b {
  height: 0;
  width: 0;
  float:left
}

.bp0061 .label label input[type="radio"],
.bp0061 .label label input[type="checkbox"] {
  opacity: 0;
}
.bp0061 .label label >span {
  padding: 15px 20px 15px 35px;
  margin: 0;
  color: #0070cb;
  position:relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.bp0061 .label span{
  display:block;
  padding:1px 0 0 20px;
}
.bp0061 .label label >span::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  margin: auto;
  width: 14px;
  height: 14px;
  font-size: 1em;
  background-color: #f2f2f2;
  border: 1px solid #999;
  -webkit-border-radius: 2px;
  border-radius: 2px;
}
.bp0061 .checked .label label >span::after{
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  bottom: 0;
  left: 15px;
  margin: auto;
  width: 5px;
  height: 10px;
  -ms-transform: rotate(40deg);
  -moz-transform: rotate(40deg);
  -webkit-transform: rotate(40deg);
  transform: rotate(40deg);
  border-bottom: 1px solid #595959;
  border-right: 1px solid #595959;
}
.bp0061 .checked .label.radio label >span::after {
  left: 12px;
  top: 0;
  width: 10px;
  height: 10px;
  font-size: 1em;
  background: #595959;
  border: none;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
.bp0061 .close {
  padding:4px 0 0 0; 
  clear:both;
  display:none;
}
.bp0061 .schedule__button {
  padding: 0 20px 10px 35px;
}
.bp0061 .schedule__word {
  padding: 0 20px 10px 35px;
}
.bp0061 .button-type-01 {
  display: inline-block;
  padding: 10px 20px 10px 10px;
  color: #fff;
  background-color: #0070C0;
  border: none;
  border-radius: 8px;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-decoration: none;
}
.bp0061 .button-type-01 a {
  text-decoration: none;
}
.bp0061 .button-type-01 span {
  color: #fff;
  text-decoration: none;
}
.bp0061 .button-type-01:after {
  content: ">";
  position: absolute;
  top: 0;
  bottom: 0;
  display: inline-block;
  right: 1px;
  margin: auto;
  color: #fff;
  width: 1em;
  height: 1em;
  font-size: 1em;
  line-height: 1em;
  font-family: monospace;
}
.bp0061 [class^="scheduleInfo"] {
  font-weight: bold;
}
.bp0061 mark {
  background-color: transparent !important;
}
/* --- BP0061_日程検索（モーダル）のデザイン(End) --- */

/* --- 入力内容を取り消すのデザイン(Start) --- */
@media screen and (min-width: 785px) {
  .inputClearButton a {
	  border: 2px solid #0365C8;
	  background-color: #ffffff;
	  color: #0365C8;
	  border-radius: 5px;
	  text-decoration: none;
	  padding:1px 10px 1px 10px;
  }
}
@media screen and (max-width: 784px) {
  .inputClearButton a {
	  border: 2px solid #0365C8;
	  background-color: #ffffff;
	  color: #0365C8;
	  width: 100%;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  text-decoration: none;
	  padding:5px 10px 5px 10px;
  }
}
/* --- 入力内容を取り消すのデザイン(End) --- */

.logout {
    text-align: right;
}


.logout .button{
    width: 100%;
    max-width: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-left: auto;
    margin-bottom: 0px;
    height: 30px;
}

.subtitle{
	background-color: #ffe7ab;
    padding-left: 20px;	
}

.bp0020-subjectButton{
	width: 110px;
    margin: 0 auto;
}


/* --- BP0053_友人紹介相手へのメッセージ・送信方法のデザイン(Start) --- */
.how-to-send-title {
	font-size: 115%;
}
#how-to-send .section {
	padding:0 8px 9px 8px;
}
#how-to-send p.text {
	margin:0 0 1em 0;
}
#how-to-send div.stdbox1 {
	margin:0 0 18px 0;
	padding:9px;
	border:solid 1px #d0d0d0;
	-webkit-border-radius:5px;
	border-radius:5px;
}
#how-to-send .section .stdbox1 {
	margin:0 0 9px 0;
}
#how-to-send div.box6r {
	position:relative;
	padding:1px;
}
#how-to-send .box6r .r1,.box6r .r2,.box6r .r3,.box6r .r4 {
	position:absolute;
	width:6px;
	height:6px;
	background-repeat:no-repeat;
}
#how-to-send .box6r span.r1 {
	top:0;
	left:0;
	background-position:-6px -6px;
}
#how-to-send .box6r span.r2 {
	top:0;
	right:0;
	background-position:0 -6px;
}
#how-to-send .box6r span.r3 {
	bottom:0;
	right:0;
	background-position:0 0;
}
#how-to-send .box6r span.r4 {
	bottom:0;
	left:0;
	background-position:-6px 0;
}
#how-to-send #yushoBox .box {
	padding: 0;
	word-wrap: break-word;
}
#how-to-send #yushoBox li:first-child {
	margin:0;
}
#how-to-send #yushoBox li {
	margin:1em 0 0 0;
}
#how-to-send #yushoBox li.topTitle {
	font-size:123%;
	font-weight:bold;
}
#how-to-send .yusho-title{
	text-align: left;
	align-items: center;
	padding-bottom: 8px;
	margin: 24px auto 32px;
	border-bottom: 2px solid #0D754A;
}
#how-to-send .yusho_ul{
	text-align: center;
	margin: auto;
}
#how-to-send .yusho_ul ul{
	border-bottom: 1px solid #ededed;
}
#how-to-send .yusho_ul ul li{
	display: inline-block;
	width: calc(100%/3 - 5px);
}
@media screen and (min-width: 785px) {
	#how-to-send .yusho_ul ul li{
		display: inline-block;
		width: calc(100%/6 - 5px);
	}
}
@media screen and (max-width: 784px) {
	#how-to-send .yusho_ul ul li{
		display: inline-block;
		width: calc(100%/3 - 5px);
	}
}
#how-to-send .yusho_ul .send_provider_icon{
	font-size: 14px;
	font-weight: bold;
	padding-bottom: 8px;
}
#how-to-send .yusho_ul .send_provider_icon>span{
	display: block;
	width: 30%;
	margin: 5px auto;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_tw{
	background: black;
	-webkit-border-radius: 25%;
	-moz-border-radius: 25%;
	-ms-border-radius: 25%;
	-o-border-radius: 25%;
	border-radius: 25%;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_mail{
	background: linear-gradient(#4169e1,#23d9ee);
	-webkit-border-radius: 25%;
	-moz-border-radius: 25%;
	-ms-border-radius: 25%;
	-o-border-radius: 25%;
	border-radius: 25%;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_sms{
	background: linear-gradient(#adff2f,#4cd964);
	-webkit-border-radius: 25%;
	-moz-border-radius: 25%;
	-ms-border-radius: 25%;
	-o-border-radius: 25%;
	border-radius: 25%;
}
#how-to-send .yusho_ul .send_provider_icon>span img{
	cursor: pointer;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_line img{
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_insta img{
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_fb img{
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_tw img{
	margin: 15%;
	width:70%;
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_mail img{
	margin: 10%;
	width:80%;
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon>span.icon_sms img{
	margin: 10%;
	width:80%;
	vertical-align: middle;
}
#how-to-send .yusho_ul .send_provider_icon.on{
	border-bottom: 2px solid #0D754A;
}
@media screen and (min-width: 785px) {
	#how-to-send .tab_content{
		width: 75%;
		margin: 50px auto;
	}
}
@media screen and (max-width: 784px) {
	#how-to-send .tab_content{
		width: 90%;
		margin: 50px auto;
	}
}
#how-to-send .tab_content img{
	width: 100%;
	vertical-align:bottom;
}
#how-to-send .tab_content .btn span{
	display: inline-block;
	line-height: 1.6em;
}
#how-to-send .line_content .bt_icon{
	width: 38px;
}
#how-to-send .mail_content .bt_icon{
	width: 30px;
}
#how-to-send .sms_content .bt_icon{
	width: 30px;
}
#how-to-send .fb_content .bt_icon{
	width: 30px;
}
#how-to-send .tw_content .bt_icon{
	width: 20px;
}
#how-to-send .insta_content .bt_icon{
	width: 25px;
}
#how-to-send .yusho_url {
	display: flex;
	font-size: 12px;
}
#how-to-send .yusho_url button {
	padding: 10px 7px;
	background-color: #0D754A;
	color: #f0f0f0;
	cursor: pointer;
}
#how-to-send .border-box {
	box-sizing: border-box;
}
#how-to-send .fb {
	background-color: #1877f2;
}
#how-to-send .tw {
	background-color: #000000;
}
#how-to-send .line {
	background-color: #06c755;
}
#how-to-send .mail {
	background-color: #23d9ee;
}
#how-to-send .sms {
	background-color: #4cd964;
}

#how-to-send .insta {
	background-color: #b900b4;
}
#how-to-send .yusho-mt-30 {
	margin-top: 30px;
}
#how-to-send .yusho-mb-15 {
	margin-bottom: 15px;
}
#how-to-send .yusho-mb-20 {
	margin-bottom: 20px;
}
#how-to-send .yusho-padding-bottom-15 {
	padding-bottom: 15px;
}
#how-to-send .wt {
	color: #ffffff;
}
#how-to-send .red {
	color: #f00;
}
#how-to-send .green {
	color: #115307;
}
#how-to-send .btn {
	display: block;
	width: auto;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	box-sizing: border-box;
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	line-height: 44px;
	height: 44px;
	text-decoration: none;
}
/* --- BP0053_友人紹介相手へのメッセージ・送信方法のデザイン(End) --- */
/* --- BP0065_教師スサポートのデザイン(Start) --- */
#zemiKyoushituSelectName {
	display:block;
	padding:1px 0 0 20px;
}
/* --- BP0065_教師スサポートのデザイン(End) --- */
/* --- 個別エラー画面 --- */
.errBox {
	
	padding:0px 0px 10px 0px;
}
.errBox .msg {
	font-size:120%;
    margin:5px 0px 15px 0px;
	font-weight: bold;
	color:#e60207;
}
.logout_btm {  
	    width: 180px;
	    background-color: #0365C8;
	    padding:15px 0 15px 0;
	    margin:15px 0 15px 0;
	    text-align: center;
}
.logout_btm a {
	color: #fff;
	text-decoration: none;
}
.label-recomend {
  margin-left: 5px;
  margin-right: 10px;
  display: block;
  padding: 0px 10px;
  background-color: #0365C8;
  color: #ffffff;
  font-weight: normal;
}

/* --- BP0002_講座選択ボタンのデザイン(Start) --- */
.field-block:has(.nendomatagi-modal-close) {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
}
.nendomatagi-modal-close {
    width: 278px;
    height: auto;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #0365C8;
    border-radius: 6px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    line-height: 1;
    padding: 7px 0 6px;
    color: #0365C8;
}
/* --- BP0002_講座選択ボタンのデザイン(End) --- */

.confirmation-mail-reciept-none {
	display: none;
}

@media screen and (max-width: 784px) {
  .notOrder {
    order: 0 !important;
  }
}

/* --- BP0075_教材閲覧・ダウンロード --- */
.button.teaching-materials-download {
  font-weight: bold;
  text-decoration: none;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  .button.teaching-materials-download {
    width: 250px;
    height: 60px;
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .button.teaching-materials-download {
    width: 100%;
    height: 55px;
    font-size: 20px;
  }
}

/* --- BP0021_教材選択 --- */
.button.teaching-materials-select-button {
  font-weight: bold;
  text-decoration: none;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 785px) {
  .button.teaching-materials-select-button {
    width: 200px;
    height: 60px;
    font-size: 16px;
  }
}
@media screen and (max-width: 784px) {
  .button.teaching-materials-select-button {
    width: 100%;
    height: 55px;
    font-size: 20px;
  }
}
@media screen and (min-width: 785px) {
  .teaching-materials-select {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .teaching-materials-select .global-header {
    margin-top: 10px;
  }
  .teaching-materials-select .global-header .step {
    width: auto;
    max-width: none;
  }
}
@media screen and (max-width: 784px) {
  .teaching-materials-select {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .teaching-materials-select-button-area {
    width: 100%;
  }
  .teaching-materials-select .global-header {
    margin-top: 10px;
  }
  .teaching-materials-select .global-header .step {
    margin-top: 0px;
  }
}

.bunri_icon_parent {
  display: flex;
  justify-content: space-around;
}
.bunri_icon {
  border-style: solid;
  border-width: thin;
  font-family: 'Arial';
  font-size: 14px;
  margin: 0 0 4px 0;
  padding: 3px 5px 1px 5px;
}
.bunri_icon.hidden {
  visibility: hidden;
}

textarea {
  height: auto;
  width: 100%;
  resize: vertical;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #CDCDCD;
  background-color: #ffffff;
  border-radius: 5px;
  padding: 5px 15px;
  margin: 0;
  font-size: 16px;
}

textarea:focus {
  border: 1px solid #0365C8;
  box-shadow: 0px 0px 0px 1px #0365C8 inset;
}

.disp_title2 {
  padding: 0.25em 0.5em;/*上下 左右の余白*/
  color: #494949;/*文字色*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #7db4e6;/*左線*/
  font-size:20px;
}

.bottom_margin-0{
  margin-bottom: 0px !important;
}

.noAgree {
  background-color: #CDCDCD !important;
}

.agreementLink .remark {
  padding: 0 4px;
  margin: 0 4px;
  color: white;
  font-size: small;
  border-radius: 4px;
  background-color: #E13131;
}

.agreementLink .agreementToTerms + .remark {
  background-color: gray;
}

.bp0005_shouldHide {
  display: none !important;
}
