@charset "utf-8";
/*ベース_______________________________________*/

img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
.dec_font_m {
    font-family: "メイリオ", Meiryo, sans-serif;
}

.iryo_cont {
  background: #fae4d3;
}
.iryo_cont p {
  width: 80%;
  max-width: 600px;
  margin: 0 auto;
}
.iryo_point { background:#fae4d3; padding-bottom:2rem; }
.iryo_point .feature_period {
  background: #fff;
  width: 80%;
  max-width: 600px;
  margin: 0 auto;
  padding-top: 5rem;
  border-radius: 0 0 10px 10px;
}

/*各コンテンツ毎*/
.block_00 .block_inner {
    width: 94%;
    margin: 0 auto;
}
.wrapper_page {
    position: relative;
    z-index: 1;
    /*width: 750px;*/
    width: 480px;
    max-width: 100%;
    margin: 0 0 0 0;
    background-color: #FAE4D3;
	height: 100vh;
  scrollbar-width: thin;
}

/*パーツ*/
.cap01 {
    font-size: min(calc(23 / 750 * 100vw), 16.4px);
    font-weight: bold;
    line-height: 1.333;
}
.cap02 {
    font-size: min(calc(23 / 750 * 100vw), 23px);
    line-height: 1.4167;
    padding-left: 1.669em;
    text-indent: -1.6em;
}
.cap02 .dec01 {
    color: #E87722;
}

基本の保障*/
.block_basic {
    background-color: #fff;
    padding: min(calc(110 / 750 * 100vw), 110px) 0 min(calc(100 / 750 * 100vw), 100px);
}
.block_basic .block_wrapper {
    border: min(calc(6 / 750 * 100vw), 6px) solid #e87722;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
}
@media screen and (min-width:961px) {
    .block_basic .block_wrapper,
    .block_special .block_wrapper {
    margin: 0 min(calc(40 / 750 * 100vw), 20px);
}
}

.block_basic .block_inner {
    max-width: 96.2%;
    padding-bottom: min(calc(20 / 750 * 100vw), 20px);
}
.block_basic .ttl02_1 {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #e87722;
    color: #fff;
    text-align: center;
    padding: .5em .25em .5em .5em;
    font-size: min(calc(44 / 750 * 100vw), 36px);
    font-weight: bold;
    line-height: 1;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    margin: -1.14em 0 .772em;
    letter-spacing: .05em;
}
.block_basic .ttl02_1 .dec01 {
    font-size: .72em;
    margin-left: 1em;
}
.block_basic .ttl_text {
    position: relative;
    z-index: 1;
    font-size: min(calc(36 / 750 * 100vw), 28px);
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
}
.block_basic .ttl_text::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    background-image: url("../img/medical2/dec_img02.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    bottom: -142.5%;
    right: 3.52%;
    transform: translate(0, 0);
    width: min(calc(275 / 750 * 100vw), 200px);
    aspect-ratio: 550 / 336;
}
.block_basic .ttl_text .dec01 {
    display: block;
    font-size: 1.3889em;
    color: #e87722;
    margin-bottom: min(calc(76 / 750 * 100vw), 76px);
}
.block_basic .box_point .wrapper_point {
    font-size: min(calc(32 / 750 * 100vw), 22px);
    position: relative;
    z-index: 0;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    background: #fae4d3;
    padding: 1.75em 0 .9375em;
}
.block_basic .box_point h3 {
    position: absolute;
    z-index: 1;
    top: -.8333em;
    left: .6666em;
    width: fit-content;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #e87722;
    border-radius: 999px;
    padding: .333em 1.233em;
    font-size: .9375em;
    font-weight: bold;
    line-height: 1;
    color: #fff;
}
.block_basic .box_point .list_point {
    font-weight: bold;
    line-height: 1.7;
    letter-spacing: -.01em;
    padding-left: .93em;
}
.block_basic .box_point .list_point li {
    position: relative;
    z-index: 0;
    display: flex;
    align-items: center;
    gap: .2em;
}
.block_basic .box_point .list_point li::before {
    content: "";
    background-image: url("../img/medical2/dec_list01.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 1em;
    aspect-ratio: 33/34;
}
.block_basic .box_point .cap01 {
    margin-top: min(calc(11 / 750 * 100vw), 11px);
    padding: 0 1em 0 3em;
    text-indent: -2em;
    letter-spacing: .09em;
}

/*block_cheap
保険料が割安*/
.block_cheap {
    background-color: #fff;
    padding-top: 2rem;
    width: 94%;
    margin: 0 auto;
}
.block_cheap .block_inner {
    padding: min(calc(67 / 750 * 100vw), 40px) 2.816% min(calc(28 / 750 * 100vw), 28px);
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    background-color: #FAE4D3;
}
.block_cheap .block_inner.adjust01 {
    padding: 0;
    border-radius: 0;
    background-color: transparent;
}
.block_cheap .block_inner h2 {
    font-size: min(calc(34 / 750 * 100vw), 28px);
    font-weight: bold;
    line-height: 1.35;
    text-align: center;
    margin-bottom: .85em;
    letter-spacing: .055em;
}
.block_cheap .block_inner h2 .dec01 {
    display: block;
    width: fit-content;
    margin: 0 auto;
    background-color: #fff;
    color: #e87722;
    font-size: 1.15em;
    line-height: 1.17;
    padding: .325em 1.0em .425em;
    border-radius: 999px;
    margin-top: .3434em;
}
.block_cheap .block_inner h2 .dec01_l {
    font-size: 1.217em;
}
.block_cheap .block_inner .ttl_text {
    font-size: min(calc(28 / 750 * 100vw), 20px);
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    margin-bottom: 1.07em;
}
.block_cheap .block_inner .ttl_text .dec01 {
    color: #e87722;
}
.block_cheap .block_inner .unit_cheap {
    padding: min(calc(27 / 750 * 100vw), 27px) 2.985% min(calc(30 / 750 * 100vw), 30px);
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    background: #fff6d9;
}
.block_cheap .block_inner .unit_cheap h3 {
    font-size: min(calc(36 / 750 * 100vw), 28px);
    line-height: 1.75;
    text-align: center;
    font-weight: bold;
    margin-bottom: .288em;
}
.block_cheap .block_inner .unit_cheap .list_cheap {
    font-size: min(calc(30 / 750 * 100vw), 21px);
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.467;
    display: flex;
    flex-flow: column;
    gap: .62em;
}
.block_cheap .block_inner .unit_cheap .list_cheap li {
    position: relative;
    z-index: 0;
    padding-left: 1.49em;
    letter-spacing: .03em;
}
.block_cheap .block_inner .unit_cheap .list_cheap li::before {
    content: "";
    position: absolute;
    top: .3em;
    left: .166em;
    background-image: url("../img/medical2/dec_list01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 1em;
    aspect-ratio: 33/34;
}
.block_cheap .block_inner .unit_cheap .list_cheap li .dec01 {
    color: #e87722;
    background: linear-gradient(transparent 95%, #e87722 95%);
}
.block_cheap .block_inner .unit_cheap .cap01 {
    margin-top: .97em;
    margin-left: .26em;
    letter-spacing: .085em;
}
.block_cheap .block_inner .unit_cheap + .cap01 {
    font-size: min(calc(22.5 / 750 * 100vw), 15.4px);
    margin-top: 1.04em;
    padding: 0 1em 0 1.5em;
    text-indent: -1.0em;
    letter-spacing: .11em;
}
.block_cheap figure {
    margin-top: min(calc(40 / 750 * 100vw), 30px);
}
.block_cheap .box_cap {
    margin-top: min(calc(26 / 750 * 100vw), 26px);
}
.block_cheap .box_cap .cap01 {
    letter-spacing: .075em;
}
.block_cheap .box_cap .cap01:nth-of-type(2) {
    margin-top: 1.75em;
}
.block_cheap .box_cap .cap01:nth-of-type(n+2) {
    text-indent: -1em;
    padding-left: 1em;
}

/*block_special
特約・特則*/
.block_special {
    background-color: #fff;
    padding: min(calc(110 / 750 * 100vw), 80px) 0 min(calc(48 / 750 * 100vw), 34px);
}
.block_special .block_wrapper {
    border: min(calc(6 / 750 * 100vw), 6px) solid #FED141;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
}
.block_special .block_inner {
    max-width: 96.2%;
    padding-bottom: min(calc(13 / 750 * 100vw), 13px);
}
.block_special .ttl02_1 {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #FED141;
    text-align: center;
    padding: .5em 0;
    font-size: min(calc(50 / 750 * 100vw), 36px);
    font-weight: bold;
    line-height: 1;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    margin: -1.12em 0 .772em;
}
.block_special .ttl02_1 .dec01 {
    font-size: .72em;
    margin-left: 1em;
}
.block_special .ttl02_1 .dec01_2 {
    margin-left: -.5em;
}
.block_special .ttl_text {
    position: relative;
    z-index: 1;
    font-size: min(calc(32 / 750 * 100vw), 26px);
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    margin-bottom: .8em;
    letter-spacing: .05em;
}
.block_special .ttl_text .dec01 {
    display: block;
    font-size: 1.3889em;
    color: #e87722;
}
.block_special .ttl_text + p {
    position: relative;
    z-index: 1;
    font-size: min(calc(30 / 750 * 100vw), 22px);
    font-weight: bold;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 1.38em;
    letter-spacing: 0.05em;
}
.block_add {
    margin: 8px;
    background:#e5f5f6;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
}
.block_add ul {
    padding: 20px 40px;
}
.block_add li {
    position: relative;
    color: #0097a9;
    font-weight: 600;
    border-radius: min(calc(12 / 750 * 100vw), 12px);
    font-size: min(calc(32 / 750 * 100vw), 28px);
    position: relative;
    line-height: 1.9;
    padding-left: 3rem;
}
.block_add li.block_add_last {
    text-align: right;
    color: #465953;
    margin-top: -20px;
    font-size: min(calc(28 / 750 * 100vw), 24px);
}
.block_add li::before {
    content: "";
    position: absolute;
    background-image: url("../img/medical2/check_blue.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 30px;
    height: 30px;
    top: 20%;
    left: 0;
}
.block_add li.block_add_last::before {
    display: none;
}
.medical_lady {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 14px;
    width: 90%;
    margin: 0 auto;
}
.medical_lady li {
    font-weight: bold;
    font-size: min(calc(32 / 750 * 100vw), 26px);
    padding: 0 4px;
    line-height: 1.6;
}
.medical_lady_text { width:70%; }
.medical_lady_img { width:30%; }
@media screen and (max-width: 699px) {
    .iryo_cont p {
        width: 100%;
    }
    .iryo_point {
        padding-bottom: 0;
    }
    .iryo_point .feature_period {
        width: 100%;
        border-radius: 0;
        padding-top: 10vw;
    }
    .block_cheap { width:100%; }
    .feature_period .block_cheap figure { width:100%; }
    .block_add ul { padding: 20px }
    .block_add li::before {
        content: "";
        position: absolute;
        background-image: url("../img/medical2/check_blue.png");
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center center;
        width: 24px;
        height: 24px;
        top: 20%;
        left: 0;
    }
    .medical_lady { width:94%; }
}