@charset "utf-8";

/* a[href^="tel:"] {
  pointer-events: none;
} */

.br::before {
  content: "\A" ;
  white-space: pre ;
}

.header_pc_menu,
.header_pc_yoyaku {
  display: none !important;
}

body {
  color: #370a1c;
  /* background: #fff7df; */
  font-size: 14px;
  background: #fff url("../image/bg.png") repeat-y;
  background-size: contain;
  font-family: "メイリオ","Meiryo","ＭＳ Ｐゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",sans-serif;
}
body.index {
  background: #fff;
}
.mincho {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", 游明朝, YuMincho, HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.wrapper {
  position: relative;
  margin: 50px 0;
}

h2 {
  margin-bottom: 15px;
  color: #e03873;
  text-align: center;
  font-weight: normal;
  line-height: 120%;
  letter-spacing: 0.05em;
}
h2 img {
  width: auto;
  max-width: 80%;
  max-height: 20px;
}
h2 img.two {
  max-width: 90%;
  max-height: 42px;
}
h4 {
  margin-bottom: 3px;
  color: #e03873;
  font-size: 140%;
  text-align: center;
  font-weight: normal;
  letter-spacing: 0.08em;
}


.header {
  width: 100%;
  position: fixed;
  top: 0;
  background: #fff;
  z-index: 400;
  box-shadow: 0 3px 8px rgba(208, 186, 194, 0.7);
}
.header_inner {
  height: 50px;
  margin: 0 auto;
  padding: 1% 2%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #ffc6c6;
}


/* .header {
  width: 100%;
  height: 50px;
  padding: 1% 2%;
  display: flex;
  position: fixed;
  top: 0;
  justify-content: space-between;
  align-items: center;
  background: #ffc6c6;
  z-index: 400;
} */
.header_left {}
.header_left a {
  display: block;
  color: #370a1c;
  text-decoration: none;
}
.header_right {
  width: 40%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.header_sub {
  font-size: 70%;
}
.header_ttl h1 {
  /* font-size: 100%;
  font-weight: bold;
  color: #e03873; */
}
.header_ttl h1 img {
  display: block;
  width: auto;
  max-height: 20px;
  margin-left: -4px;
}
.header_reserveBtn {
  width: 100%;
  margin-right: 10%;
}
.header_reserveBtn a {
  display: block;
  line-height: 24px;
  background: #e03773;
  color: #fff;
  text-decoration: none;
  padding: 5px 8px 4px 8px;
  border-radius: 5px;
  font-size: 110%;
  text-align: center;
}
.header_menuBtn {
  height: 24px;
}
.footerMenu {
  position: fixed;
  bottom: 0;
  width: 100%;
  height: auto;
  padding: 6px 1%;
  background: #fff;
  z-index: 1;
}
.footerMenu ul {
  display: flex;
  list-style-type: none;
}
.footerMenuLinkTel {
  width: 50%;
  margin-right: 3%;
}
.footerMenuLinkWeb {
  width: 50%;
}
.footerMenuLinkTelBtn,
.footerMenuLinkWebBtn {
  position: relative;
  width: 100%;
  padding: 10px 0;
  display: block;
  text-align: center;
  color: #fff;
  border-radius: 50px;
  font-size: 130%;
  text-decoration: none;
}
.footerMenuLinkTelBtn {
  background: #68b37d;
  /* box-shadow: 0 3px 0 #1b5f2e; */
}
.footerMenuLinkWebBtn {
  background: #e03873;
  /* box-shadow: 0 3px 0 #730e45; */
}
.footerMenuLinkTelBtn::after,
.footerMenuLinkWebBtn::after {
  font-family: "Font Awesome 5 Solid";
  content: '\f0da';
  display: none;
}
.footerMenuLinkTelBtn svg,
.footerMenuLinkWebBtn svg {
  pointer-events: none;
  width: 20px !important;
  height: 20px;
  position: absolute;
  right: 5px;
  top: 28%;
  cursor: pointer;
}
.footerMenuLinkTelBtn svg path,
.footerMenuLinkWebBtn svg path {
  fill: #fff;
}

.footer {
  width: 92%;
  margin: 25px auto;
  padding: 20px 0;
  text-align: center;
  border-top: 1px solid #ccc;
}
.footer_copy {
  font-size: 80%;
}
.footer_link {
  display: none;
  margin-bottom: 20px;
  /* font-size: 90%; */
}
.footer_link ul {
  width: 70%;
  margin: 0 auto;
  list-style-type: none;
}
.footer_link ul li {
  margin-bottom: 10px;
}
.footer_link ul li a {}

.topimages {
  width: 100%;
  margin: 0 auto;;
}
.topimages_content {}

.topimageArea {
  position: relative;
  height: auto;
  opacity: 0;
  overflow: hidden;
}
.topimageArea:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.topimageArea_01,
.topimageArea_02,
.topimageArea_03,
.topimageArea_04,
.topimageArea_05 {
  position: absolute;
}
.topimageArea_01 {
  width: 60%;
  top: 9px;
  left: 3px;
  z-index: 1;
}
.topimageArea_02 {
  width: 45%;
  top: 44%;
  right: 0;
  z-index: 1;
}
.topimageArea_03 {
  width: 46%;
  top: 22px;
  right: 0;
}
.topimageArea_04 {
  width: 53%;
  top: 65%;
  left: 0;
}
.topimageArea_05 {
  width: 65%;
  top: 32%;
  left: 18%;
  z-index: 1;
}

.content {
  width: 92%;
  margin: 30px auto;
}
.special_notice {
  margin: 35px 0;
}
.special_notice_content {
  width: 100%;
  margin: 0 auto;
  padding: 15px;
  background: #fdf5f5;
}
.special_notice_content_overflow {
  height: 200px;
  border: 1px solid #ccc;
  padding: 10px;
  background: #fff;
  overflow-y: scroll;
}
.special_notice_sp {
  margin-top: 3px;
  font-size: 85%;
}
.schedule {
  margin: 15px auto 40px auto;
}
.schedule_text {
  margin-top: 5px;
  font-size: 1.2rem;
}
.schedule_timeTable {
  width: 100%;
  border-collapse: collapse;
}
.schedule_timeTable_head {
  background: #ffc6c6;
}
.schedule_timeTable th {
  padding: 5px;
}
.schedule_timeTable th:first-of-type {
  width: 110px;
}
.schedule_timeTable td {
  padding: 5px;
  font-size: 95%;
  text-align: center;
}

.ctrArea {
  margin: 20px 0;
  padding: 15px 0;
  background: #ffe6a3;
  text-align: center;
}
.ctrArea_inner {
  width: 92%;
  margin: 0 auto;
}
.ctrArea_text {
  /* font-size: 90%; */
  color: #e03873;
}
.ctrArea_btn {
  margin: 5px 0;
}
.ctrArea_btn a,
.ctaBtn_drawer {
  display: block;
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 8px 0;
  text-align: center;
  background: #68b37d;
  color: #fff;
  border-radius: 50px;
  /* box-shadow: 0 3px 0 #1b5f2e; */
  text-decoration: none;
  font-size: 140%;
  letter-spacing: 0.05em;
}
.ctaBtn_drawer {
  width: 90%;
  text-align: center;
  padding: 9px 0 6px 0;
  letter-spacing: inherit;
}
.ctrArea_btn a::after,
.ctaBtn_drawer::after {
  font-family: "Font Awesome 5 Solid";
  content: '\f0da';
  display: none;
}
.ctrArea_btn a svg,
.ctaBtn_drawer svg {
  pointer-events: none;
  width: 20px !important;
  height: 20px;
  position: absolute;
  right: 10px;
  top: 28%;
  cursor: pointer;
}
.ctrArea_btn a svg path,
.ctaBtn_drawer svg path {
  fill: #fff;
}
.ctrArea_tel {
  margin-top: 15px;
}
.ctrArea_tel img {
  width: 0.9em;
  margin: 0 3px -3px 0;
}
.ctrArea_tel a {
  color: #3b2003;
}

.first {
  width: 100%;
  margin-top: 10px;
  background: #fdf5f5;
  margin: 0;
  padding: 40px 4%;
}
.first_content {}
.first_image {
  width: 75%;
  margin: 0 auto;
}
.first_image img {}
.first_text {
  width: 95%;
  margin: 0 auto;
  text-align: center;
}
.first_text p {
  margin-top: 5px;
}

.info {}
.info_content {
  padding: 10px;
  border: 1px solid #ccc;
  background: #fdf5f5;
  /* font-size: 90%; */
}
.info_content ul {
  list-style-type: none;
}
.info_content ul li {
  display: flex;
  margin-bottom: 0.8em;
}
.info_content ul li:last-child {
  margin: 0;
}
.info_day {
  width: 33%;
  color: #e03873;
  font-size: 90%;
}
.info_detail {
  width: 67%;
}
.info_new {
  display: block;
  width: 4em;
  padding: 0 4px;
  color: #e03873;
  background: #ffc6c6;
  text-align: center;
  border-radius: 25px;
}

.tokucho {
  width: 100%;
  margin: 0;
  padding: 40px 4% 20px 4%;
  background: #fff url(../image/content_bg02.jpg) no-repeat;
  background-size: cover;
}
.tokucho h2 {
  margin-bottom: 20px;
}
.tokucho h3 {
  margin-bottom: 5px;
  padding: 4px 5px;
  background: #ffc6c6;
  font-size: 100%;
  letter-spacing: 0.04em;
}
.tokucho h3 img {
  width: auto;
  max-width: 90%;
  height: auto;
  max-height: 14px;
}
.tokucho_content {
  display: flex;
  align-items: center;
  margin: 15px 0 30px 0;
}
.tokucho_text {
  width: 80%;
  margin-left: 5%;
}
.tokucho_image {
  width: 20%;
  height: 20%;
  margin: 0 auto;
  padding: 3%;
  border: 1px solid #e03773;
  background: #fff;
  border-radius: 100%;
  text-align: center;
}
.tokucho_image img {
  vertical-align: middle;
}

.setubi {
  width: 100%;
  margin: 0;
  padding: 40px 4% 20px 4%;
  background: #fdf5f5;
}
.setubi_content {
  margin-bottom: 25px;
  text-align: center;
}
.setubi_content h3 {
  margin: 10px 0;
}
.setubi_content h3 img {
  width: auto;
  max-width: 95%;
  height: auto;
  max-height: 20px;
}
.setubi_content p {
  /* font-size: 90%; */
  margin-bottom: 0.5em;
  line-height: 160%;
}
.setubi_image {}
.setubi_image img {
  width: 70%;
}
.setubi_detail h3 {
  display: inline-block;
  padding: 0 20px;
  background: linear-gradient(transparent 50%, #bcf1cb 50%);
  letter-spacing: 0.05em;
}

.sinryo {
  width: 100%;
  margin: 0;
  padding: 40px 4% 20px 4%;
  background: #fff url(../image/content_bg01.jpg) no-repeat;
  background-size: cover;
}
.sinryo_text {
  text-align: center;
  margin-bottom: 15px;
}
.sinryo_list {
  list-style-type: none;
  width: 98%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.sinryo_list li {
  width: 48%;
  text-align: center;
}
.sinryo_list li a {
  display: block;
  position: relative;
  margin: 0 0 20px 0;
  background-color: #ffc6c6;
  padding: 15px 15px 15px 25px;
  color: #370a1c;
  text-decoration: none;
  border-radius: 50px;
  /* box-shadow: 0 3px 0 #e03873; */
  background-repeat: no-repeat;
  background-position: 10px 50%;
  background-size: auto 24px;
}
.sinryo_list li a::after {
  font-family: "Font Awesome 5 Solid";
  content: '\f0da';
  display: none;
}
.sinryo_list li a svg {
  pointer-events: none;
  width: 20px !important;
  height: 20px;
  position: absolute;
  right: 2px;
  top: 30%;
  cursor: pointer;
}
.sinryo_list li a svg path {
  fill: #fff;
}
.sinryo_list .sinryo_list-ippan a {
  background-image: url(../image/sinryoIcon_ippan.png);
}
.sinryo_list .sinryo_list-yobou a {
  background-image: url(../image/sinryoIcon_yobou.png);
}
.sinryo_list .sinryo_list-sisyu a {
  background-image: url(../image/sinryoIcon_sisyu.png);
}
.sinryo_list .sinryo_list-imp a {
  background-image: url(../image/sinryoIcon_imp.png);
}
.sinryo_list .sinryo_list-white {
  flex-basis: 100%;
  /* font-size: 90%; */
}
.sinryo_list .sinryo_list-white a {
  background-image: url(../image/sinryoIcon_white.png);
}

.sinryo_list .sinryo_list-child a {
  background-image: url(../image/sinryoIcon_child.png);
}
.sinryo_list .sinryo_list-houmon a {
  background-image: url(../image/sinryoIcon_houmon.png);
}

.message_content {
  width: 90%;
  margin: 25px auto 0 auto;
}
.message_image {
  float: left;
  width: 37%;
  margin: 0 4% 0 0;
}
.message_text {
  font-size: 95%;
  line-height: 160%;
}

.inquiry {
  width: 100%;
  margin: 0;
  padding: 40px 4%;
  background: #fdf5f5;
}
.inquiry_text {
  text-align: center;
  margin-bottom: 15px;
  /* font-size: 90%; */
}
.inquiry_btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 15px;
}
.inquiry_btn_link {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 10px 0;
  width: 48%;
  background: #68b37d;
  border-radius: 50px;
  /* box-shadow: 0 3px 0 #1b5f2e; */
  text-align: center;
}
.inquiry_btn a {
  width: 100%;
  color: #fff;
  text-decoration: none;
}
.inquiry_btn_link::after {
  font-family: "Font Awesome 5 Solid";
  content: '\f0da';
  display: none;
}
.inquiry_btn_link svg {
  pointer-events: none;
  width: 15px !important;
  height: 15px;
  position: absolute;
  right: 5px;
  top: 36%;
  cursor: pointer;
}
.inquiry_btn_link svg path {
  fill: #fff;
}

.access {}
.access h2 {
  margin-bottom: 20px;
}
.access h3 {
  margin: 0 auto 5px auto;
}
.access_wrap {
  margin-bottom: 35px;
}
.access_wrap-clinic {
  margin-bottom: 30px;
}
.access_text {
  margin-bottom: 15px;
  font-size: 95%;
}
.access_map {
  margin-bottom: 15px;
}
.access_map iframe {
  width: 100%;
  height: 40vh;
}
.access .schedule h4 {
  margin-top: 20px;
}
.schedule_cal {
  margin: 20px 0 25px 0;
}
.schedule_cal iframe {
  width: 100%;
  height: 350px;
}

.backtop {
  margin-top: 40px;
  text-align: center;
  /* font-size: 90%; */
}
.backtop a {}

.clinic_top,
.feature,
.price,
.intro_staff,
.clinic_detail,
.access2,
.inquiry2 {
  margin-top: 80px;
}
.clinic_top_content {
  margin: 20px 0 50px 0;
}
.clinic_top_content_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.clinic_top_content_ttl {
  width: 55%;
  text-align: center;
}
.clinic_top_content_ttl img {
  width: auto;
  height: 19px;
}
.clinic_top_content_ttl img.two {
  height: 38px;
}
.clinic_top_content_image {
  width: 45%;
}
.clinic_top_content_image img {}
.clinic_top_content_text {
  font-size: 90%;
  line-height: 140%;
}
.clinic_top_content_link {
  margin: 10px auto;
  text-align: center;
}
.clinic_top_content_link a {
  display: block;
  background: #f5bccb;
  color: #e03773;
  text-decoration: none;
  border-radius: 40px;
  padding: 7px 0;
}

.clinic_detail_content {
  margin-bottom: 30px;
}
.clinic_detail_content h3 {
  margin-bottom: 10px;
  padding: 7px 12px;
  background: #f5bccb;
  font-size: 1.7rem;
  font-weight: normal;
}
.clinic_detail_content p.text {
  /* font-size: 90%; */
  /* text-align: center; */
}
.clinic_detail_content_flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.clinic_detail_content_image {
  width: 30%;
  margin-right: 15px;
}
.clinic_detail_content_text {
  width: 70%;
  /* font-size: 90%; */
}
.clinic_detail_content_text p {
  margin-bottom: 7px;
}
.clinic_detail_content_text h5 {
  margin: 0 0 7px 0;
  border-bottom: 3px solid #bcf1cb;
  font-size: 100%;
}
.clinic_sup h4 {
  width: 95%;
  margin: 20px auto 25px auto;
  padding: 4px 0;
  background: #f5bccb;
}
.clinic_sup .clinic_detail_content_flex {
  width: 90%;
  margin: 0 auto 25px auto;
}
.clinic_sup .clinic_detail_content_image {
  width: 20%;
}
.clinic_sup .clinic_detail_content_text {
  width: 80%;
  font-size: 90%;
}
.clinic_detail_content_price {}
.clinic_detail_content_price span {
  font-size: 110%;
  color: #e03773;
}

.intro_staff h3 {
  position: absolute;
  background: #fec6c6;
  top: 70%;
  left: -10px;
  padding: 5px 16px;
}
.intro_staff h3:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 10px #e03873;
}
.intro_staff_image {
  position: relative;
  margin: 0 auto;
}
.intro_staff_image img {
  vertical-align: middle;
}
.intro_staff_text {
  padding: 30px;
  color: #fff;
  background: #af527a;
  line-height: 200%;
}
.intro_staff_bio {
  margin: 30px 0 0 0;
}
.intro_staff_bio dl {
  display: flex;
  width: 100%;
  margin: 0 auto;
  flex-wrap: wrap;
}
.intro_staff_bio dl dt {
  width: 35%;
  margin-right: 5%;
  text-align: right;
}
.intro_staff_bio dl dd {
  width: 60%;
  margin-bottom: 0.7em;
}

.feature h3 {
  margin-bottom: 5px;
  padding: 3px 0 4px 5px;
  background: #ffc6c6;
}
.feature h3 img {
  width: auto;
  max-width: 90%;
  height: auto;
  max-height: 14px;
}
.feature_content {
  display: flex;
  align-items: center;
  margin: 15px 0 30px 0;
}
.feature_text {
  width: 80%;
  margin-left: 5%;
}
.feature_image {
  width: 20%;
  height: 20%;
  margin: 0 auto;
  padding: 3%;
  border: 1px solid #e03773;
  background: #fff;
  border-radius: 100%;
  text-align: center;
}
.tokucho_image img {
  vertical-align: middle;
}
/* .feature_content {
  display: flex;
  width: 100%;
  margin: 15px auto 40px auto;
}
.feature_text {
  width: 70%;
}
.feature_text p {
  font-size: 85%;
  line-height: 140%;
}
.feature_image {
  width: 30%;
  margin-right: 3%;
} */

.access2 h3,
.price h3,
.inquiry2 h3 {
  margin: 45px 0 5px 0;
  padding: 4px 10px;
  background: #ffc6c6;
  font-size: 100%;
}
.access2 p {
  margin-top: 15px;
  font-size: 90%;
}
.access2_map {
  width: 100%;
  margin: 20px auto 0 auto;
}
.access2_map iframe {
  width: 100%;
  height: 300px;
}
.access2_detail {
  margin: 20px auto 0px auto;
}
.access2_detail table {
  width: 100%;
  margin: 0 auto;
  background: #fcfcfc;
  border-collapse: collapse;
  border-top: 1px solid #aaa;
  border-right: 1px solid #aaa;
}
.access2_detail table th {
  width: 7em;
  text-align: right;
  font-weight: normal;
  padding: 10px 15px 10px 10px;
  background: #ffc6c6;
  border-bottom: 1px solid #aaa;
  border-left: 1px solid #aaa;
}
.access2_detail table td {
  padding: 10px;
  border-left: 1px solid #aaa;
  border-bottom: 1px solid #aaa;
}
.schedule2_text {}
.schedule2_cal {
  width: 100%;
  margin: 20px auto 0 auto;
}
.schedule2_cal iframe {
  width: 100%;
  height: 300px;
}
.access2_gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin: 2% 0;
}
.access2_gallery div {
  width: 47%;
  margin-bottom: 2%;
}
.access2_gallery div img {
  border-radius: 5px;
  box-shadow: 1px 1px 2px rgba(117, 115, 108, 0.8);
}
.access2_gallery div span {
  display: block;
  margin-top: 2px;
  text-align: center;
  font-size: 80%;
}

.inquiry2 p {
  /* font-size: 90%; */
  margin-top: 1.2em;
}
.inquiry2_tel {
  display: block;
  text-align: center;
  font-size: 140%;
  letter-spacing: 0.08em;
}
.inquiry2_form {
  width: 96%;
  margin: 0 auto;
  padding: 20px 0;
  /* font-size: 90%; */
}
.inquiry2_form .formArea_item {
  margin-bottom: 15px;
}
.inquiry2_form input[type="text"],
.inquiry2_form input[type="number"],
.inquiry2_form select,
.inquiry2_form textarea {
  display: block;
  border: 1px solid #aaa;
  background: #fff;
  width: 100%;
  padding: 0.5em;
  border-radius: 5px;
}
.inquiry2_form input[type="number"] {
  width: 20%;
}
.inquiry2_form input[type="tel"] {}
.inquiry2_form textarea {
  height: 4em;
}
.inquiry2_form .formArea_dateTtl {
  display: block;
}
.inquiry2_form .formArea_dateTtl2 {
  font-size: 80%;
}
.inquiry2_form .formArea_date_ex_Toggle {
  margin-left: 5px;
  color: #225799;
  text-decoration: underline;
  cursor: pointer;
}
.inquiry2_form .formArea_date_ex_detail {
  display: none;
  margin-bottom: 0.5em;
  padding: 6px 6px 3px 6px;
  /* font-size: 90%; */
  background: #fdfdf7;
}
.inquiry2_form .formArea_dateSelect {
  display: flex;
  justify-content: space-between;
}
.inquiry2_form .formArea_dateSelect select {
  width: 48%;
  padding: 0.25em 0.5em;
}
.inquiry2_form .formArea_attention {
  color: #555;
  /* font-size: 90%; */
}
.inquiry2_form .formArea_require {
  color: #ee335b;
  margin-left: 0.5em;
}
.inquiry2_form button {
  display: block;
  width: 75%;
  margin: 20px auto 0 auto;
  padding: 10px 2em 8px 2em;
  color: #fff;
  background: #68b37d;
  text-decoration: none;
  border-radius: 5px;
  box-shadow: 0 3px 0 #1b5f2e;
  letter-spacing: 0.05em;
}
.inquiry2_form .formrun-system-show {
  margin-top: 2px;
  padding: 1px 3px;
  /* font-size: 90%; */
  background: #fff4a3;
  color: #7d0606;
}
input[type=radio], input[type=checkbox] {
  display: none;
}
.radio, .checkbox {
  box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: inline-block;
  margin: 0 15px 8px 0;
  padding: 6px 6px 6px 42px;
  border-radius: 8px;
  background-color: #fdf5f5;
  vertical-align: middle;
  cursor: pointer;
}
.radio:hover, .checkbox:hover {
  background-color: #ffc6c6;
}
.radio:hover:after, .checkbox:hover:after {
  border-color: #e03873;
}
.radio:after, .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -10px;
  width: 20px;
  height: 20px;
  border: 2px solid #bbb;
  border-radius: 6px;
  content: '';
}
.radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 20px;
  display: block;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #e03873;
  content: '';
  opacity: 0;
}
input[type=radio]:checked + .radio:before {
  opacity: 1;
}
.checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #e03873;
  border-bottom: 3px solid #e03873;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}

.price h3 {
  margin-bottom: 10px;
}
.price h4 {
  margin: 0 0 10px 0;
}
.price p {
  /* font-size: 90%; */
  margin-bottom: 1em;
}
.price_content {
  width: 100%;
  margin-bottom: 10px;
  padding: 15px;
  background: #fdf5f5;
  border-radius: 15px;
}
.price_table {
  width: 100%;
  margin-bottom: 30px;
  background: #fff;
  border-collapse: collapse;
  border-top: 2px solid #ffc6c6;
  border-right: 2px solid #ffc6c6;
}
.price_table th,
.price_table td {
  border-left: 2px solid #ffc6c6;
  border-bottom: 2px solid #ffc6c6;
}
.price_table_head th,
.price_table_head2 th {
  width: 32%;
  padding: 10px;
  background: #ffc6c6;
  font-size: 110%;
}
.price_table_head td,
.price_table_head2 td {
  width: 25%;
  padding: 10px;
  text-align: center;
  /* font-size: 90%; */
  line-height: 120%;
}
.price_table_head td {
  border-right: 2px solid #ffc6c6;
}
.price_table_head2 td {
  width: 50%;
  text-align: left;
}
.price_table_head td span {
  margin-left: 2px;
  /* display: block; */
}
.price_table_detail td {
  width: 50%;
  padding: 8px;
  text-align: left;
}
.price_table_head svg {
  margin-right: 3px;
}
.price_table_head svg path {
  fill: #e03773;
}
.price_table_detail .price_table_img,
td.price_table_price {
  text-align: center;
}
.price_table_detail .price_table_img {
  width: 50%;
  text-align: center;
}
.price_table_detail .price_table_img img {
  width: 90%;
}
.price_table_tokucho {
  width: 48%;
}
.price_table_tokucho ul {
  list-style-type: none;
  font-size: 90%;
}
.price_table_tokucho ul li {
  position: relative;
  margin-bottom: 0.3em;
  padding-left: 14px;
}
.price_table_tokucho ul li:last-child {
  margin-bottom: 0;
}
.price_table_tokucho ul li:before {
  font-family: "Font Awesome 5 Solid";
  content: '\f105';
  display: none;
}
.price_table_tokucho ul li svg {
  position: absolute;
  top: 3px;
  left: 0;
}
.price_table_tokucho ul li svg path {
  fill: #e03773;
}
.price_table_price {
  width: 15%;
}
.price_table_imp td {
  padding: 10px;
}

/* drawer */
.drawer-hamburger {
  width: 25px;
  padding: 0;
  position: static;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
  height: 4px;
  background-color: #e03873;
}
.drawer--right.drawer-open .drawer-hamburger {
  padding: 3% 5px;
  position: fixed;
}
.drawer--right .drawer-nav {
  right: -65vw;
  z-index: 500;
}
.drawer--right.drawer-open .drawer-hamburger {
  right: 60vw;
}
.drawer-nav {
  width: 60vw;
  box-shadow: -5px 0 10px rgba(115, 115, 115, 0.6);
}
.drawer-menu {
  margin-bottom: 15px;
}
.drawer-menu-item {
  position: relative;
  font-size: 95%;
  padding: 1em 30px 1em 1em;
  border-bottom: 1px solid #aaa;
}
.drawer-menu-item::after {
  font-family: "Font Awesome 5 Solid";
  content: '\f105';
  display: none;
}
.drawer-menu-item svg {
  width: 25px !important;
  height: 25px;
  position: absolute;
  right: 2%;
  top: 22%;
}
.drawer-menu-item svg path {
  fill: #e03873;
}
.comp {
  text-align: center;
}

/* slick */
.slick-prev, .slick-next {
  position: absolute;
  z-index: 50;
}
.slick-prev {
  left: 4px;
}
.slick-next {
  right: 4px;
}
.slick-prev:before, .slick-next:before {
  color: #e03873;
}

.changeCss {
  padding: 20px;
  text-align: center;
}
.changeCssBtn {
  display: block;
  width: 40%;
  padding: 10px 0;
  margin: 0 auto;
  background: #444;
  color: #fff;
  border-radius: 5px;
  cursor: pointer;
}
.changeCssControl {
  display: none;
  padding: 10px 0;
  text-align: center;
}
.changeCssControl button {
  display: block;
  width: 30%;
  margin: 0 auto;
  padding: 5px 0;
  background: #fff;
  color: #333;
  border: 1px solid #aaa;
  margin-bottom: 5px;
  border-radius: 10px;
}
