@charset "UTF-8";

/* =========================================================
   Awashima Coffee - MyPage
   Development / 2026-09-03
========================================================= */

/* ---------- EC-CUBE layout reset ---------- */
.aw-mypage_page .ec-layoutRole,
.aw-mypage_page .ec-layoutRole__contents,
.aw-mypage_page .ec-layoutRole__main{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}

/* ---------- page base ---------- */
.aw-mypage{
  width:100%;
  max-width:1120px;
  margin:150px auto 120px;
  padding:0 20px;
  box-sizing:border-box;
}

.aw-mypage__header{
  margin:0 0 44px;
  text-align:center;
}

.aw-mypage__label{
  margin:0 0 10px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:12px;
  letter-spacing:.28em;
}

.aw-mypage__title{
  margin:0;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:38px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.08em;
}

.aw-mypage__lead{
  margin:16px 0 0;
  color:#6f6258;
  font-size:15px;
  line-height:2;
  letter-spacing:.08em;
  text-align:center;
}

.aw-mypage__content{
  margin-top:0;
}

.aw-mypage__sectionHead{
  margin:0 0 28px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(45,41,36,.16);
}

.aw-mypage__sectionHead h2{
  margin:0;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:22px;
  font-weight:400;
  letter-spacing:.12em;
}

.aw-mypage__count{
  margin:0 0 28px;
  color:#6f6258;
  font-size:15px;
  line-height:2;
  letter-spacing:.06em;
}

.aw-mypage__empty p{
  margin:0;
  color:#6f6258;
  font-size:15px;
  line-height:2;
  letter-spacing:.08em;
}

/* =========================================================
   MyPage Nav
========================================================= */

.aw-mypage__nav{
  width:100%;
  max-width:1120px;
  margin:0 auto 72px;
}

.aw-mypageNav{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:0;
  width:100%;
  border-left:1px solid #d8d3cd;
}

.aw-mypageNav a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:64px;
  padding:0 16px;
  border-top:1px solid #d8d3cd;
  border-right:1px solid #d8d3cd;
  border-bottom:1px solid #d8d3cd;
  background:#fff;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:16px;
  font-weight:400;
  line-height:1.6;
  letter-spacing:.06em;
  text-align:center;
  text-decoration:none;
  transition:color .25s ease,background .25s ease,border-color .25s ease;
}

.aw-mypageNav a:hover{
  background:#faf7f3;
  color:#7d4d28;
  text-decoration:none;
}

.aw-mypageNav a.is-current{
  position:relative;
  z-index:2;
  border:1px solid #8b5a35;
  background:#f7f3ee;
  color:#7d4d28;
  font-weight:500;
}

/* =========================================================
   Order History List
========================================================= */

.aw-mypage__historyList{
  display:flex;
  flex-direction:column;
  gap:36px;
}

.aw-mypageHistory{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:36px;
  padding:32px;
  border:1px solid rgba(45,41,36,.14);
  background:#fff;
}

.aw-mypageHistory__header{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:28px;
}

.aw-mypageHistory__meta{
  color:#4c4540;
  font-family:"Noto Serif JP",serif;
  font-size:14px;
  line-height:1.9;
  letter-spacing:.05em;
}

.aw-mypageHistory__date{
  margin:0 0 18px;
  color:#6f6258;
  font-size:13px;
}

.aw-mypageHistory__meta dl{
  margin:0 0 18px;
}

.aw-mypageHistory__meta dt{
  margin:0 0 4px;
  color:#2d2924;
  font-weight:600;
}

.aw-mypageHistory__meta dd{
  margin:0;
}

.aw-mypageHistory__detailBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:180px;
  height:46px;
  border:1px solid rgba(75,40,23,.28);
  background:#fff;
  color:#4b2817;
  font-family:"Noto Serif JP",serif;
  font-size:14px;
  letter-spacing:.08em;
  text-decoration:none;
}

.aw-mypageHistory__detailBtn:hover{
  background:#f7f3ee;
  text-decoration:none;
}

.aw-mypageHistory__items{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.aw-mypageHistory__item{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:28px;
  align-items:start;
}

.aw-mypageHistory__image{
  width:180px;
  max-width:180px;
}

.aw-mypageHistory__image img{
  display:block;
  width:180px !important;
  max-width:180px !important;
  height:144px !important;
  object-fit:cover !important;
}

.aw-mypageHistory__summary{
  color:#4c4540;
  font-family:"Noto Serif JP",serif;
  font-size:15px;
  line-height:1.9;
  letter-spacing:.05em;
}

.aw-mypageHistory__roast{
  margin:0 0 10px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:13px;
  line-height:1.6;
  letter-spacing:.16em;
}

.aw-mypageHistory__name{
  margin:0 0 12px;
  color:#2d2924;
  font-size:20px;
  font-weight:500;
  line-height:1.7;
}

.aw-mypageHistory__spec{
  margin:0;
  color:#6f6258;
}

.aw-mypageHistory__price{
  margin:16px 0 0;
  color:#6f6258;
  font-size:15px;
}

.aw-mypage__pager{
  margin:56px 0 0;
}

/* ---------- footer breadcrumb ---------- */
.aw-mypage_page .aw-footer__breadcrumb{
  display:none !important;
}

/* =========================================================
   SP - MyPage
========================================================= */

@media screen and (max-width:900px){

  .aw-mypage{
    width:100% !important;
    max-width:none !important;
    margin:96px auto 90px !important;
    padding:0 20px !important;
    box-sizing:border-box !important;
  }

  .aw-mypage__header{
    margin:0 0 56px !important;
    text-align:center !important;
  }

  .aw-mypage__label{
    margin:0 0 12px !important;
    font-size:11px !important;
    letter-spacing:.26em !important;
  }

  .aw-mypage__title{
    font-size:36px !important;
    line-height:1.45 !important;
    letter-spacing:.08em !important;
  }

  .aw-mypage__lead{
    max-width:100% !important;
    margin:18px auto 0 !important;
    font-size:15px !important;
    line-height:2.15 !important;
    letter-spacing:.06em !important;
    text-align:center !important;
  }

  .aw-mypage__sectionHead{
    margin:0 0 32px !important;
    padding-bottom:14px !important;
  }

  .aw-mypage__sectionHead h2{
    font-size:26px !important;
    line-height:1.6 !important;
  }

  .aw-mypage__nav{
    margin:0 auto 64px !important;
  }

  .aw-mypageNav{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:1px !important;
    border:none !important;
    background:#d8d3cd !important;
  }

  .aw-mypageNav a{
    min-height:58px !important;
    padding:0 10px !important;
    border:none !important;
    background:#fff !important;
    color:#2d2924 !important;
    font-size:15px !important;
    line-height:1.6 !important;
    letter-spacing:.06em !important;
  }

  .aw-mypageNav a.is-current{
    border:none !important;
    background:#f7f3ee !important;
    color:#7d4d28 !important;
    font-weight:500 !important;
    box-shadow:inset 0 0 0 2px #8b5a35 !important;
  }

  .aw-mypageNav a[href*="withdraw"]{
    grid-column:1 / -1 !important;
    min-height:54px !important;
    background:#faf8f5 !important;
    color:#7a6a5f !important;
    font-size:14px !important;
  }

  .aw-mypageHistory{
    grid-template-columns:1fr;
    gap:24px;
    padding:24px 20px;
  }

  .aw-mypageHistory__item{
    grid-template-columns:120px minmax(0,1fr);
    gap:18px;
  }

  .aw-mypageHistory__image,
  .aw-mypageHistory__image img{
    width:120px !important;
    max-width:120px !important;
    height:96px !important;
  }

  .aw-mypageHistory__detailBtn{
    width:100%;
  }

  .aw-mypageHistory__name{
    font-size:18px;
  }
}

/* =========================================================
   Login override
========================================================= */

/* =========================================================
   Awashima Coffee - MyPage Login
   Development override / 2026-09-03
   v2
========================================================= */

/* EC-CUBE layout reset - login only */
.aw-login_page .ec-layoutRole,
.aw-login_page .ec-layoutRole__contents,
.aw-login_page .ec-layoutRole__main{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
}

/* page spacing */
.aw-login_page .aw-mypage--login{
  width:100%;
  max-width:1120px;
  margin:150px auto 0;
  padding:0 20px;
  box-sizing:border-box;
}

.aw-login_page .aw-mypage__header{
  margin:0 0 50px;
  text-align:center;
}

.aw-login_page .aw-mypage__label{
  margin:0 0 10px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:12px;
  letter-spacing:.28em;
}

.aw-login_page .aw-mypage__title{
  margin:0;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:38px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.08em;
}

.aw-login_page .aw-mypage__lead{
  max-width:720px;
  margin:16px auto 0;
  color:#6f6258;
  font-size:15px;
  line-height:2;
  letter-spacing:.08em;
  text-align:center;
}

/* login box */
.aw-login_page .aw-loginBox{
  width:100%;
  max-width:560px;
  margin:0 auto 150px;
}

.aw-login_page .aw-loginBox form{
  width:100%;
  margin:0;
}

.aw-login_page .aw-loginBox__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:110px;
  height:110px;
  margin:0 auto 40px;
  border:1px solid #ddd6cf;
  border-radius:50%;
  background:#faf8f5;
  box-sizing:border-box;
}

.aw-login_page .aw-loginBox__icon img{
  display:block;
  width:42px;
  height:auto;
  opacity:.75;
}

/* fields */
.aw-login_page .aw-loginBox__field{
  margin:0 0 18px;
}

.aw-login_page .aw-loginBox__field input{
  display:block;
  width:100% !important;
  max-width:none !important;
  height:56px !important;
  margin:0 !important;
  padding:0 18px !important;
  border:1px solid #d8d3cd !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  color:#2d2924 !important;
  font-size:15px !important;
  line-height:1.4;
  box-sizing:border-box;
  transition:border-color .25s ease;
}

.aw-login_page .aw-loginBox__field input:focus{
  border-color:#8b5a35 !important;
  outline:none !important;
  box-shadow:none !important;
}

.aw-login_page .aw-loginBox__field input::placeholder{
  color:#a79d95;
  opacity:1;
}

/* remember me - checkbox + text in one line */
.aw-login_page .aw-loginBox__memory{
  margin:10px 0 30px;
  color:#6f6258;
  font-size:14px;
  line-height:1.6;
}

.aw-login_page .aw-loginBox__memory label{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
  color:#6f6258 !important;
  font-size:14px !important;
  line-height:1.6 !important;
  white-space:nowrap;
  cursor:pointer;
}

.aw-login_page .aw-loginBox__memory .ec-checkbox{
  margin:0 !important;
  padding:0 !important;
}

.aw-login_page .aw-loginBox__memory input[type="checkbox"]{
  flex:0 0 auto;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  vertical-align:middle !important;
}

.aw-login_page .aw-loginBox__memory label > span,
.aw-login_page .aw-loginBox__memory label .ec-label{
  display:inline !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.6 !important;
  white-space:nowrap !important;
}

/* message / error */
.aw-login_page .aw-loginBox__message{
  margin:18px 0;
  color:#7d4d28;
  font-size:14px;
  line-height:1.8;
}

.aw-login_page .aw-loginBox__error{
  margin:18px 0;
  color:#b83b3b;
  font-size:14px;
  line-height:1.8;
}

/* button */
.aw-login_page .aw-loginBox__actions{
  margin:10px 0 0;
  text-align:center;
}

.aw-login_page .aw-loginBox__actions .aw-mypageBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
  height:58px;
  margin:0;
  padding:0 24px;
  border:1px solid #4b2817;
  border-radius:0;
  background:#4b2817;
  color:#fff;
  font-family:"Noto Serif JP",serif;
  font-size:18px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.12em;
  cursor:pointer;
  box-sizing:border-box;
  transition:background .25s ease,border-color .25s ease;
}

.aw-login_page .aw-loginBox__actions .aw-mypageBtn:hover{
  border-color:#6b4028;
  background:#6b4028;
}

/* links */
.aw-login_page .aw-loginBox__links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  margin:28px 0 0;
  font-size:14px;
  line-height:1.8;
}

.aw-login_page .aw-loginBox__links a{
  color:#7d4d28;
  text-decoration:none;
  transition:opacity .2s ease;
}

.aw-login_page .aw-loginBox__links a:hover{
  opacity:.7;
  text-decoration:none;
}

/* hide breadcrumb on this page */
.aw-login_page .aw-footer__breadcrumb{
  display:none !important;
}

@media screen and (max-width:900px){

  .aw-login_page .aw-mypage--login{
    width:100% !important;
    max-width:none !important;
    margin:96px auto 0 !important;
    padding:0 20px !important;
  }

  .aw-login_page .aw-mypage__header{
    margin:0 0 46px !important;
  }

  .aw-login_page .aw-mypage__label{
    margin:0 0 12px !important;
    font-size:11px !important;
    letter-spacing:.26em !important;
  }

  .aw-login_page .aw-mypage__title{
    font-size:36px !important;
    line-height:1.45 !important;
  }

  .aw-login_page .aw-mypage__lead{
    max-width:100% !important;
    margin:18px auto 0 !important;
    font-size:15px !important;
    line-height:2.15 !important;
    letter-spacing:.06em !important;
  }

  .aw-login_page .aw-loginBox{
    max-width:560px;
    margin:0 auto 104px;
  }

  .aw-login_page .aw-loginBox__icon{
    width:92px;
    height:92px;
    margin-bottom:34px;
  }

  .aw-login_page .aw-loginBox__icon img{
    width:36px;
  }

  .aw-login_page .aw-loginBox__field{
    margin-bottom:16px;
  }

  .aw-login_page .aw-loginBox__field input{
    height:54px !important;
    padding:0 15px !important;
    font-size:16px !important;
  }

  .aw-login_page .aw-loginBox__memory{
    margin:10px 0 26px;
    font-size:14px;
  }

  .aw-login_page .aw-loginBox__memory label{
    gap:9px !important;
    white-space:normal;
  }

  .aw-login_page .aw-loginBox__actions .aw-mypageBtn{
    height:56px;
    font-size:17px;
  }

  .aw-login_page .aw-loginBox__links{
    flex-direction:column;
    gap:12px;
    margin-top:26px;
  }
}


/* =========================================================
   MyPage Favorite
   mypage.css 末尾へ追加
========================================================= */

.aw-mypageFavoriteList{
  display:flex;
  flex-direction:column;
  gap:28px;
}

.aw-mypageFavorite{
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  gap:36px;
  align-items:center;
  padding:28px;
  border:1px solid rgba(45,41,36,.14);
  background:#fff;
}

.aw-mypageFavorite__image{
  display:block;
  overflow:hidden;
  background:#f7f3ee;
}

.aw-mypageFavorite__image img{
  display:block;
  width:100%;
  aspect-ratio:5 / 4;
  object-fit:cover;
}

.aw-mypageFavorite__body{
  min-width:0;
}

.aw-mypageFavorite__roast{
  margin:0 0 10px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:13px;
  letter-spacing:.16em;
}

.aw-mypageFavorite__name{
  margin:0 0 14px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:21px;
  font-weight:400;
  line-height:1.2;
  letter-spacing:.06em;
}

.aw-mypageFavorite__name a{
  color:inherit;
  text-decoration:none;
}

.aw-mypageFavorite__price{
  margin:0 0 28px;
  color:#7d4d28;
  font-size:16px;
  letter-spacing:.06em;
}

.aw-mypageFavorite__actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.aw-mypageFavorite__detail,
.aw-mypageFavorite__remove{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:180px;
  height:46px;
  padding:0 24px;
  box-sizing:border-box;
  font-size:14px;
  line-height:1.4;
  letter-spacing:.08em;
  text-decoration:none;
  transition:.25s;
}

.aw-mypageFavorite__detail{
  background:#4b2817;
  color:#fff;
}

.aw-mypageFavorite__detail:hover{
  background:#6b4028;
  color:#fff;
  text-decoration:none;
}

.aw-mypageFavorite__remove{
  border:1px solid rgba(45,41,36,.18);
  background:#fff;
  color:#6f6258;
}

.aw-mypageFavorite__remove:hover{
  border-color:#8b5a35;
  color:#8b5a35;
  text-decoration:none;
}

@media screen and (max-width:768px){

  .aw-mypageFavorite{
    grid-template-columns:1fr;
    gap:24px;
    padding:24px;
  }

  .aw-mypageFavorite__actions{
    flex-direction:column;
  }

  .aw-mypageFavorite__detail,
  .aw-mypageFavorite__remove{
    width:100%;
    min-width:0;
  }

}


/* =========================================================
   MyPage Delivery
   mypage.css 末尾へ追加
========================================================= */

.aw-mypage__sectionHead--withAction{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:32px;
}

.aw-mypage__sectionAction{
  margin-left:auto;
}

.aw-mypageBtn{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-width:280px;
  height:58px;
  border:none;
  background:#4b2817;
  color:#fff;
  font-family:"Noto Serif JP",serif;
  font-size:18px;
  letter-spacing:.12em;
  text-decoration:none;
  cursor:pointer;
  transition:.25s;
}

.aw-mypageBtn:hover{
  background:#6b4028;
  color:#fff;
  text-decoration:none;
}

.aw-mypageBtn--small{
  min-width:300px;
  height:56px;
  font-size:17px;
}

.aw-mypage__error{
  color:#c34d3b;
  font-size:14px;
}

.aw-mypageAddressList{
  display:flex;
  flex-direction:column;
  gap:28px;
}

.aw-mypageAddress{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  padding:32px;
  border:1px solid rgba(45,41,36,.14);
  background:#fff;
}

.aw-mypageAddress__body{
  flex:1;
}

.aw-mypageAddress__name{
  margin:0 0 14px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:20px;
}

.aw-mypageAddress__company{
  margin:0 0 10px;
  color:#6f6258;
  font-size:15px;
  line-height:1.8;
}

.aw-mypageAddress__address{
  margin:0;
  color:#6f6258;
  font-size:15px;
  line-height:2;
  letter-spacing:.05em;
}

.aw-mypageAddress__tel{
  margin:16px 0 0;
  color:#6f6258;
  font-size:15px;
}

.aw-mypageAddress__actions{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-left:48px;
}

.aw-mypageAddress__edit,
.aw-mypageAddress__remove{
  display:flex;
  justify-content:center;
  align-items:center;
  width:140px;
  height:44px;
  font-size:14px;
  text-decoration:none;
  transition:.25s;
}

.aw-mypageAddress__edit{
  background:#4b2817;
  color:#fff;
}

.aw-mypageAddress__edit:hover{
  background:#6b4028;
  color:#fff;
  text-decoration:none;
}

.aw-mypageAddress__remove{
  border:1px solid rgba(45,41,36,.18);
  background:#fff;
  color:#6f6258;
}

.aw-mypageAddress__remove:hover{
  border-color:#8b5a35;
  color:#8b5a35;
  text-decoration:none;
}

/* Delivery form */
.aw-mypageForm{
  width:100%;
  max-width:none;
  margin:0;
}

.aw-mypageForm .ec-borderedDefs{
  margin-top:0;
  padding-top:0;
  border-top:0;
}

.aw-mypageForm .ec-borderedDefs dl{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:48px;
  align-items:flex-start;
  margin:0;
  padding:24px 0;
  border-bottom:1px dotted rgba(45,41,36,.18);
}

.aw-mypageForm .ec-borderedDefs dt{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:52px;
  padding-left:1.2em;
  color:#2d2924;
  font-size:15px;
  font-weight:500;
  letter-spacing:.06em;
  white-space:nowrap;
}

.aw-mypageForm .ec-borderedDefs dd{
  margin:0;
}

.aw-mypageForm .ec-halfInput{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}

.aw-mypageForm .ec-halfInput input,
.aw-mypageForm input[type="text"],
.aw-mypageForm input[type="email"],
.aw-mypageForm input[type="password"],
.aw-mypageForm input[type="tel"],
.aw-mypageForm select,
.aw-mypageForm textarea{
  width:100%;
  max-width:none;
  min-height:52px;
  box-sizing:border-box;
}

.aw-mypageForm .ec-input + .ec-input,
.aw-mypageForm .ec-select + .ec-input,
.aw-mypageForm .ec-zipInput + .ec-select{
  margin-top:14px;
}

.aw-mypageForm .ec-zipInput > span:first-child{
  display:inline-block;
  min-width:24px;
  margin-right:12px;
  color:#2d2924;
  font-size:20px !important;
  font-weight:500;
}

.aw-mypageForm .ec-zipInputHelp{
  margin-top:8px;
}

.aw-mypageForm .ec-zipInputHelp a{
  color:#7d4d28;
  font-size:14px;
}

.aw-mypageForm__actions{
  margin:72px 0 0;
  text-align:center;
}

@media screen and (max-width:900px){

  .aw-mypage__sectionHead--withAction{
    flex-direction:column;
    align-items:flex-start;
  }

  .aw-mypage__sectionAction{
    width:100%;
    margin-left:0;
  }

  .aw-mypageBtn--small{
    width:100%;
    min-width:0;
  }

  .aw-mypageAddress{
    flex-direction:column;
    gap:28px;
  }

  .aw-mypageAddress__actions{
    flex-direction:row;
    width:100%;
    margin-left:0;
  }

  .aw-mypageAddress__edit,
  .aw-mypageAddress__remove{
    flex:1;
    width:auto;
  }

  .aw-mypageForm .ec-borderedDefs dl{
    display:block;
    padding:0 0 30px;
  }

  .aw-mypageForm .ec-borderedDefs dl + dl{
    padding-top:30px;
  }

  .aw-mypageForm .ec-borderedDefs dt{
    width:100%;
    min-height:0;
    margin:0 0 14px;
    padding:0;
    font-size:16px;
  }

  .aw-mypageForm .ec-borderedDefs dd{
    width:100%;
  }

  .aw-mypageForm .ec-halfInput{
    grid-template-columns:1fr;
    gap:14px;
  }

  .aw-mypageForm__actions{
    margin-top:48px;
  }

  .aw-mypageForm__actions .aw-mypageBtn{
    width:100%;
    min-width:0;
  }

}


/* =========================================================
   MyPage Delivery Form - label / postal row tune
   2026-09-03
   mypage.css の末尾へ追加
========================================================= */

/* 必須表示の被り防止 */
.aw-mypageForm .ec-borderedDefs dt{
  column-gap:18px !important;
}

.aw-mypageForm .ec-borderedDefs dt .ec-label{
  display:inline-flex !important;
  align-items:center !important;
  gap:14px !important;
  white-space:nowrap !important;
}

.aw-mypageForm .ec-borderedDefs dt .ec-required{
  position:static !important;
  display:inline-block !important;
  margin:0 !important;
  padding:0 !important;
  color:#d35d4f !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  transform:none !important;
}

/* 郵便番号：〒 + 入力欄 + 郵便番号検索 を横並び */
.aw-mypageForm .ec-zipInput{
  display:grid !important;
  grid-template-columns:auto minmax(0,390px) auto !important;
  align-items:center !important;
  column-gap:12px !important;
  row-gap:8px !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

.aw-mypageForm .ec-zipInput > span:first-child{
  min-width:24px !important;
  margin:0 !important;
  color:#2d2924 !important;
  font-size:20px !important;
  font-weight:500 !important;
  line-height:1 !important;
}

.aw-mypageForm .ec-zipInput input{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

.aw-mypageForm .ec-zipInputHelp{
  display:block !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}

.aw-mypageForm .ec-zipInputHelp a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:150px !important;
  min-height:52px !important;
  margin:0 !important;
  padding:0 18px !important;
  border:1px solid rgba(75,40,23,.28) !important;
  background:#fff !important;
  color:#7d4d28 !important;
  font-size:14px !important;
  line-height:1.4 !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
  white-space:nowrap !important;
}

.aw-mypageForm .ec-zipInputHelp a:hover{
  border-color:#8b5a35 !important;
  background:#faf7f3 !important;
  color:#7d4d28 !important;
}

/* 郵便番号エラーは次行へ */
.aw-mypageForm .ec-zipInput .ec-errorMessage{
  grid-column:2 / -1 !important;
  margin:0 !important;
}

/* SPは縦配置へ戻す */
@media screen and (max-width:900px){

  .aw-mypageForm .ec-borderedDefs dt{
    column-gap:12px !important;
  }

  .aw-mypageForm .ec-zipInput{
    grid-template-columns:auto minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:12px !important;
  }

  .aw-mypageForm .ec-zipInputHelp{
    grid-column:2 !important;
  }

  .aw-mypageForm .ec-zipInputHelp a{
    width:100% !important;
    min-width:0 !important;
    min-height:48px !important;
  }

  .aw-mypageForm .ec-zipInput .ec-errorMessage{
    grid-column:2 !important;
  }

}

/* =========================================================
   必須ラベル位置調整
========================================================= */

/* 項目名と必須表示の間隔を確保 */
.aw-mypageForm .ec-borderedDefs dt .ec-label{
  display:inline-flex !important;
  align-items:center !important;
  gap:40px !important;
  white-space:nowrap !important;
}

/* EC-CUBE標準の必須表示位置をリセット */
.aw-mypageForm .ec-borderedDefs dt .ec-required{
  position:static !important;
  display:inline-block !important;
  margin-left:40px !important;
  transform:none !important;
  white-space:nowrap !important;
}

/* =========================================================
   MyPage Withdraw
   mypage.css 末尾へ追加
========================================================= */

.aw-mypageWithdraw{
  max-width:760px;
  margin:0 auto;
  padding:64px 40px 0;
  text-align:center;
}

.aw-mypageWithdraw__mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:84px;
  height:84px;
  margin:0 auto 34px;
  border:1px solid rgba(75,40,23,.20);
  border-radius:50%;
  background:#faf7f3;
  color:#8b5a35;
  font-family:"Noto Serif JP",serif;
  font-size:38px;
  font-weight:400;
  line-height:1;
}

.aw-mypageWithdraw__title{
  margin:0 0 22px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:24px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.08em;
}

.aw-mypageWithdraw__description{
  margin:0;
  color:#6f6258;
  font-size:15px;
  line-height:2.2;
  letter-spacing:.06em;
}

.aw-mypageWithdraw__actions{
  margin:48px 0 0;
  text-align:center;
}

.aw-mypageBtn--withdraw{
  background:#fff;
  color:#4b2817;
  border:1px solid rgba(75,40,23,.32);
}

.aw-mypageBtn--withdraw:hover{
  background:#4b2817;
  color:#fff;
  border-color:#4b2817;
}

/* =========================================================
   Withdraw Complete
========================================================= */

.aw-mypage--withdrawComplete{
  max-width:1120px;
  margin:150px auto 120px;
}

.aw-mypageComplete{
  max-width:760px;
  margin:0 auto;
  padding:64px 40px 0;
  text-align:center;
}

.aw-mypageComplete h2{
  margin:0 0 24px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:26px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.08em;
}

.aw-mypageComplete p{
  margin:0;
  color:#6f6258;
  font-size:15px;
  line-height:2.2;
  letter-spacing:.06em;
}

.aw-mypageComplete__actions{
  margin:48px 0 0;
  text-align:center;
}

.aw-mypageComplete__actions .aw-mypageBtn{
  min-width:300px;
}

/* =========================================================
   SP
========================================================= */

@media screen and (max-width:900px){

  .aw-mypageWithdraw,
  .aw-mypageComplete{
    padding:44px 0 0;
  }

  .aw-mypageWithdraw__mark{
    width:72px;
    height:72px;
    margin-bottom:28px;
    font-size:32px;
  }

  .aw-mypageWithdraw__title{
    font-size:22px;
  }

  .aw-mypageWithdraw__description,
  .aw-mypageComplete p{
    font-size:15px;
    line-height:2.1;
  }

  .aw-mypageWithdraw__actions,
  .aw-mypageComplete__actions{
    margin-top:40px;
  }

  .aw-mypageWithdraw__actions .aw-mypageBtn,
  .aw-mypageComplete__actions .aw-mypageBtn{
    width:100%;
    min-width:0;
  }

}

/* =========================================================
   MyPage Withdraw Confirm
   mypage.css 末尾へ追加
========================================================= */

.aw-mypageWithdrawConfirm{
  max-width:760px;
  margin:0 auto;
  padding:64px 40px 0;
  text-align:center;
}

.aw-mypageWithdrawConfirm__title{
  margin:0 0 22px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:24px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.08em;
}

.aw-mypageWithdrawConfirm__description{
  margin:0;
  color:#6f6258;
  font-size:15px;
  line-height:2.2;
  letter-spacing:.06em;
}

.aw-mypageWithdrawConfirm__actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  margin:48px 0 0;
}

.aw-mypageWithdrawConfirm__actions .aw-mypageBtn{
  width:100%;
  max-width:390px;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  text-decoration:none;
}

.aw-mypageBtn--primary{
  background:#4b2817;
  color:#fff;
  border:1px solid #4b2817;
}

.aw-mypageBtn--primary:hover{
  background:#3d2113;
  color:#fff;
  border-color:#3d2113;
}

@media screen and (max-width:900px){

  .aw-mypageWithdrawConfirm{
    padding:44px 0 0;
  }

  .aw-mypageWithdrawConfirm__title{
    font-size:22px;
  }

  .aw-mypageWithdrawConfirm__description{
    font-size:15px;
    line-height:2.1;
  }

  .aw-mypageWithdrawConfirm__actions{
    margin-top:40px;
  }

  .aw-mypageWithdrawConfirm__actions .aw-mypageBtn{
    width:100%;
    max-width:none;
  }
}

/* =========================================================
   Entry form final tuning
   2026-09-05
========================================================= */

/* ---------------------------------------------------------
   必須表示の重なりを解消
   EC-CUBE標準の .ec-required を1つだけ自然に表示
--------------------------------------------------------- */
.aw-entry_page .aw-mypageForm .ec-borderedDefs dt{
  display:flex !important;
  align-items:center !important;
  column-gap:18px !important;
}

.aw-entry_page .aw-mypageForm .ec-borderedDefs dt .ec-label{
  display:inline-flex !important;
  align-items:center !important;
  gap:0 !important;
  white-space:nowrap !important;
}

.aw-entry_page .aw-mypageForm .ec-borderedDefs dt .ec-required{
  position:static !important;
  display:inline-block !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  color:#d35d4f !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* 疑似要素などで必須が二重に出る場合の抑止 */
.aw-entry_page .aw-mypageForm .ec-borderedDefs dt .ec-label::before,
.aw-entry_page .aw-mypageForm .ec-borderedDefs dt .ec-label::after{
  content:none !important;
  display:none !important;
}

/* ---------------------------------------------------------
   生年月日：年 / 月 / 日 を横並び
--------------------------------------------------------- */
.aw-entry_page .aw-mypageForm .ec-birth{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  width:100% !important;
  max-width:610px !important;
}

.aw-entry_page .aw-mypageForm .ec-birth select{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

.aw-entry_page .aw-mypageForm .ec-birth > span{
  display:block !important;
  margin:0 !important;
  color:#6f6258 !important;
  font-size:15px !important;
  line-height:1 !important;
  text-align:center !important;
}

/* ---------------------------------------------------------
   利用規約チェック＋ボタンを中央配置
--------------------------------------------------------- */
.aw-entry_page .aw-entryAgreement{
  width:100%;
  max-width:760px;
  margin:56px auto 0;
  text-align:center;
}

.aw-entry_page .aw-entryAgreement__check{
  display:flex;
  justify-content:center;
  width:100%;
  margin:0 auto 24px;
}

.aw-entry_page .aw-entryAgreement__check label{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin:0 auto !important;
  text-align:left;
}

.aw-entry_page .aw-entryAgreement__check input[type="checkbox"]{
  flex:0 0 auto;
  margin:0 !important;
}

.aw-entry_page .aw-entryAgreement__actions{
  display:flex;
  justify-content:center;
  gap:4px;
  width:100%;
  margin:0 auto;
}

.aw-entry_page .aw-entryAgreement__actions .aw-mypageBtn{
  flex:0 1 300px;
  width:300px;
  min-width:0;
  margin:0;
}

/* SP */
@media screen and (max-width:900px){

  .aw-entry_page .aw-mypageForm .ec-birth{
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) !important;
    gap:8px !important;
    max-width:none !important;
  }

  .aw-entry_page .aw-entryAgreement{
    margin-top:44px;
  }

  .aw-entry_page .aw-entryAgreement__actions{
    flex-direction:column;
    gap:12px;
  }

  .aw-entry_page .aw-entryAgreement__actions .aw-mypageBtn{
    flex:none;
    width:100%;
    max-width:390px;
    margin:0 auto;
  }
}

@media screen and (max-width:520px){

  .aw-entry_page .aw-mypageForm .ec-birth{
    gap:6px !important;
  }

  .aw-entry_page .aw-mypageForm .ec-birth select{
    padding-left:10px !important;
    padding-right:28px !important;
  }

  .aw-entry_page .aw-entryAgreement__check label{
    align-items:flex-start !important;
    text-align:left;
  }
}

/* =========================================================
   Entry form: required labels / individual-corporate / birth
   2026-09-05 final
========================================================= */

/* EC-CUBE auto-required markers are not used on the explicitly rendered
   entry labels below. Hide any theme-generated remnants on this page. */
.aw-entry_page .aw-mypageForm__defs dt .ec-required,
.aw-entry_page .aw-mypageForm__defs dt .ec-label::before,
.aw-entry_page .aw-mypageForm__defs dt .ec-label::after{
  display:none !important;
  content:none !important;
}

/* Stable label row */
.aw-entry_page .aw-mypageForm__defs dt{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:18px !important;
  column-gap:18px !important;
}

.aw-entry_page .aw-entryFieldLabel{
  display:inline-block;
  margin:0;
  color:#2d2924;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:500;
  line-height:1.6;
  white-space:nowrap;
}

.aw-entry_page .aw-required{
  position:static !important;
  display:inline-block !important;
  flex:0 0 auto;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  color:#d35d4f !important;
  font-family:"Noto Sans JP",sans-serif;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

/* Individual / corporate selector */
.aw-entry_page .aw-entryCustomerType{
  display:flex;
  align-items:center;
  gap:34px;
  min-height:52px;
}

.aw-entry_page .aw-entryCustomerType label{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0;
  color:#4f4741;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  cursor:pointer;
}

.aw-entry_page .aw-entryCustomerType input[type="radio"]{
  width:16px;
  height:16px;
  margin:0;
  accent-color:#6f8977;
}

/* Company field is only shown for corporate registration.
   The field itself remains the standard EC-CUBE company_name field. */
.aw-entry_page .aw-entryCompanyRow{
  display:none !important;
}

.aw-entry_page .aw-entryCompanyRow.is-visible{
  display:flex !important;
}

/* Birth date: year / month / day on one line */
.aw-entry_page .aw-mypageForm .ec-birth{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:12px !important;
  width:100% !important;
  max-width:610px !important;
}

.aw-entry_page .aw-mypageForm .ec-birth select{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

.aw-entry_page .aw-mypageForm .ec-birth > span{
  display:block !important;
  margin:0 !important;
  color:#6f6258 !important;
  font-size:15px !important;
  line-height:1 !important;
  text-align:center !important;
}

/* Agreement and actions centered */
.aw-entry_page .aw-entryAgreement{
  width:100%;
  max-width:760px;
  margin:56px auto 0 !important;
  text-align:center;
}

.aw-entry_page .aw-entryAgreement__check{
  display:flex !important;
  justify-content:center !important;
  width:100%;
  margin:0 auto 24px !important;
}

.aw-entry_page .aw-entryAgreement__check > label{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  margin:0 auto !important;
}

.aw-entry_page .aw-entryAgreement__actions{
  display:flex !important;
  justify-content:center !important;
  gap:4px !important;
  width:100%;
  margin:0 auto !important;
}

.aw-entry_page .aw-entryAgreement__actions .aw-mypageBtn{
  flex:0 1 300px;
  width:300px;
  min-width:0;
  margin:0 !important;
}

@media screen and (max-width:900px){
  .aw-entry_page .aw-entryCompanyRow.is-visible{
    display:block !important;
  }

  .aw-entry_page .aw-mypageForm .ec-birth{
    max-width:none !important;
    gap:8px !important;
  }

  .aw-entry_page .aw-entryAgreement{
    margin-top:44px !important;
  }

  .aw-entry_page .aw-entryAgreement__actions{
    flex-direction:column;
    gap:12px !important;
  }

  .aw-entry_page .aw-entryAgreement__actions .aw-mypageBtn{
    flex:none;
    width:100%;
    max-width:390px;
    margin:0 auto !important;
  }
}

@media screen and (max-width:520px){
  .aw-entry_page .aw-mypageForm .ec-birth{
    gap:6px !important;
  }
}

/* =========================================================
   Entry form: corporate hides personal-only fields
   2026-09-05
========================================================= */

.aw-entry_page .aw-entryIndividualOnly.is-hidden{
  display:none !important;
}

/* =========================================================
   Entry - 法人会社名 行レイアウト修正
   2026-09-05
========================================================= */

/*
  .aw-entryCompanyRow は本来 dl で、
  親フォームの 220px + 48px + 入力欄 のGridに乗る必要があります。
  display:flex だと会社名だけ入力開始位置が右へズレるため、
  PCでは既存のdlと同じGridへ戻します。
*/
.aw-entry_page .aw-entryCompanyRow.is-visible{
  display:grid !important;
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:48px !important;
  align-items:flex-start !important;
}

.aw-entry_page .aw-entryCompanyRow dd{
  margin:0 !important;
}

.aw-entry_page .aw-entryCompanyRow dd .ec-input{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

.aw-entry_page .aw-entryCompanyRow dd .ec-input input{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

@media screen and (max-width:900px){
  .aw-entry_page .aw-entryCompanyRow.is-visible{
    display:block !important;
  }
}

/* =========================================================
   Entry Complete / Activated
   2026-09-05
========================================================= */

.aw-entry_complete_page .aw-mypage--entryComplete,
.aw-entry_activated_page .aw-mypage--entryComplete{
  width:100%;
  max-width:1120px;
  margin:150px auto 120px;
  padding:0 20px;
  box-sizing:border-box;
}

.aw-entry_complete_page .aw-mypage__header,
.aw-entry_activated_page .aw-mypage__header{
  margin:0 0 54px;
  text-align:center;
}

.aw-entry_complete_page .aw-mypageComplete,
.aw-entry_activated_page .aw-mypageComplete{
  max-width:760px;
  margin:0 auto;
  padding:52px 56px 56px;
  border:1px solid rgba(45,41,36,.14);
  background:#fff;
  box-sizing:border-box;
  text-align:center;
}

.aw-entry_complete_page .aw-mypageComplete h2,
.aw-entry_activated_page .aw-mypageComplete h2{
  margin:0 0 24px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:26px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.08em;
}

.aw-entry_complete_page .aw-mypageComplete p,
.aw-entry_activated_page .aw-mypageComplete p{
  margin:0;
  color:#6f6258;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  line-height:2.2;
  letter-spacing:.06em;
}

.aw-entry_complete_page .aw-mypageComplete__actions,
.aw-entry_activated_page .aw-mypageComplete__actions{
  display:flex;
  justify-content:center;
  gap:14px;
  margin:42px auto 0;
}

.aw-entry_complete_page .aw-mypageComplete__actions .aw-mypageBtn,
.aw-entry_activated_page .aw-mypageComplete__actions .aw-mypageBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:320px;
  min-height:58px;
  margin:0;
  box-sizing:border-box;
  text-decoration:none;
}

.aw-entry_complete_page .aw-footer__breadcrumb,
.aw-entry_activated_page .aw-footer__breadcrumb{
  display:none !important;
}

@media screen and (max-width:900px){

  .aw-entry_complete_page .aw-mypage--entryComplete,
  .aw-entry_activated_page .aw-mypage--entryComplete{
    margin:96px auto 100px;
    padding:0 20px;
  }

  .aw-entry_complete_page .aw-mypage__header,
  .aw-entry_activated_page .aw-mypage__header{
    margin-bottom:42px;
  }

  .aw-entry_complete_page .aw-mypageComplete,
  .aw-entry_activated_page .aw-mypageComplete{
    padding:38px 22px 42px;
  }

  .aw-entry_complete_page .aw-mypageComplete h2,
  .aw-entry_activated_page .aw-mypageComplete h2{
    font-size:22px;
  }

  .aw-entry_complete_page .aw-mypageComplete p,
  .aw-entry_activated_page .aw-mypageComplete p{
    font-size:15px;
    line-height:2.1;
  }

  .aw-entry_complete_page .aw-mypageComplete__actions,
  .aw-entry_activated_page .aw-mypageComplete__actions{
    flex-direction:column;
    gap:12px;
    margin-top:36px;
  }

  .aw-entry_complete_page .aw-mypageComplete__actions .aw-mypageBtn,
  .aw-entry_activated_page .aw-mypageComplete__actions .aw-mypageBtn{
    max-width:none;
  }
}

/* =========================================================
   Entry Confirm
   2026-09-05
========================================================= */

.aw-entry_confirm_page .aw-entryConfirmPage{
  width:100%;
  max-width:1120px;
  margin:150px auto 120px;
  padding:0 20px;
  box-sizing:border-box;
}

.aw-entry_confirm_page .aw-entryConfirm__hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}

.aw-entry_confirm_page .aw-entryConfirm{
  width:100%;
  border-top:none;
}

.aw-entry_confirm_page .aw-entryConfirm dl{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:48px;
  margin:0;
  padding:24px 20px;
  border-bottom:1px dotted rgba(45,41,36,.18);
  box-sizing:border-box;
}

.aw-entry_confirm_page .aw-entryConfirm dt{
  margin:0;
  color:#2d2924;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:500;
  line-height:1.8;
}

.aw-entry_confirm_page .aw-entryConfirm dd{
  margin:0;
  color:#54505d;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1.8;
  word-break:break-word;
}

.aw-entry_confirm_page .aw-entryConfirm__address{
  display:inline;
}

.aw-entry_confirm_page .aw-entryConfirm__actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  width:100%;
  margin:48px auto 0;
}

.aw-entry_confirm_page .aw-entryConfirm__actions .aw-mypageBtn{
  width:100%;
  max-width:360px;
  min-height:58px;
  margin:0;
  border:1px solid #4b2817;
  border-radius:0;
  box-sizing:border-box;
  cursor:pointer;
}

.aw-entry_confirm_page .aw-entryConfirm__actions .aw-mypageBtn--outline{
  background:#fff;
  color:#4b2817;
}

.aw-entry_confirm_page .aw-footer__breadcrumb{
  display:none !important;
}

@media screen and (max-width:900px){

  .aw-entry_confirm_page .aw-entryConfirmPage{
    margin:96px auto 100px;
    padding:0 20px;
  }

  .aw-entry_confirm_page .aw-entryConfirm dl{
    grid-template-columns:1fr;
    gap:8px;
    padding:20px 0;
  }

  .aw-entry_confirm_page .aw-entryConfirm dt{
    font-size:14px;
  }

  .aw-entry_confirm_page .aw-entryConfirm dd{
    font-size:15px;
  }

  .aw-entry_confirm_page .aw-entryConfirm__actions{
    margin-top:40px;
  }

  .aw-entry_confirm_page .aw-entryConfirm__actions .aw-mypageBtn{
    max-width:none;
    min-height:56px;
  }
}

/* =========================================================
   Mypage Change Confirm
   2026-09-05
========================================================= */

.aw-mypage_change_confirm .aw-mypage--changeConfirm{
  width:100%;
  max-width:1120px;
  margin:150px auto 120px;
  padding:0 20px;
  box-sizing:border-box;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm__hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm{
  width:100%;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm dl{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:48px;
  margin:0;
  padding:24px 20px;
  border-bottom:1px dotted rgba(45,41,36,.18);
  box-sizing:border-box;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm dl:first-child{
  border-top:none;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm dt{
  margin:0;
  color:#2d2924;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:500;
  line-height:1.8;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm dd{
  margin:0;
  color:#54505d;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:1.8;
  word-break:break-word;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm__actions{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  width:100%;
  margin:48px auto 0;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm__actions .aw-mypageBtn{
  width:100%;
  max-width:360px;
  min-height:58px;
  margin:0;
  border:1px solid #4b2817;
  border-radius:0;
  box-sizing:border-box;
  cursor:pointer;
}

.aw-mypage_change_confirm .aw-mypageChangeConfirm__actions .aw-mypageBtn--outline{
  background:#fff;
  color:#4b2817;
}

@media screen and (max-width:900px){

  .aw-mypage_change_confirm .aw-mypage--changeConfirm{
    margin:96px auto 100px;
    padding:0 20px;
  }

  .aw-mypage_change_confirm .aw-mypageChangeConfirm dl{
    grid-template-columns:1fr;
    gap:8px;
    padding:20px 0;
  }

  .aw-mypage_change_confirm .aw-mypageChangeConfirm dt{
    font-size:14px;
  }

  .aw-mypage_change_confirm .aw-mypageChangeConfirm dd{
    font-size:15px;
  }

  .aw-mypage_change_confirm .aw-mypageChangeConfirm__actions{
    margin-top:40px;
  }

  .aw-mypage_change_confirm .aw-mypageChangeConfirm__actions .aw-mypageBtn{
    max-width:none;
    min-height:56px;
  }
}

/* =========================================================
   MyPage Change / Change Complete
   2026-09-05
========================================================= */

.aw-mypage_change_page .aw-mypage--change,
.aw-mypage_change_complete .aw-mypage--changeComplete{
  width:100%;
  max-width:1120px;
  margin:150px auto 120px;
  padding:0 20px;
  box-sizing:border-box;
}

/* Change form labels */
.aw-mypage_change_page .aw-mypageForm__defs dt{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:18px !important;
}

.aw-mypage_change_page .aw-changeFieldLabel{
  display:inline-block;
  color:#2d2924;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  font-weight:500;
  line-height:1.6;
  white-space:nowrap;
}

.aw-mypage_change_page .aw-required{
  position:static !important;
  display:inline-block !important;
  margin:0 !important;
  padding:0 !important;
  color:#d35d4f !important;
  font-family:"Noto Sans JP",sans-serif;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.aw-mypage_change_page .aw-mypageForm__defs dt .ec-required,
.aw-mypage_change_page .aw-mypageForm__defs dt .ec-label::before,
.aw-mypage_change_page .aw-mypageForm__defs dt .ec-label::after{
  display:none !important;
  content:none !important;
}

/* Personal / corporate */
.aw-mypage_change_page .aw-changeCustomerType{
  display:flex;
  align-items:center;
  gap:34px;
  min-height:52px;
}

.aw-mypage_change_page .aw-changeCustomerType label{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin:0;
  color:#4f4741;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  cursor:pointer;
}

.aw-mypage_change_page .aw-changeCustomerType input[type="radio"]{
  width:16px;
  height:16px;
  margin:0;
  accent-color:#6f8977;
}

.aw-mypage_change_page .aw-changeCompanyRow{
  display:none !important;
}

.aw-mypage_change_page .aw-changeCompanyRow.is-visible{
  display:grid !important;
  grid-template-columns:220px minmax(0,1fr) !important;
  gap:48px !important;
}

.aw-mypage_change_page .aw-changeIndividualOnly.is-hidden{
  display:none !important;
}

/* Birth */
.aw-mypage_change_page .aw-mypageForm .ec-birth{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) !important;
  gap:12px !important;
  align-items:center !important;
  width:100% !important;
  max-width:610px !important;
}

.aw-mypage_change_page .aw-mypageForm .ec-birth select{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}

/* Company input aligns with other fields */
.aw-mypage_change_page .aw-changeCompanyRow dd,
.aw-mypage_change_page .aw-changeCompanyRow .ec-input,
.aw-mypage_change_page .aw-changeCompanyRow .ec-input input{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

/* Change action */
.aw-mypage_change_page .aw-changeForm__actions{
  display:flex;
  justify-content:center;
  width:100%;
  margin:56px auto 0;
}

.aw-mypage_change_page .aw-changeForm__actions .aw-mypageBtn{
  width:100%;
  max-width:360px;
  min-height:58px;
  margin:0;
  border:1px solid #4b2817;
  border-radius:0;
}

/* Complete */
.aw-mypage_change_complete .aw-mypageComplete{
  max-width:760px;
  margin:0 auto;
  padding:52px 56px 56px;
  border:1px solid rgba(45,41,36,.14);
  background:#fff;
  text-align:center;
  box-sizing:border-box;
}

.aw-mypage_change_complete .aw-mypageComplete h2{
  margin:0 0 24px;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:26px;
  font-weight:400;
  line-height:1.8;
  letter-spacing:.08em;
}

.aw-mypage_change_complete .aw-mypageComplete p{
  margin:0;
  color:#6f6258;
  font-family:"Noto Sans JP",sans-serif;
  font-size:15px;
  line-height:2.2;
  letter-spacing:.06em;
}

.aw-mypage_change_complete .aw-mypageComplete__actions{
  margin:42px auto 0;
  text-align:center;
}

.aw-mypage_change_complete .aw-mypageComplete__actions .aw-mypageBtn{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:360px;
  min-height:58px;
  margin:0 auto;
  text-decoration:none;
}

@media screen and (max-width:900px){

  .aw-mypage_change_page .aw-mypage--change,
  .aw-mypage_change_complete .aw-mypage--changeComplete{
    margin:96px auto 100px;
    padding:0 20px;
  }

  .aw-mypage_change_page .aw-changeCompanyRow.is-visible{
    display:block !important;
  }

  .aw-mypage_change_page .aw-mypageForm .ec-birth{
    max-width:none !important;
    gap:8px !important;
  }

  .aw-mypage_change_page .aw-changeForm__actions{
    margin-top:44px;
  }

  .aw-mypage_change_page .aw-changeForm__actions .aw-mypageBtn{
    max-width:none;
    min-height:56px;
  }

  .aw-mypage_change_complete .aw-mypageComplete{
    padding:38px 22px 42px;
  }

  .aw-mypage_change_complete .aw-mypageComplete h2{
    font-size:22px;
  }

  .aw-mypage_change_complete .aw-mypageComplete p{
    font-size:15px;
    line-height:2.1;
  }

  .aw-mypage_change_complete .aw-mypageComplete__actions .aw-mypageBtn{
    max-width:none;
  }
}

/* =========================================================
   MyPage common order restore
   MY PAGE MENU -> tabs -> page title -> content
   2026-09-05 v11
========================================================= */

.aw-mypage_change_page .aw-mypage--change,
.aw-mypage_change_complete .aw-mypage--changeComplete{
  margin:150px auto 120px;
}

/* English label above the tab menu */
.aw-mypage_change_page .aw-mypageMenuLabel,
.aw-mypage_change_complete .aw-mypageMenuLabel{
  margin:0 0 18px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:12px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.28em;
  text-align:center;
}

/* Tabs are the first visual block in MyPage */
.aw-mypage_change_page .aw-mypage__nav,
.aw-mypage_change_complete .aw-mypage__nav{
  margin:0 auto 68px;
}

/* Japanese page title comes below tabs */
.aw-mypage_change_page .aw-mypagePageTitle,
.aw-mypage_change_complete .aw-mypagePageTitle{
  margin:0 0 54px;
  text-align:center;
}

.aw-mypage_change_page .aw-mypagePageTitle h1,
.aw-mypage_change_complete .aw-mypagePageTitle h1{
  margin:0;
  color:#2d2924;
  font-family:"Noto Serif JP",serif;
  font-size:38px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.08em;
}

/* The edit form already has its own section title; avoid duplicating the big page title */
.aw-mypage_change_page .aw-mypage__content > .aw-mypage__sectionHead{
  margin-top:0;
}

/* Complete card spacing beneath page title */
.aw-mypage_change_complete .aw-mypageComplete{
  margin-top:0;
}

@media screen and (max-width:900px){

  .aw-mypage_change_page .aw-mypage--change,
  .aw-mypage_change_complete .aw-mypage--changeComplete{
    margin:96px auto 100px;
  }

  .aw-mypage_change_page .aw-mypageMenuLabel,
  .aw-mypage_change_complete .aw-mypageMenuLabel{
    margin-bottom:14px;
    font-size:11px;
  }

  .aw-mypage_change_page .aw-mypage__nav,
  .aw-mypage_change_complete .aw-mypage__nav{
    margin-bottom:52px !important;
  }

  .aw-mypage_change_page .aw-mypagePageTitle,
  .aw-mypage_change_complete .aw-mypagePageTitle{
    margin-bottom:38px;
  }

  .aw-mypage_change_page .aw-mypagePageTitle h1,
  .aw-mypage_change_complete .aw-mypagePageTitle h1{
    font-size:30px;
  }
}


/* =========================================================
   MyPage Menu Label + Delivery Add Button
   2026-09-05 v12
========================================================= */

/*
   MyPage共通:
   タブの上に "MY PAGE MENU" を表示。
   change/change_complete 側でTwig直書きしていたラベルは隠し、
   すべてのMyPageでCSSから同じ位置・同じ体裁に統一する。
*/
.aw-mypage_page .aw-mypageMenuLabel{
  display:none !important;
}

.aw-mypage_page .aw-mypage__nav::before{
  content:"MY PAGE MENU";
  display:block;
  width:100%;
  margin:0 0 18px;
  color:#9a7d67;
  font-family:"Noto Sans JP",sans-serif;
  font-size:12px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.28em;
  text-align:center;
}

/*
   お届け先一覧:
   「新しいお届け先を追加」ボタンが一覧ボックスへ
   くっつかないよう余白を確保し、右寄せ。
*/
#page_mypage_delivery .aw-mypage__sectionAction{
  width:100%;
  margin-top:32px !important;
  margin-left:0 !important;
  text-align:right;
}

#page_mypage_delivery .aw-mypage__sectionAction .aw-mypageBtn--small,
#page_mypage_delivery .aw-mypageBtn--small{
  margin-top:0 !important;
  margin-left:auto !important;
}

/* 一覧の直後に追加ボタンが配置される構造にも対応 */
#page_mypage_delivery .aw-mypageAddressList + .aw-mypage__sectionAction{
  display:flex;
  justify-content:flex-end;
  padding-top:4px;
}

/* 空表示時でもボタンとの間隔を確保 */
#page_mypage_delivery .aw-mypage__empty + .aw-mypage__sectionAction{
  display:flex;
  justify-content:flex-end;
  padding-top:4px;
}

@media screen and (max-width:900px){

  .aw-mypage_page .aw-mypage__nav::before{
    margin-bottom:14px;
    font-size:11px;
  }

  #page_mypage_delivery .aw-mypage__sectionAction{
    margin-top:28px !important;
    text-align:center;
  }

  #page_mypage_delivery .aw-mypage__sectionAction .aw-mypageBtn--small,
  #page_mypage_delivery .aw-mypageBtn--small{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
  }

  #page_mypage_delivery .aw-mypageAddressList + .aw-mypage__sectionAction,
  #page_mypage_delivery .aw-mypage__empty + .aw-mypage__sectionAction{
    justify-content:center;
  }
}

/* =====================================================
   お届け先一覧：追加ボタン位置
===================================================== */

.aw-mypageAddressAdd{
  display:flex !important;
  justify-content:flex-end !important;
  width:100% !important;
  margin-top:32px !important;
}

.aw-mypageAddressAdd .aw-mypageBtn--small{
  width:320px !important;
  max-width:320px !important;
  margin:0 !important;
}

@media screen and (max-width:900px){

  .aw-mypageAddressAdd{
    justify-content:center !important;
    margin-top:28px !important;
  }

  .aw-mypageAddressAdd .aw-mypageBtn--small{
    width:100% !important;
    max-width:none !important;
  }

}

/* =========================================================
   MY PAGE / ORDER HISTORY DETAIL
   Consolidated final
   2026-09-19
========================================================= */

/* ---------------------------------------------------------
   Base
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypage__content {
  width: min(100%, 960px);
  margin: 0 auto;
  color: #2d2924;
}

.aw-mypage--historyDetail .aw-mypage__title {
  margin-bottom: 62px;
}


/* ---------------------------------------------------------
   Section
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailSection {
  margin: 0 0 52px;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailSection__title {
  margin: 0 0 20px;
  padding: 0 0 12px;
  border: 0;
  border-bottom: 1px solid #ddd6cf;
  color: #2d2924;
  font-family: "Noto Serif JP", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .07em;
}


/* ---------------------------------------------------------
   Order information / delivery conditions
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailDefs {
  margin: 0;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailDefs dl {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  align-items: center;
  min-height: 50px;
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #ebe6e1;
}

.aw-mypage--historyDetail .aw-mypageDetailDefs dl:last-child {
  border-bottom: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailDefs dt,
.aw-mypage--historyDetail .aw-mypageDetailDefs dd {
  margin: 0;
  padding: 12px 0;
  border: 0;
  font-weight: 400;
  line-height: 1.7;
}

.aw-mypage--historyDetail .aw-mypageDetailDefs dt {
  color: #716a64;
  font-size: 14px;
}

.aw-mypage--historyDetail .aw-mypageDetailDefs dd {
  color: #2d2924;
  font-size: 15px;
}


/* ---------------------------------------------------------
   Products
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailProducts {
  margin: 0;
  padding: 0 0 26px;
  border: 0;
  border-bottom: 1px solid #e2dcd6;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 28px;
  margin: 0;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct + .aw-mypageDetailProduct {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #ebe6e1;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct__image {
  width: 180px;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct__image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 4;
  object-fit: cover;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct__content {
  min-width: 0;
  padding-top: 3px;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__roast {
  margin: 0 0 7px;
  color: #9a684c;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: .07em;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__name {
  margin: 0 0 10px;
  color: #2d2924;
  font-family: "Noto Serif JP", serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__name a {
  color: inherit;
  text-decoration: none;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__name a:hover {
  opacity: .72;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__spec {
  margin: 3px 0;
  color: #716a64;
  font-size: 14px;
  line-height: 1.65;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__price {
  margin: 12px 0 0;
  color: #2d2924;
  font-size: 15px;
  line-height: 1.6;
}

.aw-mypage--historyDetail .aw-mypageDetailProduct__currentPrice {
  margin: 5px 0 0;
  color: #817971;
  font-size: 12px;
  line-height: 1.6;
}


/* ---------------------------------------------------------
   Delivery address
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailSubsection {
  margin: 28px 0 0;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailSubsection__title {
  margin: 0 0 12px;
  padding: 0;
  border: 0;
  color: #2d2924;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .05em;
}

.aw-mypage--historyDetail .aw-mypageDetailAddress {
  margin: 0 0 10px;
  padding: 20px 24px;
  border: 0;
  background: #faf8f5;
}

.aw-mypage--historyDetail .aw-mypageDetailAddress p {
  margin: 0 0 4px;
  color: #4d453f;
  font-size: 14px;
  line-height: 1.75;
}

.aw-mypage--historyDetail .aw-mypageDetailAddress p:last-child {
  margin-bottom: 0;
}


/* ---------------------------------------------------------
   Normal text
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailText {
  margin: 0;
  padding: 0;
  color: #4d453f;
  font-size: 15px;
  line-height: 1.8;
}


/* ---------------------------------------------------------
   Mail history
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailMails {
  margin: 0;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailMail {
  margin: 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid #e5dfd9;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__header {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  align-items: center;
  gap: 30px;
  min-height: 50px;
  padding: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__date {
  color: #817971;
  font-size: 13px;
  line-height: 1.6;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__subject {
  margin: 0;
  padding: 12px 0;
  border: 0;
  background: transparent;
  color: #452b1e;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  text-align: left;
  cursor: pointer;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__subject:hover {
  opacity: .72;
  text-decoration: none;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__body {
  display: none;
  margin: 0 0 16px;
  padding: 20px 24px;
  background: #faf8f5;
  color: #4d453f;
  font-size: 13px;
  line-height: 1.85;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__body.is-open {
  display: block;
}

.aw-mypage--historyDetail .aw-mypageDetailMail__close {
  display: block;
  margin: 20px 0 0 auto;
  padding: 7px 18px;
  border: 1px solid #cfc6be;
  background: #fff;
  color: #5a5048;
  font-size: 12px;
  cursor: pointer;
}


/* ---------------------------------------------------------
   Total
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailSection--total {
  margin-bottom: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal {
  width: 500px;
  max-width: 100%;
  margin: 0 0 0 auto;
  padding: 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal dl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  min-height: 42px;
  margin: 0;
  padding: 8px 0;
  border: 0;
  border-bottom: 1px solid #e5dfd9;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal dt,
.aw-mypage--historyDetail .aw-mypageDetailTotal dd {
  margin: 0;
  padding: 0;
  color: #514943;
  font-size: 14px;
  font-weight: 400;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal__grand {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 12px;
  margin: 0;
  padding: 18px 0 0;
  border: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal__grand span {
  font-size: 15px;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal__grand strong {
  color: #452b1e;
  font-family: "Noto Serif JP", serif;
  font-size: 27px;
  font-weight: 500;
}

.aw-mypage--historyDetail .aw-mypageDetailTotal__grand small {
  color: #817971;
  font-size: 12px;
}


/* ---------------------------------------------------------
   Bottom actions
--------------------------------------------------------- */

.aw-mypage--historyDetail .aw-mypageDetailFooterActions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 38px auto 0;
  padding: 0;
}

.aw-mypage--historyDetail .aw-mypageDetailBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  min-width: 220px;
  min-height: 52px;
  margin: 0;
  padding: 10px 18px;
  box-sizing: border-box;
  border: 1px solid #452b1e;
  background: #fff;
  color: #452b1e;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .06em;
  text-align: center;
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease, opacity .2s ease;
}

.aw-mypage--historyDetail .aw-mypageDetailBtn--primary {
  background: #452b1e;
  color: #fff;
}

.aw-mypage--historyDetail .aw-mypageDetailBtn--back {
  background: #fff;
  color: #452b1e;
}

.aw-mypage--historyDetail .aw-mypageDetailBtn:hover {
  background: #452b1e;
  color: #fff;
  text-decoration: none;
}

.aw-mypage--historyDetail .aw-mypageDetailBtn--primary:hover {
  opacity: .86;
}

.aw-mypage--historyDetail .aw-mypageDetailNotice {
  margin: 14px 0 0;
  color: #817971;
  font-size: 12px;
  line-height: 1.7;
  text-align: center;
}


/* =========================================================
   SP
========================================================= */

@media screen and (max-width: 767px) {

  .aw-mypage--historyDetail .aw-mypage__content {
    width: 100%;
  }

  .aw-mypage--historyDetail .aw-mypage__title {
    margin-bottom: 42px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailSection {
    margin-bottom: 42px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailSection__title {
    margin-bottom: 16px;
    padding-bottom: 11px;
    font-size: 19px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailDefs dl {
    grid-template-columns: 1fr;
    gap: 4px;
    min-height: 0;
    padding: 12px 0;
  }

  .aw-mypage--historyDetail .aw-mypageDetailDefs dt,
  .aw-mypage--historyDetail .aw-mypageDetailDefs dd {
    padding: 0;
  }

  .aw-mypage--historyDetail .aw-mypageDetailDefs dt {
    font-size: 12px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailDefs dd {
    font-size: 14px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct {
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 16px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct__image {
    width: 110px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__roast {
    font-size: 12px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__name {
    font-size: 16px;
    line-height: 1.55;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__spec {
    font-size: 12px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailProduct .aw-mypageHistory__price {
    font-size: 14px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailAddress {
    padding: 17px 18px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailAddress p {
    font-size: 13px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailText {
    font-size: 14px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailMail__header {
    display: block;
    min-height: 0;
    padding: 13px 0;
  }

  .aw-mypage--historyDetail .aw-mypageDetailMail__date {
    display: block;
    margin-bottom: 5px;
    font-size: 12px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailMail__subject {
    display: block;
    width: 100%;
    padding: 0;
    font-size: 13px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailMail__body {
    padding: 16px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailTotal {
    width: 100%;
  }

  .aw-mypage--historyDetail .aw-mypageDetailTotal__grand strong {
    font-size: 24px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailFooterActions {
    flex-direction: column;
    gap: 12px;
    margin-top: 32px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailBtn {
    width: 100%;
    min-width: 0;
    min-height: 50px;
  }

  .aw-mypage--historyDetail .aw-mypageDetailNotice {
    text-align: left;
  }

}

