@charset "UTF-8";

#reserve-title{
	background: #3e8cdb;
	/* padding: 58px 0 0 0; */
}
#reserve-title h1{
	color: #fff;
	font-size: 32px;
	padding: 10px;
	text-align: center;
	font-weight: bold;
}
#reserve-contents{
	background: #f2f2f2;
	padding: 20px 0;
}
#reserve-contents form{
    position: relative;
    border-radius: 3px;
    /* background: #ffffff; */
    /* border-top: 3px solid #69aafe; */
    width: 100%;
    padding: 20px 20px;
    box-sizing: border-box;
    box-shadow: 0 1px 1px rgba(0,0,0,0.1);
}
#reserve-contents form h2{font-size: 18px;text-align: center;margin-bottom: 20px;}
#reserve-contents form h4{margin: 10px 0 20px 0px;}

#reserve-title{}
#reserve-title .sub-container{}
#reserve-title .sub-container p{
	width: 40px;
	margin:auto;
}
#reserve-title .sub-container p img{
	width: 100%;
}
#reserve-title .sub-container ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#reserve-title .sub-container ul li{
    position: relative;
    display: block;
    width: 250px;
    text-align: center;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    padding: 30px 10px;
    color: #fff;
    font-size: 18px;
}
#reserve-title .sub-container ul li.active{background: #fff;color: #2e8bff;font-weight: bold;}
#reserve-title .sub-container ul li span{
    display: block;
    padding: 10px 0;
    margin: 10px 0 0 0;
    border-top: 1px dashed #fff;
    font-size: 12px;
}
#reserve-title .sub-container ul li::before {
	content: "";
	width: 20px;
	height: 20px;
	border: 5px solid;
	border-color: #fff #fff transparent transparent;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: -60px;
	margin: -10px 0 0 0;
}
#reserve-title .sub-container ul li:first-child::before {content: none;}



.example-txt{
    margin: 10px 10px 0 10px;
}
.example-txt ul{
    display: flex;
}
.example-txt ul li{
    margin-right: 20px;
}
.example-txt ul li span{
    font-weight: bold;
    margin-right: 5px;
}



.fc-toolbar.fc-header-toolbar {
    margin: 1em;
    text-align: center;
    overflow: hidden;
    position: relative;
}
.fc-toolbar .fc-left {
    /* float: left; */
    position: absolute;
    display: block;
    width: 100%;
}
.fc-toolbar .fc-center {
	/* position: absolute; */
	width:100%;
	text-align:center;
	left: 0;
	top: 0;
}
.fc-toolbar .fc-center span{
    display: inline-block;
    font-size: 2.1rem;
    line-height: 42px;
    width: 100%;
}
.fc-toolbar .fc-button-group{
}

a.fc-button {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    margin: 5px;
    padding: 5px 10px;
    cursor: pointer;
    background: #f4f4f4;
    background-image: none;
    color: #444;
    text-decoration: none;
    border-radius: 3px;
    border: 1px solid #333;
}
.fc-corner-left{
    float: left;
}
.fc-corner-right{
    float: right;
}
a.fc-button span{
}
a.fc-button span:after{
}
.fc button .fc-icon {
    position: relative;
    top: -.05em;
    margin: 0 .2em;
    vertical-align: middle;
}
.fc-icon-left-single-arrow:after {
    content: "\2039";
    font-weight: 700;
    font-size: 200%;
}
.fc-icon-right-single-arrow:after {
    content: "\203A";
    font-weight: 700;
    font-size: 200%;
}

div.x_data_area {
  width: 100%;
  overflow: hidden; /* floatã•ã›ãŸè¦ç´ ã‚’å†…åŒ…ã—ã¦ã„ã‚‹ãŸã‚æŒ‡å®š */
  border-right: 1px solid #007da9;
  border-bottom: 1px solid #007da9;
  border-left: 1px solid #007da9;
}
div.lock_box {
  float: left;
  width: 25%;
  box-sizing: border-box;
}
div.lock_box th{
	height: 92px;
	box-sizing: border-box;
}
div.x_scroll_box {
  float: left;
  width: 75%;
  border-left: 1px solid #007da9;
  overflow-y: hidden; /* ç¸¦ã‚¹ã‚¯ãƒ­ãƒ¼ãƒ«éžè¡¨ç¤º */
  overflow-x: scroll; /* æ¨ªã‚¹ã‚¯ãƒ­ãƒ¼ãƒ« */
  box-sizing: border-box;
}
/* ãƒ†ãƒ¼ãƒ–ãƒ« */
.width300 {
  width: 100%;
}
 
.width2500 {
  width: 100%;
}
 
table.data {
  table-layout: fixed; /* å†…å®¹ã‚’å›ºå®š */
  border-collapse: separate;
  border-spacing: 0; /* tableã®cellspacing="0"ã®ä»£ã‚ã‚Š */
}
 
table.data th,
table.data td {
  padding: 10px 5px;
  border-right: 1px solid #007da9;
  border-bottom: 1px solid #007da9;
  text-align: center;
  vertical-align: middle;
  line-height: 34px;
}
table.data td p{
  margin: 0;
}
 
table.data th.r_none,
table.data td.r_none {
  border-right: none; /* å³ãƒœãƒ¼ãƒ€ãƒ¼ã®é‡ãªã‚Šã‚’é˜²æ­¢ */
}
 
table.data th {
  border-top: 1px solid #007da9;
  background: #99cbda;
  text-align: center;
  text-align: center;
}
table.data th a{display: block;text-decoration: none;width: 90%;border: 1px solid #ccc;margin: 0 auto;background: #fff;border-radius: 3px;color: #007da9;}
 
table.data th,
table.data td {
  overflow: hidden; /* ãƒ‡ãƒ¼ã‚¿ãŒå¹…ã‚’è¶…ãˆãŸã¨ãéžè¡¨ç¤ºã« */
  white-space: nowrap; /* ãƒ‡ãƒ¼ã‚¿ã®æŠ˜ã‚Šè¿”ã—ã‚’é˜²æ­¢ */
}
.sc-y{width: 100%;}
.sc-y thead, .sc-y tbody {
  display: block;
}
.sc-y tbody {
  overflow-x: hidden;
  overflow-y: scroll;
  /* height: 500px; */
}
.sc-y tr{width: 100%;display: table;}
.sc-y th {
	background: #99cbda;
}
.sc-y td p{
	margin: 0;
	font-size: 18px;
}
.sc-y th,
.sc-y td {
	width: calc(100% / 6);
	display: table-cell;
	margin: 0;
	box-sizing: border-box;
	border-collapse: collapse;
	border-spacing: 0;
	line-height:34px;
	padding: 10px 10px 10px 10px;
	border: 1px solid #017ca3;
	vertical-align:middle;
	text-align:center;
}

*::-ms-backdrop, .sc-y td{
  width: 16.67%;
}
*::-ms-backdrop, .sc-y th{
  width: 16.67%;
}


.reserve_cont{
    width: 700px;
    margin: 20px auto;
    overflow:hidden;
}
.reserve_cont dt{
    float: left;
    width: 25%;
    padding: 10px 10px;
    box-sizing: border-box;
    font-weight: bold;
    text-align: right;
}
.reserve_cont dd{
    float: right;
    width: 75%;
    padding: 10px 10px;
    box-sizing: border-box;
    border-bottom: 1px dashed #ccc;
}
.reserve_cont dd.clear{
    padding: 0;
    border: none;
}

ul.btn-list{
    width: 60%;
    margin: 0 auto 40px auto;
    display: flex;
    justify-content: space-around;
}
ul.btn-list li{
    width: 49%;
    text-align: center;
}
ul.btn-list li a{
	display: block;
	border-radius: 3px;
	padding: 10px;
	text-align: center;
	width: 100%;
	font-size: 1.6rem;
	box-sizing: border-box;
}
ul.btn-list li#back_submit a{
    background: #ccc;
    color: #666;
}
ul.btn-list li#submit_button a{
    background: #2b66bf;
    color: #fff;
    filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.3));
    font-size: 18px;
}

ul.btn-list.yoyaku_btn li{
    width: 100%;
    /* margin-top: 20px; */
}
.yoyaku_btn a{
    display: block;
    border-radius: 3px;
    padding: 10px;
    text-align: center;
    width: 100%;
    margin: 0 auto 40px auto;
    font-size: 1.6rem;
    color: #fff;
    background: #4eab3f;
    box-sizing: border-box;
}


dl.kakunin{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    margin: 20px auto 20px auto;
}
dl.kakunin dt{
    width: 25%;
    padding: 10px;
    box-sizing: border-box;
    border-bottom: 1px dashed #ccc;
}
dl.kakunin dd{
    width: 75%;
    padding: 10px;
    box-sizing: border-box;
    border-bottom: 1px dashed #ccc;
}



dl.personal{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    margin: 20px auto 20px auto;
}
dl.personal dt{
    width: 25%;
    /* line-height: 40px; */
    -moz-text-align-last: justify;
    /* text-align-last: justify; */
    position: relative;
    border-left: 5px solid #2b66bf;
    margin-bottom: 20px;
    padding: 20px 0 20px 10px;
}
dl.personal dt .require{
	background: #e00000;
	color: #fff;
	padding: 2px 5px 2px 5px;
	margin-left: 10px;
	position: absolute;
	right: 10px;
	top: 18px;
}
dl.personal dd{
    width: 70%;
    padding: 8px 0 5px 0;
    margin-bottom: 20px;
}
dl.personal dd p.explanation{
    padding: .5em .5em 0 .5em;
    width: 100%;
    font-size: 13px;
    color: #666;
    box-sizing: border-box;
}
dl.personal.conf dd{
    width: 70%;
    padding: 20px 0 20px 10px;
}
dl.personal dd ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
dl.personal dd ul li{
    width: 100%;
    list-style-type: none;
}
dl.personal dd.msr_radio ul{justify-content: start;margin: 8px 0 0 0;}
dl.personal dd.msr_radio ul li{
	width: auto;
	margin-right: 1em;
}

dl.personal dd.kibou{display: flex;flex-wrap: wrap;}
dl.personal dd.kibou span{width: 5em;line-height: 40px;}
dl.personal dd.kibou input{width: calc(100% - 6em);box-sizing: border-box;}

.end-text{margin-top: 20px;padding: 20px;box-sizing: border-box;border: 1px solid #333;font-size: 1.6rem;}


.btn-primary{
	display: block;
	border-radius: 3px;
	padding: 10px;
	text-align: center;
	width: 60%;
	border-radius: 4px;
	margin: 0 auto 40px auto;
	font-size: 1.6rem;
	background: #d38cb8;
	color: #fff;
	line-height: 1.6em;
}

.form-group{
    width: 80%;
    margin: 20px auto 0 auto;
    text-align: center;
}
.form-group input{
    margin: 0 0 20px 0;
}
.kiyaku{
    border: 1px solid #ccc;
    padding: 10px;
    height: 200px;
    overflow-y: scroll;
    margin-bottom: 20px;
}
.kiyaku p{
    margin: 20px 0 5px 0;
}
.kiyaku p.text-end{
    text-align: right;
}
.kiyaku ul{
}
.kiyaku-list1{
	padding: 0 0 0 4%;
	margin: 2% 0 0 2%;
}
.kiyaku-list1 li{
	list-style-type: decimal;
	font-size: 13px;
	margin-bottom: 5px;
}

.kiyaku-list2{
	padding: 0px 0 0 2%;
	margin:0;
}
 
.kiyaku-list2 li{
	list-style-type: none;
	counter-increment: cnt;
	margin: 5px 0 5px 0 !important;
	position: relative;
	padding: 0 0 0 2em;
}
.kiyaku-list2 li::before {
	content: "(" counter(cnt) ") ";
	position: absolute;
	left: 0;
	width: 2em;
	text-align: center;
}

.kiyaku-list3{
	padding: 0px 0 0 2%;
	counter-reset: list_count;
}
.kiyaku-list3 li{
	margin: 2% 0 0 0 !important;
	font-size: 13px;
	padding: 0 0 0 1.5em;
}
.kiyaku-list3 li::before{
      /* margin-right: .25em; */
      counter-increment: list_count;
      content: counter(list_count);
      display: inline-block;
      line-height: 12px;
      text-align: center;
      height: 12px;
      width: 12px;
      border-radius: 50%;
      font-size: 0.8em;
      border: 1px solid #666;
}

#privacy{}
#privacy h2{
    margin-top: 40px;
    font-size: 21px;
}
#privacy p{
    font-size: 16px;
    padding: 10px 0 0 10px;
}
#privacy li{font-size: 16px;margin-bottom: 10px;}
#privacy p.text-end{text-align: right;}
#privacy .madoguchi{
    padding: 10px 10px;
    margin: 10px 400px 0 10px;
    border: 1px solid #666;
}
#privacy .madoguchi p{}
#privacy .madoguchi p span{
    margin-left: 1em;
}

@media screen and (max-width:768px) {
#reserve-title h1 {
    font-size: 24px;
}
#reserve-contents form{padding: 5% 5%;}
#reserve-contents form h2{
    text-align: left;
}
dl.personal{
    width: 100%;
}
dl.personal dt{
	width:100%;
	padding: 3% 3%;
	margin: 0;
}
dl.personal dd{
	width:100%;
	padding: 2% 5% 10% 5%;
	margin: 0;
}
dl.personal.conf dd{
    width: 100%;
    padding: 2% 5% 10% 10%;
}
ul.btn-list{
    width: 90%;
}

ul.btn-list li#submit_button{
    width: 90%;
}
dl.personal dt .require{
    top: 2vw;
}
.flex input {
    transform: scale(1.5);
    margin: 2px 10px 0 0 !important;
}


#privacy{
    padding: 0 5%;
}
#privacy h2{
    margin-top: 8%;
    font-size: 18px;
}
#privacy p{
    font-size: 14px;
    padding: 2% 0 0 2%;
}
#privacy li{font-size: 14px;margin-bottom: 4%;}
#privacy p.text-end{text-align: right;}
#privacy .madoguchi{
    padding: 5% 5%;
    margin: 2% 0 0 2%;
    border: 1px solid #666;
}
#privacy .madoguchi p{}
#privacy .madoguchi p span{
    margin-left: 1em;
}

}