/*
 * mypage.css structure
 *
 * Editing guide
 * 1. Shared mobile-first/common rules
 * 2. Page-scoped shared rules
 * 3. Desktop-only overrides
 *
 * Notes
 * - Smartphone-only overrides live in style_sp.css
 * - Desktop-only overrides live in the min-width: 799px block near the bottom
 */

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

html {
  line-height: 1;
  background: #ffffff;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

* {
  box-sizing: border-box;
}

/* html
-------------------------------------------------- */
html {
  font-size: 62.5%;
}

/* link
-------------------------------------------------- */
a {
  text-decoration: none;
}
a:link {
  color: #0066cc;
}
a:hover {
  color: #0066cc;
  text-decoration: underline;
}
a:active {
  color: #0066cc;
}
a:visited {
  color: #3D93E9;
}
a:focus {
  color: #0066cc;
}

.linkUnderline {
  text-decoration: underline;
}

/* body
-------------------------------------------------- */
body {
  line-height: 1.5;
  color: #333333;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", Meiryo, "MS PGothic", sans-serif;
  background: #ffffff;
  -webkit-text-size-adjust: none;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.container {
  margin: 0 auto;
}

img {
  vertical-align: bottom;
  line-height: 1;
  font-size: 1px;
}

/* Layout
-------------------------------------------------- */
#wrapperArea {
  margin: 0 auto;
  width: 100%;
  background: #F8F8F8;
}

/* contentArea
-------------------------------------------------- */
.contentArea {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.contentArea:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}

/* header
-------------------------------------------------- */
#header {
  padding: 10px 0 0;
  position: relative;
  width: 100%;
}
#header:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}
#header .logo {
  padding: 5px;
  width: 112px;
  float: left;
}
#header .siteName {
  margin-bottom: 0;
  vertical-align: top;
}
#header .siteName img {
  width: 112px;
  height: 30px;
  vertical-align: top;
}

/* mobile header menu
-------------------------------------------------- */
#header .headerMypageMenuBlock {
  font-size: 12px;
  font-size: 1.2rem;
}
#header .headerMypageMenuBlock dl {
  padding: 10px 2px 1px;
  background-color: black;
  text-align: center;
  font-size: 14px;
}
#header .headerMypageMenuBlock dl dt {
  color: #ffffff;
  position: relative;
  margin-bottom: 10px;
}
#header .headerMypageMenuBlock dl dt:after {
  margin-top: -8px;
  position: absolute;
  top: 50%;
  background-image: url("/common/mypage/img/icon_1.png");
  background-size: 16px 150px;
  background-repeat: no-repeat;
  background-position: right -16px;
  content: " ";
  width: 16px;
  height: 16px;
  padding-right: 2%;
}
#header .headerMypageMenuBlock dl dt.menuOpen:after {
  background-position: right -64px;
}
#header .headerMypageMenuBlock dl dd {
  display: none;
}
#header .headerMypageMenuBlock ul {
  margin: 0;
}
#header .headerMypageMenuBlock ul li {
  margin-bottom: 1px;
  list-style: none;
  background: #ffffff;
  position: relative;
  text-align: left;
  padding-left: 8%;
}
#header .headerMypageMenuBlock ul li:last-child {
  margin-bottom: 1px;
}
#header .headerMypageMenuBlock ul a {
  padding: 10px;
  color: #000000;
  display: block;
}
#header .headerMypageMenuBlock ul a:after {
  margin-top: -6px;
  position: absolute;
  right: 12px;
  top: 50%;
  background-image: url(/common/mypage/img/arrow_red_right.svg);
  content: " ";
  width: 12px;
  height: 21px;
  background-repeat: no-repeat;
  background-size: 8px;
}

.headerMypageMenuBlock ul a:before {
  margin-top: -8px;
  position: absolute;
  left: 12px;
  top: 50%;
  background-image: url("/common/mypage/img/order.svg");
  content: " ";
  width: 18px;
  height: 22px;
  background-repeat: no-repeat;
  background-size: 17px;
}

.headerMypageMenuBlock ul li:nth-of-type(1) a::before {
  background-image: url("/common/mypage/img/mypage.svg");
}
.headerMypageMenuBlock ul li:nth-of-type(2) a::before {
  background-image: url("/common/mypage/img/order.svg");
}
.headerMypageMenuBlock ul li:nth-of-type(3) a::before {
  background-image: url("/common/mypage/img/ordered.svg");
}
.headerMypageMenuBlock ul li:nth-of-type(4) a::before {
  background-image: url("/common/mypage/img/customer.svg");
}
.headerMypageMenuBlock ul li:nth-of-type(5) a::before {
  background-image: url("/common/mypage/img/password.svg");
}
.headerMypageMenuBlock ul li:nth-of-type(6) a::before {
  background-image: url("/common/mypage/img/logout.svg");
}

#header .headerBtnBlock {
  display: none;
}
#header .headerCustomerBlock {
  margin: 0 -10px;
  padding: 5px 10px 6px;
  /* border-top: 1px solid #cccccc; */
  top: 0px;
}

#header .headerLogoutBtn {
  margin: 0 0 0 auto;
  width: 105px;
}

/* globalNav
-------------------------------------------------- */
#globalNav {
  display: none;
  background: #eeeeee;
  /* border-top: 1px solid #cccccc; */
}
#globalNav ul {
  margin: 0;
}
#globalNav li {
  display: table-cell;
  width: 200px;
  text-align: center;
  vertical-align: middle;
  list-style: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
}
#globalNav li:last-child a span {
  border-right: 1px solid #cccccc;
}
#globalNav a {
  padding: 1.3em 0;
  color: #000000;
  display: block;
}
#globalNav a span {
  display: block;
  border-left: 1px solid #cccccc;
}
#globalNav a:hover {
  color: #767676;
}

/* bodyArea
-------------------------------------------------- */
#bodyArea {
  width: 100%;
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
  background: white;
  display: flex;
}

/* topicPath
-------------------------------------------------- */
#topicPath {
  padding: 20px 0px 10px;
  /* background: white; */
}
#topicPath ul {
  margin: 0;
 font-size: 1rem;
  width: 980px;
  margin: auto;
}
#topicPath li {
  margin: 0;
  padding-right: 10px;
  list-style: none;
  position: relative;
  display: inline-block;
}
#topicPath li:after {
  content: ">";
  position: absolute;
  top: 0;
  right: 0;
}
#topicPath li:last-child:after {
  content: "";
}

/* mainArea
-------------------------------------------------- */
#mainArea {
  width: 100%;
}

/* sidebar
-------------------------------------------------- */
#sidebar {
  display: none;
}

.sidebarNavBlock {
  margin-bottom: 30px;
  /* padding: 6px; */
  /* background: #666666; */
}
.sidebarNavBlock .orderSerchBlock {
  padding: 0 9px;
  color: #ffffff;
  background: #4D4D4D;
  padding: 16px;
}
.sidebarNavBlock .orderSerchBlock input[type="search"] {
  width: 147px;
  height: 27px; 
  margin-top: 1%;
}
.sidebarNavBlock .orderSerchBlock .d-flex {
  display: flex;
  justify-content: space-between;
}

@-moz-document url-prefix() {
  .sidebarNavBlock .orderSerchBlock input[type="search"] {
    width: 146px;
  }
}
#localNav ul {
  margin: 0;
}
#localNav li {
  margin-bottom: 0;
  list-style: none;
  position: relative;
  border: 1px solid #D9D9D9;
  border-bottom: 0;
}
#localNav li.lnavMypagehome {
  margin-bottom: 12px;
  border: 1px solid #D9D9D9;
}

.lnavMypagehome a span::before,
.lnav1 a span::before,
.lnav2 a span::before,
.lnav3 a span::before,
.lnav4 a span::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  left: 12px;
  top: 12px;
  width: 25px;
  height: 25px;
}

.lnavMypagehome a span::before { background-image:url("/common/mypage/img/mypage.svg"); width:30px; height:30px; }
.lnav1 a span::before          { background-image:url("/common/mypage/img/order.svg"); }
.lnav2 a span::before          { background-image:url("/common/mypage/img/ordered.svg"); left:14px; } /* ←ここだけ */
.lnav3 a span::before          { background-image:url("/common/mypage/img/customer.svg"); }
.lnav4 a span::before          { background-image:url("/common/mypage/img/password.svg"); }

#localNav li:last-child {
  border-bottom: 1px solid #D9D9D9;
}
#localNav li .btnIcon {
    padding-left: 23%;
}
#localNav li a {
  padding: 1em 0;
  display: block;
  color: #000000;
}
#localNav li a:hover {
  color: #a3a3a3;
}
#localNav li.is-current a {
  color: #cc0000 !important;
}

/* pageHeader
-------------------------------------------------- */
#pageHeader {
  margin: 0 4;
}
#pageHeader:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}

h1 {
  margin-bottom: 8px;
}

/* backToTopNav
-------------------------------------------------- */
#backToTopNav {
  margin: 10px 0;
  text-indent: -999em;
  overflow: hidden;
}
#backToTopNav a {
  margin: 0 0 0 auto;
  display: block;
  width: 37px;
  height: 37px;
  border: 1px solid #cccccc;
  border-radius: 5px;
  position: relative;
}
#backToTopNav a:before {
  position: absolute;
  left: 10px;
  top: 10px;
  content: ' ';
  background-image: url("/common/mypage/img/icon_1.png");
  background-size: 16px 150px;
  background-position: 0 -96px;
  width: 16px;
  height: 16px;
}

/* .footerSerchBlock.orderSerchBlock
-------------------------------------------------- */
.footerSerchBlock {
  padding: 16px 10px;
  border-top: 1px solid #cccccc;
  background: #4D4D4D;
}
.footerSerchBlock dl {
  width: 100%;
  display: inline-table;
}
.footerSerchBlock dt {
  display: table-cell;
  font-size: 14px;
  vertical-align: middle;
  color: white;
  padding: 6px 10px 6px 0px;
   text-align: center;
}
.footerSerchBlock dd {
  display: table-cell;
}

/* Form
-------------------------------------------------- */
/* input
-------------------------------------------------- */
input[type="text"],
input[type="password"],
input[type="search"],
textarea {
  -webkit-appearance: none;
  padding: 7px;
  border: 1px solid #cccccc;
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "Hiragino Kaku Gothic Pro",Meiryo, "MS PGothic", sans-serif;
  border-radius: 4px;
}
input[type="text"].errorInput,
input[type="password"].errorInput,
input[type="search"].errorInput,
textarea.errorInput {
  border: 1px solid #f0b2b2;
  background: #fbebeb;
}
input[type="text"].inputName,
input[type="password"].inputName,
input[type="search"].inputName,
textarea.inputName {
  width: 45%;
}

input[type="search"].formInputFull,
textarea.formInputFull {
  width: 100%;
 
}

.formInputFull {
  width: 280px;
}

input[type="submit"] {
  -webkit-appearance: none;
  font-family: "Hiragino Kaku Gothic Pro",Meiryo, "MS PGothic", sans-serif;
}

textarea {
  height: 100px;
}

.memo textarea {
  width: 100%;
  border: 0;
}

.orderSerchBlock input[type="submit"] {
    border: 1px solid #cccccc;
    border-radius: 4px;
    font-size: 13px;
    background: #ffffff;
    color: black;
    padding: 3px 8px;
    height: 27px;
    margin-top: 1%;
}

/* formTableBlock
-------------------------------------------------- */
.formTableBlock {
  margin-top: 15px;
}
.formTableBlock p {
  margin-bottom: 2px;
}

.formTableBlock .addTxt {
  padding: 0 0 0 5px;
  vertical-align: top;
  display: inline-block;
}

/* error
-------------------------------------------------- */
.errorTxt {
  color: #cc0000;
  font-size: 10px;
  font-size: 1rem;
}

/* select
--------------------------------------------------
select {
	padding: .5em 2em .5em .5em;
	font-family: "Hiragino Kaku Gothic Pro",Meiryo, "MS PGothic", sans-serif;
	@include fz(14);
//	box-sizing: content-box;
	text-overflow: ellipsis;
	white-space: nowrap;
	border: 1px solid $border-color;
	border-radius: 0;
	-webkit-appearance: none;
	background-color: $main-bgcolor;
	background-image: url("/common/mypage/img/icon_select.png");
	background-size: 32px;
	background-position: right 16px;
	background-repeat: no-repeat;
	position: relative;
	* {
		font-family: "Hiragino Kaku Gothic Pro",Meiryo, "MS PGothic", sans-serif;
	}
	&.form_drop {
		margin-bottom: 3px;
		width: 100%!important;
//		max-width: 220px!important;
	}
	&.selectNum {
		max-width: 70px!important;
	}
}
*/
select::-ms-expand {
  display: none;
}

/* datepicker
-------------------------------------------------- */
.datepicker {
  width: 70%;
}

.ui-datepicker-trigger {
  margin-left: 5px;
  width: 45px;
  vertical-align: top;
  cursor: pointer;
}

/* datepicker
-------------------------------------------------- */
.ui-datepicker-calendar .ui-state-default {
  font-size: 10px;
  font-size: 1rem;
}

/* submitArea
-------------------------------------------------- */

.submitArea .backBtn .btnBlock {
  width: 55%;
  margin: 0 auto;
}
.submitArea .backBtn .btnBlock .btn .btnIcon {
  padding-left: 30px;
}
.submitArea .backBtn .btnBlock .btn .btnIcon:before {
  background: url("/common/mypage/img/icon_back.png") center no-repeat;
  background-size: 16px;
}
.submitArea .backBtn .btnBlock .btn li a {
  padding: 1em;
}
.submitArea .submitBtn {
  overflow: hidden;
}
.submitArea .submitBtn .btnBlock:first-child {
  margin-right: 2%;
}
.submitArea .submitBtn .btnBlock {
  width: 49%;
  float: left;
}
.submitArea .submitBtn .btnBlock .btn li a {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  padding: 1em;
}
.submitArea li.formSubmit:hover input[type="submit"] {
  text-decoration: underline;
}

.submitAreaType1 {
  overflow: hidden;
  padding: 20px 0px;
}
.submitAreaType1 .backBtn {
  float: left;
  width: 35%;
  margin-right: 4%;
  padding-top: 9px;
}
.submitAreaType1 .backBtn .btnBlock {
  width: 100%;
}
.submitAreaType1 .backBtn .btnBlock .btn li a {
  padding: 0.5em 1em;
}
.submitAreaType1 .submitBtn {
  float: right;
  width: 61%;
}
.submitAreaType1 .submitBtn .btnBlock {
  width: 100%;
  margin: 0;
}

/* required
-------------------------------------------------- */
.req span {
  font-weight: normal;
  font-size: 12px;
  font-size: 2rem;
  padding: 1px 4px;
  color: #ff0000;
  line-height: 25px;
}

.reqBlk {
  float: right;
}

.reqInline {
  display: inline-block;
  float: none !important;
}

/* formInput
-------------------------------------------------- */
.formInput {
  width: 100% !important;
}

.formInput2 {
  width: 100% !important;
}
.formInputY {
  width: 65px;
}

.formInputMD {
  width: 45px;
}

/* custom checkbox
-------------------------------------------------- */
.styledCheckbox:not(#foo) > span > input[type='checkbox'] {
  float: left;
  width: 0px;
  display: none;
}

.styledCheckbox:not(#foo) > span > input[type='checkbox'] + label {
  margin: 0;
  clear: none;
  padding: 0px 0 2px 30px;
  cursor: pointer;
  background: url("/common/mypage/img/checkbox_off.png") left center no-repeat;
}

.styledCheckbox:not(#foo) > span > input[type='checkbox']:checked + label {
  background-image: url("/common/mypage/img/checkbox_on.png");
}

/* custom radio
-------------------------------------------------- */
.styledRadio {
  line-height: 20px;
  margin-bottom: 10px;
}

.styledRadio:not(#foo) > span > input[type='radio'] {
  float: left;
  width: 0px;
  display: none;
}

.styledRadio:not(#foo) > span > input[type='radio'] + label {
  margin: 0;
  clear: none;
  padding: 4px 0 4px 25px;
  cursor: pointer;
  background: url("/common/mypage/img/RadioBtn.svg") left center no-repeat;
}

.styledRadio:not(#foo) > span > input[type='radio']:checked + label {
  background-image: url("/common/mypage/img/radio_on.png");
}

.styledRadio span.fieldTxt {
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
}

.fontgray {
  color: #797A7C;
}

.styledRadio.disabled:not(#foo) > span > input[type='radio'] + label {
  background: url("/common/mypage/img/RadioBtn-off.svg") left center no-repeat;
}

.styledRadio.disabled:not(#foo) > span > input[type='radio']:checked + label {
  background-image: url("/common/mypage/img/RadioBtn.svg");
}

/* cancel radio
-------------------------------------------------- */
.styledRadio.radioS1Like {
  line-height: 1.5;
  margin-bottom: 0;
}

.styledRadio.radioS1Like > span > input[type='radio'] + label {
  position: relative;
  display: inline-block;
  padding: 0 0 0 22px;
  margin-right: 8px;
  background: none !important;
  line-height: 1.5;
}

.styledRadio.radioS1Like > span > input[type='radio'] + label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background: #ffffff;
  border: 2px solid #cccccc;
  border-radius: 50%;
  box-sizing: border-box;
}

.styledRadio.radioS1Like > span > input[type='radio'] + label:hover::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 5px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  background: #cccccc;
  border-radius: 50%;
}

.styledRadio.radioS1Like > span > input[type='radio']:checked + label::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 5px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  background: #e01747;
  border-radius: 50%;
}

.styledRadio.radioS1Like span.fieldTxt {
  margin-right: 0;
}

/* Common elements
-------------------------------------------------- */
/* section Element
-------------------------------------------------- */
/* .sectionType1 {
  margin: 20px 0;
} */

.sectionArrow {
  padding-top: 20px;
  background: #dddddd;
  position: relative;
}
.sectionArrow:before {
  margin-left: -30px;
  border-top: 15px solid #eeeeee;
  border-right: 30px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 30px solid transparent;
  content: " ";
  width: 0;
  height: 0;
  position: absolute;
  left: 50%;
  top: 0;
}

/* heading Element
-------------------------------------------------- */
.titleBlock {
  position: relative;
}
.titleBlock .titleLink {
  position: absolute;
  right: 0;
  top: 10px;
}

.titleBlock2 {
  padding-top: 1em;
}

.titleBlock3 {
  overflow: hidden;
  padding-bottom: 0.5em;
  padding-top: 3px;
}

.titStyle1 {
  margin-bottom: 12px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.2;
  color: #000000;
  font-weight: bold;
}

.titStyle2 {
  margin-bottom: 12px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.2;
  color: #000000;
  font-weight: bold;
}

.titStyle3 {
  margin: 10px 0 9px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
}

.titStyle4 {
    font-size: 28px;
    margin-bottom: 24px;
    font-weight: bold;
    text-decoration: none;
    text-indent: 0px;
    display: block;
    height: auto;
    background: #ffffff url("/common/mypage/img/title_point.png") left no-repeat;
    overflow-wrap: break-word;
    padding-left: 15px;
    background-size: 4px 35px;
}

.subTitStyle1 {
  margin-bottom: 18px;
  font-size: 12px;
  font-size: 1.2rem;
}

/* paragraph Element
-------------------------------------------------- */
p {
  /* margin: 0 0 .8em 0; */
}

.strongType_1 {
  font-weight: bold;
}

.strongType_2 {
  color: #000000;
  font-weight: bold;
}

.colorRed {
  color: #cc0000;
}

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

.floatLeft {
  float: left;
}

.floatRight {
  float: right;
}

.fileIcon,
.windowIcon {
  padding-left: 15px;
  line-height: 1;
}
.fileIcon img,
.windowIcon img {
  vertical-align: middle;
}

.fontS {
  font-size: 10px;
  font-size: 1rem;
}

.note {
  padding: 4px 0;
  font-size: 12px;
  font-size: 1.2rem;
}

.depositTxt {
  margin: 3 0 0;
  text-align: center;
  line-height: 1.2;
}

/* list Element
-------------------------------------------------- */
/* ul */
ul {
  margin: 0;
  list-style: disc;
}
ul li {
  padding: 0;
  margin: 0 0 .5em;
}

/* ol */
ol {
  margin: 0 0 .8em 1.8em;
  list-style: decimal;
}
ol li {
  margin: 0 0 8px;
}

.mypage .footerSelect {
  position: relative;
}

.mypage .footerSelect select {
  top: 0;
  left: 0;
  z-index: 1;
}

.cfooterSelect {
  font-size: 12px;
  padding: 5px 7px;
  background: url(../../images/globe.svg) left center no-repeat;
  background-position: 5px center;
  background-size: 22px;
  width: 58px;
  text-align: right;
  display: block;
  line-height: 2;
  border: 1px solid #CCCCCC;
  border-radius: 5px;
  color: black;
  font-weight: 700;
}

.cfooterSelectInner {
  width: 100% !important;
}

/* attention */
.attention {
  margin: 0 0;
  list-style: none;
  font-size: fz(12);
  color: #666;
}
.attention li {
  padding: 0 0 0 1em;
  margin: 0;
  text-indent: -1em;
}
.attention li.strong {
  color: #cc0000;
}

/* spBr
-------------------------------------------------- */
.spBr10 {
  line-height: 10px !important;
}

/* link Element
-------------------------------------------------- */
.link {
  padding: 0;
}
.link li {
  padding: 0;
  list-style: none;
  position: relative;
}
.link li a {
  padding-left: 13px;
  color: #000000;
}
.link li:after {
  margin-top: -8px;
  position: absolute;
  right: -15px;
  top: 50%;
  background-image: url("/common/mypage/img/icon_1.png");
  background-size: 16px 150px;
  background-repeat: no-repeat;
  background-position: 0 -31px;
  content: " ";
  width: 16px;
  height: 16px;
}


/* Table
-------------------------------------------------- */
/* table Element
-------------------------------------------------- */

.generalTable.generalTable2 {
  padding-top: 0;
}
.generalTable:last-of-type {
  padding-bottom: 10px;
}
.generalTable table {
  width: 100%;
}
.generalTable table thead th {
  font-weight: bold;
  color: #000000;
  vertical-align: top;
  text-align: left;
  border: 1px solid #cccccc;
}
.generalTable table tbody th {
  vertical-align: middle;
}
.generalTable table tbody td {
  vertical-align: top;
  border: 0;
}
.generalTable table tbody th:first-of-type,
.generalTable table tbody td:first-of-type {
  border-left: 0;
}
.generalTable table tbody th:last-of-type,
.generalTable table tbody td:last-of-type {
  border-right: 0;
}
.generalTable table tr:first-of-type td, .generalTable table tr:first-of-type th {
  border-top: 0;
}
.generalTable table tr:last-of-type td, .generalTable table tr:last-of-type th {
  border-bottom: 0;
}
.generalTable table .right {
  text-align: right !important;
}
.generalTable table .left {
  text-align: left !important;
}
.generalTable table .center {
  text-align: center !important;
}
.generalTable .tableType1 {
  margin-bottom: 10px;
}

.generalTable .tableType1 tbody th {
  font-weight: bold;
  width: 120px;
}

.formTableBlock .generalTable .tableType1 tbody td {
  vertical-align: middle;
}
.generalTable .tableType2 {
  margin-bottom: 10px;
}
.generalTable .tableType2:last-of-type {
  margin-bottom: 0;
}
.generalTable .tableType2 th, .generalTable .tableType2 td {
  padding: 15px;
}
.generalTable .tableType2 tbody th {
  font-weight: bold;
  color: #000000;
  background: #ffffff;
  width: 40%;
}
.generalTable .tableType2 tbody td {
  background: #ffffff;
  width: 60%;
}
.generalTable .tableLayoutType1 tbody th {
  display: block;
  width: 100% !important;
  border: 0;
}
.generalTable .tableLayoutType1 tbody td {
  padding: 0;
  display: block;
  border: 0;
}
.generalTable .tableLayoutType1 td .displayTable {
  display: table;
  width: 100%;
}
.generalTable .tableLayoutType1 td .tableCell {
  display: table-cell;
}
.generalTable .tableLayoutType1 tr .displayTable div:first-of-type {
  padding: 10px;
  width: 75%;
}
.generalTable .tableLayoutType1 tr .displayTable div:last-of-type {
  padding: 10px;
  width: 25%;
  vertical-align: middle;
  /* border-left: 1px solid #cccccc; */
}
.generalTable .tableLayoutType1 tr td .displayTable .tableCellAll {
  width: 100%;
}
.generalTable .tableLayoutType1 tr .displayTable div.tableCellFirst {
  width: 41% !important;
}
.generalTable .tableLayoutType1 tr .displayTable div.tableCellMiddle {
  border-left: 1px solid #cccccc;
  padding: 10px;
  text-align: right;
  width: 28%;
}
.generalTable .tableLayoutType2 td {
  padding: 0;
}
.generalTable .tableLayoutType2 tbody th {
  display: table-cell;
  width: 25% !important;
}
.generalTable .tableLayoutType2 tbody td {
  display: table-cell;
  border: 1px solid #cccccc;
  border-right: 0;
}
.generalTable .tableLayoutType2 td .displayTable {
  border-bottom: 0;
  display: table;
  width: 100%;
}
.generalTable .tableLayoutType2 td .tableCell {
  display: table-cell;
  padding: 10px;
}
.generalTable .tableLayoutType2 td .right {
  border-left: 1px solid #cccccc;
}
.generalTable .tableLayoutType2 tr .displayTable div:first-of-type {
  width: 70%;
}
.generalTable .tableLayoutType2 tr .displayTable div:last-of-type {
  width: 30%;
  background-color: white;
}
.generalTable .tableLayoutType2 td.tdPrice {
  width: 20%;
  display: none;
}

/* image Element
-------------------------------------------------- */
.image {
  padding: 3px 0;
}

.caption {
  margin: 3px 0 0;
  font-size: fz(10);
  line-height: 1.5;
  color: sub-color1;
}

/* hr Element
-------------------------------------------------- */
hr {
  margin: 20px 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
}

/* Button
-------------------------------------------------- */
/* btnBlock
-------------------------------------------------- */
.btnBlock .btn {
  margin: 0;
  padding: 3px 0;
}
.btnBlock .btn li {
  margin-bottom: 0;
  border-radius: 3px;
  list-style: none;
  text-align: center;
}
.btnBlock .btn li.btnInline {
  display: inline-block;
}
.btnBlock .btn a {
  display: block;
}
.btnBlock .btn .btnIcon {
  position: relative;
}
.btnBlock .btn .btnIcon:before {
  position: absolute;
  content: ' ';
  background-image: url("/common/mypage/img/logout.svg");
  background-size: 16px 150px;
}

.btnBlock .btn .btnIcon:after {
  position: absolute;
  content: ' ';
  background-image: url("/common/mypage/img/arrow_white_right.svg");
  margin-top: -4px;
  width: 20px;
  height: 20px;
  right: -30px;
  top: 50%;
  background-repeat: no-repeat;
}

.btnBlock li {
  position: relative;
  vertical-align: bottom;
}
.btnBlock .btnColorType1 {
  font-size: 10px;
  font-size: 1rem;
  color: #000000;
}


.btn_map {
  border: 1px solid #cccccc !important;
}
.btn_map .btnIcon {
  position: relative;
  padding-left: 16px;
  display: inline-block;
}

.btnBlock .btnColorType1 li.formSubmit input[type="submit"] {
  padding: 1em;
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
  color: white;
}
.btnBlock .btnColorType1 .btnIcon:before {
  margin-top: -8px;
  width: 16px;
  height: 16px;
  left: 0;
  top: 50%;
  background-position: -5px -32px;
  background-repeat: no-repeat;
}
.btnBlock .btnColorType1 .btn_map .btnIcon:before {
  background-image: url(/common/mypage/img/arrow_red_right.svg);
  background-position: center;
  background-size: 8px 10px;
  margin-top: -8px;
  left: -2px;
}
#header .headerLogoutBtn .btnIcon:before {
  background-image: url("/common/mypage/img/logout.svg");
  background-position: center;
  background-size: 16px;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  left: -8px;
}

.btnBlock .btnColorType1 a,
.btnBlock .btnColorType1 input[type="submit"] {
  padding: .5em 1em;
  color: black;
  border: 0;
  background: transparent;
  cursor: pointer;
  width: 100%;
  top: auto;
}
.btnBlock .btnColorType1.settleBtn {
  position: absolute;
  right: 0;
  top: -3px;
  font-weight: bold;
}
.btnBlock .btnColorType1.settleBtn li {
  font-size: 12px;
  font-size: 1.2rem;
  position: relative;
}
.btnBlock .btnColorType1.settleBtn a {
  padding: .6em 3em;
}
.btnBlock .btnColorType1.settleBtn .attentionIco {
  position: absolute;
  top: -13px;
  right: 5px;
  display: block;
  width: 24px;
  height: 24px;
  background: #cc0000;
  border-radius: 12px;
  text-indent: -999em;
  overflow: hidden;
  text-align: left;
}
.btnBlock .btnColorType1.settleBtn .attentionIco:before {
  margin-left: 6px;
  margin-top: 6px;
  width: 12px;
  height: 12px;
  background: url("/common/mypage/img/icon_1.png") center -114px no-repeat;
  background-size: 16px 150px;
  content: " ";
  display: block;
}
.btnBlock .btnColorType1.receiptBtn {
  position: absolute;
  right: 0;
  top: 7px;
  
}
.travelinfoChangeBtn {
  top: -4px !important;
}
.btnBlock .btnColorType1.receiptBtn li {
  font-size: 10px;
  font-size: 1rem;
}

.btnBlock .btnColorType1.receiptBtn .btnIcon {
  padding-left: 22px;
  font-size: 12px;
}
.btnBlock .btnColorType1.receiptBtn .btnIcon:before {
  background-image: url("/common/mypage/img/file_icon.svg");
  background-position: center;
  background-size: 16px 16px;
  width: 16px;
  height: 16px;
  margin-top: -8px;
}
.btnBlock .btnColorType1 .formSubmit .btnIcon {
  padding-left: 0 !important;
}
.btnBlock .btnColorType1 .formSubmit .btnIcon:before {
  left: 65px;
  background-repeat: no-repeat;
}
.btnBlock .btnColorType2 {
  font-size: 14px;
  font-size: 1.4rem;
  color: #ffffff;
}
.btnBlock .btnColorType2 li {
  background: #cc0000;
}
.btnBlock .btnColorType2 .btnIcon:before {
  margin-top: -8px;
  width: 16px;
  height: 16px;
  left: 0;
  top: 50%;
  background-position: -5px -48px;
}
.btnBlock .btnColorType2 a {
  color: #ffffff;
}

/* Utilities and Component Layout
-------------------------------------------------- */
/* bnrBlock
-------------------------------------------------- */
.bnrBlock ul {
  margin: 0;
}
.bnrBlock li {
  margin-bottom: 15px;
  list-style: none;
}

/* siegeTextBox1
-------------------------------------------------- */
.siegeTextBox1 {
  margin: 0 0;
  padding: 15px 18px;
  background: #eeeeee;
  font-size: 10px;
  font-size: 1rem;
}

/* detailBtnBlock
-------------------------------------------------- */
.detailBtnBlock .btn li a{
  background: #CC0000;
  border-radius: 4px;
  color: white;
  font-weight: normal;
  font-size: 13px;
  padding: 4px;
}
.topOrderCta .btn li a {
  background: #CC0000;
  border-radius: 4px;
  color: white;
  font-weight: normal;
  font-size: 13px;
}
.detailBtnBlock, .submitBtnBlock {
  padding: 16px 0px 8px;
  background: transparent;
  clear: both;
}
.detailBtnBlock .btn, .submitBtnBlock .btn, .topOrderCta .btn {
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
}
.detailBtnBlock .btn li, .submitBtnBlock .btn li, .topOrderCta .btn li {
  margin-bottom: 5px;
}
.detailBtnBlock .btn li:last-child, .submitBtnBlock .btn li:last-child {
  margin-bottom: 0;
  background: #CC0000;
  color: white;
  border-radius: 4px;
}

/* editBtnBlock
-------------------------------------------------- */
.editBtnBlock {
  padding: 7px 10px 11px;
  background: #dddddd;
}
.editBtnBlock:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}
.editBtnBlock .btn {
  font-weight: bold;
  font-size: 12px;
  font-size: 1.2rem;
}
.editBtnBlock .btn li {
  width: 49%;
}
.editBtnBlock .btn li:first-child {
  float: left;
}
.editBtnBlock .btn li:last-child {
  float: right;
}

/* orderBtnBlock
-------------------------------------------------- */
.orderBtnBlock:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}
.orderBtnBlock .btn {
  font-size: 12px;
  font-size: 1.2rem;
}
.orderBtnBlock .btn li {
  border-radius: 10px;
}

.orderBtnBlock .btn li a {
  padding: .8em 2em;
  width: 350px;
  height: 50px;
  background: #CC0000;
  }
.topOrderCta .btn li {
  background: #CC0000;
  border-radius: 4px;
}
.topOrderCta .btn li a {
  width: auto;
  height: auto;
  padding: 4px;
}

/* usePriceTable
-------------------------------------------------- */
.generalTable .usePriceTable {
  font-size: 15px;
  font-size: 1.5rem;
}
.generalTable .usePriceTable th {
  padding: 25px 5px 25px 15px;
}
.generalTable .usePriceTable td {
  padding: 25px 15px 25px 5px;
  font-weight: bold;
  color: #cc0000;
}

.tablePrice {
  font-weight: bold;
  padding: 0px 10px;
  text-align: right;
}

/* zipsearchBlock
-------------------------------------------------- */
.zipsearchBlock {
  margin-top: 5px;
}
.zipsearchBlock li {
  display: inline-block;
  font-size: 11px;
  font-size: 1.1rem;
}

/* submitBtnBlock
-------------------------------------------------- */
.submitBtnBlock.noBg {
  background: none !important;
}

/* margin
-------------------------------------------------- */
.marginTop10 {
  margin-top: 10px;
}

.marginBottom0 {
  margin-bottom: 0 !important;
}

.marginBottom32 {
  margin-bottom: 20px !important;
}

.marginBottom25 {
  margin-bottom: 25px !important;
}

/* padding
-------------------------------------------------- */
.padding0 {
  padding: 0 !important;
}

/* pageNavi
-------------------------------------------------- */
.pageNavi ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: center;
}
.pageNavi ul li {
  display: inline-block;
  margin: 5px;
}
.pageNavi ul li a {
  color: #0066cc;
  display: inline-block;
  border: 1px solid #cccccc;
  padding: 10px 15px;
  border-radius: 3px;
}
.pageNavi ul li.prev {
  margin-right: 15px;
}
.pageNavi ul li.next {
  margin-left: 15px;
}
.pageNavi ul li.selected a {
  color: #cc0000;
  border-color: #cc0000;
}

/* oneColumnTable
-------------------------------------------------- */
.oneColumnTable {
  padding-top: 0px !important;
  background: #eeeeee !important;
}
.oneColumnTable .generalTable3 {
  padding-top: 0px;
  background: #eeeeee;
}

.oneColumnTableType1 .generalTable3 {
  padding-top: 20px;
}

/* collapse div
-------------------------------------------------- */
.collapseLink .btnBlock .btn .btnIcon {
  padding-left: 20px;
}
.collapseLink a .btnIcon:before {
  background: url("/common/mypage/img/icon_down.png") center no-repeat !important;
  background-size: 16px !important;
}
.collapseLink a.active .btnIcon:before {
  background: url("/common/mypage/img/icon_up.png") center no-repeat !important;
  background-size: 16px !important;
}

/* whiteInputArea
-------------------------------------------------- */
.whiteInputArea {
  background: #fff;
  padding: 5px;
}
.whiteInputArea .memo textarea {
  border: 1px solid #cccccc;
}

/* threeColumnsInput
-------------------------------------------------- */
.threeColumnsInput {
  display: table;
  width: 100%;
  border-spacing: 10px;
  border-collapse: separate;
  margin-top: -10px;
}
.threeColumnsInput .column {
  width: 33.33%;
  background: #fff;
  display: table-cell;
  vertical-align: middle;
  margin-bottom: 10px;
  border-collapse: separate;
  border: 1px solid #cccccc;
  border-radius: 3px;
  padding: 12px;
}
.threeColumnsInput .columnEnd {
  margin-right: 0;
}

/* twoColumnsInput
-------------------------------------------------- */
.twoColumnsInput {
  display: table;
  width: 100%;
  border-spacing: 10px;
  border-collapse: separate;
}
.twoColumnsInput .column {
  width: 50%;
  background: #fff;
  display: table-cell;
  vertical-align: middle;
  margin-bottom: 10px;
  border-collapse: separate;
  border: 1px solid #cccccc;
  border-radius: 3px;
  padding: 10px;
}
.twoColumnsInput .columnEnd {
  margin-right: 0;
}
.twoColumnsInput .errorBox {
  background: #fbebeb;
  border-color: #f0b2b2;
}

.twoColumnsInputType1 {
  margin-top: -10px;
}

/* customSelect
-------------------------------------------------- */
.select-fancy {
  display: inline-block;
  border: 1px solid #cccccc;
  position: relative;
  width: auto;
  overflow: hidden;
  background: #fff url("/common/mypage/img/icon_select.png") no-repeat right;
  background-size: 32px;
}

.select-fancy, .select-fancy > * {
  cursor: pointer;
}

.select-fancy select {
  box-sizing: content-box;
  background: transparent;
  border: 0;
  outline: 0;
  padding: .3em 2em .3em .5em;
  width: 100%;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: radio-container;
  appearance: none;
  font-family: "Hiragino Kaku Gothic Pro",Meiryo, "MS PGothic", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
}

/* supportTxt
-------------------------------------------------- */
.supportTxt {
  padding: 10px 10px 0px;
}

/* displayTable
-------------------------------------------------- */
.displayTable {
  display: table;
  width: 100%;
}
.displayTable .tableCell {
  display: table-cell;
  vertical-align: middle;
}
.displayTable .tableCell .tableCellBtn {
  width: 80px;
}

/* completeMsg
-------------------------------------------------- */
.completeMsg {
  text-align: center;
  color: #000;
  background: #d9f0ff;
  border: 1px solid #99d8ff;
  margin-bottom: 10px;
  padding: 5px;
}

/* errorMsg
-------------------------------------------------- */
.errorMsg {
  text-align: left;
  color: #B00;
  background: #ffd8d9;
  border: 1px solid #dba8a7;
  margin-bottom: 10px;
  padding: 5px;
  padding-left: 15px;
}

/* .forgotPass
-------------------------------------------------- */
p.forgotPass {
  /* padding-bottom: 20px; */
}

/* spBlock
-------------------------------------------------- */
.spBlock {
  display: inline-block;
}

/* planDetail
-------------------------------------------------- */
.planDetail {
  display: table;
  margin: 15px 0px;
  width: 100%;
}
.planDetail .col {
  display: table-cell;
  vertical-align: middle;
  padding: 15px;
}
.planDetail .col:first-child {
  background: #dddddd;
  text-align: center;
}
.planDetail .col:last-child {
  background: #fff;
}
.planDetail .col:last-child ul {
  margin-bottom: 0;
}
.planDetail .col:last-child ul li {
  color: #b5b5b5;
}
.planDetail .col:last-child ul li span {
  color: #000;
}

.planDetail2 {
  border: 1px solid #dddddd;
}

/* hiddenDiv
-------------------------------------------------- */
.hiddenDiv {
  display: none;
}
.hiddenDiv th {
  background: #555555 !important;
}
.hiddenDiv td {
  background: #fff9e9 !important;
  border-bottom: 0px !important;
  border-top: 0px !important;
}
.hiddenDiv td .displayTable {
  border-bottom: 1px solid #cccccc !important;
}
.hiddenDiv .styledRadio {
  display: inline-block;
  margin-bottom: 5px;
}

.c2-div {
  border-top: 1px solid #cccccc;
}

#option16-1a, #option16-1b, #option16-1c,
#option16-1d, #option16-1e, #option16-1f,
#option16-1g, #option16-1h, #option16-1i,
#option16-1j, #option16-2a, #option16-2b,
#option16-2c, #option16-2d, #option16-2e,
#option16-2f, #option16-2g, #option16-2h,
#option16-2i, #option16-2j {
  display: none;
}

/* rowStyled
-------------------------------------------------- */
/* th.rowStyled {
  background: #555555 !important;
} */

/* innerTable
-------------------------------------------------- */
.innerTable {
  width: 100% !important;
  border-left: 0 !important;
  padding: 10px 0 !important;
}
.innerTable table {
  width: 100%;
}
.innerTable table td {
  border: 0 !important;
  vertical-align: top !important;
  display: table-cell !important;
  padding-bottom: 10px !important;
}
.innerTable table td:first-child {
  padding-right: 10px !important;
}

/* .mfp_win
-------------------------------------------------- */
#narita1_pickup, #narita1_return, #narita2_pickup, #narita2_return, #narita3_return, #narita2_sim, #narita3_locker, #haneda2, #haneda,  #haneda_returnbox, #haneda_afterhour, #haneda_jal_return, #haneda3_locker, #kansai, #kansai2, #kansai_sim, #kansai_locker, #kansai2_locker, #chubu, #chubu_locker, #chubu2, #chubu2_locker, #fukuoka, #fukuoka_locker, #newchitose, #newchitose2, #newchitose2_locker, #naha, #naha_locker, #niigata, #niigata_locker, #komatsu, #komatsu_locker, #kagoshima, #kagoshima2, #kagoshima2_locker, #shizuoka, #shizuoka_locker, #asahikawa, #sendai, #sendai_locker, #expo2025, #itami_locker, #hiroshima_locker, #kitakyushu_locker, #kumamoto_locker, #miyazaki_locker, #shimojishima_locker{
  position: relative;
  margin: 10px auto;
  background: #ffffff;
  padding: 50px 10px 20px 10px;
}

.mfp_win,
.mfp_win * {
  box-sizing: content-box;
}

.mfp_win {
  font-size: 12px;
  font-size: 1.2rem;
}

.mfp_win img {
  margin-bottom: 5px;
  max-width: 100%;
  height: auto;
}

.mfp_win h5 {
  border: 1px solid #cccccc;
  background: #ffffff;
  font-size: 1.3em;
  line-height: 48px;
  padding-left: 10px;
}

.mfp_win h5 span.coutner_label{
    background: #ba3030;
    color: #fff;
    padding: 5px 8px;
    border-radius: 3px;
    margin-right: 8px;
    font-size: 1.2rem;
    vertical-align: bottom;
}

.mfp_win div.clearfix {
  text-align: center;
}

.mfp_win h5 div.right {
  width: 80px;
  float: right;
  font-weight: bold;
}

.mfp_win .clearfix:before, .mfp_win .clearfix:after {
  content: " ";
  display: table;
}

.mfp_win .clearfix:after {
  clear: both;
}

.mfp_win .cl_cccccc {
  background-color: #cccccc;
}

.mfp_win .cl_cc0000 {
	background-color: #cc0000;
	color: #ffffff;
}

.mfp_win .right {
  float: none;
  text-align: center;
}

.mfp_win .mgt20 {
  margin-top: 20px !important;
}

.mfp_win .mgt10 {
  margin-top: 10px;
}

.mfp_win .left {
  float: none;
}

.mfp_win table {
  width: 100%;
  border-spacing: 0px;
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
}

.mfp_win .cl_f3f3f3 {
  background-color: #f3f3f3;
}

.mfp_win .txt_14 {
  font-size: 1.2em;
}

.mfp_win table th {
  font-weight: bold;
}

.mfp_win table th, table td {
  line-height: 200%;
  padding: 10px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
}

.mfp_win .w470 {
  width: 100%;
}

/* タイトル2行対応 */
.mfp_win_special {
	font-size:0;
}

.mfp_win_special div.left{
	display: inline-block;
	vertical-align: top;
	width: 73%;
	height: 48px;
	line-height: 24px;
	border: 1px solid #cccccc;
	background: #ffffff;
	font-size:7px;
	padding-left: 10px;
}

.mfp_win_special div.right {
	display: inline-block;
	vertical-align: top;
	width: 22%;
	height: 48px;
	line-height: 48px;
	font-weight: bold;
	text-align: center;
	border: 1px solid #cccccc;
	font-size:16px;
}


.notice {
	line-height: 130%;
}
.box_line_03 {
	border:1px solid #cc0000;
	padding:20px;
	margin-bottom: 20px;
}
.box_line_03 p {
	margin-bottom: 0px;
	font-size: 13px;
	color: #000000;
}

.icon_required_s {
  color: #e01747;
  margin: 0 3px;
}

.mgt40{
  margin-top: 40px;
}

  .selectbox1 {
   padding: 7px 30px 7px 10px;
    line-height: 1.5;
    border: 1px solid #ccc;
    float: left;
    min-height: 38px;
    max-width: 100%;
    cursor: pointer;
    position: relative;

    background: #fff url(../../images_app/pc/default/selectbox.svg) no-repeat right;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
        background-position: right 10px center;
    -webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
    -moz-appearance: none;  /* ベンダープレフィックス(Firefox用) */
  appearance: none;   /* 標準のスタイルを無効にする */

    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
  }

/* Smartphone-only overrides are managed in style_sp.css */

/* Page-Scoped Shared Rules
-------------------------------------------------- */
/* page state
-------------------------------------------------- */
/* top / local-nav state */
#top #globalNav li.gnavTop a {
  color: #cc0000;
}

#top #sidebar {
  margin-top: 24px;
}

#orderList #localNav li.lnav2 a {
  color: #cc0000 !important;
}

#profiledetail #localNav li.lnav3 a {
  color: #cc0000 !important;
}

#profiledetail .btnBlock .btn .btnIcon:after {
  right: 110px;
  left: auto;
  margin-top: -4px;
}

html:lang(en) #profiledetail .btnBlock .btn .btnIcon:after {
  right: 95px;
}

html:lang(zh) #profiledetail .btnBlock .btn .btnIcon:after {
  right: 120px;
}

/* orderdetail
-------------------------------------------------- */
.mypage-orderdetail .submitArea .backBtn {
  clear: both;
  width: 100%;
  text-align: center;
}

.mypage-orderdetail .submitArea .submitBtn.orderDetailActionBtn {
  float: none;
  width: 100%;
  margin-bottom: 20px;
}

.mypage-orderdetail .submitArea .submitBtn.orderDetailActionBtn .btnBlock {
  width: auto;
  margin: 0 auto;
  float: none;
}

.mypage-orderdetail .submitArea .submitBtn.orderDetailActionBtn .btn {
  justify-content: center;
}

.mypage-orderdetail .submitArea .submitBtn.orderDetailActionBtn .btn li {
  min-width: 150px;
}

.mypage-orderdetail .submitArea .submitBtn.orderDetailActionBtn .btn li a {
  min-height: 42px;
  padding: 10px 24px;
  font-size: 14px;
  font-size: 1.4rem;
}

.mypage-orderdetail .submitArea .backBtn .btnBlock {
  width: auto;
  margin: 0 auto;
}

.mypage-orderdetail .submitArea .backBtn .btn li {
  text-align: center;
}

.mypage-orderdetail .submitArea .backBtn .btn li a {
  display: inline-block;
  width: auto;
  padding: 0;
  color: #797a7c;
  background: transparent;
}


.mypage-orderdetail .submitArea .backBtn .btn .btnIcon {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding-left: 25px;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #797a7c;
}
.mypage-orderdetail .submitArea .backBtn .btn .btnIcon:before {
  top: 50%;
  left: 0;
  width: 20px;
  height: 15px;
  margin-top: -7px;
  background: url("/common/mypage/img/back.svg") center / contain no-repeat;
}
.mypage-orderdetail .submitArea .backBtn .btn .btnIcon:after {
  content: none;
}

#passwordChange #localNav li.lnav4 a {
  color: #cc0000 !important;
}

/* travelinfo edit
-------------------------------------------------- */
.mypage-travelinfo .travelinfo-select {
  border: 1px solid #cccccc;
  border-radius: 4px;
  box-sizing: border-box;
  background: #ffffff url("/common/images_app/pc/default/selectbox.svg") no-repeat right 14px center;
  background-size: 13px 8px;
}

.mypage-travelinfo .travelinfo-select select {
  width: 212px;
  padding: 7px 36px 7px 10px;
  border: 0;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.5;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
}

/* profile edit
-------------------------------------------------- */
@media only screen and (min-width: 799px) {
  .mypage-profiledetail .tableType1--row-divider tbody th,
  .mypage-profiledetail .tableType1--row-divider tbody td {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .mypage-profiledetail .tableType1--row-divider tbody tr + tr th,
  .mypage-profiledetail .tableType1--row-divider tbody tr + tr td {
    border-top: 1px solid #d9d9d9;
  }

  .mypage-profiledetail .tableType1--row-divider tbody th[rowspan="2"] + td {
    padding-bottom: 2px;
  }

  .mypage-profiledetail .tableType1--row-divider tbody tr.rowspan-child td {
    padding-top: 2px;
  }

  .mypage-passwordChange .tableLayoutType1 input[type="password"].formInputFull {
    width: 370px;
    max-width: 100%;
    box-sizing: border-box;
    margin-left: 14px;
  }
}

.mypage-profiledetail .tableType1--row-divider tbody tr.rowspan-child th,
.mypage-profiledetail .tableType1--row-divider tbody tr.rowspan-child td {
  border-top: 0;
}

/* password reminder
-------------------------------------------------- */
.mypage-password_reminder .birthdayFields {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 4px;
}

.mypage-password_reminder .birthdayFields .select-fancy {
  flex: 0 0 auto;
  color: black;
}

.mypage-password_reminder .birthdayFields .addTxt {
  padding: 0;
  line-height: 1;
  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .mypage-profiledetail .form-label {
    display: flex;
    justify-content: space-between;
  }

  .mypage-profiledetail .form-label > span {
    padding: 3px 0;
  }
}

/* Desktop-Only Overrides
--------------------------------------------------
 * Keep desktop-only changes here unless the selector should also affect SP.
 */
@media only screen and (min-width: 799px) {
/*
 * mypage pc css structure
 * 1. Layout
 * 2. Form
 * 3. Common elements
 * 4. Table
 * 5. Button
 * 6. Utilities and modal
 * 7. Page
 */

/* Layout
-------------------------------------------------- */
/* contentArea
-------------------------------------------------- */
.contentArea {
  margin: 0 auto;
  padding: 0;
  width: 1024px;
}

#mainArea .contentArea {
  margin: 0;
  padding: 0;
  width: 615px;
}
#mainArea .contentArea:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}

/* header
-------------------------------------------------- */
#header {
  padding: 20px 0 0;
  width: 980px;
  margin: auto;
}
#header .contentArea {
  position: relative;
  margin-bottom: 30px;
}
#header .logo {
  width: 224px;
  float: left;
}
#header .siteName img {
  width: 224px;
  height: 60px;
}
#header .headerBtnBlock {
  display: block;
  clear: both;
  position: absolute;
  top: 44px;
  right: 12px;
}
#header .headerBtnBlock li {
  margin: 0 2px;
  width: 133px;
}
#header .headerBtnBlock li a {
  padding: 6px 0;
}
#header .headerCustomerBlock {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  position: absolute;
  top: 50%;
  right: 45px;
  transform: translateY(-50%);
  min-width: 0;
  border-top: 0;
  background: transparent;
  clear: both;
}
#header .headerCustomerBlock .headerCustomer {
  margin: 0;
  padding: 0;
  flex: 0 1 auto;
  min-width: 0;
  width: auto;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  white-space: nowrap;
}
#header .headerCustomerBlock .headerCustomerName {
  font-weight: bold;
}
#header .headerLogoutBtn {
  margin: 0;
  width: auto;
  float: none;
}
#header .headerLogoutBtn .btn {
  padding: 0;
}
#header .headerLogoutBtn li {
  width: 101px;
  font-size: 12px;
  font-size: 1.2rem;
  border: 1px solid #e5e5e5;
  border-radius: 6px;
  background: #ffffff;
  box-sizing: border-box;
  overflow: hidden;
}
#header .headerLogoutBtn li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 37px;
  padding: 0 8px;
  box-sizing: border-box;
  background: #ffffff;
}
#header .headerLogoutBtn .btnIcon {
  display: inline-block;
  padding-left: 22px;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}
#header .headerLogoutBtn .btnIcon:before {
  left: 0;
  margin-top: -9px;
  width: 18px;
  height: 18px;
  background-size: 18px;
}
#header .headerLogoutBtn .btnIcon:after {
  content: none;
}
#header .headerMypageMenuBlock {
  display: none;
}

/* globalNav
-------------------------------------------------- */
#globalNav {
  display: block;
}

/* bodyArea
-------------------------------------------------- */
#bodyArea {
  margin: 16px auto 50px;
  padding: 48px;
  width: 980px;
  font-size: 14px;
  font-size: 1.4rem;
}
#bodyArea:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}

/* topicPath
-------------------------------------------------- */
#topicPath {
  border-bottom: none;
}
#topicPath ul {
  font-size: 12px;
  font-size: 1.2rem;
}

/* mainArea
-------------------------------------------------- */
#mainArea {
  width: 615px;
  margin-left: 40px;
}
#mainArea section:first-of-type {
  margin-top: 0;
}

/* sidebar
-------------------------------------------------- */
#sidebar {
  display: block;
  width: 230px;
}

/* backToTopNav
-------------------------------------------------- */
#backToTopNav a:hover {
  background: #ededed;
}

/* .footerSerchBlock.orderSerchBlock
-------------------------------------------------- */
.footerSerchBlock {
  display: none;
}

/* Form
-------------------------------------------------- */
/* input
-------------------------------------------------- */
input[type="text"],
input[type="password"],
input[type="search"] {
  padding: 7px 10px;
  font-size: 14px;
  font-size: 1.4rem;
}

input[type="submit"] {
  padding: 5px .8em;
  border-radius: 2px;
  font-size: 1px;
  font-size: 0.1rem;
}

/* select
-------------------------------------------------- */
select.selectNum {
  max-width: 70px !important;
}

/* datepicker
-------------------------------------------------- */
.datepicker {
  width: 32%;
}

/* submitArea
-------------------------------------------------- */
.submitArea .backBtn {
  float: left;
  width: 28%;
  margin-right: 4%;
  padding-top: 15px;
}
.submitArea .backBtn .btnBlock {
  width: 100%;
}
.submitArea .backBtn .btnBlock .btn li a {
  padding: 0.5em 1em;
}
.submitArea .submitBtn {
  float: right;
  width: 68%;
}
.submitArea .submitBtn .btnBlock .btn li a {
  font-size: 16px;
  font-size: 1.6rem;
}
.submitArea li.formSubmit:hover input[type="submit"] {
  text-decoration: none;
}
.submitArea li.formSubmit:hover {
  background: #ededed;
}

.submitAreaType1 {
  padding: 40px 100px;
}

.mypage-orderdetail .submitArea .backBtn {
  clear: both;
  width: 100%;
  margin-right: 0;
  padding-top: 8px;
  text-align: center;
}
.mypage-orderdetail .submitArea .backBtn .btn li a {
  display: inline-block;
  width: auto;
  padding: 0;
  color: #797a7c;
  text-decoration: none;
}
.mypage-orderdetail .submitArea .backBtn .btn li a:hover {
  color: #797a7c;
  text-decoration: none;
}

/* required
-------------------------------------------------- */
.req {
  float: right;
}

.reqM {
  margin-top: -12px;
}

/* formInput
-------------------------------------------------- */
.formInput {
  width: 200px !important;
}

.formInput2 {
  width: 305px !important;
}

.pcDisnone {
  display: none;
}

.pcInline {
  display: inline-block;
}

/* Common elements
-------------------------------------------------- */
/* section Element
-------------------------------------------------- */
.sectionArrow:before,
div.sectionArrow:before {
  margin-left: -40px;
  border-top: 20px solid #eeeeee;
  border-right: 40px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 40px solid transparent;
}

/* heading Element
-------------------------------------------------- */
.titleBlock .titleLink {
  top: 12px;
  font-size: 12px;
  font-size: 1.2rem;
}

.titStyle2 {
  margin-bottom: 12px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.2;
  color: #000000;
  font-weight: bold;
}

.titStyle3 {
  margin-bottom: 12px;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
}

/* link Element
-------------------------------------------------- */
.link li a {
  padding-left: 15px;
}
.link li a:hover {
  color: #bebebe;
  text-decoration: none;
}

/* Table
-------------------------------------------------- */
/* table Element
-------------------------------------------------- */
.tableBlock {
  padding: 30px;
  background: #F8F8F8;
  border-radius: 8px;
}

.generalTable {
  padding: 0 0 25px;
}
.generalTable .tableLayoutType1 tbody th {
  display: table-cell;
  width: 26% !important;
}
.generalTable .tableLayoutType1 tbody td {
  display: table-cell;
}
.generalTable .tableLayoutType1 td .displayTable {
  border-bottom: 0;
}
.generalTable .tableLayoutType1 tr .displayTable div:first-of-type {
  width: 66%;
}

.generalTable .tableLayoutType2 td.tdPrice {
  display: table-cell;
  vertical-align: middle;
}
.generalTable .tableLayoutType2 td.pcHide {
  display: none;
}

/* btnBlock
-------------------------------------------------- */
.btnBlock .btn li {
  border-radius: 2px;
}
.btnBlock .btnColorType1 {
  font-size: 12px;
  font-size: 1.2rem;
}
.btnBlock .btnColorType1 li.formSubmit input[type="submit"] {
  font-size: 14px;
  font-size: 1.4rem;
}
.btnBlock .btnColorType1.settleBtn li {
  font-size: 14px;
  font-size: 1.4rem;
}
.btnBlock .btnColorType1.settleBtn a {
  padding: .5em 5em;
}

.btnBlock .btnColorType1.receiptBtn li {
  font-size: 12px;
  font-size: 1.2rem;
}
.btnBlock .btnColorType2 a:hover {
  text-decoration: none;
}

.floatBtn {
  float: right;
  display: inline-block;
}

/* pcTwoColumns
-------------------------------------------------- */
.pcTwoColumnsType1:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}
.pcTwoColumnsType1 .pcColumns {
  padding-bottom: 10px;
  width: 48.6%;
}
.pcTwoColumnsType1 .pcColumns:first-of-type {
  float: left;
}
.pcTwoColumnsType1 .pcColumns:last-of-type {
  float: right;
}

.generalTable .tableType1:last-of-type {
  margin-bottom: 0px;
}
/* order summary table */
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 {
  border: 1px solid #e6e6e6;
  border-collapse: separate;
  border-spacing: 0;
  background: #ffffff;
}
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 th,
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 td {
  padding: 10px;
  vertical-align: middle;
  font-size: 12px;
}
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 th {
  background: #777777;
  color: #ffffff;
  font-weight: 600;
  width: 90px;
  white-space: nowrap;
  border-right: 1px solid #e6e6e6;
}
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 tr + tr th,
.tableBlock.pcTwoColumnsType1 .generalTable .tableType1 tr + tr td {
  border-top: 1px solid #e6e6e6;
}

.orderSummaryBlock {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 3%;
}
.orderSummaryBlock:after {
  content: none;
}
.orderSummaryBlock .pcColumns {
  float: none;
  display: flex;
  flex-direction: column;
}
.orderSummaryBlock .generalTable {
  height: 100%;
}
.orderSummaryBlock .generalTable.generalTable2 .tableType2 {
  height: 100%;
}
.orderSummaryBlock .generalTable.generalTable2 tbody tr {
  height: 100%;
}
.orderSummaryBlock .generalTable.generalTable2 tbody th,
.orderSummaryBlock .generalTable.generalTable2 tbody td {
  vertical-align: middle;
}

/* Table layout helpers
-------------------------------------------------- */
/* pcTwoColumnsType2
-------------------------------------------------- */
.pcTwoColumnsType2 .pcColumns {
  width: 50%;
}

/* orderChangeBlock
-------------------------------------------------- */
.tableBlock.orderChangeBlock {
  padding: 0;
  background: transparent;
  border-radius: 0;
}
.sectionArrow.orderChangeBlock:before,
div.sectionArrow.orderChangeBlock:before {
  content: none;
}
.orderChangeBlock .generalTable {
  padding-bottom: 0px;
}
.orderChangeBlock .generalTable:last-of-type {
  padding-bottom: 0;
}
.orderChangeBlock > .generalTable > p {
  margin-bottom: 10px;
  color: #555555;
  font-weight: 600;
}
.orderChangeBlock .tableType1 {
  background: #ffffff !important;
}
.orderChangeBlock > .generalTable > .tableType1,
.orderChangeBlock .hiddenDiv .tableType1 {
  width: 100%;
  margin-bottom: 0;
  border: 1px solid #dddddd;
  border-collapse: separate;
  border-spacing: 0;
}
.orderChangeBlock .hiddenDiv .tableType1 {
  border-top: 0;
}
.orderChangeBlock .c4-div .tableType1 {
  table-layout: fixed;
}
.orderChangeBlock .c2-div {
  border-top: 0;
}
.orderChangeBlock .generalTable + .generalTable > .tableType1 {
  border-top: 0;
}
.orderChangeBlock > .generalTable > .tableType1 tbody tr + tr th,
.orderChangeBlock > .generalTable > .tableType1 tbody tr + tr td,
.orderChangeBlock .hiddenDiv .tableType1 tbody tr + tr th,
.orderChangeBlock .hiddenDiv .tableType1 tbody tr + tr td {
  border-top: 1px solid #e4e4e4;
}

.orderChangeBlock > .generalTable > .tableType1 th,
.orderChangeBlock .hiddenDiv th {
  color: #ffffff;
  padding: 12px 14px;
  box-sizing: border-box;
  font-size: 14px;
  font-weight: 700;
}
.orderChangeBlock > .generalTable > .tableType1 th {
  background: #6f6f6f !important;
}
.orderChangeBlock .hiddenDiv th {
  background: #555555 !important;
}
.orderChangeBlock .hiddenDiv td {
  background: #fff9e9 !important;
}
.orderChangeBlock .hiddenDiv td .displayTable {
  border-bottom: 1px solid #e4e4e4 !important;
}
.orderChangeBlock .hiddenDiv .tableType1 tbody tr:last-child td .displayTable {
  border-bottom: 0 !important;
}
.orderChangeBlock > .generalTable > .tableType1 tbody td,
.orderChangeBlock .hiddenDiv td {
  border-left: 1px solid #e4e4e4;
}
.orderChangeBlock .tableLayoutType1 td .displayTable {
  width: 100%;
  table-layout: fixed;
}
.orderChangeBlock .tableLayoutType1 .displayTable > .tableCell {
  vertical-align: middle;
  line-height: 1.6;
  word-break: break-word;
}
.orderChangeBlock .tableLayoutType1 .displayTable > .tableCell.right {
  white-space: nowrap;
  text-align: right !important;
}
.orderChangeBlock .tableLayoutType1 .displayTable > .tableCell:first-child:not(:last-child) {
  padding: 12px 14px;
}
.orderChangeBlock .tableLayoutType1 .displayTable > .tableCell:last-child:not(:first-child) {
  width: 120px;
  padding: 12px 14px;
}
.orderChangeBlock .tableLayoutType1 .displayTable > .tableCell.tableCellAll {
  padding: 12px;
}
.orderChangeBlock .styledCheckbox > span {
  display: block;
}
.orderChangeBlock .styledCheckbox label {
  padding-left: 34px;
}
.orderChangeBlock .select-fancy,
.orderChangeBlock input[type="text"],
.orderChangeBlock textarea {
  border-color: #e6e6e6;
}
.orderChangeBlock .select-fancy {
  background-color: #ffffff;
  background-size: 28px;
}

/* orderChangeConfirmBlock
-------------------------------------------------- */
.orderChangeConfirmBlock .generalTable {
  padding-bottom: 18px;
}
.orderChangeConfirmBlock .generalTable:last-of-type {
  padding-bottom: 0;
}
.orderChangeConfirmBlock .titleBlock3 {
  padding-top: 0;
  padding-bottom: 8px;
}
.orderChangeConfirmBlock .titStyle3 {
  margin: 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 {
  width: 100%;
  margin-bottom: 0;
  border: 1px solid #cfcfcf;
  border-collapse: separate;
  border-spacing: 0;
  background: #ffffff;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tr {
  display: table-row;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody th,
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody td {
  display: table-cell;
  vertical-align: middle;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody th {
  width: 145px !important;
  padding: 15px 16px;
  box-sizing: border-box;
  border: 0;
  background: #9a9a9a !important;
  color: #ffffff;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody th.rowStyled {
  background: #666666 !important;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody td {
  padding: 0;
  border: 0;
  background: #ffffff;
  border-left: 1px solid #d9d9d9;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody tr + tr th,
.orderChangeConfirmBlock .tableType1.tableLayoutType1 tbody tr + tr td {
  border-top: 1px solid #d9d9d9;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .displayTable {
  display: table;
  width: 100%;
  table-layout: fixed;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .tableCell {
  display: table-cell;
  width: auto !important;
  padding: 14px 16px !important;
  vertical-align: middle;
  line-height: 1.6;
  word-break: break-word;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .tableCell + .tableCell {
  border-left: 1px solid #d9d9d9;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .tableCell.right {
  width: 90px !important;
  white-space: nowrap;
  text-align: right !important;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .tableCell.tableCellAll {
  display: block;
  width: 100% !important;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .planDetail {
  margin: 12px 0 0;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .planDetail2 {
  border-color: #d9d9d9;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .planDetail .col {
  padding: 12px 14px;
}
.orderChangeConfirmBlock .tableType1.tableLayoutType1 td .planDetail .col:first-child {
  width: 118px;
  background: #efefef;
}
.orderChangeConfirmBlock .submitAreaType1 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 34px 0 0;
  overflow: visible;
}
.orderChangeConfirmBlock .submitAreaType1 .submitBtn,
.orderChangeConfirmBlock .submitAreaType1 .backBtn {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn {
  flex: 0 0 108px;
}
.orderChangeConfirmBlock .submitAreaType1 .submitBtn {
  flex: 0 0 266px;
}
.orderChangeConfirmBlock .submitAreaType1 .btnBlock {
  width: 100%;
  margin: 0;
}
.orderChangeConfirmBlock .submitAreaType1 .btn {
  padding: 0;
}
.orderChangeConfirmBlock .submitAreaType1 .btn li {
  border-radius: 0;
}
.orderChangeConfirmBlock .submitAreaType1 .btn li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  box-sizing: border-box;
  border: 1px solid #cfcfcf;
  background: #ffffff;
  color: #111111;
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn .btn .btnIcon,
.orderChangeConfirmBlock .submitAreaType1 .submitBtn .btn .btnIcon {
  display: inline-block;
  line-height: 1.4;
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn .btn .btnIcon {
  padding-left: 18px;
}
.orderChangeConfirmBlock .submitAreaType1 .submitBtn .btn .btnIcon {
  padding-right: 18px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn .btn .btnIcon:before,
.orderChangeConfirmBlock .submitAreaType1 .submitBtn .btn .btnIcon:after {
  width: 12px;
  height: 12px;
  margin-top: 0;
  top: 50%;
  background-image: url("/common/mypage/img/arrow_red_right.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 7px 10px;
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn .btn .btnIcon:before {
  left: 0;
  transform: translateY(-50%) rotate(180deg);
}
.orderChangeConfirmBlock .submitAreaType1 .backBtn .btn .btnIcon:after,
.orderChangeConfirmBlock .submitAreaType1 .submitBtn .btn .btnIcon:before {
  content: none;
}
.orderChangeConfirmBlock .submitAreaType1 .submitBtn .btn .btnIcon:after {
  right: 0;
  transform: translateY(-50%);
}


/* Button
-------------------------------------------------- */
/* detailBtnBlock
-------------------------------------------------- */
.detailBtnBlock .btn,
.submitBtnBlock .btn,
.topOrderCta .btn {
  font-size: 16px;
  font-size: 1.6rem;
}
.detailBtnBlock .btn:after,
.submitBtnBlock .btn:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  height: 0;
  font-size: 0;
}
.detailBtnBlock .btn li,
.submitBtnBlock .btn li {
  margin-bottom: 0;
  width: 48.6%;
}
.detailBtnBlock .btn li a,
.submitBtnBlock .btn li a {
  padding: 1em 2.5em;
}
.topOrderCta .btn li a {
  padding: 1em 2.5em;
}
.detailBtnBlock .btn li:first-child,
.submitBtnBlock .btn li:first-child {
  float: left;
}
.detailBtnBlock .btn li:last-child,
.submitBtnBlock .btn li:last-child {
  float: right;
}

/* editBtnBlock
-------------------------------------------------- */
.editBtnBlock {
  padding: 0 15px 0 0;
  background: transparent;
  border-right: 1px dotted #cccccc;
  position: absolute;
  top: 2px;
  right: 175px;
}
.editBtnBlock .btn {
  font-size: 12px;
  font-size: 1.2rem;
}
.editBtnBlock .btn li {
  margin: 0 3px;
  width: auto;
  font-weight: normal;
}
.editBtnBlock .btn a {
  padding: 0.5em 2.5em;
}

.orderListEditBtn .btn {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.orderListEditBtn .btn li,
.orderListEditBtn .btn li:first-child,
.orderListEditBtn .btn li:last-child {
  float: none;
  margin: 0;
  width: auto;
  font-weight: normal;
  border: 1px solid #cfcfcf;
  border-radius: 2px;
  box-shadow: inset 0 1px 0 #ffffff;
}

.orderListEditBtn .btn li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 20px;
  color: #222222;
  white-space: nowrap;
  text-decoration: none;
}

.orderListEditBtn .btn .btnIcon {
  display: inline-block;
  padding-left: 16px;
}

.orderListEditBtn .btn .btnIcon:before {
  width: 8px;
  height: 10px;
  left: 0;
  top: 50%;
  margin-top: -5px;
  background-image: url("/common/mypage/img/arrow_red_right.svg");
  background-position: center;
  background-size: 8px 10px;
  background-repeat: no-repeat;
}

.orderListEditBtn .btn .btnIcon:after {
  content: none;
}

@media (min-width: 800px) {
  .orderListHeader {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin-bottom: 16px;
  }

  .orderListHeader > .orderListStatus {
    order: 1;
    flex: 1 1 220px;
    min-width: 0;
    margin-bottom: 0;
  }

  .orderListHeader > .btnBlock {
    order: 3;
    width: auto;
  }

  .orderListHeader > .orderListStatus + .btnBlock:last-child {
    margin-left: auto;
  }

  .orderListHeader > .btnBlock .btnColorType1.receiptBtn,
  .orderListHeader > .btnBlock .btnColorType1.settleBtn {
    position: static;
    top: auto;
    right: auto;
  }

  .orderListHeader > .orderListEditBtn {
    order: 2;
    position: static;
    top: auto;
    right: auto;
    margin-left: auto;
    padding: 0;
    background: transparent;
    border-right: 0;
  }

  .orderListHeader > .orderListEditBtn .btn {
    justify-content: flex-end;
  }
}

/* orderBtnBlock
-------------------------------------------------- */
.orderBtnBlock {
  margin-top: 60px;
}

.orderBtnBlock .btn {
  font-size: 16px;
}
.orderBtnBlock .btn li {
  margin: 0 auto;
  width: 350px;
}

/* Table variations
-------------------------------------------------- */
/* usePriceTable
-------------------------------------------------- */
.generalTable .usePriceTable2 tbody th {
  padding: 27px 0px 26px 15px;
  width: 40%;
}
.generalTable .usePriceTable2 tbody td {
  padding: 26px 15px 27px 15px;
}
.generalTable .usePriceTable tbody th {
  padding: 25px 15px;
  width: 65%;
}
.generalTable .usePriceTable tbody td {
  padding: 25px 15px;
  width: 35%;
}
.orderSummaryPrice {
  white-space: nowrap;
}
.orderSummaryAmount {
  font-size: 24px;
  line-height: 1;
}
.orderSummaryCurrency {
  font-size: 1em;
}

.tablePrice {
  font-size: 18px;
}

.feeDetailsBlock {
  background: transparent;
}
.feeDetailsBlock .feeDetailsTable {
  margin-bottom: 0;
  border: 1px solid #dddddd;
  border-collapse: separate;
  border-spacing: 0;
  background: #ffffff;
}
.feeDetailsBlock .feeDetailsTable tbody th,
.feeDetailsBlock .feeDetailsTable tbody td {
  padding: 12px 14px;
  border: 0;
  vertical-align: middle;
}
.feeDetailsBlock .feeDetailsTable tbody tr + tr th,
.feeDetailsBlock .feeDetailsTable tbody tr + tr td {
  border-top: 1px solid #e4e4e4;
}
.feeDetailsBlock .feeDetailsTable tbody th {
  width: 88px;
  background: #6f6f6f;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  border-right: 1px solid #e4e4e4;
}
.feeDetailsBlock .feeDetailsTable tbody td {
  background: #ffffff;
}
.feeDetailsBlock .feeDetailsTable tbody td.right {
  width: 120px;
  font-weight: 700;
  white-space: nowrap;
}
.feeDetailsBlock .feeDetailsNote {
  font-size: 12px;
  line-height: 1.7;
}

.pickupReturnBlock {
  background: transparent;
}
.pickupReturnBlock .pickupReturnTable {
  border: 1px solid #dddddd;
  border-collapse: separate;
  border-spacing: 0;
  background: #ffffff;
  font-size: 13px;
}
.pickupReturnBlock .pickupReturnTable tbody th,
.pickupReturnBlock .pickupReturnTable tbody td {
  padding: 12px 14px;
  border: 0;
  vertical-align: middle;
}
.pickupReturnBlock .pickupReturnTable tbody tr + tr th,
.pickupReturnBlock .pickupReturnTable tbody tr + tr td {
  border-top: 1px solid #e4e4e4;
}
.pickupReturnBlock .pickupReturnTable tbody th {
  width: 120px;
  background: #6f6f6f;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  border-right: 1px solid #e4e4e4;
}
.pickupReturnBlock .pickupReturnTable tbody td {
  background: #ffffff;
}
.pickupReturnBlock .pickupReturnTable td > .displayTable {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.pickupReturnBlock .pickupReturnTable td > .displayTable > .tableCell:first-child {
  flex: 1 1 auto;
  min-width: 0;
}
.pickupReturnBlock .pickupReturnTable .tableCellBtn {
  flex: 0 0 auto;
  padding-left: 16px;
}
.pickupReturnBlock .pickupReturnTable .tableCellBtn .floatBtn {
  float: none;
  display: block;
}
.pickupReturnBlock .pickupReturnTable .btn_map {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 76px;
  min-height: 40px;
  padding: 8px 12px;
  white-space: nowrap;
}
.pickupReturnBlock .pickupReturnTable .btn_map .btnIcon {
  display: inline-block;
  padding-left: 16px;
  font-size: 1.4rem;
  line-height: 1;
  white-space: nowrap;
}
.pickupReturnBlock .pickupReturnTable .btn_map .btnIcon:after {
  content: none;
}
.pickupReturnBlock .pickupReturnMemo textarea {
  padding: 12px 14px;
  border: 1px solid #dddddd;
  background: #ffffff;
}

/* zipsearchBlock
-------------------------------------------------- */
.zipsearchBlock {
  margin: 0 0 0 5px;
  display: inline-block;
  vertical-align: middle;
}

/* Button variations
-------------------------------------------------- */
/* submitBtnBlock
-------------------------------------------------- */
.submitBtnBlock .btn {
  text-align: center;
}
.submitBtnBlock .btn li:last-child {
  margin: 0 auto;
  float: none;
  width: 350px;
}

/* oneColumnTable
-------------------------------------------------- */
.oneColumnTable {
  padding-bottom: 10px !important;
}

/* Utilities and modal
-------------------------------------------------- */
/* collapse div
-------------------------------------------------- */
.collapseLink {
  display: none !important;
}

/* mfp_win
-------------------------------------------------- */
#narita1_pickup,
#narita1_return,
#narita2_pickup,
#narita2_return,
#narita3_pickup,
#narita3_return,
#narita2_sim,
#narita3_locker,
#haneda2,
#haneda,
#haneda_afterhour,
#haneda_jal_return,
#haneda3_locker,
#kansai,
#kansai2,
#kansai_sim,
#kansai_locker,
#kansai2_locker,
#chubu,
#chubu_locker,
#chubu2,
#chubu2_locker,
#fukuoka,
#fukuoka_locker,
#newchitose,
#newchitose2,
#newchitose2_locker,
#naha,
#naha_locker,
#niigata,
#niigata_locker,
#komatsu,
#komatsu_locker,
#kagoshima,
#kagoshima2,
#kagoshima2_locker,
#shizuoka,
#shizuoka_locker,
#asahikawa,
#sendai,
#sendai_locker,
#expo2025,
#itami_locker,
#hiroshima_locker,
#kitakyushu_locker,
#kumamoto_locker,
#miyazaki_locker,
#shimojishima_locker {
  position: relative;
  margin: 10px auto;
  width: 780px;
  background: #ffffff;
  padding: 50px 20px 20px 20px;
}

.mfp_win h5 div.right {
  width: 160px;
  text-align: center;
  line-height: 48px;
}

.mfp_win div.inner {
  padding: 0px 10px;
}

.mfp_win .right {
  float: right;
  text-align: left;
}

.mfp_win .left {
  float: left;
}
.mfp_win .left.addcs1 {
  max-width: 478px;
}

.mfp_win .w470 {
  width: 470px;
}

/* タイトル2行対応 */
.mfp_win_special {
  font-size: 0;
}

.mfp_win_special div.left {
  display: inline-block;
  vertical-align: top;
  width: 620px;
  height: 48px;
  line-height: 24px;
  border: 1px solid #cccccc;
  background: #ffffff;
  font-size: 14px;
  padding-left: 10px;
  float: none;
}

.mfp_win_special div.right {
  display: inline-block;
  vertical-align: top;
  width: 140px;
  height: 48px;
  line-height: 48px;
  font-weight: bold;
  text-align: center;
  border: 1px solid #cccccc;
  font-size: 14px;
  float: none;
}

br.sp {
  display: none;
}

/* Page-Scoped Desktop Overrides
-------------------------------------------------- */
/* page-specific pc
-------------------------------------------------- */
#top #mainArea > section:first-of-type {
  margin-top: 20px;
}
}
