.teatment_example_a .teatment_example_a__before::before, .teatment_example_a .teatment_example_a__after::before, .teatment_example_a .teatment_example_b__before::before, .teatment_example_a .teatment_example_b__after::before, .teatment_example_a .teatment_example_c__before::before, .teatment_example_a .teatment_example_c__after::before {
  z-index: 10 !important;
}
.site-footer .footer-nav ul li {
  padding: 0 0px;
  min-width: 0px;
}
/*
==============================================================
	reserve

==============================================================
*/
.remaining{
  display: none;
}
#under.reserve .sec00 {
  min-width: 1200px;
  height: 400px;
  background: url('../img/page_contact_bg.jpg') no-repeat center #eee;
}
#under.reserve .sec00 figure {
  display: none;
}
/* ---------------------------------------------------------*/
#under.reserve .sec01 {
  min-width: 1200px;
  padding: 40px 0;
  text-align: center;
  background: #D5A6AB;
  color: #fff;
}
#under.reserve .sec01 p {
  line-height: 2.2;
}
#under.reserve .sec01 a {
  display: block;
  width: 400px;
  margin: 20px auto 0;
  padding: 22px;
  border-radius: 60px;
  background-color: #fff;
  background-image: url('../img/icon_arrow_left.png');
  background-repeat: no-repeat;
  background-position: right 30px center;
  background-size: auto 6px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);
  font-weight: 700;
  color: #544c49;
}
/* ---------------------------------------------------------*/
#under.reserve .sec02 {
  min-width: 1200px;
  padding: 80px 0;
  text-align: center;
}
#under.reserve .sec02 .h2_txt {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 12px;
}
#under.reserve .sec02 .box {
  padding: 30px;
  border: 1px solid #b5b1b0;
  border-radius: 6px;
  text-align: left;
}
#under.reserve .sec02 .box .txt {
  line-height: 1.8;
}
#under.reserve .sec02 .box ul {
  line-height: 1.8;
}
#under.reserve .sec02 .box ul li {
  position: relative;
  padding-left: 1.2em;
}
#under.reserve .sec02 .box ul li:before {
  content: '・';
  position: absolute;
  top: 0;
  left: 0;
}
#under.reserve .sec02 .box ul li + li {
  margin-top: 10px;
}
#under.reserve .sec02 .box ul li a {
  display: inline-block;
  margin: 0 4px;
  text-decoration: underline;
  color: #987f33;
}
#under.reserve .sec02 .cta {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
#under.reserve .sec02 .cta a {
  display: table;
  margin: 0 20px;
  width: 400px;
  height: 60px;
  border-radius: 60px;
  border: 2px solid #e1d5cb;
  background-color: #544c49;
  background-repeat: no-repeat;
  background-position: left 30px center;
  background-size: 28px auto;
  font-weight: 700;
  font-size: 14px;
  color: #fff;
}
#under.reserve .sec02 .cta a span {
  display: table-cell;
  vertical-align: middle;
}
#under.reserve .sec02 .cta a.tel {
  pointer-events: none;
  background-image: url('../img/icon_tel.png');
  font-size: 20px;
}
#under.reserve .sec02 .cta a.line {
  background-image: url('../img/icon_line.png');
}
#under.reserve .sec02 .lineyoyaku {
  display: block;
  width: 400px;
  margin: 30px auto 0;
  padding: 22px;
  border-radius: 60px;
  border: 2px solid #e1d5cb;
  background-color: #544c49;
  background-image: url('../img/icon_line.png');
  background-repeat: no-repeat;
  background-position: left 30px center;
  background-size: 28px auto;
  font-weight: 700;
  font-size: 14px;
  color: #fff;
}
/* ---------------------------------------------------------*/
#under.reserve.recruit .sec02 + .sec02 {
  padding: 0 0 80px;
}
#under.reserve .sec02 .title {
  margin-bottom: 30px;
  line-height: 2.2;
}
#under.reserve .sec02 .outline {
  width: 600px;
  margin: 0 auto;
  padding: 20px;
  text-align: left;
  background: #eee;
  line-height: 1.6;
}
#under.reserve .sec02 .outline ul {
  position: relative;
}
#under.reserve .sec02 .outline ul:before {
  content: '';
  position: absolute;
  top: 0;
  left: 60px;
  bottom: 0;
  width: 1px;
  background: #544c49;
  z-index: 1;
}
#under.reserve .sec02 .outline ul li {
  display: flex;
  align-items: center;
}
#under.reserve .sec02 .outline ul li + li {
  margin-top: 30px;
}
#under.reserve .sec02 .outline ul li span {
  position: relative;
  width: 120px;
  padding: 5px 0;
  margin-right: 15px;
  text-align: center;
  background: #544c49;
  color: #fff;
  z-index: 2;
}
/* ---------------------------------------------------------*/
#under.reserve .sec02 .recruit_table {
  width: 100%;
  text-align: left;
  line-height: 1.8;
}
#under.reserve .sec02 .recruit_table tr + tr {
  border-top: 1px solid #f7f2ee;
}
#under.reserve .sec02 .recruit_table th {
  white-space: nowrap;
  width: 250px;
  padding: 20px;
  background: #544c49;
  color: #fff;
}
#under.reserve .sec02 .recruit_table td {
  padding: 20px;
}
#under.reserve .sec02 .recruit_table td div {
  padding: 20px;
  border-radius: 3px;
  background: #f7f2ee;
}
#under.reserve .sec02 .recruit_table td div + p {
  margin-top: 20px;
}
#under.reserve .sec02 .recruit_table td p {
  margin-bottom: 10px;
  font-weight: 700;
}
#under.reserve .sec02 .recruit_table td ul li {
  position: relative;
  padding-left: 1.2em;
}
#under.reserve .sec02 .recruit_table td ul li:before {
  content: '・';
  position: absolute;
  top: 0;
  left: 0;
}
#under.reserve .sec02 .recruit_table td ul li + li {
  margin-top: 5px;
}
/* ---------------------------------------------------------*/
#under.reserve .sec03 {
  min-width: 1200px;
  padding: 80px 0;
  background: #f7f2ee;
  text-align: center;
}
#under.reserve .sec03 .h2_txt {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 12px;
}
#under.reserve .sec03 .box {
  text-align: left;
}
#under.reserve .sec03 .box .note {
  line-height: 2.2;
}
/* ---------------------------------------------------------*/
#under.reserve .sec04 {
  min-width: 1200px;
  padding: 80px 0;
  background: #f7f2ee;
  text-align: center;
}
#under.reserve .sec04 .h2_txt {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 12px;
}
#under.reserve .sec04 ul {
  display: flex;
  justify-content: space-between;
}
#under.reserve .sec04 ul li {
  overflow: hidden;
  width: 32%;
  border-radius: 3px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);
}
/* ---------------------------------------------------------*/
#under.reserve .sec05 {
  min-width: 1200px;
  padding: 80px 0 0;
  text-align: center;
}
#under.reserve .sec05 .h2_txt {
  margin-bottom: 40px;
  font-weight: 700;
  font-size: 12px;
}
#under.reserve .sec05 .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  padding: 20px;
  background: #eee;
}
#under.reserve .sec05 .flex + .flex {
  margin-top: 20px;
}
#under.reserve .sec05 .flex + figure {
  margin-top: 40px;
}
#under.reserve .sec05 .flex figure {
  width: 360px;
}
#under.reserve .sec05 .flex > div {
  width: 640px;
}
#under.reserve .sec05 .flex > div h3 {
  margin-bottom: 20px;
  font-size: 16px;
}
#under.reserve .sec05 .flex > div .txt {
  line-height: 2.2;
}
#under.reserve .sec05 .flex > div a {
  display: inline-block;
  margin-top: 20px;
  padding: 15px 35px 15px 20px;
  background: url('../img/icon_arrow_left_w.png') no-repeat right 20px center #544c49;
  background-size: auto 6px;
  border-radius: 60px;
  color: #fff;
}
/*
==============================================================

	フォームのパーツ作成

==============================================================
*/
input, button, select, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}
textarea {
  resize: vertical;
}
input[type='checkbox'], input[type='radio'] {
  display: none;
}
input[type='submit'], input[type='button'], label, button, select {
  cursor: pointer;
}
select::-ms-expand {
  display: none;
}
input {
  font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
}
/*	テーブル
------------------------------------------------------------*/
.reserve_table {
  width: 100%;
  margin-top: 40px;
  border-top: 1px solid #e1d5cb;
  border-bottom: 1px solid #e1d5cb;
  line-height: 1.6;
}
.reserve_table tr + tr {
  border-top: 1px dashed #e1d5cb;
}
.reserve_table th {
  width: 300px;
  padding: 20px;
}
.reserve_table th span {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.reserve_table th i {
  font-size: 12px;
  color: #987f33;
}
.reserve_table td {
  padding: 20px;
  background: #fff;
}
.reserve_table td .catitle {
  margin-bottom: 10px;
  font-weight: 700;
}
.reserve_table td .flex_check + .catitle {
  margin-top: 20px;
}
/*	名前
------------------------------------------------------------*/
.flex_name {
  display: flex;
  justify-content: space-between;
}
.flex_name > input {
  width: 49%;
}
/*	チェックボックス
------------------------------------------------------------*/
.reserve_table td .flex_check {
  display: flex;
  flex-wrap: wrap;
}
.reserve_table td .flex_check > span {
  width: 32%;
  margin-right: 2%;
  margin-top: 10px;
}
.reserve_table td .flex_check.w100 > span {
  width: 100%;
}
.reserve_table td .flex_check.w100 > span + span {
  margin-top: 10px;
}
.reserve_table td .flex_check > span:nth-child(-n+3) {
  margin-top: 0;
}
.reserve_table td .flex_check > span:nth-child(3n) {
  margin-right: 0;
}
.reserve_table td .flex_check > span label {
  position: relative;
  display: block;
  border: 1px solid #e1d5cb;
  border-radius: 3px;
  padding: 10px 40px 10px 20px;
  background: #f7f2ee;
  height: 66px;
  display: table;
  width: 100%;
}
.reserve_table td .flex_check > span label .mwform-checkbox-field-text {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 40px 10px 20px;
}
.reserve_table td .flex_check > span label:before {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 15px;
  width: 12px;
  height: 12px;
  border: 1px solid #e1d5cb;
  background: #fff;
}
.reserve_table td .flex_check > span label.active {
  background: #e1d5cb;
}
.reserve_table td .flex_check > span label.active:after {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -9px;
  right: 12px;
  width: 17px;
  height: 17px;
  background: url('https://haab.clinic/wp-content/themes/wp-haab-themes/custom/img/ic_check.webp') no-repeat;
  background-size: contain;
}
.mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 0 !important;
}
/*	予約時間のセレクト
------------------------------------------------------------*/
.flex_select {
  display: flex;
  align-items: center;
}
.flex_select span {
  white-space: nowrap;
  margin: 0 10px;
}
/*	フォームのパーツ作成
------------------------------------------------------------*/
.input_txt {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #e1d5cb;
  border-radius: 3px;
}
.input_txt:focus {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.input_select {
  width: 28%;
  padding: 8px 10px;
  border: 1px solid #e1d5cb;
  border-radius: 3px;
  background: url('../img/icon_arrow_bottom.png') no-repeat right 15px center;
  background-size: 10px auto;
}
.input_select:focus {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.input_select02 {
  width: 28%;
  padding: 8px 10px;
  border: 1px solid #e1d5cb;
  border-radius: 3px;
  background: url('../img/icon_arrow_bottom.png') no-repeat right 15px center;
  background-size: 10px auto;
}
.input_select02{
  margin-bottom:10px;
}
.input_select02:focus {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.input_area {
  width: 100%;
  height: 250px;
  padding: 8px 10px;
  border: 1px solid #e1d5cb;
  border-radius: 3px;
}
.input_area:focus {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.input_send {
  display: block;
  width: 400px;
  margin: 20px auto 40px;
  padding: 20px;
  border-radius: 60px;
  background-color: #fff;
  background-image: url('../img/icon_arrow_left.png');
  background-repeat: no-repeat;
  background-position: right 30px center;
  background-size: auto 6px;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);
  font-weight: 700;
  background:#937028;
    color:#FFF;
  font-size:24px;
    border:none;
}
.mwform-file-delete {
  display: none !important;
}
/*	残り必須項目
------------------------------------------------------------*/
.remaining {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 250px;
  padding: 20px 0;
  background-color: #544c49;
  font-size: 14px;
  color: #fff;
  z-index: 5;
}
.remaining p {
  display: flex;
  color: #FFF !important;
  align-items: center;
  justify-content: center;
}
.remaining .number {
  display: inline-block;
  padding: 0 5px;
  font-size: 24px;
  font-weight: bold;
}
.mw_wp_form_confirm .remaining {
  display: none !important;
}
/*	yahoo!ログイン
------------------------------------------------------------*/
.yahoo {
  display: flex;
  align-items: center;
  margin-top: 20px;
  padding: 10px;
  border: 1px solid #e1d5cb;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.05);
}
.yahoo p {
  margin-left: 30px;
  line-height: 1.6;
  font-size: 12px;
}
/*	エラー表示
------------------------------------------------------------*/
.flex_error {
  display: flex;
  justify-content: space-between;
}
.flex_error span {
  padding-top: 5px;
  line-height: 1.6;
  width: 49%;
}
p.error span {
  padding-top: 5px;
  line-height: 1.6;
}
/* ==================================================== SP */
@media (max-width: 767px) {
  #under.reserve .sec00 {
    width: 640px;
    min-width: auto;
    height: 750px;
    background: none;
  }
  #under.reserve .sec00 figure {
    display: block;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec01 {
    width: 640px;
    min-width: auto;
    padding: 40px;
  }
  #under.reserve .sec01 p {
    text-align: left;
    font-size: 22px;
  }
  #under.reserve .sec01 a {
    width: 100%;
    margin: 30px auto 0;
    padding: 30px 0;
    background-size: auto 16px;
    font-size: 22px;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec02 {
    width: 640px;
    min-width: auto;
    padding: 80px 20px;
  }
  #under.reserve .sec02 .h2_txt {
    font-size: 16px;
  }
  #under.reserve .sec02 .box {
    padding: 30px;
  }
  #under.reserve .sec02 .box .txt {
    line-height: 2.2;
    font-size: 20px;
  }
  #under.reserve .sec02 .box ul {
    line-height: 1.8;
  }
  #under.reserve .sec02 .box ul li {
    font-size: 22px;
  }
  #under.reserve .sec02 .box ul li + li {
    margin-top: 15px;
  }
  #under.reserve .sec02 .cta {
    display: block;
    margin-top: 30px;
  }
  #under.reserve .sec02 .cta li + li {
    margin-top: 20px;
  }
  #under.reserve .sec02 .cta a {
    margin: 0 auto;
    width: 560px;
    height: 80px;
    background-size: 40px auto;
    font-size: 20px;
  }
  #under.reserve .sec02 .cta a.tel {
    pointer-events: auto;
    letter-spacing: 2px;
    font-size: 26px;
  }
  #under.reserve .sec02 .lineyoyaku {
    width: 560px;
    padding: 30px 0;
    background-size: 40px auto;
    font-size: 22px;
  }
  /* ---------------------------------------------------------*/
  #under.reserve.recruit .sec02 + .sec02 {
    padding: 0 40px 80px;
  }
  #under.reserve .sec02 .title {
    padding: 0 20px;
    text-align: left;
    font-size: 20px;
  }
  #under.reserve .sec02 .outline {
    width: 100%;
    font-size: 20px;
  }
  #under.reserve .sec02 .outline ul:before {
    left: 75px;
  }
  #under.reserve .sec02 .outline ul li {
    align-items: flex-start;
  }
  #under.reserve .sec02 .outline ul li + li {
    margin-top: 30px;
  }
  #under.reserve .sec02 .outline ul li span {
    width: 150px;
    padding: 15px 0;
    margin-right: 20px;
    line-height: 1.0;
  }
  #under.reserve .sec02 .outline ul li i {
    padding-top: 8px;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec02 .recruit_table, #under.reserve .sec02 .recruit_table tbody, #under.reserve .sec02 .recruit_table tr, #under.reserve .sec02 .recruit_table th, #under.reserve .sec02 .recruit_table td {
    display: block;
  }
  #under.reserve .sec02 .recruit_table {
    width: 100%;
    text-align: left;
    font-size: 20px;
    line-height: 2.0;
  }
  #under.reserve .sec02 .recruit_table tr + tr {
    border-top: none;
  }
  #under.reserve .sec02 .recruit_table th {
    width: 100%;
    line-height: 1.0;
  }
  #under.reserve .sec02 .recruit_table td {
    padding: 20px 0 30px;
  }
  #under.reserve .sec02 .recruit_table tr:last-child td {
    padding-bottom: 0;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec03 {
    width: 640px;
    min-width: auto;
    padding: 80px 0;
    background: #f7f2ee;
    text-align: center;
  }
  #under.reserve .sec03 .h2_txt {
    font-size: 16px;
  }
  #under.reserve .sec03 .box .note {
    padding: 0 40px;
    font-size: 20px;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec04 {
    width: 640px;
    min-width: auto;
    padding: 80px 20px;
  }
  #under.reserve .sec04 .h2_txt {
    font-size: 16px;
  }
  #under.reserve .sec04 ul {
    flex-wrap: wrap;
  }
  #under.reserve .sec04 ul li {
    width: 49%;
    margin-top: 20px;
  }
  #under.reserve .sec04 ul li:nth-child(-n+2) {
    margin-top: 0;
  }
  /* ---------------------------------------------------------*/
  #under.reserve .sec05 {
    width: 640px;
    min-width: auto;
    padding: 80px 0 0;
  }
  #under.reserve .sec05 .h2_txt {
    font-size: 16px;
  }
  #under.reserve .sec05 .flex {
    align-items: flex-start;
    padding: 30px 20px;
  }
  #under.reserve .sec05 .flex + .flex {
    margin-top: 20px;
  }
  #under.reserve .sec05 .flex + figure {
    margin-top: 40px;
  }
  #under.reserve .sec05 .flex figure {
    width: 300px;
  }
  #under.reserve .sec05 .flex > div {
    width: 280px;
  }
  #under.reserve .sec05 .flex > div h3 {
    margin-bottom: 20px;
    font-size: 22px;
  }
  #under.reserve .sec05 .flex > div .txt {
    font-size: 18px;
    line-height: 1.8;
  }
  #under.reserve .sec05 .flex > div a {
    display: block;
    margin-top: 25px;
    padding: 15px 35px 15px 30px;
    background-size: auto 12px;
    font-size: 20px;
  }
  /*
	==============================================================

		フォームのパーツ作成

	==============================================================
	*/
  /*	テーブル
	------------------------------------------------------------*/
  .reserve_table, .reserve_table tr, .reserve_table tbody, .reserve_table th, .reserve_table td {
    display: block;
  }
  .reserve_table {
    border-top: 2px solid #e1d5cb;
    margin-top: 40px;
  }
  .reserve_table tr + tr {
    border-top: 2px solid #e1d5cb;
  }
  .reserve_table th {
    width: 100%;
    padding: 10px 10px;
    font-size: 14px;
    background:#e1d5cb;
  }
  .reserve_table th i {
    font-size: 12px;
  }
  .reserve_table td {
    font-size: 12px;
    padding:10px 0;
  }
  /*	チェックボックス
	------------------------------------------------------------*/
  .reserve_table td .flex_check {
    display: block;
  }
  .reserve_table td .flex_check > span {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-top: 0;
  }
  .reserve_table td .flex_check > span + span {
    margin-top: 10px !important;
  }
  .reserve_table td .flex_check > span label {
    padding: 20px 40px 20px 20px;
    height: 80px;
  }
  .reserve_table td .flex_check > span label:before {
    margin-top: -9px;
    right: 25px;
    width: 18px;
    height: 18px;
  }
  .reserve_table td .flex_check > span label.active {
    background: #e1d5cb;
  }
  .reserve_table td .flex_check > span label.active:after {
    margin-top: -10px;
    right: 20px;
    width: 20px;
    height: 20px;
  }
  /*	予約時間のセレクト
	------------------------------------------------------------*/
  .flex_select {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
  .flex_select .input_select {
    display: block;
    width: 25%;
    background: none;
    text-align: center;
    margin-bottom:10px;
  }
  .flex_select span {
    display: block;
    white-space: nowrap;
    margin: 0;
    width: 25%;
    padding:10px;
    text-align: left;
    font-size: 14px;
  }
  /*	フォームのパーツ作成
	------------------------------------------------------------*/
  .input_txt {
    padding: 10px;
  }
  .input_select {
    width: 100%;
    padding: 10px 10px;
    background: url('../img/icon_arrow_bottom.png') no-repeat right 20px center;
    background-size: 18px auto;
  }
  .reserve_table td .flex_check > span label .mwform-checkbox-field-text{
    padding:10px;
  }
  .reserve_table td .flex_check > span label{
    height:auto;
  }
  .spnone{
    display:none;
  }
  .input_area {
    height: 300px;
    padding: 15px;
  }
  .input_send {
    width: 100%;
    margin: 30px auto 20px;
    padding: 10px 0;
    background-position: right 35px center;
    background-size: auto 20px;
    font-size: 16px;
    background:#937028;
    color:#FFF;
    border:none;
  }
  /*	残り必須項目
	------------------------------------------------------------*/
  .remaining {
    bottom: 0;
    width: 640px;
    height: 70px;
    padding: 0;
    font-size: 22px;
  }
  .remaining p {
    height: 100%;
  }
  .remaining .number {
    font-size: 26px;
  }
  /*	残り必須項目
	------------------------------------------------------------*/
  .yahoo {
    display: block;
    width: 100%;
    margin: 30px auto 0;
    padding: 10px;
  }
  .yahoo p {
    margin-top: 10px;
    margin-left: 0;
    font-size: 14px;
  }
}
.form_content2 table {
  width: 100%;
  margin-bottom: 60px;
  table-layout: fixed;
  max-width: 815px;
  margin: 0 auto 60px;
}
.form_content2 table tr {}
.form_content2 table th span {
  font-size: 18px;
  color: #fff;
  padding: 5px 0;
  color: #3c3c3c;
  font-weight: 700;
}
.form_content2 table th > div {
  display: flex;
  align-items: center;
}
.form_content2 table th > div span:last-of-type {
  margin-left: auto;
}
.form_content2 table th > div span.hissu {
  color: #e67c7d;
}
.form_content2 table th > div span.hissu2 {
  color: #fff;
  background-color: #ff3939;
  display: inline-block;
  font-size: 12px;
  width: 45px;
  height: 22px;
  padding: 4px 0 0;
  margin-left: 8px;
  border-radius: 3px;
  text-align: center;
}
.form_content2 table th > div span.ninni2 {
  background-color: #313131;
  display: inline-block;
  font-size: 12px;
  width: 45px;
  height: 22px;
  padding: 4px 0 0;
  margin-left: 8px;
  border-radius: 3px;
  text-align: center;
  color: #fff;
}
.form_content2 table th {
  text-align: left;
  width: 100%;
  padding: 20px 30px;
  color: #2b2b2b;
  font-size: 18px;
  font-weight: 700;
  display: block;
}
.form_content2 table th small {
  display: inline-block;
  margin: 15px 0 0;
  font-weight: normal;
  font-size: 14px;
}
.form_content2 table td {
  padding: 0 30px 30px;
  width: 100%;
  display: block;
}
.form_content2 a {
  color: #3a9693;
  text-decoration: underline;
  font-weight: bold;
  transition: all 0.2s ease;
}
.form_content2 a:hover {
  color: #aea73c;
}
.form_content2 input, .form_content2 .form_content select, .form_content2 .form_content option, .form_content2 .form_content textarea {
  font-size: 16px;
  font-family: source-han-sans-japanese, 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}
.form_content2 input:focus, .form_content2 .form_content option:focus, .form_content2 .form_content textarea:focus, .form_content2 .form_content select:focus {
  outline: solid 3px #e67c7d;
}
.form_content2 a.dl_pdf {
  color: #e67c7d;
}
.form_content2 .form_input01, .form_content2 .form_input02, .form_content2 .form_input03, .form_content2 .form_input04, .form_content2 .form_input05, .form_content2 .form_input06 {
  padding: 16px;
  border: 1px solid #989898;
  border-radius: 5px;
  height: 48px;
  padding: 0 20px;
}
.form_content2 .form_input01 {
  width: 200px;
}
.form_content2 .form_input02 {
  width: 200px;
  margin-left: 18px;
}
.form_content2 .form_input04 {
  width: 100%;
}
.form_content2 input, .form_content select, .form_content option, .form_content textarea {
  font-size: 16px;
  font-family: source-han-sans-japanese, 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}
.form_content2 .mwform-checkbox-field input, .mwform-radio-field input {
  margin-right: 5px;
}
.form_content2 .mwform-checkbox-field input, .mwform-radio-field input[type="radio"] {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #000;
}
.form_content2 .mwform-checkbox-field input, .mwform-radio-field input[type="radio"]:checked {
  outline: none;
  background-color: #000;
}
.form_content2 .form_time_start, .form_time_end {
  width: 120px;
  margin: 0 18px;
  border: 1px solid #989898;
  font-size: 16px;
  height: 48px;
  padding: 0 20px;
  border-radius: 5px;
}
.form_content2 .form_time_start {
  margin-left: 0;
}
.form_content2 .contact_visit {
  display: flex;
  flex-wrap: wrap;
  margin: -15px 0 0 -15px;
}
.form_content2 .contact_visit > span {
  margin: 15px 15px 0 15px;
  width: 300px;
  line-height: 1.5;
  display: block;
  position: relative;
  z-index: 1;
  border: 1px solid #989898;
  border-radius: 5px;
  font-size: 14px;
}
.form_content2 .contact_visit > span label span.mwform-checkbox-field-text {
  display: flex;
  justify-content: space-between;
}
.form_content2 .contact_visit > span label span {
  display: flex;
  justify-content: space-between;
  padding: 11px 20px;
  padding-right: 40px;
}
.form_content2 .contact_visit > span label input[type="checkbox"]:checked + span.mwform-checkbox-field-text {
  background-color: #313131;
  color: #fff;
  border: none;
}
.form_content2 .contact_visit > span label input[type=checkbox] + span.mwform-checkbox-field-text:before {
  content: "";
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background-color: #fff;
  right: 15px;
  top: 50%;
  position: absolute;
  z-index: 5;
  border: 1px solid #989898;
}
.form_content2 .contact_visit > span label input[type="checkbox"]:checked + span.mwform-checkbox-field-text::before {
  background-color: #fff;
}
.form_content2 .contact_visit > span label input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after {
  content: "";
  display: inline-block;
  border: solid 2px #313131;
  width: 10px;
  height: 5px;
  border-width: 0 0 2px 2px;
  position: absolute;
  z-index: 5;
  right: 18px;
  top: 50%;
  margin-top: -6px;
  transform: rotate(-45deg);
}
.form_content2 .contact_visit > span input[type=radio] {
  display: none;
}
.form_content2 .contact_visit > span input[type=radio] + span.mwform-radio-field-text:before {
  content: "";
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background-color: #fff;
  right: 15px;
  top: 50%;
  position: absolute;
  z-index: 5;
  border: 1px solid #313131;
}
.form_content2 .contact_visit > span input[type=radio]:checked + span.mwform-radio-field-text:after {
  content: "";
  display: inline-block;
  border: solid 2px #313131;
  width: 10px;
  height: 5px;
  border-width: 0 0 2px 2px;
  position: absolute;
  z-index: 5;
  right: 18px;
  top: 50%;
  margin-top: -6px;
  transform: rotate(-45deg);
}
.form_content2 .contact_visit > span input[type=radio]:checked + span.mwform-radio-field-text {
  background-color: #313131;
  color: #fff;
  border: none;
}
.form_content2 .contact_treatment dd {
  display: flex;
  flex-wrap: wrap;
  margin: -15px 0 0 -15px;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field.horizontal-item {
  width: 245px;
  margin: 15px 15px 0 15px !important;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label {
  line-height: 1.5;
  display: block;
  width: 100%;
  position: relative;
  z-index: 1;
  border: 1px solid #989898;
  border-radius: 5px;
  font-size: 14px;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label:hover {
  background-color: #989898;
  color: #ffffff;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"] {
  display: none;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"] + span.mwform-checkbox-field-text::before {
  content: "";
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background-color: #ffffff;
  right: 15px;
  top: 50%;
  position: absolute;
  z-index: 5;
  border: 1px solid #313131;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type=checkbox]:checked + span.mwform-checkbox-field-text {
  background-color: #313131;
  color: #fff;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"]:checked + span.mwform-checkbox-field-text::before {
  background-color: #fff;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after {
  content: "";
  display: inline-block;
  border: solid 2px #313131;
  width: 10px;
  height: 5px;
  border-width: 0 0 2px 2px;
  position: absolute;
  z-index: 5;
  right: 18px;
  top: 50%;
  margin-top: -6px;
  transform: rotate(-45deg);
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label span.mwform-checkbox-field-text {
  display: flex;
  justify-content: space-between;
  padding: 10px 20px;
  padding-right: 40px;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="radio"] {
  display: none;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="radio"] + span.mwform-radio-field-text::before {
  content: "";
  width: 18px;
  height: 18px;
  margin-top: -9px;
  background-color: #ffffff;
  right: 15px;
  top: 50%;
  position: absolute;
  z-index: 5;
  border: 1px solid #313131;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type=radio]:checked + span.mwform-radio-field-text {
  background-color: #313131;
  color: #fff;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="radio"]:checked + span.mwform-radio-field-text::before {
  background-color: #fff;
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="radio"]:checked + span.mwform-radio-field-text::after {
  content: "";
  display: inline-block;
  border: solid 2px #313131;
  width: 10px;
  height: 5px;
  border-width: 0 0 2px 2px;
  position: absolute;
  z-index: 5;
  right: 18px;
  top: 50%;
  margin-top: -6px;
  transform: rotate(-45deg);
}
.form_content2 .contact_treatment dd .mwform-checkbox-field label span.mwform-radio-field-text {
  display: flex;
  justify-content: space-between;
  padding: 10px 20px;
  padding-right: 40px;
}
.form_content2 .mw_wp_form .horizontal-item + .horizontal-item {
  margin-left: 10px;
}
.form_content2 .form_txt {
  width: 100%;
  height: 220px;
  padding: 15px;
  border: 1px solid #989898;
  border-radius: 5px;
  font-size: 16px;
}
.form_content2 .submit_btn {
  text-align: center;
}
.form_content2 .submit_send {
  width: 460px;
  height: 70px;
  margin: 0;
  border: none;
  color: #fff;
  vertical-align: middle;
  font-weight: 700;
  background: url(../img/btn_recruit_bg01_on.png) no-repeat center right 40px #313131;
  border: solid 2px #313131;
  font-size: 18px;
  transition: all .2s ease;
}
.form_content2 .submit_send:hover {
  background-color: #ffffff;
  color: #313131;
  cursor: pointer;
  background-image: url("../img/btn_recruit_bg01.png");
}
.privacy_link_box01 {
  margin-top: 50px;
  display: flex;
  justify-content: center;
}
.privacy_link01 {
  text-decoration: underline !important;
  color: #777;
  font-size: 16px;
  line-height: 2;
}
.form_content2 .form_date {
  border: 1px solid #989898;
  padding: 12px 20px;
  border-radius: 5px;
}
.form_content2 .form_date:focus {
  outline: none;
}
@media screen and (max-width: 767px) {
  .mainv_text04 {
    font-size: 38px;
    line-height: 1.5;
  }
  .mainv_text05 {
    font-size: 30px;
  }
  .reserve_note .inner ul li {
    font-size: 20px;
  }
  .reserve_entry .stitle {
    text-align: center;
    font-size: 20px;
    line-height: 1.8;
  }
  .reserve_entry .inner {
    padding: 0 40px;
  }
  .contact_notice_box01 {
    font-size: 24px;
    text-align: left;
  }
  .privacy_link01, .form_content2 .form_content table th span, .form_content2 .form_content input, .form_content2 .form_content select, .form_content2 .form_content option, .form_content2 .form_content textarea, .form_content2 .form_content table th, .form_content2 .form_content table td {
    font-size: 24px;
  }
  .form_content2 .form_content table th, .form_content2 .form_content table td {
    display: block;
    width: 100%;
  }
  .form_content2 .form_content table th {
    border-bottom: dotted 1px #876732;
  }
  .form_content2 .form_content table th small {
    font-size: 20px;
    margin: 0 0 0 15px;
  }
  .form_content2 table th span, .form_content2 input, .form_content2 select, .form_content2 option, .form_content2 textarea, .form_content2 table th, .form_content2 table td {
    font-size: 26px;
  }
  .form_content2 table th, .form_content2 table td {
    display: block;
    width: 100%;
  }
  .form_content2 table td {
    padding: 0 0 30px;
  }
  .form_content2 table th {
    border-bottom: splid 1px #ddd;
    padding: 30px 0;
  }
  .form_content2 table th > div span.hissu2 {
    font-size: 18px;
    width: 58px;
    height: 30px;
    padding: 6px 0 0;
  }
  .form_content2 table th > div span.ninni2 {
    font-size: 18px;
    width: 58px;
    height: 30px;
    padding: 6px 0 0;
  }
  .form_content2 table th small {
    font-size: 20px;
    margin: 0 0 0 15px;
  }
  .form_content2 .form_input01, .form_content2 .form_input02, .form_content2 .form_input03, .form_content2 .form_input04, .form_content2 .form_input05, .form_content2 .form_input06 {
    height: 68px;
  }
  .form_content2 .form_date {
    width: 100%;
    margin-bottom: 15px;
    height: 68px;
    border-radius: 5px;
  }
  .form_content2 .form_time_start, .form_content2 .form_time_end {
    margin: 0 18px;
    height: 68px;
  }
  .form_content2 .form_time_start {
    margin-left: 0;
  }
  .form_content2 .form_input03 {
    width: 29% !important;
  }
  .remaining {
    padding: 20px 0;
    font-size: 22px;
    top: auto;
    bottom: 99px;
    left: 0;
    right: 0;
    text-align: center;
  }
  .page-reserve .remaining {
    bottom: 0;
  }
  .contact_treatment {
    margin-right: 0;
  }
  .form_content2 .contact_treatment dt {
    font-size: 24px;
  }
  .form_content2 .contact_treatment dd {
    margin: -20px 0 0 -20px;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field.horizontal-item {
    width: 100%;
    margin: 20px 0 0 20px;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field label {
    display: block;
    align-items: center;
    font-size: 20px;
    border-radius: 5px;
    min-height: 68px;
    width: 100%;
    position: relative;
  }
  .form_content2 .contact_visit > span label span.mwform-checkbox-field-text {
    padding: 19px 20px;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field label span.mwform-checkbox-field-text {
    padding: 20px 20px;
    width: 100%;
    display: block;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"] {
    display: block;
    position: absolute;
    background: none;
    border: none;
    width: 100%;
    height: 60px;
  }
  .form_content2 .contact_visit > span input[type=radio] {
    display: block;
    position: absolute;
    background: none;
    border: none;
    width: 100%;
    height: 60px;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"] + span.mwform-checkbox-field-text::before {
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }
  .form_content2 .contact_treatment dd .mwform-checkbox-field label input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after {
    width: 15px;
    height: 7px;
  }
  .form_content2 .contact_visit > span input[type=radio] + span.mwform-radio-field-text:before {
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }
  .form_content2 .contact_visit {
    margin: -20px 0 0 -20px;
  }
  .form_content2 .contact_visit > span {
    height: 100%;
    width: 100%;
    display: block;
    align-items: center;
    font-size: 20px;
  }
  .form_content2 .contact_visit > span label span {
    width: 100%;
    padding: 20px;
  }
  .form_content2 .contact_visit .mwform-checkbox-field.horizontal-item {
    margin: 20px 0 0 20px !important;
    width: 100%;
    height: 68px;
  }
  .form_content2 option {
    font-size: 16px;
  }
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 15px !important;
  }
  .contact_visit > span input[type=radio] + span.mwform-radio-field-text:before {
    width: 24px;
    height: 24px;
    margin-top: -12px;
  }
}
.ui-widget-header {
  background: none !important;
  border: none !important;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
  border: none !important;
}
/* SNS ICON */
.link_tw {
  background: url(https://dream-by-haab.com/new/wp-content/themes/hdbc/img/ico_tw.png) no-repeat left center;
  padding-left: 1.5em;
  background-size: contain;
}
.link_insta {
  background: url(https://dream-by-haab.com/new/wp-content/themes/hdbc/img/ico_insta.png) no-repeat left center;
  padding-left: 1.5em;
  background-size: contain;
}
.link_tt {
  background: url(https://dream-by-haab.com/new/wp-content/themes/hdbc/img/ico_tt.png) no-repeat left center;
  padding-left: 1.5em;
  background-size: contain;
}
.link_yt {
  background: url(https://dream-by-haab.com/new/wp-content/themes/hdbc/img/ico_yt.png) no-repeat left center;
  padding-left: 1.5em;
  background-size: contain;
}
.sns_link01_wrapper {
  display: flex;
}
.sns_link01_wrapper > * + * {
  margin-left: 20px;
}
.sns_link01 img {
  width: 50px;
}
/*custom*/
.reserve_table th em, .reserve_table th i {
  text-decoration: none;
  font-style: normal;
}
.mwform-radio-field label {
  padding: 10px;
  margin: 10px;
  border: 1px solid #e1d5cb;
  background: #f7f2ee;
  display: inline-block;
}
.flex_name > .cp_annai_wrapper {
  display: flex;
  flex-wrap: wrap;
}
.mwform-radio-field label{
  margin:10px 10px 10px 0;
}
.mw_wp_form .horizontal-item + .horizontal-item{
  margin-left:0 !important;
}
/**/
.logo__area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.logo__area img {
  width: 200px;
  height: auto;
  display: block;
  margin: 20px;
}
/***

ドクター紹介
========================

***/
.dctr__wrapper {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}
.dctr__block {
  padding: 20px;
  width: calc(50% - 15px);
  margin-bottom: 30px;
  outline: 1px solid var(--haab-sub1);
  display: grid;
  position: relative;
  gap: 10px;
  grid-template: 100px auto/100px 1fr;
}
.dctr__photo {
  width: 100%;
  grid-area: 1/1/2/2;
}
.dctr__name {
  grid-area: 1/2/2/3;
}
.dctr__prof {
  grid-area: 2/1/3/3;
}
@media screen and (max-width: 767.98px) {
  .dctr__block {
    width: 100%;
  }
}
.thx_area {
  margin: 40px auto;
  max-width: 400px;
  padding: 10px;
}
.thx_main {
  background: #EEE;
  font-weight: bold;
  text-align: center;
  font-size: 20px;
  padding: 20px;
}
.thx_message {
  margin: 20px auto;
  border-top: 1px dotted #EEE;
  border-bottom: 1px dotted #EEE;
  padding: 20px;
  font-size: 14px;
}
@media screen and (max-width: 767.98px) {
  .anc ul, .cs__full-wide {
    margin: 0 auto !important;
    padding: 0 !important;
  }
  .table_c td, .wp-block-flexible-table-block-table.table_c td, .table_c th, .wp-block-flexible-table-block-table.table_c th {
    height: auto;
  }
  .table_c tr th, .table_c tr td, .wp-block-flexible-table-block-table.table_c tr th, .wp-block-flexible-table-block-table.table_c tr td, .table_b tr th, .table_b tr td {
    max-height: none;
  }
}
.clinic_summary__message h3 {
  color: #FFF !important;
  border:none;
  margin:0;
}
.wp-block-table figcaption, table + figcaption {
  width: 100%;
  margin-top: 12px !important;
  text-align: right !important;
}
/*
html[lang="ja"]{
  height:auto !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
}
*/
.sec-anc{
  position: relative;
  top:0px;
}

.slick-prev:before, .slick-next:before{
  color:#d6acac !important;
  font-size:40px !important;
}
.slick-prev{
  left:20px !important;
  z-index: 999;
}
.slick-next{
  right :40px !important;
  z-index: 999;
}
.slick-dots li button:before{
  width:40px;
}
.top_treatment_slider{
  max-width: 100vw !important;
}

  .top_treatment_slider .slides figure{
    width : 320px !important;
  }


  .slick-initialized .slick-slide {
    margin: 40px 20px;
  }
.slick-prev, .slick-next{
  width:40px !important;
  height:40px !important;
}
/*バナー*/
.top_treatment_slider.top_treatment_slider--banner .slides figure{
    width : 400px !important;
  }
  @media screen and (max-width: 768px) {

    .slick-initialized .slick-slide {
      margin: 20px 10px;
      }
    .top_treatment_slider .slides figure{
      width : 200px !important;
    }
    /*バナー*/
.top_treatment_slider.top_treatment_slider--banner .slides figure{
    width : 320px !important;
  }
  }

 @media screen and (max-width: 880px) {
   .site-header--pc .contact{
     display: none;
   }
}

.wp-block-buttons>.wp-block-buttons{
  justify-content:flex-start !important;
}

.table_a table{
  display: block;
  margin:0 auto;
}
.table_a td{
  vertical-align: middle !important;
}
.site-footer__to_top{
  position: fixed;
  z-index: 9999;
  right: 10px;
  bottom: 120px;
  /*right:10px;
  bottom:-11px;*/
}
.bnr__area-01{
  max-width:calc(800px + 0.5em);
  margin:0.5em auto;
  justify-content: flex-start !important;
}
.bnr__area-01 .btn{
  width: calc(50% - 0.25em);
}
@media screen and (max-width: 767px) {
  .bnr__area-01{
    width:100%;
    display: block !important;
  }
  .bnr__area-01 .btn{
    width:100%;
    margin:.5rem auto;
    display: block !important;
  }
  
}

.point{
  margin-top:20px;
}

.teatment_progress>div>div>div.wp-block-haab-div{
  height:auto !important;
}
.slick-track{
}
@media screen and (min-width: 564px){
  .teatment_progress .slick-track{
    /*
    width:auto !important;
    display:flex;
    */
  }
}
.teatment_progress figure{
  width:100% !important; 
}

@media screen and (max-width:992px){
  .clinic_map__table tr td:first-child{
  display: none;
  }
  .clinic_map__table tr td:nth-child(2){
    width:80px !important;
  }
  /*
  .clinic_map__table tr td{
  display: block;
  }
  .clinic_map__table tr td:nth-child(2){
    padding:10px !important;
    background:var(--haab-bg2);
    margin:10px 0;
  }
  
  .clinic_map__table tr td:nth-child(3){
    padding:0 !important;
    }
  */
}

.teatment_progress.back .slick-list{
  background:#EEE;
}
h1{
  line-height:1.45;
}
.menu-bar__left a img{
  max-height:42px;
  width:auto;
}
@media screen and (max-width:678px){
  .menu-bar__left a img{
  max-height:40px;
  width:auto;
}
  .breadcrumbs.container{
    padding:0 !important;
  }
  .breadcrumbs__inner{
    white-space: inherit !important;
  }
  .breadcrumbs__inner > div{
    display: flex;
    flex-wrap: wrap;
  }
  .breadcrumbs__inner > div > span{
    margin:0 .5rem;
  }
}
.breadcrumbs{
  margin:40px 0;
}

.top_treatment_slider.noneSlider>figure{
  flex-wrap: wrap;
  max-width:var(--haab-max-width);
  margin:0 auto;
  padding:1rem;
  justify-content: space-between;
  gap:0 !important;
}
.noneSlider .wp-block-gallery.has-nested-images figure.wp-block-image{
  width:calc(33.3% - 1rem) !important;
  max-width:calc(33.3% - 1rem) !important;
  margin:.5rem !important;
  padding:0 !important;
}
.noneSlider.top_treatment_slider>figure:after{
  content:"";
  max-width:calc(33.3% - 1rem) !important;
  width:calc(33.3% - 1rem) !important;
  height:0;
  display: block;
}
@media screen and (max-width:991px){
  .noneSlider .wp-block-gallery.has-nested-images figure.wp-block-image{
    width:calc(50% - 1rem) !important;
  max-width:calc(50% - 1rem) !important;
  }
  .noneSlider .noneSlider.top_treatment_slider>figure:after{
    width:calc(50% - 1rem) !important;
  }
}


  .modal_button{
    padding:1rem;
    margin:2rem;
    background:#333;
    color:#FFF;
    transition:0.3s;
    cursor:pointer;
  }
  .modal_button:hover{
    opacity: 0.8;
  }
  .modal-01__wrapper{
    position: fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    transition:0.2s;
    opacity:0;
    visibility: hidden;
    
  }
  .modal-01__wrapper.js__modal--on{
    opacity:1;
    visibility: visible;
  }
  .modal-01__cover{
    position: absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:rgb(255 198 198 / 70%);
    backdrop-filter:blur(5px);
  }
.modal-01__in{
  padding:180px 0 120px;
  position: relative;
  height:100%;
  width:100%;
  
}
.modal-01__in-01{
  position: relative;
  width:100%;
  height:100%;
}
  .modal-01__inner{
    width:auto;
    max-height:100%;
    position: absolute;
    top:0;
    left:0;
    bottom:0;
    right:0;
    margin:auto;
    
  }
.modal-01__inner img{
  width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}
  .modal-01__close{
    padding:10px;
    background:#FFF;
    color:#d14b4b;
    position: absolute;
    right:5px;
    top:-49px;
    border: 4px solid #d14b4b;
    width:40px;
    height:40px;
    display: grid;
    place-content:center;
    border-radius:100px;
    font-size: 20.2px;
    font-weight: bold;
    text-align: center;
    cursor:pointer;
  }
.modal-01__close{
  opacity: 0.8;
}
  
  .site-body.fixed {
    position: fixed;
    overflow: hidden;
    top:0 !important;
    left:0 !important;
    right:0 !important;
  }
.modal-01__block{
  height:100%;
  width:fit-content;
    max-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}

img{
  width:100%;
  height:auto;
  max-width:70rem;
}