@charset "utf-8";
/*
	Description: initial setting
	Version: 1.0
	Author: idealgrow
*/
/*
===== CONTENTS ===========================================
*/
#messageBox #formInput ul{
	background:#f0f0f0;
}
#userId {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  display: flex;
  border-bottom: solid 1px #f0f0f0;
  padding: 10px 20px;
  align-items: flex-end;
}
#userId p:first-of-type {
  font-size: 18px;
  font-weight: bold;
  order: 2;
  text-align: right;
  margin-left: auto;
}
#userId p:first-of-type:after {
  content: "様";
  margin-left: 5px;
  font-size: 16px;
}
#estimateData {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  border-bottom: solid 1px #f0f0f0;
  padding: 10px 20px;
  text-align: right;
}
#userId + h2 {
  margin-top: 50px;
}
#estimateData + h2 {
  margin-top: 80px;
}
.baseTit01 {
  color: #ffa733;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 20px;
}
.baseTit01 span {
  display: inline-block;
  background: #ffa733;
  border-radius: 3px;
  color: #fff;
  padding: 5px;
  margin-right: 8px;
  vertical-align: text-top;
}
.baseTit02 {
  color: #103365;
  font-weight: bold;
  font-size: 24px;
  margin-bottom: 20px;
}
.baseTit02.orange {
  color: #ffa733;
}
.baseTit02.orange span {
  background: #ffa733;
}
.baseTit02 span {
  font-weight: normal;
  display: inline-block;
  background: #103365;
  border-radius: 3px;
  color: #fff;
  padding: 5px;
  margin-right: 8px;
  vertical-align: text-top;
}
.baseTit02 a {
  border: solid 1px #e8e8e8;
  font-size: 16px;
  font-weight: normal;
  padding: 0 10px 0 25px;
  display: block;
  margin: 10px 0 0 0;
  width: 130px;
  border-radius: 5px;
  position: relative;
  text-align: center;
  text-decoration: none;
}
.baseTit02 a:before {
  font-family: 'Material Symbols Outlined';
  content: "\e5cb";
  position: absolute;
  left: 5px;
  top: 50%;
  transform: translateY(-50%);
}
.baseBtn01 {
  display: block;
  text-align: center;
  text-decoration: none;
  background: #ffa733;
  color: #fff !important;
  padding: 10px;
  border-radius: 5px;
  position: relative;
}
.baseBtn01:after {
  font-family: 'Material Symbols Outlined';
  content: "\e5e1";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}
.disableBtn {
  background: #bdbdbd;
  color: #fff !important;
  text-align: center;
  padding: 10px;
  display: block;
  border-radius: 5px;
  opacity: 0.4;
}
#reserveList {
  margin-bottom: 40px;
  border-bottom: solid 1px #eee;
  padding-bottom: 40px;
}
#reserveList .reserveBlock:not(:last-of-type) {
  margin-bottom: 30px;
}
#reserveList .reserveBlock {
  border: solid 4px #ffa733;
  border-radius: 5px;
}
#reserveList .reserveBlock.change{
	padding-top: 25px;
}
#reserveList .reserveBlock.change:before{
	content: "予約内容変更";
	position: absolute;
	top: 0;
	background: #FFA733;
	width: 100%;
	color: #fff;
	text-align: center;
}
#reserveList .reserveBlock ul .listTit {
  color: #ffa733;
}
.reserveBlock {
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.15), -2px -2px 10px 0px rgba(0, 0, 0, 0.15);
  background: #fff;
  position: relative;
}
.estimateBlock {
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.05), -2px -2px 10px 0px rgba(0, 0, 0, 0.05);
  border: solid 1px #dfdfdf;
  border-radius: 5px;
  position: relative;
  background: #fff;
}
.reserveBlock ul .listTit, .estimateBlock ul .listTit {
  font-size: 14px;
}
.reserveBlock ul li, .estimateBlock ul li, #estInfo #estInfoBlock > ul > li {
  padding: 10px 15px;
  border-bottom: solid 1px #f0f0f0;
}
.reserveBlock ul li p, .estimateBlock ul li p, #estInfo #estInfoBlock > ul > li p {
  font-size: 18px;
}
.reserveBlock ul li p span, .estimateBlock ul li p span, #estInfo #estInfoBlock > ul > li p span {
  font-size: 14px;
}
.reserveBlock ul li p span.days, .estimateBlock ul li p span.days, #estInfo #estInfoBlock > ul > li p span.days {
  background: #ededed;
  padding: 0 10px;
  margin-left: 10px;
  border-radius: 3px;
}
.reserveBlock ul li.control {
  padding: 0;
}
.reserveBlock ul li.control ul, #estimateHead > div .control {
  display: flex;
  background: #f8f8f8;
}
.reserveBlock ul li.control ul li, #estimateHead > div .control li {
  text-align: center;
  width: 33.333%;
  padding: 0;
  border-right: solid 1px #e0e0e0;
  border-bottom: none;
}
.reserveBlock ul li.control ul li:last-of-type, #estimateHead > div .control li:last-of-type {
  border-right: none;
}
.reserveBlock ul li.control ul li .material-symbols-outlined, #estimateHead > div .control li .material-symbols-outlined {
  display: block;
  font-size: 32px;
}
.reserveBlock ul li.control ul li a, .reserveBlock ul li.control ul li p, #estimateHead > div .control li p, #estimateHead > div .control li a {
  text-decoration: none;
  padding: 15px 0;
  display: block;
  font-size: 14px;
  color: #000 !important;
  position: relative;
}
#estimateHead > div .control li a.stay {
  background: #103365;
  color: #fff !important;
}
.reserveBlock ul li.control ul li .count, #estimateHead > div .control li .count {
  background: #e00909;
  color: #fff;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  left: 54%;
  top: 14px;
  font-size: 12px;
  pointer-events: none;
}
#estimateList {
  counter-reset: estiCount;
}
#estimateList .estimateBlock {
  padding-top: 40px;
  counter-increment: estiCount;
}
#estimateList .estimateBlock:not(:last-of-type) {
  margin-bottom: 30px;
}
#estimateList .estimateBlock:before {
  content: counter(estiCount);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  background: #103365;
  color: #fff;
  text-align: center;
  padding: 5px;
  box-sizing: border-box;
  border-radius: 5px 5px 0 0;
}
aside h2 {
  font-size: 22px;
  font-weight: bold;
  color: #888888;
  margin-bottom: 20px;
}
#asideList > div:not(:last-of-type) {
  margin-bottom: 30px;
}
#asideList .reserveBlock {
  padding-top: 40px;
}
#asideList .reserveBlock:before {
  content: "催行済み";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  background: #ababab;
  color: #fff;
  text-align: center;
  padding: 5px;
  box-sizing: border-box;
  border-radius: 5px 5px 0 0;
}
.modal {
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  display: none;
}
#mdEstimate .mdTit:before {
  content: "flag";
}
#mdDocument .mdTit:before {
  content: "description";
}
#mdDelete .mdTit:before {
  content: "cancel";
}
#mdReserve .mdTit:before {
  content: "task_alt";
}
#mdDelete p.price, #mdReserve p.price {
  text-align: center;
  margin-bottom: 20px;
  font-size: 30px;
  line-height: 1.4;
  color: #0948a1;
}
#mdDelete p.price:before, #mdReserve p.price:before {
  content: "見積金額(総額)";
  display: block;
  font-size: 16px;
  color: #919191;
}
#mdDelete p.price:after, #mdReserve p.price:after {
  content: "円";
  font-size: 20px;
  color: #000;
}
#mdDelete .doc, #mdReserve .doc {
  display: flex;
  margin-bottom: 20px;
}
#mdDelete .doc li, #mdReserve .doc li {
  width: 48%;
}
#mdDelete .doc li:first-of-type, #mdReserve .doc li:first-of-type {
  margin-right: 4%;
}
.js-modal .mdTit + p {
  background: #f0f0f0;
  text-align: center;
  padding: 5px;
  border-radius: 3px;
  margin-bottom: 20px;
}
.mdTit:before {
  font-family: 'Material Symbols Outlined';
  font-size: 24px;
  font-weight: normal;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.mdTit {
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
#mdVideo .mdTit:before {
  content: "video_call";
}
.modal .listTit .req {
  background: #ff462f;
  color: #fff;
  padding: 0 10px;
  margin-left: 10px;
  font-size: 12px;
}
.modal__bg {
  background: rgba(0, 0, 0, 0.4);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
  border-radius: 5px;
  background: #fff;
  left: 50%;
  padding: 20px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 700px;
  max-height: 85vh;
  overflow-y: auto;
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.2);
}
.modalControl li input[type="submit"] {
  background: #ccc;
  border-radius: 5px;
  border: none;
  padding: 10px;
}
.modalControl li:not(:first-of-type) {
  margin-top: 10px;
}
.js-modal table {
  width: 100%;
}
.js-modal table thead {
  display: none;
}
#mdEstimate table tbody tr {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  background: #f6f6f6;
  padding: 10px;
  border-radius: 5px;
  width: 100%;
}
#mdEstimate table tbody tr.checked {
  background: #fff0dc;
}
#mdEstimate table tr td:nth-of-type(2) {
  width: 100%;
}
#mdEstimate table tr td:nth-of-type(3) {
  width: 100%;
	text-align: center;
	padding: 15px 0 0 0;
}
#mdEstimate table tr td:nth-of-type(1) {
  width: 100%;
  text-align: right;
  padding: 5px 0 10px 0;
}
#mdEstimate table tr td:nth-of-type(3):before {
  content: "見積期限";
  margin-right: 10px;
}
#mdEstimate table tr td:nth-of-type(1):before {
  content: "見積金額(総額)";
  font-weight: normal;
  margin-right: 10px;
}
#mdEstimate table tr td:nth-of-type(1) span {
  font-size: 22px;
  color: #103365;
}
.js-modal table td a, #mdDelete a, #mdReserve a {
  display: block;
  text-align: center;
  text-decoration: none;
  color: #000 !important;
  background-image: -moz-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -webkit-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -ms-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  box-shadow: 1.7px 2.4px 5px 0px rgba(182, 182, 182, 0.5);
  border: solid 1px #eee;
  padding: 6px;
  position: relative;
}
.js-modal table td a.disable{
  opacity: 0.2;
	border: solid 1px #ccc;
	pointer-events: none;
	background: #fff !important;
}
.js-modal table td a:before, #mdDelete a:before, #mdReserve a:before {
  font-family: 'Material Symbols Outlined';
  font-size: 20px;
  position: absolute;
  font-weight: normal;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.js-modal table td a.docEst:before, #mdDelete a.docEst:before, #mdReserve a.docEst:before {
  content: "description";
}
.js-modal table td a.docRoute:before, #mdDelete a.docRoute:before, #mdReserve a.docRoute:before {
  content: "flag";
}
#mdDelete .doc li a.disable, #mdReserve .doc li a.disable{
  opacity: 0.6;
  background: #eee !important;
  pointer-events: none;
}
#mdEstimate input[type="radio"] {
  display: none;
}
#mdEstimate input[type="radio"] + label {
  position: relative;
  padding-left: 24px;
  cursor: pointer;
  font-size: 0;
}
#mdEstimate input[type="radio"] + label:before {
  content: "";
  border-radius: 50%;
  background-image: -moz-linear-gradient(125deg, rgb(255, 255, 255) 0%, rgb(245, 245, 245) 100%);
  background-image: -webkit-linear-gradient(125deg, rgb(255, 255, 255) 0%, rgb(245, 245, 245) 100%);
  background-image: -ms-linear-gradient(125deg, rgb(255, 255, 255) 0%, rgb(245, 245, 245) 100%);
  box-shadow: 0px 3px 10px 0px rgba(9, 1, 3, 0.1), -1.118px -1.658px 5px 0px rgba(230, 230, 230, 0.4);
  position: absolute;
  width: 18px;
  height: 18px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
#mdEstimate input[type="radio"]:checked + label:before {
  border: solid 1px #e7850f;
}
#mdEstimate input[type="radio"]:checked + label {
  color: #e7850f;
  font-size: 16px;
  font-weight: normal;
}
#mdEstimate input[type="radio"]:checked + label:after {
  content: "";
  border-radius: 50%;
  background: #e7850f;
  position: absolute;
  width: 12px;
  height: 12px;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
}
#mdDocument table tbody tr {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: dotted 1px #999;
  width: 100%;
  align-items: center;
  position: relative;
}
#mdDocument table tbody tr td:first-of-type {
  width: 70%;
  padding-left: 10px;
  position: relative;
}
#mdDocument table tbody tr td.alart:before {
  content: "";
  width: 5px;
  height: 5px;
  background: #ff0000;
  position: absolute;
  border-radius: 50%;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
#mdDocument table tbody tr td:nth-of-type(2) {
  width: 70%;
  font-size: 14px;
  font-weight: normal;
}
#mdDocument table tbody tr td:nth-of-type(3) {
  width: 30%;
  position: absolute;
  right: 0;
  top: 4px;
}
#mdVideo .formList {
  margin-bottom: 20px;
}
#mdVideo .formList > li:not(:first-of-type) {
  margin-top: 20px;
}
#mdVideo .formList li .videoDay {
  display: flex;
}
#mdVideo .formList li .videoDay li {
  width: 45%;
}
#mdVideo .formList li .videoDay li select {
  padding: 15px 10px;
  font-family: futura-pt, 'Noto Sans JP', "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  background: #ebebeb;
}
#mdVideo .formList li .videoDay li:last-of-type {
  margin-left: 10%;
  position: relative;
}
#mdVideo .formList li .videoDay li:last-of-type:before {
  content: ":";
  position: absolute;
  left: -20%;
  text-align: center;
  width: 20%;
  top: 50%;
  transform: translateY(-50%);
}
#estimateHead > div {
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.05), -2px -2px 10px 0px rgba(0, 0, 0, 0.05);
  border: solid 1px #dfdfdf;
  border-radius: 5px;
  overflow: hidden;
}
#estimateHead > div:not(:first-of-type) {
  margin-top: 30px;
}
#estimateHead > div .company {
  padding: 20px 0;
  text-align: center;
  border-bottom: solid 1px #dfdfdf;
}
#estimateHead > div .company img {
  width: 80%;
  height: auto;
  margin: 0 auto 10px auto;
}
#estimateHead > div .company p {
  font-weight: bold;
}
#estimateHead > div .estPrice {
  border-bottom: solid 1px #dfdfdf;
}
#estimateHead > div .estPrice p {
  padding: 20px;
  font-size: 34px;
  color: #0948a1;
  line-height: 1.2;
  text-align: center;
}
#estimateHead > div .estPrice p:before {
  content: "見積金額(総額)";
  display: block;
  color: #919191;
  font-size: 16px;
}
#estimateHead > div .estPrice p:after {
  content: "円";
  font-size: 20px;
  color: #000;
  margin-left: 3px;
}
#estimateHead > div .control {
  border-bottom: solid 1px #dfdfdf;
}
#estimateHead > div .btnCont {
  display: flex;
  border-radius: 0 0 5px 5px;
  overflow: hidden;
}
#estimateHead > div .btnCont li {
  width: 33.333%;
}
#estimateHead > div .btnCont li p.disable{
	opacity: 0.1;
	pointer-events: none;
}
#estimateHead > div .btnCont li p {
  color: #fff;
  padding: 15px;
  text-align: center;
  cursor: pointer;
  position: relative;
}
#estimateHead > div .btnCont li:first-of-type {
  width: 66.666%;
}
#estimateHead > div .btnCont li:first-of-type a {
  background: #ffa733;
  display: block;
  padding: 15px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  position: relative;
}
#estimateHead > div .btnCont li:first-of-type a:after {
  content: "\e5cc";
  font-family: 'Material Symbols Outlined';
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
#estimateHead > div .btnCont li:nth-of-type(2) p {
  background: #000000;
}
#estimateHead > div .btnCont li .material-symbols-outlined {
  display: inline-block;
  vertical-align: top;
  font-size: 20px;
  margin: 3px 5px 0 0;
}
#estimateHead > div.wait, #estimateHead > div.cancel {
  position: relative;
}
#estimateHead > div.wait:after {
  content: "";
  background: #eee;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.6;
  z-index: 1;
}
#estimateHead > div.cancel {
  opacity: 0.6;
}
#estimateHead > div.cancel .company {
  border-bottom: none;
}
#estimateHead > div.cancel:after {
  content: "";
  background: #ff8d8d;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0.3;
  z-index: 1;
}
#estimateHead > div.cancel:before {
  content: attr(data-label);
  position: absolute;
  border: solid 1px #e00909;
  width: 84%;
  background: #fff;
  border-radius: 5px;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  z-index: 2;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #e00909;
}
#estimateHead > div.wait .control {
  opacity: 0.6;
}
#estimateHead > div.wait .waitTxt {
  position: relative;
  z-index: 2;
  background: #fff;
  margin: 10px;
  border-radius: 5px;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  border: solid 1px #103365;
  color: #103365;
}
#estimateHead > div.reserved .resTxt {
  position: relative;
  z-index: 2;
  background: #fff;
  margin: 10px;
  border-radius: 5px;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  border: solid 2px #FFA733;
  color: #FFA733;
}
#estimateHead > div.reserved .endTxt {
  position: relative;
  z-index: 2;
  background: #fff;
  margin: 10px;
  border-radius: 5px;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  border: solid 2px #f00;
  color: #f00;
}
#estInfo {
  border-top: solid 1px #eee;
  margin-top: 40px;
  padding-top: 40px;
}
#estInfo h2 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #5d5d5d;
}
#estInfo #estInfoBlock {
  border-radius: 5px;
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.05), -2px -2px 10px 0px rgba(0, 0, 0, 0.05);
  background: #fff;
}
#estInfo #estInfoBlock .listTit {
  color: #919191;
}
#estInfo #estInfoBlock ul li.stPlace {
  position: relative;
  padding-bottom: 20px;
  border-bottom: dotted 4px #ddd;
}
#estInfo #estInfoBlock ul li.stPlace + li {
  padding-top: 20px;
}
#estInfo #estInfoBlock ul li.stPlace:before {
  content: attr(data-label);
  position: absolute;
  border: solid 1px #d3d3d3;
  border-radius: 5px;
  padding: 0 15px;
  left: 50%;
  transform: translateX(-50%);
  bottom: -15px;
  background: #fff;
  z-index: 2;
}
#estInfo #estInfoBlock ul li.option ul {
  margin-top: 10px;
}
#estInfo #estInfoBlock ul li.option ul li span {
  border: solid 1px #d3d3d3;
  border-radius: 5px;
  padding: 0 15px;
  color: #767676;
  display: inline-block;
  margin-bottom: 5px;
}
#estInfo #estInfoBlock ul li.option ul li p {
  font-size: 16px;
}
#estInfo #estInfoBlock ul li.option ul li p:nth-of-type(2){
	border-top: dotted 1px #ccc;
	padding-top: 20px;
	margin-top:20px;
}
#estInfo #estInfoBlock ul li.option ul li:not(:last-of-type) p {
  margin-bottom: 10px;
}
#checkTerms {
  margin-top: 40px;
  border: solid 2px #0948A1;
  padding: 20px;
  border-radius: 5px;
}
#checkTerms h2 {
  text-align: center;
  font-size: 16px;
  margin-bottom: 20px;
  font-weight: bold;
}
#checkTerms h2 span {
  color: #E00909;
}
#checkTerms .termsList {
  display: flex;
  margin-bottom: 20px;
  justify-content: center;
}
#checkTerms .termsList li {
  width: 48%;
}
#checkTerms .termsList li:first-of-type {
  margin-right: 4%;
}
#checkTerms .termsList li a {
  text-align: center;
  display: block;
  text-decoration: none;
  color: #000 !important;
  background-image: -moz-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -webkit-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -ms-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  box-shadow: 1.7px 2.4px 5px 0px rgba(182, 182, 182, 0.5);
  border: solid 1px #eee;
  padding: 10px 0;
  font-size: 14px;
}
#checkTerms .baseCheck input[type="checkbox"] {
  display: none;
}
#checkTerms .baseCheck li {
  margin-bottom: 10px;
}
#checkTerms .baseCheck input[type="checkbox"] + label {
  display: block;
  background: #f0f0f0;
  border-radius: 5px;
  padding: 10px 10px 10px 40px;
  line-height: 1.4;
  position: relative;
  cursor: pointer;
}
#checkTerms .baseCheck input[type="checkbox"] + label:before {
  content: "";
  background: #fff;
  position: absolute;
  width: 20px;
  height: 20px;
  left: 10px;
  top: 10px;
}
#checkTerms .baseCheck input[type="checkbox"]:checked + label {
  background: #E5F0FF;
}
#checkTerms .baseCheck input[type="checkbox"]:checked + label:before {
  background: #0948A1;
}
#checkTerms .baseCheck input[type="checkbox"]:checked + label:after {
  font-family: 'Material Symbols Outlined';
  content: "check_small";
  position: absolute;
  left: 8px;
  font-size: 24px;
  top: 4px;
  color: #fff;
}
#checkTerms .baseCheck li:last-of-type {
  margin-bottom: 0;
  margin-top: 20px;
}
.backBtn {
  text-align: center;
  display: block;
  margin-top: 20px;
  text-decoration: none;
  background: #eee;
  padding: 5px;
  border-radius: 5px;
  color: #000 !important;
  font-weight: normal;
  position: relative;
}
.backBtn:before {
  content: "\e5cb";
  font-family: 'Material Symbols Outlined';
  position: absolute;
  left: 10px;
}
#messageBox {
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.05), -2px -2px 10px 0px rgba(0, 0, 0, 0.05);
  border: solid 1px #dfdfdf;
  margin-top: 40px;
  border-radius: 5px;
  overflow: hidden;
}
#messageBox .reload {
  text-align: center;
  background: #f6f6f6;
  border-bottom: dotted 1px #dfdfdf;
  padding: 10px 0;
  cursor: pointer;
}
#messageBox .reload span {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 4px;
}
#messageIn {
  padding: 10px 15px;
}
#messageIn .icon {
  display: none;
}
#messageIn > div {
  display: flex;
  max-width: 98%;
  margin-bottom: 30px;
}
#messageIn > div#videoSchedule {
  display: block;
}
#messageIn > div#videoSchedule p {
  text-align: center;
  font-weight: bold;
  color: #0948A1
}
#messageIn > div#videoSchedule p:nth-of-type(2) {
  border: solid 1px #0948a1;
  border-radius: 3px;
  margin-top: 10px;
  padding: 10px;
  font-size: 20px;
  line-height: 1.4;
}
#messageIn > div#videoSchedule p:nth-of-type(2) span {
  display: block;
}
#messageIn > div#videoSchedule p:nth-of-type(2) span:before {
  content: "開始時間";
  font-size: 16px;
  margin-right: 5px;
}
#messageIn > div#videoSchedule p:nth-of-type(2) a {
  display: block;
  font-size: 16px;
  text-decoration: none;
  margin-top: 10px;
  background: #103365;
  border-radius: 3px;
  color: #fff;
  padding: 15px;
  font-weight: normal;
}
#messageIn > div#videoSchedule p:nth-of-type(2) a span {
  font-size: 18px;
  display: inline-block;
  vertical-align: middle;
}
#messageIn > div#videoSchedule p:nth-of-type(2) a span:before {
  display: none;
}
#messageIn > div .txt {
  padding: 10px;
  border-radius: 10px;
  font-size: 14px;
  width: calc(100% - 75px);
  position: relative;
  box-shadow: 1.7px 2.4px 5px 0px rgba(207, 207, 207, 0.6);
}
#messageIn > div .txt .schedule {
  font-size: 18px;
  color: #0948a1;
  font-weight: bold;
}
#messageIn > div .txt .schedule span {
  display: block;
}
#messageIn > div .txt .schedule span:before {
  content: "開始時間";
  font-size: 14px;
  margin-right: 5px;
}
#messageIn .agent .txt:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 10px 5px 0;
  border-color: transparent #f6f6f6 transparent transparent;
  position: absolute;
  left: -10px;
  top: 30px;
}
#messageIn .user .txt:before {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #f1f7ff;
  right: -10px;
  z-index: 5;
  top: 30px;
}
#messageIn .user {
  justify-content: flex-end;
}
#messageIn .user .txt {
  background: #f1f7ff;
}
#messageIn .agent .txt {
  background: #f6f6f6;
}
#messageIn .user .time {
  text-align: right;
}
#messageIn > div .time {
  font-size: 12px;
  line-height: 1.4;
  padding: 5px;
  width: 75px;
}
#messageIn .linkBlock {
  background: #fff;
  border-radius: 5px;
  margin-top: 10px;
  padding: 10px;
}
#messageIn .linkBlock .price {
  font-size: 28px;
  color: #0948a1;
  line-height: 1.2;
  margin-bottom: 10px;
}
#messageIn .linkBlock .price:before {
  content: "見積金額(総額)";
  font-size: 14px;
  display: block;
  color: #000;
}
#messageIn .linkBlock .price:after {
  content: "円";
  font-size: 14px;
  color: #000;
  margin-left: 3px;
}
#messageIn .linkBlock ul li:not(:last-of-type) {
  margin-bottom: 10px;
}
#messageIn .linkBlock ul li a {
  display: block;
  text-decoration: none;
  color: #000 !important;
  background-image: -moz-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -webkit-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  background-image: -ms-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
  box-shadow: 1.7px 2.4px 5px 0px rgba(182, 182, 182, 0.5);
  border: solid 1px #eee;
  padding: 10px 15px 10px 40px;
  font-size: 14px;
  border-radius: 5px;
  position: relative;
  line-height: 1.4;
  text-align: center;
}
#messageIn .linkBlock ul li a:before {
  font-size: 24px;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Material Symbols Outlined';
  pointer-events: none;
}
#messageIn .linkBlock ul li a.docRoute:before {
  content: "flag";
}
#messageIn .linkBlock ul li a.doc:before {
  content: "description";
}
#messageBox #formInput textarea {
  border: none;
  resize: none;
  display: block;
  border-radius: 0;
  width: 100%;
  height: 55px;
  max-height: 200px;
}
#messageBox #formInput textarea:focus {
  outline: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -ms-box-shadow: none;
  box-shadow: none;
}
#messageBox #formInput li {
  margin-bottom: 0;
}
#messageBox #formInput li input {
  background: #103365;
  color: #fff;
  border-radius: 0 0 5px 5px;
  display: block;
}
#messageBox #formInput.reserveMess li .btn {
  border-top: solid 1px #bababa;
  text-align: center;
  padding: 10px;
}
#messageBox #formInput.reserveMess li:nth-of-type(2) {
  padding: 10px;
}
#messageBox #formInput.reserveMess li .btn span {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 5px 0;
}
#editProfile {
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.05), -2px -2px 10px 0px rgba(0, 0, 0, 0.05);
  border: solid 1px #dfdfdf;
  border-radius: 5px;
}
#editProfile dt {
  padding: 10px 15px 0 15px;
  font-size: 14px;
  position: relative;
}
#editProfile dt.req:after {
  content: "必須";
  position: absolute;
  background: #e00909;
  color: #fff;
  display: inline-block;
  padding: 0 10px;
  right: 15px;
  font-size: 12px;
}
#editProfile dd {
  font-size: 18px;
  padding: 10px 15px;
  border-bottom: solid 1px #dfdfdf;
}
#editProfile dd input {
  border: solid 1px #dfdfdf;
  background: #fff;
}
#editProfile dd .post {
  position: relative;
  width: 50%;
}
#editProfile dd .post:before {
  content: "〒";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}
#editProfile dd .post input {
  padding-left: 34px;
}
#editProfile dd .select {
  position: relative;
  margin: 10px 0;
}
#editProfile dd .select:after {
  font-family: 'Material Symbols Outlined';
  content: "\e5cf";
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}
#editProfile dd .select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  appearance: none;
  border: solid 1px #dfdfdf;
  border-radius: 3px;
  padding: 15px 40px 15px 15px;
  font-size: 16px;
  width: 100%;
  background: #fff;
}
#editProfile dd.address input:not(:first-of-type) {
  margin-top: 10px;
}
.editBtn {
  margin-top: 20px;
}
.editBtn li:not(:last-of-type) {
  margin-bottom: 10px;
}
#videoSchedule {
  border-top: dotted 2px #103365;
  border-bottom: dotted 2px #103365;
  padding: 20px 0;
  margin-bottom: 0 !important;
}
.information{
	padding: 20px;
	border-bottom: solid 1px #103365;
	border-top: solid 1px #103365;
	margin-top: 10px;
}
.information.error{
	border-bottom: solid 1px #f00;
	border-top: solid 1px #f00;
}
.information.error p{
	color: #f00;
}
.information p{
	font-size: 18px;
	text-align: center;
	color: #103365;
	font-weight: bold;
}
.fixReserve a {
  background: #ffa733;
  display: block;
  padding: 15px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  position: relative;
	border-radius: 5px;
  box-shadow: 1.7px 2.4px 5px 0px rgba(0, 0, 0, 0.15), -2px -2px 10px 0px rgba(0, 0, 0, 0.15);
}
.fixReserve a:after {
  content: "\e5cc";
  font-family: 'Material Symbols Outlined';
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}
.pageNation{
	display: flex;
	justify-content: center;
	margin-top: 40px;
	align-items: center;
}
.pageNation li{
	padding: 0 5px;
}
.pageNation li a{
	line-height: 1;
	font-size: 14px;
	display: block;
	text-decoration: none;
	background: #ddd;
	padding:10px;
	color: #999;
	border-radius: 3px;
}
.pageNation li a.stay{
	background: #103365;
	color: #fff;
}
#messageReload{
	text-align: center;
}
#messageReload button:before{
  content: "restart_alt";
  font-family: 'Material Symbols Outlined';
	font-size: 20px;
	vertical-align: middle;
	margin-right: 5px;
}
#messageReload button{
	background: none;
	border:solid 2px #103365;
	padding: 10px 30px;
	color: #103365;
	font-weight: bold;
	border-radius: 5px;
	display: block;
	margin: 0 auto;
}
#messageReload time{
	font-weight: normal;
	font-size: 14px;
	color: #777;
}
#messageReload time:before{
	content: "最終更新:";
	font-size: 12px;
}
@media screen and (min-width: 600px) {
  #userId, #estimateData {
    position: absolute;
    left: auto;
    right: 70px;
    top: 40px;
    width: 50%;
    display: block;
    border-bottom: none;
    padding: 0;
  }
  #userId p {
    text-align: right;
    line-height: 1.4;
  }
  #userId p:first-of-type {
    font-size: 24px;
  }
  #userId + h2, #estimateData + h2 {
    margin-top: 0;
  }
  .baseTit01 {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .baseTit01 span {
    padding: 7px;
  }
  .baseTit02 {
    font-size: 30px;
    margin-bottom: 30px;
  }
  .baseTit02 span {
    padding: 7px;
  }
  .baseTit02 a {
    margin: 0 0 5px 10px;
    width: auto;
    display: inline-block;
    vertical-align: text-bottom;
  }
  .baseTit02 a:hover {
    opacity: 0.6;
    background: #eee;
  }
  .baseBtn01 {
    font-size: 20px;
    padding: 15px 10px;
  }
  .baseBtn01:hover {
    opacity: 0.6;
  }
  .disableBtn {
    font-size: 20px;
    padding: 15px 10px;
  }
  .reserveBlock, .estimateBlock {
    padding-left: 40px;
  }
  #reserveList {
    padding-bottom: 60px;
    margin-bottom: 60px;
  }
  #reserveList .reserveBlock {
    border: solid 5px #ffa733;
  }
  #reserveList .reserveBlock:before {
    content: "予約済み";
    position: absolute;
    left: -5px;
    top: 0;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background: #ffa733;
    width: 45px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    letter-spacing: 2px;
  }
#reserveList .reserveBlock.change{
	padding-top: 0;
}
#reserveList .reserveBlock.change:before{
    content: "予約内容変更";
    position: absolute;
    left: -5px;
    top: 0;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    background: #ffa733;
    width: 45px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    letter-spacing: 2px;
}
  .reserveBlock ul, .estimateBlock ul {
    display: flex;
    flex-wrap: wrap;
  }
  .reserveBlock ul .listTit, .estimateBlock ul .listTit {
    font-size: 16px;
  }
  .reserveBlock ul li, .estimateBlock ul li {
    padding: 20px;
    border-right: solid 1px #f0f0f0;
    width: 22%;
  }
  .reserveBlock ul li:nth-of-type(2), .estimateBlock ul li:nth-of-type(2) {
    width: 17%;
  }
  .reserveBlock ul li:nth-of-type(3), .estimateBlock ul li:nth-of-type(3) {
    width: 28%;
  }
  .reserveBlock ul li:nth-of-type(4), .estimateBlock ul li:nth-of-type(4) {
    width: 33%;
    border-right: none;
  }
  .reserveBlock ul li:nth-of-type(5), .estimateBlock ul li:nth-of-type(5) {
    width: 16%;
  }
  .reserveBlock ul li:nth-of-type(6) {
    width: 40%;
  }
  .reserveBlock ul li:nth-of-type(7) {
    width: 18%;
  }
  .reserveBlock ul li.control {
    width: 26%;
    border-right: none;
  }
  .estimateBlock ul li:nth-of-type(6) {
    width: 58%;
  }
  .estimateBlock ul li:nth-of-type(7) {
    width: 26%;
    border-right: none;
  }
  .reserveBlock ul li p, .estimateBlock ul li p {
    font-size: 20px;
  }
  .reserveBlock ul li p span, .estimateBlock ul li p span {
    font-size: 16px;
  }
  .reserveBlock ul li.control {
    padding: 10px;
  }
  .reserveBlock ul li.control ul {
    background: none;
  }
  .reserveBlock ul li.control ul li {
    text-align: center;
    width: 32%;
    margin-right: 2%;
    border-right: none;
  }
  .reserveBlock ul li.control ul li:last-of-type {
    margin-right: 0;
  }
  .reserveBlock ul li.control ul li a, .reserveBlock ul li.control ul li p {
    background: #f8f8f8;
    border-radius: 5px;
    cursor: pointer;
  }
  .reserveBlock ul li.control ul li a:hover, .reserveBlock ul li.control ul li p:hover {
    background: #103365;
    color: #fff !important;
  }
  #estimateList .estimateBlock {
    padding-top: 0;
  }
  #estimateList .estimateBlock:before {
    left: -1px;
    height: 100%;
    width: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 5px 0 0 5px;
    font-size: 22px;
  }
  aside h2 {
    font-size: 24px;
  }
  #asideList .estimateBlock:before {
    content: "ー";
    position: absolute;
    left: 0;
    top: 0;
    background: #dfdfdf;
    width: 40px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    border-radius: 5px 0 0 5px;
  }
  #asideList .reserveBlock {
    padding-top: 0;
  }
  #asideList .reserveBlock:before {
    content: "催行済み";
    position: absolute;
    top: 0;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 40px;
    height: 100%;
    font-size: 20px;
    letter-spacing: 2px;
    border-radius: 5px 0 0 5px;
  }
  .js-modal .mdTit:before {
    font-size: 36px;
  }
  .js-modal .mdTit + p {
    position: absolute;
    right: 20px;
    top: 20px;
    background: none;
    font-weight: bold;
    text-align: right;
    padding-left: 180px;
    line-height: 1.2;
    display: flex;
    align-items: center;
    height: 40px;
  }
  .mdTit {
    font-size: 24px;
    padding-left: 40px;
    margin-bottom: 20px;
  }
  .modal .listTit .req {
    font-size: 14px;
  }
  .js-modal table thead {
    display: block;
  }
  .js-modal table thead tr {
    display: flex;
    padding: 12px;
    border-bottom: solid 1px #f3f3f3;
    margin-bottom: 10px;
  }
  .js-modal table thead tr th {
    font-weight: normal;
    font-size: 14px;
    position: relative;
    padding: 0 10px;
  }
  .js-modal table thead tr th:after {
    content: "";
    width: 1px;
    background: #ccc;
    height: 10px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .js-modal table thead tr th:last-of-type:after {
    display: none;
  }
  #mdEstimate table thead tr th:first-of-type {
    width: 51%;
    text-align: left;
  }
  #mdEstimate table thead tr th:nth-of-type(2) {
    width: 17%;
    text-align: left;
  }
  #mdEstimate table thead tr th:nth-of-type(3) {
    width: 32%;
    text-align: left;
	  padding-left: 20px;
  }
  #mdEstimate table tbody tr {
    align-items: center;
    padding: 12px;
  }
  #mdEstimate table tr td:nth-of-type(1) {
    width: 51%;
    text-align: left;
    padding: 0 10px;
  }
  #mdEstimate table tr td:nth-of-type(1):before, #mdEstimate table tr td:nth-of-type(3):before {
    display: none;
  }
  #mdEstimate table tr td:nth-of-type(1) span {
    font-size: 26px;
  }
	#mdEstimate table tr td:nth-of-type(2){
		width: 17%;
	}
	#mdEstimate table tr td:nth-of-type(3) {
    width: 32%;
		padding: 0;
  }
  #mdEstimate table tr td a {
    padding: 6px 6px 6px 18px;
  }
  .js-modal table td a:before, #mdDelete a:before, #mdReserve a:before {
    font-size: 22px;
  }
  #mdEstimate input[type="radio"] + label:before {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -70%);
  }
  #mdEstimate input[type="radio"]:checked + label {
    font-size: 0;
  }
  #mdEstimate input[type="radio"]:checked + label:after {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -86%);
  }
  .modalControl {
    width: 60%;
    margin: 20px auto;
    display: flex;
  }
  .modalControl li {
    width: 100%;
  }
  .modalControl li:not(:first-of-type) {
    margin-left: 4%;
    margin-top: 0;
  }
  .modalControl li input[type="submit"]:hover {
    opacity: 0.6;
  }
  #mdDelete p.price, #mdReserve p.price {
    font-size: 34px;
    width: 60%;
    text-align: left;
    padding-left: 30px;
    margin-bottom: 0;
  }
  #mdDelete .priceBox, #mdReserve .priceBox {
    display: flex;
    align-items: flex-end;
    border-top: dotted 1px #ccc;
    border-bottom: dotted 1px #ccc;
    padding: 20px 0;
  }
  #mdDelete .doc, #mdReserve .doc {
    width: 80%;
    margin: 0 auto;
  }
  #mdDocument table tbody tr {
    border-bottom: dotted 1px #eee;
  }
  #mdDocument table thead tr th:first-of-type, #mdDocument table tbody tr td:first-of-type {
    width: 50%;
    text-align: left;
  }
  #mdDocument table tbody tr td:first-of-type {
    padding-left: 20px;
  }
  #mdDocument table tbody tr td.alart:before {
    left: 6px;
  }
  #mdDocument table thead tr th:nth-of-type(2), #mdDocument table tbody tr td:nth-of-type(2) {
    width: 35%;
    text-align: left;
  }
  #mdDocument table tbody tr td:nth-of-type(2) {
    font-size: 16px;
  }
  #mdDocument table thead tr th:nth-of-type(3), #mdDocument table tbody tr td:nth-of-type(3) {
    width: 15%;
    position: static;
  }
  #mdVideo .formList {
    margin-bottom: 30px;
    display: flex;
  }
  #mdVideo .formList > li {
    width: 48%;
  }
  #mdVideo .formList > li:not(:first-of-type) {
    margin-top: 0;
    margin-left: 4%;
  }
  .js-modal table td a:hover, #mdDelete a:hover, #mdReserve a:hover {
    opacity: 0.6;
  }
  #estimateHead > div {
    display: flex;
    align-items: center;
  }
  #estimateHead > div:not(:first-of-type) {
    margin-top: 20px;
  }
  #estimateHead > div .company {
    width: 30%;
    padding: 15px 0;
    text-align: left;
    display: flex;
    align-items: center;
    border-right: solid 1px #dfdfdf;
    border-bottom: none;
    min-height: 122px;
  }
  #estimateHead > div .company img {
    width: 40%;
    margin: 0;
    padding: 20px;
  }
  #estimateHead > div .company p {
    width: 57%;
    padding: 20px 20px 20px 0;
    font-size: 18px;
    line-height: 1.4;
  }
  #estimateHead > div .estPrice {
    width: 20%;
    border-bottom: none;
  }
  #estimateHead > div .estPrice p {
    text-align: left;
  }
  #estimateHead > div .control {
    border-bottom: none;
    border-right: solid 1px #dfdfdf;
    width: 25%;
    padding: 10px 20px 10px 0;
    background: none;
    min-height: 122px;
    align-items: center;
  }
  #estimateHead > div .control li {
    text-align: center;
    width: 30.66666%;
    margin-right: 4%;
    border-right: none;
  }
  #estimateHead > div .control li:last-of-type {
    margin-right: 0;
  }
  #estimateHead > div .control li a, #estimateHead > div .control li p {
    background: #f8f8f8;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.2s;
  }
  #estimateHead > div .control li a:hover, #estimateHead > div .control li p:hover {
    background: #103365;
    color: #fff !important;
  }
  #estimateHead > div .btnCont {
    border-radius: 0;
    padding: 20px;
    width: 28%;
  }
  #estimateHead > div .btnCont li {
    width: 30%;
  }
  #estimateHead > div .btnCont li p, #estimateHead > div .btnCont li a {
    padding: 15px 10px;
    border-radius: 5px;
    font-size: 18px;
    font-weight: bold;
    transition: all 0.2s;
  }
  #estimateHead > div .btnCont li:first-of-type {
    width: 66%;
    margin-right: 4%;
  }
  #estimateHead > div .btnCont li .material-symbols-outlined {
    margin: 5px 5px 0 0;
  }
  #estimateHead > div .btnCont li p:hover, #estimateHead > div .btnCont li:first-of-type a:hover {
    opacity: 0.6;
  }
  #estimateHead > div.wait .waitTxt,#estimateHead > div.reserved .resTxt ,#estimateHead > div.reserved .endTxt {
    width: 24%;
    margin: 20px;
    padding: 20px 10px;
  }
  #estimateHead > div.cancel:before {
    width: 24%;
    padding: 15px 10px;
  }
  #estimateHead > div.wait .company {
    padding: 0;
  }
  #estimateHead > div.reserve .company {
    width: 47%;
  }
  #estimateHead > div.reserve .estPrice {
    width: 30%;
  }
  #estimateHead > div.reserve .control {
    border-right: none;
  }
  #estimateHead > div.cancel .company {
    border-right: none;
    padding: 0;
  }
  #estInfo {
    margin-top: 60px;
    padding-top: 60px;
  }
  #estInfo #estInfoBlock > ul {
    display: flex;
    flex-wrap: wrap;
  }
  #estInfo #estInfoBlock > ul > li {
    padding: 20px;
    border-right: solid 1px #f0f0f0;
    width: 22%;
  }
  #estInfo #estInfoBlock ul li p {
    font-size: 20px;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(3) {
    width: 56%;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(4), #estInfo #estInfoBlock > ul > li:nth-of-type(5) {
    width: 50%;
    border-right: none;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(4) br, #estInfo #estInfoBlock > ul > li:nth-of-type(5) br {
    display: none;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(6), #estInfo #estInfoBlock > ul > li:nth-of-type(7) {
    width: 32%;
    border-right: solid 1px #f0f0f0;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(8) {
    width: 36%;
    border-right: none;
  }
  #estInfo #estInfoBlock > ul > li:nth-of-type(9) {
    width: 100%;
    border-right: none;
    border-bottom: none;
  }
  #estInfo #estInfoBlock ul li.stPlace {
    padding-bottom: 0;
    border-bottom: solid 1px #f0f0f0;
  }
  #estInfo #estInfoBlock ul li.stPlace:before {
    right: 40px;
    left: auto;
    transform: none;
    bottom: 24px;
  }
  #estInfo #estInfoBlock ul li.stPlace:after {
    content: "";
    width: 140px;
    border-top: dotted 4px #ccc;
    position: absolute;
    height: 1px;
    right: 10px;
    bottom: 35px;
  }
  #estInfo #estInfoBlock ul li.option ul {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
  }
  #estInfo #estInfoBlock ul li.option ul li {
    display: flex;
    align-items: flex-start;
  }
  #estInfo #estInfoBlock ul li.option ul li span {
    margin-right: 10px;
    text-align: center;
  }
  #estInfo #estInfoBlock ul li.option ul li p {
    font-size: 18px;
  }
  #estInfo #estInfoBlock ul li.option ul li:nth-of-type(1), #estInfo #estInfoBlock ul li.option ul li:nth-of-type(2) {
    width: 26%;
  }
  #estInfo #estInfoBlock ul li.option ul li {
    width: 16%;
  }
  #estInfo #estInfoBlock ul li.option ul li:last-of-type {
    width: 100%;
  }
  #estInfo #estInfoBlock ul li.option ul li:last-of-type span {
    width: 98px;
  }
	#estInfo #estInfoBlock ul li.option ul li:last-of-type{
		flex-wrap: wrap;
	}
  #estInfo #estInfoBlock ul li.option ul li:last-of-type p {
    width: calc(100% - 110px);
  }
	#estInfo #estInfoBlock ul li.option ul li:last-of-type p:nth-of-type(2){
		margin-left: 110px;
	}
  #estInfo #estInfoBlock ul li.option ul li:not(:last-of-type) p {
    margin-bottom: 0;
  }
  #estInfo #estInfoBlock ul li.option ul li:not(:last-of-type) {
    margin-bottom: 15px;
  }
  #checkTerms {
    margin-top: 40px;
    border: solid 4px #0948A1;
    padding: 30px;
  }
  #checkTerms h2 {
    font-size: 18px;
  }
  #checkTerms .termsList {
    width: 60%;
    margin: 0 auto 30px auto;
  }
  #checkTerms .termsList li a:hover {
    opacity: 0.6;
  }
  #checkTerms .baseCheck li:last-of-type {
    margin-bottom: 0;
    margin-top: 30px;
  }
  #checkTerms .baseCheck li:last-of-type input {
    width: 400px;
    padding: 20px !important;
    font-size: 18px;
    margin: 0 auto;
    display: block;
  }
  .backBtn {
    width: 200px;
  }
  .backBtn:hover {
    opacity: 0.6;
  }
  #messageIn {
    padding: 40px;
  }
  #messageIn .icon {
    display: block;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    border: solid 1px #dfdfdf;
  }
  #messageIn .icon img {
    width: 100%;
    height: 100px;
    object-fit: cover;
  }
  #messageIn > div {
    max-width: 90%;
    margin-bottom: 40px;
  }
  #messageIn > div .txt {
    padding: 20px;
    font-size: 16px;
    width: calc(100% - 215px);
  }
  #messageIn .agent .txt:before, #messageIn .user .txt:before {
    top: 45px;
  }
  #messageIn .user {
    margin-left: auto;
  }
  #messageIn .agent .txt {
    margin-left: 20px;
  }
  #messageIn > div .time {
    font-size: 14px;
    padding: 5px 10px;
    width: 100px;
  }
  #messageIn > div .txt .schedule {
    font-size: 24px;
  }
  #messageIn > div .txt .schedule span {
    display: inline-block;
    margin-left: 20px;
  }
  #messageIn > div .txt .schedule span:before {
    vertical-align: middle;
  }
  #messageIn > div#videoSchedule {
    max-width: 100%;
    padding-bottom: 0;
    border-bottom: none;
  }
  #messageIn > div#videoSchedule p {
    font-size: 22px;
  }
  #messageIn > div#videoSchedule p:nth-of-type(2) {
    width: 800px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 2px #0948a1;
    margin-top: 20px;
    padding: 15px;
    font-size: 26px;
  }
  #messageIn > div#videoSchedule p:nth-of-type(2) a {
    margin-left: 20px;
    margin-top: 0;
  }
  #messageIn .linkBlock {
    width: auto;
    display: inline-block;
    margin-top: 10px;
    padding: 20px 20px 10px 20px;
  }
  #messageIn .linkBlock .price {
    font-size: 32px;
  }
  #messageIn .linkBlock .price:before {
    font-size: 16px;
    display: inline-block;
    margin-right: 5px;
  }
  #messageIn .linkBlock .price:after {
    font-size: 16px;
  }
  #messageIn .linkBlock ul {
    display: flex;
    flex-wrap: wrap;
  }
  #messageIn .linkBlock ul li {
    margin: 0 10px 10px 0;
  }
  #messageIn .linkBlock ul li a {
    padding: 12px 40px 12px 65px;
    font-size: 16px;
  }
  #messageIn .linkBlock ul li a:hover {
    opacity: 0.4;
  }
  #messageBox .reload {
    padding: 15px 0;
  }
  #messageBox #formInput ul {
    display: flex;
  }
  #messageBox #formInput li:first-of-type {
    width: 85%;
  }
  #messageBox #formInput li:last-of-type {
    width: 15%;
    padding: 10px;
  }
  #messageBox #formInput textarea {
    width: 100%;
    height: 78px;
    max-height: 220px;
  }
  #messageBox #formInput li input {
    border-radius: 8px;
  }
  #messageBox #formInput li input:hover {
    opacity: 0.6;
  }
  #messageBox #formInput.reserveMess li:first-of-type {
    width: 85%;
  }
  #messageBox #formInput.reserveMess li {
    width: 15%;
    padding: 0;
  }
  #messageBox #formInput.reserveMess li:last-of-type {
    width: 20%;
    padding: 10px 10px 10px 0;
  }
  #messageBox #formInput.reserveMess li .btn {
    border: solid 1px #bababa;
    border-radius: 5px;
    padding: 12px;
    background-image: -moz-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
    background-image: -webkit-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
    background-image: -ms-linear-gradient(90deg, rgb(247, 247, 247) 49%, rgb(255, 255, 255) 50%);
    cursor: pointer;
    transition: all 0.2s;
  }
  #messageBox #formInput li .btn:hover {
    opacity: 0.6;
  }
  #editProfile dl {
    display: flex;
    flex-wrap: wrap;
  }
  #editProfile dt {
    padding: 25px 20px 20px 20px;
    font-size: 16px;
    width: 30%;
    border-bottom: solid 1px #dfdfdf;
  }
  #editProfile dt.req:after {
    right: 0;
    font-size: 14px;
  }
  #editProfile dd {
    width: 70%;
    font-size: 16px;
    padding: 20px;
  }
  #editProfile dd p {
    padding: 5px 0 0 0;
  }
  #editProfile dd .post {
    width: 20%;
  }
  #editProfile dd .select {
    width: 40%;
  }
  .editBtn {
    width: 600px;
    margin: 40px auto 0 auto;
    display: flex;
  }
  .editBtn li:not(:last-of-type) {
    margin-bottom: 0;
    margin-left: 2%;
    width: 64%;
    order: 2;
  }
  .editBtn li:last-of-type {
    width: 34%;
  }
  .editBtn li a {
    width: 100%;
    padding: 17px;
    margin-top: 0;
  }
.information{
	width: 1160px;
	margin: 40px auto 10px auto;
	border: solid 2px #103365;
}
.information.error{
	border: solid 2px #f00;
}
.information p{
	font-size: 20px;
}
	.fixReserve{
		width: 400px;
		margin: 0 auto;
	}
	.fixReserve a:hover{
		opacity: 0.6;
	}
.pageNation{
	margin-top: 50px;
}
	#messageReload{
		margin-bottom: 30px;
	}
	#messageReload button{
		transition: all 0.2s;
		cursor: pointer;
	}
	#messageReload button:hover{
		background: #eee;
	}
}