@charset "utf-8";



@font-face {
font-family: CormorantGaramond-Regular;
//font-display: swap;
src: url("../common_fonts/CormorantGaramond-Regular.woff2") format("woff2");
}

@font-face {
font-family: CormorantGaramond-SemiBold;
//font-display: swap;
src: url("../common_fonts/CormorantGaramond-SemiBold.woff2") format("woff2");
}



@font-face {
font-family: ShipporiMincho-Regular;
//font-display: swap;
src: url("../common_fonts/005_Shippori_mincho_Regular.woff2") format("woff2");
}

@font-face {
font-family: ShipporiMincho-SemiBold;
//font-display: swap;
src: url("../common_fonts/Shippori_mincho_SemiBold.woff2") format("woff2");
}

@font-face {
font-family: ShipporiMincho-Bold;
//font-display: swap;
src: url("../common_fonts/Shippori_mincho_Bold.woff2") format("woff2");
}








body {
margin: 0;
font-family: 'ShipporiMincho-Regular';
color: #1A1B1D;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

.pc_br{display: inline-block;}
.sp_br{display: none;}


img{
pointer-events: none;	/* 右クリック保存禁止 */
/* SPの長押し禁止 */
-webkit-touch-callout:none;
-webkit-user-select:none;
-moz-touch-callout:none;
-moz-user-select:none;
user-select:none;
}

a{text-decoration: none;	transition : 0.5s;}
a:hover{opacity: 0.7; 		transition : 0.5s;}


.faq_content_full_width{
width: 100%;
overflow: hidden;
margin: auto;
padding: 20px 0px 0px 0px;
background-color: #fff;
background-repeat: no-repeat;
background-position: left 0px top 48px;
background: url(../img_dr_intro/faq_main_background_blue.svg);
background-size: 4973px ;
background-position: 0px 100px;
background-repeat: no-repeat;
//border: 1px solid green;	box-sizing: border-box;
}


.faq_content_full_width_1040{
width: 1040px;				margin: auto;
//border: 1px solid orange;	box-sizing: border-box;
}


/*PC用メニュー設定 開始*/
.faq_l_screen_box{
font-family: 'ShipporiMincho-SemiBold';
display: flex;
justify-content:center;
align-items:center;
max-width: 1040px;
overflow: hidden;
margin: auto;
background-color: #fafbff;
//background-color: rgba(255, 255, 255, 0.562);
box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.4);
//opacity: 0.5;
//border: 1px solid aqua;
}

.faq_l_screen_left_txt{
width: 40%;
color: #1A1B1D;
line-height: 1.2;
font-size: 22px;
padding: 4px 0px 0px 0px;
font-weight: 700;
//border: 1px solid orange;
}

.faq_l_screen_left_txt{display: none}


.faq_l_screen_left_txt a{color: #1A1B1D;}


.faq_l_screen_menu{
width: 60%;
font-family: 'ShipporiMincho-Bold';
color: white;
font-size: 16px;
line-height: 1.2;
text-align: center;
//background-color: #fff;
//border: 1px solid orange;
}

.faq_l_screen_menu ul {
height: 60px;
display: flex;
flex-flow: row;
justify-content: flex-end;
margin: 0px 0px 0px 0px;
padding: 6px 0px;
list-style-type: none;
//background-color: #ccc;
//border: 1px solid yellow;
}
.faq_l_screen_menu a {
display:flex;
justify-content:center;
align-items:center;
height: 40px;
margin: 0px 0px 0px 0px;
padding: 13px 24px;
color: #1A1B1D;
text-decoration: none;
//background-color: #fff;
//border-radius: 4px;
//border: 1px solid blue;
}
.faq_l_screen_menu li a:hover {
background-color: #dfe6fa;
}


/* キラッと光のスタイル */

.faq_btn a {
position: relative;
display: inline-block;
width: 100px;
padding: 24px 0px 2px 0px;
//background-color: #fff;
//border: 1px solid red;
}
.faq_btn_two_line a {
position: relative;
display: inline-block;
width: 100px;
padding: 15px 0px 11px 0px;
//background-color: #fff;
//border: 1px solid red;
}
.faq_btn_flash a {
overflow: hidden;
}
.faq_btn_flash a::before {
content: '';
position: absolute;     top: 0;    left: -100%;
width: 100%;    height: 100%;
background-image: linear-gradient(130deg, rgba(255, 255, 255, 0) 20%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 80%);
transition: .5s;
}

/* ホバー時のスタイル */

.faq_btn_flash a:hover::before {
top: 0;
left: 100%;
}
/* キラッと光のスタイル ここまで*/



.hamburger-menu{display: none}  /*スマホ用ハンバーガーメニューを非表示*/




/* FAQ よくあるご質問　タイトル */
.yokuaru_title_box{
margin: 30px 0 0 0;				padding:40px 0px 0px 0px;
width: 100%;    color:#fff;     height: 260px;
background: linear-gradient(90deg, #becaf5 0%, #798bd3 50%, #304db2 100%);
//border: 1px solid red;
}
.yokuaru_title_FAQ_yokuaru_box{display:block; width:1040px; margin: 0 auto; padding: 15px 0 0 0;}
.yokuaru_title_FAQ{
font-family: 'CormorantGaramond-Regular';
width:440px;            text-align: right;
display:inline-block;   text-shadow: 1px 2px 3px #555;
font-size: 100px;
}

.yokuaru_title_yokuaru_title{
width:500px;    text-align: left;   font-size: 50px;
display:inline-block; padding: 0 0 0 30px;
}

.yokuaru_title_txt{
font-size: 24px;	padding: 5px 0 0 0;
display:block;  width:1040px;   margin: 0 auto; text-align: center;
}

/* FAQ よくあるご質問　タイトル　　　　ここまで */




/* QA 質問と答え それぞれ　タイトル */
.question_answer_whole_box{
margin: 0 auto 200px auto;     width: 1040px;    color:#000;
padding: 35px 0 0 0;
background: linear-gradient(-180deg, #f5f5fd 0%, #f4f5f8 100%);
border-radius: 0 0 150px 150px;
height: 2830px;      font-size: 20px;
text-align: justify;
//border: 1px solid red;
}

.question_answer_bg_white_box{
position: relative;     top:50px;
padding: 30px 0 30px 130px;     /*widthとpadding left合計で770pxへ*/
width: 640px;   background: #fff;     margin: 0 auto;
border-radius: 20px;
border: 1px solid #1543e6;
}

.question_answer_bg_white_box  span{
color: #1d2e87;
}

.question_answer_QA_icon{
position: absolute;     top:-18px;     left:-18px;
width: 110px;
filter: drop-shadow(1px 2px 2px rgba(0,0,0, 0.3));
}

.question_answer_bg_light_blue_box{
position: relative;     top:100px;
padding: 30px 80px 40px 130px;     /*widthとpadding left合計で770pxへ*/
width: 560px;   background: none;     margin: 0 auto;
border-radius: 20px;
//border: 1px solid #1543e6;
}

.question_answer_bg_light_blue_box  span{
color: #1d2e87;
}

.q_a_box_adjust_margin_PC_25{height:25px;  display:block}
.q_a_box_adjust_margin_PC_50{height:50px;  display:block}
.q_a_box_adjust_margin_PC_100{height:100px;  display:block}



.q_a_bg_white_box_adjust_03{top:140px;  padding: 30px 80px 30px 130px; width: 560px;}
.q_a_bg_white_box_adjust_04{top:200px;  padding: 30px 80px 30px 130px; width: 560px;}
.q_a_bg_white_box_adjust_05{top:250px;  padding: 30px 80px 30px 130px; width: 560px;}
.q_a_bg_white_box_adjust_06{top:300px;  padding: 30px 80px 30px 130px; width: 560px;}
.q_a_bg_white_box_adjust_07{top:290px;  padding: 30px 80px 0px 130px; width: 560px;}
.q_a_bg_white_box_adjust_08{top:225px;  padding: 30px 80px 30px 130px; width: 560px;}


/* QA 質問と答え それぞれ　タイトル　　　　ここまで */



/* Voice 部分　タイトル */

.voice_part_box{
position: relative;     width:1040px;   margin: 0px auto 0 auto;
height: 200px;			z-index: 100;
//border: 1px solid red;
}

.voice_oval_box{
position: absolute;     top:-180px;
width: 400px;           height: 400px;
border-radius: 50%;
background: #1054ff;    box-shadow: 0px 0px 40px 40px #1054ff;
opacity: 0.3;
}

.voice_oval_title{
width: 200px;           filter: drop-shadow(1px 2px 2px rgba(0,0,0, 0.3));
position: absolute;     top:-80px;     left:100px;
}
.voice_oval_bk_txt{
position: absolute;     left:100px;		top: 10px;
font-size: 28px;		color:#000;
//border: 1px solid red;
}

.voice_oval_right_ph{
position: absolute;     right:120px;  top:-80px;
width: 200px;
}
.voice_oval_right_ph  img{width: 100%;}

/* Voice 部分　タイトル　　　　ここまで */






/* Voice 患者の声部分 */
.voice_patient_box{
width:1040px;   margin:0 auto 80px auto;
border: 1px solid #fff;
}

.voice_patient_voice_01{
font-size: 24px;        padding: 45px 0 0 0;
text-align: center;     line-height: 1.8;
width: 834px;   margin: 0 auto;     height:150px;
background: url(../faq_img/PC_Voice_note_bg_01.svg);
background-size: 100% ;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
}

.voice_patient_voice_02{
font-size: 24px;        padding: 10px 0px 0 100px;
text-align: left;     line-height: 1.8;
width: 735px;   margin: 0 auto;     height:100px;
background: url(../faq_img/PC_Voice_note_bg_02.svg);
background-size: 80% ;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
//border: 1px solid red;
}

.voice_patient_voice_03{
font-size: 24px;        padding: 18px 280px 0 40px;
text-align: right;     line-height: 1.8;
width: 634px;   margin: 0 auto;     height:100px;
background: url(../faq_img/PC_Voice_note_bg_02.svg);
background-size: 80% ;
background-position: 130px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
//border: 1px solid red;
}

.voice_patient_voice_04{
font-size: 22px;        padding: 18px 0px 0px 50px;
text-align: left;     line-height: 1.8;
width: 785px;   margin: 0 auto;     height:100px;
background: url(../faq_img/PC_Voice_note_bg_02.svg);
background-size: 80% ;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
//border: 1px solid red;
}

.voice_patient_voice_10{
font-size: 22px;        padding: 20px 0 0 0;
text-align: center;     line-height: 1.8;
width: 834px;   margin: 0 auto;     height:170px;
background: url(../faq_img/PC_Voice_note_bg_03.svg);
background-size: 100% ;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
}


.voice_patient_voice_20{
font-size: 24px;        padding: 15px 0 0 0;
text-align: center;     line-height: 1.8;
width: 834px;   margin: 0 auto;     height:100px;
background: url(../faq_img/PC_Voice_note_bg_04.svg);
background-size: 100% ;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px #888);
}

.voice_patient_box_arrow_box{
width: 834px;   margin: 0 auto 80px auto;
//border: 1px solid red;
display:block;
}

.voice_patient_box_arrow{margin: 0 0 0 auto; width: 200px;}
.voice_patient_box_arrow  img{width: 100%; display:block;}


/* Voice 患者の声部分　　　　ここまで */




/* 林Drの治療が受けられる病院 部分 */

.hospital_list_box{
position: relative;     width:100%;     height:835px;
margin: 0 0 180px 0;
box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.3);
//border: 1px solid orange;
}

.hospital_list_box::before{
content:"";
width:1040px;   height:835px;
position: absolute;     top:0px;
right: 0;               left: 0;        margin: 0 auto;
background: url(../faq_img/PC_hosp_map.jpg);
background-size: 1000px ;
background-position: 50% 125px;
background-repeat: no-repeat;
z-index: -10;
}


.hospital_list_box::after{
background: linear-gradient(90deg, #becaf5 0%, #798bd3 50%, #304db2 100%);
content:"";     width: 100%;    height:80px;
position: absolute;     top:50px;
z-index: -5;
}

.hospital_list_hayashi_title{
width:1040px;   height: 800px;
color: #fff;    text-align: right;      font-size: 32px;
position: absolute;     top:20px;
right: 0;               left: 0;        margin: 0 auto;
//border: 1px solid yellow;
}
.hospital_list_hayashi_title  span{font-size: 150%;}

.hospital_list_hayashi_title::after{
content:"";
width:220px;    height: 400px;
position: absolute;     top:-70px;    left:0px;
background: url(../faq_img/PC_hosp_Dr.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
z-index: -1;
//border: 1px solid red;
}

.hospital_list_001{
width:430px;    height:120px;
color: #000;    text-align: left;      font-size: 16px;
padding: 11px 0 0 10px;                   line-height: 1.8;
position: absolute;     top:250px;      left:0px;
background: url(../faq_img/PC_hosp_01.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
//border: 1px solid red;
//z-index: 100;
}

.hospital_list_001  span{font-size: 140%; color:#fff;}

/*
.hospital_list_001_line{
position: absolute;         top:435px;      left:410px;
width: 320px;               height:1px;
transform:rotate(27deg);    background: #1054ff;
z-index: -1;
}
*/


.hospital_list_002{
width:430px;    height:120px;
color: #000;    text-align: left;      font-size: 16px;
padding: 11px 0 0 10px;                   line-height: 2.0;
position: absolute;     top:400px;      left:0px;
background: url(../faq_img/PC_hosp_02.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
//border: 1px solid red;
}

.hospital_list_002  span{font-size: 110%; color:#fff;   letter-spacing: -1px;}

/*
.hospital_list_002_line{
position: absolute;         top:530px;      left:415px;
width: 270px;               height:1px;
transform:rotate(3deg);    background: #1054ff;
z-index:-1;
}
*/


.hospital_list_003{
width:430px;    height:120px;
color: #000;    text-align: left;      font-size: 16px;
padding: 11px 0 0 10px;                   line-height: 1.8;
position: absolute;     top:550px;      left:0px;
background: url(../faq_img/PC_hosp_03_04.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
//border: 1px solid red;
}

.hospital_list_003  span{font-size: 140%; color:#fff;}

/*
.hospital_list_003_line{
position: absolute;         top:640px;      left:420px;
width: 150px;               height:1px;
transform:rotate(-30deg);    background: #1054ff;
z-index:-1;
}
*/


.hospital_list_004{
width:430px;    height:120px;
color: #000;    text-align: left;      font-size: 16px;
padding: 11px 0 0 10px;                   line-height: 1.8;
position: absolute;     top:195px;      right:0px;
background: url(../faq_img/PC_hosp_03_04.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
//border: 1px solid red;
}

.hospital_list_004  span{font-size: 140%; color:#fff;}

/*
.hospital_list_004_line{
position: absolute;         top:435px;      right:-35px;
width: 420px;               height:1px;
transform:rotate(-36deg);    background: #1054ff;
z-index:-1;
}
*/


.hospital_list_005{
width:430px;    height:120px;
color: #000;    text-align: left;      font-size: 16px;
padding: 11px 0 0 10px;                   line-height: 1.8;
position: absolute;     top:595px;      right:0px;
background: url(../faq_img/PC_hosp_05.jpg);
background-size: 100%;
background-position: 0px 0px;
background-repeat: no-repeat;
filter: drop-shadow(2px 2px 2px rgba(0,0,0, 0.5));
//border: 1px solid red;
}
.hospital_list_005  span{font-size: 140%; color:#fff;}

/*
.hospital_list_005_line{
position: absolute;         top:580px;      right:0px;
width: 345px;               height:1px;
transform:rotate(6.5deg);    background: #1054ff;
z-index:-1;
}
*/


/* 林Drの治療が受けられる病院 部分　　　　ここまで */










/*-------------------------以下　footer 部分-------------------------*/
.faq__footer_box_full{
max-width: 1440px;
color: white;
max-width: 100%;
background-color: #0B2580;
z-index: 100;
//background-image: linear-gradient(to top, #12277b 50%, #aeb5d4);
//margin: 30px 0px 50px 0px;
//background-image: linear-gradient(0deg, to top, rgb(18, 39, 123)  50% , rgb(174, 181, 212));
//border: 1px solid pink;
}



.faq__footer_box{
display: flex;
width: 1040px;
margin: auto;
padding: 100px 0px 20px 0px;
//border: 1px solid orange;

}

.faq__footer_left_title{
font-family: 'ShipporiMincho-SemiBold';
font-size: 20px;
line-height: 1.15;
margin-left: 20px;
width: 400px;
//border: 1px solid pink;
}

.faq__footer_left_title a{color: #fff;}

.faq__footer_right_menu_box{
display: flex;
justify-content: flex-end;
width: 700px;
//border: 1px solid pink;
}

.faq__footer_right_menu_items{
display: flex;
width: 100px;
justify-content: center;
align-items: center;
text-align: center;
line-height: 1.2;
//border: 1px solid pink;
}

.faq__footer_right_menu_items a{
color: #fff;
text-decoration: none;
}

.faq__footer_copy_right_box{
width: 1040px;
margin: auto;
text-align: center;
padding: 80px 0px 150px 0px;
//margin-bottom: 100px;
}




























/*_______2025-03-14     以下不要？？？　コメントアウト_______*/
