@charset "UTF-8";
/* Scss Document */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
.flex_30 {
  width: 30%;
}

.flex_31 {
  width: 31%;
}

.flex_32 {
  width: 32%;
}

.flex_33 {
  width: 33%;
}

.flex_34 {
  width: 34%;
}

.flex_35 {
  width: 35%;
}

.flex_36 {
  width: 36%;
}

.flex_37 {
  width: 37%;
}

.flex_38 {
  width: 38%;
}

.flex_39 {
  width: 39%;
}

.flex_40 {
  width: 40%;
}

.flex_41 {
  width: 41%;
}

.flex_42 {
  width: 42%;
}

.flex_43 {
  width: 43%;
}

.flex_44 {
  width: 44%;
}

.flex_45 {
  width: 45%;
}

.flex_46 {
  width: 46%;
}

.flex_47 {
  width: 47%;
}

.flex_48 {
  width: 48%;
}

.flex_49 {
  width: 49%;
}

.flex_50 {
  width: 50%;
}

.flex_51 {
  width: 51%;
}

.flex_52 {
  width: 52%;
}

.flex_53 {
  width: 53%;
}

.flex_54 {
  width: 54%;
}

.flex_55 {
  width: 55%;
}

.flex_56 {
  width: 56%;
}

.flex_57 {
  width: 57%;
}

.flex_58 {
  width: 58%;
}

.flex_59 {
  width: 59%;
}

.flex_60 {
  width: 60%;
}

.flex_61 {
  width: 61%;
}

.flex_62 {
  width: 62%;
}

.flex_63 {
  width: 63%;
}

.flex_64 {
  width: 64%;
}

.flex_65 {
  width: 65%;
}

.flex_66 {
  width: 66%;
}

.flex_67 {
  width: 67%;
}

.flex_68 {
  width: 68%;
}

.flex_69 {
  width: 69%;
}

.flex_70 {
  width: 70%;
}

.padding100 {
  padding-top: 100px;
  padding-bottom: 100px;
}

.padding110 {
  padding-top: 110px;
  padding-bottom: 110px;
}

.padding120 {
  padding-top: 120px;
  padding-bottom: 120px;
}

.padding130 {
  padding-top: 130px;
  padding-bottom: 130px;
}

.padding140 {
  padding-top: 140px;
  padding-bottom: 140px;
}

.padding150 {
  padding-top: 150px;
  padding-bottom: 150px;
}

.padding160 {
  padding-top: 160px;
  padding-bottom: 160px;
}

.padding170 {
  padding-top: 170px;
  padding-bottom: 170px;
}

.padding180 {
  padding-top: 180px;
  padding-bottom: 180px;
}

.padding190 {
  padding-top: 190px;
  padding-bottom: 190px;
}

.padding200 {
  padding-top: 200px;
  padding-bottom: 200px;
}

.padding210 {
  padding-top: 210px;
  padding-bottom: 210px;
}

.padding220 {
  padding-top: 220px;
  padding-bottom: 220px;
}

.padding230 {
  padding-top: 230px;
  padding-bottom: 230px;
}

.padding240 {
  padding-top: 240px;
  padding-bottom: 240px;
}

.padding250 {
  padding-top: 250px;
  padding-bottom: 250px;
}

.padding260 {
  padding-top: 260px;
  padding-bottom: 260px;
}

.padding270 {
  padding-top: 270px;
  padding-bottom: 270px;
}

.padding280 {
  padding-top: 280px;
  padding-bottom: 280px;
}

.padding290 {
  padding-top: 290px;
  padding-bottom: 290px;
}

.padding300 {
  padding-top: 300px;
  padding-bottom: 300px;
}

.margin100 {
  margin-top: 100px;
  margin-bottom: 100px;
}

.margin110 {
  margin-top: 110px;
  margin-bottom: 110px;
}

.margin120 {
  margin-top: 120px;
  margin-bottom: 120px;
}

.margin130 {
  margin-top: 130px;
  margin-bottom: 130px;
}

.margin140 {
  margin-top: 140px;
  margin-bottom: 140px;
}

.margin150 {
  margin-top: 150px;
  margin-bottom: 150px;
}

.margin160 {
  margin-top: 160px;
  margin-bottom: 160px;
}

.margin170 {
  margin-top: 170px;
  margin-bottom: 170px;
}

.margin180 {
  margin-top: 180px;
  margin-bottom: 180px;
}

.margin190 {
  margin-top: 190px;
  margin-bottom: 190px;
}

.margin200 {
  margin-top: 200px;
  margin-bottom: 200px;
}

.margin210 {
  margin-top: 210px;
  margin-bottom: 210px;
}

.margin220 {
  margin-top: 220px;
  margin-bottom: 220px;
}

.margin230 {
  margin-top: 230px;
  margin-bottom: 230px;
}

.margin240 {
  margin-top: 240px;
  margin-bottom: 240px;
}

.margin250 {
  margin-top: 250px;
  margin-bottom: 250px;
}

.margin260 {
  margin-top: 260px;
  margin-bottom: 260px;
}

.margin270 {
  margin-top: 270px;
  margin-bottom: 270px;
}

.margin280 {
  margin-top: 280px;
  margin-bottom: 280px;
}

.margin290 {
  margin-top: 290px;
  margin-bottom: 290px;
}

.margin300 {
  margin-top: 300px;
  margin-bottom: 300px;
}

.pt-110 {
  padding-top: 110px;
}

.pt-120 {
  padding-top: 120px;
}

.pt-130 {
  padding-top: 130px;
}

.pt-140 {
  padding-top: 140px;
}

.pt-150 {
  padding-top: 150px;
}

.pt-160 {
  padding-top: 160px;
}

.pt-170 {
  padding-top: 170px;
}

.pt-180 {
  padding-top: 180px;
}

.pt-190 {
  padding-top: 190px;
}

.pt-200 {
  padding-top: 200px;
}

.pt-210 {
  padding-top: 210px;
}

.pt-220 {
  padding-top: 220px;
}

.pt-230 {
  padding-top: 230px;
}

.pt-240 {
  padding-top: 240px;
}

.pt-250 {
  padding-top: 250px;
}

.pt-260 {
  padding-top: 260px;
}

.pt-270 {
  padding-top: 270px;
}

.pt-280 {
  padding-top: 280px;
}

.pt-290 {
  padding-top: 290px;
}

.pt-300 {
  padding-top: 300px;
}

.pb-110 {
  padding-bottom: 110px;
}

.pb-120 {
  padding-bottom: 120px;
}

.pb-130 {
  padding-bottom: 130px;
}

.pb-140 {
  padding-bottom: 140px;
}

.pb-150 {
  padding-bottom: 150px;
}

.pb-160 {
  padding-bottom: 160px;
}

.pb-170 {
  padding-bottom: 170px;
}

.pb-180 {
  padding-bottom: 180px;
}

.pb-190 {
  padding-bottom: 190px;
}

.pb-200 {
  padding-bottom: 200px;
}

.pb-210 {
  padding-bottom: 210px;
}

.pb-220 {
  padding-bottom: 220px;
}

.pb-230 {
  padding-bottom: 230px;
}

.pb-240 {
  padding-bottom: 240px;
}

.pb-250 {
  padding-bottom: 250px;
}

.pb-260 {
  padding-bottom: 260px;
}

.pb-270 {
  padding-bottom: 270px;
}

.pb-280 {
  padding-bottom: 280px;
}

.pb-290 {
  padding-bottom: 290px;
}

.pb-300 {
  padding-bottom: 300px;
}

.mt-110 {
  margin-top: 110px;
}

.mt-120 {
  margin-top: 120px;
}

.mt-130 {
  margin-top: 130px;
}

.mt-140 {
  margin-top: 140px;
}

.mt-150 {
  margin-top: 150px;
}

.mt-160 {
  margin-top: 160px;
}

.mt-170 {
  margin-top: 170px;
}

.mt-180 {
  margin-top: 180px;
}

.mt-190 {
  margin-top: 190px;
}

.mt-200 {
  margin-top: 200px;
}

.mt-210 {
  margin-top: 210px;
}

.mt-220 {
  margin-top: 220px;
}

.mt-230 {
  margin-top: 230px;
}

.mt-240 {
  margin-top: 240px;
}

.mt-250 {
  margin-top: 250px;
}

.mt-260 {
  margin-top: 260px;
}

.mt-270 {
  margin-top: 270px;
}

.mt-280 {
  margin-top: 280px;
}

.mt-290 {
  margin-top: 290px;
}

.mt-300 {
  margin-top: 300px;
}

.mb-110 {
  margin-bottom: 110px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-130 {
  margin-bottom: 130px;
}

.mb-140 {
  margin-bottom: 140px;
}

.mb-150 {
  margin-bottom: 150px;
}

.mb-160 {
  margin-bottom: 160px;
}

.mb-170 {
  margin-bottom: 170px;
}

.mb-180 {
  margin-bottom: 180px;
}

.mb-190 {
  margin-bottom: 190px;
}

.mb-200 {
  margin-bottom: 200px;
}

.mb-210 {
  margin-bottom: 210px;
}

.mb-220 {
  margin-bottom: 220px;
}

.mb-230 {
  margin-bottom: 230px;
}

.mb-240 {
  margin-bottom: 240px;
}

.mb-250 {
  margin-bottom: 250px;
}

.mb-260 {
  margin-bottom: 260px;
}

.mb-270 {
  margin-bottom: 270px;
}

.mb-280 {
  margin-bottom: 280px;
}

.mb-290 {
  margin-bottom: 290px;
}

.mb-300 {
  margin-bottom: 300px;
}

* {
  text-decoration: none !important;
}

/************************/
/* PC用
------------------------------------------------------------*/
@media only screen and (max-width: 1024px) {
  .padding100 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding110 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding120 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding130 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding140 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding150 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding160 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding170 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding180 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding190 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding200 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding210 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding220 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding230 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding240 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding250 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding260 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding270 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding280 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding290 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .padding300 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .margin100 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin110 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin120 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin130 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin140 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin150 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin160 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin170 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin180 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin190 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin200 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin210 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin220 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin230 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin240 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin250 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin260 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin270 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin280 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin290 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .margin300 {
    margin-top: 80px;
    margin-bottom: 80px;
  }
  .pt-120 {
    padding-top: 80px;
  }
  .pt-130 {
    padding-top: 80px;
  }
  .pt-140 {
    padding-top: 80px;
  }
  .pt-150 {
    padding-top: 80px;
  }
  .pt-160 {
    padding-top: 80px;
  }
  .pt-170 {
    padding-top: 80px;
  }
  .pt-180 {
    padding-top: 80px;
  }
  .pt-190 {
    padding-top: 80px;
  }
  .pt-200 {
    padding-top: 80px;
  }
  .pt-210 {
    padding-top: 80px;
  }
  .pt-220 {
    padding-top: 80px;
  }
  .pt-230 {
    padding-top: 80px;
  }
  .pt-240 {
    padding-top: 80px;
  }
  .pt-250 {
    padding-top: 80px;
  }
  .pt-260 {
    padding-top: 80px;
  }
  .pt-270 {
    padding-top: 80px;
  }
  .pt-280 {
    padding-top: 80px;
  }
  .pt-290 {
    padding-top: 80px;
  }
  .pt-300 {
    padding-top: 80px;
  }
  .pb-120 {
    padding-bottom: 80px;
  }
  .pb-130 {
    padding-bottom: 80px;
  }
  .pb-140 {
    padding-bottom: 80px;
  }
  .pb-150 {
    padding-bottom: 80px;
  }
  .pb-160 {
    padding-bottom: 80px;
  }
  .pb-170 {
    padding-bottom: 80px;
  }
  .pb-180 {
    padding-bottom: 80px;
  }
  .pb-190 {
    padding-bottom: 80px;
  }
  .pb-200 {
    padding-bottom: 80px;
  }
  .pb-210 {
    padding-bottom: 80px;
  }
  .pb-220 {
    padding-bottom: 80px;
  }
  .pb-230 {
    padding-bottom: 80px;
  }
  .pb-240 {
    padding-bottom: 80px;
  }
  .pb-250 {
    padding-bottom: 80px;
  }
  .pb-260 {
    padding-bottom: 80px;
  }
  .pb-270 {
    padding-bottom: 80px;
  }
  .pb-280 {
    padding-bottom: 80px;
  }
  .pb-290 {
    padding-bottom: 80px;
  }
  .pb-300 {
    padding-bottom: 80px;
  }
  .mt-120 {
    margin-top: 80px;
  }
  .mt-130 {
    margin-top: 80px;
  }
  .mt-140 {
    margin-top: 80px;
  }
  .mt-150 {
    margin-top: 80px;
  }
  .mt-160 {
    margin-top: 80px;
  }
  .mt-170 {
    margin-top: 80px;
  }
  .mt-180 {
    margin-top: 80px;
  }
  .mt-190 {
    margin-top: 80px;
  }
  .mt-200 {
    margin-top: 80px;
  }
  .mt-210 {
    margin-top: 80px;
  }
  .mt-220 {
    margin-top: 80px;
  }
  .mt-230 {
    margin-top: 80px;
  }
  .mt-240 {
    margin-top: 80px;
  }
  .mt-250 {
    margin-top: 80px;
  }
  .mt-260 {
    margin-top: 80px;
  }
  .mt-270 {
    margin-top: 80px;
  }
  .mt-280 {
    margin-top: 80px;
  }
  .mt-290 {
    margin-top: 80px;
  }
  .mt-300 {
    margin-top: 80px;
  }
  .mb-120 {
    margin-bottom: 80px;
  }
  .mb-130 {
    margin-bottom: 80px;
  }
  .mb-140 {
    margin-bottom: 80px;
  }
  .mb-150 {
    margin-bottom: 80px;
  }
  .mb-160 {
    margin-bottom: 80px;
  }
  .mb-170 {
    margin-bottom: 80px;
  }
  .mb-180 {
    margin-bottom: 80px;
  }
  .mb-190 {
    margin-bottom: 80px;
  }
  .mb-200 {
    margin-bottom: 80px;
  }
  .mb-210 {
    margin-bottom: 80px;
  }
  .mb-220 {
    margin-bottom: 80px;
  }
  .mb-230 {
    margin-bottom: 80px;
  }
  .mb-240 {
    margin-bottom: 80px;
  }
  .mb-250 {
    margin-bottom: 80px;
  }
  .mb-260 {
    margin-bottom: 80px;
  }
  .mb-270 {
    margin-bottom: 80px;
  }
  .mb-280 {
    margin-bottom: 80px;
  }
  .mb-290 {
    margin-bottom: 80px;
  }
  .mb-300 {
    margin-bottom: 80px;
  }
  /******************/
}

@media only screen and (max-width: 740px) {
  .flex_30 {
    width: 100%;
  }
  .flex_31 {
    width: 100%;
  }
  .flex_32 {
    width: 100%;
  }
  .flex_33 {
    width: 100%;
  }
  .flex_34 {
    width: 100%;
  }
  .flex_35 {
    width: 100%;
  }
  .flex_36 {
    width: 100%;
  }
  .flex_37 {
    width: 100%;
  }
  .flex_38 {
    width: 100%;
  }
  .flex_39 {
    width: 100%;
  }
  .flex_40 {
    width: 100%;
  }
  .flex_41 {
    width: 100%;
  }
  .flex_42 {
    width: 100%;
  }
  .flex_43 {
    width: 100%;
  }
  .flex_44 {
    width: 100%;
  }
  .flex_45 {
    width: 100%;
  }
  .flex_46 {
    width: 100%;
  }
  .flex_47 {
    width: 100%;
  }
  .flex_48 {
    width: 100%;
  }
  .flex_49 {
    width: 100%;
  }
  .flex_50 {
    width: 100%;
  }
  .flex_51 {
    width: 100%;
  }
  .flex_52 {
    width: 100%;
  }
  .flex_53 {
    width: 100%;
  }
  .flex_54 {
    width: 100%;
  }
  .flex_55 {
    width: 100%;
  }
  .flex_56 {
    width: 100%;
  }
  .flex_57 {
    width: 100%;
  }
  .flex_58 {
    width: 100%;
  }
  .flex_59 {
    width: 100%;
  }
  .flex_60 {
    width: 100%;
  }
  .flex_61 {
    width: 100%;
  }
  .flex_62 {
    width: 100%;
  }
  .flex_63 {
    width: 100%;
  }
  .flex_64 {
    width: 100%;
  }
  .flex_65 {
    width: 100%;
  }
  .flex_66 {
    width: 100%;
  }
  .flex_67 {
    width: 100%;
  }
  .flex_68 {
    width: 100%;
  }
  .flex_69 {
    width: 100%;
  }
  .flex_70 {
    width: 100%;
  }
  .padding100 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding110 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding120 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding130 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding140 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding150 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding160 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding170 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding180 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding190 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding200 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding210 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding220 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding230 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding240 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding250 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding260 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding270 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding280 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding290 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .padding300 {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .margin100 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin110 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin120 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin130 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin140 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin150 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin160 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin170 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin180 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin190 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin200 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin210 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin220 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin230 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin240 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin250 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin260 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin270 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin280 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin290 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .margin300 {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .pt-110 {
    padding-top: 60px;
  }
  .pt-120 {
    padding-top: 60px;
  }
  .pt-130 {
    padding-top: 60px;
  }
  .pt-140 {
    padding-top: 60px;
  }
  .pt-150 {
    padding-top: 60px;
  }
  .pt-160 {
    padding-top: 60px;
  }
  .pt-170 {
    padding-top: 60px;
  }
  .pt-180 {
    padding-top: 60px;
  }
  .pt-190 {
    padding-top: 60px;
  }
  .pt-200 {
    padding-top: 60px;
  }
  .pt-210 {
    padding-top: 60px;
  }
  .pt-220 {
    padding-top: 60px;
  }
  .pt-230 {
    padding-top: 60px;
  }
  .pt-240 {
    padding-top: 60px;
  }
  .pt-250 {
    padding-top: 60px;
  }
  .pt-260 {
    padding-top: 60px;
  }
  .pt-270 {
    padding-top: 60px;
  }
  .pt-280 {
    padding-top: 60px;
  }
  .pt-290 {
    padding-top: 60px;
  }
  .pt-300 {
    padding-top: 60px;
  }
  .pb-110 {
    padding-bottom: 60px;
  }
  .pb-120 {
    padding-bottom: 60px;
  }
  .pb-130 {
    padding-bottom: 60px;
  }
  .pb-140 {
    padding-bottom: 60px;
  }
  .pb-150 {
    padding-bottom: 60px;
  }
  .pb-160 {
    padding-bottom: 60px;
  }
  .pb-170 {
    padding-bottom: 60px;
  }
  .pb-180 {
    padding-bottom: 60px;
  }
  .pb-190 {
    padding-bottom: 60px;
  }
  .pb-200 {
    padding-bottom: 60px;
  }
  .pb-210 {
    padding-bottom: 60px;
  }
  .pb-220 {
    padding-bottom: 60px;
  }
  .pb-230 {
    padding-bottom: 60px;
  }
  .pb-240 {
    padding-bottom: 60px;
  }
  .pb-250 {
    padding-bottom: 60px;
  }
  .pb-260 {
    padding-bottom: 60px;
  }
  .pb-270 {
    padding-bottom: 60px;
  }
  .pb-280 {
    padding-bottom: 60px;
  }
  .pb-290 {
    padding-bottom: 60px;
  }
  .mt-110 {
    margin-top: 60px;
  }
  .mt-120 {
    margin-top: 60px;
  }
  .mt-130 {
    margin-top: 60px;
  }
  .mt-140 {
    margin-top: 60px;
  }
  .mt-150 {
    margin-top: 60px;
  }
  .mt-160 {
    margin-top: 60px;
  }
  .mt-170 {
    margin-top: 60px;
  }
  .mt-180 {
    margin-top: 60px;
  }
  .mt-190 {
    margin-top: 60px;
  }
  .mt-200 {
    margin-top: 60px;
  }
  .mt-210 {
    margin-top: 60px;
  }
  .mt-220 {
    margin-top: 60px;
  }
  .mt-230 {
    margin-top: 60px;
  }
  .mt-240 {
    margin-top: 60px;
  }
  .mt-250 {
    margin-top: 60px;
  }
  .mt-260 {
    margin-top: 60px;
  }
  .mt-270 {
    margin-top: 60px;
  }
  .mt-280 {
    margin-top: 60px;
  }
  .mt-290 {
    margin-top: 60px;
  }
  .mt-300 {
    margin-top: 60px;
  }
  .mb-110 {
    margin-bottom: 60px;
  }
  .mb-120 {
    margin-bottom: 60px;
  }
  .mb-130 {
    margin-bottom: 60px;
  }
  .mb-140 {
    margin-bottom: 60px;
  }
  .mb-150 {
    margin-bottom: 60px;
  }
  .mb-160 {
    margin-bottom: 60px;
  }
  .mb-170 {
    margin-bottom: 60px;
  }
  .mb-180 {
    margin-bottom: 60px;
  }
  .mb-190 {
    margin-bottom: 60px;
  }
  .mb-200 {
    margin-bottom: 60px;
  }
  .mb-210 {
    margin-bottom: 60px;
  }
  .mb-220 {
    margin-bottom: 60px;
  }
  .mb-230 {
    margin-bottom: 60px;
  }
  .mb-240 {
    margin-bottom: 60px;
  }
  .mb-250 {
    margin-bottom: 60px;
  }
  .mb-260 {
    margin-bottom: 60px;
  }
  .mb-270 {
    margin-bottom: 60px;
  }
  .mb-280 {
    margin-bottom: 60px;
  }
  .mb-290 {
    margin-bottom: 60px;
  }
  .mb-300 {
    margin-bottom: 60px;
  }
  body {
    min-width: auto;
  }
  /*****************/
}

/* スマートフォン 縦(ポートレート) */
/* CSS Document */
/* YUI 3.8.1 (build 5795) Copyright 2013 Yahoo! Inc. http://yuilibrary.com/license/ */
html {
  color: #000;
  background: #FFF;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: '';
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

#yui3-css-stamp.cssreset {
  display: none;
}

body {
  font-family: 'Noto Sans Japanese', serif;
  font-size: 14px;
}

#topcontrol {
  background-color: #3972b7;
  color: #FFF;
  font-size: 40px;
  line-height: 0;
  padding: 0 10px 5px;
  z-index: 9999;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  font-weight: bold;
  text-align: center;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  padding-top: 13px;
}

#topcontrol p {
  font-size: 12px;
  line-height: normal;
  margin-top: -5px;
}

#sp {
  display: none;
}

p {
  line-height: 1.8em;
  letter-spacing: 0.1em;
}

li {
  list-style: none;
}

ul {
  padding-inline-start: unset;
  margin-bottom: unset;
}

.img100 img {
  width: 100%;
  height: auto;
}

.a_h a {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.hover img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.hover img:hover {
  opacity: 0.4;
  filter: alpha(opacity=60);
}

.cy_container {
  width: 97%;
  max-width: 960px;
  margin: 0 auto;
}

.font {
  font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.font0 {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  font-weight: bold;
}

.font26 {
  font-size: 26px;
  line-height: normal;
}

.font24 {
  font-size: 24px;
  line-height: normal;
}

.font22 {
  font-size: 22px;
  line-height: normal;
}

.font20 {
  font-size: 20px;
  line-height: normal;
}

.font18 {
  font-size: 18px;
  line-height: normal;
}

.font16 {
  font-size: 16px;
  line-height: normal;
}

.posi {
  position: relative;
}

#sprogo {
  display: none;
}

#cy_h1 {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0 5px;
  z-index: 800;
  font-size: 10px;
  text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px, #fff -1px -1px 0px;
}

#sp_text {
  display: none;
}

.tel-link2 a {
  text-decoration: none;
  color: inherit;
}

.tel-link2 {
  text-decoration: none;
  color: inherit;
}

.sp_block740 {
  display: none;
}

.br480 {
  display: none;
}

/***********************/
#logo {
  display: block;
}
#logo img {
  width: 100%;
  max-width: 500px;
}
#logo img:nth-child(2) {
  display: none;
}
.main {
  background: url(../images/main.jpg) center/cover;
  height: 44.4vw;
}

#cy_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 140px 0 80px;
  height: 100px;
}

.h_address li:nth-child(1) {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 16px;
  line-height: normal;
  letter-spacing: 0.1em;
}

.h_address li:nth-child(2) {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 8px;
}

.h_address li:nth-child(2) p {
  font-size: 14px;
  color: #3972b7;
  background: #e5ecf3;
  border-radius: 75px;
  line-height: normal;
  letter-spacing: 0.1em;
  padding: 2px 8px;
}

.catch {
  position: absolute;
  right: 3.5%;
  top: 5%;
  width: 60vw;
}

.top_midashi {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 2vw;
  font-size: 32.5px;
}

.top_midashi div {
  letter-spacing: 0.1em;
}

.top_midashi div span {
  position: relative;
  letter-spacing: -0.15em;
}

.top_midashi div span:after {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(0%);
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #3972b7;
}

.container1280 {
  width: 97%;
  max-width: 1280px;
  margin: 0 auto;
}

.c-3972b7 {
  color: #3972b7;
}

.midashi22 {
  font-size: 22px;
}

.midashi32 {
  font-size: 32px;
}

.midashi30 {
  font-size: 30px;
}

.midashi35 {
  font-size: 35px;
}

.midashi48 {
  font-size: 48px;
}

.midashi66 {
  font-size: 66px;
}

.t-center {
  text-align: center;
}

.bg_f0f9fe {
  background: #f0f9fe;
}

.top_sec01 .container1280,
.top_sec02 .container1280 {
  padding: 0 2vw;
}

.top_sec01 .midashi66,
.top_sec02 .midashi66 {
  letter-spacing: 0.11em;
}

.top_contents01 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2vw;
}

.top_contents01 li {
  text-align: center;
}

.top_contents01 li .midashi25 {
  padding-top: 25px;
  letter-spacing: 0.1em;
  font-size: 25px;
  line-height: 1.4em;
}

.time_table {
  width: 100%;
}

.time_table tr td {
  font-size: 20px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  font-weight: bold;
  padding: 25px 15px;
  letter-spacing: 0.1em;
}

.time_table tr td:nth-child(1) {
  width: 20%;
  border: 1px solid #c9c9c9;
}

.time_table thead tr td {
  background: #3972b7;
  color: #fff;
  text-align: center;
}

.time_table tbody tr {
  border: 1px solid #c9c9c9;
}

.time_table tbody tr td {
  text-align: center;
  background: #fff;
}

.time_table tbody tr td:nth-child(n + 2) {
  color: #3972b7;
}

.banner_box {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
  padding: 1.5vw 25vw;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  z-index: 101;
  margin-bottom: 0 !important;
}

.sp_banner_box {
  display: none;
  position: fixed;
  bottom: 1%;
  left: 50%;
  transform: translateX(-50%);
  width: 94%;
  grid-template-columns: repeat(2, 1fr);
  z-index: 101;
}

.sp_banner_box a {
  display: block;
}

/**********/
.flexslider {
  position: relative;
  height: 878px;
}

#toptitle {
  position: absolute;
  width: 100%;
  text-align: center;
  left: 0;
  top: 350px;
  z-index: 100;
}

.slides {
  position: relative;
  z-index: 10;
}

#fade1,
#fade2,
#fade3 {
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 878px;
}

#fade1 {
  background-image: url(../images/fade1.jpg);
}

#fade2 {
  background-image: url(../images/fade2.jpg);
}

#fade3 {
  background-image: url(../images/fade3.jpg);
}

/**********/
#cy_nav li {
  float: left;
  width: 9.1%;
  text-align: center;
  height: 60px;
  display: table;
}

@media all and (-ms-high-contrast: none) {
  #cy_nav li {
    width: 9%;
  }
}

#cy_nav a {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  color: #000;
  text-decoration: none;
  border-style: solid;
  border-width: 1px 1px 1px 0;
  border-color: #3972b7;
  font-size: 12px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

#cy_nav li:last-child a {
  border-width: 0 1px 1px 0;
}

#cy_nav a:hover {
  color: #FFF;
  background-color: #3972b7;
}

#cy_nav .nav_ac a {
  color: #FFF;
  background-color: #3972b7;
}

/*********/
.container97 {
  width: 97%;
  margin: 0 auto;
}

#list {
  margin: 130px auto 0;
}

#list li {
  float: left;
  width: 33.33%;
  margin: 7px 0;
}

#list .width {
  width: 98%;
  padding: 60px 50px;
  color: #FFF;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 550px;
  position: relative;
}

.title {
  font-size: 18px;
  line-height: normal;
}

.title span {
  font-size: 30px;
}

.min {
  min-height: 200px;
  margin-top: 20px;
}

.more {
  text-align: right;
}

.more a {
  color: #FFF;
  text-decoration: none;
  width: 250px;
  text-align: center;
  padding: 5px 0;
  border: 1px solid #FFF;
  display: block;
  float: right;
}

.more a:hover {
  background-color: #3662ba;
  border-color: #3662ba;
}

.pl2 {
  padding-left: 140px;
}

#topimg {
  padding-bottom: 260px;
}

/***/
#list li:nth-child(1) .width {
  background-image: url(../images/top6.jpg);
}

#list li:nth-child(2) .width {
  background-image: url(../images/top7.jpg);
}

#list li:nth-child(3) .width {
  background-image: url(../images/top8.jpg);
}

#list li:nth-child(4) .width {
  background-image: url(../images/top9.jpg);
}

#list li:nth-child(5) .width {
  background-image: url(../images/top10.jpg);
}

#list li:nth-child(6) .width {
  background-image: url(../images/top11.jpg);
}

#list li:nth-child(7) .width {
  background-image: url(../images/top12.jpg);
}

#list li:nth-child(8) .width {
  background-image: url(../images/top13.jpg);
}

#list li:nth-child(9) .width {
  background-image: url(../images/top14.jpg);
}

#list li:nth-child(10) .width {
  background-image: url(../images/top15.jpg);
}

#list li:nth-child(11) {
  width: 66.66%;
  float: right;
}

#list li:nth-child(11) .width {
  width: 99%;
  background-image: url(../images/top16.jpg);
}

/**/
#list li:nth-child(3n+1) {
  clear: both;
}

/********/
#top50 li {
  margin: 7px 0;
  float: left;
  width: 50%;
  color: #FFF;
}

#top50 li .width {
  width: 99%;
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 550px;
  padding: 60px 50px;
}

#top50 li:nth-child(2) {
  float: right;
}

/****/
#top50 li:nth-child(1) .width {
  background-image: url(../images/top17.jpg);
}

#top50 li:nth-child(2) .width {
  background-image: url(../images/top18.jpg);
}

/****/
#time {
  width: 100%;
  font-size: 18px;
  margin-top: 60px;
}

#time th {
  padding: 10px 0;
  width: 150px;
  border-right: 1px solid #FFF;
}

#time td {
  padding: 10px 0;
  text-align: center;
}

.free img {
  display: inline-block;
  vertical-align: middle;
}

.free p {
  display: inline-block;
  vertical-align: middle;
  padding-left: 20px;
  font-size: 24px;
  line-height: normal;
}

/*********/
#cy_footer {
  margin-top: 80px;
  padding-bottom: 180px;
}

.container1820 {
  width: 97%;
  margin: 0 auto;
  max-width: 1820px;
}

#f_logo {
  text-align: center;
}

#f_nav {
  text-align: center;
  margin-top: 40px;
}

#f_nav li {
  display: inline-block;
  margin: 10px 20px;
  font-size: 13px;
  position: relative;
}

#f_nav a {
  color: #3972b7;
  text-decoration: none;
}

#f_nav span {
  display: block;
  color: #000;
  font-size: 10px;
  padding-top: 5px;
}

#f_nav li:after {
  content: "";
  background-image: url(../images/line.png);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: auto 33px;
  height: 33px;
  width: 15px;
  position: absolute;
  right: -30px;
  top: 0;
}

#f_nav li:last-child:after {
  display: none;
}

/*****/
#copy {
  text-align: center;
  padding: 10px 14px;
  color: #FFF;
  background-color: #3972b7;
  margin-top: 40px;
}

#copy a {
  color: #fff;
}

/*2024.12.05 TOP変更*/
.serif {
  font-family: serif;
}

.fast_img01 {
  position: absolute;
  bottom: 3%;
  right: 3.5%;
  width: 50.2vw;
}

.fast_img02 {
  position: absolute;
  bottom: 5.5%;
  left: 3.5%;
  width: 22.3vw;
}

.sp_fast_img02 {
  display: none;
}

.top_midashi02 {
  border-bottom: 2px solid #313233;
  width: fit-content;
  margin: 25px auto 0;
  padding-bottom: 25px;
}

.tel_and_web {
  width: 100%;
  max-width: 1130px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.5vw;
}

.top_price_box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4vw;
}

.top_price_box .price_box02 {
  border: 2px solid #c9c9c9;
}

.top_price_box .price_box02 .top_box {
  padding: 40px 25px 35px;
}

.top_price_box .price_box02 .top_box h4 {
  font-size: 40px;
  width: fit-content;
  margin: 0 auto;
  margin-bottom: 25px;
  padding-bottom: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.top_price_box .price_box02 .top_box .price {
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 5px;
}

.top_price_box .price_box02 .top_box .price div {
  color: #c81b2b;
}

.top_price_box .price_box02 .top_box .price div span:nth-child(1) {
  font-size: 25px;
  color: #fff;
  display: block;
  border-radius: 75px;
  background-color: #a40000;
  text-align: center;
  padding: 5px 15px;
}

.top_price_box .price_box02 .top_box .price div .font0 {
  font-size: 55px;
  font-weight: 700;
  line-height: 1.2em;
  margin-top: 7px;
  letter-spacing: 0.02em;
}

.top_price_box .price_box02 .top_box .price .number_text {
  font-size: 150px;
  font-weight: 700;
  color: #c81b2b;
  letter-spacing: 0.03em;
  font-family: serif;
}

.top_price_box .price_box02 .bottom_box {
  padding: 50px 25px;
}

.top_price_box .price_box02 .bottom_box .midashi25 {
  background-color: #fff;
  border-radius: 8px;
  width: fit-content;
  margin: 0 auto 20px;
  padding: 1px 25px;
  font-size: 25px;
}

.top_price_box .price_box02 .bottom_box .grid {
  display: grid;
  grid-template-columns: 40px 310px;
  gap: 15px;
  justify-content: center;
  margin: 0 auto;
}

.top_price_box .price_box02 .bottom_box .grid div {
  display: grid;
  gap: 3px;
}

.top_price_box .price_box02 .bottom_box .grid div span {
  border-radius: 5px;
  padding: 5px;
  color: #fff;
  font-size: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.top_price_box .price_box02 .bottom_box .grid .serif {
  font-size: 95px;
  line-height: 0.8em;
  letter-spacing: -0.03em;
}

.top_price_box .price_box02 .bottom_box .grid .serif span {
  font-size: 75px;
}

.top_price_box .price_box02 .bottom_box .grid .midashi40 {
  font-size: 40px;
  font-weight: 700;
}

.top_price_box .price_box02 .bottom_box .grid .text_content {
  position: relative;
  margin-left: 10px;
}

.top_price_box .price_box02 .bottom_box .grid .text_content:after {
  content: "税込";
  position: absolute;
  top: -20px;
  left: 0;
  font-size: 18px;
  font-family: 'Noto Sans Japanese', serif;
  color: #313233 !important;
}

.top_price_box .price_box02.left h4 {
  border-bottom: 2px solid #f58812;
}

.top_price_box .price_box02.left .bottom_box {
  background-color: #fde2c5;
}

.top_price_box .price_box02.left .bottom_box .grid {
  color: #f58812;
}

.top_price_box .price_box02.left .bottom_box .grid div span {
  background-color: #f39801;
}

.top_price_box .price_box02.right h4 {
  border-bottom: 2px solid #3972b7;
}

.top_price_box .price_box02.right .bottom_box {
  background-color: #d2e3f7;
}

.top_price_box .price_box02.right .bottom_box .grid {
  color: #3972b7;
}

.top_price_box .price_box02.right .bottom_box .grid div span {
  background-color: #3972b7;
}

.new_top_sec .midashi48 {
  line-height: 1.6em;
  letter-spacing: 0.08em;
}

.icon_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.5vw;
}

.icon_grid li {
  position: relative;
  padding: 60px 25px 40px;
  border-radius: 12px;
}

.icon_grid li p {
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  text-align: center;
  line-height: 1.5em;
  letter-spacing: 0.06em;
}

.icon_grid li img {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.icon_grid li:nth-child(1) {
  background-color: #3770b5;
}

.icon_grid li:nth-child(1) img {
  top: -25px;
}

.icon_grid li:nth-child(2) {
  background-color: #57536c;
}

.icon_grid li:nth-child(2) img {
  top: -30px;
}

.icon_grid li:nth-child(3) {
  background-color: #7297cc;
  padding: 80px 25px 40px;
}

.icon_grid li:nth-child(3) img {
  top: -35px;
}

/*****************************************************************

	院長ご挨拶

*****************************************************************/
#greemain {
  background-image: url(../images/greeting1.png);
}

.main_size {
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 375px;
}

#title {
  text-align: center;
  padding-top: 140px;
  font-size: 48px;
  line-height: normal;
  color: #FFF;
  text-shadow: 0 0 7px #000;
}

#title span {
  position: relative;
}

#title span:after {
  content: "";
  border-bottom: 1px solid #FFF;
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: -10px;
  left: 0;
}

/***********/
.container1450 {
  width: 97%;
  max-width: 1450px;
  margin: 0 auto;
}

.center_midashi {
  color: #3972b7;
  position: relative;
  text-align: center;
  font-size: 26px;
  line-height: normal;
}

.center_midashi span {
  position: relative;
  z-index: 100;
  background-color: #FFF;
  padding: 0 60px;
}

.center_midashi:after {
  content: "";
  border-bottom: 1px solid #3972b7;
  position: absolute;
  left: 0;
  top: 17px;
  z-index: 1;
  width: 100%;
  display: block;
}

/*********/
#g_table {
  display: table;
  width: 100%;
  margin-top: 40px;
}

#g_cell1 {
  display: table-cell;
  vertical-align: middle;
}

#g_cell2 {
  display: table-cell;
  vertical-align: middle;
  padding-left: 60px;
}

.name {
  font-size: 16px;
  text-align: right;
}

.name span {
  font-size: 22px;
}

/*********/
.bg_gray {
  background-color: #f1f1f1;
  padding: 60px 0;
}

.three li {
  float: left;
  width: 33.33%;
}

.three .width {
  width: 97%;
  border: 1px solid #3972b7;
  padding: 40px;
}

.icon {
  text-align: center;
}

.icon img {
  height: 43px;
  width: auto;
}

.midashi3 {
  text-align: center;
  font-size: 20px;
  color: #3972b7;
  padding-top: 5px;
  line-height: normal;
}

.profile {
  margin-top: 20px;
  min-height: 300px;
}

.profile p {
  padding: 5px 0 5px 15px;
  text-indent: -1em;
  border-bottom: 1px dashed #aaa;
}

/***********/
.three li:nth-child(2) .width {
  margin: 0 auto;
}

.three li:nth-child(3) .width {
  float: right;
}

/***********/
/*****************************************************************

	歯列矯正とは

*****************************************************************/
#ormain {
  background-image: url(../images/or1.jpg);
}

.left35 {
  float: left;
  width: 35%;
}

.max500 {
  text-align: center;
}

.max500 img {
  width: 100%;
  height: auto;
  max-width: 540px;
}

.right60 {
  float: right;
  width: 60%;
}

.list {
  text-align: center;
}

.list li {
  display: inline-block;
  padding: 10px;
}

.table_list {
  display: table;
  width: 130px;
  height: 130px;
  text-align: center;
  border: 1px dashed #3972b7;
  color: #3972b7;
  border-radius: 50%;
}

.middle {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
  line-height: 1.4em;
}

.middle span {
  display: block;
}

/******/
.center_mini {
  text-align: center;
  font-size: 24px;
  line-height: normal;
  position: relative;
  color: #3972b7;
}

.center_mini:after {
  content: "";
  border-bottom: 1px solid #3972b7;
  width: 150px;
  display: block;
  margin: 15px auto 0;
}

.right_img {
  float: right;
  margin: 0 0 40px 40px;
}

/********/
.check {
  text-align: center;
  padding-bottom: 10px;
}

.check_box2 li {
  float: left;
  width: 48%;
  border: 2px solid #3972b7;
  padding: 40px;
  margin: 20px 0;
}

.check_box2 li:nth-child(2n) {
  float: right;
}

.check_box2 li:nth-child(2n+1) {
  clear: both;
}

.min2 {
  margin-top: 20px;
  min-height: 200px;
}

.midashi_min {
  min-height: 80px;
}

.min3 {
  margin-top: 20px;
  min-height: 300px;
}

.midashi3 span {
  display: block;
}

/*************/
#or_bg {
  background-image: url(../images/or5.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 325px;
  margin-top: 60px;
}

/*************/
.list2 li {
  float: left;
  width: 48%;
  display: table;
  margin-top: 60px;
}

.l_cell1 {
  display: table-cell;
  vertical-align: top;
}

.l_cell2 {
  display: table-cell;
  vertical-align: top;
  padding-left: 40px;
}

.list_midashi {
  font-size: 18px;
  color: #3972b7;
}

.list_midashi:after {
  content: "";
  border-bottom: 1px solid #3972b7;
  width: 100px;
  display: block;
  padding-top: 10px;
}

.list2 li:nth-child(2n) {
  float: right;
}

.list2 li:nth-child(2n+1) {
  clear: both;
}

.list2 .w100 {
  width: 100%;
}

/******/
.left48 {
  float: left;
  width: 48%;
}

.img_max {
  position: relative;
  z-index: 10;
}

.img_max img {
  width: 100%;
  height: auto;
}

.bg_text {
  background-color: #fafafa;
  width: 100%;
  max-width: 94%;
  margin: -60px auto 0;
  position: relative;
  z-index: 100;
  padding: 40px;
}

.bb_midashi {
  font-size: 20px;
  line-height: normal;
  color: #3972b7;
  text-align: center;
}

.bb_midashi:after {
  content: "";
  display: block;
  border-bottom: 1px solid #3972b7;
  width: 150px;
  margin: 5px auto 0;
}

.min4 {
  min-height: 200px;
}

.right48 {
  float: right;
  width: 48%;
}

/****************/
.posi_left48 {
  position: absolute;
  left: 0;
  top: 0;
  width: 48%;
  z-index: 10;
}

.posi_left48 img {
  width: 100%;
  height: auto;
}

.right_box {
  background-color: #fafafa;
  width: 100%;
  max-width: 820px;
  position: relative;
  z-index: 100;
  padding: 40px;
  float: right;
  margin-top: 80px;
}

/*************/
#or_bg2 {
  background-image: url(../images/or16.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 325px;
  margin-top: 60px;
}

/*************/
.rei_left {
  float: left;
  width: 75.2%;
}

.rei_left li {
  float: left;
  width: 33.33%;
  margin: 5px 0;
}

.rei_left .width {
  width: 97%;
  display: table;
}

.rei_midashi {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  color: #3972b7;
  font-size: 22px;
  line-height: normal;
}

.rei_left img {
  width: 100%;
  height: auto;
}

/********/
.rei_left li:nth-child(1) .width {
  border: 1px solid #3972b7;
  height: 205px;
}

.rei_left li:nth-child(2) .width,
.rei_left li:nth-child(5) .width {
  margin: 0 auto;
}

.rei_left li:nth-child(3n) .width {
  float: right;
}

.rei_left li:nth-child(3n+1) {
  clear: both;
}

/********/
/************/
.rei_right {
  float: right;
  width: 24%;
}

.rei_right img {
  width: 100%;
  height: auto;
}

/*****************************************************************

	小児矯正とは

*****************************************************************/
#childmain {
  background-image: url(../images/child1.jpg);
}

#child_bg {
  background-image: url(../images/child6.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: auto 700px;
  padding-top: 60px;
  margin-top: 60px;
}

.white_t {
  color: #FFF;
}

.white_after:after {
  border-color: #FFF;
}

/********/
.four li {
  float: left;
  width: 25%;
  padding: 10px;
}

.bg_text2 {
  background-color: #fafafa;
  width: 100%;
  max-width: 94%;
  margin: -30px auto 0;
  position: relative;
  z-index: 100;
  padding: 20px;
}

.min5 {
  min-height: 180px;
}

/*************/
#child_bg2 {
  background-image: url(../images/child12.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 325px;
  margin-top: 60px;
}

/*************/
.c_table {
  display: table;
  width: 100%;
}

/*****************************************************************

	部分矯正とは

*****************************************************************/
#partialmain {
  background-image: url(../images/pa1.jpg);
}

#pa_bg {
  background-image: url(../images/pa5.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 60px 0;
  margin-top: 60px;
}

#max {
  text-align: center;
}

#max img {
  width: 100%;
  height: auto;
  max-width: 1180px;
}

#pa_banar {
  background-image: url(../images/pa4.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: auto 300px;
  height: 300px;
  margin: 60px auto 0;
  width: 97%;
  max-width: 1190px;
  color: #FFF;
  padding: 20px;
}

.bbb {
  border: 1px solid #FFF;
  height: 100%;
  display: table;
  width: 100%;
}

.middle2 {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

/*****************************************************************

	インビザライン

*****************************************************************/
.check_box4 li:nth-child(4n+1) {
  clear: both;
}

#invisalinemain {
  background-image: url(../images/invisa1.jpg);
}

.check_box4 li {
  float: left;
  width: 25%;
  margin: 15px 0;
}

.check_box4 li .width {
  width: 94%;
  border: 2px solid #3972b7;
  padding: 40px 20px;
}

.min6 {
  min-height: 180px;
  margin-top: 20px;
}

.min7 {
  min-height: 260px;
  margin-top: 20px;
}

#mouse li {
  float: left;
  width: 33.33%;
  padding: 20px 40px;
}

.mouse_img {
  text-align: center;
}

.mouse_img img {
  width: 100%;
  height: auto;
  display: block;
  max-width: 305px;
  margin: 0 auto;
}

.blue {
  color: #3972b7;
  display: inline-block;
  padding-right: 20px;
}

.red {
  color: #a40000;
  display: inline-block;
}

.orange {
  color: #ff7e00;
}

.green {
  color: #32b16c;
}

/***********/
.bg_g {
  background-color: #f1f1f1 !important;
}

.cy_table {
  display: table;
  width: 100%;
}

.in_left {
  display: table-cell;
  width: 475px;
  vertical-align: top;
}

.in_left img {
  width: 435px;
  height: auto;
}

.in_right {
  display: table-cell;
  vertical-align: top;
}

.number {
  font-size: 34px;
  line-height: normal;
  position: absolute;
  left: 0;
  top: 0;
}

.number:after {
  content: "";
  border-bottom: 1px solid #000;
  position: absolute;
  left: 7px;
  top: 45px;
  width: 80px;
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.num_t {
  padding: 50px 0 0 75px;
  font-size: 20px;
  line-height: normal;
}

/***/
.right_box2 {
  padding-left: 200px;
}

/*****************************************************************

	矯正治療を始める前の基礎知識

*****************************************************************/
#basicmain {
  background-image: url(../images/basic1.jpg);
}

.center {
  text-align: center;
}

.l_cell1 p {
  width: 238px;
  height: 238px;
  border: 1px dashed #3972b7;
  text-align: center;
  color: #3972b7;
  font-size: 24px;
  line-height: 1.5em;
  border-radius: 50%;
  padding-top: 80px;
}

.l_cell1 p span {
  display: block;
  font-size: 42px;
}

/*************/
#basic_bg {
  background-image: url(../images/basic2.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 325px;
  margin-top: 60px;
}

.color_b {
  color: #3972b7;
}

/*************/
#basic_bg2 {
  background-image: url(../images/basic7.jpg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: cover;
  height: 325px;
  margin-top: 60px;
}

/*****************************************************************

	費用について

*****************************************************************/
#costmain {
  background-image: url(../images/cost1.jpg);
}

.cost {
  width: 100%;
  border-bottom: 1px dashed #59595a;
  font-size: 16px;
}

.cost tr {
  background-color: #fafafa;
}

.cost tr:nth-child(2n) {
  background-color: #FFF;
}

.cost th {
  padding: 30px 20px;
  font-weight: bold;
  border-top: 1px dashed #59595a;
}

.cost td {
  padding: 30px 10px;
  text-align: center;
  border-top: 1px dashed #59595a;
}

.cost_sec01 .container1280 {
  padding: 0 2vw;
}

.cost_table {
  width: 100%;
}

.cost_table tr td {
  border: 1px solid #c9c9c9;
  font-size: 18px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  font-weight: bold;
  padding: 45px 25px;
  border-radius: 2px;
}

.cost_table tr td:nth-child(1) {
  width: 66%;
  padding: 40px 2.5vw;
}

.cost_table tr td:nth-child(2) {
  text-align: center;
}

.cost_table02 {
  width: 100%;
}

.cost_table02 thead tr td {
  background: #3972b7;
  text-align: center;
  color: #fff;
}

.cost_table02 tr td {
  border: 1px solid #c9c9c9;
  font-size: 18px;
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
  font-weight: bold;
  padding: 45px 2.5vw;
  border-radius: 2px;
}

.cost_table02 tr td:nth-child(1) {
  width: 30%;
  padding: 40px 2.5vw;
}

.cost_table02 tr td:nth-child(2) {
  width: 40%;
}

.cost_table02 tr td:last-child {
  text-align: center;
}

.note_text {
  display: flex;
}

.note_text span {
  display: block;
}

.new_cost_list {
  width: 96%;
  max-width: 960px;
  margin: 0 auto;
}

.new_cost_list thead tr td {
  background-color: #3972b7;
  border: 1px solid #3972b7;
  padding: 15px;
  text-align: center;
  font-size: 21px;
  font-weight: 700;
  color: #fff;
}

.new_cost_list tbody tr td {
  padding: 10px 0;
  border: 1px solid #686869;
  font-size: 17px;
}

.new_cost_list tbody tr td span {
  font-size: 14px;
}

.new_cost_list tbody tr td:nth-child(1) {
  padding: 10px 15px;
  width: 70%;
}

.new_cost_list tbody tr td:nth-child(2) {
  text-align: center;
}

@media (max-width: 740px) {
  .midashi22 {
    font-size: 16px;
  }
  .cost_sec01 .container1280 {
    padding: 0;
  }
  .cost_table tr td {
    font-size: 14px;
    padding: 20px 15px;
  }
  .cost_table tr td:nth-child(1) {
    width: 59%;
    padding: 20px 15px;
  }
  .cost_table tr td:nth-child(2) {
    font-size: 14px;
  }
  .cost_table02 tr td {
    font-size: 15px;
    padding: 20px 15px;
  }
  .cost_table02 tr td:nth-child(1) {
    width: 30%;
    padding: 20px 15px;
  }
  .cost_table02 tr td:nth-child(2) {
    width: 40%;
  }
  .new_cost_list thead tr td {
    font-size: 17px;
  }
  .new_cost_list tbody tr td {
    font-size: 14px;
  }
  .new_cost_list tbody tr td span {
    font-size: 12px;
  }
  .new_cost_list tbody tr td:nth-child(1) {
    padding: 10px 10px;
    width: 70%;
  }
}

@media (max-width: 480px) {
  .cost_table02 tr td {
    font-size: 14px;
    padding: 20px 10px;
  }
  .cost_table02 tr td:nth-child(1) {
    width: 32%;
    padding: 20px 10px;
  }
  .cost_table02 tr td:nth-child(2) {
    width: 40%;
  }
  .new_cost_list thead tr td {
    font-size: 16px;
  }
  .new_cost_list tbody tr td {
    font-size: 13px;
  }
  .new_cost_list tbody tr td span {
    font-size: 11px;
  }
  .new_cost_list tbody tr td:nth-child(1) {
    padding: 10px 10px;
    width: 70%;
  }
}

/*****************************************************************

	よくあるご質問

*****************************************************************/
#faqmain {
  background-image: url(../images/faq1.jpg);
}

.faq li {
  border-top: 1px dashed #bababa;
  background-color: #fafafa;
}

.faq li:nth-child(2n) {
  background-color: #FFF;
}

.accordion {
  margin: 0 0 10px;
  width: 100%;
}

.displayNone {
  display: none;
}

.switch {
  font-weight: bold;
  font-size: 16px;
  padding: 20px 60px 20px 20px;
  position: relative;
  display: table;
  width: 100%;
  cursor: pointer;
}

.faq_cell1 {
  display: table-cell;
  width: 50px;
  font-size: 24px;
  color: #3972b7;
}

.faq_cell2 {
  display: table-cell;
  position: relative;
  top: -2px;
}

.pulse2 {
  position: absolute;
  right: 20px;
  top: 18px;
  font-size: 24px;
  background-color: #3972b7;
  color: #FFF;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  padding-left: 3px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.pulse2:after {
  content: "";
  width: 40px;
  height: 40px;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border: 2px solid #3972b7;
  border-radius: 50%;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  transition-delay: 0.1s;
}

.switch:hover .pulse2 {
  background-color: transparent;
  color: #3972b7;
}

.switch:hover .pulse2:after {
  opacity: 0;
}

.contentWrap {
  display: none;
}

.faq_table {
  width: 100%;
  display: table;
  padding: 10px 20px;
}

.color_g {
  color: #89b92a;
}

/*****************************************************************

	アクセス

*****************************************************************/
#accessmain {
  background-image: url(../images/access1.jpg);
}

#ac_left {
  float: left;
  width: 48%;
}

.free2 img {
  display: inline-block;
  vertical-align: middle;
}

.free2 p {
  display: inline-block;
  vertical-align: middle;
  padding-left: 20px;
  font-size: 32px;
  line-height: normal;
  color: #3972b7;
}

#ad {
  margin-top: 20px;
  font-size: 18px;
}

#ad span {
  font-size: 26px;
  display: block;
  margin-top: 10px;
}

#ac_right {
  float: right;
  width: 48%;
}

.bo {
  border-top: 1px solid #313233;
}

.bo td,
.bo th {
  border-bottom: 1px solid #313233;
}

#map {
  width: 100%;
  height: 500px;
  position: relative;
  z-index: 10;
}

.map_div {
  width: 100%;
  height: 500px;
}

.map_div iframe {
  width: 100%;
  height: 100%;
}

#bg {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
  top: 0;
  left: 0;
}

/*****************************************************************

	お問い合わせ

*****************************************************************/
#contactmain {
  background-image: url(../images/contact1.jpg);
}

#contact_form {
  margin-top: 40px;
}

#contact_form li {
  padding: 30px 10px;
  display: table;
  width: 100%;
  background-color: #fafafa;
  border-bottom: 1px dashed #686869;
}

#contact_form li:nth-child(2n) {
  background-color: #FFF;
}

.cell1 {
  display: table-cell;
  vertical-align: middle;
  width: 300px;
  font-size: 18px;
  color: #3972b7;
}

.cell2 {
  display: table-cell;
  vertical-align: middle;
}

.hissu {
  color: #ff4f01;
  padding-left: 10px;
  font-size: 14px;
}

.size {
  width: 100%;
  height: 40px;
}
.size2 {
  width: 16%;
  height: 40px;
}

.area {
  width: 100%;
  height: 200px;
}

.schedule_box {
  display: flex;
  align-items: baseline;
  column-gap: 10px;
}

.calendar_wrap {
  position: relative;
  height: 40px;
}

.calendar_wrap::after {
  content: url(../images/calendar.png);
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  line-height: normal;
  letter-spacing: normal;
}

.calendar {
  width: 100%;
  max-width: 200px;
  height: 40px;
}

.pull {
  width: 100%;
  max-width: 180px;
  height: 40px;
  padding: 0 5px;
}

.c-ff4f01 {
  color: #ff4f01;
}

.hope {
  width: 71px;
  text-align: right;
}

#sub input {
  margin: 60px auto 0;
  display: block;
  background-color: #FFF;
  color: #3972b7;
  border: 1px solid #3972b7;
  width: 280px;
  padding: 15px;
  font-size: 16px;
}

.contact_text01 {
  text-align: center;
  font-size: 22px;
  color: #a40000;
  font-weight: 700;
}

.contact_text02 a {
  color: #ff4f01;
  border-bottom: 1px solid #ff4f01;
}

.contact_text02 a:hover {
  text-decoration: unset;
}

.privacy_box {
  width: 94%;
  max-width: 960px;
  margin: 0 auto;
  height: 500px;
  overflow-y: scroll;
  background-color: #fafafa;
  padding: 60px 80px;
}

.google_text {
  text-align: center;
}

/***/
.bb_midashi2 {
  color: #3972b7;
  font-size: 24px;
  line-height: normal;
  padding-bottom: 10px;
  border-bottom: 1px dashed #59595a;
}

.tap {
  display: none;
}

/* 歯科矯正治療における一般的なリスクと副作用 */
#riskmain {
  background-image: url(../images/1or1.jpg);
}

/******************************

	20170810追加
	
*******************************/
.w200 p {
  width: 180px;
  height: 180px;
  border: 1px dashed #3972b7;
  text-align: center;
  color: #3972b7;
  font-size: 24px;
  line-height: 1.5em;
  border-radius: 50%;
  padding-top: 55px;
}

.w200 p span {
  display: block;
  font-size: 42px;
}

.three li .width2 {
  width: 97%;
}

.three li:nth-child(2) .width2 {
  margin: 0 auto;
}

.three li:nth-child(3) .width2 {
  float: right;
}

#junbi {
  text-align: center;
  font-weight: bold;
  font-size: 24px;
  padding: 80px 0 40px;
}

.pnone {
  padding: 0 !important;
}

.block640 {
  padding: 0 !important;
}

.title h2 span {
  font-size: 20px !important;
}

/*******************/
.gree_flex {
  display: flex;
  justify-content: space-between;
}

.gree_left {
  width: 65%;
}

.gree_right {
  width: 30%;
}

.inline_block {
  display: inline-block;
}

.max_img100 img {
  max-width: 100%;
  height: auto;
}

/*********************************************************/
.new_table {
  width: 100%;
}

.new_table tr:nth-child(1) th,
.new_table tr:nth-child(1) td {
  background-color: #3972b7;
  color: #FFF;
  padding: 10px 0;
}

.new_table th {
  width: 120px;
}

.new_table th,
.new_table td {
  font-size: 18px;
  padding: 15px 0;
  text-align: center;
  border: 1px solid #EEE;
}

.t_color {
  color: #3972b7;
}

.table_flex {
  display: flex;
  flex-wrap: wrap;
}

.table_flex p {
  margin-right: 20px;
  font-size: 15px;
}

@media only screen and (max-width: 1024px) {
  .new_table th {
    width: 80px;
  }
  .new_table th,
  .new_table td {
    font-size: 16px;
  }
}

@media only screen and (max-width: 640px) {
  .new_table th,
  .new_table td {
    font-size: 14px;
  }
  .table_flex p {
    font-size: 14px;
  }
}

/* PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1700px) {
  .pc_none {
    display: none;
  }
  .pctab_none {
    display: none;
  }
  .pcblock {
    display: block;
  }
}

@media only screen and (max-width: 1600px) {
  /*********/
  #list {
    margin: 130px auto 0;
  }
  #list li {
    float: left;
    width: 33.33%;
    margin: 7px 0;
  }
  #list .width {
    width: 98%;
    padding: 40px 40px;
    color: #FFF;
    height: 400px;
    position: relative;
  }
  .title {
    font-size: 18px;
    line-height: normal;
  }
  .title span {
    font-size: 26px;
  }
  .min {
    min-height: 200px;
    margin-top: 20px;
  }
  .more {
    text-align: right;
  }
  .more a {
    color: #FFF;
    text-decoration: none;
    width: 200px;
    text-align: center;
    padding: 5px 0;
    border: 1px solid #FFF;
    display: block;
    float: right;
  }
  .pl2 {
    padding-left: 80px;
  }
  #topimg {
    padding-bottom: 240px;
  }
  /********/
  #top50 li .width {
    height: 400px;
    padding: 40px;
  }
}

@media only screen and (max-width: 1500px) {
  /***********************/
  /**********/
  .flexslider {
    height: 450px;
  }
  #toptitle {
    top: 200px;
  }
  #toptitle img {
    width: 100%;
    height: auto;
    max-width: 960px;
  }
  #fade1,
  #fade2,
  #fade3 {
    height: 450px;
  }
  /*****************************************************************

	院長ご挨拶

*****************************************************************/
  .main_size {
    height: 300px;
  }
  #title {
    text-align: center;
    padding-top: 120px;
    font-size: 48px;
    line-height: normal;
    color: #FFF;
    text-shadow: 0 0 7px #000;
  }
}

@media only screen and (max-width: 1400px) {
  /**********/
  #cy_nav li:nth-child(1) {
    float: none;
    width: 100%;
  }
  #cy_nav li:nth-child(1) a {
    border-bottom: 0;
    border-right: 0;
  }
  #cy_nav li {
    float: left;
    width: 20%;
    height: 50px;
  }
  #cy_nav li:nth-child(n+2) a {
    border-bottom: 0;
  }
  #cy_nav li:nth-child(6) a {
    border-right: 0;
  }
  #cy_nav li:nth-child(n+7) a {
    border-bottom: 1px solid #3972b7;
  }
  #cy_nav a {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    color: #000;
    text-decoration: none;
    border-style: solid;
    border-width: 1px 1px 1px 0;
    border-color: #3972b7;
    font-size: 12px;
  }
  #cy_nav li:last-child a {
    border-width: 0 1px 1px 0;
  }
  /*********/
  #list {
    margin: 120px auto 0;
  }
  #list li {
    float: left;
    width: 33.33%;
    margin: 7px 0;
  }
  #list .width {
    width: 98%;
    padding: 40px 20px;
    height: 350px;
    position: relative;
  }
  .title {
    font-size: 16px;
  }
  .title span {
    font-size: 22px;
  }
  .min {
    min-height: 170px;
    margin-top: 20px;
  }
  .more {
    text-align: right;
  }
  .more a {
    width: 150px;
    float: right;
  }
  .pl2 {
    padding-left: 80px;
  }
  #topimg {
    padding-bottom: 190px;
  }
  /********/
  #top50 li .width {
    padding: 40px 20px;
    height: 350px;
  }
  /****/
  .mini20 {
    margin-top: 20px !important;
  }
  #time {
    font-size: 16px;
    margin-top: 20px;
  }
  /********/
  .midashi_min {
    min-height: 60px;
  }
  .min3 {
    min-height: 340px;
  }
  .midashi3 {
    text-align: center;
    font-size: 16px;
    color: #3972b7;
    padding-top: 5px;
    line-height: normal;
  }
}

@media only screen and (max-width: 1250px) {
  .top_midashi {
    gap: 15px;
    font-size: 20.5px;
  }
  .midashi66 {
    font-size: 41px;
  }
  .midashi48 {
    font-size: 36px;
  }
  .midashi35 {
    font-size: 29px;
  }
  .midashi32 {
    font-size: 23px;
  }
  .midashi30 {
    font-size: 22px;
  }
  .time_table tr td {
    font-size: 17px;
  }
}

@media only screen and (max-width: 1200px) {
  /***********************/
  /**********/
  .flexslider {
    height: 380px;
  }
  #toptitle {
    top: 150px;
  }
  #toptitle img {
    width: 100%;
    height: auto;
    max-width: 780px;
  }
  #fade1,
  #fade2,
  #fade3 {
    height: 380px;
  }
  #cy_header {
    padding: 0 140px 0 50px;
  }
  /*****************************************************************

	院長ご挨拶

*****************************************************************/
  .main_size {
    height: 250px;
  }
  #title {
    text-align: center;
    padding-top: 100px;
    font-size: 32px;
    line-height: normal;
    color: #FFF;
    text-shadow: 0 0 7px #000;
  }
  /*****************************************************************

	インビザライン

*****************************************************************/
  /***/
  .right_box2 {
    padding-left: 0;
  }
  /*新規追加 20241205*/
  .top_contents01 li .midashi25 {
    font-size: 21px;
  }
  .icon_grid li p {
    font-size: 26px;
  }
}

@media only screen and (max-width: 1024px) {
  #cy_header {
    padding: 0 140px 0 25px;
    height: 100px;
  }
  .h_address {
    display: none;
  }
  .cy_container {
    width: 97%;
  }
  .font26 {
    font-size: 18px;
  }
  .font24 {
    font-size: 18px;
  }
  .font22 {
    font-size: 18px;
  }
  .font20 {
    font-size: 16px;
  }
  .font18 {
    font-size: 14px;
  }
  .font16 {
    font-size: 14px;
  }
  /***********************/
  /**********/
  .flexslider {
    height: 350px;
  }
  #toptitle {
    top: 150px;
  }
  #toptitle img {
    width: 100%;
    height: auto;
    max-width: 640px;
  }
  #fade1,
  #fade2,
  #fade3 {
    height: 350px;
  }
  /***********/
  #cy_nav {
    display: none;
  }
  /*********/
  #list {
    margin: 80px auto 0;
  }
  #list li {
    float: left;
    width: 49%;
    margin: 7px 0;
  }
  #list li:nth-child(2n) {
    float: right;
  }
  #list .width {
    width: 100%;
    padding: 20px 20px;
    height: 350px;
    position: relative;
  }
  .title {
    font-size: 14px;
  }
  .title span {
    font-size: 18px;
  }
  .min {
    min-height: 190px;
    margin-top: 20px;
  }
  .more {
    text-align: right;
  }
  .more a {
    width: 150px;
    float: right;
  }
  .pl2 {
    padding-left: 80px;
  }
  #topimg {
    padding-bottom: 220px;
  }
  #topimg img {
    width: 100%;
    height: auto;
    max-width: 380px;
  }
  /***/
  #list li:nth-child(1) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(2) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(3) .width {
    background-image: url(../images/top8.jpg);
  }
  #list li:nth-child(4) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(5) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(6) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(7) .width {
    background-image: url(../images/top12.jpg);
  }
  #list li:nth-child(8) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(9) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(10) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #list li:nth-child(11) {
    width: 100%;
    float: none;
  }
  #list li:nth-child(11) .width {
    width: 99%;
    background-image: url(../images/top16.jpg);
  }
  /**/
  #list li:nth-child(3n+1) {
    clear: none;
  }
  #list li:nth-child(2n+1) {
    clear: both;
  }
  /********/
  #top50 li {
    margin: 7px 0;
    float: left;
    width: 50%;
    color: #FFF;
  }
  #top50 li .width {
    width: 99%;
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 20px 20px;
    height: 300px;
  }
  #top50 li:nth-child(2) {
    float: right;
  }
  /****/
  #top50 li:nth-child(1) .width {
    background-image: none;
    background-color: #3972b7;
  }
  #top50 li:nth-child(2) .width {
    background-image: none;
    background-color: #3972b7;
  }
  /****/
  #time {
    font-size: 14px;
  }
  #time th {
    padding: 10px 0;
    width: 100px;
    border-right: 1px solid #FFF;
  }
  #time td {
    padding: 10px 0;
    text-align: center;
  }
  .free img {
    width: 30px;
    height: auto;
  }
  .free p {
    display: inline-block;
    vertical-align: middle;
    padding-left: 20px;
    font-size: 18px;
    line-height: normal;
  }
  /*********/
  #cy_footer {
    margin-top: 60px;
  }
  #f_logo img {
    width: 180px;
    height: auto;
  }
  #f_nav {
    text-align: center;
    margin-top: 20px;
  }
  #f_nav li {
    display: inline-block;
    margin: 10px 10px;
    font-size: 12px;
    position: relative;
  }
  #f_nav a {
    color: #3972b7;
    text-decoration: none;
  }
  #f_nav span {
    display: none;
  }
  #f_nav li:after {
    content: "";
    background-image: url(../images/line.png);
    background-position: 50% 0;
    background-repeat: no-repeat;
    background-size: auto 100%;
    height: 100%;
    width: 15px;
    position: absolute;
    right: -30px;
    top: 0;
  }
  /*****/
  #copy {
    text-align: center;
    padding: 10px 14px;
    color: #FFF;
    background-color: #3972b7;
    margin-top: 20px;
  }
  /*****************************************************************

	院長ご挨拶

*****************************************************************/
  .main_size {
    height: 200px;
  }
  #title {
    padding-top: 80px;
    font-size: 28px;
    line-height: normal;
    color: #FFF;
    text-shadow: 0 0 7px #000;
  }
  /***********/
  .center_midashi {
    text-align: center;
    font-size: 20px;
    line-height: normal;
  }
  .center_midashi span {
    padding: 0 20px;
  }
  .center_midashi:after {
    content: "";
    border-bottom: 1px solid #3972b7;
    position: absolute;
    left: 0;
    top: 15px;
    z-index: 1;
    width: 100%;
    display: block;
  }
  /*********/
  #g_table {
    display: block;
    width: 100%;
    margin-top: 40px;
  }
  #g_cell1 {
    display: block;
    text-align: center;
  }
  #g_cell1 img {
    width: 100%;
    height: auto;
    max-width: 400px;
  }
  #g_cell2 {
    display: block;
    vertical-align: middle;
    padding-left: 0;
    padding: 40px 0;
  }
  .name {
    font-size: 16px;
    text-align: right;
  }
  .name span {
    font-size: 22px;
  }
  /*********/
  .bg_gray {
    background-color: #f1f1f1;
    padding: 40px 0;
  }
  .three li {
    float: none;
    width: 100%;
    margin: 10px 0;
  }
  .three .width {
    width: 100%;
    border: 1px solid #3972b7;
    padding: 20px;
  }
  .icon img {
    height: 43px;
    width: auto;
  }
  .midashi3 {
    text-align: center;
    font-size: 18px;
    color: #3972b7;
    padding-top: 5px;
    line-height: normal;
  }
  .profile {
    margin-top: 20px;
    min-height: 0;
  }
  .profile p {
    padding: 5px 0 5px 15px;
    text-indent: -1em;
    border-bottom: 1px dashed #aaa;
  }
  /***********/
  .three li:nth-child(2) .width {
    margin: 0 auto;
  }
  .three li:nth-child(3) .width {
    float: none;
  }
  /***********/
  /*****************************************************************

	歯列矯正とは

*****************************************************************/
  .left35 {
    float: left;
    width: 35%;
  }
  .max500 {
    text-align: center;
  }
  .max500 img {
    width: 100%;
    height: auto;
    max-width: 540px;
  }
  .right60 {
    float: right;
    width: 60%;
  }
  .list {
    text-align: center;
  }
  .list li {
    display: inline-block;
    padding: 10px;
  }
  .table_list {
    display: table;
    width: 130px;
    height: 130px;
    text-align: center;
    border: 1px dashed #3972b7;
    color: #3972b7;
    border-radius: 50%;
  }
  .middle {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
    line-height: 1.4em;
  }
  .middle span {
    display: block;
  }
  /******/
  .center_mini {
    text-align: center;
    font-size: 16px;
    line-height: normal;
    position: relative;
    color: #3972b7;
  }
  .center_mini:after {
    content: "";
    border-bottom: 1px solid #3972b7;
    width: 150px;
    display: block;
    margin: 15px auto 0;
  }
  .right_img {
    float: right;
    margin: 0 0 40px 40px;
    width: 40%;
  }
  /********/
  .check {
    text-align: center;
    padding-bottom: 10px;
  }
  .check_box2 li {
    float: none;
    width: 100%;
    border: 2px solid #3972b7;
    padding: 20px;
    margin: 10px 0;
  }
  .check_box2 li:nth-child(2n) {
    float: none;
  }
  .check_box2 li:nth-child(2n+1) {
    clear: both;
  }
  .min2 {
    margin-top: 20px;
    min-height: 0;
  }
  .midashi_min {
    min-height: 0;
  }
  .min3 {
    margin-top: 20px;
    min-height: 0;
  }
  .midashi3 span {
    display: block;
  }
  /*************/
  #or_bg {
    height: 150px;
    margin-top: 40px;
  }
  /*************/
  .list2 li {
    float: none;
    width: 100%;
    display: table;
    margin-top: 40px;
  }
  .l_cell1 {
    display: table-cell;
    vertical-align: top;
  }
  .l_cell2 {
    display: table-cell;
    vertical-align: top;
    padding-left: 40px;
  }
  .list_midashi {
    font-size: 18px;
    color: #3972b7;
  }
  .list_midashi:after {
    content: "";
    border-bottom: 1px solid #3972b7;
    width: 100px;
    display: block;
    padding-top: 10px;
  }
  .list2 li:nth-child(2n) {
    float: right;
  }
  .list2 li:nth-child(2n+1) {
    clear: both;
  }
  /******/
  .left48 {
    float: left;
    width: 48%;
  }
  .img_max {
    position: relative;
    z-index: 10;
  }
  .img_max img {
    width: 100%;
    height: auto;
  }
  .bg_text {
    background-color: #fafafa;
    width: 100%;
    max-width: 94%;
    margin: -60px auto 0;
    position: relative;
    z-index: 100;
    padding: 40px;
  }
  .bb_midashi {
    font-size: 20px;
    line-height: normal;
    color: #3972b7;
    text-align: center;
  }
  .bb_midashi:after {
    content: "";
    display: block;
    border-bottom: 1px solid #3972b7;
    width: 150px;
    margin: 5px auto 0;
  }
  .min4 {
    min-height: 200px;
  }
  .right48 {
    float: right;
    width: 48%;
  }
  /****************/
  .posi_left48 {
    display: none;
    position: static;
    width: 100%;
    z-index: 10;
    text-align: center;
  }
  .posi_left48 img {
    width: 100%;
    height: auto;
    max-width: 480px;
  }
  .right_box {
    max-width: 100%;
    padding: 40px;
    float: none;
    margin-top: 0;
  }
  /*************/
  #or_bg2 {
    height: 150px;
    margin-top: 40px;
  }
  /*************/
  .rei_left {
    float: left;
    width: 75.2%;
  }
  .rei_left li {
    float: left;
    width: 33.33%;
    margin: 5px 0;
  }
  .rei_left .width {
    width: 97%;
    display: table;
  }
  .rei_midashi {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    color: #3972b7;
    font-size: 16px;
    line-height: normal;
  }
  .rei_left img {
    width: 100%;
    height: auto;
  }
  /********/
  .rei_left li:nth-child(1) .width {
    border: 1px solid #3972b7;
    height: 130px;
  }
  .rei_left li:nth-child(2) .width,
  .rei_left li:nth-child(5) .width {
    margin: 0 auto;
  }
  .rei_left li:nth-child(3n) .width {
    float: right;
  }
  .rei_left li:nth-child(3n+1) {
    clear: both;
  }
  /********/
  /************/
  .rei_right {
    float: right;
    width: 24%;
  }
  .rei_right img {
    width: 100%;
    height: auto;
  }
  /*****************************************************************

	小児矯正とは

*****************************************************************/
  #child_bg {
    background-image: none;
    padding-top: 0;
    margin-top: 40px;
  }
  #child_bg .white_t {
    color: #000;
  }
  #child_bg .center_mini.white_t {
    color: #3972b7;
  }
  #child_bg .white_after:after {
    border-color: #3972b7;
  }
  /********/
  .four li {
    float: left;
    width: 50%;
    padding: 10px;
  }
  .bg_text2 {
    background-color: #fafafa;
    width: 100%;
    max-width: 94%;
    margin: -30px auto 0;
    position: relative;
    z-index: 100;
    padding: 20px;
  }
  .min5 {
    min-height: 180px;
  }
  /*************/
  #child_bg2 {
    height: 150px;
    margin-top: 40px;
  }
  /*************/
  .c_table {
    display: table;
    width: 100%;
  }
  /*****************************************************************

	インビザライン

*****************************************************************/
  .check_box4 li:nth-child(4n+1) {
    clear: both;
  }
  .check_box4 li:nth-child(2n+1) {
    clear: both;
  }
  .check_box4 li {
    float: none;
    width: 100%;
    margin: 15px 0;
    text-align: center;
  }
  .check_box4 li .midashi3 {
    margin-bottom: 10px;
  }
  .check_box4 li .width {
    width: 100%;
    border: 2px solid #3972b7;
    padding: 20px 20px;
  }
  .min6 {
    min-height: 0;
    margin-top: 0;
  }
  .min7 {
    min-height: 0;
    margin-top: 0;
  }
  #mouse li {
    float: left;
    width: 33.33%;
    padding: 20px 10px;
  }
  .mouse_img {
    text-align: center;
  }
  .mouse_img img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 305px;
    margin: 0 auto;
  }
  .blue {
    color: #3972b7;
    display: inline-block;
    padding-right: 20px;
  }
  .red {
    color: #a40000;
    display: inline-block;
  }
  .orange {
    color: #ff7e00;
  }
  .green {
    color: #32b16c;
  }
  /***********/
  .bg_g {
    background-color: #f1f1f1 !important;
  }
  .cy_table {
    display: table;
    width: 100%;
  }
  .in_left {
    display: table-cell;
    width: 300px;
    vertical-align: top;
  }
  .in_left img {
    width: 280px;
    height: auto;
  }
  .in_right {
    display: table-cell;
    vertical-align: top;
  }
  .number {
    font-size: 24px;
    line-height: normal;
    position: absolute;
    left: 0;
    top: 0;
  }
  .number:after {
    content: "";
    border-bottom: 1px solid #000;
    position: absolute;
    left: 4px;
    top: 30px;
    width: 60px;
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .num_t {
    padding: 30px 0 0 40px;
    font-size: 16px;
    line-height: normal;
  }
  /***/
  .right_box2 {
    padding-left: 0;
  }
  /*****************************************************************

	矯正治療を始める前の基礎知識

*****************************************************************/
  /*************/
  #basic_bg {
    height: 150px;
    margin-top: 40px;
  }
  .color_b {
    color: #3972b7;
  }
  /*************/
  #basic_bg2 {
    height: 150px;
    margin-top: 40px;
  }
  /*****************************************************************

	費用について

*****************************************************************/
  .cost {
    font-size: 12px;
  }
  .cost tr {
    background-color: #fafafa;
  }
  .cost tr:nth-child(2n) {
    background-color: #FFF;
  }
  .cost th {
    padding: 10px;
    font-weight: bold;
    border-top: 1px dashed #59595a;
  }
  .cost td {
    padding: 10px;
    text-align: center;
    border-top: 1px dashed #59595a;
    width: 70px;
  }
  .cost td span {
    display: block;
  }
  /*****************************************************************

	よくあるご質問

*****************************************************************/
  .accordion {
    margin: 0 0 10px;
    width: 100%;
  }
  .displayNone {
    display: none;
  }
  .switch {
    font-size: 14px;
    padding: 15px 60px 15px 15px;
  }
  .faq_cell1 {
    font-size: 16px;
  }
  .faq_cell2 {
    display: table-cell;
    position: relative;
    top: 0px;
  }
  .pulse2 {
    position: absolute;
    right: 20px;
    top: 13px;
    font-size: 18px;
    width: 30px;
    height: 30px;
    padding-left: 0;
  }
  .pulse2:after {
    width: 30px;
    height: 30px;
  }
  .switch:hover .pulse2 {
    background-color: transparent;
    color: #3972b7;
  }
  .switch:hover .pulse2:after {
    opacity: 0;
  }
  .contentWrap {
    display: none;
  }
  .faq_table {
    width: 100%;
    display: table;
    padding: 10px 20px;
  }
  .color_g {
    color: #89b92a;
  }
  /*****************************************************************

	アクセス

*****************************************************************/
  #ac_left {
    float: left;
    width: 48%;
  }
  .free2 img {
    display: inline-block;
    vertical-align: middle;
  }
  .free2 p {
    display: inline-block;
    vertical-align: middle;
    padding-left: 20px;
    font-size: 24px;
    line-height: normal;
    color: #3972b7;
  }
  #ad {
    margin-top: 20px;
    font-size: 14px;
  }
  #ad span {
    font-size: 16px;
    display: block;
    margin-top: 10px;
  }
  /*****************************************************************

	お問い合わせ

*****************************************************************/
  #contact_form {
    margin-top: 20px;
  }
  #contact_form li {
    padding: 10px 10px;
    display: table;
    width: 100%;
    background-color: #fafafa;
    border-bottom: 1px dashed #686869;
  }
  .cell1 {
    display: table-cell;
    vertical-align: middle;
    width: 200px;
    font-size: 14px;
    color: #3972b7;
  }
  .cell2 {
    display: table-cell;
    vertical-align: middle;
  }
  .hissu {
    color: #ff4f01;
    padding-left: 10px;
    font-size: 14px;
  }
  .size {
    width: 100%;
    height: 40px;
  }
  .area {
    width: 100%;
    height: 200px;
  }
  #sub input {
    margin: 20px auto 0;
    width: 280px;
    padding: 10px;
    font-size: 14px;
  }
  /***/
  .bb_midashi2 {
    font-size: 18px;
    padding-bottom: 10px;
  }
  /*************/
  .three li .width2 {
    width: 100%;
  }
  .three li:nth-child(2) .width2 {
    margin: 0 auto;
  }
  .three li:nth-child(3) .width2 {
    float: none;
  }
  /*新規追加 20241205*/
  .top_contents01 li .midashi25 {
    font-size: 18px;
  }
  .top_price_box {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
    width: 80%;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 740px) {
  #cy_header {
    padding: 0 0 0 25px;
    height: 80px;
  }
  .main {
    background: url(../images/sp/main.jpg) center/cover;
    height: 122vw;
  }
  .catch {
    width: 77vw;
    right: unset;
    top: 4.7%;
    left: 50%;
    transform: translateX(-50%);
  }
  .sp_block740 {
    display: block;
  }
  .none740 {
    display: none;
  }
  /* #logo img {
    max-width: 210px;
  } */
  #logo img:nth-child(1) {
    display: none;
  }
  #logo img:nth-child(2) {
    display: block;
    width: 100%;
    max-width: 185px;
  }
  .top_midashi div {
    text-align: center;
  }
  .top_midashi {
    align-items: center;
    gap: 10px;
    line-height: normal;
  }
  .midashi66 {
    font-size: 30px;
    line-height: normal;
  }
  .midashi48 {
    font-size: 29px;
  }
  .midashi35 {
    font-size: 19px;
  }
  .midashi32 {
    font-size: 17px;
  }
  .midashi30 {
    font-size: 16px;
  }
  .top_midashi div span:after {
    width: 5px;
    height: 5px;
  }
  .top_contents01 {
    column-gap: 25px;
    row-gap: 40px;
  }
  .time_table tr td:nth-child(1) {
    width: 21%;
  }
  .time_table tr td {
    font-size: 14px;
    padding: 15px 7px;
  }
  .time_table tr td:nth-child(n + 2) {
    width: 5%;
  }
  .banner_box {
    display: none;
  }
  .sp_banner_box {
    display: grid;
    gap: 2vw;
  }
  #topcontrol {
    bottom: 18vw !important;
  }
  /*新規追加 20241205*/
  .top_contents01 {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 6vw;
    column-gap: 4vw;
  }
  .top_contents01 li .midashi25 {
    font-size: 16px;
    padding-top: 10px;
  }
  /*2024.12.05 TOP追加*/
  .none740 {
    display: none !important;
  }
  .top_sec01 {
    padding-top: 21vw !important;
  }
  .top_midashi02 {
    padding-bottom: 0;
    line-height: 1.7em;
    margin: 0 auto;
  }
  .fast_img01 {
    bottom: -10%;
    right: unset;
    left: 50%;
    transform: translateX(-50%);
    width: 86.2vw;
  }
  .fast_img02 {
    display: none;
  }
  .sp_fast_img02 {
    display: block;
    position: absolute;
    top: 31%;
    left: 50%;
    transform: translateX(-50%);
    width: 79vw;
  }
  .top_price_box .price_box02 .top_box .price .number_text {
    font-size: 90px;
  }
  .top_price_box .price_box02 .top_box .price div .font0 {
    font-size: 35px;
    margin-top: 7px;
  }
  .top_price_box .price_box02 .top_box .price div span:nth-child(1) {
    font-size: 17px;
    padding: 5px 10px;
  }
  .top_price_box .price_box02 .top_box h4 {
    font-size: 26px;
  }
  .icon_grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 80px;
    width: 80%;
    margin: 0 auto;
  }
  .top_price_box {
    grid-template-columns: repeat(1, 1fr);
    gap: 35px;
    width: 100%;
    margin: 0 auto;
  }
  .top_price_box .price_box02 .bottom_box .grid {
    grid-template-columns: 30px 1fr;
    gap: 7px;
    justify-content: center;
    margin: 0 auto;
  }
  .top_price_box .price_box02 .bottom_box .grid p {
    position: relative;
    top: 5px;
  }
  .top_price_box .price_box02 .bottom_box .midashi25 {
    margin: 0 auto 20px;
    padding: 1px 20px;
    font-size: 18px;
  }
  .top_price_box .price_box02 .bottom_box .grid {
    width: fit-content;
  }
  .top_price_box .price_box02 .bottom_box .grid .serif {
    font-size: 65px;
  }
  .top_price_box .price_box02 .bottom_box .grid .serif span {
    font-size: 35px;
  }
  .top_price_box .price_box02 .bottom_box .grid .text_content {
    font-size: 24px;
    display: inline-block;
    width: 34px;
  }
  .top_price_box .price_box02 .bottom_box .grid div span {
    padding: 5px;
    font-size: 19px;
  }
  .top_price_box .price_box02 .bottom_box .grid .text_content:after {
    top: -21px;
    left: 0;
    font-size: 13px;
    width: 100%;
  }
  .top_price_box .price_box02 .top_box {
    padding: 30px 25px 5px;
  }
  .top_price_box .price_box02 .bottom_box {
    padding: 35px 25px;
  }
  .icon_grid li p {
    font-size: 20px;
  }
  .icon_grid li:nth-child(3) {
    padding: 75px 25px 40px;
  }
  /*お問い合わせ*/
  .calendar {
    max-width: 120px;
  }
}

@media only screen and (max-width: 640px) {
  body {
    font-size: 12px;
  }
  .cy_container {
    width: 94%;
  }
  .pc_none {
    display: block;
  }
  .pctab_none {
    display: none;
  }
  .container97 {
    width: 94%;
  }
  .container1820 {
    width: 94%;
  }
  .container1450 {
    width: 94%;
  }
  #topcontrol {
    font-size: 24px;
    width: 90px;
    height: 90px;
    padding-top: 18px;
  }
  #topcontrol p {
    font-size: 10px;
    line-height: normal;
    margin-top: 0;
  }
  /***********************/
  /**********/
  .flexslider {
    height: 250px;
  }
  #toptitle {
    top: 100px;
  }
  #toptitle img {
    width: 100%;
    height: auto;
    max-width: 480px;
  }
  #fade1,
  #fade2,
  #fade3 {
    height: 250px;
  }
  #fade1 {
    background-image: url(../images/sp1.jpg);
  }
  #fade2 {
    background-image: url(../images/sp2.jpg);
  }
  #fade3 {
    background-image: url(../images/sp3.jpg);
  }
  /*********/
  #list {
    margin: 10px auto 0;
  }
  #list li {
    float: none;
    width: 100%;
    margin: 5px 0;
  }
  #list li:nth-child(2n) {
    float: none;
  }
  #list .width {
    width: 100%;
    padding: 20px 20px;
    height: auto;
  }
  .title {
    font-size: 12px;
  }
  .title span {
    font-size: 16px;
  }
  .min {
    min-height: 0;
    margin-top: 20px;
  }
  .more {
    text-align: center;
  }
  .more a {
    width: 100%;
    float: none;
    margin: 20px auto 0;
  }
  .pl2 {
    padding-left: 0;
  }
  #topimg {
    padding-bottom: 70px;
  }
  #topimg img {
    width: 100%;
    height: auto;
    max-width: 380px;
  }
  /***/
  #list li:nth-child(3) .width {
    display: none;
  }
  #list li:nth-child(7) .width {
    display: none;
  }
  #list li:nth-child(11) {
    width: 100%;
    float: none;
  }
  #list li:nth-child(11) .width {
    width: 99%;
    background-image: url(../images/top16.jpg);
    height: 200px;
    background-size: cover;
  }
  /**/
  /********/
  #top50 li {
    margin: 0px 0;
    float: none;
    width: 100%;
    color: #FFF;
  }
  #top50 li .width {
    width: 100%;
    padding: 20px 20px;
    height: auto;
  }
  #top50 li:nth-child(2) {
    float: right;
    margin-top: 5px;
  }
  /****/
  #time {
    font-size: 12px;
  }
  #time th {
    padding: 5px 0;
    width: 80px;
  }
  #time td {
    padding: 5px;
    text-align: center;
  }
  /*********/
  #cy_footer {
    margin-top: 60px;
    padding-bottom: 15vw;
  }
  #f_logo img {
    width: 250px;
    height: auto;
  }
  #f_nav {
    text-align: left;
    margin-top: 20px;
  }
  #f_nav li {
    display: block;
    margin: 15px 0;
    font-size: 12px;
    position: relative;
  }
  #f_nav a {
    color: #3972b7;
    text-decoration: none;
  }
  #f_nav span {
    display: none;
  }
  #f_nav li:after {
    display: none;
  }
  /*****/
  #copy {
    text-align: center;
    padding: 10px 0;
    color: #FFF;
    background-color: #3972b7;
    margin-top: 20px;
    font-size: 10px;
  }
  /*****************************************************************

	院長ご挨拶

*****************************************************************/
  .main_size {
    height: 150px;
  }
  #title {
    padding-top: 55px;
    font-size: 20px;
  }
  /***********/
  .center_midashi {
    font-size: 14px;
    background-color: #3972b7;
    color: #FFF;
    padding: 10px;
  }
  .center_midashi span {
    padding: 0;
    background-color: transparent;
  }
  .center_midashi:after {
    display: none;
  }
  /*********/
  #g_table {
    display: block;
    width: 100%;
    margin-top: 20px;
  }
  #g_cell1 {
    display: block;
    text-align: center;
  }
  #g_cell1 img {
    width: 100%;
    height: auto;
    max-width: 280px;
  }
  #g_cell2 {
    padding: 20px 0;
  }
  .name {
    font-size: 14px;
  }
  .name span {
    font-size: 18px;
  }
  /*********/
  .bg_gray {
    padding: 20px 0;
  }
  .three li {
    float: none;
    width: 100%;
    margin: 10px 0;
  }
  .midashi3 {
    font-size: 14px;
    margin-top: 10px;
  }
  .profile {
    margin-top: 20px;
    min-height: 0;
  }
  .profile p {
    padding: 5px 0 5px 15px;
    text-indent: -1em;
    border-bottom: 1px dashed #aaa;
  }
  /***********/
  .three li:nth-child(2) .width {
    margin: 0 auto;
  }
  .three li:nth-child(3) .width {
    float: none;
  }
  /***********/
  /*****************************************************************

	歯列矯正とは

*****************************************************************/
  .spnone {
    display: none;
  }
  .left35 {
    float: none;
    width: 100%;
  }
  .max500 img {
    max-width: 480px;
  }
  .right60 {
    float: none;
    width: 100%;
  }
  .list {
    text-align: center;
  }
  .list li {
    display: block;
    padding: 0;
    margin: 5px 0;
  }
  .table_list {
    display: block;
    width: 100%;
    height: auto;
    text-align: center;
    border: 1px dashed #3972b7;
    color: #3972b7;
    border-radius: 0;
    padding: 10px;
  }
  .middle {
    display: block;
    vertical-align: middle;
    font-size: 14px;
    line-height: 1.4em;
  }
  .middle span {
    display: none;
  }
  /******/
  .center_mini {
    text-align: center;
    font-size: 14px;
    line-height: normal;
    position: relative;
    color: #3972b7;
  }
  .center_mini:after {
    width: 40px;
    margin: 10px auto 0;
  }
  .right_img {
    float: none;
    margin: 0 0 20px;
    width: 100%;
  }
  /********/
  .check img {
    width: 20px;
    height: auto;
  }
  /*************/
  #or_bg {
    display: none;
  }
  /*************/
  .list2 li {
    float: none;
    width: 100%;
    display: block;
    margin-top: 20px;
  }
  .l_cell1 {
    display: none;
  }
  .l_cell2 {
    display: block;
    vertical-align: top;
    padding-left: 0;
  }
  .list_midashi {
    font-size: 14px;
    color: #3972b7;
    border-left: 1px solid #3972b7;
    padding-left: 10px;
  }
  .list_midashi:after {
    display: none;
  }
  .list2 li:nth-child(2n) {
    float: none;
  }
  .list2 li:nth-child(2n+1) {
    clear: both;
  }
  /******/
  .left48 {
    float: none;
    width: 100%;
  }
  .left48 img {
    direction: none;
  }
  .img_max {
    position: relative;
    z-index: 10;
  }
  .img_max img {
    width: 100%;
    height: auto;
  }
  .bg_text {
    width: 100%;
    max-width: 100%;
    margin: 0px auto 0;
    padding: 20px;
  }
  .bb_midashi {
    font-size: 16px;
  }
  .bb_midashi:after {
    content: "";
    display: block;
    border-bottom: 1px solid #3972b7;
    width: 150px;
    margin: 5px auto 0;
  }
  .min4 {
    min-height: 0;
  }
  .right48 {
    float: none;
    width: 100%;
    margin-top: 20px;
  }
  /****************/
  .posi_left48 {
    display: none;
    position: static;
    width: 100%;
    z-index: 10;
    text-align: center;
  }
  .posi_left48 img {
    width: 100%;
    height: auto;
    max-width: 480px;
  }
  .right_box {
    max-width: 100%;
    padding: 20px;
    float: none;
    margin-top: 0;
  }
  /*************/
  #or_bg2 {
    display: none;
  }
  /*************/
  .rei_left {
    float: none;
    width: 100%;
  }
  .rei_left li {
    float: left;
    width: 33.33%;
    margin: 5px 0;
  }
  .rei_left .width {
    width: 97%;
    display: table;
  }
  .rei_midashi {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 16px;
    line-height: normal;
  }
  .rei_left img {
    width: 100%;
    height: auto;
  }
  /********/
  .rei_left li:nth-child(1) .width {
    height: auto;
    width: 100%;
    padding: 5px;
  }
  .rei_left li:nth-child(1) {
    float: none;
    width: 100%;
  }
  .rei_left li:nth-child(2) .width,
  .rei_left li:nth-child(5) .width {
    margin: 0 auto;
  }
  .rei_left li:nth-child(3n) .width {
    float: none;
  }
  .rei_left li:nth-child(3n+1) {
    clear: none;
  }
  .rei_left li:nth-child(5) {
    clear: both;
  }
  /********/
  /************/
  .rei_right {
    float: none;
    width: 100%;
    text-align: center;
    background-color: #fafafa;
  }
  .rei_right img {
    width: 100%;
    height: auto;
    max-width: 200px;
    display: block;
    margin: 0 auto;
  }
  /*****************************************************************

	小児矯正とは

*****************************************************************/
  #child_bg {
    background-image: none;
    padding-top: 0;
    margin-top: 40px;
  }
  #child_bg .white_t {
    color: #000;
  }
  #child_bg .center_mini.white_t {
    color: #3972b7;
  }
  #child_bg .white_after:after {
    border-color: #3972b7;
  }
  /********/
  .four li {
    float: none;
    width: 100%;
    padding: 10px 0;
  }
  .bg_text2 {
    background-color: #fafafa;
    width: 100%;
    max-width: 100%;
    margin: 0 auto 0;
    position: relative;
    z-index: 100;
    padding: 20px;
  }
  .min5 {
    min-height: 0;
  }
  /*************/
  #child_bg2 {
    display: none;
  }
  /*************/
  .c_table {
    display: table;
    width: 100%;
  }
  /*****************************************************************

	部分矯正とは

*****************************************************************/
  #pa_bg {
    background-image: none;
    padding: 40px 0;
    margin-top: 40px;
    background-color: #fafafa;
  }
  #pa_banar {
    background-image: none;
    background-color: #3972b7;
    height: auto;
    margin: 20px auto 0;
    width: 94%;
    padding: 5px;
  }
  .bbb {
    border: 1px solid #FFF;
    height: 100%;
    display: block;
    width: 100%;
    padding: 10px;
  }
  .middle2 {
    display: block;
    vertical-align: middle;
    text-align: left;
  }
  .tap {
    display: block;
  }
  .tap a {
    display: block;
    background-color: #3972b7;
    color: #FFF;
    margin-top: 20px;
    padding: 10px;
    text-align: center;
  }
  /*****************************************************************

	インビザライン

*****************************************************************/
  .check_box4 li {
    float: none;
    width: 100%;
    margin: 10px 0;
    text-align: left;
  }
  .check_box4 li .midashi3 {
    margin-bottom: 10px;
  }
  #mouse li {
    float: none;
    width: 100%;
    padding: 20px 0;
  }
  .mouse_img {
    text-align: center;
  }
  .mouse_img img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 305px;
    margin: 0 auto;
  }
  /***********/
  .bg_g {
    background-color: #3972b7 !important;
  }
  .cy_table {
    display: table;
    width: 100%;
  }
  .in_left {
    display: none;
  }
  .in_right {
    display: table-cell;
    vertical-align: top;
  }
  .number {
    font-size: 24px;
    line-height: normal;
    position: absolute;
    left: 0;
    top: 0;
  }
  .num_t {
    padding: 30px 0 0 40px;
    font-size: 14px;
    line-height: normal;
  }
  /***/
  .right_box2 {
    padding-left: 0;
  }
  /*****************************************************************

	矯正治療を始める前の基礎知識

*****************************************************************/
  .center {
    text-align: left;
  }
  /*************/
  #basic_bg {
    height: auto;
    background-image: none;
    background-color: #3972b7;
    padding: 1px;
  }
  .color_b {
    color: #3972b7;
  }
  /*************/
  #basic_bg2 {
    display: none;
  }
  .minimt-20 {
    margin-top: 20px !important;
  }
  /*****************************************************************

	よくあるご質問

*****************************************************************/
  .faq_cell1 {
    font-size: 12px;
  }
  .faq_cell2 {
    display: table-cell;
    position: relative;
    top: 0px;
  }
  /*****************************************************************

	アクセス

*****************************************************************/
  #ac_left {
    float: none;
    width: 100%;
  }
  .free2 img {
    width: 30px;
    height: auto;
  }
  .free2 p {
    padding-left: 20px;
    font-size: 20px;
    line-height: normal;
    color: #3972b7;
  }
  #ad {
    font-size: 12px;
  }
  #ad span {
    font-size: 14px;
    margin-top: 5px;
  }
  #ac_right {
    float: none;
    width: 100%;
    margin-top: 20px;
  }
  #map {
    height: 230px;
  }
  .map_div {
    width: 100%;
    height: 230px;
  }
  .map_div iframe {
    width: 100%;
    height: 100%;
  }
  /*****************************************************************

	お問い合わせ

*****************************************************************/
  #contact_form {
    margin-top: 20px;
  }
  #contact_form li {
    padding: 0;
    display: block;
    width: 100%;
    background-color: transparent;
    border-bottom: 0;
  }
  .cell1 {
    display: block;
    vertical-align: middle;
    width: 100%;
    font-size: 12px;
    color: #3972b7;
    padding: 10px;
    background-color: #fafafa;
    font-weight: bold;
  }
  .cell2 {
    display: block;
    vertical-align: middle;
    padding: 10px;
  }
  .hissu {
    color: #ff4f01;
    padding-left: 10px;
    font-size: 12px;
  }
  .size {
    width: 100%;
    height: 40px;
  }
  .area {
    width: 100%;
    height: 200px;
  }
  #sub input {
    margin: 50px auto 0;
    width: 280px;
    padding: 10px;
    font-size: 14px;
  }
  /***/
  .bb_midashi2 {
    font-size: 14px;
    padding-bottom: 10px;
  }
  #junbi {
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    padding: 40px 0 20px;
  }
  .block640 {
    display: block;
  }
  .privacy_box {
    height: 250px;
    padding: 35px 25px;
  }
  .contact_text01 {
    font-size: 15px;
  }
  /*******************/
  .gree_flex {
    display: block;
  }
  .gree_left {
    width: 100%;
  }
  .gree_right {
    width: 100%;
    margin-top: 20px;
    text-align: center;
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
  }
  .inline_block {
    display: inline-block;
  }
}

/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width: 480px) {
  /**********/
  #cy_header {
    padding: 0 0 0 15px;
    height: 80px;
  }
  #logo img {
    max-width: 260px;
  }
  .flexslider {
    height: 220px;
  }
  #toptitle {
    top: 80px;
  }
  #toptitle img {
    width: 100%;
    height: auto;
    max-width: 320px;
  }
  #fade1,
  #fade2,
  #fade3 {
    height: 220px;
  }
  .block480 {
    display: block;
  }
  .br480 {
    display: block;
  }
  .midashi66 {
    font-size: 26px;
  }
  .container1280 {
    width: 90%;
  }
  .top_sec01 .container1280, .top_sec02 .container1280 {
    padding: 0;
  }
  .top_contents01 li .midashi30 {
    padding-top: 15px;
  }
  .midashi48 {
    font-size: 26px;
  }
  .top_midashi img {
    max-width: 21px;
  }
  .time_table tr td {
    font-size: 13px;
  }
  .schedule_box {
    display: grid;
    grid-template-columns: 71px 180px;
    row-gap: 10px;
  }
  .schedule_box p {
    text-align: right;
  }
  .calendar {
    max-width: 180px;
  }
  /*20241205*/
  .tel_and_web {
    width: 88%;
    grid-template-columns: repeat(1, 1fr);
    gap: 15px;
  }
}

/* 矯正治療見出し追加 */
.fz20 {
  font-size: 15px;
  text-align: center;
  margin-bottom: 15px;
}

.spblock {
  display: block;
}

/* 表追加 */
.price_box {
  overflow: auto;
  white-space: nowrap;
  width: 100%;
  margin: 0 auto;
  padding-top: 20px;
}

.price_box p {
  font-size: 10px;
}

.price_table {
  margin-top: 12px;
}

.price_table > tbody > tr > th.-nonbdr_r {
  border-right: none;
}

.price_table > tbody > tr > th.-nonbdr {
  border-left: none;
}

.price_table > tbody > tr > td {
  text-align: right;
}

.price_list {
  list-style: none;
  margin-top: 24px;
  font-size: 12px;
}

.price_list::after {
  content: "";
  display: block;
  clear: both;
}

.price_list > li {
  text-indent: -1em;
  padding-left: 1em;
}

.price_text {
  text-align: center;
}

.price_table.-kikan td {
  text-align: center;
}

.price_table_cap {
  padding: 5px 10px 0;
}

.price_table_cap ul li {
  list-style: none;
}

.vis-sp {
  display: none;
}

.u-table01 > tbody > tr > td {
  padding: 30px 10px;
  border: 1px solid #C4C4C4;
  vertical-align: middle;
  background: #fff;
}

.u-table01 > tbody > tr > th {
  padding: 30px 10px;
  border: 1px solid #C4C4C4;
  white-space: nowrap;
  background: #fafafa;
  font-weight: bold;
  text-align: left;
  width: 140px;
  vertical-align: middle;
}

.u-table01 {
  width: 100%;
}

@media only screen and (max-width: 999px) {
  .price_table > tbody > tr > th {
    white-space: normal;
  }
  .price_table > tbody > tr > td {
    width: 32%;
  }
  .u-table01 > tbody > tr > th {
    padding: 10px 7px;
  }
  .u-table01 > tbody > tr > td {
    padding: 10px 7px;
  }
}

@media only screen and (max-width: 699px) {
  .price {
    margin-bottom: 35px;
  }
  .price_table {
    margin-top: 5px;
    font-size: 12px;
    width: 577px;
  }
  .price_table > tbody > tr > td {
    min-width: 80px;
  }
  .price_table_cap {
    padding: 5px 0 0;
    font-size: 12px;
  }
  .price_list {
    font-size: 10px;
  }
  .vis-sp {
    display: block;
  }
  .u-table01 > tbody > tr > th {
    width: auto;
    padding: 3px 5px;
  }
}

@media only screen and (min-width: 1024px) {
  .fz20 {
    font-size: 20px;
    margin-bottom: 30px;
  }
  .price_box {
    padding-top: 40px;
  }
  .spblock {
    display: none;
  }
}
