@charset "UTF-8";
/* ========================================
  Arrow Mixin
  @param {String} $direction - Direction
  @param {Number} $width - Width
  @param {Number} $height - Height
  @param {Number} $border - Border
  @param {Color} $color - Color
  ex: @include arrow.arrow(upward, 20px, 20px, 2px, #333);
======================================== */
/* ========================================
  Aspect Ratio Mixin
  @param {Number} $width - Width
  @param {Number} $height - Height
  ex: @include aspect-ratio.aspect-ratio(16, 9);
======================================== */
/* ========================================
  Hover Mixin
  ex: @include hover.hover() {...}
======================================== */
/* ========================================
  Leading Trim Mixin
  @param {Number} $line-height - Line Height
  Note: You can use get-line-height function.
  ex: @include leading-trim.leading-trim(1.6);
======================================== */
/* ========================================
  Breakpoint Variables
  Note: These breakpoints are refered from Bootstrap.
  https://getbootstrap.com/docs/5.0/layout/breakpoints/
  ex: $breakpoints
======================================== */
/* ========================================
  Media Query Mixin
  @param {String} $breakpoint - Class infix like 'sm', 'md'
  Note: Check out a breakpoints file if you want to modify breakpoints.
  ex: @include media-query(md) {...}
======================================== */
/* ========================================
  Triangle Mixin
  @param {String} $direction - Direction
  @param {Number} $width - Width
  @param {Number} $height - Height
  @param {Color} $color - Color
  ex: @include triangle.triangle(upward, 20px, 20px, #333);
======================================== */
/* ========================================
  Underline Mixin
  @param {Color} $color - Color
  @param {Number} $height - Height
  ex: @include underline.underline(#ff6B00, 10px);
======================================== */
/* ========================================
  Visibility Hidden Mixin
  ex: @include visibility-hidden.visibility-hidden();
======================================== */
/* ========================================
  Strip-unit Function
  @param {Number} $number - Number to remove unit
  @return {Number} - Unitless number
  note: You can use this function in other functions and mixins.
  ex: strip-unit(100px); -> 100
======================================== */
/* ========================================
  Get Line Hight Function
  @param {Number} $font-size - Font size with px
  @param {Number} $line-feed - Line feed with no-unit
  @return {Number} $line-height - Line hight
  ex: get-line-height(16); -> 1.5
======================================== */
/* ========================================
  Font Size Variables
======================================== */
/* ========================================
  Get Rem Function
  @param {Number} $font-size - Number to convert px to rem
  @param {Number} $root-font-size - Number to divite target value by root's font size
  @return {Number} $rem - Number with rem unit
  ex: get-rem(16px); -> 1rem
======================================== */
/* ========================================
  Get Vw Function
  @param {Number} $px - Number to convert px to vw
  @param {Number} $viewport - Viewport size
  @return {Number} $vw - Number with vw unit
  ex: get-vw(30px); -> 8vw
======================================== */
/* ========================================
  Z-index Function
======================================== */
/* ========================================
  Color Variables
======================================== */
/* ========================================
  Font Variables
======================================== */
/* ========================================
  Transition Variables
======================================== */
/* ========================================
  Content Width Variables
======================================== */
/* ========================================
  Header
======================================== */
/* ========================================
  会員登録メール送信ページ
======================================== */
.page-entryonetimepasswordsend .pane-header + .pane-main {
  padding-top: 0;
}
.page-entryonetimepasswordsend .block-onetimepassword-send {
  margin: 0;
}
.page-entryonetimepasswordsend .block-member-terms--header {
  background: #f5f5f5;
  color: #000;
  font-size: 18px;
  font-weight: 900;
  line-height: normal;
  padding: 18px 15px 17px;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .page-entryonetimepasswordsend .block-member-terms--header {
    background-color: transparent;
    font-size: 24px;
    padding: 18px 0 19px;
    width: 100%;
    position: static;
    transform: none;
  }
}
.page-entryonetimepasswordsend .block-member-terms--message {
  color: #050505;
  font-size: 15px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: -0.02em;
}
.page-entryonetimepasswordsend form[name=agreebody] {
  display: none;
}
.page-entryonetimepasswordsend .block-onetimepassword-send--mail input#mail {
  width: 100%;
  border-radius: 3px;
  border: 1px solid #ccc;
}
.page-entryonetimepasswordsend .block-onetimepassword-send--mail .help-block {
  color: #737373;
  font-size: 11px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0.77px;
}
.page-entryonetimepasswordsend .p-entryonetimepasswordsend__attention p {
  color: #f00;
  font-size: 11px;
  font-weight: 400;
  line-height: 150%; /* 16.5px */
  letter-spacing: 0.77px;
}
.page-entryonetimepasswordsend .p-entryonetimepasswordsend {
  color: #000;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
  text-align: center;
  margin-top: 38px;
}
.page-entryonetimepasswordsend .p-entryonetimepasswordsend__link {
  color: #1b95e0;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
}
.page-entryonetimepasswordsend .repro-bl-embedded[data-repro-w7vz7llmb89q] {
  display: none;
}
.page-entryonetimepasswordsend .block-onetimepassword-send .action .btn {
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
  padding: 16.4px 24px;
}

/* ========================================
  会員登録メール認証ページ
======================================== */
.page-entryonetimepasswordcertify .pane-header + .pane-main {
  padding-top: 0;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify {
  margin: 0;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify--header {
  background: #f5f5f5;
  color: #000;
  font-size: 18px;
  font-weight: 900;
  line-height: normal;
  padding: 18px 15px 17px;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .page-entryonetimepasswordcertify .block-onetimepassword-certify--header {
    background-color: transparent;
    font-size: 24px;
    padding: 18px 0 19px;
    width: 100%;
  }
}
.page-entryonetimepasswordcertify #frmOnetime {
  margin-top: 28.11px;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify--code input#code {
  width: 100%;
  border-radius: 3px;
  border: 1px solid #ccc;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify .action .btn {
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
  padding: 16.4px 24px;
  margin-top: 30px;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify--back {
  display: none;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify--resend-message {
  display: none;
}
.page-entryonetimepasswordcertify .block-onetimepassword-certify--resend-link {
  display: block;
  margin-inline: auto;
}

/* ========================================
  会員登録ページ
======================================== */
.page-entry .pane-header + .pane-main {
  padding-top: 0;
}
.page-entry .block-member-info,
.page-entry .block-member-info-confirmation {
  margin-top: 0;
}
.page-entry .block-member-info h1,
.page-entry .block-member-info-confirmation h1 {
  background: #f5f5f5;
  color: #000;
  font-size: 18px;
  font-weight: 900;
  line-height: normal;
  padding: 18px 15px 17px;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info h1,
  .page-entry .block-member-info-confirmation h1 {
    background-color: transparent;
    font-size: 24px;
    padding: 18px 0 19px;
    width: 100%;
    position: static;
    transform: none;
  }
}
.page-entry .block-member-info--form,
.page-entry .block-member-info-confirmation--form {
  padding-inline: 5px;
}
.page-entry .legend {
  border-bottom: none;
  color: #000;
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
}
.page-entry .js-entry-alert {
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .page-entry .js-entry-alert {
    margin-bottom: 24px;
  }
}
.page-entry .js-entry-red-wrapper {
  margin-left: 10px;
}
.page-entry .fieldset-vertical {
  margin-top: 25px;
}
@media screen and (min-width: 768px) {
  .page-entry .form-group {
    display: table;
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info-confirmation .form-group {
    padding-top: 0;
  }
}
.page-entry .fieldset-vertical .form-group {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .page-entry .fieldset .form-group:last-child {
    border-bottom: none;
  }
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info-confirmation .fieldset .form-group:last-child {
    border-bottom: 1px solid #e5e5e5;
  }
}
@media screen and (min-width: 768px) {
  .page-entry .fieldset-vertical .form-label {
    width: fit-content;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
    background: transparent;
  }
}
.page-entry .fieldset-vertical .form-label label {
  color: #333;
  font-size: 13px;
  font-weight: 500;
  line-height: normal;
}
.page-entry .block-member-info--value-label {
  display: block;
}
.page-entry .required:after {
  background: #d8534e;
  border-radius: 3px;
  color: #fff;
  font-size: 10px;
  font-weight: 400;
  line-height: normal;
}
.page-entry .form-control {
  display: flex;
  justify-content: space-between;
}
.page-entry .form-control:has(.checktype_addr2), .page-entry .form-control:has(.checktype_cmail) {
  display: block;
}
@media screen and (min-width: 768px) {
  .page-entry .form-control {
    width: 100%;
    justify-content: flex-start;
    gap: 10px;
  }
}
.page-entry .fieldset .form-control {
  display: flex;
  flex-wrap: wrap;
}
.page-entry .fieldset .form-control .form-error {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--name .form-control {
    padding-bottom: 24px;
  }
}
.page-entry .checktype_name {
  width: calc(50% - 6.5px);
}
.page-entry .checktype_name input[type=text] {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
}
.page-entry .checktype_name input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_name .block-login--member-info-value-label {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page-entry .checktype_name {
    width: calc(40% - 6.5px);
  }
  .page-entry .checktype_name input[type=text] {
    width: 100%;
    max-width: none;
  }
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--kana .form-control {
    padding-bottom: 24px;
  }
}
.page-entry .checktype_kana {
  width: calc(50% - 6.5px);
}
.page-entry .checktype_kana input[type=text] {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
}
.page-entry .checktype_kana input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_kana .block-login--member-info-value-label {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page-entry .checktype_kana {
    width: calc(40% - 6.5px);
  }
  .page-entry .checktype_kana input[type=text] {
    width: 100%;
    max-width: none;
  }
}
.page-entry .form-control:has(.checktype_tel) {
  flex-direction: column;
}
.page-entry .checktype_tel {
  width: 100%;
}
.page-entry .checktype_tel input[type=tel],
.page-entry .checktype_tel input[type=text] {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .checktype_tel input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_tel .block-login--member-info-value-label {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page-entry .checktype_tel {
    width: 74%;
  }
}
.page-entry .checktype_mail,
.page-entry .checktype_cmail {
  width: 100%;
}
.page-entry .checktype_mail input[type=email],
.page-entry .checktype_mail input[type=text],
.page-entry .checktype_cmail input[type=email],
.page-entry .checktype_cmail input[type=text] {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .checktype_mail input[type=text]::placeholder,
.page-entry .checktype_cmail input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_mail .block-login--member-info-value-label,
.page-entry .checktype_cmail .block-login--member-info-value-label {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page-entry .checktype_mail,
  .page-entry .checktype_cmail {
    display: block;
    width: 74%;
  }
}
.page-entry .block-member-info--mail .form-control span {
  color: #333;
  font-size: 13px;
  font-weight: 500;
  line-height: normal;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--mail .form-control {
    flex-direction: column;
  }
  .page-entry .block-member-info--mail .block-member-info--custappend1 {
    border-top: 0;
  }
  .page-entry .block-member-info--mail .block-member-info--custappend1 .constraint {
    width: 0;
    padding: 0;
    background: transparent;
  }
  .page-entry .block-member-info--mail .block-member-info--custappend1 .form-control {
    padding-left: 0;
  }
}
.page-entry .checktype_zip {
  width: 120px;
}
.page-entry .checktype_zip input[type=text] {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .checktype_zip input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_zip .block-login--member-info-value-label {
  margin: 0;
}
.page-entry .checktype_pref {
  width: 120px;
}
.page-entry .checktype_pref select {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  width: 100%;
  font-weight: 400;
}
.page-entry .checktype_pref .block-login--member-info-value-label {
  margin: 0;
}
.page-entry .form-control span:has(select[name=sex]) {
  width: 120px;
}
.page-entry .form-control span:has(select[name=sex]) select {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  width: 100%;
  font-weight: 400;
}
.page-entry .form-control span:has(select[name=sex]) .block-login--member-info-value-label {
  margin: 0;
}
.page-entry .checktype_addr,
.page-entry .checktype_addr2,
.page-entry .checktype_addr3,
.page-entry .checktype_comp,
.page-entry .checktype_dept {
  width: 100%;
}
.page-entry .checktype_addr input[type=text],
.page-entry .checktype_addr2 input[type=text],
.page-entry .checktype_addr3 input[type=text],
.page-entry .checktype_comp input[type=text],
.page-entry .checktype_dept input[type=text] {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .checktype_addr input[type=text]::placeholder,
.page-entry .checktype_addr2 input[type=text]::placeholder,
.page-entry .checktype_addr3 input[type=text]::placeholder,
.page-entry .checktype_comp input[type=text]::placeholder,
.page-entry .checktype_dept input[type=text]::placeholder {
  color: #aaa;
  font-weight: 400;
}
.page-entry .checktype_addr .block-login--member-info-value-label,
.page-entry .checktype_addr2 .block-login--member-info-value-label,
.page-entry .checktype_addr3 .block-login--member-info-value-label,
.page-entry .checktype_comp .block-login--member-info-value-label,
.page-entry .checktype_dept .block-login--member-info-value-label {
  margin: 0;
}
.page-entry .form-control:has(.checktype_date) {
  flex-direction: column;
  color: #aaa;
  font-size: 14px;
  font-weight: 400;
  line-height: normal;
}
.page-entry .form-control:has(.checktype_date) .checktype_date {
  display: flex;
  align-items: center;
}
.page-entry .form-control:has(.checktype_date) select {
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
  width: 100%;
  max-width: 88px;
  margin-right: 4.67px;
}
.page-entry .form-control:has(.checktype_date) select[name=mm_birth],
.page-entry .form-control:has(.checktype_date) select[name=dd_birth] {
  margin-left: 11px;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--addr2 .form-control {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .page-entry .form-group.block-member-info--custappend1 {
    padding-top: 0;
    margin-top: 0;
  }
}
.page-entry .form-group.block-member-info--custappend1 .form-label {
  display: none;
}
.page-entry .form-group.block-member-info--custappend1 label.control-label {
  color: #050505;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 175%; /* 26.25px */
}
.page-entry .form-group.block-member-info--custappend1 p.help-block {
  display: none;
}
.page-entry .checktype_custappend > p {
  display: none;
}
.page-entry .checktype_custappend .newsletter-optin {
  display: block;
  color: #050505;
  font-size: 14px;
  font-weight: 400;
  line-height: 175%; /* 26.25px */
}
.page-entry .checktype_custappend p.newsletter-note {
  display: inline-block;
  color: #050505;
  font-size: 12px;
  font-weight: 400;
  line-height: 175%; /* 26.25px */
  padding-left: 22px;
}
@media screen and (min-width: 768px) {
  .page-entry .checktype_custappend p.newsletter-note {
    font-size: 13px;
  }
}
.page-entry .checktype_custappend label.radio {
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
}
.page-entry .block-member-info--mailnews .form-control {
  flex-direction: column;
}
.page-entry .block-member-info--mailnews label.radio {
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
}
.page-entry .block-member-info--mailnews #student_readme {
  color: #050505;
  font-size: 13px;
  font-weight: 400;
  line-height: 175%; /* 26.25px */
}
.page-entry .form-group#input_univ_info .form-control span {
  width: 100%;
}
.page-entry .form-group#input_univ_info .form-control span input {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .form-group#input_univ_info select#nensei,
.page-entry .form-group#input_univ_info select#schoolyear_cd {
  width: 120px;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
.page-entry .block-member-info--message {
  color: #050505;
  font-size: 14px;
  font-weight: 400;
  line-height: 175%; /* 24.5px */
}
.page-entry .block-member-info--pwd {
  position: relative;
}
.page-entry .block-member-info--pwd .form-control {
  flex-direction: column;
}
.page-entry .block-member-info--pwd .checktype_pwd input {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #e9e9e9;
  padding: 13px 12.66px;
  font-weight: 400;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--pwd .checktype_pwd input {
    width: 74%;
  }
}
.page-entry .block-member-info--pwd .block-login--display-password {
  height: 16px;
  display: flex;
  position: absolute;
  top: 50px;
  right: 8px;
  margin-top: 0;
}
.page-entry .block-member-info--pwd .block-login--display-password span {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info--pwd .block-login--display-password {
    top: 31px;
    right: auto;
    left: 700px;
  }
}
.page-entry .block-member-info--pwd .block-login--display-password input[type=checkbox] {
  appearance: none;
  background: url(https://www.y-aoyama.jp/ec/img/usr/login/icn-eye.png);
  background-size: contain;
  background-repeat: no-repeat;
  border: none !important;
  margin: 0 !important;
  width: 16px !important;
  height: 16px !important;
}
.page-entry .block-member-info--pwd .block-login--display-password input[type=checkbox]:checked {
  background: url(https://www.y-aoyama.jp/ec/img/usr/login/icn-eye-checked.png);
  background-size: contain;
  background-repeat: no-repeat;
  border: none !important;
  margin: 0 !important;
  width: 16px !important;
  height: 16px !important;
}
.page-entry .block-member-info--pwd p.help-block.block-member-info-item-message {
  display: none;
}
.page-entry .block-member-info--pwd .count-msg#pwd_count_msg {
  color: #d8534e;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
}
.page-entry .block-terms-agreement {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 12px 0;
  color: #000;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
}
.page-entry .block-terms-agreement input[type=checkbox] {
  width: 14px;
  height: 14px;
  margin: 0 4px 0 0;
}
.page-entry .block-terms-agreement label {
  margin: 0;
}
.page-entry .block-terms-agreement .terms-link {
  color: #1b95e0;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
}
.page-entry .action .btn#confirmButton {
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
  padding: 16.4px 24px;
}
.page-entry .action .btn.block-member-info-confirmation--forward {
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
  padding: 16.4px 24px;
}
.page-entry .action .btn.block-member-info-confirmation--back {
  width: 100%;
  max-width: 345px;
  margin-inline: auto;
  padding: 16.4px 24px;
}
@media screen and (min-width: 768px) {
  .page-entry .block-member-info-confirmation--form .action-buttons {
    margin-top: 64px;
  }
}

/* ========================================
  会員登録完了ページ
======================================== */
.page-entrycomplete .pane-header + .pane-main {
  padding-top: 0;
}
.page-entrycomplete .block-member-registration-completed {
  margin-top: 0;
  margin-inline: 15px;
}
@media screen and (min-width: 768px) {
  .page-entrycomplete .block-member-registration-completed {
    margin-inline: auto;
  }
}
.page-entrycomplete .block-member-registration-completed h1 {
  background: #f5f5f5;
  color: #000;
  font-size: 18px;
  font-weight: 900;
  line-height: normal;
  padding: 18px 15px 17px;
  width: 100vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .page-entrycomplete .block-member-registration-completed h1 {
    background-color: transparent;
    font-size: 24px;
    padding: 18px 0 19px;
    width: 100%;
    position: static;
    transform: none;
  }
}
.page-entrycomplete .block-member-registration-completed--message {
  padding: 9px 0 56px;
}
.page-entrycomplete .action-buttons:has(.block-member-registration-completed--forward) {
  display: none;
}
.page-entrycomplete .action-buttons:has(.block-member-registration-completed--forward-to-mypage) {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-entrycomplete .action-buttons:has(.block-member-registration-completed--back-to-cart) {
    margin-top: 64px;
  }
}
.page-entrycomplete .block-member-registration-completed--back-to-cart {
  width: 100%;
  padding: 16.4px 24px;
  max-width: 335px;
}

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