/* 旧screen.cssの記述 */
:root {
  --primary-color: #0069b7;
  --design-color: #00a08a;
  --sweets-color: #e94c59;
  --business-color: #62697b;
  --fashion-color: #e9569a;
  --pet-color: #7a6453;
  --horoscope-color: #804683;
  --build-color: #5c9ed2;
  --psycology-color: #ea6186;
  --craft-color: #ac6441;
  --bodycare-color: #eb6b8b;
  --cooking-color: #de6446;
  --plants-color: #40b9b3;
  --life-color: #3576a7;
  --food-color: #e94c29;
  --drink-color: #0f75bc;
  --kokkashikaku-color: #0C3C97;
}

.wrapper__full {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: 'M PLUS 1p', sans-serif;
  margin: 0 auto;
  max-width: 1180px;
  width: 100%;
}
.site__header {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header__logo {
  margin-right: auto;
}
.nav__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header__contact-link,
.header__contact-link:hover,
.header__contact-link:visited,
.header__contact-link:active {
  color: #323232;
  margin-left: 1rem;
  position: relative;
}
.header__contact-link::before {
  border-right: 1px solid #008ec5;
  border-bottom: 1px solid #008ec5;
  content: '';
  display: inline-block;
  height: 6px;
  margin-right: 6px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  width: 6px;
}
.wrapper_new-course {
  margin: 30px auto;
  width: 200px;
}
/* 20.12.16 */
#header .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
/* sidebar
----------------------------------------------*/
.sidebar {
  font-family: 'Noto Sans JP', sans-serif;
}

.s__cat-item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 2px dashed #ccc;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: .5rem 1rem .5rem .2rem;
  position: relative;
}
.s__cat-item::before {
  background: orange;
  border-radius: 3px;
  content: '';
  height: 14px;
  position: absolute;
  top: calc(50% - 7px);
  right: .2rem;
  width: 14px;
}
.s__cat-item::after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  content: '';
  height: 5px;
  position: absolute;
  top: calc(50% - 4px);
  right: .5rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  width: 5px;
}
.s__cat-item img {
  margin-right: 1rem;
}
.s__cat-item.design:hover {
  background-color: var(--design-color);
}
.s__cat-item.sweets:hover {
  background-color: var(--sweets-color);
}
.s__cat-item.business:hover {
  background-color: var(--business-color);
}
.s__cat-item.fashion:hover {
  background-color: var(--fashion-color);
}
.s__cat-item.pet:hover {
  background-color: var(--pet-color);
}
.s__cat-item.horoscope:hover {
  background-color: var(--horoscope-color);
}
.s__cat-item.build:hover {
  background-color: var(--build-color);
}
.s__cat-item.psycology:hover {
  background-color: var(--psycology-color);
}
.s__cat-item.craft:hover {
  background-color: var(--craft-color);
}
.s__cat-item.bodycare:hover {
  background-color: var(--bodycare-color);
}
.s__cat-item.cooking:hover {
  background-color: var(--cooking-color);
}
.s__cat-item.plants:hover {
  background-color: var(--plants-color);
}
.s__cat-item.life:hover {
  background-color: var(--life-color);
}
.s__cat-item.food:hover {
  background-color: var(--food-color);
}
.s__cat-item.drink:hover {
  background-color: var(--drink-color);
}
.belongs {
  background: #fff;
  display: none;
  -webkit-filter: drop-shadow(2px 4px 8px rgba(0,0,0,.3));
          filter: drop-shadow(2px 4px 8px rgba(0,0,0,.3));
  padding: 1rem;
  position: absolute;
  top: 0;
  left: calc(100%);
  min-width: 600px;
  width: 100%;
  z-index: 0;
}
.belongs > a {
	color: #000;
}
.belongs > a:hover {
	color: #772351;
}
.belongs.show {
  -webkit-animation: menu-fadein .3s ease;
          animation: menu-fadein .3s ease;
  display: block;
  z-index: 10000;
}
.ttl__belong {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.5rem;
  padding-bottom: 10px;
}
.ttl__belong.design {
  border-bottom: 3px solid var(--design-color);
}
.ttl__belong.sweets {
  border-bottom: 3px solid var(--sweets-color);
}
.ttl__belong.business {
  border-bottom: 3px solid var(--business-color);
}
.ttl__belong.fashion {
  border-bottom: 3px solid var(--fashion-color);
}
.ttl__belong.pet {
  border-bottom: 3px solid var(--pet-color);
}
.ttl__belong.horoscope {
  border-bottom: 3px solid var(--horoscope-color);
}
.ttl__belong.build {
  border-bottom: 3px solid var(--build-color);
}
.ttl__belong.psycology {
  border-bottom: 3px solid var(--psycology-color);
}
.ttl__belong.craft {
  border-bottom: 3px solid var(--craft-color);
}
.ttl__belong.bodycare {
  border-bottom: 3px solid var(--bodycare-color);
}
.ttl__belong.cooking {
  border-bottom: 3px solid var(--cooking-color);
}
.ttl__belong.plants {
  border-bottom: 3px solid var(--plants-color);
}
.ttl__belong.life {
  border-bottom: 3px solid var(--life-color);
}
.ttl__belong.food {
  border-bottom: 3px solid var(--food-color);
}
.ttl__belong.drink {
  border-bottom: 3px solid var(--drink-color);
}
.ttl__belong.kokkashikaku {
	border-bottom: 3px solid var(--kokkashikaku-color);
}

.belongs-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.belongs-item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-right: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 49%;
}
.belongs-item:nth-child(2n+1) {
  margin-right: 2%;
}
.s__ttl, .s__top {
  background-color: #0069b7;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: .9rem;
  font-weight: 700;
  padding: .8rem .5rem;
}
.s__ttl::before, .s__top::before {
  background: #fff;
  content: '';
  display: block;
  height: 1rem;
  margin-right: .5rem;
  width: 3px;
}
.s__list {
  margin: 1rem .5rem;
}
.s__list li {
  margin-bottom: 1rem;
  padding-left: 1rem;
  position: relative;
}
.s__list li:before {
  border-right: 3px solid #aaa;
  border-bottom: 3px solid #aaa;
  content: '';
  display: inline-block;
  height: 5px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: calc(50% - 3px);
  left: 0;
  width: 5px;
}
.s__list a, .s__list a:hover, .s__list a:visited, .s__list a:active {
  color: #333;
  text-decoration: none;
}
.btn-side {
  background: #60b6d7 !important;
  -webkit-box-shadow: 0 2px 0 rgb(62, 147, 173) !important;
          box-shadow: 0 2px 0 rgb(62, 147, 173) !important;
  display: block;
  margin: 1rem auto 3rem;
  max-width: 80%;
}
a.btn-side:hover, a.btn-side:visited, a.btn-side:active {
  color: #fff;
}
.sidebar img.banner {
  height: auto;
  max-width: 100%;
  width: 100%;
}
/* footer
----------------------------------------------*/
.nav_category li a {
  border: 1px solid #ccc;
  color: #454545;
  margin: 10px auto;
  display: block;
  text-decoration: none;
  font-weight: 700;
  padding: 10px;
  position: relative;
  width: 180px;
}
.nav_category li a::before {
  border-left: 3px solid #2b8dee;
  content: '';
  height: 100%;
  margin-right: .5rem;
  width: 3px;
}
.nav_category li a::after {
  background-color: #2b8dee;
  content: '>';
  color: white;
  font-size: 4px;
  padding: 3px;
  position: absolute;
  right: 10px;
}
.list-ranking {
  border-width: 0 3px 3px;
  border-style: solid;
  border-color: #2b8dee;
  padding: 5px;
  background: #eee;
}
.item-ranking {
    background-color: #fff;
    font-weight: 700;
    border-bottom: 1px dotted #dad2bd;
    padding: 9px 7px 9px 36px;
    line-height: 1.3em;
    text-indent: -29px;
}
.ranking_1 span {
    color: #ce8209;
}
.ranking_2 span {
    color: #666;
}
.ranking_3 span {
    color: #9e480e;
}
.link_ranking {
    font-weight: 700;
    padding: 7px 7px 7px 25px;
    background: #fff url(data:image/gif;base64,R0lGODdhCgAKAPMAAP+wOP/DZv+qKf/Jdv/bpP/VlP/58f+kGf/t0v////+eCgAAAAAAAAAAAAAAAAAAACwAAAAACgAKAAAEHFDJSWdAp0qTkFYAR3xBkgxV2GWTwGFaAX80HQEAOw==) no-repeat 9px 10px;
}
.footer__content {
  background: #e9f6fe;
  height: 100%;
  padding: 45px 20px;
}
.footer__info {
  background: #fff;
  border: 1px solid #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-filter: drop-shadow(0 3px 3px rgba(100, 100, 100, 0.1));
          filter: drop-shadow(0 3px 3px rgba(100, 100, 100, 0.1));
  padding: 40px 60px;
  margin: 30px auto;
}
.footer__bottom {
  height: 100%;
  padding: 30px 0;
}
.nav__footer {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 40%;
          flex: 1 1 40%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.nav__footer-item {
  border-right: 1px solid #ccc;
  line-height: 1;
  text-align: center;
  width: 25%;
}
.nav__footer-item:last-child {
  border-right: none;
}
.footer__contact {
  border-right: 1px solid #ccc;
  display: inline-block;
  height: 100%;
  padding-right: 2rem;
  margin-right: 2rem;
}
/* top page
-----------------------------*/
.title.ttl__point {
  background-color: #0068b7;
  background-image: none;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.5rem;
  height: auto;
  line-height: 1.6;
  margin-top: 70px;
  padding: 1rem .5rem;
  position: relative;
  text-align: center;
}
.ttl__point span {
  position: relative;
  z-index: 1;
}
.ttl__point::before {
  position: absolute;
  top: -40px;
  left: calc(50% - 37px);
}
.ttl__point.point1::before {
  content: url('../images/bg_top_point1.png');
}
.ttl__point.point2::before {
  content: url('../images/bg_top_point2.png');
}
.title.ttl__folding {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 2px solid #ccc;
  background-image: none;
  color: #232323;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 1.3rem;
  font-weight: bold;
  height: auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  line-height: 1.6;
  padding: .5rem .2rem;
  position: relative;
}
.title.ttl__folding::after {
  border-bottom: 2px solid #999;
  border-right: 2px solid #999;
  content: '';
  display: block;
  height: 10px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  width: 10px;
}
.title.ttl__folding.index1 {
  color: #f36730;
}
.title.ttl__folding.index2 {
  color: #5cc606;
}
.title.ttl__folding.index3 {
  color: #cf41fd;
}
.title.ttl__folding.index4 {
  color: #eb6877;
}
.title.ttl__folding.index5 {
  color: #0068b7;
}
#btn__menu,
#btn__menu::before,
#btn__menu::after {
  background-color: #0068b7;
  border-radius: 2px;
  height: 4px;
  position: relative;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  width: 33px;
}
#btn__menu {
  top: 0;
}
#btn__menu::before {
  content: '';
  position: absolute;
  top: -10px;
  left: 0;
}
#btn__menu::after {
  content: '';
  position: absolute;
  top: 10px;
  left: 0;
  width: 24px;
}
#btn__menu.open {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
#btn__menu.open::before {
  opacity: 0;
}
#btn__menu.open::after {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
  top: 1px;
  width: 33px;
}
.nav__global {
  background: #e9f6fe;
  padding: 1rem 0;
}
.global__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.global__menu li {
  border-right: 1px solid #ccc;
  text-align: center;
  min-width: 20%;
}
.global__menu li:first-child {
  border-left: 1px solid #ccc;
}
.global__menu li a,
.global__menu li a:hover,
.global__menu li a:visited,
.global__menu li a:active {
  color: #333;
  font-size: 1rem;
}
.nav__course-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.course-list-item {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 20%;
          flex: 1 1 20%;
  margin-bottom: 1rem;
}
.doc-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: 'M PLUS 1p', sans-serif;
  max-width: 880px;
  margin: 30px auto;
  width: 100%;
}
.section {
  padding: 6rem 20px;
}
.section.skyblue {
  background: #e9f6fe;
}
.bg__yellow {
  background: #fffddc;
  padding: 20px;
}
.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.row.ranking {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.row .col {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 2%;
}
.row .col.half {
  background: #fff;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
  margin-bottom: 30px;
}
.row_1 .col.half {
  background: #fff;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
  margin-bottom: 30px;
}
.row .col.half:nth-child(2n) {
  margin-right: 0;
}
.row .col img {
  height: auto;
  max-width: 100%;
}
.cp__quick {
  background: #fffddc;
}
.pc__only {
  display: block;
}
.sp__only {
  display: none;
}
.nav__controller {
  background: rgba(5, 153, 153, 0.8);
  bottom: 0;
  left: 0;
  position: fixed;
  width: 100vw;
  z-index: 100;
}
/* .form__input {
  border-top: 1px solid #ccc;
  display: block;
  margin: 30px auto;
  width: 100%;
} */
/* .form-group {
  border-bottom: 1px solid #ccc;
  padding: 1rem 0.2rem;
} */
.form-group.error {
  background-color: #ffe6e6;
}
/* .form-field {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
}
.form-field.top {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.form-field.top label {
  margin: 1rem auto;
}
.form-group.error .form-field {
  color: red;
}
.form-error {
  color: red;
  padding: 0.5rem;
  margin: 1rem auto;
} */
/* .form-field label {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 40%;
          flex: 0 1 40%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.5rem;
} */
/* .form-field label.required {
    border-left: 8px solid #ff577a;
  }
  .form-field label.optional {
    border-left: 8px solid #ccc;
  } */
/* .form-mark {
  border: 1px solid #797979;
  color: #797979;
  font-size: 0.8rem;
  font-weight: 400;
  margin-right: 1rem;
  padding: 0.2rem;
  text-align: center;
  width: 3rem;
}
.form-mark.required {
  border-color: red;
  color: red;
} */
.form-control {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 14px;
}
input.form-control,
textarea.form-control,
.zip-input {
  background: #f7f7f7;
  border: 1px solid #ddd;
  padding: 0.5rem;
  width: 100%;
}
#tel1,#tel2,#tel3 {width: 6rem;}
#zeus_new_card_area {
  margin: 0 0 1rem 0 !important;
}
#zeus_token_card_expires_month_suffix {
  margin-right: 1rem;
}
/* #form__checker {
  background: #059999;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  color: white;
  padding: 0.5rem;
  position: fixed;
  text-align: center;
  top: 200px;
  right: 0;
  min-width: 300px;
  z-index: 1000;
}
.form__check-text {
  font-size: 1.1rem;
  font-weight: 900;
}
#check-number {
  color: #fff5a0;
  font-size: 1.5rem;
} */
.select-wrapper {
  border: 1px solid #ccc;
  position: relative;
  width: 10rem;
}
.select-wrapper:before {
  content: '';
  position: absolute;
  top: 0.9rem;
  right: 1rem;
  width: 0;
  height: 0;
  padding: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #0068b7;
  pointer-events: none;
}
.select-pref {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background: #f7f7f7;
  background-image: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  cursor: pointer;
  font-size: 14px;
  outline: none;
  padding: 0.5rem;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  width: 100%;
}
/* .zip-input {
  font-size: 14px;
  padding: 0.5rem;
  max-width: 7rem;
} */
#body.form-control, #q_content {
  min-height: 8rem;
}
.form__policy {
  border: 1px solid #ccc;
  margin-top: 30px;
  padding: 1rem;
}
.form__policy p {
  margin-top: 0.5rem;
}
.form__policy a {
  border-bottom: 1px dotted #ccc;
}
/* 20.12.18
search form */
.contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.form__search {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.search-input {
  border: 1px solid #ccc;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  outline: none;
  padding: .3rem;
}
.btn.btn-search {
  background-color: var(--primary-color);
  border-top-left-radius: 0;
  border-top-right-radius: 6px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 6px;
  -webkit-box-shadow: none;
          box-shadow: none;
  height: 26.6px;
  position: relative;
}
.btn.btn-search .icon-header-search {
  color: white;
}
.btn.btn-student {
  -webkit-box-shadow: none;
          box-shadow: none;
  font-size: .8rem;
  padding: .3rem .5rem;
}
a.btn-student:hover, a.btn-student:visited, a.btn-student:active {
  color: #fff;
}
.contact-tel {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.contact-tel .time {
  line-height: 2;
}
a[href^="tel:"] {pointer-events: none;}

.icon-close {
  background-color: #e3e3e3;
  border-radius: 50%;
  cursor: pointer;
  display: block;
  height: 20px;
  position: absolute;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  top: 5px;
  right: 5px;
  width: 20px;
}
.icon-close:before,
.icon-close:after {
  content: '';
  height: 1px;
  width: 14px;
  display: block;
  background: #969696;
  position: absolute;
  top: 9px;
  left: 3px;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
}
.icon-close:after {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}
.icon-close:hover {
  -webkit-animation: rotate-animation 0.5s ease;
          animation: rotate-animation 0.5s ease;
}
.box__contact-warn {
  background: #fefefe;
  border: 2px solid #bbb;
  color: #e43333;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: .9rem;
  padding: 1rem;
  margin: 30px auto;
  width: 90%;
}
.form-part {
  width: 100%;
}
/* Animations
----------------------------------------------*/
@-webkit-keyframes rotate-animation {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate-animation {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes menu-fadein {
  from {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes menu-fadein {
  from {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.figure-reset {
  margin: 0;
  padding: 0;
}
.mb-1 {
  margin-bottom: 10px;
}
.mb-2 {
  margin-bottom: 20px;
}
.mb-3 {
  margin-bottom: 30px;
}
.mb-5 {
  margin-bottom: 60px;
}
.ml-1 {
  margin-left: 10px;
}
.mr-1 {
  margin-right: 10px;
}
.mr-3 {
  margin-right: 30px;
}
.my-1 {
  margin: 10px auto;
}
.my-3 {
  margin-top: 30px;
  margin-bottom: 30px;
}
.mt-3 {
  margin-top: 30px;
}
.pt-3 {
  padding-top: 30px;
}
.pt-5 {
  padding-top: 60px;
}
.p-1 {
  padding: 10px !important;
}
.p-2 {
  padding: 20px;
}
.p-3 {
  padding: 30px;
}
.pr-1 {
  padding-right: 10px;
}
.pb-1 {
  padding-bottom: 10px;
}
.px-1 {
  padding: 0 10px;
}
.py-3 {
  padding-top: 30px;
  padding-bottom: 30px;
}
.py-5 {
  padding-top: 60px;
  padding-bottom: 60px;
}
.font-weight-bold {
  font-weight: 700;
}
.h1 {
  font-size: 2.5rem;
}
.h2 {
  font-size: 2rem;
}
.h3 {
  font-size: 1.75rem;
}
.h4 {
  font-size: 1.5rem;
}
.h5 {
  font-size: 1.25rem;
}
.h6 {
  font-size: 1rem;
}
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  -webkit-clip-path: none;
          clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.text-caution {
  color: #aa0d23;
}
.text-yellow {
  color: #faed00;
}
.btn {
  background: #f78205;
  border: none;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  -webkit-box-shadow: 0 2px 0 rgba(200, 104, 2, 1);
          box-shadow: 0 2px 0 rgba(200, 104, 2, 1);
  font-weight: 900;
  min-width: 3rem;
  padding: 0.5rem;
  text-align: center;
}
/* 20.12.18 update */
a.btn:hover, a.btn:visited,a.btn:active {
  color: #fff;
}
.btn.lg {
  min-height: 80px;
}
.btn-s {
  max-width: 8rem;
}
.btn-primary,
.btn-primary:hover,
.btn-primary:visited,
.btn-primary:active {
  background: transparent;
  border: 1px solid #ccc;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.6);
          box-shadow: 0 2px 0 rgba(0, 0, 0, 0.6);
  color: #333;
}
.btn-sidebar {
  background: rgb(45,76,131);
  background: -webkit-gradient(linear, left top, left bottom, from(0), color-stop(0%, rgba(45,76,131,1)), color-stop(50%, rgba(45,76,131,1)), color-stop(50%, rgba(81,104,156,1)), to(rgba(81,104,156,1)));
  background: -o-linear-gradient(0, rgba(45,76,131,1) 0%, rgba(45,76,131,1) 50%, rgba(81,104,156,1) 50%, rgba(81,104,156,1) 100%);
  background: linear-gradient(0, rgba(45,76,131,1) 0%, rgba(45,76,131,1) 50%, rgba(81,104,156,1) 50%, rgba(81,104,156,1) 100%);
  border-radius: 5px;
  color: white;
  display: block;
  font-size: 1rem;
  font-weight: 900;
  text-align: center;
  padding: .5rem 0;
}
.btn-sidebar:hover, .btn-sidebar:visited, .btn-sidebar:active {
  text-decoration: none;
  color: #fff;
}
.btn-select {
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}
.btn-select.selected,
.btn-appcourse.selected {
  background: #059999;
  -webkit-box-shadow: none;
          box-shadow: none;
}
/* .btn-zip {
  margin-left: 10px;
  padding: 0.5rem;
} */
.btn-appcourse {
  background: #f78205;
  border: none;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  -webkit-box-shadow: 0 2px 0 rgba(200, 104, 2, 1);
          box-shadow: 0 2px 0 rgba(200, 104, 2, 1);
  font-weight: 600;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  white-space: nowrap;
  padding: 0.5rem;
  text-align: center;
}
.btn-delete {
  background-color: #dadada;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 2px 0 rgba(0, 0, 0, 0.3);
  color: #595959;
}
.btn-request {
  display: block;
  font-size: 1.6rem;
  height: 100%;
  margin: 0 auto;
  max-width: 320px;
  width: 100%;
}
.btn-confirm {
  cursor: pointer;
  font-size: 1.3rem;
  display: block;
  margin: 0 auto;
  max-width: 320px;
  width: 90%;
}
.btn-confirm.disabled {
  background: #ccc;
  -webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.6);
          box-shadow: 0 2px 0 rgba(0, 0, 0, 0.6);
  color: #ea0000;
  cursor: not-allowed;
  font-size: 1rem;
}
.btn-back {
  background: transparent;
  color: #aaa;
  border: 1px solid #aaa;
  -webkit-box-shadow: none;
          box-shadow: none;
  display: block;
  padding: 1rem 0.5rem;
  width: 80%;
  margin: 30px auto;
  font-size: 1.1rem;
  margin: 30px auto;
}
.btn-send {
  display: block;
  padding: 1rem 0.5rem;
  width: 80%;
  margin: 30px auto;
  font-size: 1.1rem;
  margin: 30px auto;
}
.btn-copy {
  background: #ff819a;
}
.btn_cp-select {
  background: #ff819a;
  border-radius: 30px;
  display: block;
  margin: 30px auto;
  width: 80%;
  max-width: 160px;
}
.btn_back-to-top {
  position: absolute;
  top: -10px;
  right: 10px;
}
.global__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ttl img {
  width: 100%;
}
#coupon_step01,
#coupon_step02 {
  margin-bottom: 120px;
  position: relative;
}
#coupon_step03 {
  margin-bottom: 90px;
  position: relative;
}
#coupon_step01::after,
#coupon_step02::after,
#coupon_step03::after {
  border: 60px solid transparent;
  border-top-color: #eee;
  content: '';
  height: 0;
  position: absolute;
  bottom: -150px;
  left: 50%;
  -webkit-transform: translate(-50px);
      -ms-transform: translate(-50px);
          transform: translate(-50px);
  width: 0;
}
/* .info-window {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(0, 0, 0, 0.7);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 2rem;
  position: fixed;
  height: 16rem;
  -webkit-box-pack: flex-end;
      -ms-flex-pack: flex-end;
          justify-content: flex-end;
  top: 20rem;
  left: -50%;
  max-width: 26rem;
  padding: 0 2rem;
  width: 50%;
  z-index: 1000;
}
.info-message {
  font-size: 1.2rem;
  text-align: right;
} */
.ttl__header {
  border-bottom: 3px solid #0068b7;
  color: #0068b7;
  font-size: 1.7rem;
  font-weight: 500;
}
.ttl__footer {
  color: #2474b9;
  font-size: 1rem;
  padding: 0 2%;
}
/* .ttl__item {
  background: #0068b7;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.3rem 0.8rem;
} */
.ttl__item {
  background: #0068b7;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.3rem 0.8rem;
}
.ttl_item {
	background: #0068b7;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
			justify-content: space-between;
	font-size: 1rem;
	font-weight: 700;
	padding: 0.3rem 0.8rem;
  }
.ttl__target-courses {
  font-size: 1.3rem;
  margin: 30px auto;
  padding-bottom: 0.5rem;
  text-align: center;
  width: 10rem;
}
.ttl__payment {
  background: rgb(1, 104, 183);
  background: -o-linear-gradient(
    110deg,
    rgba(1, 104, 183, 1) 0%,
    rgba(1, 104, 183, 1) 60%,
    rgba(10, 119, 193, 1) 60%,
    rgba(0, 113, 189, 1) 100%
  );
  background: linear-gradient(
    340deg,
    rgba(1, 104, 183, 1) 0%,
    rgba(1, 104, 183, 1) 60%,
    rgba(10, 119, 193, 1) 60%,
    rgba(0, 113, 189, 1) 100%
  );
  color: white;
  font-size: 1.2rem;
  text-align: center;
  margin: 10px -6px 0;
  padding: 10px;
  position: relative;
}
.ttl__payment::after {
  border: 3px solid #0068b7;
  border-right-color: transparent;
  border-bottom-color: transparent;
  bottom: -6px;
  content: '';
  height: 0;
  right: 0;
  position: absolute;
  width: 0;
}
.ttl__select-takumi {
  color: #1ea3a8;
  font-size: 1.1rem;
  font-weight: 700;
  margin: 1rem auto 0.1rem;
}
.cp__course.odd .ttl__target-courses {
  border-bottom: 1px solid #1fa2aa;
  color: #1fa2aa;
}
.cp__course.even .ttl__target-courses {
  border-bottom: 1px solid #20a77c;
  color: #20a77c;
}
.cp__select.selected {
  background: #fffcdc !important;
}
.ttl__contact {
  background-image: url('../images/bg_letter.png');
  background-repeat: no-repeat;
  background-position: center left;
  font-family: 'Noto Sans JP', sans-serif;
  color: var(--primary-color);
  font-size: 1.5rem;
  padding-left: 50px;
}
.ttl__course {
  color: #fff;
  font-size: 1.5rem;
  padding: 0.5rem;
  text-align: center;
}
.ttl__cp-code {
  color: #ff829a;
  font-size: 1.3rem;
}
.ttl__blue-bar {
  color: #0069b7;
  font-size: 1.5rem;
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}
.ttl__blue-bar:after {
  background: #0069b7;
  content: '';
  height: 3px;
  position: absolute;
  bottom: -20px;
  left: 50%;
  -webkit-transform: translateX(-2rem);
      -ms-transform: translateX(-2rem);
          transform: translateX(-2rem);
  width: 4rem;
}
.ttl__left-under-bar {
  border-bottom: 6px solid #0068b7 !important;
  color: #0069b7 !important;
  padding: 0 0 0.5rem 2rem;
  position: relative;
}
.ttl__left-under-bar::before {
  border-left: 8px solid #0068b7;
  content: '';
  height: 1rem;
  padding: 0 0.2rem 0.5rem 0;
  position: absolute;
  top: 0;
  left: 0.5rem;
  width: 0;
}
/* 201001 add 404 */
.post-fix {
  padding-right: 20px;
}
.ttl__404 {
  border-bottom: 3px solid #ccc;
  font-size: 1.8rem;
  font-weight: 500;
  margin: 100px auto 60px;
  padding: .5rem;
  text-align: center;
  width: 90%;
}
.post .content_notfound .ttl__404-mid {
  border: none;
  font-size: 1.3rem;
  font-weight: 300;
  /*padding-left: 48px;*/
  position: relative;
}
.post .content_notfound .ttl__404-mid:before {
  border: 8px solid transparent;
  border-left: 16px solid #0068b7;
  border-right: 0 solid transparent;
  content: '';
  display: inline-block;
  margin-right: .5rem;
}
.content_notfound {
  font-size: 1.3rem;
  margin: 0 auto;
  width: 90%;
}
.input_404 {
  padding: .5rem;
  border: 2px solid #ccc;
  margin-right: 1rem;
  min-width: 50%;
}
.btn-404 {
  background-color: #0068b7;
  -webkit-box-shadow: 0 0 0 BLACK;
          box-shadow: 0 0 0 BLACK;
}
@media screen and (max-width:768px) {
  .ttl__404 {
    font-size: 1.2rem;
    margin: 30px auto;
  }
}
.cp__mv img,
.mv__img img {
  margin: 0 auto;
}
.cp__course.odd .ttl__course {
  background: #1fa3a8;
}
.cp__course.even .ttl__course {
  background: #1fa87c;
}
.cp__course-select {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.txt__special-price {
  color: #ff577a;
  font-size: 1.4rem;
  font-weight: 700;
}
.search-wrapper {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 60%;
}
#keyword-search {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  font-size: 1rem;
  padding: 0.5rem 2rem 0.5rem 2.2rem;
  margin: 30px auto;
  width: 100%;
}
/* 21.10.08 usage checkbox */
.ui-confirm-checkbox {
  display: block;
  text-align: center;
}
/* 20.12.18 fixed */
#keyword-clear {
  cursor: pointer;
  position: absolute;
  top: .5rem;
  right: .7rem;
}
/* 20.12.18 fa-searchの重複　*/
.roupe {
  color: #ccc;
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
}
.fa-question-circle {
  margin-bottom: 1rem;
}
.fa-question-circle {
  margin-bottom: 1rem;
}
.icon-clear {
  color: #ccc;
  cursor: pointer;
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
}
.swiper-custom-parent {
  max-width: 880px;
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.swiper-container {
  min-height: 250px;
  width: 90%;
}
.swiper-button-prev,
.swiper-button-next {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-image: none !important;
  background-color: #ccddeb;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 5px 2px;
}
.list__ranking .list__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fffde4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  padding: 0.5rem 0.3rem;
  margin-bottom: 5px;
}
.list__ranking .list__item:nth-child(even) {
  background: #f4f3d7;
}
.list__circle {
  margin-bottom: 1rem !important;
}
.list__circle li::before {
  background: #6ac2e9;
  border-radius: 50%;
  content: '';
  display: inline-block;
  height: 0.5rem;
  margin-right: 0.3rem;
  width: 0.5rem;
}
.course__detail {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.ranking__name {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: auto;
}
/* .list__category-item {
  background: #f7f7f7;
  border: 2px solid #3a7096;
  list-style: none;
  color: #3a7096;
  font-size: 1rem;
  padding: 0.3rem 1rem;
  margin-bottom: 5px;
  position: relative;
}
.list__category-item:after {
  border: 2px solid #3a7096;
  border-top-color: transparent;
  border-left-color: transparent;
  content: '';
  height: 6px;
  position: absolute;
  top: 0.8rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  right: 0.8rem;
  width: 6px;
}
.list__category-item:hover:after {
  right: 0.4rem;
} */
.list_category-item {
	background: #f7f7f7;
	border: 2px solid #3a7096;
	list-style: none;
	color: #3a7096;
	font-size: 1rem;
	padding: 0.3rem 1rem;
	margin-bottom: 5px;
	position: relative;
  }
  .list_category-item:after {
	border: 2px solid #3a7096;
	border-top-color: transparent;
	border-left-color: transparent;
	content: '';
	height: 6px;
	position: absolute;
	top: 0.8rem;
	-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	right: 0.8rem;
	width: 6px;
  }
  .list_category-item:hover:after {
	right: 0.4rem;
  }
.category-link,
.category-link:hover,
.category-link:visited,
.category-link:active {
  color: #3a7096;
  display: block;
  text-decoration: none;
}
.cat-drink {
  background-color: #eb5755;
}
.cat-craft {
  background-color: #a35e4e;
}
.cat-fashion {
  background-color: #e0537d;
}
.cat-horoscope {
  background-color: #388398;
}
.cat-design {
  background-color: #3167b1;
}
.cat-build {
  background-color: #4a4a4a;
}
.cat-business {
  background-color: #4c4869;
}
.cat-bodycare {
  background-color: #777695;
}
.cat-food {
  background-color: #5a7554;
}
.cat-sweets {
  background-color: #e67495;
}
.cat-pet {
  background-color: #875727;
}
.cat-plant {
  background-color: #399773;
}
.cat-life {
  background-color: #037a82;
}
.cat-cooking {
  background-color: #b03e3d;
}
.history__item {
  border: 1px solid #ccc;
  min-height: 250px;
  padding: 1rem;
  text-align: center;
}
.history__name {
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 1rem;
  white-space: nowrap;
  -o-text-overflow: clip;
     text-overflow: clip;
  overflow: hidden;
}
.history__img {
  margin: 0 0 1rem;
  padding: 0;
}
.history__img img {
  height: auto;
  max-width: 100%;
  width: 100%;
}
.history__null {
  border: 1px solid #ccc;
  border-radius: 5px;
  color: #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 30px;
  min-height: 100px;
}
/* .category__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.5rem 0.3rem;
}
.category__item:first-child {
  border-top: 1px solid #ccc;
} */
.selected__course {
  color: #fff;
  font-size: 0.9rem;
  font-weight: 700;
}
.selected__course:not(:last-child) {
  margin-bottom: 5px;
}
.document-form {
  height: 100%;
}
.course-frame {
  background: #fff;
  color: #333;
  display: inline-block;
  padding: 0.3rem 0.5rem;
  position: relative;
  width: 90%;
}

#confirm__group {
  display: none;
}
#confirm-zip, #confirm-payment {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#confirm-message {
  width: 55%;
}
#ap-message {
  width: 100%;
}
.ap_logo {
  margin-right: 1rem;
}
.list__course .course__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.5rem;
}
.list__course .course__item:not(:last-child) {
  border-top: none;
  border-bottom: none;
}
.app__table .app__table-col {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ccc;
  border-top-color: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5rem;
}
.app__table .app__table-col:first-child {
  border-top: none;
}
.course__detail {
  padding: 0.5rem;
}
.course__detail:nth-child(odd) {
  background: #f6f6f6;
}
.col-title {
  margin-right: auto;
}
.col-price {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 8rem;
          flex: 0 0 8rem;
  text-align: right;
  margin-right: 10px;
}
.col-title.discount,
.col-price.discount {
  color: #ff0000;
  font-weight: 700;
}
.app__table .app__total {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 700;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.total-head {
  background: #0068b7;
  color: white;
  font-size: 1.3rem;
  padding: 1rem;
}
.total-price {
  padding: 1rem;
  text-align: right;
}
.total-num {
  font-size: 1.3rem;
}
.course__item {
  border-bottom: 1px solid #ccc;
  padding: 1rem 0.2rem;
}
.item__name {
  display: block;
  font-size: 1.1rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 60%;
          flex: 0 1 60%;
  margin-bottom: 1rem;
}
.course__unit {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0 !important;
      -ms-flex: 0 1 46% !important;
          flex: 0 1 46% !important;
  margin-bottom: 10px;
  padding: 0.5rem;
}
.course__ttl {
  margin-right: auto;
}
.course__price {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 5rem;
          flex: 0 0 5rem;
  margin-right: 10px;
  text-align: right;
}

.course-check {
  display: none;
}
.cp-input {
  border: 1px solid #ccc;
  margin: 30px auto 0;
}
.cp-checkbox {
  background: #fafafa;
  display: block;
  padding: 1rem;
}
#cp-input {
  padding: 1rem;
}
#cp_input {
  max-width: 300px;
  width: 100%;
}
.payment-select {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
}
.payment-select label {
  display: inline;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 86%;
          flex: 0 1 86%;
}
.payment-select .form-control {
  margin: 1rem 0.5rem;
}
.payment-item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.payment-method {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.payment-item .fa-question-circle {
  margin-top: 1rem;
}
#settlement-form {
  border-top: 2px solid #ccc;
  padding: 0.5rem;
  width: 100%;
  margin-top: 30px;
}
#settlement-form label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.fa-question-circle {
  color: #008ec5;
  cursor: pointer;
}
.payment-info {
  display: none;
  background: #f7f7f7;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  padding: 1rem;
  border-radius: 6px;
}
/* 21.03.29 campaign 調整*/
.cp__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin: 0 2%;
}
.cp__course {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 32%;
          flex: 0 1 32%;
  margin: 0 1% 2% 0;
}
.cp__course:nth-child(3n) {
  margin-right: 0;
}
/* end 21.03.29 */
.cp__course.odd {
  background: #e6f6f3;
}

.cp__course.even {
  background: #e5f6ec;
}
.target-course {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  border: 1px solid #b3dbd3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.5rem;
  padding: 0.5rem;
}
#payment {
  position: relative;
}
.box__cp-code {
  background: rgba(255, 130, 154, 0.2);
  border: 8px solid #ff829a;
  border-radius: 5px;
  padding: 10px 20px;
  position: absolute;
  top: -40px;
  left: 50%;
  text-align: center;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 80%;
  max-width: 600px;
}

@media screen and (max-width: 480px) {
	.box__cp-code {
		top: -20px;
	}
}

.coupon_kouza_sel_btn {
  display: flex;
  justify-content: center;
}

.hidden_course {
  display: none;
}
.box__ranking {
  background: #eff7ff;
  border: 1px solid #ccc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 31.66%;
          flex: 0 1 31.66%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 2% 3% 0;
  overflow: hidden;
}
.box__ranking:nth-child(3n) {
  margin-right: 0;
}
.box__ranking-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 0.9rem;
  padding: 0.5rem;
}
.box__ranking-inner img {
  margin-bottom: 0.5rem;
}
.box__ranking-inner a {
  display: block;
  text-align: center;
  margin-top: auto;
}
.ttl__ranking-head {
  background: #fff !important;
  border-bottom: 1px solid #ccc !important;
  color: #0069b7 !important;
  text-align: center;
  margin-top: 0 !important;
  padding: 0.2rem;
}
.ttl__ranking-head.sm {
  font-size: 0.8rem;
}
.a__ttl_course {
  max-height: 120px;
  color: #fff;
  font-size: 200%;
  padding: 25px 10px 16px;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  -webkit-border-top-left-radius: 6px;
  -webkit-border-top-right-radius: 6px;
}

.a__ttl_course.petsitter,
.headline.petsitter,
.mid__section.petsitter h4,
.ttl__qualification.petsitter,
.ttl__flow_attend.petsitter,
.ttl__course_attend.petsitter {
  background: #796453;
}
.ttl__sub_qualification.petsitter {
  background: #938789;
}
.qualification__base.petsitter,
.flow_attend.petsitter,
.course__attend_base.petsitter,
.hr.petsitter {
  border: 1px solid #796453;
}
.hr.petsitter {
  border-top: 1px solid #938789;
}
.ttl__qualification.petsitter b {
  color: #796453;
}
.ttl_sub__course.petsitter {
  background-color: #938789;
}
.ttl__course_detail {
  border-top: 1px solid #b0a49a;
  border-bottom: 1px solid #b0a49a;
  font-size: 1.3rem;
  padding: 0.2rem 10px;
}
.flow_attend .img_responsive {
  max-width: 100%;
}
.a__ttl_course.lymphcare,
.headline.lymphcare,
.mid__section.lymphcare h4,
.ttl__qualification.lymphcare,
.ttl__flow_attend.lymphcare,
.ttl__course_attend.lymphcare {
  background: #4ba8ad;
}
.ttl__sub_qualification.lymphcare {
  background: #81b0b9;
}
.qualification__base.lymphcare,
.flow_attend.lymphcare,
.course__attend_base.lymphcare {
  border: 1px solid #4ba8ad;
}
.hr.lymphcare {
  border-top: 1px solid #81b0b9;
}
.ttl__qualification.lymphcare b {
  color: #4ba8ad;
}
.ttl_sub__course.lymphcare {
  background-color: #81b0b9;
}
.ttl__course_detail.lymphcare {
  border-top-color: #81b0b9;
  border-bottom-color: #81b0b9;
}

.a__ttl_course.kaigosyoku,
.headline.kaigosyoku,
.mid__section.kaigosyoku h4,
.ttl__qualification.kaigosyoku,
.ttl__flow_attend.kaigosyoku,
.ttl__course_attend.kaigosyoku {
  background: #e1a68e;
}
.ttl__sub_qualification.kaigosyoku {
  background: #ddc1c0;
}
.qualification__base.kaigosyoku,
.flow_attend.kaigosyoku,
.course__attend_base.kaigosyoku {
  border: 1px solid #e1a68e;
}
.hr.petsitter {
  border-top: 1px solid #ddc1c0;
}
.ttl__qualification.kaigosyoku b {
  color: #e1a68e;
}
.ttl_sub__course.kaigosyoku {
  background-color: #ddc1c0;
}
.ttl__course_detail.kaigosyoku {
  border-top-color: #ddc1c0;
  border-bottom-color: #ddc1c0;
}

.a__ttl_course.kanbutsu,
.headline.kanbutsu,
.mid__section.kanbutsu h4,
.ttl__qualification.kanbutsu,
.ttl__flow_attend.kanbutsu,
.ttl__course_attend.kanbutsu {
  background: #c65148;
}
.ttl__sub_qualification.kanbutsu {
  background: #c07e74;
}
.qualification__base.kanbutsu,
.flow_attend.kanbutsu,
.course__attend_base.kanbutsu {
  border: 1px solid #c65148;
}
.hr.kanbutsu {
  border-top: 1px solid #c07e74;
}
.ttl__qualification.kanbutsu b {
  color: #c65148;
}
.ttl_sub__course.kanbutsu {
  background-color: #c07e74;
}
.ttl__course_detail.kanbutsu {
  border-top-color: #c07e74;
  border-bottom-color: #c07e74;
}

.a__ttl_course.syukuyo,
.headline.syukuyo,
.mid__section.syukuyo h4,
.ttl__qualification.syukuyo,
.ttl__flow_attend.syukuyo,
.ttl__course_attend.syukuyo {
  background: #515292;
}
.ttl__sub_qualification.syukuyo {
  background: #8685a6;
}
.qualification__base.syukuyo,
.flow_attend.syukuyo,
.course__attend_base.syukuyo {
  border: 1px solid #515292;
}
.hr.syukuyo {
  border-top: 1px solid #8685a6;
}
.ttl__qualification.syukuyo b {
  color: #515292;
}
.ttl_sub__course.syukuyo {
  background-color: #8685a6;
}
.ttl__course_detail.syukuyo {
  border-top-color: #8685a6;
  border-bottom-color: #8685a6;
}

.a__ttl_course.seitai,
.headline.seitai,
.mid__section.seitai h4,
.ttl__qualification.seitai,
.ttl__flow_attend.seitai,
.ttl__course_attend.seitai {
  background: #db6f76;
}
.ttl__sub_qualification.seitai {
  background: #d48f81;
}
.qualification__base.seitai,
.flow_attend.seitai,
.course__attend_base.seitai {
  border: 1px solid #db6f76;
}
.hr.seitai {
  border-top: 1px solid #d48f81;
}
.ttl__qualification.seitai b {
  color: #db6f76;
}
.ttl_sub__course.seitai {
  background-color: #d48f81;
}
.ttl__course_detail.seitai {
  border-top-color: #d48f81;
  border-bottom-color: #d48f81;
}

h2.main_title {
  margin: 0;
  border: none;
  color: white;
  font-size: 100%;
  padding: 0;
}
.headline {
  color: #fff;
  font-size: 150%;
  font-weight: 700;
  margin: 0 0 30px;
  padding: 10px;
}
.headline h3 {
  margin: 0;
  border: none;
  font-weight: 700;
  color: white;
}
.mid_headline {
  font-size: 120%;
}
/* 2020.11.30 update*/
.add__section h2 {
  background: #0068b7;
  border-bottom: none;
  color: white;
  font-size: 1.2rem;
  margin: 1rem auto;
  padding: .5rem;
}
.add__section h3 {
  border-bottom: none;
  color: #0068b7;
  font-size: 1.1rem;
  font-weight: 500;
}
.add__section h3:before {
  content: '●';
  padding-right: .5rem;
}
.mid__section h4 {
  color: #fff;
  padding: 10px;
  margin: 0 auto !important;
}

.qualification__base {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 290px;
          flex: 1 1 290px;
  margin: 1em 10px;
  background: #fff;
}
.ttl__qualification {
  color: #fff;
  padding: 5px;
}
.ttl__qualification b {
  background-color: #fff;
  padding: 2px;
  margin-right: 5px;
}
.ttl__sub_qualification {
  color: #fff;
  font-size: 90%;
  padding: 5px;
}
.img__qualification {
  margin: 10px 0;
}
.img__qualification img {
  width: 100%;
}
.flow_attend {
  font-size: 120%;
  margin: 20px;
}
.ttl__flow_attend {
  color: #fff;
  padding: 5px 5px 5px 10px;
}
.course__attend_base {
  font-size: 12px;
  margin: 20px 10px;
}
.ttl__course_attend {
  color: #fff;
  font-size: 100%;
  font-weight: 700;
  padding: 5px 5px 5px 10px;
}

.ttl_sub__course {
  color: #fff;
  font-weight: 700;
  padding: 5px 5px 5px 10px;
}
.course__aid-img {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 40%;
          flex: 0 1 40%;
}
.course__desc {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 49%;
          flex: 1 1 49%;
  font-size: 80%;
  vertical-align: top;
}
.list__course-desc {
  list-style: none;
  padding: 0;
  margin: 0 !important;
}
.list__course-desc li {
  background: none !important;
  border-top: 1px dashed #523e42;
  margin: 0 !important;
  padding: 0.5rem 10px !important;
}
.desc__row {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.desc__col {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.sub__course_caution {
  background: #fff;
  color: #aa0d23;
  font-weight: 900;
  padding: 0.1rem 0.5rem;
  margin-right: 0.5rem;
}
.desc__payment {
  background-color: #423f3f;
  color: #fff;
  margin-right: 0.1rem;
  padding: 0.2rem 0.5rem;
}
#loading-screen {
  background: #fff;
  height: 100vh;
  position: fixed;
  top: 0;
  -webkit-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  left: 0;
  width: 100vw;
  z-index: 100;
}
.loading-text {
  color: #555;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
a.skip_select {
  background: #0068b7;
  color: white;
  font-size: 1rem;
  padding: .5rem;
  position: fixed;
  bottom: 60px;
  right: 1rem;
  text-align: center;
}
.skip_select:hover, .skip_select:visited, .skip_select:active {
  text-decoration: none;
}
/* 講師コーナー */
.instructor_content {
  background-color: #fffddf;
  line-height: 1.6;
}
.instructor_content strong {color: #b01f27;}
.instructor-title{
  background: #b01f27;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: .2rem;
  padding: 1rem;
}
.instructor-title em {font-size: 1.8rem;}
.instructor-body {
  padding: 10px .5rem 30px;
}
#content h4.instructor-heading {
  background-color: #b01f27;
  color: #fff;
  padding: .5rem 1rem;
  margin: 0 0 1rem;
}
#content h4.instructor-sublead {
  border-bottom: 2px solid #b01f27;
  font-size: 1.3rem;
  margin: 0 0 .5rem;
  padding: .2rem;
}
.instructor-desc {
  background: #fff;
  padding: .5rem;
  line-height: 1.8;
  margin-bottom: 1rem;
}
.instructor-desc em {font-size: 1.3rem; font-weight: 700;}

/* break points
----------------------------------------------------------
desktop...1069px
tablet...768px
mobile...480px
----------------------------------------------------------*/
@media screen and (max-width: 1069px) {
  .sp__img {
    margin: 0 auto;
    max-width: 96%;
  }
  .footer__info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-align: center;
  }
  .footer__info a {
    display: block;
    margin-bottom: 30px;
  }
  .footer__contact {
    border-right: none;
    padding-right: 0;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .pc__only {
    display: none;
  }
  .sp__only {
    display: block;
  }
  .site__header {
    padding: 20px 2%;
  }
  .header__logo {
    max-width: 50%;
  }
  .footer__info {
    padding: 20px 30px;
  }
  .nav__global {
    display: none;
    -webkit-filter: drop-shadow(0 3px 2px rgba(200, 200, 200, 0.2));
            filter: drop-shadow(0 3px 2px rgba(200, 200, 200, 0.2));
    position: absolute;
    left: 0;
    width: 100vw;
    z-index: 10000;
  }
  .global__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .global__menu li:first-child {
    border-left: none;
  }
  .global__menu li {
    border-right: none;
    text-align: left;
    min-width: 100%;
  }
  .global__menu li a,
  .global__menu li a:hover,
  .global__menu li a:visited,
  .global__menu li a:active {
    display: block;
    margin: 0.5rem auto;
    padding: 0 2%;
  }
  .course-list-item {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 30%;
            flex: 1 1 30%;
    text-align: center;
  }
  .cp__quick {
    padding: 30px 0;
  }
  #quick,
  #cam_submit {
    font-size: 1.2rem;
    margin: 0 auto;
    width: 60%;
  }

  .cp__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .cp__course {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-bottom: 30px;
  }
  .ttl__cp-code {
    font-size: 1.1rem;
  }
}
/**
 * 20.12.16
 */
@media screen and (max-width: 644px) {
  #header .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .contact {
    max-width: 320px;
    margin: 0 auto;
    width: 96%;
  }
  .form__search {
    position: static;
    text-align: center;
  }
}

@media screen and (max-width: 480px) {
  nav.t_course {
    display: none;
  }
  .doc-container {
    padding: 0.5rem 0.5rem 0;
    margin: 10px auto 0;
  }
  .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .row .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    margin-right: 0;
  }
  .col:nth-child(2n) .category__item:first-child {
    border-top: none;
  }
  .course__list {
    height: 60px;
    margin-bottom: 10px;
  }
  .col ul {
    margin-bottom: 1rem;
  }
  .row.btn-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .footer__content .row .col:not(:last-child) {
    margin-bottom: 30px;
  }
  /* .info-window {
    top: 100px;
  } */
  .form__checker {
    min-width: 100px;
  }
  .search-wrapper {
    width: 100%;
  }
  #keyword-search {
    height: 2.5rem;
  }
  .fa-search {
    left: 1.5rem;
  }
  .icon-clear {
    right: 1.5rem;
  }
  .ranking__name {
    font-size: 0.7rem;
  }
  .document-form {
    margin: 1rem 0.5rem;
  }
  .form-control {
    font-size: 1rem;
  }
  #form__checker {
    top: 100px;
  }
  #init__content .ttl__item {
    margin: 0 auto;
  }
  #init__content img,
  #confirm__group img,
  #result__group img {
    margin: 0 auto;
    width: 96%;
  }
  #init__content .btn-primary {
    margin: 30px 0.5rem;
  }

  .cp__mv img,
  .mv__img img {
    height: auto;
    width: 100vw;
  }
  .list__course {
    margin: 0 auto;
  }
  /* sidebar
  -----------------------------*/
  .s__ttl, .s__top {
    font-size: 1.2rem;
  }
  .s__top.category {
    background: #e5482f;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  .s__top.category::before {
    background-color: transparent;
    background-image: url('../images/icon_search_category.png');
    background-size: contain;
    background-repeat: no-repeat;
    height: 43px;
    width: 43px;
  }
  .s__cat-list {
    background: #e4edee;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 2% 2% 0;
  }
  .s__cat-item {
    background: #fff;
    border: none;
    border-radius: 6px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: .9rem;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 32%;
            flex: 0 1 32%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 2%;
    padding: .5rem;
    text-align: center;
  }
  .s__cat-item img {
    margin-right: 0;
    margin-bottom: 10px;
  }
  .s__cat-item:not(:nth-child(3n)) {
    margin-right: 2%;
  }
  .s__cat-item::before, .s__cat-item::after {display: none;}

  .belongs {
    -webkit-filter: none;
            filter: none;
    left: -213%;
    top: 100%;
    min-width: calc(340 / 375 * 100vw);
    padding-left: 0;
    padding-right: 0;
  }
  .s__cat-item:nth-child(3n+1) .belongs {
    left: 0;
  }
  .s__cat-item:nth-child(3n+2) .belongs {
    left: -100%;
  }
  .s__list {
    border-top: 1px solid #ccc;
  }
  .s__list li {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 1px solid #ccc;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom:0;
  }
  .s__list li:before {
    left: unset;
    right: 8px;
  }
  .s__list a {
    display: block;
    font-size: 1rem;
    padding: 1rem .2rem;
    width: 100%;
  }
  .belongs.show {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    display: block;
    z-index: 10000;
  }
  .ttl__belong {display: none;}
  .belongs {
    background-color: transparent;
  }
  .belongs-list {margin: 0;}
  .belongs-item {
    background: #fff;
    border-radius: 3px;
    padding: .5rem 1rem .5rem .5rem;
    text-align: left;
  }
  .sidebar img.banner {
    width: 80%;
    margin: 60px auto;
    display: block;
  }

  #form__checker {
    top: 30px;
  }
  .form-field {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .form-field.tel {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .form-field label {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-box-pack: normal;
        -ms-flex-pack: normal;
            justify-content: normal;
    margin-bottom: 1rem;
    width: 94%;
  }
  .form-field.tel label {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
  }
  .form-field label .form-mark {
    margin-left: 1rem;
  }
  input.form-control,
  textarea.form-control,
  .select-pref {
    margin: 0 auto 1rem;
    width: 100%;
  }
  input[name='payment'] {
    width: 1.5rem;
  }
  input[name='cp-code'] {
    width: 10rem;
  }
  .zip-input {
    margin-left: 0.8rem;
    width: 8rem;
  }
  .select-wrapper {
    margin-left: 0.8rem;
  }
  .form__policy {
    width: 84%;
    margin: 30px auto;
  }
  .confirm__item {
    font-size: 1rem;
    padding: 0.5rem;
    width: 94%;
  }
  .course__unit:nth-child(even) {
    background: #f6f6f6;
  }
  .payment-select .form-control {
    margin: 0 !important;
  }
  .total-head {
    font-size: 1.2rem;
  }
  .total-price {
    padding: 0.5rem;
  }
  #confirm-zip, #confirm-payment {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #confirm-message {
    width: 100%;
  }
  .ap_logo {
    margin-bottom: 1rem;
    max-width: 60px;
  }
  .title.ttl__point {
    font-size: 1.3rem;
    padding: 1.5rem .5rem .5rem;
  }
  .title.ttl__folding{font-size: 1rem;}
  /* 20.12.18 */
  .form__search, .contact-tel {
    margin-bottom: 10px;
  }
  input[type=text].search-input {
    height: auto;
    line-height: initial;
  }
}


.place_center {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.select_sub_txt {
	font-size: 0.8rem;
}

.takumi_price,
.master_price,
.n_price {
	font-size: 0.8rem;
}

.n_price {
	color: #444;
}

.txt__special-price {
	font-weight: 400;
}

.cp__course-select {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.cp__course-select input[type="radio"] {
	margin: 3px 0;
	padding: 0;
}

/* 202409追記 */
#coupon_select_kouza > a > img {
	margin: 0 auto;
	text-align: center;
}

/* 旧screen.cssここまで　*/



#form__checker {
  position: fixed;
  top: 100px;
  right: 0;
  padding: 0.5rem;
  min-width: 200px;
  font-size: 0.9rem;
  color: white;
  text-align: center;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  background: rgba(5, 153, 153, 0.8);
  z-index: 1000;
}
@media screen and (max-width: 480px) {
  #form__checker {
    top: auto;
    right: auto;
    bottom: 30px;
    left: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
  }
}
#form__checker .form__check-text {
  font-size: 1rem;
  font-weight: 900;
}
#form__checker .form__check-text #check-number {
  color: #fff5a0;
  font-size: 1.3rem;
}

.input_process_area {
  margin: 0 auto;
  padding: 8px 0;
  width: 100%;
  background: #f4f4f4;
  border-bottom: 1px solid #e8e8e8;
}
.input_process_area .input_process {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0;
  width: 50%;
}
@media screen and (max-width: 480px) {
  .input_process_area .input_process {
    width: 94%;
  }
}
.input_process_area .input_process > li {
  margin: 0;
  padding: 0;
  width: 30%;
}
@media screen and (max-width: 480px) {
  .input_process_area .input_process > li:first-of-type {
    width: 31%;
  }
  .input_process_area .input_process > li:nth-of-type(2n) {
    width: 31%;
  }
  .input_process_area .input_process > li:last-of-type {
    width: 22%;
  }
}
.input_process_area .input_process > li.separator {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 5%;
  font-size: 0.9rem;
  color: #bfbfbf;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .input_process_area .input_process > li.separator {
    width: 8%;
    font-size: 0.7rem;
  }
}
.input_process_area .input_process > li .process_cont {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.input_process_area .input_process > li .process_cont .step_num {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  color: #b9b9b9;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .input_process_area .input_process > li .process_cont .step_num {
    font-size: 0.8rem;
  }
}
.input_process_area .input_process > li .process_cont .ja_txt {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 0.9rem;
  color: #b9b9b9;
  text-align: center;
}
@media screen and (max-width: 480px) {
  .input_process_area .input_process > li .process_cont .ja_txt {
    font-size: 0.7rem;
  }
}
.input_process_area .input_process > li .process_cont.current .step_num {
  color: #d82121;
}
.input_process_area .input_process > li .process_cont.current .ja_txt {
  color: #d82121;
}

.form_page_title {
  position: relative;
  margin: 0 auto 30px auto;
  padding: 0;
  width: 100%;
  font-size: 1.8rem;
  font-weight: normal;
  color: #184193;
}
.form_page_title .required {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin: 0 0 0 2em;
  padding: 0.2em 0.4em;
  font-size: 0.8rem;
  font-weight: bold;
  color: #d82121;
  border: 1px solid #d82121;
}
@media screen and (max-width: 480px) {
  .form_page_title .required {
    margin-left: 0.8em;
  }
}
@media screen and (max-width: 480px) {
  .form_page_title {
    margin-bottom: 20px;
    font-size: 1.4rem;
    text-align: center;
  }
  .form_page_title.pay_title {
    padding-left: 14%;
    text-align: left;
  }
}
.form_page_title.error_title {
  color: #d82121;
}
.form_page_title.error_title::before {
  content: "";
  display: inline-block;
  margin-right: 16px;
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/doc_app_request/icon_error.svg");
}
.form_page_title::before {
  content: "";
  display: inline-block;
  margin-right: 16px;
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/doc_app_request/icon_location.svg");
}
.form_page_title.pay_title::before {
  content: "";
  display: inline-block;
  margin-right: 16px;
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  background-image: url("../images/doc_app_request/icon_payment.svg");
}

.redirect-alert {
  margin: 60px auto 0 auto;
  padding: 35px 0;
  width: 80%;
  font-size: 1.1rem;
  color: #333;
  text-align: center;
  line-height: 1.8rem;
  background: rgba(244, 169, 215, 0.95);
  border-radius: 5px;
}
@media screen and (max-width: 480px) {
  .redirect-alert {
    margin-top: 40px;
    padding: 20px 16px;
    width: 90%;
    font-size: 0.9rem;
    line-height: 1.4rem;
  }
}
.redirect-alert .back_to_select {
  margin: 20px auto 0 auto;
  padding: 0;
  width: 50%;
}
@media screen and (max-width: 480px) {
  .redirect-alert .back_to_select {
    width: 90%;
  }
}
.redirect-alert .back_to_select > a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 50px;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  background: #e85aaf;
  border-radius: 5px;
  text-decoration: none;
}
.redirect-alert .back_to_select > a:hover {
  background: #d9469e;
  transition: all 0.3s ease;
}
.redirect-alert .back_to_select > .back-submit-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 50px;
  font-size: 1rem;
  color: #fff;
  text-align: center;
  background: #e85aaf;
  border: none;
  border-radius: 5px;
  text-decoration: none;
  cursor: pointer;
}
.redirect-alert .back_to_select > .back-submit-btn:hover {
  background: #d9469e;
  transition: all 0.3s ease;
}

#input__group,
#confirm__group,
#app_confirm__group {
  margin: 30px auto 40px auto;
  padding: 0;
  width: 100%;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 480px) {
  #input__group,
  #confirm__group,
  #app_confirm__group {
    margin-top: 20px;
    width: 94%;
    border-top: 1px solid #ccc;
  }
}
#input__group .form-group,
#confirm__group .form-group,
#app_confirm__group .form-group {
  padding: 1em;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 480px) {
  #input__group .form-group,
  #confirm__group .form-group,
  #app_confirm__group .form-group {
    padding: 1em 0.5em 0.7em 0.5em;
  }
}
#input__group .form-group .form-field,
#confirm__group .form-group .form-field,
#app_confirm__group .form-group .form-field {
  display: flex;
  align-items: center;
  transition: all 0.5s;
}
@media screen and (max-width: 480px) {
  #input__group .form-group .form-field,
  #confirm__group .form-group .form-field,
  #app_confirm__group .form-group .form-field {
    display: block;
  }
}
#input__group .form-group .form-field label,
#confirm__group .form-group .form-field label,
#app_confirm__group .form-group .form-field label {
  position: relative;
  display: flex;
  flex: 0 0 40%;
  align-items: center;
  padding-left: 0.7em;
  font-size: 1rem;
  font-weight: bold;
  border-left: 3px solid #d82121;
}
@media screen and (max-width: 480px) {
  #input__group .form-group .form-field label,
  #confirm__group .form-group .form-field label,
  #app_confirm__group .form-group .form-field label {
    width: 100%;
    font-size: 0.9rem;
  }
}
#input__group .form-group .form-field label .form-mark,
#confirm__group .form-group .form-field label .form-mark,
#app_confirm__group .form-group .form-field label .form-mark {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  margin: 0;
  padding: 0.2em 0.4em;
  font-size: 0.8rem;
  color: #4c4c4c;
  border: 1px solid #4c4c4c;
}
#input__group .form-group .form-field label .required,
#confirm__group .form-group .form-field label .required,
#app_confirm__group .form-group .form-field label .required {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  margin: 0;
  padding: 0.2em 0.4em;
  font-size: 0.8rem;
  color: #d82121;
  border: 1px solid #d82121;
}
#input__group .form-group .form-field .input_area,
#confirm__group .form-group .form-field .input_area,
#app_confirm__group .form-group .form-field .input_area {
  margin: 0;
  padding: 0;
  width: 100%;
}
#input__group .form-group .form-field .input_area input[type=text],
#input__group .form-group .form-field .input_area input[type=number],
#input__group .form-group .form-field .input_area input[type=email],
#input__group .form-group .form-field .input_area input[type=tel],
#input__group .form-group .form-field .input_area textarea[name=message],
#confirm__group .form-group .form-field .input_area input[type=text],
#confirm__group .form-group .form-field .input_area input[type=number],
#confirm__group .form-group .form-field .input_area input[type=email],
#confirm__group .form-group .form-field .input_area input[type=tel],
#confirm__group .form-group .form-field .input_area textarea[name=message],
#app_confirm__group .form-group .form-field .input_area input[type=text],
#app_confirm__group .form-group .form-field .input_area input[type=number],
#app_confirm__group .form-group .form-field .input_area input[type=email],
#app_confirm__group .form-group .form-field .input_area input[type=tel],
#app_confirm__group .form-group .form-field .input_area textarea[name=message] {
  font-size: 1rem;
  border-radius: 4px;
  background: #fefefe;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
#input__group .form-group .form-field .input_area input[name=zip],
#confirm__group .form-group .form-field .input_area input[name=zip],
#app_confirm__group .form-group .form-field .input_area input[name=zip] {
  width: 30%;
}
@media screen and (max-width: 480px) {
  #input__group .form-group .form-field .input_area input[name=zip],
  #confirm__group .form-group .form-field .input_area input[name=zip],
  #app_confirm__group .form-group .form-field .input_area input[name=zip] {
    width: 50%;
  }
}
#input__group .form-group .form-field .input_area .auto-zip,
#confirm__group .form-group .form-field .input_area .auto-zip,
#app_confirm__group .form-group .form-field .input_area .auto-zip {
  padding: 0.5rem;
  min-width: 3rem;
  font-size: 0.9rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #f78205;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}
#input__group .form-group .form-field .input_area .auto-zip.disabled,
#confirm__group .form-group .form-field .input_area .auto-zip.disabled,
#app_confirm__group .form-group .form-field .input_area .auto-zip.disabled {
  background: #ccc;
  cursor: not-allowed;
}
#input__group .form-group .form-field .input_area .select-wrapper,
#confirm__group .form-group .form-field .input_area .select-wrapper,
#app_confirm__group .form-group .form-field .input_area .select-wrapper {
  position: relative;
  width: 50%;
  border: none;
}
#input__group .form-group .form-field .input_area .select-wrapper:before,
#confirm__group .form-group .form-field .input_area .select-wrapper:before,
#app_confirm__group .form-group .form-field .input_area .select-wrapper:before {
  content: "";
  position: absolute;
  top: 0.9rem;
  right: 1rem;
  width: 0;
  height: 0;
  padding: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #0068b7;
  pointer-events: none;
}
#input__group .form-group .form-field .input_area .select-wrapper select,
#confirm__group .form-group .form-field .input_area .select-wrapper select,
#app_confirm__group .form-group .form-field .input_area .select-wrapper select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0.5rem;
  width: 100%;
  font-size: 1rem;
  outline: none;
  text-overflow: ellipsis;
  background: #f7f7f7;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
#input__group .form-group .form-field .input_area .form-error,
#confirm__group .form-group .form-field .input_area .form-error,
#app_confirm__group .form-group .form-field .input_area .form-error {
  margin: 3px 0 0 0;
  padding: 0;
  width: 100%;
  font-size: 0.8rem;
  color: red;
}
@media screen and (max-width: 480px) {
  #input__group .form-group .form-field .input_area .form-error,
  #confirm__group .form-group .form-field .input_area .form-error,
  #app_confirm__group .form-group .form-field .input_area .form-error {
    margin-top: 0;
  }
}

#app_confirm__group {
  margin-top: 30px;
}

.payment_notice {
  margin: 0;
  padding: 1em 0;
  width: 100%;
  font-size: 1rem;
  color: #ff0000;
  text-align: center;
  background: #fbe5e0;
}

.action-btn-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px auto 0 auto;
  padding: 0;
  width: 100%;
}
.action-btn-area .back-btn-area {
  display: flex;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  width: 22%;
}
.action-btn-area .back-btn-area .back-btn {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 1rem;
  color: #333;
  border: 1px solid #ddd;
  border-radius: 5px;
  background: #fafafa;
  cursor: pointer;
}
.action-btn-area .back-btn-area .back-btn:hover {
  background: #eee;
  transition: all 0.3s ease;
}
.action-btn-area .submit-btn-area {
  display: flex;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  width: 72%;
}
.action-btn-area .submit-btn-area .submit-btn {
  display: block;
  margin: 0;
  padding: 1rem 0.5rem;
  width: 70%;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  border: none;
  border-radius: 5px;
  background: linear-gradient(340deg, #f78205 0, #f48a1a 60%, #f78205 60%, #f4a44d 100%);
  box-shadow: 0 2px 0 #c66803;
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  .action-btn-area .submit-btn-area .submit-btn {
    width: 80%;
  }
}
.action-btn-area .submit-btn-area .submit-btn.disabled {
  font-size: 1rem;
  color: #333;
  background: #ccc;
  cursor: not-allowed;
  box-shadow: none;
}

.title_notice {
  display: block;
  margin: 0;
  padding: 0;
  font-size: 0.8rem;
  font-weight: normal;
}

.policy_notice {
  margin: 30px auto;
  padding: 20px;
  width: 80%;
  font-size: 0.8rem;
  color: #000;
  text-align: center;
  line-height: 1.4rem;
  background: #f8f8f8;
}
@media screen and (max-width: 480px) {
  .policy_notice {
    padding: 0.6em;
    width: 100%;
  }
}

.comp_msg {
  margin: 30px auto 0 auto;
  padding: 2em;
  width: 100%;
  font-size: 1rem;
  color: #000;
  line-height: 1.8rem;
  text-align: center;
  background: #f0f0f0;
  border-radius: 5px;
}
.comp_msg.error_msg {
  background: #fff1f1;
}

.sitetop_link {
  margin: 50px auto 30px auto;
  padding: 0;
  width: 40%;
  height: 60px;
}
@media screen and (max-width: 480px) {
  .sitetop_link {
    width: 80%;
    height: 50px;
  }
}
.sitetop_link > a {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  color: #fff;
  background: #3074ab;
  border-radius: 5px;
  text-decoration: none;
}
.sitetop_link > a:hover {
  background: #205e90;
  transition: all 0.3s ease;
}

.app_list {
  margin: 15px auto 30px auto;
  padding: 0;
  width: 100%;
}
.app_list .list_title {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 15px;
  width: 100%;
  height: 45px;
  font-size: 1rem;
  color: #fff;
  background: #275baa;
  box-sizing: border-box;
}

.payment_select {
  margin: 0 auto;
  padding: 0;
  width: 100%;
  border-top: 1px solid #ddd;
}
.payment_select .payment_item {
  margin: 0;
  padding: 12px 10px;
  width: 100%;
  font-size: 1rem;
  color: #000;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.payment_select .payment_item .payment_method {
  position: relative;
  display: block;
  height: auto;
  padding-left: 40px;
  cursor: pointer;
}
.payment_select .payment_item .payment_method::before, .payment_select .payment_item .payment_method::after {
  content: "";
  position: absolute;
  display: block;
}
.payment_select .payment_item .payment_method::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  padding: 0;
  width: 26px;
  height: 26px;
  background-color: #fff;
  border-radius: 0%;
  border: 1px solid #ddd;
}
.payment_select .payment_item .payment_method::after {
  top: 26%;
  left: 8px;
  width: 16px;
  height: 10px;
  border-bottom: 3px solid #b82d2d;
  border-left: 3px solid #b82d2d;
  transform: rotate(-45deg) translateY(-26%);
  opacity: 0;
}
.payment_select .payment_item .payment_method.orico::after {
  top: 26%;
  left: 8px;
  width: 16px;
  height: 10px;
  border-bottom: 3px solid #b82d2d;
  border-left: 3px solid #b82d2d;
  transform: rotate(-45deg) translateY(-26%);
  opacity: 0;
}
@media screen and (max-width: 480px) {
  .payment_select .payment_item .payment_method.orico::after {
    top: 40%;
    transform: rotate(-45deg) translateY(-40%);
  }
}
.payment_select .payment_item .visually-hidden {
  position: absolute;
  white-space: nowrap;
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
}
.payment_select .payment_item input[name=payment]:checked + .payment_method::after {
  opacity: 1;
}

.credit_info_area {
  margin: 0 auto;
  padding: 20px 0;
  width: 100%;
  background: #fafafa;
  border-bottom: 1px solid #ddd;
}
.credit_info_area .credit_info {
  margin: 0 auto 20px auto;
  padding: 0;
  width: 90%;
  border-collapse: collapse;
}
.credit_info_area .credit_info th {
  position: relative;
  margin: 0;
  padding: 12px 16px;
  width: 30%;
  font-size: 0.9rem;
  font-weight: bold;
  color: #000;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #fff;
  background: #f8e6c6;
}
@media screen and (max-width: 480px) {
  .credit_info_area .credit_info th {
    display: block;
    width: 100%;
    border-bottom: none;
  }
}
.credit_info_area .credit_info th .required {
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  margin: 0;
  padding: 0.2em 0.4em;
  font-size: 0.8rem;
  color: #d82121;
  border: 1px solid #d82121;
}
.credit_info_area .credit_info td {
  margin: 0;
  padding: 12px 16px;
  width: 70%;
  font-size: 0.9rem;
  color: #000;
  background: #fff;
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 480px) {
  .credit_info_area .credit_info td {
    display: block;
    width: 100%;
    border-bottom: none;
  }
}
.credit_info_area .credit_info td:first-of-type {
  border-top: 1px solid #ddd;
}
.credit_info_area .credit_info td .card-brand-wrap {
  position: relative;
  margin: 0;
  padding: 0;
  width: 50%;
}
.credit_info_area .credit_info td .card-brand-wrap::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #153f7d transparent transparent transparent;
  transform: translateY(-50%);
  pointer-events: none;
}
.credit_info_area .credit_info td .card-brand-wrap select[name=card-brand] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0.5em 0.8em;
  width: 100%;
  font-size: 0.9rem;
  outline: none;
  text-overflow: ellipsis;
  background: #f7f7f7;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
.credit_info_area .credit_info td #zeus_token_card_info_area {
  margin: 0;
  padding: 0;
  width: 100%;
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area {
  margin: 0;
  padding: 0;
  width: 100%;
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area > label {
  margin: 0 0 10px 0;
  padding: 6px 10px;
  width: 100%;
  font-size: 0.9rem;
  font-weight: bold;
  color: #000;
  background: #f7e8e8;
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area > label:not(:first-of-type) {
  margin-top: 16px;
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area input[name=zeus_token_card_number],
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area input[name=zeus_token_card_name] {
  padding: 0.5rem 0.8em;
  width: 70%;
  font-size: 0.9rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 480px) {
  .credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area input[name=zeus_token_card_number],
  .credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area input[name=zeus_token_card_name] {
    width: 100%;
  }
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area select[name=zeus_token_card_expires_month],
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area select[name=zeus_token_card_expires_year] {
  margin-right: 0.4em;
  padding: 0.5em 0.8em;
  width: 20%;
  font-size: 0.9rem;
  outline: none;
  text-overflow: ellipsis;
  background: #f7f7f7;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 480px) {
  .credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area select[name=zeus_token_card_expires_month],
  .credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area select[name=zeus_token_card_expires_year] {
    width: 30%;
  }
}
.credit_info_area .credit_info td #zeus_token_card_info_area #zeus_new_card_area #zeus_token_card_expires_note {
  display: block;
  margin: 6px auto 0 auto;
  padding: 0;
  width: 100%;
  font-size: 0.9rem;
  color: #000;
}
.credit_info_area .credit_info td .payment-number-wrap {
  position: relative;
  margin: 0;
  padding: 0;
  width: 50%;
}
.credit_info_area .credit_info td .payment-number-wrap::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #153f7d transparent transparent transparent;
  transform: translateY(-50%);
  pointer-events: none;
}
.credit_info_area .credit_info td .payment-number-wrap select[name=payment-number] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0.5em 0.8em;
  width: 100%;
  font-size: 0.9rem;
  outline: none;
  text-overflow: ellipsis;
  background: #f7f7f7;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  box-shadow: inset 1px 4px 9px -6px rgba(0, 0, 0, 0.5);
}
.credit_info_area .credit_notice {
  position: relative;
  margin: 0 auto;
  padding: 8px 0;
  width: 100%;
  font-size: 1rm;
  font-weight: bold;
  color: #fff;
  text-align: center;
  background: #868686;
  cursor: pointer;
}
.credit_info_area .credit_notice .toggle_mark {
  position: absolute;
  top: 50%;
  right: 6%;
  transform: translateY(-50%) rotate(135deg);
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
}
.credit_info_area .credit_notice.open .toggle_mark {
  transform: rotate(-45deg) !important;
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out !important;
}
.credit_info_area .credit_notice_body {
  margin: 0 auto;
  padding: 2em;
  width: 100%;
  background: #f3f3f3;
}
@media screen and (max-width: 480px) {
  .credit_info_area .credit_notice_body {
    padding: 1.5em;
  }
}
.credit_info_area .credit_notice_body > h4 {
  margin: 0 0 10px 0;
  padding: 0;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
}
.credit_info_area .credit_notice_body > p {
  margin: 0 0 10px 0;
  padding: 0;
  width: 100%;
  font-size: 0.9rem;
  color: #000;
  line-height: 1.6rem;
}

.credit_info,
.paypay_info,
.daibiki_info,
.later_info,
.loan_info {
  margin: 0 auto;
  padding: 1.5em 3em;
  width: 100%;
  background: #fafafa;
  border-bottom: 1px solid #ddd;
}
@media screen and (max-width: 480px) {
  .credit_info,
  .paypay_info,
  .daibiki_info,
  .later_info,
  .loan_info {
    padding: 1.5em;
  }
}
.credit_info > h4,
.paypay_info > h4,
.daibiki_info > h4,
.later_info > h4,
.loan_info > h4 {
  margin: 0 0 10px 0;
  padding: 0;
  width: 100%;
  font-size: 1rem;
  font-weight: bold;
  color: #000;
}
.credit_info > p,
.paypay_info > p,
.daibiki_info > p,
.later_info > p,
.loan_info > p {
  margin: 0;
  padding: 0;
  width: 100%;
  font-size: 0.9rem;
  color: #000;
  line-height: 1.6rem;
}

.sub_txt {
  font-size: 0.9rem;
}

#confirm {
  margin-top: 50px;
}

.application-list {
  margin: 15px auto 0 auto;
  padding: 0;
  width: 100%;
}
.application-list .list-title {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 15px;
  width: 100%;
  height: 45px;
  font-size: 1rem;
  color: #fff;
  background: #275baa;
  box-sizing: border-box;
}
.application-list .no-courses {
  margin: 0;
  padding: 1em;
  width: 100%;
  font-size: 1rem;
  color: #666;
  background: #fafafa;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.application-list .app-course-col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  width: 100%;
}
.application-list .app-course-col .course-title {
  display: block;
  margin: 0;
  padding: 0.7em 0 0.7em 1.5em;
  width: 80%;
  font-size: 1rem;
  color: #000;
  border-left: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 480px) {
  .application-list .app-course-col .course-title {
    padding: 0.5em 0 0.5em 1em;
    width: 70%;
    font-size: 0.9rem;
  }
}
.application-list .app-course-col .course-price {
  display: block;
  margin: 0;
  padding: 0.7em 0;
  width: 20%;
  font-size: 1rem;
  color: #000;
  text-align: center;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 480px) {
  .application-list .app-course-col .course-price {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5em 0;
    width: 30%;
    font-size: 0.9rem;
  }
}
.application-list .app-course-col.discount-col {
  background: #f7f7f7;
}
.application-list .app-course-col.discount-col .course-title {
  font-weight: bold;
  color: #f72525;
}
.application-list .app-course-col.discount-col .course-price {
  color: #f72525;
}
.application-list .total-price-col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 16px auto 0 auto;
  padding: 0;
  width: 100%;
  height: 50px;
  border: 1px solid #ccc;
}
.application-list .total-price-col .total-title {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  width: 30%;
  height: 100%;
  font-size: 1rem;
  font-weight: bold;
  background: #ffd6a1;
}
@media screen and (max-width: 480px) {
  .application-list .total-price-col .total-title {
    width: 52%;
    font-size: 0.9rem;
  }
}
.application-list .total-price-col .total-price {
  display: flex;
  align-items: center;
  justify-content: end;
  margin: 0;
  padding-right: 2em;
  width: 70%;
  height: 100%;
  font-size: 1.3rem;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .application-list .total-price-col .total-price {
    padding-right: 1.5em;
    width: 48%;
    font-size: 1.1rem;
  }
}

.confirm_credit_info {
  margin: 10px auto 0 auto;
  padding: 0;
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ddd;
}
.confirm_credit_info tr:last-of-type td {
  border-bottom: none;
}
.confirm_credit_info th {
  margin: 0;
  padding: 0.4em 0 0.4em 1em;
  width: 30%;
  font-size: 0.9rem;
  font-weight: normal;
  color: #000;
  text-align: left;
  background: #f6e7ca;
  border-bottom: 1px solid #fff;
}
.confirm_credit_info td {
  margin: 0;
  padding: 0.4em 1em;
  width: 70%;
  font-size: 0.9rem;
  color: #000;
  border-bottom: 1px solid #ddd;
}

#submit-dialogue .notice {
  display: block;
  margin: 8px 0 0 0;
  padding: 1em;
  font-size: 0.9rem;
  color: #fff;
  background: #ff5d5d;
}

/**
* 決済完了後の注意喚起
*----------------------------------------------*/
.payment_alert {
  margin: 10px auto 0 auto;
  padding: 1.5em;
  width: 100%;
  font-size: 1rem;
  color: #fff;
  line-height: 1.6rem;
  text-align: center;
  background: #cb3b3b;
}
@media screen and (max-width: 480px) {
  .payment_alert {
    padding: 0.7em;
  }
}
.payment_alert .emphasis {
  padding-bottom: 3px;
  border-bottom: 1px solid #fff;
}/*# sourceMappingURL=doc_app.css.map */