@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:wght@100;300;400;500;700;900&display=swap");
@font-face {
  font-family: "avenir";
  src: url("../font/avenir.woff2") format("woff2"), url("../font/avenir.woff") format("woff"); }
.avenir {
  font-family: "avenir"; }

/* color */
/* font */
/* margin */
/* trans */
/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	common

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
html {
  font-size: 14px;
  line-height: 2;
  text-align: center;
  color: #000;
  background: #f9f9f9;
  font-family: 'Roboto', 'Noto Sans JP', sans-serif, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic'; }

html * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-break: break-all;
  /*font-weight:300;*/ }

body {
  position: relative;
  margin: 0 auto;
  padding: 0;
  word-wrap: normal;
  width: 100%;
  overflow: hidden; }

main,
section,
article {
  overflow: hidden; }

sup {
  font-size: 0.7rem;
  vertical-align: top;
  position: relative;
  top: -0.1em; }

a {
  text-decoration: none;
  color: #000;
  transition: 0.35s cubic-bezier(0.2, 0.9, 0.7, 1); }
  a:visited {
    text-decoration: none;
    color: #000; }

.w100 {
  width: 100%; }

.container {
  width: 92%;
  margin: 0 auto; }

::placeholder {
  color: #aaa; }

.img_box img {
  width: 100%; }

/*--------------------------------------------------------------
	header
--------------------------------------------------------------*/
header {
  font-family: "avenir";
  letter-spacing: 1px; }
  header h1 {
    font-size: 1.5rem;
    text-align: left;
    padding: 20px 0 15px 15px;
    cursor: pointer; }
  header #mypage {
    position: absolute;
    top: 20px;
    right: 0; }
    header #mypage a {
      display: inline-block;
      background: #fff;
      border-radius: 14px 0 0 14px;
      line-height: 1;
      background: url("../img/icon_door.svg") no-repeat center left 20px;
      background-size: 15px;
      padding: 15px 15px 12px 45px;
      box-shadow: 3px 2px 8px 3px #d5d5d5;
      color: #000 !important;
      text-decoration: none; }
    header #mypage a:visited {
      color: #000 !important; }

/*--------------------------------------------------------------
	footer
--------------------------------------------------------------*/
footer {
  font-size: 10px;
  color: #fff;
  background: #535353;
  padding: 10px; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	common

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
/*--------------------------------------------------------------
	parts
--------------------------------------------------------------*/
#keyvisualBlock {
  margin-left: 10px;
  border-radius: 80px 0 0 0;
  overflow: hidden;
  box-shadow: 2px 2px 7px 2px #d5d5d5;
  margin-bottom: 30px; }
  #keyvisualBlock img {
    width: 100%; }

.title_box {
  padding: 30px 0 20px;
  background: url("../img/r_l_g.svg") no-repeat top left #fff; }
  .title_box h2 {
    font-size: 1.7rem;
    line-height: 1;
    font-family: "avenir";
    letter-spacing: 1px; }
  .title_box h3 {
    font-size: 0.85rem; }

.contents_box {
  background: url("../img/r_r_w.svg") no-repeat top right #eee;
  padding: 40px 0; }

.box {
  background: #fff;
  border-radius: 20px;
  box-shadow: 2px 2px 7px 2px #d5d5d5; }

.select_list {
  text-align: left; }
  .select_list > li {
    margin-bottom: 15px;
    overflow: hidden; }
  .select_list > li:last-child {
    margin-bottom: 0; }
  .select_list > li.active {
    padding: 0;
    background: #fff; }

#bottomButton {
  display: block;
  width: 100%;
  font-size: 1.14rem;
  line-height: 1;
  padding: 30px;
  border-radius: 44px 44px 0 0;
  color: #c4c4c4;
  background: #fff;
  box-shadow: 1px 0px 5px 0px #d5d5d5;
  margin-top: 50px;
  border: none;
  cursor: pointer; }

#bottomButton.active {
  color: #fff;
  background: #f82e2e;
  background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }

.button {
  display: block;
  width: 100%;
  color: #fff !important;
  background: #959595;
  border-radius: 30px;
  padding: 10px;
  border: none;
  cursor: pointer; }

.button.active {
  color: #fff;
  background: #f82e2e;
  background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }

#toTop {
  margin-top: 40px;
  cursor: pointer; }

.required {
  position: relative;
  line-height: 1;
  /*font-weight:400;*/
  padding-left: 25px; }

.required::before {
  position: absolute;
  content: '';
  top: calc(0.5rem - 2px);
  left: 0;
  width: 15px;
  height: 2px;
  background: #f73720; }

.required.no::before {
  background: #aaa; }

.required.black::before {
  background: #000; }

.caution {
  text-align: left;
  margin-left: 6%;
  font-weight: 300; }
  .caution span {
    color: #f73720;
    margin-right: 5px;
    font-weight: normal; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	home

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#homePage #infoBlock {
  margin-bottom: 25px; }
  #homePage #infoBlock h2 {
    font-size: 1.7rem;
    line-height: 1;
    margin-bottom: 20px;
    font-family: "avenir";
    letter-spacing: 1px; }
  #homePage #infoBlock p {
    text-align: left; }
  #homePage #infoBlock a {
    text-decoration: underline;
    color: #FF7000; }
  #homePage #infoBlock em, #homePage #infoBlock b, #homePage #infoBlock strong {
    font-weight: bold; }
#homePage #buttonBlock {
  margin: 0 4% 30px;
  font-size: 0;
  font-family: "avenir";
  letter-spacing: 1px; }
  #homePage #buttonBlock li {
    display: inline-block;
    width: calc(50% - 7px); }
    #homePage #buttonBlock li a {
      display: block;
      font-size: 1.14rem;
      padding: 50px 0 13px;
      background: no-repeat center top 20px;
      background-size: 30px; }
  #homePage #buttonBlock li:first-child a {
    margin-right: 14px;
    background-image: url("../img/icon_info.svg"); }
  #homePage #buttonBlock li:last-child a {
    background-image: url("../img/icon_contact.svg"); }
#homePage #reserveBlock {
  padding: 40px 0 40px;
  margin-bottom: 30px;
  background: url("../img/r_l_g.svg") no-repeat top left #eee; }
  #homePage #reserveBlock h2 {
    font-size: 1.7rem;
    line-height: 1;
    margin-bottom: 5px;
    font-family: "avenir";
    letter-spacing: 1px; }
  #homePage #reserveBlock h3 {
    font-size: 0.85rem;
    margin-bottom: 20px; }
  #homePage #reserveBlock ul {
    margin: 0 4%;
    text-align: left; }
    #homePage #reserveBlock ul li {
      margin-bottom: 15px; }
      #homePage #reserveBlock ul li a {
        display: block;
        padding: 40px 15px; }
        #homePage #reserveBlock ul li a .required {
          font-size: 1.2rem; }
        #homePage #reserveBlock ul li a .required::before {
          top: 0.5rem; }
        #homePage #reserveBlock ul li a .selsected {
          display: none; }
      #homePage #reserveBlock ul li a#menuButton #taketime {
        background: url("../img/icon_time.svg") no-repeat center left;
        background-size: 14px;
        padding-left: 18px;
        margin-left: 10px; }
      #homePage #reserveBlock ul li a.active {
        padding: 20px 15px;
        background: url("../img/icon_editor.svg") no-repeat center right 10px #fbeece;
        background-size: 40px; }
        #homePage #reserveBlock ul li a.active .selsected {
          display: block;
          width: calc(100% - 60px);
          padding: 10px 0 0 25px;
          line-height: 1.6; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	information

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#infoPage a {
  text-decoration: underline;
  color: #FF7000; }
#infoPage #infoBlock {
  text-align: left;
  margin-bottom: 50px; }
  #infoPage #infoBlock table {
    width: 100%; }
    #infoPage #infoBlock table tr th, #infoPage #infoBlock table tr td {
      padding: 10px 0;
      border-bottom: 1px dotted #b5b5b5; }
    #infoPage #infoBlock table tr th {
      width: 100px; }
#infoPage #leadBlock {
  padding: 30px 0;
  background: url("../img/r_l_g.svg") no-repeat top left #eee; }
  #infoPage #leadBlock h2 {
    font-size: 1.28rem;
    line-height: 1.6;
    margin-bottom: 20px;
    font-weight: 400; }
  #infoPage #leadBlock p {
    text-align: left; }
  #infoPage #leadBlock em, #infoPage #leadBlock b, #infoPage #leadBlock strong {
    font-weight: bold; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	contact

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#contactPage #contactBlock .container .box {
  padding: 30px 20px 10px 20px; }
#contactPage #contactBlock table {
  width: 100%;
  text-align: left; }
  #contactPage #contactBlock table th, #contactPage #contactBlock table td {
    display: block;
    padding: 5px 0; }
  #contactPage #contactBlock table td {
    margin-bottom: 10px; }
    #contactPage #contactBlock table td input, #contactPage #contactBlock table td textarea {
      width: 100%; }
#contactPage #contactBlock .button {
  margin-top: 40px; }
#contactPage #contactBlock h4 {
  font-size: 1.14rem;
  margin-bottom: 20px; }
#contactPage #contactBlock #thanks {
  text-align: left;
  margin: 0 4%; }
#contactPage .to_top {
  color: #000 !important; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	menu

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#menuPage #leadBlock {
  text-align: left;
  background: #fff;
  padding-bottom: 25px; }
#menuPage .select_list > li {
  cursor: pointer; }
  #menuPage .select_list > li h4 {
    position: relative;
    font-size: 1.2rem;
    font-weight: 400;
    padding: 15px; }
    #menuPage .select_list > li h4 .icon_toggle {
      position: absolute;
      content: '';
      top: 17px;
      right: 10px;
      width: 30px;
      height: 30px;
      border-radius: 100%;
      background: #f82e2e;
      background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }
      #menuPage .select_list > li h4 .icon_toggle span {
        position: absolute;
        content: '';
        left: 0;
        right: 0;
        margin: 0 auto;
        background: #fff; }
      #menuPage .select_list > li h4 .icon_toggle span:nth-child(1) {
        top: 15px;
        width: 11px;
        height: 1px; }
      #menuPage .select_list > li h4 .icon_toggle span:nth-child(2) {
        top: 10px;
        width: 1px;
        height: 11px; }
  #menuPage .select_list > li .menu_list {
    display: none; }
    #menuPage .select_list > li .menu_list li {
      border-bottom: 1px solid #b5b5b5; }
      #menuPage .select_list > li .menu_list li label {
        display: block;
        padding: 10px 15px;
        cursor: pointer;
        overflow: hidden; }
        #menuPage .select_list > li .menu_list li label input {
          display: none; }
        #menuPage .select_list > li .menu_list li label h5 {
          float: left;
          font-weight: 400;
          vertical-align: middle; }
        #menuPage .select_list > li .menu_list li label div {
          float: right;
          text-align: right;
          line-height: 1.6;
          vertical-align: middle; }
          #menuPage .select_list > li .menu_list li label div .price {
            font-size: 1.2rem;
            font-weight: 400; }
            #menuPage .select_list > li .menu_list li label div .price * {
              font-weight: 400; }
          #menuPage .select_list > li .menu_list li label div .taketime {
            display: inline-block;
            padding-left: 20px;
            opacity: 0.5;
            /*color:#9b9b9b;*/
            background: url("../img/icon_time.svg") no-repeat center left;
            background-size: 15px; }
      #menuPage .select_list > li .menu_list li label.active {
        background: #fbeece; }
    #menuPage .select_list > li .menu_list li:last-child {
      border: none; }
#menuPage .select_list > li:last-child {
  /*margin-bottom:0;*/ }
#menuPage .select_list h4.active {
  color: #fff;
  background: #f82e2e;
  background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }
  #menuPage .select_list h4.active .icon_toggle {
    background: #fff; }
    #menuPage .select_list h4.active .icon_toggle span {
      background: #f8332f;
      transform-origin: center;
      transform: rotate(-45deg); }
    #menuPage .select_list h4.active .icon_toggle span:nth-child(1) {
      top: 14px; }
    #menuPage .select_list h4.active .icon_toggle span:nth-child(2) {
      top: 9px; }
#menuPage #totalBlock {
  background: #fff;
  padding: 10px 0;
  margin-top: 25px;
  box-shadow: 2px 2px 7px 2px #d5d5d5; }
  #menuPage #totalBlock * {
    vertical-align: baseline; }
  #menuPage #totalBlock #totalPrice {
    display: inline-block;
    font-size: 1.2rem;
    margin-right: 1rem; }
    #menuPage #totalBlock #totalPrice span {
      font-size: 1.4rem;
      font-weight: 400;
      color: #FF0004; }
  #menuPage #totalBlock #totalTaketime {
    display: inline-block;
    background: url("../img/icon_time.svg") no-repeat center left;
    background-size: 15px;
    padding-left: 20px; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	staff

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#staffPage .select_list li label {
  display: block;
  padding: 20px;
  cursor: pointer;
  overflow: hidden; }
  #staffPage .select_list li label input {
    display: none; }
  #staffPage .select_list li label h4 {
    font-size: 1.2rem;
    font-weight: 500; }
  #staffPage .select_list li label img {
    float: left;
    width: 120px;
    border-radius: 15px; }
  #staffPage .select_list li label div {
    float: right;
    width: calc(100% - 140px);
    line-height: 1.6; }
    #staffPage .select_list li label div h4 {
      font-size: 1.2rem;
      font-weight: 500;
      margin-bottom: 10px; }
    #staffPage .select_list li label div p.fee {
      margin-top: 10px;
      font-weight: 400; }
#staffPage .select_list li label.active {
  background: #fbeece; }
#staffPage .select_list li.disabled {
  background: #eee; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	date

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#datePage #controller {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  line-height: 1;
  margin-bottom: 10px; }
  #datePage #controller a {
    padding: 10px; }
  #datePage #controller h4 {
    font-size: 1.2rem;
    font-weight: 400;
    padding-top: 7px; }
#datePage .box {
  padding: 10px;
  margin-bottom: 25px; }
  #datePage .box table {
    width: 100%; }
    #datePage .box table * {
      text-align: center; }
    #datePage .box table th, #datePage .box table td {
      padding: 5px;
      border-radius: 5px; }
    #datePage .box table .disabled {
      opacity: 0.3; }
    #datePage .box table .off {
      opacity: 0.3; }
    #datePage .box table .choice {
      cursor: pointer; }
    #datePage .box table th:nth-child(6), #datePage .box table td:nth-child(6), #datePage .box table th:nth-child(7), #datePage .box table td:nth-child(7) {
      color: #F55929; }
    #datePage .box table .active {
      color: #fff;
      background: #f82e2e;
      background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }
    #datePage .box table th:nth-child(6).active, #datePage .box table td:nth-child(6).active, #datePage .box table th:nth-child(7).active, #datePage .box table td:nth-child(7).active {
      color: #fff !important; }
#datePage #timeButton, #datePage .time_list {
  overflow: hidden; }
  #datePage #timeButton li, #datePage .time_list li {
    float: left;
    margin-right: 15px;
    padding: 5px;
    background: #fff;
    border-radius: 10px;
    cursor: pointer; }
  #datePage #timeButton li:last-child, #datePage .time_list li:last-child {
    margin: 0; }
  #datePage #timeButton .active, #datePage .time_list .active {
    color: #fff;
    background: #f82e2e;
    background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%); }
#datePage #timeButton {
  margin-bottom: 25px; }
  #datePage #timeButton li {
    width: calc((100% - 30px)/3); }
#datePage .time_list {
  display: none; }
  #datePage .time_list li {
    width: calc((100% - 45px)/4);
    margin-bottom: 15px; }
  #datePage .time_list li:nth-child(4n) {
    margin-right: 0; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	counseling

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#counselingPage .caution {
  font-size: 0.85rem;
  margin-bottom: 10px; }
#counselingPage #questionBlock {
  padding: 20px; }
  #counselingPage #questionBlock h4 {
    font-size: 1.4rem;
    line-height: 1;
    font-family: "avenir";
    letter-spacing: 1px; }
  #counselingPage #questionBlock #question {
    text-align: left;
    margin-top: 5px; }
#counselingPage #arrow {
  font-size: 1.5rem; }
#counselingPage .select_list li textarea {
  width: 100%; }
#counselingPage #type_1 li label {
  padding: 20px;
  display: block;
  cursor: pointer; }
  #counselingPage #type_1 li label input {
    display: none; }
#counselingPage #type_1 li label.active {
  background: #fbeece; }
#counselingPage #type_1 li.textarea {
  padding: 20px; }
#counselingPage #type_2 {
  padding: 20px; }
  #counselingPage #type_2 label {
    cursor: pointer; }
    #counselingPage #type_2 label input {
      display: none; }
  #counselingPage #type_2 img {
    width: 100%; }
  #counselingPage #type_2 #fileclear {
    display: none;
    cursor: pointer; }
#counselingPage #type_3 {
  padding: 20px;
  text-align: left; }
  #counselingPage #type_3 textarea {
    width: 100%; }
#counselingPage div#controller {
  line-height: 1;
  margin-top: 35px; }
  #counselingPage div#controller button {
    border: none;
    color: #fff;
    background: #959595;
    padding: 15px 40px;
    border-radius: 45px;
    cursor: pointer; }
#counselingPage ul#controller {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  line-height: 1;
  margin-top: 35px; }
  #counselingPage ul#controller li button {
    border: none;
    color: #fff;
    background: #959595;
    padding: 15px 40px;
    border-radius: 45px;
    cursor: pointer; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	user

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#userPage #login {
  margin-bottom: 20px; }
  #userPage #login a {
    display: block;
    padding: 15px 0; }
    #userPage #login a span {
      display: inline-block;
      font-size: 1.2rem;
      background: url("../img/icon_door.svg") no-repeat center left;
      background-size: 17px;
      padding-left: 30px; }
#userPage #userBlock {
  text-align: left;
  padding: 20px;
  margin-bottom: 20px; }
  #userPage #userBlock table {
    width: 100%; }
    #userPage #userBlock table th, #userPage #userBlock table td {
      display: block;
      padding: 5px 0; }
    #userPage #userBlock table td {
      margin-bottom: 10px; }
      #userPage #userBlock table td input {
        width: 100%; }
      #userPage #userBlock table td #passBlock {
        display: none;
        margin-top: 10px; }
        #userPage #userBlock table td #passBlock p {
          margin-bottom: 5px; }
    #userPage #userBlock table #memberMessage {
      display: none; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	confirm

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#confirmPage .box {
  padding: 30px 20px 0 20px;
  margin-bottom: 40px;
  overflow: hidden; }
  #confirmPage .box ul {
    text-align: left; }
    #confirmPage .box ul li {
      margin-bottom: 30px; }
      #confirmPage .box ul li h4 {
        font-size: 1.2rem;
        margin-bottom: 10px; }
      #confirmPage .box ul li p {
        margin-left: 25px; }
        #confirmPage .box ul li p #taketime {
          background: url("../img/icon_time.svg") no-repeat center left;
          background-size: 14px;
          padding-left: 18px;
          margin-left: 10px;
          opacity: 0.5; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	complete

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#completePage #completeBlock p {
  margin-top: 40px; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	cancel

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#cancelPage #cancelBlock .container table {
  margin: 20px auto 0; }
  #cancelPage #cancelBlock .container table tr th, #cancelPage #cancelBlock .container table tr td {
    padding: 2px 10px;
    text-align: left;
    vertical-align: top; }
#cancelPage #cancelBlock .container form {
  margin: 20px 40px; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	mypage

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#loginPage #loginBlock {
  text-align: left;
  padding: 20px;
  margin-bottom: 20px; }
  #loginPage #loginBlock table {
    width: 100%; }
    #loginPage #loginBlock table th, #loginPage #loginBlock table td {
      display: block;
      padding: 5px 0; }
    #loginPage #loginBlock table td {
      margin-bottom: 10px; }
      #loginPage #loginBlock table td input {
        width: 100%; }
      #loginPage #loginBlock table td #reminderButton {
        display: block;
        font-size: 0.85rem;
        text-align: right;
        margin-top: 5px; }
        #loginPage #loginBlock table td #reminderButton span {
          font-size: 0.6rem;
          vertical-align: middle; }
#loginPage #registerButton {
  display: block;
  padding: 20px; }

#myPage #leadBlock h4 {
  font-size: 1.28rem;
  margin: 40px 0 30px; }
#myPage #leadBlock p {
  text-align: left; }
#myPage #leadBlock a {
  text-decoration: underline;
  color: #FF7000; }
#myPage #leadBlock em, #myPage #leadBlock b, #myPage #leadBlock strong {
  font-weight: bold; }
#myPage #newReserveButton a {
  display: block;
  padding: 30px 0;
  color: #fff;
  background: #f82e2e;
  background: linear-gradient(90deg, #f82e2e 0%, #f9925b 100%);
  margin: 20px auto; }
#myPage #historyList h4 {
  font-size: 1.28rem;
  margin-bottom: 20px; }
#myPage #historyList ul li {
  margin-bottom: 20px; }
  #myPage #historyList ul li a {
    display: block;
    padding: 15px 0; }
#myPage #historyList ul li:nth-child(n+2) {
  display: none; }
#myPage #editButton {
  display: block;
  margin: 40px auto;
  padding: 30px 15px;
  background: url("../img/icon_editor.svg") no-repeat center right 10px #fff;
  background-size: 40px; }
#myPage #registerBlock {
  text-align: left;
  padding: 20px; }
  #myPage #registerBlock table {
    width: 100%; }
    #myPage #registerBlock table th, #myPage #registerBlock table td {
      display: block;
      padding: 5px 0; }
    #myPage #registerBlock table td {
      margin-bottom: 10px; }
      #myPage #registerBlock table td input[type="text"],
      #myPage #registerBlock table td input[type="email"] {
        width: 100%; }
      #myPage #registerBlock table td #reminderButton {
        display: block;
        font-size: 0.85rem;
        text-align: right;
        margin-top: 5px; }
        #myPage #registerBlock table td #reminderButton span {
          font-size: 0.6rem;
          vertical-align: middle; }
#myPage #backButton {
  margin-top: 30px; }
#myPage #reserveHistoryBlock {
  text-align: left;
  padding: 20px; }
  #myPage #reserveHistoryBlock table {
    width: 100%; }
    #myPage #reserveHistoryBlock table th, #myPage #reserveHistoryBlock table td {
      display: block;
      padding: 5px 0; }
    #myPage #reserveHistoryBlock table td {
      margin-bottom: 10px;
      padding-left: 25px; }
      #myPage #reserveHistoryBlock table td .img_list {
        font-size: 0; }
        #myPage #reserveHistoryBlock table td .img_list li {
          display: inline-block;
          width: calc((100% - 30px)/3);
          margin: 0 5px; }
#myPage .button {
  margin-bottom: 40px; }
#myPage #toTop {
  margin-bottom: 40px; }
#myPage .caution {
  margin-top: 20px; }

#reminderPage #reminderBlock {
  text-align: left;
  padding: 20px;
  margin-bottom: 20px; }
  #reminderPage #reminderBlock > p {
    margin-bottom: 1rem; }
  #reminderPage #reminderBlock table {
    width: 100%;
    margin-bottom: 10px; }
    #reminderPage #reminderBlock table th, #reminderPage #reminderBlock table td {
      display: block;
      padding: 5px 0; }
    #reminderPage #reminderBlock table td {
      margin-bottom: 10px;
      /*#reminderButton { display:block; font-size:0.85rem; text-align:right; margin-top:5px;
          span { font-size:0.6rem; vertical-align:middle; }
      }
      */ }
      #reminderPage #reminderBlock table td input {
        width: 100%; }
#reminderPage #registerButton {
  display: block;
  padding: 20px; }

/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	reserveStatusPage

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
#reserveStatusPage {
  background: #fff; }
  #reserveStatusPage .title_box {
    padding: 30px 0 20px;
    background: none; }
    #reserveStatusPage .title_box h2 {
      font-size: 1.7rem;
      line-height: 1;
      font-family: "avenir";
      letter-spacing: 1px; }
    #reserveStatusPage .title_box h3 {
      font-size: 0.85rem; }
  #reserveStatusPage #reserveStatusBlock {
    width: 92%;
    margin: 0 auto 20px;
    display: flex;
    gap: 0 20px; }
    #reserveStatusPage #reserveStatusBlock .reserve_calendar {
      width: 100%;
      text-align: center; }
      #reserveStatusPage #reserveStatusBlock .reserve_calendar h4 {
        font-size: 1.25rem; }
      #reserveStatusPage #reserveStatusBlock .reserve_calendar table {
        width: 100%; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table tr th, #reserveStatusPage #reserveStatusBlock .reserve_calendar table tr td {
          border: 1px solid #ccc; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table thead tr th {
          text-align: center;
          color: #fff;
          background: #333;
          border-right-color: #fff; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table thead tr th:last-child {
          border-right-color: #ccc; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table tbody tr td {
          padding-bottom: 10px; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table tbody tr td.off {
          color: #999; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table tbody tr td.today {
          color: #fff;
          background: #4c94c6; }
        #reserveStatusPage #reserveStatusBlock .reserve_calendar table tbody tr td.n_befor {
          color: #999; }

@media screen and (max-width: 768px) {
  #reserveStatusPage #reserveStatusBlock {
    display: block; }
    #reserveStatusPage #reserveStatusBlock .reserve_calendar:first-child {
      margin-bottom: 20px; } }
