@charset "UTF-8";
/*--------------------------------------



--------------------------------------*/
.pageTitleWrap {
  margin: 0;
  position: relative;
}

.pageTitle {
  min-height: 170px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 15px 0;
  font-size: calc(1.525rem + 2.475vw);
  font-weight: bold;
}

.pageImg img {
  object-fit: cover;
  font-family: "object-fit: cover;";
  object-position: top;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

/*--------------------------------------



--------------------------------------*/
.mainWrap {
  display: flex;
  flex-direction: column;
}

.contentTitleWrap {
  border-top: solid 1px #61D2DB;
  border-bottom: solid 1px #61D2DB;
  padding: 10px 0;
  margin: 0 0 30px;
}

.contentBox {
  margin: 0 0 70px;
}

.contentSubBox {
  margin: 0 0 40px;
}

.contentSubBoxMb90 {
  margin: 0 0 50px;
}

.contentSubBoxMb110 {
  margin: 0 0 60px;
}

.contentTitle {
  border-left: solid 10px #61D2DB;
  padding: 0 0 0 20px;
  font-size: calc(1.375rem + 1.125vw);
  font-weight: 400;
}

.contentMinTitle {
  font-size: calc(1.325rem + 0.675vw);
  font-weight: 500;
  border-bottom: solid #EEEEEE 3px;
  position: relative;
  margin: 0 0 20px;
  padding: 0 0 2px;
}
.contentMinTitle::before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  height: 3px;
  width: 80px;
  background: #61D2DB;
  z-index: 1;
}

.contentSubTitle {
  border-left: solid 7px #61D2DB;
  font-size: calc(1.305rem + 0.495vw);
  font-weight: 500;
  margin: 0 0 15px;
  padding: 0 0 0 10px;
}

.hospital {
  padding: 2px;
  border: solid 1px #DFDFDF;
}

.hospitalInner {
  padding: 20px 15px 20px;
  border: solid 1px #DFDFDF;
}

.hospitalItem {
  padding: 0 0 0 50px;
  position: relative;
  counter-increment: number;
}
.hospitalItem::before {
  position: absolute;
  left: 0;
  content: "（" counter(number) "）";
}

.toolTitle {
  font-size: calc(1.285rem + 0.315vw);
  font-weight: 700;
  background: #F2F2F2;
  padding: 5px 15px;
  margin: 0 0 10px;
}

.tool {
  margin: 0 0 45px;
}

.toolRental {
  margin: 40px 0 0;
}

.toolItem {
  display: block;
  padding: 0 0 0 20px;
  position: relative;
}
.toolItem span {
  font-size: calc(1.265rem + 0.135vw);
}
.toolItem::before {
  content: "□";
  position: absolute;
  left: 0;
  top: 0;
  margin: 0 3px 0 0;
}

.preparationInner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 0 0 40px;
}
.preparationInner::after {
  content: "";
  display: none;
  width: calc(50% - 10px);
}

.preparation {
  margin: 0 0 30px;
  width: calc(50% - 10px);
}

.preparationTitle {
  background: #F2F2F2;
  padding: 5px 15px;
  font-weight: 700;
  margin: 0 0 10px;
}

.preparationItem {
  display: block;
  padding: 0 0 0 20px;
  position: relative;
}
.preparationItem span {
  position: absolute;
  left: 0;
  top: 1px;
  margin: 0 3px 0 0;
}
.preparationItem::before {
  content: "□";
  position: absolute;
  left: 0;
  top: 0;
  margin: 0 3px 0 0;
}

.preparationMinText {
  margin: 10px 0 0;
  font-size: calc(1.265rem + 0.135vw);
}

.attention {
  border: solid 2px #FF5B5B;
  margin: 0 0 80px;
}

.attentionTitle {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FF5B5B;
  color: #fff;
  font-size: calc(1.305rem + 0.495vw);
  font-weight: 700;
  min-width: 100px;
  padding: 20px;
}
.attentionText {
  padding: 20px;
}

.setTitleWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 35px;
}

.setLeft, .setRight {
  min-width: 41px;
}

.setTitleInner {
  padding: 0 10px;
}

.setSubTitle {
  font-size: calc(1.305rem + 0.495vw);
  font-weight: 700;
  text-align: center;
}

.setTitle {
  font-weight: 700;
  font-size: calc(1.415rem + 1.485vw);
  text-align: center;
}

.setWrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 20px 25px;
  background: #F5F9FE;
  margin: 0 0 50px;
}

.setBox {
  background: #fff;
  border-radius: 10px;
  padding: 20px 15px;
}
.setBox:nth-of-type(1) {
  margin: 0 0 10px;
}
.setBox:nth-of-type(2) {
  margin: 0 0 10px;
}
.setBox:nth-of-type(3) {
  margin: 0 0 10px;
}
.setBox:nth-of-type(4) {
  margin: 0;
}

.setNumber {
  display: flex;
  align-items: center;
  font-size: calc(1.325rem + 0.675vw);
  font-weight: 700;
  margin: 0 0 5px;
}
.setNumber span {
  font-size: calc(1.425rem + 1.575vw);
  color: #4592DE;
  margin: 0 10px 0 0;
}

.setPerson {
  margin: 0 0 110px;
  padding: 30px 0;
  border-top: dotted 2px #CCCCCC;
  border-bottom: dotted 2px #CCCCCC;
}

.setPersonTitle {
  font-size: calc(1.345rem + 0.855vw);
  color: #70A5D9;
  margin: 0 0 15px;
  font-weight: 700;
}

.setPersonText {
  margin: 0 0 20px;
}

.setPersonItem {
  padding: 0 0 0 25px;
  position: relative;
}
.setPersonItem:not(:last-of-type) {
  margin: 0 0 10px;
}
.setPersonItem::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #70A5D9;
  left: 0;
  top: 3px;
}
.setPersonItem::after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  left: 5px;
  top: 8px;
}

.setPersonImg {
  max-width: 380px;
  margin: 0 auto;
}

.planBox {
  margin: 0 0 70px;
}

.planTitle {
  font-size: calc(1.355rem + 0.945vw);
  font-weight: 700;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 30px;
}
.planTitle::before {
  content: "";
  width: 34.0909090909%;
  height: 1px;
  background: #CCCCCC;
  margin: 0 10px 0 0;
}
.planTitle::after {
  content: "";
  width: 34.0909090909%;
  height: 1px;
  background: #CCCCCC;
  margin: 0 0 0 10px;
}

.planList {
  margin: 0 0 15px;
}

.planItem {
  max-width: 430px;
  margin: 0 auto 20px;
}

.planItemInner {
  border: solid 1px #F9A1A1;
  height: 100%;
}

.planItemInner02 {
  border: solid 1px #70A5D9;
}

.planItemInner03 {
  border: solid 1px #FF9C68;
}

.planItemInner04 {
  border: solid 1px #91BF6E;
}

.planInnerRow {
  display: flex;
  justify-content: space-between;
  border-bottom: solid 1px #F9A1A1;
}

.planInnerRow02 {
  border-bottom: solid 1px #70A5D9;
}

.planInnerRow03 {
  border-bottom: solid 1px #FF9C68;
}

.planInnerRow04 {
  border-bottom: solid 1px #91BF6E;
}

.planName {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 127px;
  background: #F9A1A1;
  color: #fff;
  font-size: calc(1.475rem + 2.025vw);
  font-weight: 700;
}
.planName span {
  font-size: calc(1.285rem + 0.315vw);
  margin: 15px 0 0 5px;
}

.planName02 {
  background: #70A5D9;
}

.planName03 {
  background: #FF9C68;
}

.planName04 {
  background: #91BF6E;
}

.planFee {
  width: calc(100% - 127px);
  background: #FFF6F6;
  padding: 20px;
}

.planFee02 {
  background: #F6FBFF;
}

.planFee03 {
  background: #FFF6F2;
}

.planFee04 {
  background: #F7FEF2;
}
.planFeeBox:first-of-type {
  margin: 0 0 20px;
}

.planDay {
  font-weight: 700;
}
.planDay span {
  font-size: calc(1.375rem + 1.125vw);
  margin: 0 2px 0;
}

.detail {
  padding: 15px 10px;
}

.detailFlex {
  display: flex;
  align-items: center;
}

.detailTitle {
  color: #F9A1A1;
}

.detailTitle02 {
  color: #70A5D9;
}

.detailText span {
  font-size: calc(1.265rem + 0.135vw);
  display: inline-block;
}

.planDetail {
  font-size: calc(1.265rem + 0.135vw);
}

.planDetailEnd {
  display: flex;
  align-items: flex-start;
}
.planDetailEnd::before {
  content: "・";
}

.setLink {
  max-width: 380px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: calc(1.325rem + 0.675vw);
  font-weight: 700;
  padding: 20px;
  margin: 0 auto;
  color: #fff;
  text-decoration: none;
  background: #61D2DB;
  transition: 0.3s;
}
.setLink:hover {
  opacity: 0.8;
}

/*--------------------------------------



--------------------------------------*/

.sideBar {
  border: solid 1px #61D2DB;
  border-radius: 10px;
  margin: 0 0 20px;
}

.sidenavTitle {
  background: #61D2DB;
  font-size: calc(1.305rem + 0.495vw);
  font-weight: 500;
  padding: 13px 15px;
  color: #fff;
  border-radius: 10px 10px 0 0;
  text-align: center;
}

.sideNav {
  padding: 10px;
}

.sideNavItem:not(:last-of-type) {
  border-bottom: dotted 2px #ccc;
}

.sideNavLink {
  display: flex;
  align-items: center;
  padding: 15px;
  transition: 0.3s;
  color: #444;
  text-decoration: none;
}
.sideNavLink:hover {
  color: #61D2DB;
}

/*--------------------------------------



--------------------------------------*/

@media (min-width: 1000px){
  .pageTitle {
    font-size: 4rem;
  }
  .contentTitle {
    font-size: 2.5rem;
  }
  .contentMinTitle {
    font-size: 2rem;
  }
  .contentSubTitle {
    font-size: 1.8rem;
  }
  .toolTitle {
    font-size: 1.6rem;
  }
  .toolItem span {
    font-size: 1.4rem;
  }
  .preparationMinText {
    font-size: 1.4rem;
  }
  .attentionTitle {
    font-size: 1.8rem;
  }
  .setSubTitle {
    font-size: 1.8rem;
  }
  .setTitle {
    font-size: 2.9rem;
  }
  .setNumber {
    font-size: 2rem;
  }
  .setNumber span {
    font-size: 3rem;
  }
  .setPersonTitle {
    font-size: 2.2rem;
  }
  .planTitle {
    font-size: 2.3rem;
  }
  .planName {
    font-size: 3.5rem;
  }
  .planName span {
    font-size: 1.6rem;
  }
  .planDay span {
    font-size: 2.5rem;
  }
  .detailText span {
    font-size: 1.4rem;
  }
  .planDetail {
    font-size: 1.4rem;
  }
  .setLink {
    font-size: 2rem;
  }
  .sidenavTitle {
    font-size: 1.8rem;
  }
}

@media print, screen and (min-width: 1000px){
  .planFeeBox {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .planFeeBox:first-of-type {
    margin: 0;
  }
}

@media print, screen and (min-width: 768px){
  .contentSubBoxMb110 {
    margin: 0 0 110px;
  }
  .toolRow {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
  .toolRowItem:nth-of-type(1) {
    width: 41%;
  }
  .toolRowItem:nth-of-type(2) {
    width: 55%;
  }
  .setBox {
    width: calc(50% - 10px);
  }
  .setBox:nth-of-type(3) {
    margin: 0;
  }
}

@media print, screen and (min-width: 960px){
  .pageTitleWrap {
    margin: 57px 0 0;
  }
  .pageTitle {
    min-height: 240px;
  }
  .mainWrap {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }
  .contentBox {
    margin: 0 0 150px;
  }
  .contentSubBox {
    margin: 0 0 60px;
  }
  .contentSubBoxMb90 {
    margin: 0 0 90px;
  }
  .preparationInner {
    margin: 0 0 80px;
  }
  .preparationInner::after {
    display: block;
    width: calc(33.33333% - 10px);
  }
  .preparation {
    width: calc(33.33333% - 10px);
  }
  .attention {
    display: flex;
    justify-content: space-between;
    margin: 0 0 140px;
  }
  .attentionText {
    width: calc(100% - 100px);
  }
  .setWrap {
    margin: 0 0 70px;
  }
  .setPerson {
    margin: 0 0 220px;
  }
  .setPersonRow {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .setPersonText {
    margin: 0;
    width: 55.6818181818%;
  }
  .setPersonImg {
    margin: 0;
    width: 37.5%;
  }
  .planList {
    display: flex;
    justify-content: space-between;
  }
  .planItem {
    margin: 0;
    width: 48.8636363636%;
  }
  .content {
    width: calc(100% - 300px);
  }
  .sideBar {
    margin: 0 0 0 20px;
    min-width: 280px;
    max-width: 280px;
    position: sticky;
    top: 0;
  }
}

/*# sourceMappingURL=index.css.map*/