@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import 'css-style.css';
* {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* 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;
}

img {
  max-width: 100%;
}

blockquote, q {
  quotes: none;
}

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

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

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

button {
  border-radius: 0;
  background: none;
  cursor: pointer;
  outline: none;
  border: none;
}

input {
  outline: none;
}

body {
  font-family: "pretendard", sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #2E3031;
  word-break: keep-all;
}

a {
  text-decoration: none;
  color: #2E3031;
}

b {
  font-weight: 600;
}

@-webkit-keyframes fade-in {
  100% {
    opacity: 1;
  }
}

@keyframes fade-in {
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-slide {
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@keyframes fade-slide {
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
}
@-webkit-keyframes close-fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes close-fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes close-slide-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, 100px);
            transform: translate(0, 100px);
  }
}
@keyframes close-slide-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate(0, 100px);
            transform: translate(0, 100px);
  }
}
a, button {
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.btn--submit {
  display: block;
  width: 100%;
  margin-top: 20px;
  height: 44px;
  border-radius: 100px;
  font-size: 15px;
}
@media only screen and (min-width: 768px) {
  .btn--submit {
    height: 48px;
  }
}

.btn--xs {
  height: 27px;
  padding: 0 10px;
  border-radius: 6px;
  font-size: 14px;
}

.btn--sm {
  height: 40px;
  padding: 0 38px;
  border-radius: 6px;
  font-weight: 500;
}

.btn--md {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 48px;
  padding: 0 36px;
  border-radius: 8px;
  font-weight: 500;
}

.btn--lg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 52px;
  border-radius: 8px;
  font-weight: 500;
}

.btn--full {
  width: 100%;
}

.btn--primary {
  background-color: #00A0E9;
  color: #FFFFFF;
}
.btn--primary.btn--outline {
  background-color: #FFFFFF;
  border: 1px solid #00A0E9;
  color: #00A0E9;
}
.btn--primary.btn--light {
  background-color: #E8F7FF;
  color: #00A0E9;
  border: 1px solid #00A0E9;
}

.btn--secondary {
  background-color: #8FC31F;
  color: #FFFFFF;
}
.btn--secondary.btn--outline {
  background-color: #FFFFFF;
  border: 1px solid #8FC31F;
  color: #8FC31F;
}

.btn--cancel {
  background-color: #acacac;
  color: #FFFFFF;
}
.btn--cancel.btn--outline {
  background-color: #FFFFFF;
  border: 1px solid #acacac;
  color: #acacac;
}

.btn--grey {
  background-color: #E4E8ED;
  color: #75797C;
}
.btn--grey.btn--outline {
  background-color: #FFFFFF;
  border: 1px solid #A7ACB1;
  color: #75797C;
}

button[disabled] {
  background: #B9C0C8;
  color: rgba(255, 255, 255, 0.5);
}

.more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 12px;
  color: #00A0E9;
  font-weight: 500;
}
.more img {
  margin: 0 6px;
}

.btn--text {
  font-size: 14px;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .btn--text {
    padding: 4px 12px;
    background-color: #F1F4F6;
    color: #75797C;
    font-size: 16px;
    border-radius: 100px;
  }
}

.btn--text-accent {
  font-weight: 400;
  color: #00A0E9;
}

.btn--like {
  border: 1px solid #B9C0C8;
  background: url(../images/icon/icon-heart-g.svg) no-repeat center center;
  background-image: 20px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  text-indent: -9999px;
}
.btn--like.on {
  background-image: url(../images/icon/icon-heart-on.svg);
}
.btn--like.btn--sm {
  width: 40px;
  height: 40px;
  padding: 0;
}

.option-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 17px;
  border: 1px solid #D4DBE1;
  border-radius: 5px;
}
.option-btns button, .option-btns a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 38px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 14px;
  color: #525659;
  font-weight: 400;
  display: flex;
  align-items: center;
}
.option-btns button:after, .option-btns a:after {
  content: "";
  display: block;
  width: 1px;
  height: 12px;
  margin: 0 0;
  background-color: #E4E8ED;
}
.option-btns button:last-child:after, .option-btns a:last-child:after {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .option-btns button, .option-btns a {
    width: 156px;
  }
}
.option-btns button:after, .option-btns a:after {
  position: absolute;
  right: 0;
}

.btn--logout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 26px;
  padding: 0 12px;
  background-color: #F1F4F6;
  border-radius: 100px;
  font-size: 12px;
  color: #75797C;
}
@media only screen and (min-width: 1366px) {
  .btn--logout {
    height: 29px;
    font-size: 14px;
  }
}

.btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.btns button {
  margin-left: 8px;
}
.btns button:first-child {
  margin-left: 0;
}

.btns--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.btns--btm {
  margin: 40px 0 30px;
}
@media only screen and (min-width: 1366px) {
  .btns--btm {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 40px 0 80px;
  }
  .btns--btm .btn--full {
    max-width: 202px;
  }
}

select {
  height: 38px;
  padding: 0 40px 0 16px;
  border: 1px solid #E4E8ED;
  border-radius: 6px;
  font-size: 14px;
  color: #75797C;
  background: url(../images/icon/icon-down-g.svg) no-repeat right 16px center;
  -webkit-appearance: none;
}

.select label {
  display: block;
  margin-bottom: 3px;
  font-size: 14px;
  font-weight: 500;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .select label {
    font-size: 16px;
    margin-bottom: 8px;
  }
}
.select select {
  width: 100%;
}

.inputbox {
  width: 100%;
  height: 40px;
  padding-left: 16px;
  background: #F8F9FB;
  border-radius: 6px;
}
.inputbox::-webkit-input-placeholder {
  color: #A7ACB1;
  font-size: 14px;
}
.inputbox::-moz-placeholder {
  color: #A7ACB1;
  font-size: 14px;
}
.inputbox:-ms-input-placeholder {
  color: #A7ACB1;
  font-size: 14px;
}
.inputbox::-ms-input-placeholder {
  color: #A7ACB1;
  font-size: 14px;
}
.inputbox::placeholder {
  color: #A7ACB1;
  font-size: 14px;
}
@media only screen and (min-width: 1366px) {
  .inputbox {
    width: 280px;
  }
}

.inputbox-set {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .inputbox-set:nth-child(2) {
    width: calc(100% - 300px);
  }
  .inputbox-set:nth-child(2) .inputbox {
    min-width: 280px;
  }
}
@media only screen and (min-width: 1366px) {
  .inputbox-set + .inputbox {
    margin: 8px 8px 0 146px;
    width: 390px;
  }
  .inputbox-set + .inputbox + .inputbox {
    margin-top: 8px;
  }
}
.inputbox-set + .inputbox-set {
  margin-top: 6px;
}
@media only screen and (min-width: 1366px) {
  .inputbox-set + .inputbox-set {
    margin: 8px 0 0 146px;
  }
  .inputbox-set + .inputbox-set select {
    width: 270px;
  }
}
.inputbox-set button {
  height: 40px;
  padding: 0 15px;
  margin: 0 6px;
  font-size: 14px;
  white-space: pre;
  border-radius: 6px;
}
.inputbox-set button:last-child {
  margin-right: 0;
}
.inputbox-set select {
  margin: 0 6px;
}
@media only screen and (min-width: 1366px) {
  .inputbox-set select {
    margin-left: 26px;
  }
}
.inputbox-set select:last-child {
  margin-right: 0;
}
.inputbox-set span {
  display: block;
  margin: 0 6px;
  font-size: 18px;
  font-weight: 500;
}

.search-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 412px;
  height: 41px;
  border: 1px solid #D4DBE1;
  border-radius: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}
.search-box input {
  padding-left: 12px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  border: none;
  font-size: 14px;
}
.search-box input::-webkit-input-placeholder {
  font-size: 14px;
  color: #8B8F92;
}
.search-box input::-moz-placeholder {
  font-size: 14px;
  color: #8B8F92;
}
.search-box input:-ms-input-placeholder {
  font-size: 14px;
  color: #8B8F92;
}
.search-box input::-ms-input-placeholder {
  font-size: 14px;
  color: #8B8F92;
}
.search-box input::placeholder {
  font-size: 14px;
  color: #8B8F92;
}
.search-box button {
  width: 41px;
  height: 41px;
  background: transparent;
}

.checkbox {
  width: 0;
  height: auto;
  -webkit-appearance: none;
  border: none;
  padding-left: 0;
  display: none;
}
.checkbox + label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .checkbox + label {
    font-size: 16px;
  }
}
.checkbox + label:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 12px;
  background: url(../images/icon/icon-check-w.svg) no-repeat center center #B9C0C8;
  border-radius: 4px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.checkbox:checked + label:before {
  background-color: #00A0E9;
}

.checkbox--round + label {
  font-size: 12px;
  font-weight: 400;
}
@media only screen and (min-width: 1366px) {
  .checkbox--round + label {
    font-size: 15px;
  }
}
.checkbox--round + label:before, .checkbox--round + label:after {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 100px;
}
.checkbox--round + label:before {
  margin-right: 6px;
  border: 1px solid #00A0E9;
  background: none;
}
.checkbox--round + label:after {
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  left: 4px;
  top: 4px;
  background-color: #00A0E9;
  opacity: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
.checkbox--round:checked + label:before {
  background: none;
}
.checkbox--round:checked + label:after {
  opacity: 1;
}

.checkbox--only + label:before {
  margin-right: 0;
}

.agree {
  padding-bottom: 10px;
}
@media only screen and (min-width: 1366px) {
  .agree {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
}
.agree dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 54px;
  padding: 0 15px;
  margin-bottom: 14px;
  background-color: #F8F9FB;
  border-radius: 6px;
}
.agree dt:only-child {
  margin-bottom: 0;
}
.agree dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 48px;
  padding: 12px 15px;
  margin-top: 4px;
}
.agree label {
  width: 100%;
  font-size: 16px;
  font-weight: 400;
}
.agree label a {
  display: block;
  width: 100%;
  background: url(../images/icon/icon-more.svg) no-repeat right 5px center;
}

.agree__policy {
  width: 100%;
  height: 80px;
  border: 1px solid #D4DBE1;
  background-color: #F8F9FB;
  margin-top: 10px;
  padding: 10px;
  overflow-y: auto;
  color: #525659;
  font-size: 14px;
  line-height: 1.5;
  border-radius: 6px;
}
@media only screen and (min-width: 1366px) {
  .agree__policy {
    height: 100px;
  }
}

.radio {
  width: 0;
  height: auto;
  -webkit-appearance: none;
  border: none;
  padding-left: 0;
  display: none;
}
.radio + label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
}
.radio + label:before, .radio + label:after {
  content: "";
  display: block;
  border-radius: 100px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.radio + label:before {
  width: 20px;
  height: 20px;
  margin-right: 10px;
  border: 1px solid #B9C0C8;
}
.radio + label:after {
  position: absolute;
  width: 12px;
  height: 12px;
  left: 5px;
  top: calc(50% - 6px);
  background-color: #00A0E9;
  opacity: 0;
}
.radio:checked + label:before {
  border-color: #00A0E9;
}
.radio:checked + label:after {
  opacity: 1;
}

.inputs .agree {
  margin: 0;
}

@media only screen and (min-width: 1366px) {
  .inputs--sm {
    width: 416px;
    margin: 0 auto;
  }
  .inputs--sm .inputs__box > label {
    width: 130px;
    min-width: 130px;
    margin-right: 0;
  }
}

.inputs__box {
  margin-top: 40px;
}
@media only screen and (min-width: 1366px) {
  .inputs__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 24px;
  }
}
.inputs__box:first-child {
  margin-top: 0;
}
.inputs__box > label {
  display: block;
  margin-bottom: 8px;
  font-weight: 500;
}
@media only screen and (min-width: 1366px) {
  .inputs__box > label {
    width: 140px;
    min-width: 140px;
    margin: 0 6px 0 0;
  }
}
.inputs__box > label em {
  margin-left: 6px;
  color: #75797C;
  font-weight: 500;
}
@media only screen and (min-width: 1366px) {
  .inputs__box > label em {
    display: block;
    font-size: 12px;
    margin: 4px 0 0 0;
  }
}
.inputs__box select {
  width: 100%;
}
@media only screen and (min-width: 1366px) {
  .inputs__box select {
    max-width: 424px;
  }
}
.inputs__box > p {
  padding: 6px 0;
}
.inputs__box > p b {
  font-size: 18px;
  font-weight: 500;
}

.inputs__box--list > input {
  margin-top: 6px;
}

.inputs__box--error > input {
  border: 1px solid #FF476E;
}
.inputs__box--error .inputs__msg {
  color: #FF476E;
}

.inputs__desc {
  display: block;
  margin-top: 6px;
  font-size: 14px;
  color: #75797C;
  line-height: 1.3;
}
@media only screen and (min-width: 1366px) {
  .inputs__desc {
    margin-left: 16px;
  }
}

.inputs__msg {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #75797C;
  line-height: 1.2;
}

.inputs__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.inputs__num input {
  width: 114px;
}
.inputs__num span {
  margin: 0 6px;
  font-weight: 500;
}
.inputs__num span:last-child {
  margin-right: 0;
}

.inputs__num--sm input {
  width: 92px;
}

.check-group li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 6px;
}

.check-group--sm label {
  width: 90px;
}

.select-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #E4E8ED;
  border-radius: 6px;
  background-color: #F8F9FB;
}
.select-box input[type=radio],
.select-box input[type=checkbox] {
  width: 0;
  height: 0;
}
.select-box input[type=radio] + label,
.select-box input[type=checkbox] + label,
.select-box button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 48px;
  color: #525659;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media only screen and (min-width: 1366px) {
  .select-box input[type=radio] + label,
.select-box input[type=checkbox] + label,
.select-box button {
    width: 150px;
    height: 46px;
  }
}
.select-box input[type=radio] + label span,
.select-box input[type=checkbox] + label span,
.select-box button span {
  font-size: 14px;
}
.select-box input[type=radio]:checked + label,
.select-box input[type=checkbox]:checked + label,
.select-box button.on {
  font-weight: 500;
  color: #00A0E9;
  outline: 1px solid #00A0E9;
  border-radius: 6px;
  background-color: #E8F7FF;
}

.select-box--type {
  border: none;
  background: transparent;
}
.select-box--type input[type=radio] + label,
.select-box--type input[type=checkbox] + label,
.select-box--type button {
  border: 1px solid #E4E8ED;
  border-radius: 6px;
  background-color: #F8F9FB;
  margin-right: 4px;
}
.select-box--type input[type=radio] + label:last-child,
.select-box--type input[type=checkbox] + label:last-child,
.select-box--type button:last-child {
  margin-right: 0;
}
.select-box--type input[type=radio] + label input[type=radio]:checked + label,
.select-box--type input[type=radio] + label input[type=checkbox]:checked + label,
.select-box--type input[type=radio] + label button.on,
.select-box--type input[type=checkbox] + label input[type=radio]:checked + label,
.select-box--type input[type=checkbox] + label input[type=checkbox]:checked + label,
.select-box--type input[type=checkbox] + label button.on,
.select-box--type button input[type=radio]:checked + label,
.select-box--type button input[type=checkbox]:checked + label,
.select-box--type button button.on {
  outline: none;
  border-color: #00A0E9;
}

.select-box--long {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.select-box--long input[type=radio] + label,
.select-box--long input[type=checkbox] + label,
.select-box--long button {
  width: calc(33.3% - 4px);
  margin: 0 6px 6px 0;
}
.select-box--long input[type=radio] + label:nth-child(3n),
.select-box--long input[type=checkbox] + label:nth-child(3n),
.select-box--long button:nth-child(3n) {
  width: calc(33.4% - 4px);
  margin-right: 0;
}
@media only screen and (min-width: 1366px) {
  .select-box--long input[type=radio] + label,
.select-box--long input[type=checkbox] + label,
.select-box--long button {
    width: 100px;
  }
  .select-box--long input[type=radio] + label:nth-child(3n),
.select-box--long input[type=checkbox] + label:nth-child(3n),
.select-box--long button:nth-child(3n) {
    width: 100px;
    margin-right: 6px;
  }
}

.popup {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 600;
  opacity: 0;
}
.popup.active {
  display: block;
  -webkit-animation: fade-in 0.3s ease forwards 0.1s;
          animation: fade-in 0.3s ease forwards 0.1s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.popup.active .btn__pop--exit {
  display: block;
  -webkit-animation: fade-in 0.4s ease forwards 0.1s;
          animation: fade-in 0.4s ease forwards 0.1s;
}
.popup.active .popup__box {
  display: block;
  -webkit-animation: fade-slide 0.5s ease forwards 0.1s;
          animation: fade-slide 0.5s ease forwards 0.1s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.popup.closing .btn__pop--exit {
  opacity: 1;
  -webkit-animation: close-fade-out 0.3s ease 0.1s forwards;
          animation: close-fade-out 0.3s ease 0.1s forwards;
}
.popup.closing .popup__box {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
  -webkit-animation: close-slide-out 0.3s ease 0.1s forwards;
          animation: close-slide-out 0.3s ease 0.1s forwards;
}

.popup__wrap {
  position: relative;
  width: 90%;
  display: inline-block;
}
.popup__wrap .btn__pop--exit:after {
  content: "";
  position: fixed;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.7);
}

.btn__pop--x {
  position: absolute;
  width: 28px;
  height: 28px;
  left: 10px;
  top: 10px;
}
.btn__pop--x img {
  width: 16px;
}

.popup__box {
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  opacity: 0;
  position: relative;
  min-height: 160px;
  background-color: #FFFFFF;
  border-radius: 10px;
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  overflow-y: auto;
}

.popup__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 24px;
}
@media only screen and (min-width: 1366px) {
  .popup__body {
    padding: 34px 24px 24px;
  }
}

.popup--sm .popup__wrap {
  width: 280px;
}

.popup--md .popup__wrap {
  width: 300px;
}

.popup--auto .popup__wrap {
  width: 90%;
  max-width: 700px;
}

.pop__message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.pop__message p {
  text-align: center;
  line-height: 1.6;
}

.popup__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.popup__btns button {
  width: 100%;
  height: 50px;
  font-size: 14px;
}
.popup__btns button:first-child {
  border-radius: 0 0 0 10px;
}
.popup__btns button:last-child {
  border-radius: 0 0 10px 0;
}
.popup__btns button:only-child {
  border-radius: 0 0 10px 10px;
  width: 100%;
}

.pop__title {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 700;
}

.popup__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.popup__head p {
  font-weight: 500;
  color: #1B1B1B;
}

.popup__cont {
  margin: 18px 0;
}

.popup__bottom {
  width: 100%;
  max-width: 274px;
  margin: 0 auto;
}

.popup__option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 18px;
}
.popup__option input + label {
  margin: 5px 0;
}
.popup__option input + label:before {
  margin-right: 8px;
}

.popup__img {
  width: 100%;
}

.popup__bg {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: -1;
}

.tabs__box {
  display: none;
  opacity: 0;
}
.tabs__box.active {
  display: block;
  -webkit-animation: fade-in 0.3s ease forwards 0.1s;
          animation: fade-in 0.3s ease forwards 0.1s;
}

.tab--line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #E4E8ED;
  background-color: #FFFFFF;
}
.tab--line button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 42px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 8px 2px 0;
  margin-left: 16px;
  color: #A7ACB1;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .tab--line button {
    height: 68px;
    padding: 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 32px;
    font-size: 20px;
    color: #1B1B1B;
  }
}
.tab--line button:first-child {
  margin-left: 0;
}
.tab--line button:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  left: 0;
  bottom: -1px;
  background-color: #00A0E9;
  opacity: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 1;
}
.tab--line button.on {
  color: #00A0E9;
}
.tab--line button.on:after {
  opacity: 1;
}

.tab--line-full {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  padding-bottom: 4px;
  border-bottom: none;
  scrollbar-width: none;
}
.tab--line-full::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .tab--line-full {
    position: relative;
  }
  .tab--line-full:after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: 3px;
    background-color: #E4E8ED;
  }
}
.tab--line-full button {
  width: 33.3%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  min-width: 100px;
}
@media only screen and (min-width: 1366px) {
  .tab--line-full button {
    width: auto;
    margin-left: 32px;
    min-width: unset;
  }
}
.tab--line-full button:first-child {
  width: 33.4%;
}
@media only screen and (min-width: 1366px) {
  .tab--line-full button:first-child {
    width: auto;
    margin-left: 0;
  }
}
.tab--line-full button:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: -1px;
  left: 0;
  background-color: #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .tab--line-full button:before {
    display: none;
  }
}

.option-tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.option-tab button {
  height: 33px;
  padding: 0 10px;
  margin-right: 6px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
}
.option-tab button:last-child {
  margin-right: 0;
}
.option-tab button.on {
  background-color: #00A0E9;
  color: #FFFFFF;
}

.tabs__conts .b-list__top {
  margin-top: 10px;
}
@media only screen and (min-width: 1366px) {
  .tabs__conts .b-list__top {
    margin-top: 32px;
  }
  .tabs__conts .b-list__top.b-list__top--space {
    margin: 20px 0;
  }
}
@media only screen and (min-width: 1366px) {
  .tabs__conts .b-list__top .search-box {
    margin-bottom: 0;
  }
}
.tabs__conts .b-list__top p {
  padding-bottom: 0;
}

.cont-box {
  padding: 18px;
  margin-bottom: 12px;
  background-color: #FFFFFF;
  -webkit-box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
          box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
  border-radius: 20px;
}
@media only screen and (min-width: 1366px) {
  .cont-box {
    height: 280px;
    margin-bottom: 0;
  }
}

.title {
  margin-bottom: 24px;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .title {
    margin-bottom: 50px;
  }
}
.title p {
  font-size: 14px;
  line-height: 1.4;
}
@media only screen and (min-width: 1366px) {
  .title p {
    font-size: 18px;
    line-height: 1.5;
    color: #2E3031;
  }
}
.title ul {
  margin-top: 12px;
  padding-bottom: 16px;
}
@media only screen and (min-width: 1366px) {
  .title ul {
    padding-bottom: 40px;
    border-bottom: 1px solid #1B1B1B;
  }
}

.title--nb ul {
  padding-bottom: 0;
  border-bottom: none;
}

.title--line {
  border-bottom: 1px solid #1B1B1B;
  padding-bottom: 20px;
}

h2 {
  margin-bottom: 6px;
  font-size: 20px;
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  h2 {
    font-size: 50px;
    margin-bottom: 10px;
  }
  h2:only-child {
    margin-bottom: 0;
  }
}

h3 {
  padding: 10px 0 18px;
  text-align: center;
  font-weight: 600;
  line-height: 1.5;
}
@media only screen and (min-width: 1366px) {
  h3 {
    margin-bottom: 10px;
    text-align: left;
    font-size: 50px;
  }
}

h4 {
  margin-bottom: 12px;
  font-weight: 500;
  line-height: 1.5;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  h4 {
    font-size: 24px;
  }
}

.info-table table {
  width: 100%;
}
.info-table th {
  width: 64px;
  padding: 4px 10px 4px 0;
  text-align: left;
  font-size: 14px;
  color: #75797C;
}
@media only screen and (min-width: 1366px) {
  .info-table th {
    width: 74px;
    font-size: 16px;
    text-align: left;
  }
}
.info-table td {
  padding: 4px 0;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
}
@media only screen and (min-width: 1366px) {
  .info-table td {
    font-size: 16px;
  }
}
.info-table td br {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .info-table td br {
    display: block;
  }
}

.info-table--list {
  margin-top: 6px;
}
.info-table--list th, .info-table--list td {
  font-size: 16px;
  padding-top: 2px;
  padding-bottom: 2px;
  font-weight: 400;
}
.info-table--list th {
  color: #525659;
  padding-right: 16px;
}
.info-table--list td {
  color: #1B1B1B;
}

.list--dash {
  margin-bottom: 12px;
}
.list--dash:last-child {
  margin-bottom: 0;
}
.list--dash dt, .list--dash dd, .list--dash li {
  position: relative;
  padding-left: 8px;
  font-size: 12px;
  color: #525659;
  line-height: 1.4;
}
@media only screen and (min-width: 1366px) {
  .list--dash dt, .list--dash dd, .list--dash li {
    font-size: 16px;
    line-height: 1.5;
  }
}
.list--dash dt:before {
  content: "*";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.list--dash dd, .list--dash li {
  margin-top: 6px;
}
.list--dash dd:before, .list--dash li:before {
  content: "";
  display: block;
  position: absolute;
  width: 4px;
  height: 1px;
  left: 0;
  top: 7px;
  background-color: #525659;
}
@media only screen and (min-width: 1366px) {
  .list--dash dd:before, .list--dash li:before {
    top: 11px;
  }
}

.list--disc li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 12px;
  color: #525659;
  font-size: 14px;
  line-height: 1.4;
}
@media only screen and (min-width: 1366px) {
  .list--disc li {
    font-size: 18px;
  }
}
.list--disc li:first-child {
  margin-top: 0;
}
.list--disc li:before {
  content: "";
  display: block;
  width: 4px;
  min-width: 4px;
  height: 4px;
  margin: 6px 12px 0 0;
  border-radius: 100px;
  background-color: #525659;
}

.img-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  padding: 15px;
  background-color: #F8F9FB;
  border-radius: 4px;
}
.img-box img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  -o-object-fit: scale-down;
     object-fit: scale-down;
}

.img-box--sm {
  width: 100px;
  height: 100px;
  padding: 10px;
  background-color: #FFFFFF;
}
@media only screen and (min-width: 1366px) {
  .img-box--sm {
    width: 135px;
    height: 135px;
    padding: 18px;
  }
}

.img-box--xs {
  width: 72px;
  height: 72px;
  padding: 10px;
  background-color: #FFFFFF;
}
@media only screen and (min-width: 1366px) {
  .img-box--xs {
    width: 100px;
    height: 100px;
    padding: 14px;
  }
}

.paging {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 32px 0;
}
.paging a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 24px;
  height: 24px;
  color: #1B1B1B;
}
.paging a.on {
  min-width: 24px;
  border-radius: 100px;
  background-color: #00A0E9;
  color: #FFFFFF;
  font-weight: 500;
}

.paging__num {
  margin: 0 5px;
}
.paging__num + .paging__btn {
  margin-left: 15px;
}

.paging__btn {
  margin-left: 6px;
}
.paging__btn:first-child {
  margin: 0;
}
.paging__btn + .paging__num {
  margin-left: 15px;
}

.status {
  display: inline-block;
  height: 28px;
  padding: 0 7px;
  border-radius: 5px;
  font-size: 14px;
  line-height: 28px;
}

.status--primary {
  background-color: #00A0E9;
  color: #FFFFFF;
}

.status--grey {
  background-color: #E4E8ED;
  color: #8B8F92;
}

.web-only {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .web-only {
    display: block;
  }
}

.mark {
  display: inline-block;
  height: 21px;
  padding: 0 10px;
  margin-right: 8px;
  font-size: 12px;
  border-radius: 100px;
  line-height: 22px;
}

.mark--black {
  background-color: #1B1B1B;
  color: #FFFFFF;
}

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100%;
  overflow-x: hidden;
}

.content {
  padding: 76px 24px 24px;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media only screen and (min-width: 1366px) {
  .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 1276px;
    margin: 0 auto;
    padding: 140px 0 0;
  }
}

.freeze {
  overflow: hidden;
}
.freeze .content {
  z-index: -1;
}

.header {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  background-color: #FFFFFF;
  z-index: 300;
}
@media only screen and (min-width: 1366px) {
  .header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 1276px;
    left: calc(50% - 638px);
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 80px;
  }
  .header:after {
    content: "";
    display: block;
    position: fixed;
    width: 100%;
    height: 80px;
    left: 0;
    top: 0;
    background-color: #FFFFFF;
    z-index: -1;
  }
}

.header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 60px;
  padding: 0 24px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (min-width: 1366px) {
  .header__top {
    width: auto;
    height: 100%;
    padding: 0;
  }
}

.logo {
  width: 187px;
}
@media only screen and (min-width: 1366px) {
  .logo {
    width: 235px;
  }
}

.menu__btn {
  width: 28px;
  height: 28px;
  background: url(../images/icon/icon-menu.svg) no-repeat center center;
  text-indent: -9999px;
}
@media only screen and (min-width: 1366px) {
  .menu__btn {
    display: none;
  }
}

.menu {
  position: fixed;
  right: -312px;
  top: 0;
  width: 312px;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-bottom: 60px;
  background-color: #fff;
  z-index: 500;
  -webkit-transition: right 0.3s;
  transition: right 0.3s;
}
@media only screen and (min-width: 1366px) {
  .menu {
    position: static;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
    height: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    padding: 0 0 0 110px;
  }
}
.menu.active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  right: 0;
}
.menu.active + .menu__bg {
  display: block;
  -webkit-animation: fade-in 0.3s ease forwards 0.1s;
          animation: fade-in 0.3s ease forwards 0.1s;
}

.menu__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 60px;
  padding: 0 24px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  background: url(../images/common/logo.png) no-repeat 24px 12px;
  background-size: 187px;
}
@media only screen and (min-width: 1366px) {
  .menu__top {
    display: none;
  }
}
.menu__top button {
  width: 24px;
  height: 24px;
  margin-left: 4px;
}

.menu__bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1;
}
@media only screen and (min-width: 1366px) {
  .menu__bg {
    display: none !important;
  }
}

.menu__tabs {
  padding: 0 32px;
  margin-top: 36px;
}
@media only screen and (min-width: 1366px) {
  .menu__tabs {
    display: none;
  }
}

.menu__cont {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  overflow-y: auto;
}
@media only screen and (min-width: 1366px) {
  .menu__cont {
    overflow-y: visible;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
    height: 20px;
  }
  .menu__cont:after {
    content: "";
    position: fixed;
    width: 100%;
    height: 0;
    background-color: #FFFFFF;
    left: 0;
    top: 80px;
    z-index: -1;
    -webkit-transition: height 0.3s ease-in;
    transition: height 0.3s ease-in;
  }
  .menu__cont:hover li:only-child .menu__sub,
.menu__cont:hover .menu__sub {
    max-height: 500px;
  }
  .menu__cont:hover:after {
    height: 140px;
    -webkit-transition: height 0.1s ease-in;
    transition: height 0.1s ease-in;
  }
}

.menu__list {
  padding: 24px 32px 0;
}
@media only screen and (min-width: 1366px) {
  .menu__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
    padding: 0;
  }
}
@media only screen and (min-width: 1366px) {
  .menu__list.active {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media only screen and (min-width: 1366px) {
  .menu__list > li {
    position: relative;
    margin: 0 24px;
    text-align: center;
  }
}
.menu__list > li:only-child .menu__sub {
  max-height: 500px;
}
@media only screen and (min-width: 1366px) {
  .menu__list > li:only-child .menu__sub {
    max-height: 0;
  }
}
.menu__list button {
  position: relative;
  width: 100%;
  height: 50px;
  margin-top: 10px;
  text-align: left;
  font-size: 20px;
}
@media only screen and (min-width: 1366px) {
  .menu__list button {
    width: auto;
    height: auto;
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    padding-bottom: 34px;
  }
}
.menu__list button:after {
  content: "";
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  right: 0;
  top: calc(50% - 10px);
  background: url(../images/icon/icon-down.svg) no-repeat center center;
  -webkit-transition: -webkit-transform 0.2s;
  transition: -webkit-transform 0.2s;
  transition: transform 0.2s;
  transition: transform 0.2s, -webkit-transform 0.2s;
}
@media only screen and (min-width: 1366px) {
  .menu__list button:after {
    display: none;
  }
}
.menu__list button.on:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.menu__list button.on + .menu__sub {
  max-height: 500px;
  -webkit-transition: max-height 0.5s ease-in 0.1s;
  transition: max-height 0.5s ease-in 0.1s;
}
.menu__list > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 50px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 10px;
  font-size: 20px;
}

.menu__sub {
  max-height: 0;
  -webkit-transition: max-height 0.3s ease-out;
  transition: max-height 0.3s ease-out;
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  overflow: hidden;
}
.menu__sub a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  height: 42px;
  padding-left: 32px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .menu__sub a {
    display: block;
    padding-left: 0;
    height: auto;
    margin-bottom: 16px;
    color: #1B1B1B;
    text-align: center;
    white-space: pre;
  }
  .menu__sub a:hover {
    color: #00A0E9;
  }
}
.menu__sub a:before {
  content: "";
  display: block;
  position: absolute;
  width: 4px;
  height: 1px;
  left: 20px;
  top: 20px;
  background-color: #525659;
}
@media only screen and (min-width: 1366px) {
  .menu__sub a:before {
    display: none;
  }
}

.menu__btm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 32px 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .menu__btm {
    padding: 0;
  }
}
.menu__btm a {
  color: #525659;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.menu__btm a:after {
  content: "";
  display: block;
  width: 1px;
  height: 12px;
  margin: 0 20px;
  background-color: #525659;
}
.menu__btm a:last-child:after {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .menu__btm a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0;
  }
  .menu__btm a img {
    margin-right: 4px;
  }
}

.footer {
  padding: 21px 24px;
  background-color: #2E3031;
}
@media only screen and (min-width: 1366px) {
  .footer {
    position: relative;
    width: 1276px;
    margin: 0 auto;
    padding: 40px 0;
  }
  .footer:after {
    content: "";
    display: block;
    position: absolute;
    left: calc(50% - 50vw);
    top: 0;
    width: 100vw;
    height: 206px;
    background-color: #2E3031;
    z-index: -1;
  }
}

.footer__logo {
  width: 170px;
  height: 33px;
  background: url(../images/common/logo-light.png) no-repeat center center;
  background-size: contain;
  text-indent: -9999px;
}
@media only screen and (min-width: 1366px) {
  .footer__logo {
    width: 195px;
    height: 38px;
  }
}

.footer__info {
  margin-top: 10px;
}
.footer__info p span {
  display: inline-block;
  font-size: 10px;
  color: #B9C0C8;
  line-height: 1.6;
}
@media only screen and (min-width: 1366px) {
  .footer__info p span {
    margin-right: 8px;
    font-size: 12px;
  }
}

@media only screen and (min-width: 1366px) {
  .container--main {
    position: relative;
  }
  .container--main:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 204px;
    width: 100%;
    height: 768px;
    background-color: rgba(0, 160, 233, 0.1);
    z-index: -1;
    border-radius: 384px 0 0 0;
  }
}

@media only screen and (min-width: 1366px) {
  .main-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media only screen and (min-width: 1366px) {
  .main-notice {
    position: relative;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-right: 40px;
    padding: 20px 40px;
  }
}

.main-notice__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1366px) {
  .main-notice__top {
    position: absolute;
    top: -44px;
    left: 0;
    width: 100%;
  }
}
.main-notice__top p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .main-notice__top p {
    font-size: 20px;
  }
}
.main-notice__top p img {
  margin-right: 6px;
}
@media only screen and (min-width: 1366px) {
  .main-notice__top p img {
    margin-right: 16px;
  }
}

.main-notice__link li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .main-notice__link li {
    height: 48px;
    border-bottom: 1px solid #F1F4F6;
  }
  .main-notice__link li:last-child {
    border-bottom: none;
  }
}
.main-notice__link a {
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: block;
  white-space: pre;
}
@media only screen and (min-width: 1366px) {
  .main-notice__link a {
    font-size: 16px;
  }
}
.main-notice__link em {
  margin-left: 20px;
  font-size: 13px;
  color: #75797C;
}
@media only screen and (min-width: 1366px) {
  .main-notice__link em {
    margin-left: 40px;
    font-size: 16px;
  }
}

.main-cont {
  padding: 30px 0 10px;
}
@media only screen and (min-width: 1366px) {
  .main-cont {
    padding: 80px 0 136px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media only screen and (min-width: 1366px) {
  .main-cont__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin-right: 40px;
  }
}

.main-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 16px;
}
.main-title h4 {
  margin: 0 6px 0 0;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  color: #00A0E9;
}
@media only screen and (min-width: 1366px) {
  .main-title h4 {
    font-size: 32px;
    margin-right: 10px;
  }
}
.main-title p {
  font-size: 14px;
  color: #1B1B1B;
  line-height: 1.2;
}
@media only screen and (min-width: 1366px) {
  .main-title p {
    font-size: 16px;
  }
}
.main-title span {
  margin-left: 6px;
  font-size: 14px;
  color: #00A0E9;
  font-weight: 600;
  line-height: 1.2;
}
@media only screen and (min-width: 1366px) {
  .main-title span {
    font-size: 16px;
  }
}

.main-search__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.main-search__box input {
  height: 50px;
  padding-left: 16px;
  width: 100%;
  background-color: #FFFFFF;
  border: 2px solid #00A0E9;
  border-radius: 8px;
}
@media only screen and (min-width: 1366px) {
  .main-search__box input {
    height: 62px;
    padding-left: 32px;
    font-size: 18px;
    border-radius: 12px;
  }
}
.main-search__box input::-webkit-input-placeholder {
  color: #00A0E9;
}
.main-search__box input::-moz-placeholder {
  color: #00A0E9;
}
.main-search__box input:-ms-input-placeholder {
  color: #00A0E9;
}
.main-search__box input::-ms-input-placeholder {
  color: #00A0E9;
}
.main-search__box input::placeholder {
  color: #00A0E9;
}
.main-search__box button {
  width: 50px;
  min-width: 50px;
  height: 50px;
  margin-left: 10px;
  border-radius: 8px;
  background-color: #00A0E9;
}
.main-search__box button img {
  width: 22px;
}
@media only screen and (min-width: 1366px) {
  .main-search__box button {
    width: 62px;
    min-width: 62px;
    height: 62px;
    margin-left: 12px;
    border-radius: 16px;
  }
  .main-search__box button img {
    width: 26px;
  }
}

.main-search__words {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 8px;
}
@media only screen and (min-width: 1366px) {
  .main-search__words {
    margin-top: 12px;
  }
}
.main-search__words dt {
  color: #1B1B1B;
  margin-right: 6px;
  font-size: 14px;
}
@media only screen and (min-width: 1366px) {
  .main-search__words dt {
    margin-right: 20px;
    font-size: 16px;
  }
}
.main-search__words dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 27px;
  padding: 0 6px;
  margin-left: 6px;
  background-color: #8FC31F;
  font-size: 14px;
  color: #FFFFFF;
  border-radius: 6px;
}
@media only screen and (min-width: 1366px) {
  .main-search__words dd {
    margin-left: 8px;
  }
}

.main-shop {
  margin-top: 40px;
}
@media only screen and (min-width: 1366px) {
  .main-shop {
    margin-top: 60px;
  }
}

.main-shop__slide {
  position: relative;
}
.main-shop__slide .slide {
  width: 150px !important;
  height: 150px;
  border: 1px solid #BADCEC;
  border-radius: 20px;
  background-color: #FFFFFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 13px;
}
@media only screen and (min-width: 1024px) {
  .main-shop__slide .slide {
    width: 196px !important;
    height: 196px;
  }
}
.main-shop__slide .bx-wrapper {
  padding: 0;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 0;
  background-color: transparent;
}
.main-shop__slide .bx-viewport {
  height: 150px !important;
}
@media only screen and (min-width: 1024px) {
  .main-shop__slide .bx-viewport {
    height: 196px !important;
  }
}
.main-shop__slide .bx-controls-direction a {
  display: block;
  width: 20px;
  height: 20px;
  margin-left: 36px;
  top: -20px;
  text-indent: -9999px;
}
.main-shop__slide .bx-controls-direction .bx-prev {
  left: auto;
  right: 56px;
  background: url(../images/icon/icon-prev-d.svg) no-repeat center center;
}
.main-shop__slide .bx-controls-direction .bx-next {
  right: 0;
  background: url(../images/icon/icon-next-d.svg) no-repeat center center;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  position: absolute;
  top: -36px;
  right: 28px;
  bottom: auto;
  width: 20px;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto .bx-controls-auto-item a {
  width: 20px;
  height: 20px;
  margin: 0;
  display: block;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto .bx-controls-auto-item a.bx-start {
  background: url(../images/icon/icon-play-g.svg) no-repeat center center;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto .bx-controls-auto-item a.bx-stop {
  background: url(../images/icon/icon-stop.svg) no-repeat center center;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto .bx-controls-auto-item a.active {
  display: none;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-default-pager {
  position: absolute;
  top: -27px;
  right: 86px;
  padding-top: 0;
  width: 97px;
  display: none;
}
@media only screen and (min-width: 1024px) {
  .main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-default-pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-default-pager .bx-pager-item {
  width: 100%;
  height: 2px;
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-default-pager a {
  margin: 0;
  width: 100%;
  border-radius: 0;
  height: 2px;
  background-color: rgba(82, 86, 89, 0.3);
}
.main-shop__slide .bx-controls.bx-has-controls-auto.bx-has-pager .bx-default-pager a.active {
  background-color: #525659;
}

.main-menu__top {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .main-menu__top {
    display: block;
    font-size: 20px;
    font-weight: 600;
    color: #1B1B1B;
  }
}

.main-menu__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
@media only screen and (min-width: 768px) {
  .main-menu__links {
    margin-top: 20px;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
  }
}
@media only screen and (min-width: 1366px) {
  .main-menu__links {
    width: 412px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 4px;
  }
}
.main-menu__links a {
  display: block;
  padding-top: 10px;
  width: 64px;
  text-align: center;
}
@media only screen and (min-width: 1366px) {
  .main-menu__links a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 196px;
    height: 196px;
    margin-top: 20px;
    background-color: #FFFFFF;
    border-radius: 24px;
    -webkit-box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
            box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
  }
  .main-menu__links a img {
    width: 80px;
  }
}
.main-menu__links a span {
  display: block;
  margin-top: 16px;
  font-size: 14px;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .main-menu__links a span {
    font-size: 18px;
    color: #2E3031;
  }
}

@media only screen and (min-width: 1366px) {
  .main-login {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: relative;
    width: 412px;
    padding: 40px 36px;
  }
}
@media only screen and (min-width: 1366px) {
  .main-login > button {
    width: calc(100% - 28px);
    margin-left: 14px;
  }
}

@media only screen and (min-width: 1366px) {
  .main-login__title {
    position: absolute;
    top: -44px;
    left: 0;
    font-size: 20px;
    color: #75797C;
    font-weight: 600;
  }
}

.main-login__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 16px;
}
@media only screen and (min-width: 1366px) {
  .main-login__top {
    padding-top: 10px;
  }
}
.main-login__top > span {
  display: block;
  width: 100%;
  margin-bottom: 45px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
}
@media only screen and (min-width: 1366px) {
  .main-login__top > span {
    font-size: 20px;
    line-height: 1.5;
  }
}
.main-login__top > span br {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .main-login__top > span br {
    display: block;
  }
}
.main-login__top > p {
  font-weight: 300;
}
@media only screen and (min-width: 1366px) {
  .main-login__top > p {
    font-size: 24px;
  }
}
.main-login__top > p em {
  color: #00A0E9;
  font-weight: 500;
}
.main-login__top > p b {
  font-weight: 600;
}

@media only screen and (min-width: 1366px) {
  .main-login__btm {
    width: calc(100% - 28px);
    margin-left: 14px;
  }
}

.main-login__menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media only screen and (min-width: 1366px) {
  .main-login__menu {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.main-login__menu a {
  display: block;
  text-align: center;
  width: 56px;
}
@media only screen and (min-width: 1366px) {
  .main-login__menu a {
    width: 72px;
  }
}
.main-login__menu a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 56px;
  height: 56px;
  background-color: #F1F4F6;
  border-radius: 12px;
}
@media only screen and (min-width: 1366px) {
  .main-login__menu a span {
    width: 72px;
    height: 72px;
  }
}
.main-login__menu a em {
  display: block;
  margin: 8px auto 0;
  font-size: 14px;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .main-login__menu a em {
    margin: 10px auto 0;
    font-size: 16px;
  }
}

.main-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 54px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (min-width: 1366px) {
  .main-link {
    margin: 20px 0;
    display: none;
  }
}
.main-link a {
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.main-link a:after {
  content: "";
  display: block;
  width: 1px;
  height: 8px;
  margin: 0 12px;
  background-color: #2E3031;
}
.main-link a:last-child:after {
  display: none;
}

.p-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;
  padding: 20px 0 40px;
}
@media only screen and (min-width: 1366px) {
  .p-list {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding-top: 40px;
  }
}
.p-list > a {
  width: 48.8%;
  margin-bottom: 24px;
}
@media only screen and (min-width: 1366px) {
  .p-list > a {
    width: calc(20% - 28px);
    margin: 0 35px 60px 0;
  }
  .p-list > a:nth-child(5n) {
    margin-right: 0;
  }
}

.p-list__img {
  height: 152px;
}

.p-list__info {
  margin-top: 8px;
}
.p-list__info p {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: block;
  white-space: pre;
}
@media only screen and (min-width: 1366px) {
  .p-list__info p {
    margin-bottom: 8px;
    font-size: 18px;
  }
}
.p-list__info span {
  font-size: 14px;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .p-list__info span {
    font-size: 18px;
  }
}

.p-detail {
  padding-bottom: 20px;
}
@media only screen and (min-width: 1366px) {
  .p-detail {
    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;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 108px;
    background-color: #FFFFFF;
    -webkit-box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
            box-shadow: 0 4px 32px 0 rgba(49, 64, 104, 0.08);
    border-radius: 40px;
    margin-bottom: 100px;
  }
}

.p-detail__img {
  height: 216px;
}
@media only screen and (min-width: 1366px) {
  .p-detail__img {
    width: 520px;
    height: 520px;
  }
}

@media only screen and (min-width: 1366px) {
  .p-detail__detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 520px;
    margin-left: 6%;
  }
  .p-detail__detail table td {
    text-align: right;
  }
  .p-detail__detail .line-box {
    padding: 30px 0 0;
  }
}

.p-detail__info {
  margin: 20px 0;
}
@media only screen and (min-width: 1366px) {
  .p-detail__info {
    margin: 10px 0 0;
  }
}
.p-detail__info em {
  display: block;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #00A0E9;
}
@media only screen and (min-width: 1366px) {
  .p-detail__info em {
    margin-bottom: 18px;
    font-size: 20px;
  }
}
.p-detail__info p {
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 6px;
}
@media only screen and (min-width: 1366px) {
  .p-detail__info p {
    min-height: 78px;
    margin-bottom: 24px;
    font-size: 24px;
    font-weight: 600;
  }
}
.p-detail__info span {
  color: #00A0E9;
  font-size: 18px;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .p-detail__info span {
    font-size: 24px;
  }
}

.p-detail__total {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 24px 0;
}
@media only screen and (min-width: 1366px) {
  .p-detail__total {
    margin-bottom: 45px;
  }
}
@media only screen and (min-width: 1366px) {
  .p-detail__total p {
    font-size: 24px;
  }
}
.p-detail__total span {
  font-size: 18px;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .p-detail__total span {
    font-size: 24px;
  }
}

.p-detail__btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 10px;
}
@media only screen and (min-width: 1366px) {
  .p-detail__btns {
    padding-bottom: 0;
  }
}
.p-detail__btns button {
  width: calc(50% - 24px);
  padding: 0;
}

.p-detail__cont {
  position: relative;
  padding: 60px 0 36px;
}
@media only screen and (min-width: 1366px) {
  .p-detail__cont {
    width: 100%;
    padding: 44px 0;
    margin-top: 44px;
    border-top: 1px solid #E4E8ED;
    border-bottom: 1px solid #E4E8ED;
  }
}
.p-detail__cont:before {
  content: "";
  position: absolute;
  display: block;
  width: calc(100% + 48px);
  height: 60px;
  left: -24px;
  top: -60px;
  -webkit-box-shadow: 0 12px 12px 0 rgba(49, 64, 104, 0.06);
          box-shadow: 0 12px 12px 0 rgba(49, 64, 104, 0.06);
}
@media only screen and (min-width: 1366px) {
  .p-detail__cont:before {
    display: none;
  }
}
.p-detail__cont img {
  width: 100%;
  margin: 8px 0;
}
@media only screen and (min-width: 1366px) {
  .p-detail__cont img {
    display: block;
    max-width: 100%;
    width: auto;
    margin: 36px auto 0;
  }
}

.p-detail__box {
  margin-top: 12px;
  background-color: #F8F9FB;
  border-radius: 8px;
  padding: 18px 17px;
}
@media only screen and (min-width: 1366px) {
  .p-detail__box {
    position: relative;
    width: 100%;
    padding: 24px 32px;
    margin-top: 100px;
    border-radius: 20px;
  }
  .p-detail__box + .p-detail__box {
    margin-top: 124px;
  }
  .p-detail__box h4 {
    position: absolute;
    top: -64px;
    left: 0;
  }
}

.line-box {
  margin-top: 24px;
  padding: 24px 0;
  border-top: 1px solid #E4E8ED;
}

.line-top {
  padding-top: 24px;
  border-top: 1px solid #1B1B1B;
}

.block-box {
  position: relative;
  padding: 36px 0 28px;
  margin-top: 40px;
}
@media only screen and (min-width: 1366px) {
  .block-box {
    padding: 24px 24px 42px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 1px solid #E4E8ED;
  }
  .block-box .option-btns {
    margin: 0;
  }
}
.block-box:before {
  content: "";
  display: block;
  position: absolute;
  width: calc(100% + 48px);
  height: 5px;
  left: -24px;
  top: -1px;
  background-color: #F1F4F6;
  border-top: 1px solid #E4E8ED;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .block-box:before {
    display: none;
  }
}
.block-box .status {
  margin-right: 20px;
}

.block-box--col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media only screen and (min-width: 1366px) {
  .block-box__list {
    padding-bottom: 60px;
  }
}
.block-box__list .block-box {
  margin-top: 0;
  padding: 16px 0 22px;
}
@media only screen and (min-width: 1366px) {
  .block-box__list .block-box {
    padding: 24px 24px 42px;
  }
}
.block-box__list .block-box:last-child {
  padding-bottom: 8px;
}
@media only screen and (min-width: 1366px) {
  .block-box__list .block-box:last-child {
    padding-bottom: 42px;
  }
}
.block-box__list .block-box:last-child:before {
  display: none;
}
.block-box__list .block-box:before {
  top: auto;
  bottom: -1px;
}

.block-box--mix {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.block-box__group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media only screen and (min-width: 1366px) {
  .block-box__group {
    margin-left: 80px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

.block-box__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-top: 1px solid #E4E8ED;
  padding: 20px 0;
}
@media only screen and (min-width: 1366px) {
  .block-box__wrap {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.block-box__wrap:first-child {
  border-top: none;
}
@media only screen and (min-width: 1366px) {
  .block-box__wrap .p-cart--result {
    width: calc(100% - 280px);
  }
}
@media only screen and (min-width: 1366px) {
  .block-box__wrap .option-btns button {
    width: 120px;
  }
}

.qty {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.qty button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 28px;
  height: 28px;
  background-color: #F1F4F6;
  border-radius: 6px;
}
.qty input {
  width: 48px;
  height: 28px;
  margin: 0 4px;
  text-align: center;
  border: 1px solid #F1F4F6;
  border-radius: 6px;
  font-weight: 500;
}

.cart__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-line-pack: center;
      align-content: center;
  margin-top: 16px;
}
@media only screen and (min-width: 1366px) {
  .cart__top {
    margin: 0 0 20px;
  }
}

.p-cart {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media only screen and (min-width: 1366px) {
  .p-cart {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    margin-top: 0;
  }
}

@media only screen and (min-width: 1366px) {
  .p-cart__cont {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.p-cart--result .img-box {
  background-color: #F8F9FB;
  width: 78px;
  height: 78px;
  margin-left: 0;
}
.p-cart--result .p-cart__detail {
  margin-bottom: 0;
}
.p-cart--result .p-cart__detail p {
  font-size: 14px;
  margin-bottom: 5px;
}
.p-cart--result .pcart__info {
  margin-top: 5px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-cart__img {
  margin: 0 12px;
}
@media only screen and (min-width: 1366px) {
  .p-cart__img {
    margin: 0 48px;
  }
}

.p-cart__detail {
  margin-bottom: 20px;
}
@media only screen and (min-width: 1366px) {
  .p-cart__detail {
    margin-bottom: 0;
    padding-right: 40px;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}
.p-cart__detail em {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
  color: #00A0E9;
}
@media only screen and (min-width: 1366px) {
  .p-cart__detail em {
    margin-bottom: 12px;
    font-size: 16px;
  }
}
.p-cart__detail p {
  margin-bottom: 4px;
  line-height: 1.5;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .p-cart__detail p {
    margin-bottom: 12px;
    font-size: 20px;
  }
}
.p-cart__detail span {
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .p-cart__detail span {
    font-size: 20px;
  }
}

.p-cart__count {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-cart__count em {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  color: #75797C;
  font-weight: 400;
}
.p-cart__count em:after {
  content: "";
  display: block;
  width: 1px;
  height: 8px;
  margin: 0 12px;
  background-color: #E4E8ED;
}
.p-cart__count em:last-child:after {
  display: none;
}

.pcart__info {
  margin-top: 20px;
}
@media only screen and (min-width: 1366px) {
  .pcart__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 0;
    padding-right: 50px;
  }
}
.pcart__info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 7px;
}
@media only screen and (min-width: 1366px) {
  .pcart__info dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-left: 87px;
  }
  .pcart__info dl:first-child dd {
    color: #00A0E9;
  }
}
.pcart__info dl dt {
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .pcart__info dl dt {
    margin-bottom: 8px;
    color: #2E3031;
  }
}
.pcart__info dl dd {
  font-weight: 600;
  color: #00A0E9;
}
@media only screen and (min-width: 1366px) {
  .pcart__info dl dd {
    color: #2E3031;
  }
}
.pcart__info > span {
  font-size: 14px;
  color: #75797C;
}

@media only screen and (min-width: 1366px) {
  .cart__btm {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 112px;
    padding: 0 48px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    border: 1px solid #E4E8ED;
    -webkit-box-shadow: 0 4px 72px 0 rgba(49, 64, 104, 0.06);
            box-shadow: 0 4px 72px 0 rgba(49, 64, 104, 0.06);
    border-radius: 20px;
    margin-bottom: 100px;
  }
}
.cart__btm button {
  margin-top: 40px;
}
@media only screen and (min-width: 1366px) {
  .cart__btm button {
    margin-top: 0;
    width: 200px;
  }
}

@media only screen and (min-width: 1366px) {
  .cart__cal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.cart__cal dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 14px;
}
@media only screen and (min-width: 1366px) {
  .cart__cal dl {
    margin-bottom: 0;
  }
  .cart__cal dl:before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    margin: 0 17px;
    background: url(../images/icon/icon-plus-p.svg) no-repeat center center;
  }
  .cart__cal dl:last-child:before {
    background-image: url(../images/icon/icon-equal-p.svg);
  }
  .cart__cal dl:first-child:before {
    display: none;
  }
}
.cart__cal dl dt, .cart__cal dl dd {
  color: #75797C;
}
@media only screen and (min-width: 1366px) {
  .cart__cal dl dt, .cart__cal dl dd {
    font-size: 20px;
  }
}
.cart__cal dl dt b, .cart__cal dl dd b {
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .cart__cal dl dt b {
    color: #75797C;
    font-weight: 400;
  }
}
@media only screen and (min-width: 1366px) {
  .cart__cal dl dd {
    margin-left: 12px;
    font-weight: 600;
    color: #1B1B1B;
  }
}
.cart__cal .cart__cal-minus dd {
  color: #00C04D;
}
.cart__cal .cart__cal-minus:before {
  background-image: url(../images/icon/icon-minus-r.svg);
}

.pay__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .pay__top h4 {
    font-size: 20px;
  }
}

.pay__address {
  margin-bottom: 16px;
}
@media only screen and (min-width: 1366px) {
  .pay__address {
    margin: 24px 0;
  }
}
.pay__address p {
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .pay__address p {
    font-size: 20px;
    font-weight: 700;
  }
}
.pay__address span {
  display: block;
  margin: 7px 0 2px;
  font-size: 14px;
  line-height: 1.3;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .pay__address span {
    margin: 10px 0;
    font-size: 18px;
  }
}
.pay__address em {
  font-size: 14px;
  color: #8B8F92;
}
@media only screen and (min-width: 1366px) {
  .pay__address em {
    font-size: 18px;
  }
}
@media only screen and (min-width: 1366px) {
  .pay__address + .select select {
    max-width: 500px;
  }
}

.p-sum {
  padding: 40px 0 10px;
}
@media only screen and (min-width: 1366px) {
  .p-sum {
    padding: 60px 0 0;
  }
}

.p-sum__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .p-sum__top h4 {
    font-size: 20px;
  }
}
.p-sum__top span {
  display: block;
  margin: 0 0 14px 6px;
  font-size: 14px;
  color: #8B8F92;
}
@media only screen and (min-width: 1366px) {
  .p-sum__top span {
    margin: 0 0 10px 10px;
  }
}

.p-sum__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 12px;
  margin-bottom: 4px;
  background-color: #F8F9FB;
  border: 1px solid #E4E8ED;
  border-radius: 8px;
}
@media only screen and (min-width: 1366px) {
  .p-sum__box {
    margin-bottom: 16px;
    padding: 20px 32px;
  }
}

.p-sum__notice {
  margin-top: 36px;
  padding-bottom: 0;
}
.p-sum__notice p {
  font-size: 14px;
  line-height: 1.5;
}
@media only screen and (min-width: 1366px) {
  .p-sum__notice p {
    font-size: 16px;
  }
}

.p-sum__info {
  margin-left: 12px;
}
@media only screen and (min-width: 1366px) {
  .p-sum__info {
    margin-left: 32px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 100px;
    -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
            justify-content: space-evenly;
  }
}
.p-sum__info p {
  font-size: 14px;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .p-sum__info p {
    font-size: 20px;
  }
}
.p-sum__info em {
  display: block;
  margin: 5px 0;
  font-size: 14px;
  color: #75797C;
}
@media only screen and (min-width: 1366px) {
  .p-sum__info em {
    font-size: 16px;
  }
}
.p-sum__info span {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .p-sum__info span {
    font-size: 16px;
  }
}

.pay__method {
  padding-bottom: 0;
}
@media only screen and (min-width: 1366px) {
  .pay__method {
    margin-top: 50px;
    padding-top: 0;
    border-top: none;
  }
}
@media only screen and (min-width: 1366px) {
  .pay__method h4 {
    font-size: 20px;
  }
}
@media only screen and (min-width: 1366px) {
  .pay__method .select-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.pay__method button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 48px;
  padding: 0 16px;
  margin-top: 8px;
  background-color: #F8F9FB;
  border: 1px solid #D4DBE1;
  border-radius: 6px;
  font-weight: 500;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .pay__method button {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 196px;
    height: 154px;
    margin: 0 20px 0 0;
  }
}
.pay__method button.on {
  background-color: #E8F7FF;
  border-color: #00A0E9;
  color: #00A0E9;
}
.pay__method button.on img {
  -webkit-filter: none;
          filter: none;
}
.pay__method button img {
  margin-right: 8px;
  -webkit-filter: grayscale(100%) brightness(50%);
          filter: grayscale(100%) brightness(50%);
}
@media only screen and (min-width: 1366px) {
  .pay__method button img {
    margin: 0 0 12px 0;
    width: 40px;
    height: 40px;
  }
}

.b-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 7px;
}
@media only screen and (min-width: 1366px) {
  .b-info {
    margin-top: 0;
  }
}
.b-info span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  color: #525659;
}
.b-info span:after {
  content: "";
  display: block;
  width: 1px;
  height: 8px;
  margin: 0 7px;
  background-color: #8B8F92;
}
.b-info span:last-child:after {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .b-info span:after {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .b-list__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.b-list__top p {
  padding: 10px 0 14px;
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 768px) {
  .b-list__top p {
    padding: 0;
    margin-bottom: 0px;
    font-weight: 400;
  }
  .b-list__top p span {
    color: #00A0E9;
    font-weight: 600;
  }
}

.b-list .b-list__list {
  padding-top: 0;
}
.b-list .b-list__list > a {
  display: block;
  padding: 24px 0;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .b-list .b-list__list > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 16px 20px 16px 40px;
  }
}
@media only screen and (min-width: 1366px) {
  .b-list .b-info span {
    font-size: 16px;
    display: block;
    text-align: center;
    width: 120px;
  }
}

.b-list__head {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .b-list__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 52px;
    padding: 0 20px 0 40px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border-bottom: 1px solid #E4E8ED;
  }
  .b-list__head span {
    color: #75797C;
    width: 120px;
    text-align: center;
  }
  .b-list__head span:first-child {
    text-align: left;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

.b-list__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .b-list__title {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    overflow: hidden;
  }
}
.b-list__title em {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 24px;
  padding: 0 8px;
  margin-right: 6px;
  background-color: #2E3031;
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 500;
  border-radius: 100px;
}
.b-list__title em + p {
  font-weight: 500;
  color: #1B1B1B;
}
.b-list__title p {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: block;
  white-space: pre;
  line-height: 1.5;
}
.b-list__title b {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: block;
  white-space: pre;
  line-height: 1.5;
  font-weight: 500;
}

@media only screen and (min-width: 1366px) {
  .b-list__hl {
    background-color: #F8F9FB;
  }
}

.b-list__new .b-list__title p {
  position: relative;
  padding-right: 14px;
  width: 100%;
}
@media only screen and (min-width: 1366px) {
  .b-list__new .b-list__title p {
    width: auto;
  }
}
.b-list__new .b-list__title p:after {
  content: "";
  display: block;
  position: absolute;
  width: 8px;
  height: 8px;
  right: 0;
  top: 8px;
  border-radius: 100%;
  background-color: #FF476E;
}

.b-list__btns {
  margin-top: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media only screen and (min-width: 1366px) {
  .b-list--media .b-list__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;
    padding-top: 20px;
  }
}
.b-list--media .b-list__list > a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 16px 0 10px;
}
@media only screen and (min-width: 1366px) {
  .b-list--media .b-list__list > a {
    width: calc(33.3% - 14px);
    padding: 0 0 52px 0;
    border-bottom: none;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media only screen and (min-width: 1366px) {
  .b-list--media .b-list__title {
    margin: 8px 0 10px;
    text-align: left;
    font-size: 20px;
    font-weight: 600;
  }
}
.b-list--media .b-info span {
  text-align: left;
  width: auto;
  font-size: 20px;
  margin-right: 20px;
}
.b-list--media .b-info span:last-child {
  margin-right: 0;
}

.b-list__thumb {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  margin-bottom: 10px;
}
@media only screen and (min-width: 1366px) {
  .b-list__thumb {
    width: 100%;
    height: 238px;
    padding-bottom: 0;
  }
}
.b-list__thumb img {
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 1366px) {
  .b-list__thumb img {
    position: static;
  }
}

.thumb--video {
  position: relative;
}
.thumb--video:after {
  content: "";
  position: absolute;
  width: 42px;
  height: 42px;
  left: calc(50% - 21px);
  top: calc(50% - 21px);
  background: url(../images/icon/icon-play.svg) no-repeat center center;
}

.b-view .b-view__top {
  padding: 20px 0;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .b-view .b-view__top {
    padding: 44px 0 35px;
  }
}
.b-view .b-view__top p {
  font-weight: 500;
  color: #1B1B1B;
  line-height: 1.5;
}
@media only screen and (min-width: 1366px) {
  .b-view .b-view__top p {
    font-size: 32px;
    line-height: 1.3;
  }
}
.b-view .b-info {
  margin-top: 20px;
}
@media only screen and (min-width: 1366px) {
  .b-view .b-info span {
    font-size: 18px;
    font-weight: 400;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .b-view .b-info span:after {
    content: "";
    display: block;
    width: 1px;
    height: 8px;
    margin: 0 20px;
    background-color: #2E3031;
  }
  .b-view .b-info span:last-child:after {
    display: none;
  }
}

.b-view__attach {
  padding: 10px 0;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .b-view__attach {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.b-view__attach em {
  display: block;
  margin-bottom: 5px;
  font-size: 14px;
  color: #525659;
}
@media only screen and (min-width: 1366px) {
  .b-view__attach em {
    margin-bottom: 0;
    padding: 0 24px 0 30px;
    font-size: 18px;
    background: url(../images/icon/icon-clip.svg) no-repeat left center;
  }
}

.b-view__files {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.b-view__files a {
  display: block;
  padding: 4px 8px;
  margin: 2px 10px 2px 0;
  background-color: #F1F4F6;
  color: #525659;
  font-size: 14px;
  border-radius: 4px;
  line-height: 1.3;
}
@media only screen and (min-width: 1366px) {
  .b-view__files a {
    margin-right: 14px;
    font-size: 16px;
  }
}
.b-view__files a:last-child {
  margin-right: 0;
}

.b-view__cont {
  padding: 40px 0;
  border-bottom: 1px solid #E4E8ED;
}
.b-view__cont p {
  line-height: 1.5;
  margin-top: 18px;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .b-view__cont p {
    margin-top: 28px;
    font-size: 18px;
  }
}
.b-view__cont p:first-child {
  margin-top: 0;
}
.b-view__cont img {
  margin-top: 24px;
}
.b-view__cont img:first-child {
  margin-top: 0;
}

.b-view__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 44px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .b-view__list {
    height: 72px;
  }
}
.b-view__list span {
  font-size: 14px;
  font-weight: 500;
  margin-right: 12px;
}
@media only screen and (min-width: 1366px) {
  .b-view__list span {
    font-size: 16px;
    margin-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .b-view__list span:after {
    content: "";
    display: block;
    width: 1px;
    height: 12px;
    margin: 0 24px;
    background-color: #8B8F92;
  }
  .b-view__list span:last-child:after {
    display: none;
  }
}
.b-view__list a {
  font-size: 14px;
  color: #525659;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  display: block;
  white-space: pre;
}
@media only screen and (min-width: 1366px) {
  .b-view__list a {
    font-size: 16px;
  }
}

.b-view__video + .b-view__video {
  margin-top: 20px;
}
.b-view__video iframe {
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
}

@media only screen and (min-width: 1366px) {
  .b-view__imgs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.b-view__imgs + .b-view__imgs {
  margin-top: 20px;
}
.b-view__imgs img {
  display: block;
  width: 312px;
}
@media only screen and (min-width: 1366px) {
  .b-view__imgs img {
    width: 800px;
  }
}

.info {
  padding-bottom: 60px;
}

.info__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 15px;
}
.info__top p {
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .info__top button {
    width: 184px;
  }
}

.info__cont {
  padding-top: 16px;
  border-top: 1px solid #1B1B1B;
}
.info__cont dl {
  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;
  margin-bottom: 20px;
}
.info__cont dl dt {
  padding-top: 5px;
  color: #525659;
}
.info__cont dl dd p {
  font-weight: 500;
  color: #1B1B1B;
  line-height: 1.5;
}

.info__box {
  width: 100%;
  margin-top: 5px;
  padding: 10px;
  background-color: #F8F9FB;
  border-radius: 6px;
}
.info__box span {
  color: #1B1B1B;
  font-size: 14px;
  line-height: 1.6;
}

.calendar__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: calc(100% + 48px);
  min-height: 42px;
  margin: 20px 0 0 -24px;
  padding: 10px;
  background-color: #F8F9FB;
  border-bottom: 1px solid #E4E8ED;
}
@media only screen and (min-width: 1366px) {
  .calendar__label {
    width: 100%;
    margin-left: 0;
  }
}
.calendar__label span {
  margin-right: 16px;
}
@media only screen and (min-width: 1366px) {
  .calendar__label span {
    margin-right: 32px;
  }
}
.calendar__label span:last-child {
  margin-right: 0;
}

.label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
}
@media only screen and (min-width: 1366px) {
  .label {
    font-size: 16px;
  }
}
.label:before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  margin-right: 6px;
  border-radius: 100px;
}

.label--pink:before {
  background-color: #FF569A;
}

.label--blue:before {
  background-color: #3D8AFF;
}

.label--yellow:before {
  background-color: #F8B62D;
}

.label--green:before {
  background-color: #00C04D;
}

.plan__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 28px 0 24px;
}
@media only screen and (min-width: 1366px) {
  .plan__top {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.plan__month {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media only screen and (min-width: 1366px) {
  .plan__month {
    margin-right: 40px;
  }
}
.plan__month button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 3px;
  background-color: #F1F4F6;
}
@media only screen and (min-width: 1366px) {
  .plan__month button {
    width: 32px;
    height: 32px;
  }
}
.plan__month button img {
  width: 20px;
}
.plan__month span {
  margin: 0 12px;
  font-size: 20px;
  font-weight: 600;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .plan__month span {
    margin: 0 16px;
    font-size: 24px;
  }
}

@media only screen and (min-width: 1366px) {
  .plan__list {
    margin-bottom: 40px;
  }
}
.plan__list li {
  padding: 8px 0 16px 0;
  margin-bottom: 12px;
  border-bottom: 1px solid #E4E8ED;
}
.plan__list li:last-child {
  border-bottom: none;
}
.plan__list .label:before {
  width: 8px;
  height: 8px;
}
.plan__list p {
  margin: 7px 0 0 14px;
  font-weight: 500;
  line-height: 1.4;
}
@media only screen and (min-width: 1366px) {
  .plan__list p {
    font-size: 18px;
  }
}

.greeting__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 260px;
  padding: 0 0 20px 5%;
  background: url(../images/image/img-greeting.png) no-repeat right center;
  background-size: cover;
  background-position: center 80%;
  border-radius: 36px 0 36px 0;
}
@media only screen and (min-width: 1366px) {
  .greeting__top {
    height: 462px;
    padding: 0 0 16px 8.2%;
  }
}
.greeting__top p {
  margin-top: 20px;
  color: #FFFFFF;
  font-weight: 500;
  line-height: 1.5;
  font-size: 16px;
}
@media only screen and (min-width: 1366px) {
  .greeting__top p {
    margin-top: 24px;
    font-size: 24px;
  }
}
.greeting__top p em {
  display: inline-block;
}
.greeting__top p em:after {
  content: "";
  display: block;
  width: 100%;
  height: 10px;
  margin-top: -10px;
  background-color: #00A0E9;
}
@media only screen and (min-width: 1366px) {
  .greeting__top p em:after {
    height: 20px;
    margin-top: -16px;
  }
}

.greeting__cont {
  padding: 60px 0 0;
  background: url(../images/image/symbol.svg) no-repeat left 80px;
  background-size: 280px;
  background-position: left 60px;
}
@media only screen and (min-width: 1366px) {
  .greeting__cont {
    padding: 90px 0;
    background-position: left 80px;
    background-size: 370px;
  }
}
.greeting__cont p {
  width: 100%;
  margin-bottom: 50px;
  line-height: 1.5;
  font-size: 16px;
}
@media only screen and (min-width: 1366px) {
  .greeting__cont p {
    margin: 0 auto 78px;
    max-width: 800px;
    font-size: 20px;
  }
}
.greeting__cont p br {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .greeting__cont p br {
    display: block;
  }
}

.history__list {
  padding: 10px 0 20px;
}
@media only screen and (min-width: 1366px) {
  .history__list {
    padding: 50px 0 60px;
  }
}
.history__list dl {
  margin-top: 20px;
}
@media only screen and (min-width: 1366px) {
  .history__list dl {
    margin-top: 26px;
  }
}
.history__list dt {
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .history__list dt {
    font-size: 24px;
  }
}
.history__list dd {
  margin-top: 8px;
  line-height: 1.3;
}
@media only screen and (min-width: 1366px) {
  .history__list dd {
    font-size: 24px;
    line-height: 1.4;
  }
}

.map__info {
  margin-top: 20px;
  padding: 20px 0;
  border-top: 1px solid #000000;
}
@media only screen and (min-width: 1366px) {
  .map__info {
    margin-top: 36px;
    padding: 24px 0 50px;
  }
}
.map__info dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
@media only screen and (max-width: 375px) {
  .map__info dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media only screen and (min-width: 1366px) {
  .map__info dl {
    margin-bottom: 30px;
  }
}
.map__info dt {
  width: 80px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .map__info dt {
    width: 120px;
    font-size: 16px;
  }
}
.map__info dd {
  font-size: 14px;
  line-height: 1.4;
  color: #1B1B1B;
}
@media only screen and (min-width: 1366px) {
  .map__info dd {
    font-size: 16px;
  }
}

.loading {
  width: 100%;
  height: 100%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.loading p {
  margin-bottom: 20px;
}

.loading__motion {
  position: relative;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #00A0E9;
  color: #00A0E9;
  -webkit-animation: loading-motion 1s infinite linear alternate;
          animation: loading-motion 1s infinite linear alternate;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}
.loading__motion:before, .loading__motion:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
}
.loading__motion:before {
  left: -15px;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #00A0E9;
  color: #00A0E9;
  -webkit-animation: loading-motion 1s infinite alternate;
          animation: loading-motion 1s infinite alternate;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.loading__motion:after {
  left: 15px;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #00A0E9;
  color: #00A0E9;
  -webkit-animation: loading-motion 1s infinite alternate;
          animation: loading-motion 1s infinite alternate;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}

@-webkit-keyframes loading-motion {
  0% {
    background-color: #00A0E9;
  }
  50%, 100% {
    background-color: rgba(152, 128, 255, 0.2);
  }
}

@keyframes loading-motion {
  0% {
    background-color: #00A0E9;
  }
  50%, 100% {
    background-color: rgba(152, 128, 255, 0.2);
  }
}
.login {
  padding: 28px 20px;
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
}
@media only screen and (min-width: 1366px) {
  .login {
    height: auto;
    padding: 40px;
    margin-top: 30px;
  }
}

.login__top {
  text-align: center;
  margin-bottom: 17px;
}
@media only screen and (min-width: 1366px) {
  .login__top {
    margin-bottom: 24px;
  }
}
.login__top p {
  margin-bottom: 12px;
  font-size: 24px;
  font-weight: 600;
}
@media only screen and (min-width: 1366px) {
  .login__top p {
    font-size: 28px;
  }
}
.login__top span {
  font-size: 14px;
  color: #525659;
  line-height: 1.5;
}
@media only screen and (min-width: 1366px) {
  .login__top span {
    font-size: 15px;
  }
}

.login__inputs {
  margin-bottom: 17px;
}
.login__inputs input {
  margin-bottom: 17px;
}
@media only screen and (min-width: 1366px) {
  .login__inputs input {
    min-width: 100%;
    margin-bottom: 24px;
  }
  .login__inputs input::-webkit-input-placeholder {
    font-size: 15px;
  }
  .login__inputs input::-moz-placeholder {
    font-size: 15px;
  }
  .login__inputs input:-ms-input-placeholder {
    font-size: 15px;
  }
  .login__inputs input::-ms-input-placeholder {
    font-size: 15px;
  }
  .login__inputs input::placeholder {
    font-size: 15px;
  }
}
.login__inputs input:first-child {
  margin-bottom: 6px;
}
@media only screen and (min-width: 1366px) {
  .login__inputs input:first-child {
    margin-bottom: 16px;
  }
}

.login__btm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 17px;
}
.login__btm p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.login__btm a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 12px;
  color: #75797C;
}
.login__btm a:after {
  content: "";
  display: block;
  width: 1px;
  height: 8px;
  margin: 0 12px;
  background-color: #B9C0C8;
}
.login__btm a:last-child:after {
  display: none;
}
@media only screen and (min-width: 1366px) {
  .login__btm a {
    font-size: 14px;
    font-weight: 500;
  }
}

.id-found {
  padding: 52px 0;
  text-align: center;
  background-color: #F8F9FB;
}
.id-found p {
  font-size: 20px;
  line-height: 1.7;
  color: #525659;
}
.id-found p span {
  font-weight: 600;
  color: #1B1B1B;
}

html, body {
  width: 100%;
  height: 100%;
}