@charset "utf-8";

/*------
 * 大見出し（H2)
 *------*/
 .heading_border .title {
	display: table;
	padding: 0.25em 1em;
	text-align: center;
	border-bottom: 2px solid var(--h2_underline_l);
	margin: 0 auto .4em;
	position: relative;
	font-weight: bold;
	font-size: inherit;
	letter-spacing: 0.05em;
	line-height: 1.3;
  }
  .heading_border .title::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 50%;
	height: 2px;
	bottom: -2px;
	right: 0;
	background: var(--h2_underline_r);
  }
  h2.menu_underline{
	font-size:var(--h2_wide_fontsize);
	color:var(--font-main);
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.055em; /*av55/1000*/
	width: 100%;
	text-align: center;
	position: relative; /* 相対位置を設定 */
	display: block; /* インラインブロックにする */
  }
  h2.title,
  h2.title_underline{
	font-size: min(45px, calc(calc(45/750) * 100vw))!important;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: max(-1px, calc(-1 * (calc(1/750) * 100vw)));
	width: 100%;
	text-align: center;
	position: relative; /* 相対位置を設定 */
	display: inline-block; /* インラインブロックにする */
	color:var(--font-normal);
  }
  h2.title_underline{
	padding-bottom: min(13px,calc(calc(13/750)*100vw));
  }
  
  h2.menu_underline::after,
  h2.title_underline::after {
	content: ''; /* 擬似要素の内容 */
	position: absolute; /* 絶対位置で配置 */
	left: 0; /* 左端に配置 */
	bottom: 0; /* 下に配置 */
	width: 50%; /* 幅を50%に設定 */
	height: 2px; /* アンダーラインの高さ */
	background-color: var(--font-main); /* アンダーラインの色 */
  }
  h2.menu_underline::before,
  h2.title_underline::before {
	content: ''; /* 擬似要素の内容 */
	position: absolute; /* 絶対位置で配置 */
	right: 0; /* 右端に配置 */
	bottom: 0; /* 下に配置 */
	width: 50%; /* 幅を50%に設定 */
	height: 2px; /* アンダーラインの高さ */
	background-color: rgb(155, 15, 15); /* アンダーラインの色 */
  }
  h2.title small{
	font-size: var(--h2_fontsize_small);
  /*  padding-bottom: clamp(6px,calc(calc(13/750)*100vw),13px);*/
	line-height: 1.3;
  }
  h2.title_underline.fontwide,
  h2.title.fontwide{
	font-size: var(--h2_wide_fontsize);
  }
  h2.title.fontwide bold{
	font-weight:bold;
  }
  h2.title.fontwide .blue{
	color: var(--font-main);
  }
  span.line-chunk {
	display: inline-block;
  }

/*----------------------------
 *	spacer                     
 *----------------------------*/
 .spacer_normal,
 .spacer_middle,
 .spacer_read,.spacer_read_mdl,.spacer_read_btm,.spacer_read_head,
 .spacer_read_s,.spacer_read_h57{
   width: 100%;
   background:none;
 }
 
 .spacer_normal{
   height: var(--sp-h-normal);
 }
 .spacer_middle{
   height: var(--sp-h-middle);
 }
 .spacer_read{
   height: var(--sp-h-read);
 }
 .spacer_read_s{
   height: var(--sp-h-read_s);
 }
 .spacer_read_mdl{
   height: var(--sp-h-read_mdl);
 }
 .spacer_read_btm{
   height: var(--sp-h-read_btm);
 }
 .spacer_read_head{
   height: var(--sp-h-read_head);
 }
 .spacer_read_h57{
   height: var(--sp-h-read_h57);
 }
 .spacer_cta_tit{
   height: var(--sp-h-cta_h40);
 }
 .spacer_menu_tit{
   height: var(--sp-h-menu_h40);
 }
 .spacer_hline{
   border-right:1px solid var(--font-main);
   height: min(50px,calc(calc(50/750)*100vw));
   width: 50%;;
 }
 .spacer_hline:before{
   content:'';
   display: flex;
   justify-content: center;
   align-items: center;
   width:100%;
   ;
 }

/*cta*/
section[data-type="cta_ptn1"] .spacer_head,
section[data-type="cta_ptn1"] .spacer_btm{
  width: 100%;
  aspect-ratio: 750/100;
}
section[data-type="cta_ptn1"] .spacer_undertit{
  width: 100%;
  aspect-ratio: 750/40;
}
section[data-type="cta_ptn1"] .spacer_line{
  width: 100%;
  aspect-ratio: 670/41;
}
/*menu*/
section[data-type="innernav"] .spacer_head{
  width: 100%;
  aspect-ratio: 750/40;
}
section[data-type="innernav"] .spacer_btm{
  width: 100%;
  aspect-ratio: 750/50;
}
/*記事読み物*/
section[data-type="contents_read"] .spacer_head{
  width: 100%;
  aspect-ratio: 750/40;
}
section[data-type="contents_read"] .spacer_btm{
  width: 100%;
  aspect-ratio: 670/100;
}
section[data-type="contents_read"] .spacer_line_head{
  width: 100%;
  aspect-ratio: 670/40;
}
section[data-type="contents_read"] .spacer_line_headl{
  width: 100%;
  aspect-ratio: 670/60;
}
section[data-type="contents_read"] .spacer_line_headll{
  width: 100%;
  aspect-ratio: 670/75;
}
section[data-type="contents_read"] .spacer_line_heads{
  width: 100%;
  aspect-ratio: 670/20;
}
section[data-type="contents_read"] .spacer_line{
  width: 100%;
  aspect-ratio: 670/50;
}
section[data-type="contents_read"] .spacer_linel{
  width: 100%;
  aspect-ratio: 670/60;
}
section[data-type="contents_read"] .spacer_line_btm{
  width: 100%;
  aspect-ratio: 670/36;
}
section[data-type="contents_read"] .spacer_sec{
  width: 100%;
  aspect-ratio: 670/82;
}
section[data-type="contents_read"] .spacer_eff{
  width: 100%;
  aspect-ratio: 670/82;
}
/*囲みの内側　w590*/
section[data-type="contents_read"] .wrap_frame .spacer_line_head{
  width: 100%;
  aspect-ratio: 590/28;
}
section[data-type="contents_read"] .wrap_frame .spacer_linel{
  width: 100%;
  aspect-ratio: 590/60;
}
section[data-type="contents_read"] .wrap_frame .spacer_line{
  width: 100%;
  aspect-ratio: 590/50;
}
section[data-type="contents_read"] .wrap_frame .spacer_line_btm{
  width: 100%;
  aspect-ratio: 590/28;
}
section[data-type="contents_read"] .wrap_frame .spacer_sec{
  width: 100%;
  aspect-ratio: 590/82;
}
section[data-type="contents_read"] .wrap_frame .spacer_eff1{
  width: 100%;
  aspect-ratio: 590/18;
}
section[data-type="contents_read"] .wrap_frame .spacer_eff2{
  width: 100%;
  aspect-ratio: 590/32;
}
/*mdmaccordion*/
.modern-accordion .spacer{
  width: 100%;
  aspect-ratio: 620/21;
}
.modern-accordion .spacer2{
  width: 100%;
  aspect-ratio: 620/30;
}
/*faq*/
section[data-type="faq"] .spacer_head{
  width: 100%;
  aspect-ratio: 670/60;
}


/*all*/
.spacer_btm{
  width: 100%;
  aspect-ratio: 750/106;
}



/*------
* 読みものコンテンツ
*------*/

/* 以下個別CSS */

@media screen and (min-width: 768px) {
	.heading_checkresult {
		font-size: 30px;
		width: 650px;
		margin: 0 auto;
	}

	.btn__content__tel {
		background-color: #cff0f4;
		margin-top: 30px;
		padding: 15px;
		padding: 0 20px;
	}

	.btn__tel--comment {
		text-align: left;
		font-weight: bold;
		color: #242424 !important;
		font-size: 16px;
		font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
	}
}

.btn__content__tel {
	background-color: #cff0f4;
	margin-top: 30px;
}

.dl_reserve_tel .list_tel>.item a {
	background: linear-gradient(180deg, #2CD500 0%, #08A500 100%) !important;
	box-shadow: 0 5px 0 #007B19 !important;
}

.doctor .article_intro .intro p.txt01 {
	top: 30px;
	left: 575px;
	font-size: 22px;
	line-height: 1.4;
}

.doctor .article_intro .intro p.txt02 {
	text-align: right;
	right: 25px;
	bottom: 30px;
	font-size: 22px;
	line-height: 1.4;
}

@media only screen and (max-width: 767px) {

	.doctor .article_intro .intro p.txt01 {
		top: 61vw;
		left: 5vw;
		font-size: 16px;
		line-height: 1.4;
	}

	.doctor .article_intro .intro p.txt02 {
		right: 20px;
		bottom: 20px;
		font-size: 16px;
		line-height: 1.4;
	}

}

.arrow_box {
	display: block;
	position: relative;
	width: 350px;
	height: 30px;
	background: #ffffff;
	padding: 10px;
	border: 1px solid #CC0000;
	color: #CC0000;
	font-size: 20px;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	z-index: 1;
	top: 10px;
	font-family: "游ゴシック", "ヒラギノ角ゴ ProN", sans-serif !important;
	font-weight: bold;
	text-align: center;
	margin: auto;
}

.arrow_box:after {
	content: '';
	border: solid transparent;
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	top: 100%;
	left: 50%;
	border-color: rgba(255, 255, 255, 0);
	border-top-width: 15px;
	border-bottom-width: 15px;
	border-left-width: 16px;
	border-right-width: 16px;
	margin-left: -16px;
	border-top-color: #ffffff;
}

@media only screen and (max-width: 767px) {
	.arrow_box {
		display: block;
		position: relative;
		width: 250px;
		height: 20px;
		background: #ffffff;
		padding: 10px;
		border: 1px solid #CC0000;
		color: #CC0000;
		font-size: 15px;
		border-radius: 50px;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		z-index: 1;
		top: 5px;
		font-family: "游ゴシック", "ヒラギノ角ゴ ProN", sans-serif !important;
		font-weight: bold;
		text-align: center;
		margin: auto;
	}

	.arrow_box:after {
		border-color: rgba(255, 255, 255, 0);
		border-top-width: 15px;
		border-bottom-width: 15px;
		border-left-width: 16px;
		border-right-width: 16px;
		margin-left: -16px;
		border-top-color: #ffffff;
	}
}

@media screen and (min-width:767px) {
	.img_css {
		width: 90%;
	}
}

@media screen and (max-width: 768px) {
	#reserve {
		padding-top: 80px;
		margin-top: -80px;
	}
}

	body,
.wrap750 {
    width: 100%;
    max-width: 750px;
    margin: auto;
}

.row_img {
    text-align: center;
}

@media only screen and (min-width: 768px) {
    header {
        max-width: 750px;
        display: flex !important;
    }

    .common {
        padding: 8% 5%;
        box-sizing: border-box;
    }

    .inner {
        max-width: 750px;
        padding: 0;
        margin: 0 auto;
    }
}

/* lp_contents.cssから抜粋 */
/*.lp_content {
    padding-bottom: 20px;
}*/

.lp_mv {
    padding-top: 70px;
    background: #333;
    color: #fff;
}

.lp_mv_field .lp_mv_inner {
    display: flex;
    flex-direction: column-reverse;
    justify-content: center;
    align-items: center;
}

.heading,
.heading .title,
.heading_icon .title {
    font-feature-settings: "palt";
}

.heading {
    font-size: 25px;
    margin: 0 auto 0.8em;
    text-align: center;
    line-height: 1.4;
    padding-top: 0;
}

@media only screen and (max-width: 767px) {
  .heading {
      padding-top: 100px;
  }
}

.lp_mv_field .heading {
    display: flex;
    flex-direction: column;
    color: #545454;
    margin: 0 0 0 auto;
    padding: 5px 10px;
}

.lp_mv_field02 {
    padding: 8% 5% 5% 5%;
}

.lp_mv_field02 * {
    font-weight: bold;
}

.lp_mv_field02 *+p {
    margin-top: 1em;
}

.btn_common {
    display: block;
    margin-bottom: 20px;
    padding: 0 0.5em;
    background: linear-gradient(180deg, #d20000 0%, #340202 160%) 0% 0%;
    box-shadow: none;
    border-radius: 5px;
    text-align: center;
    font-size: 22px;
}

.btn_common .txt {
    position: relative;
    display: inline-block;
    padding: 0.9em 5px 0.9em 1.3em;
    color: #fff;
    font-size: inherit;
    line-height: 1.1;
    font-weight: bold;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
    margin-bottom: 0;
}

.btn_common .txt::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.6em);
    left: 0;
    width: 1em;
    height: 1em;
    background: url(../../images/lp-responsive/icn_reserve.png) no-repeat 0 50%;
    background-size: 100% auto;
}

.dl_reserve_tel .list_tel {
    display: flex;
    /* flex-wrap: wrap; */
    margin-top: 20px;
}

.dl_reserve_tel .list_tel>.item {
    width: calc(calc(100% - 10px) / 2);
    margin: 0 10px 15px 0;
}

.dl_reserve_tel .list_tel>.item a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 6em;
    padding: .5em 5px;
    background: linear-gradient(180deg, #2CD500 0%, #08A500 100%);
    box-shadow: 0 5px 0 #007B19;
    border-radius: 10px;
    text-align: center;
    color: #fff;
    box-sizing: border-box;
    line-height: 1.2;
}

.dl_reserve_tel .list_tel a .txt_clinic {
    display: block;
    font-size: 24px;
    line-height: 1.1;
    text-shadow: 2px 2px 0px rgba(32, 119, 172, 0.5);
}

.dl_reserve_tel dd {
    padding: 18px;
    background-color: #cff0f4;
    /* border-radius: 0 0 5px 5px; */
    border: 2px solid #0359C9;
}

.dl_reserve_tel .list_notes li+li {
    margin-top: 0.2em;
}

.dl_reserve_tel .list_notes li {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
}

.dl_reserve_tel .list_notes li {
    text-align: left;
    color: #242424;
    font-size: 13px;
    line-height: 1.4;
}

.list_notes li {
    position: relative;
    list-style: none;
    padding: 0 0 0 1.2em;
    margin-bottom: 0;
}

.heading_checkresult {
    font-size: 20px;
    text-align: center;
    margin-bottom: 5em;
}

@media only screen and (max-width: 767px) {
    .dl_reserve_tel .list_notes {
        display: block;
    }
}

.list_notes li::before {
    content: "※";
    position: absolute;
    left: 0;
    display: inline-block;
}

*+.list_notes {
    margin-top: .8em;
}

.txt_center_pc {
    text-align: center;
}

@media only screen and (min-width: 768px) {
    .arrow_box {
        display: block;
        position: relative;
        width: 350px;
        height: 30px;
        background: #ffffff;
        padding: 10px;
        border: 1px solid #CC0000;
        color: #CC0000;
        font-size: 20px;
        border-radius: 50px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        z-index: 1;
        top: 5px;
        font-family: "游ゴシック", "ヒラギノ角ゴ ProN", sans-serif !important;
        font-weight: bold;
        text-align: center;
        margin: auto;
    }
}

@media only screen and (max-width: 767px) {
    .arrow_box {
        display: block;
        position: relative;
        width: 250px;
        height: 20px;
        background: #ffffff;
        padding: 10px;
        border: 1px solid #CC0000;
        color: #CC0000;
        font-size: 15px;
        border-radius: 50px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        z-index: 1;
        top: 5px;
        font-family: "游ゴシック", "ヒラギノ角ゴ ProN", sans-serif !important;
        font-weight: bold;
        text-align: center;
        margin: auto;
    }
}

.cta_reserve .list_btn>li+li {
    margin-top: 20px;
}

.btn_common_pink {
    /* display: block; */
    margin-bottom: 5px;
    padding: 0 0.5em;
    background: linear-gradient(180deg, #FEA9C3 0%, #F6828B 100%);
    /* box-shadow: 0 5px 0 #70423D; */
    border-radius: 5px;
    text-align: center;
    font-size: 22px;
}

.btn_contact {
    display: block;
    background: url(../../images/lp-responsive/arrow-right.png) no-repeat 0 50%;
    background-position: 95%;
}

.btn_common_pink .txt {
    position: relative;
    display: inline-block;
    padding: 0.9em 5px 0.9em 1.3em;
    color: #fff;
    font-size: inherit;
    line-height: 1.1;
    font-weight: bold;
    font-family: "游ゴシック体", "Yu Gothic", "YuGothic", sans-serif;
    margin-bottom: 0;
}

.heading_border {
    font-size: 18px;
    margin-bottom: 1em;
}

.heading_border .title {
    display: block;
    padding-top: 4.25em;
    text-align: center;
    border-bottom: 2px solid #001d98;
    margin: 0 auto .4em;
    position: relative;
    font-weight: bold;
    font-size: inherit;
    letter-spacing: 0.05em;
    line-height: 1.5;
}

.heading_border .txt {
    font-size: 85%;
    font-weight: bold;
    text-align: center;
}


.heading_recommend {
    margin-top: 10px;
    text-align: center;
    font-size: 20px;
    line-height: 1.4;
}

.box_checklist {
    padding: 20px 0;
    font-weight: bold;
}

.box_checklist .heading_checklist {
    /* margin-top: 0; */
    font-size: 20px;
}

.heading_checklist {
    position: relative;
    margin: 0 0 0.5em;
    font-size: 20px;
    overflow: hidden;
}

.heading_checklist .title {
    position: relative;
    display: inline-block;
    padding: 0 .5em 0 0;
    font-size: inherit;
    line-height: 1.4;
    z-index: 2;
}

.box_checklist .col_list {
    margin: 0 0 20px 0px;
}

.box_checklist .heading_list {
    font-size: 17px;
}

.heading_list {
    margin-bottom: 0.5em;
    font-size: 18px;
    line-height: 1.4;
}

.heading_border .title::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 50%;
    height: 2px;
    bottom: -2px;
    right: 0;
    background: #bb0519;
}

@media only screen and (max-width: 767px) {

    .heading .fsize_24,
    .heading .fsize_24 .title,
    .heading.fsize_24,
    .heading.fsize_24 .title,
    .fsize_26,
    .fsize_26 *,
    .fsize_28,
    .fsize_28 * {
        font-size: 18px !important;
    }

    .fsize_18,
    .fsize_18 *,
    .fsize_20,
    .fsize_20 *,
    .fsize_22,
    .fsize_22 *,
    .fsize_24,
    .fsize_24 * {
        font-size: 15px !important;
    }
}

.box {
    border: 1px solid #555;
    padding: 1em;
    box-sizing: border-box;
}

.highlight {
    padding: 0 0.25em 0.25em;
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, #ffff00 20%, #ffff00 50%, rgba(255, 255, 255, 0) 50%);
}

*+.heading_icon {
    margin-top: 2em !important;
}

.heading_icon {
    margin: 0 0 1em 0;
    text-align: center;
    font-size: 18px;
}

.heading_icon .title {
    position: relative;
    padding: 0 1em;
    font-size: inherit;
    line-height: 1.4;
}

.heading_icon .title::before {
    content: "";
    position: absolute;
    top: 0.1em;
    left: 0;
    width: 12px;
    height: 28px;
    background: url(../../images/lp-responsive/s-n-img.png) no-repeat 0 0;
    background-size: 100% auto;
}

.box_col_pc {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin: 20px 0;
}

.box_col>.item,
.box_col_pc>.item {
    margin: 20px 0;
}

.box_col .row_txt,
.box_col_pc .row_txt {
    margin-top: 0.8em;
}

.box_col .heading_col,
.box_col_pc .heading_col {
    margin-bottom: 0.3em;
    text-align: center;
    line-height: 1.5;
}

@media screen and (min-width: 768px) {
    /*.lp_content {
        padding-bottom: 80px;
    }*/

    .heading {
        font-size: 40px;
        font-feature-settings: "palt";
        text-align: center;
    }

   /* .heading_border {
        font-size: 32px;
    }*/

    .heading_border .txt {
        font-size: 70%;
    }

    .heading_icon {
        font-size: 28px;
    }

    .heading_icon .title::before {
        width: 16px;
        background-size: auto;
    }

    .heading_arrow {
        padding-top: 1.2em;
        padding-bottom: .6em;
    }

    .heading_arrow {
        margin-bottom: 130px;
    }

    .heading_arrow::after {
        border-width: 80px 450px 0 450px;
    }

    /* 用語説明 */
    .dl_01 {
        flex-direction: row;
    }

    .dl_01 dt {
        width: 240px;
        padding: 0.5em;
        text-align: right;
    }

    .dl_01 dd+dt {
        margin-top: 0;
    }

    .dl_01 dd {
        width: 660px;
        padding: 0.5em 0.5em 0.5em 0;
    }

    /* グレー矢印 */
    .bg_arrow_gray {
        background: url(../../images/lp3img/about-panic_bg-flow.png) center 70% no-repeat;
        background-size: auto;
    }

    .dl_02 dt {
        padding: 20px 5px;
    }

    .dl_02 dt .title {
        font-size: 20px;
    }

    .dl_02 dd {
        padding: 30px;
    }
}

.heading_reason {
    background: url(../../images/lp2img/brain-logo-s.png) center top no-repeat;
    background-size: 60%;
    padding: 50px 0 6px 0px;
    border-bottom: 1px dashed #000;
    margin: 0 auto 30px;
    text-align: center;
}

.list_reason {
    display: inline-block;
}

.list_reason>li {
    position: relative;
    padding: 0 0 0 40px;
    counter-increment: count;
    text-align: left;
}

.list_reason>li+li {
    margin-top: 25px;
}

.list_reason>li::before {
    content: "0" counter(count) ".";
    position: absolute;
    top: 0em;
    left: 0;
    font-weight: bold;
    font-style: italic;
    font-size: 24px;
    line-height: 1;
}

.list_reason .heading {
    margin-bottom: .5em;
    text-align: left;
    font-size: 16px;
}

@media screen and (min-width: 768px) {
    .heading_reason {
        display: block;
        margin: 0 auto 2em;
        padding: 95px 0 0.5em;
        font-size: 24px;
        background: url(../../images/lp2img/brain-logo-s.png) center top no-repeat;
        margin-bottom: 40px;
    }

    .list_reason {
        padding-right: 20px;
        padding-left: 20px;
    }

    .list_reason>li {
        padding-left: 85px;
    }

    .list_reason>li+li {
        margin-top: 40px;
    }

    .list_reason .heading {
        font-size: 30px;
        line-height: 1.5;
    }

    .list_reason>li::before {
        top: -0.1em;
        font-size: 50px;
    }

    .list_reason {
        margin-bottom: 40px;
    }

    .list_reason .heading {
        margin: 0 0 15px 0;
    }

    .list_reason p {
        font-size: 18px;
    }
}

/*チェックボックスに変更*/

.list_checklist>li {
    text-indent: -1.4rem;
    padding-left: 2rem;
}

.box_checklist .list_checklist>li+li {
    margin-top: 0.8em;
}

.list_checklist>li+li {
    margin-top: 1em;
}

.list_checklist .label__checkbox {
    position: relative;
    font-feature-settings: "palt";
}

.list_checklist .checkbox {
    cursor: pointer;
    position: relative;
    margin-right: 1.4rem;
    width: 0;
}

.list_checklist .checkbox::before {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    content: "";
    position: absolute;
    top: -0.125rem;
    left: -0.3rem;
    width: 1rem;
    height: 1rem;
    z-index: 4;
}

.list_checklist .checkbox:checked:before {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
    height: 0.3rem;
    border-top-style: none;
    border-right-style: none;
    border-top-width: 3px;
    border-left-width: 3px;
    top: 3px;
}

.list_checklist .checkbox:after {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    content: "";
    position: absolute;
    top: -0.125rem;
    left: -0.5rem;
    width: 1rem;
    height: 1rem;
    cursor: pointer;
    z-index: 3;

}

.list_checklist .checkbox:checked:after {
    top: 0;
    left: -0.3rem;
}

/*色変更*/

.list_checklist .checkbox:checked:after {
    border: 2px solid #b80707;
    background: transparent;
}

.list_checklist .checkbox::before {
    border: 2px solid #b80707;
}

.list_checklist .checkbox:checked:before {
    border-color: #b80707;
    background: transparent;
}

/*白チェックリスト*/
.list_checklist.icn_white .checkbox::before {
    /* 	top: -0.3rem; */
}

.list_checklist.icn_white .checkbox:checked:after {
    border: 2px solid #fff;
}

.list_checklist.icn_white .checkbox::before {
    border: 2px solid #fff;
}

.list_checklist.icn_white .checkbox:checked:before {
    border-color: #fff;
    border-top-style: none;
    border-right-style: none;
    border-top-width: 3px;
    border-left-width: 3px;
}

/*グレーチェックリスト*/
.list_checklist.icn_white .checkbox::before {
    /* 	top: -0.3rem; */
}

.list_checklist.icn_gray .checkbox:checked:after {
    border: 2px solid #4b4b4b;

}

.list_checklist.icn_gray .checkbox::before {
    border: 2px solid #4b4b4b;
}

.list_checklist.icn_gray .checkbox:checked:before {
    border-color: #4b4b4b;
    border-top-style: none;
    border-right-style: none;
    border-top-width: 3px;
    border-left-width: 3px;
}

.col_list.list_checklist+.col_list.list_checklist {
    margin-top: 1em;
}

@media screen and (min-width: 768px) {
    .col_list.list_checklist+.col_list.list_checklist {
        margin-top: 0em;
    }

    .list_checklist .label__checkbox {
        font-size: 17px;
    }
}

/* TMSのテーブル用 */
table.tms {
	border-spacing: 0;
	border-collapse: separate;
	font-size: clamp(14px, 3vw, 21px);
}

table.tms th,
table.tms td {
	border-top: 1px solid #7C7CCA;
	border-left: 1px solid #7C7CCA;
}

table.tms th {
	padding: 5px 10px;
	background: #7C7CCA;
	color: #FFFFFF;
	font-size: clamp(18px, 3vw, 30px);
    letter-spacing: 0.1em;
	text-align: center;
	font-weight: 600;
}

table.tms th:nth-child(2) {
  border-left: 1px solid #fff;
}

table.tms tr:nth-child(even) th {
	background: #7C7CCA;
}

table.tms td {
	width: 690px;
	padding: min(20px, calc(calc(20/750) * 100vw));
	background: #EEEEEE;
	color: #000000;
	font-size:min(30px, calc(calc(30/750) * 100vw));
    letter-spacing: 0.1em;
    font-weight: bold;
	font-feature-settings: "palt";
  line-height: 1.3;
}

table.tms td:last-child {
  padding-left: min(40px, calc(calc(40/750) * 100vw));
}

/*.uchikeshi {
	font-size: clamp(12px, 3vw, 20px);
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}*/

table.tms tr:nth-child(even) td {
	background: #FCFCFC;
}

table.tms th:last-child,
 table.tms td:last-child {
	border-right: 1px solid #7C7CCA;
}

table.tms tr:last-child th,
 table.tms tr:last-child td {
	border-bottom: 1px solid #7C7CCA;
}

table.tms tr:first-child :first-child {
	border-top-left-radius: 15px;
}

table.tms tr:first-child :last-child {
	border-top-right-radius: 15px;
}

table.tms tr:last-child :first-child {
	border-bottom-left-radius: 15px;
}

table.tms tr:last-child :last-child {
	border-bottom-right-radius: 15px;
}

table.tms tr:not(:first-child) th,
 table.tms tr:not(:first-child) td {
	border-top: none;
}

.main__txt_nl {
	font-size: clamp(12px, 3vw, 20px);
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.6;
	padding-top: 20px;
}

section[data-type="contents_read"] .list__tms_txt li{
  font-size: min(30px, calc(calc(30/750) * 100vw));
  line-height: 1.3;
  margin-bottom: min(20px, calc(calc(20/750) * 100vw));
  position: relative;
}

section[data-type="contents_read"] .list__tms_txt li:last-child{
  margin-bottom: 0;
}

section[data-type="contents_read"] .list__tms_txt li::before{
  content: "・";
  position: absolute;
  top: 0;
    left: max(-20px, calc(-1 * (calc(20/750) * 100vw)));
    font-size: min(30px, calc(calc(30/750) * 100vw));
    display: inline-block;
}

/* 共通コンテンツ強制変更用 */

@media only screen and (min-width: 768px) {

    .access article {
        width: 690px !important;
        margin: 0 auto;
    }

    .doctor .article_doctor {
        width: 750px !important;
    }

    .intro img {
        width: 50%;
        border: 0;
        vertical-align: bottom;
    }


    .doctor .article_doctor figure figcaption {
        width: 100%;
    }

    .doctor .article_doctor figure {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        padding: 0 30px;
        margin-block-start: 0;
        margin-block-end: 0;
        margin-inline-start: 0;
        margin-inline-end: 0;
    }


    .doctor .article_doctor .heading_doctor .title_position {
        margin-bottom: 0.5em;
        font-size: 28px;
        text-align: left;
    }

    .doctor .article_doctor .heading_doctor .title_name {
        font-size: 45px;
        text-align: left;
        line-height: 1.2;
    }

    .doctor .article_doctor .heading_doctor {
        margin-bottom: 1.5em;
        padding: 0px 30px;
        text-align: left;
    }

}

/* TOPへ戻る */

.page__top a:hover {
    opacity: .5;
}

    .lp_mv_field.txt_long {
        display: block;
        padding-top: 174px;
        min-height: initial;
        background-size: 100% auto;
    }
	.lp_mv_field {
		position: relative;
		background: url(../../images/lp-responsive/mv_bg_sp.jpg) no-repeat;
	}
	.lp_mv_field.txt_long .lp_mv_inner {
        display: block;
        background-color: #F7F2EC;
    }

	.lp_mv_field .heading {
    display: flex;
    flex-direction: column-reverse;
    color: #545454;
    margin: 0 0 0 auto;
    padding: 20px 10px;
}

.lp_mv_field.txt_long .heading img {
        position: absolute;
        top: 20%;
        left: 60%;
    }

	.lp_mv_field .logo {
    max-width: 100px;
    margin: 5px auto 0 auto;
}

.heading_arrow {
    position: relative;
    margin-bottom: 60px;
    padding: .5em 5px 0 5px;
    background: #7c7cca;
    color: #fff;
    line-height: 1.4;
    letter-spacing: 0.1em;
    padding-top: min(60px, calc(calc(60/750) * 100vw));
    font-size: min(45px, calc(calc(45/750) * 100vw))
    ;
}
.heading_arrow::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    border: 375px solid transparent;
    border-top: 165px solid #7c7cca;
    border-bottom: 0;
}
.list_manga li{
	text-align: center;
}
.heading_icon .title::before {
    content: "";
    position: absolute;
    top: 0.1em;
    left: 0;
    width: 12px;
    height: 28px;
    background: url(../../images/lp-responsive/s-n-img.png) no-repeat 0 0;
    background-size: 100% auto;
}

@media screen and (max-width:767px) {
	.heading_arrow::after {
		content: "";
		position: absolute;
		top: 100%;
		left: 0;
		border: 50vw solid transparent;
		border-top: 22vw solid #7c7cca;
		border-bottom: 0;
	}
}

.btn_common .txt::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.6em);
    left: 0;
    width: 1em;
    height: 1em;
    background: url(../../images/lp-responsive/icn_reserve.png) no-repeat 0 50%;
    background-size: 100% auto;
}

.btn_common_pink .txt::before {
    content: "";
    position: absolute;
    top: calc(50% - 0.6em);
    left: 0;
    width: 1em;
    height: 1em;
    background: url(../../images/lp-responsive/icn_contact.png) no-repeat 0 50%;
    background-size: 100% auto;
}

.btn_contact {
    display: block;
    background: url(../../images/lp-responsive/arrow-right.png) no-repeat 0 50%;
    background-position: 95%;
}

.pdf-link:before {
    width: 44%;
    text-align: center;
    padding: 0.8em;
    border-radius: 4px;
    background: url(../../images/pdf.png) no-repeat left 2% top 50%;
    content: "";
    display: inline;
}

@media only screen and (min-width: 768px) {
    .doctor .article_intro .intro {
        width: 100%;
        height: auto;
        margin: 0 auto;
        background: url(../../images/doctor/dr_intro_bg.jpg) right top no-repeat;
    }
}

@media only screen and (min-width: 768px) {
    .doctor .article_intro .intro p.txt01 {
        top: 23px !important;
        left: 394px !important;
        font-size: 16px;
        line-height: 1.4;
    }
}

.doctor .article_intro .intro p.txt02 {
    text-align: right;
    right: 20px;
    bottom: 20px;
    font-size: 16px;
    line-height: 1.4;
}
:root{
    --col_white: #ffffff;
    --col_yellow: #ffe72f;
    --col_black: #111111;
    --col_green: #00b900;
    --col_gray: #eeeeee;
    --col_blue1: #3a3ab6;
    --col_lightblue: #83b0e3;
    --col_purple: #7c7cca;
    --col_purple2:#9696d4;
    --col_lightpurple: #e9eaff;
    --col_red: #ab0001;
    --col_black2: #0c164b;
    --col_blue: #0000AF;

    --contents-width: 750px;
    --header-width: 750px;
    --header-height: 70px;
    --footer-width: 100%;
    --all-width:100%;
    --read-width: 670px;
    --nav-height:50px; /**/

    --primary-color:#7c7cca;
    --secondary-color:#e9eaff;
    
    --drawer-bg: var(--primary-color);
    --footer-bg: var(--primary-color);
    --menu-border: var(--primary-color);
    --menu-body: var(--primary-color);
    --read-bg: var(--secondary-color);

    --header-bg: var(--col_white);
    --marker-y: var(--col_yellow);
    --font-normal: var(--col_black);

    --header-bg2: var(--col_gray);
    --accordion_bg: var(--col_purple2);
    --font-main: var(--col_blue1);
    --text-color: #1f2937;
    --border-color: #e5e7eb;
    --body_bg: var(--col_gray);
    --draccordion_span: var(--col_purple2);

    
/*font*/
--h2_underline_r: var(--col_red);
--h2_underline_l: var(--col_blue1);
--p_col: var(--col_black);

--nav_fontsize: clamp(16px,calc(calc(30/750)*100vw),30px);
--em_fontsize: clamp(17px,calc(calc(33/750)*100vw),33px);
--h2_fontsize_small: min(36px, calc(calc(36/750) * 100vw));
--p_fontsize: clamp(14px,calc(calc(25/750)*100vw),25px);
--h2_fontsize: clamp(16px,calc(calc(32/750)*100vw),32px);
--h2_wide_fontsize: min(45px, calc(calc(45/750) * 100vw));
--h2_mdl_fontsize: clamp(18px,calc(calc(30/750)*100vw),30px);   
--p_wide_fontsize: clamp(14px,calc(calc(25/750)*100vw),25px);       
--p_mdl_fontsize: clamp(14px,calc(calc(25/750)*100vw),25px);    
--dt_fontsize: min(36px, calc(calc(36/750) * 100vw)); 
--dd_fontsize: min(30px, calc(calc(30/750) * 100vw));    
--dd_fontsize_s: min(25px, calc(calc(25/750) * 100vw));  
--drcard_fontsize_s: clamp(10px,calc(calc(20/750)*100vw),20px);  
--drcard_fontsize_m: min(36px, calc(calc(36/750) * 100vw));
--drcard_fontsize_l: min(45px, calc(calc(45/750) * 100vw));

--font-yu-mincho: "YuMincho", "Yu Mincho", "游明朝", "Times New Roman", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "Sawarabi Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
--font-yu-gothic: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;

    /*spacer*/
    --sp-h-normal: clamp(21px,calc(calc(42/750)*100vw),42px);
    --sp-h-middle: clamp(36px,calc(calc(72/750)*100vw),72px);
    --sp-h-read: clamp(16px,calc(calc(33/750)*100vw),33px);
    --sp-h-read_s: clamp(11px,calc(calc(21/750)*100vw),21px);
    --sp-h-read_mdl: clamp(40px,calc(calc(80/750)*100vw),80px);
    --sp-h-read_head: clamp(25px,calc(calc(50/750)*100vw),50px);
    --sp-h-read_btm: clamp(50px,calc(calc(100/750)*100vw),100px);
    --sp-h-read_h57: clamp(27px,calc(calc(57/750)*100vw),57px);
    --sp-h-cta_h40: clamp(20px,calc(calc(40/750)*100vw),40px);
    --sp-h-menu_h40: clamp(20px,calc(calc(40/750)*100vw),40px);
    

    /*hight*/
    --accordion_h: clamp(calc(calc(100/750)*100vw),calc(calc(100/750)*100vw),100px);
}

 /* FV下 */
.contents_read{
    font-size: min(36px, calc(calc(36/750) * 100vw));
    font-weight: bold;
    line-height: 1.78;
    padding: 50px 30px 0px 30px;
    letter-spacing: min(5px, calc(calc(4/750) * 100vw));
}

.contents_read_blue {
    font-size: min(36px, calc(calc(36/750) * 100vw));
    font-weight: bold;
    line-height: 1.78;
    letter-spacing: min(5px, calc(calc(4/750) * 100vw));
    color: #3a3ab6;
}

section[data-type="contents_head"]{
	width: 100%;
	max-width: 750px;
	background-color: var(--col_white);
	margin:0 auto;
}

 section[data-type="contents_read"]{
	width: 100%;
	max-width: 750px;
	background-color: var(--read-bg);
	margin:0 auto;
   }
   section[data-type="contents_read"].white{
	background-color: white;
   }
   section[data-type="contents_read"] .bgwhite{
	background-color: white;
   }
  
  
  section[data-type="contents_read"] h2.title{
	width:100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	background-color: #7c7cca;
	color:white;
	aspect-ratio: 750/200;
  }
  section[data-type="contents_read"] h2.title.white{
	background-color:white;
	color: var(--font-normal);
  }
  section[data-type="contents_read"] h2.title.fontwide{
	font-size: clamp(24px,calc(calc(37/750)*100vw),37px);
	letter-spacing: 0.05em;
    padding: 20px 0px;
	line-height: 1.57;
    box-sizing: border-box;
  }
  
  section[data-type="contents_read"] h3 {
	font-size: var(--h2_mdl_fontsize);
	font-weight:bold;
  /*  color: var(--font-main);*/
	letter-spacing: 0.05em;
	line-height: 1.65;
	text-align: center;
	word-break: auto-phrase;
  }
  section[data-type="contents_read"] h3.marker{
	color: var(--font-main);
  }
  section[data-type="contents_read"] h3.title{
	color: var(white);
  }
  
  section[data-type="contents_read"] h3 span.marker{
	background: linear-gradient(transparent 0%, #fff395 0%);
  }

  section[data-type="contents_read"] .wrap_frame.yoyakubg{
	background:#7c7cca;
	border-radius: 10px;
	padding: min(40px,calc(calc(40/750)*100vw));
	max-width: var(--read-width);
  }


/* wrap_frameの紫背景・白文字ver↓ */
section[data-type="contents_read"] .wrap_frame.bg_purple{
	background: var(--col_purple);
	border-radius: 10px;
	padding: min(40px,calc(calc(40/750)*100vw));
	max-width: var(--read-width);
  margin: 0 auto;
}
section[data-type="contents_read"] .wrap_frame.bg_purple p {
	color: #fff;
}
h2.title_underline_wh {
	text-align: center;
	color: #fff;
	font-size: min(45px, calc(calc(45/750) * 100vw));
	padding-bottom: min(13px, calc(calc(13/750) * 100vw));
	border-bottom: 1px solid #fff;
	margin-bottom: min(30px, calc(calc(30/750) * 100vw));
}
/* wrap_frameの紫背景・白文字ver↑ */

.wrap_frame.bg h3 {
	text-align: center;
	font-size: min(36px, calc(calc(36/750) * 100vw));
	font-weight: 500;
	color: var(--col_blue1);
	position: relative;
	margin-bottom: min(40px, calc(calc(40/750) * 100vw));
}
.wrap_frame.bg h3::before {
	content: "";
	width: 100%;
	height: 1px;
	background: var(--col_blue1);
	position: absolute;
	bottom: 0;
	left: 0;
}

.wrap_frame.bg h5.subttl__tri {
	position: relative;
	color: var(--col_blue1);
	font-size: min(36px, calc(calc(36/750) * 100vw));
	padding-left: min(50px, calc(calc(50/750) * 100vw));
	line-height: 1.78;
}
.wrap_frame.bg h5.subttl__tri::before {
	content: "▶";
	position: absolute;
	color: #7C7CCA;
	font-family: var(--font-yu-mincho);
	font-size: min(36px, calc(calc(36/750) * 100vw));
	left: 0;
	top: 0;
	bottom: 0;
}


/* 症状チェックリスト */
.cklist__main_ttl {
	color: #7C7CCA;
	opacity: 0.5;
	font-family: var(--font-yu-mincho);
	font-size: min(48px, calc(calc(48/750) * 100vw));
	font-weight: 500;
}
.cklist__type {
	margin-left: max(-40px, calc(-1 * (calc(40/750) * 100vw)));
}
.cklist__wrap {
	position: relative;
}
.cklist__wrap::before {
	content: "";
	width: min(128px, calc(calc(128/750) * 100vw));
	height: min(50px, calc(calc(50/750) * 100vw));
	background: url(../../images/lp-qeeg/cklist__arrow.webp) no-repeat center / contain;
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	bottom: max(-30px, calc(-1 * (calc(30/750) * 100vw)));
}

.cklist__wrap02::before {
	content: "";
	width: min(128px, calc(calc(128/750) * 100vw));
	height: min(50px, calc(calc(50/750) * 100vw));
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	bottom: max(-30px, calc(-1 * (calc(30/750) * 100vw)));
}

.cklist__wrap h5 {
	color: var(--col_blue1);
	font-size: min(36px, calc(calc(36/750) * 100vw));
	font-weight: 500;
	margin-bottom: min(40px, calc(calc(40/750) * 100vw));
}
@media screen and (max-width: 750px) {
	.cklist__wrap h5 {
		font-weight: 600;
	}
}
.cklist__wrap li {
	position: relative;
    line-height: 1.4 !important;
    margin-bottom: min(40px, calc(calc(40 / 750)* 100vw));
    aspect-ratio: auto !important;
	padding-left: min(40px, calc(calc(40 / 750)* 100vw));
	/* text-indent: max(-30px, calc(-1 * (calc(30/750) * 100vw))); */
	box-sizing: border-box;
}

.cklist__wrap02 li {
	position: relative;
    line-height: 1.4 !important;
    margin-bottom: min(40px, calc(calc(40 / 750)* 100vw));
    aspect-ratio: auto !important;
	padding-left: min(40px, calc(calc(40 / 750)* 100vw));
	/* text-indent: max(-30px, calc(-1 * (calc(30/750) * 100vw))); */
	box-sizing: border-box;
}

.cklist__wrap li::before {
	content: "";
	width: min(30px, calc(calc(30/750) * 100vw));
	height: min(30px, calc(calc(30/750) * 100vw));
	background: url(../../images/lp-qeeg/cklist__icon.webp) no-repeat center / contain;
	position: absolute;
	top: min(6px, calc(calc(6/750) * 100vw));
	left: 0;
}

.cklist__wrap02 li::before {
	content: "";
	width: min(30px, calc(calc(30/750) * 100vw));
	height: min(30px, calc(calc(30/750) * 100vw));
	background: url(../../images/lp-qeeg/cklist__icon.webp) no-repeat center / contain;
	position: absolute;
	top: min(6px, calc(calc(6/750) * 100vw));
	left: 0;
}

.box_border {
	box-sizing: border-box;
}
.bg_lightpurple {
	background: var(--col_lightpurple);
}
.list__tri_icon li {
	position: relative;
	aspect-ratio: auto!important;
	margin-bottom: min(30px, calc(calc(30/750) * 100vw));
	padding-left: min(50px, calc(calc(50/750) * 100vw));
	line-height: 1!important;
}
.list__tri_icon li::before {
	content: "▶";
	position: absolute;
	color: #7C7CCA;
	font-family: var(--font-yu-mincho);
	font-size: min(36px, calc(calc(36/750) * 100vw));
	left: 0;
	top: 0;
	bottom: 0;
}

 /* 全幅100% MAX無,余白:左右40px */
 nav .wrap_menu,
 section[data-type="cta_ptn1"] .wrap,
 section[data-type="contents_read"] .wrap{
   width:100%;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   padding: 0 clamp(10px,calc(calc(40/750)*100vw),40px);
   box-sizing: border-box;
 }
 /* 全幅100% MAX670,余白:なし */
 nav .wrap_frame,
 section[data-type="contents_read"] .wrap_frame,
 section[data-type="contents_read"] .wrap_noframe{
   width: 100%;
   max-width:100%;
   box-sizing: border-box;
 }
 
 section[data-type="contents_read"] .wrap_noframe{
   padding:0;
 }
 
/* @media screen and (max-width: 750px) {
   section[data-type="contents_read"] .wrap_frame{
     margin:0;
     padding: 0 clamp(10px,calc(calc(40/750)*100vw),40px);
   }     
 }*/
 
 
 section[data-type="contents_read"] .img_main{
   /*  aspect-ratio: 670/414;*/
   width: 100%;
   height:auto;
 }
 section[data-type="contents_read"] p:not(.headeffect_yeah_blue),
 section[data-type="contents_read"] li {
   font-size: min(36px, calc(calc(36/750) * 100vw));
   font-weight: bold;
   line-height: 1.78;
   color: var(--p_col);
   text-align: left;
   letter-spacing: 0;
 }
 #faq p {
   font-weight: 500;
 }
 
 section[data-type="contents_read"] span{
   font-size: inherit;
   /*
   font-weight: bold;
   letter-spacing: 0.05em;
   line-height: 2;
   color: var(--p_col);
   text-align: left;
   letter-spacing: 0.03em;
   */
   font-weight: inherit;
   letter-spacing: inherit;
   line-height: inherit;
   text-align: inherit;
   letter-spacing: inherit;
 }
 
 section[data-type="contents_read"] li {
   display:flex;
   flex-wrap:none;
   justify-content: flex-start;
   align-items: flex-start;
   width:100%;
 }
 /*section[data-type="contents_read"] li:not(:last-child) {
   aspect-ratio: 670/120;
 }*/
 
 section[data-type="contents_read"] .marker li:before {
   content:'・';
   color: var(--font-main);
   font-weight: bold;;
 }
 
 section[data-type="contents_read"] p.fontwide{
   font-size: var(--p_wide_fontsize);
   letter-spacing:0.04em;
 }
 section[data-type="contents_read"] span{
	color: var(--font-main);
	font-weight: bold;
	letter-spacing: 0.05em;
  }
  section[data-type="contents_read"] div.chapter1{
	position:relative;
	z-index:1;
  }
  
  section[data-type="contents_read"] .chapter1 p{
	text-align: center;
	font-weight: bold;
  }
  section[data-type="contents_read"] .chapter1 p:nth-child(1){
	line-height: 1.4;
  }
  section[data-type="contents_read"] .chapter1 p:nth-child(2){
	line-height: 1;
  }
  section[data-type="contents_read"] p em{
	font-size: var(--em_fontsize);
	font-weight: bold;
	color:var(--font-main);
  }
  section[data-type="contents_read"] .no_frame{
	width: 100%;
	background-color:white;
  }
  /*行間*/
  section[data-type="contents_read"] .line_spacer{
	aspect-ratio: 670/50;
	display: block;
	width: 100%;
	height: auto;
	max-height: 50px;
  }
  /*背景*/
  section[data-type="contents_read"] .wrap_frame.bg{
	background:white;
	border-radius: 10px;
	padding: min(40px,calc(calc(40/750)*100vw));
	max-width: var(--read-width);
  }
  section[data-type="contents_read"] dl.marker{
	background: none;
	text-align: left;
	font-size:var(--p_fontsize);
	letter-spacing: 0.0030em;
	line-height: 2;
  }
  section[data-type="contents_read"] dl.marker dt{
	color: var(--font-main);
	display:flex;
	justify-content: flex-start;
	align-items: baseline;
  }
  section[data-type="contents_read"] dl.marker dt:not(:first-child){
	margin-top: clamp( 1em,calc(calc(60/750)*100vw),60px
	);
  }
  section[data-type="contents_read"] dl.marker dt::before{
	content:'';
	width: 0;
	height: 0;
	border-top: 0.4em solid transparent; /* 上半分を透明に */
	border-bottom: 0.4em solid transparent; /* 下半分を透明に */
	border-left: 0.7em solid var(--font-main);/* 左側に青色のボーダー */
	margin-right:0.65em;
  }
  
  section[data-type="contents_read"] dl.marker dd{
	color: black;
  }

/*-------------------------------------------*
 * CTA デザイン変更 20250219追記
 *-------------------------------------------*.
 
/*全体枠 MAX-WIDTH=675*/
section[data-type="cta_ptn1"] {
    /*	flex-wrap:wrap;*/
    background: #fff;
    border:1px solid #7C7CCA;
    border-radius: min(10px, calc(calc(10/750) * 100vw));
}
section[data-type="cta_ptn1"] .main{
    display:flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    /*max-width:430px; *//*IMG-WIDTH*/
    height: auto;
    margin:0 auto;
}
section[data-type="cta_ptn1"] .body{
    display:flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    max-width:582px; /*IMG-WIDTH*/
    width: clamp(200px, calc(calc(582/750) * 100vw),582px);
    height: auto;
    margin:0 auto;
    box-sizing:border-box;
}
section[data-type="cta_ptn1"] .body .tit{
    width: clamp(200px, calc(calc(580/750) * 100vw),580px);
}

/* Q&A追記 */
.toggle_contents dt,
.toggle_contents dd li {
	box-sizing: border-box;
}
.toggle_contents dd li {
	display: block;
}

/* ====================================================================================
TCB_AD-11397 【BC】チェックリスト横展検証4本：実装
==================================================================================== */

    :root {
	--color-bg: #DEF2FF;
	--color-border-blue: #008CD7;
	--color-text-charcoal: #212121;
}

.toggle_bgc_list {
	background-color: var(--color-bg) !important;
}

.toggle_bgc {
    background-color: #f5f7fd !important;
}

.box-bg__01 {
	display: block;
	position: relative;
	z-index: 1;
	margin-top: calc(-1 * min(110px, calc(110 / 750 * 100vw)));
}

.symptom-card {
	max-width: 750px;
	width: min(700px, calc(700/750 * 100vw));
	margin: min(20px, calc(20/750 * 100vw)) auto min(40px, calc(40/750 * 100vw));
	background-color: #ffffff;
	border: min(6px, calc(6/750 * 100vw)) solid var(--color-border-blue);
	border-radius: min(20px, calc(20/750 * 100vw));
	box-sizing: border-box;
	color: var(--color-text-charcoal);
	overflow: hidden;
}

/* 内側の余白を管理するエリア */
.symptom-card__inner {
	padding: min(50px, calc(50/750 * 100vw)) min(30px, calc(30/750 * 100vw)) min(36px, calc(36/750 * 100vw));
	display: flex;
	flex-direction: column;
	align-items: center;
}

.symptom-card__header-img {
	width: 100%;
	margin-bottom: min(30px, calc(30/750 * 100vw));
}

.symptom-card__header-img img {
	/* width: 100%; */
	height: auto;
	display: block;
	margin: 0 auto;
}

.symptom-card__item:last-child {
	margin-bottom: 0;
}

/* リストの1項目 */
.symptom-card__item {
	display: flex !important;
	align-items: flex-start;
	margin-bottom: min(18px, calc(18/750 * 100vw));
}

.symptom-card__item:last-child {
	margin-bottom: 0;
}

/* 1. CSSで作る本物の正方形（機種による変化を完全防御） */
.symptom-card__icon {
	flex-shrink: 0;
	width: min(24px, calc(24/750 * 100vw));
	height: min(24px, calc(24/750 * 100vw));
	border: 1.5px solid var(--color-text-charcoal);
	/* border-radius: 2px; */
	box-sizing: border-box;
	margin-right: min(10px, calc(10/750 * 100vw));
	margin-top: min(10px, calc(10/750 * 100vw));
}

/* 2. テキスト部分（競合があるのでimportant多用中） */
.symptom-card__list {
	list-style: none;
	padding: 0;
	width: 100% !important;
	padding-left: min(20px, calc(20/750 * 100vw)) !important;
	padding-right: min(15px, calc(15/750 * 100vw)) !important;
	box-sizing: border-box !important;
}

.symptom-card .symptom-card__list li p.symptom-card__text {
	padding: 0 !important;
	margin: 0 !important;
	font-size: min(28px, calc(28/750 * 100vw)) !important;
	font-weight: bold !important;
	line-height: 1.6 !important;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif !important;
	font-feature-settings: "palt";
}

/* 文字間をギュッと詰めるクラス */
.symptom-card__text._compress {
	letter-spacing: min(-1.1px, calc(-1.1/750 * 100vw)) !important;
}

.symptom-card__btn-wrapper {
	width: 80%;
	max-width: 480px;
}

.symptom-card__btn-link {
	display: block;
	transition: opacity 0.2s ease;
}

.symptom-card__btn-link img {
	width: 100%;
	height: auto;
	display: block;
}

.symptom-advice {
	background-color: #ffffff;
}

.symptom-advice__outer {
	padding: min(25px, calc(25/750 * 100vw));
}

.symptom-advice__outer._bg-orange {
	background-color: rgba(240, 114, 12, 0.37);
}

.symptom-advice__outer._bg-blue {
	background-color: rgba(139, 199, 240);
}

.symptom-advice__outer._bg-green {
	background-color: rgba(145, 220, 217);
}

.symptom-advice__inner {
	background-color: #ffffff;
	margin: 0 auto;
	padding: min(10px, calc(10/750 * 100vw));
}

/* 画像を上にあげる */
.img-y {
	transform: translateY(-6%);
	margin-bottom: -6%;
}

.footbnr_line_close {
	width: min(50px, calc(calc(50/750) * 100vw)) !important;
	height: min(50px, calc(calc(50/750) * 100vw)) !important;
	top: max(-30px, calc(-1 * (calc(30/750) * 100vw))) !important;
}
/*アイコンなし・トグルなし*/
.toggle_contents.no_icon__no_toggle {
	border: none;
}

.no_icon__no_toggle .toggle_title {
	background: none;
	padding: 0;
}

.no_icon__no_toggle .toggle_btn,
.no_icon__no_toggle .toggle_btn:before,
.no_icon__no_toggle .toggle_btn:after {
	display: none;
}

.no_icon__no_toggle .toggle_title {
	left: 0;
	/*アコーディオンヘッダの初期位置　左寄を解除*/
}

.toggle_contents.no_icon__no_toggle li {
	background: none;
	/*Aアイコンを消す*/
	padding: 0;
}

.no_icon__no_toggle .toggle_bgc {
	background: none;
	/*開いた時の背景色*/
}

.toggle_contents.no_icon__no_toggle ul {
	margin-left: 0;
	/*開いた時の表示エリアの左余白の解除*/
}

@media only screen and (max-width: 767px) {
	.no_icon__no_toggle.toggle_title {
		background: none;
	}

	.toggle_contents.no_icon__no_toggle li {
		background: none;
		padding: 0;
	}

	.toggle_contents.no_icon__no_toggle ul {
		margin-left: 0px;
	}
}

/*アイコンなし*/
.toggle_contents.no_icon {
	border: none;
}

.no_icon .toggle_title {
	background: none;
	padding: 0;
}

.no_icon .toggle_title {
	left: 0;
	/*アコーディオンヘッダの初期位置　左寄を解除*/
}

.toggle_contents.no_icon li {
	background: none;
	/*Aアイコンを消す*/
}

.no_icon .toggle_bgc {
	background: none;
	/*開いた時の背景色*/
}

.toggle_contents.no_icon ul {
	margin-left: 0;
	/*開いた時の表示エリアの左余白の解除*/
}

@media only screen and (max-width: 767px) {
	.no_icon .toggle_title {
		background: none;
	}

	.no_icon .toggle_contents li {
		background: none;
	}

	.no_icon .toggle_contents ul {
		margin-left: 0px;
	}
}

/*ヘッダ部の上下ボーダー*/
.toggle_contents.no_border {
	border: none;
}
section#charalist .cta {
    padding: min(40px, calc(40 / 750 * 100vw)) min(30px, calc(30 / 750 * 100vw));
}
.frames_basic, .frames_basic__wrap, .frames_basic__wrap a {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    width: 100%;
    max-width: 750px;
    box-sizing: border-box;
}

.gap_20 {
    gap: min(20px, calc(20/750)*100vw);
}

.frames_basic__wrap .cta_type2__btn img, .cta_type2__btn img {
    width: min(690px, calc(690/750)*100vw);
}