@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(min-width:1000px){

/*STYLE*/
.sp {
display:none;
}

.bg {
width:100%;
height:100%;
background:url(../img/doctor_bg.jpg) center;
background-size:cover;
position:fixed;
top:0;
left:0;
z-index:-1;
}

.cts {
width:1000px;
margin:auto;
}

p {
font-size:100%;
line-height:180%;
}

.min {
font-family: 'Noto Serif JP', serif;
}

.titles {
text-align:center;
padding-bottom:30px;
}

.titles .icon {
width:40px;
margin:0 auto 7px;
}

.titles h2 {
font-size:180%;
padding-bottom:10px;
letter-spacing:5px;
}

.titles .line {
width:50px;
height:1px;
background:#7aacb1;
margin:auto;
}

.more_btn {
width:180px;
margin:30px auto 0;
}

.more_btn a {
display:flex;
justify-content:center;
align-items:center;
background:#eb9191;
padding:10px;
border-radius:10vw;
}

.more_btn a p {
font-size:90%;
color:#fff;
padding-right:10px;
}

.more_btn a .arrow {
width:10px;
height:10px;
border-top:#fff 1px solid;
border-right:#fff 1px solid;
transform:rotate(45deg);
}

.cta {
padding-top:30px;
}

.cta .tel {
width:350px;
margin:0 auto 10px;
}

.cta .btns {
display:flex;
justify-content:center;
}

.cta .btns .btn {
width:250px;
margin:0 7px;
}

.cta .btns .btn img {
}



/*HEADER*/
header {
width:100%;
background:#fff;
padding-bottom:15px;
}

header .header_cts {
display:flex;
justify-content:space-between;
align-items:center;
padding:7px 105px 0 20px;
height:100px;
padding-bottom:10px;
}

header .header_cts h1 {
width:425px;
}

header .header_cts .contact {
display:flex;
align-items:center;
}

header .header_cts .contact .free {
width:64px;
height:64px;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
color:#466464;
border:#466464 1px solid;
border-radius:10vw;
font-size:70%;
letter-spacing:1px;
line-height:135%;
padding-top:3px;
margin-right:10px;
}

header .header_cts .contact .informations {
}

header .header_cts .contact .informations .information {
}

header .header_cts .contact .informations .information .data {
margin-right:10px;
}

header .header_cts .contact .informations .information .data:last-child {
margin-right:0;
}

header .header_cts .contact .informations .data {
display:flex;
align-items:center;
}

header .header_cts .contact .informations .data .item {
font-size:50%;
background:#e8f2f4;
letter-spacing:1px;
line-height:100%;
padding:3px 5px;
margin-right:7px;
}

header .header_cts .contact .informations .data .detail {
font-size:70%;
letter-spacing:2px;
}

header .header_cts .contact .informations .data .tel {
width:190px;
}

header .header_cts .contact .informations .information {
display:flex;
align-items:center;
padding:3px 0;
}

header .header_cts .contact .photo {
width:60px;
margin-left:5px;
}



/*MV*/
#mv {
background:#fff;
padding-bottom:50px;
}

#mv .cts {
display:flex;
justify-content:space-between;
align-items:center;
height:520px;
position:relative;
}

#mv .mv_bg {
width:520px;
height:520px;
background:#e6f0f5;
border-radius:10px;
position:absolute;
left:0;
z-index:0;
}

#mv .free {
width:75px;
height:75px;
background:#eb9191;
border-radius:10vw;
display:flex;
justify-content:center;
align-items:center;
color:#fff;
text-align:center;
position:absolute;
top:5px;
right:-15px;
z-index:2;
font-size:80%;
letter-spacing:1px;
padding-top:5px;
}

#mv .copies {
width:360px;
position:relative;
display:flex;
justify-content:center;
align-items:center;
}

#mv .copies .copy {
}

#mv .copies .copy .title {
width:270px;
margin-bottom:25px;
}

#mv .copies .copy .point {
width:200px;
margin:auto;
}

#mv .photos {
width:640px;
position:relative;
z-index:1;
}

#mv .photos img {
border-radius:10px;
}

#mv .photos .main {
margin-bottom:8px;
}

#mv .photos .mv_slider {
overflow:hidden;
}



/*COVID19*/
#covid19 {
background:#fff;
padding-bottom:50px;
}

#covid19 .cts {
border:#7aacb1 1px solid;
border-radius:10px;
padding:30px 40px;
}

#covid19 .titles {
text-align:center;
padding-bottom:30px;
}

#covid19 .titles .title {
font-size:150%;
display:inline-block;
border-bottom:#7aacb1 2px solid;
letter-spacing:5px;
}

#covid19 .details {
display:flex;
justify-content:space-between;
align-items:center;
}

#covid19 .details .detail {
width:360px;
}

#covid19 .details .detail .item {
font-size:130%;
line-height:180%;
padding-bottom:15px;
}

#covid19 .details .detail .ex {
font-size:90%;
}

#covid19 .details .points {
width:520px;
display:flex;
justify-content:space-between;
}

#covid19 .details .points .point {
width:21%;
position:relative;
}

#covid19 .details .points .point .number {
position:absolute;
top:-18px;
left:0;
right:0;
text-align:center;
color:#7aacb1;
font-size:120%;
}

#covid19 .details .points .point .illust {
margin-bottom:10px;
}

#covid19 .details .points .point .measures {
font-size:75%;
color:#7aacb1;
text-align:center;
line-height:150%;
}



/*LINE*/
#line {
background:#fff;
padding-bottom:70px;
}

#line .cts {
border:#00b900 1px solid;
display:flex;
justify-content:space-between;
border-radius:10px;
}

#line .copies {
width:45%;
background:#f2fbf2;
padding:30px 50px;
border-radius:10px 0 0 10px;
display:flex;
justify-content:center;
align-items:center;
}

#line .copies .icon {
width:70px;
margin-right:20px;
}

#line .copies .copy {
font-size:150%;
line-height:160%;
color:#00b900;
}

#line .details {
width:55%;
display:flex;
justify-content:center;
align-items:center;
padding:15px;
}

#line .details .qr {
width:135px;
margin-right:15px;
}

#line .details .btn {
width:220px;
margin-bottom:10px;
}

#line .details .ex {
font-size:70%;
line-height:170%;
}



/*STORY1*/
#story1 {
background:#e6f0f5;
padding:70px 0;
}

#story1 .titles .subtitle {
background:#7aacb1;
color:#fff;
display:inline-block;
border-radius:10vw;
padding:5px 20px;
margin-bottom:12px;
font-size:110%;
}

#story1 .titles h2 {
font-size:160%;
}

#story1 .titles h2 span {
border-bottom:#7aacb1 2px solid;
display:inline-block;
padding:0;
}

#story1 .worries {
display:flex;
justify-content:space-between;
padding-bottom:50px;
}

#story1 .worries .worry {
width:18.5%;
background:#fff;
border-radius:10px;
}

#story1 .worries .worry .photo {
}

#story1 .worries .worry .photo img {
border-radius:10px 10px 0 0;
}

#story1 .worries .worry .ex {
font-size:90%;
font-weight:400;
text-align:center;
padding:15px 10px;
letter-spacing:2px;
line-height:170%;
}

#story1 .symptoms {
text-align:center;
}

#story1 .symptoms .etc {
padding-bottom:15px;
}

#story1 .symptoms .names {
width:680px;
margin:0 auto 10px;
display:flex;
justify-content:center;
flex-wrap:wrap;
align-items:center;
}

#story1 .symptoms .names .name {
display:inline-block;
background:#fff;
padding:10px 18px;
border-radius:10vw;
margin:0 5px 10px;
line-height:100%;
}

#story1 .symptoms .summary {
padding-bottom:20px;
}

#story1 .symptoms .attention {
display:flex;
justify-content:center;
font-size:80%;
text-align:center;
}



/*STORY2*/
#story2 {
padding:70px 0;
background:#fff;
}

#story2 .copy {
text-align:center;
padding-bottom:30px;
}

#story2 .photos {
display:flex;
justify-content:space-between;
padding-bottom:30px;
}

#story2 .photos .photo {
width:19%;
}

#story2 .photos .photo img {
border-radius:10px;
}

#story2 .summary {
text-align:center;
font-size:120%;
}



/*STORY3*/
#story3 {
padding:70px 0;
background:#e6f0f5;
}

#story3 .copy {
text-align:center;
padding-bottom:30px;
}

#story3 .details {
display:flex;
flex-wrap:wrap;
padding-bottom:50px;
}

#story3 .details .detail {
width:320px;
margin:0 20px 20px 0;
background:#fff;
border-radius:10px;
}

#story3 .details .detail:nth-child(3n) {
margin-right:0;
}

#story3 .details .detail .photo {
border-radius:10px 10px 0 0;
overflow:hidden;
}

#story3 .details .detail .item {
padding:15px;
text-align:center;
}

#story3 h3 {
font-size:150%;
text-align:center;
margin-bottom:30px;
}

#story3 h3 span {
border-bottom:#7aacb1 3px solid;
padding-bottom:3px;
}

#story3 .effects {
display:flex;
justify-content:space-between;
padding-bottom:12px;
}

#story3 .effects .effect {
width:310px;
background:#fff;
border:#7aacb1 1px solid;
border-radius:10px;
padding:25px 30px;
}

#story3 .effects .effect .item {
font-size:120%;
font-weight:400;
text-align:center;
color:#fc8017;
line-height:150%;
height:60px;
display:flex;
justify-content:center;
align-items:center;
margin-bottom:10px;
}

#story3 .effects .effect .line {
width:50px;
height:1px;
background:#7aacb1;
margin:0 auto 15px;
}

#story3 .effects .effect .ex {
font-size:90%;
}

#story3 .attention {
display:flex;
justify-content:flex-end;
font-size:80%;
}



/*STORY4*/
#story4 {
padding:70px 0;
}

#story4 .doctors {
display:flex;
justify-content:space-between;
flex-wrap:wrap;
padding-bottom:50px;
}

#story4 .doctors .doctor {
width:310px;
background:#fff;
border:#7aacb1 1px solid;
border-radius:10px;
padding:30px 30px 20px;
margin-bottom:35px;
}

#story4 .doctors .doctor:nth-child(n+4) {
margin-bottom:0;
}

#story4 .doctors .doctor .photo {
width:180px;
margin:0 auto 15px;
}

#story4 .doctors .doctor .detail {
}

#story4 .doctors .doctor .detail .names {
text-align:center;
margin-bottom:15px;
}

#story4 .doctors .doctor .detail .names .position {
font-size:80%;
line-height:150%;
}

#story4 .doctors .doctor .detail .names .name {
font-size:110%;
font-weight:bold;
color:#fc8017;
padding-bottom:5px;
}

#story4 .doctors .doctor .detail .names .name .san {
font-size:80%;
}

#story4 .doctors .doctor .detail .names .line {
width:50px;
height:1px;
background:#7aacb1;
margin:auto;
}

#story4 .doctors .doctor .detail .ex {
font-size:90%;
}

#story4 .recommend_title {
display:flex;
justify-content:center;
align-items:center;
margin-bottom:20px;
}

#story4 .recommend_title img {
width:20px;
}

#story4 .recommend_title h3 {
font-size:180%;
padding:0 15px 0 25px;
}

#story4 .recommends {
display:flex;
flex-wrap:wrap;
}

#story4 .recommends .recommend {
width:18%;
margin:0 2.5%  2.5% 0;
}

#story4 .recommends .recommend:nth-child(5n) {
margin-right:0;
}

#story4 .recommends .recommend .photo {
width:160px;
margin:0 auto 12px;
}

#story4 .recommends .recommend .photo img {
border-radius:10vw;
}

#story4 .recommends .recommend .names {
text-align:center;
}

#story4 .recommends .recommend .names .job {
border:#464646 1px solid;
display:inline-block;
font-size:70%;
line-height:100%;
letter-spacing:2px;
padding:5px 5px;
margin-bottom:7px;
}

#story4 .recommends .recommend .names .position {
font-size:70%;
line-height:150%;
margin-bottom:5px;
letter-spacing:2px;
}

#story4 .recommends .recommend .names .name {
font-weight:bold;
line-height:100%;
}

#story4 .recommends .recommend .names .name .san {
font-size:80%;
font-weight:normal;
}



/*STORY5*/
#story5 {
background:#fff;
padding:70px 0;
}

#story5 .copy {
text-align:center;
padding-bottom:60px;
}

#story5 .features {
}

#story5 .features .feature {
border:#7aacb1 1px solid;
border-radius:10px;
position:relative;
margin-bottom:40px;
padding:50px 50px 45px;
}

#story5 .features .feature:last-child {
margin-bottom:0;
}

#story5 .features .feature .number {
width:40px;
height:40px;
border:#7aacb1 1px solid;
border-radius:10px;
display:flex;
justify-content:center;
align-items:center;
color:#7aacb1;
position:absolute;
top:-20px;
left:0;
right:0;
margin:auto;
background:#fff;
text-align:center;
letter-spacing:0;
}

#story5 .features .feature .details {
display:flex;
justify-content:space-between;
}

#story5 .features .feature .details .photo {
width:300px;
}

#story5 .features .feature .details .detail {
width:560px;
}

#story5 .features .feature .details .detail h3 {
font-size:135%;
font-weight:500;
color:#7aacb1;
padding-bottom:15px;
}

#story5 .features .feature .details .detail .ex {
font-size:90%;
}

#story5 .features .feature .details .detail .more_btn {
margin:20px auto 0;
}



/*STORY6*/
#story6 {
padding:70px 0;
background:#e6f0f5;
}

#story6 .message {
background:#fff;
border:#7aacb1 1px solid;
border-radius:10px;
padding:25px;
}

#story6 .message .photo {
margin-bottom:20px;
}

#story6 .message h3 {
font-size:120%;
text-align:center;
color:#eb9191;
padding-bottom:5px;
}

#story6 .message .name {
font-size:80%;
text-align:center;
}

#story6 .message .line {
width:50px;
height:1px;
background:#7aacb1;
margin:12px auto 15px;
}

#story6 .message .ex {
font-size:90%;
}



/*STORY7*/
#story7 {
padding:70px 0;
background:#fff;
}

#story7 .copies {
text-align:center;
padding-bottom:30px;
}

#story7 .copies .subtitle {
border:#7aacb1 1px solid;
border-radius:10vw;
color:#7aacb1;
display:inline-block;
padding:7px 25px;
margin-bottom:10px;
}

#story7 .copies .copy {
font-size:110%;
}

#story7 .copies .attention {
font-size:80%;
display:flex;
justify-content:center;
}

#story7 .loads {
display:flex;
justify-content:space-between;
padding-bottom:30px;
}

#story7 .loads .load {
width:32%;
}

#story7 .loads .load .item {
background:#7aacb1;
text-align:center;
color:#fff;
border-radius:10px 10px 0 0;
padding:7px;
}

#story7 .loads .load .prices {
border:#7aacb1 1px solid;
border-radius:0 0 10px 10px;
text-align:center;
padding:10px;
}

#story7 .loads .load .prices .price {
font-size:110%;
font-weight:500;
color:#eb9191;
}

#story7 .loads .load .prices .supple {
font-size:70%;
}

#story7 .attentions {
padding-bottom:50px;
}

#story7 .attentions .attention {
display:flex;
justify-content:center;
font-size:80%;
}

#story7 .consent_form {
background:#fafafa;
border:#7aacb1 1px solid;
border-radius:10px;
padding:40px 50px;
}

#story7 .consent_form h4 {
font-size:150%;
text-align:center;
margin-bottom:20px;
}

#story7 .consent_form h4 span {
border-bottom:#7aacb1 3px solid;
padding-bottom:4px;
}

#story7 .consent_form .copy {
font-size:120%;
text-align:center;
color:#eb9191;
padding-bottom:20px;
}

#story7 .consent_form .details {
display:flex;
justify-content:space-between;
}

#story7 .consent_form .details .photo {
width:380px;
}

#story7 .consent_form .details .detail {
width:480px;
}

#story7 .consent_form .details .detail p {
font-size:90%;
padding-bottom:20px;
}

#story7 .consent_form .details .detail p:last-child {
padding-bottom:0;
}



/*STORY8*/
#story8 {
padding:70px 0;
background:#e6f0f5;
}

#story8 .steps {
padding:30px 0 50px;
}

#story8 .steps .step {
border:#7aacb1 1px solid;
background:#fff;
border-radius:15px;
position:relative;
padding:40px 50px 30px;
margin-bottom:50px;
}

#story8 .steps .step:last-child {
margin-bottom:0;
}

#story8 .steps .step:after {
content:"";
width:20px;
height:50px;
background:#7aacb1;
position:absolute;
bottom:-50px;
left:0;
right:0;
margin:auto;
}

#story8 .steps .step:last-child:after {
display:none;
}

#story8 .steps .step .number {
width:120px;
height:40px;
display:flex;
justify-content:center;
align-items:center;
border:#7aacb1 1px solid;
background:#fff;
color:#7aacb1;
text-align:center;
border-radius:10vw;
position:absolute;
top:-20px;
left:0;
right:0;
margin:auto;
}

#story8 .steps .step .details {
display:flex;
justify-content:space-between;
align-items:center;
}

#story8 .steps .step .details .illust {
width:120px;
}

#story8 .steps .step .details .detail {
width:720px;
}

#story8 .steps .step .details .detail h3 {
font-size:135%;
font-weight:500;
color:#7aacb1;
padding-bottom:10px;
}

#story8 .steps .step .details .detail .contact {
background:#fdf4f4;
border-radius:10px;
padding:15px 25px 20px;
margin-bottom:12px;
}

#story8 .steps .step .details .detail .contact .tel {
color:#eb9191;
font-size:120%;
font-weight:500;
margin-bottom:7px;
}

#story8 .steps .step .details .detail .contact .btns {
display:flex;
}

#story8 .steps .step .details .detail .contact .btns .btn {
width:220px;
margin-right:15px;
}

#story8 .steps .step .details .detail .contact .btns .btn img {
}

#story8 .steps .step .details .detail .ex {
font-size:90%;
}

#story8 .steps .step .details .detail .attention {
font-size:80%;
display:flex;
}

#story8 .free_trial {
border:#7aacb1 1px solid;
border-radius:15px;
background:#fff;
padding:50px 70px;
}

#story8 .free_trial h4 {
font-size:150%;
text-align:center;
margin-bottom:30px;
}

#story8 .free_trial h4 .line {
border-bottom:#7aacb1 3px solid;
padding-bottom:4px;
}

#story8 .free_trial .photos {
display:flex;
justify-content:space-between;
margin-bottom:30px;
}

#story8 .free_trial .photos .photo {
width:32.5%;
}

#story8 .free_trial .photos .photo img {
border-radius:15px;
}

#story8 .free_trial .ex {
text-align:center;
padding-bottom:50px;
}

#story8 .free_trial .ex p {
padding-bottom:20px;
}

#story8 .free_trial .ex p:last-child {
padding-bottom:0;
}

#story8 .free_trial .app {
text-align:center;
position:relative;
border:#eb9191 1px solid;
border-radius:15px;
padding:25px 25px 20px;
}

#story8 .free_trial .app .item {
width:250px;
height:30px;
background:#fff;
position:absolute;
margin:auto;
text-align:center;
top:-15px;
left:0;
right:0;
font-size:110%;
font-weight:500;
}

#story8 .free_trial .app .tx {
font-weight:500;
}



/*STORY9*/
#story9 {
padding:70px 0;
background:#fff;
}

#story9 .faqs {
}

#story9 .faqs .faq {
margin-bottom:20px;
}

#story9 .faqs .faq:last-child {
margin-bottom:0;
}

#story9 .faqs .faq .question {
background:#7aacb1;
border:#7aacb1 1px solid;
display:flex;
border-radius:10px;
cursor:pointer;
}

#story9 .faqs .faq .question .item {
width:55px;
display:flex;
justify-content:center;
align-items:center;
color:#fff;
font-size:110%;
font-weight:500;
}

#story9 .faqs .faq .question h3 {
width:calc(100% - 55px);
background:#f7fafc;
padding:14px 30px 14px 15px;
font-size:110%;
font-weight:500;
color:#7aacb1;
position:relative;
display:flex;
align-items:center;
border-radius:0 9px 9px 0;
}

#story9 .faqs .faq .question h3 .arrow {
width:10px;
height:10px;
border-top:#7aacb1 1px solid;
border-right:#7aacb1 1px solid;
transform:rotate(135deg);
position:absolute;
right:20px;
display:block;
margin-bottom:5px;
}

#story9 .faqs .faq .question h3 .arrow.open {
transform:rotate(-45deg);
margin-top:7px;
}

#story9 .faqs .faq .answer_cts {
display:none;
}

#story9 .faqs .faq .answer_cts .answer {
display:flex;
justify-content:space-between;
padding:15px 0 30px;
}

#story9 .faqs .faq .answer_cts .answer .item {
width:55px;
height:55px;
border:#7aacb1 1px solid;
border-radius:10px;
display:flex;
justify-content:center;
align-items:center;
color:#7aacb1;
font-size:110%;
font-weight:500;
}

#story9 .faqs .faq .answer_cts .answer .ex {
width:calc(100% - 70px);
}

#story9 .faqs .faq .answer_cts .answer .ex p {
display:flex;
font-size:100%;
}



/*STORY10*/
#story10 {
background:#f5f0eb;
padding:70px 0;
}

#story10 .concept {
background:#fff;
padding:50px;
border:#eb9191 1px solid;
border-radius:15px;
margin-bottom:30px;
}

#story10 .concept .photo {
width:700px;
margin:0 auto 30px;
}

#story10 .concept .photo img {
border-radius:10px;
}

#story10 .concept .copy {
text-align:center;
}

#story10 .promises {
display:flex;
justify-content:center;
flex-wrap:wrap;
}

#story10 .promises .promise {
width:320px;
background:#fff;
border:#eb9191 1px solid;
border-radius:15px;
margin:0 10px 20px;
}

#story10 .promises .promise:nth-child(1) {
margin-left:0;
}

#story10 .promises .promise:nth-child(3) {
margin-right:0;
}

#story10 .promises .promise .item {
border-bottom:#eb9191 1px dashed;
color:#eb9191;
text-align:center;
font-size:110%;
font-weight:500;
padding:5px;
}

#story10 .promises .promise .ex {
height:100px;
display:flex;
justify-content:center;
align-items:center;
font-size:90%;
text-align:center;
}

#story10 .summary {
padding-top:15px;
font-size:180%;
font-weight:bold;
color:#eb9191;
text-align:center;
}





/*UNDER*/
.page {
padding:70px 0 70px;
/*background:#f5f0eb;*/
background:#e6f0f5;
}

.page .bread {
width:1000px;
margin:15px auto 30px;
text-align:right;
font-size:70%;
}

.page .cts {
display:flex;
justify-content:space-between;
flex-direction:row-reverse;
}

.page .sidebar {
width:220px;
}

.page .sidebar .bar_title {
font-size:80%;
color:#7aacb1;
padding-bottom:5px;
}

.page .sidebar .nav {
}

.page .sidebar .nav p {
border-bottom:#7aacb1 1px solid;
font-size:90%;
}

.page .sidebar .nav p:first-child {
border-top:#7aacb1 1px solid;
}

.page .sidebar .nav p a {
display:flex;
align-items:center;
position:relative;
padding:15px 30px 15px 10px;
}

.page .sidebar .nav p a .arrow {
width:8px;
height:8px;
border-top:#7aacb1 1px solid;
border-right:#7aacb1 1px solid;
transform:rotate(45deg);
display:block;
position:absolute;
right:10px;
}

.page .sidebar .etc {
padding-top:50px;
}

.page .sidebar .etc .item {
font-size:80%;
font-weight:bold;
color:#7aacb1;
}

.page .sidebar .etc .text {
font-size:80%;
}

.page .main {
width:740px;
background:#fff;
}

.page .main .contents {
padding:35px 40px;
}

.page .main .text {
}

.page .main .text p {
padding-bottom:30px;
}

.page .main .text p:last-child {
padding-bottom:0;
}






/*XXX*/
#xxx {
}



/*GROBAL*/
#grobal {
position:relative;
}

#grobal .navs {
display:flex;
justify-content:center;
align-items:center;
width:1000px;
height:45px;
margin:auto;
position:relative;
}

#grobal .navs nav {
font-size:85%;
margin:0 15px;
}

#grobal .navs nav.now {
border-bottom:#7aacb1 2px solid;
padding-bottom:2px;
}

.navs nav:after {
content:"";
width:0;
display:block;
border-bottom:#7aacb1 2px solid;
padding-bottom:2px;
margin:auto;
}

.navs nav:hover:after {
-webkit-animation:grobal 0.3s ease forwards;
animation:grobal 0.3s ease forwards;
}

.navs nav a:hover {
-webkit-animation:noopacity;
animation:noopacity;
}

#grobal .dropdown {
height:45px;
display:flex;
justify-content:center;
align-items:center;
font-size:85%;
margin:0 15px;
padding-bottom:2px;
line-height:100%;
cursor:pointer;
position:relative;
z-index:10000;
}

#grobal .dropmenu {
display:none;
}

#grobal .dropmenu.show {
display:block;
position:absolute;
top:40px;
left:268px;
z-index:10000;
}

.grobal_mask {
width:100vw;
height:100vh;
background:transparent;
position:fixed;
z-index:9999;
top:0;
left:0;
display:none;
}

.grobal_mask.show {
display:block;
}

.dropmenu p {
font-size:80%;
}

.dropmenu p:last-child a {
border-top:none;
}

.dropmenu p a {
border:#464646 1px solid;
display:block;
background:#fff;
padding:5px 10px;
}



/*FIXED HEADER*/
#fixed_header {
width:100%;
height:55px;
display:flex;
justify-content:space-between;
align-items:center;
padding:0 100px 0 10px;
background:#fff;
transform:translate(0,-100px);
transition:0.5s;
position:fixed;
top:0;
left:0;
z-index:9998;
}

#fixed_header.header_on {
transform:translate(0,0);
}

#fixed_header .logo {
width:320px;
}

#fixed_header .navs {
display:flex;
align-items:center;
}

#fixed_header .navs nav {
font-size:85%;
margin:0 15px;
}

#fixed_header .dropdown {
display:flex;
justify-content:center;
align-items:center;
font-size:85%;
padding:0 15px 2px 15px;
line-height:100%;
cursor:pointer;
z-index:15000;
height:55px;
}

#fixed_header .dropmenu {
display:none;
}

#fixed_header .dropmenu.show {
display:block;
position:absolute;
top:55px;
right:500px;
z-index:10000;
}

.fixed_mask {
width:100vw;
height:100vh;
background:transparent;
position:fixed;
z-index:9999;
top:0;
left:0;
display:none;
}

.fixed_mask.show {
display:block;
}



/*FIXED CTA*/
.fixed_cta {
width:80px;
position:fixed;
top:8px;
right:8px;
z-index:99999;
}

.fixed_cta .form {
}

.fixed_cta .line {
}

.fixed_cta div:nth-child(2) {
margin-bottom:8px;
}



/*FOOTER*/
footer {
padding:30px 0;
background:#fff;
}

footer .footer_cts {
display:flex;
justify-content:space-between;
padding-bottom:30px;
}

footer .footer_cts .contact {
width:480px;
}

footer .footer_cts .contact .logo {
width:420px;
margin-bottom:10px;
}

footer .footer_cts .contact .information {
margin-bottom:10px;
}

footer .footer_cts .contact .information .data {
display:flex;
align-items:center;
padding-bottom:3px;
}

footer .footer_cts .contact .information .data:last-child {
margin-bottom:0;
}

footer .footer_cts .contact .information .data .detail {
font-size:80%;
letter-spacing:2px;
}

footer .footer_cts .contact .information .data .item {
font-size:70%;
background:#e8f2f4;
letter-spacing:1px;
line-height:100%;
padding:3px 5px;
margin-right:7px;
}

footer .footer_cts .contact .information .data .tel {
width:330px;
}

footer .footer_cts .contact .free {
border:#466464 1px solid;
color:#466464;
text-align:center;
padding:3px;
margin-bottom:10px;
font-size:90%;
}

footer .footer_cts .contact .btns {
display:flex;
justify-content:space-between;
margin-bottom:20px;
}

footer .footer_cts .contact .btns .btn {
width:235px;
}

footer .footer_cts .contact .areas {
}

footer .footer_cts .contact .areas .item {
border-top:#505032 1px solid;
border-bottom:#505032 1px solid;
color:#505032;
text-align:center;
padding:3px;
font-size:90%;
margin-bottom:10px;
}

footer .footer_cts .contact .areas .area_cts {
display:flex;
justify-content:space-between;
}

footer .footer_cts .contact .areas .area_cts .area_map {
width:130px;
}

footer .footer_cts .contact .areas .area_cts .area {
width:330px;
font-size:80%;
}

footer .footer_cts .map {
width:480px;
height:400px;
}

footer .copyright {
font-size:70%;
text-align:center;
}





/*----------PARTS----------*/
.template {
    padding-bottom:100px;
}

/*パーツ（h2〜h5）*/
.page h2 {
    font-size:180%;
    color:#466464;
    padding-bottom:15px;
}

.page h2:first-letter {
    color:#eb9191;
}

.page h3 {
    font-size:135%;
    border-left:#eb9191 1px solid;
    padding-left:10px;
    margin-bottom:15px;
}

.page h3:first-letter {
    color:#eb9191;
}

.page h4 {
    font-size:100%;
    border-top:#7aacb1 1px solid;
    border-bottom:#7aacb1 1px solid;
    color:#7aacb1;
    margin-bottom:15px;
    padding:7px;
}

.page h5 {
    font-size:100%;
    border-left:#7aacb1 4px solid;
    color:#7aacb1;
    padding-left:10px;
    margin-bottom:15px;
}

.page .sub {
    font-size:90%;
    background:#7aacb1;
    color:#fff;
    padding:7px 15px;
    margin-bottom:15px;
}


/*患者様の声*/
#patient {
}

#patient .patients {
}

#patient .patients .patient {
    display:flex;
    justify-content:space-between;
    background:#fff;
    border:#7aacb1 1px solid;
    border-radius:10px;
    padding:25px;
    margin-bottom:20px;
}

#patient .patients .patient:last-child {
    margin-bottom:0;
}
    
#patient .patients .patient .photo {
    width:250px;
}

#patient .patients .patient .message {
    width:calc(100% - 280px);
}
    
#patient .patients .patient .message .item {
    font-size:120%;
    line-height:145%;
    color:#eb9191;
    padding-bottom:3px;
}

#patient .patients .patient .message .name {
    font-size:80%;
    padding-bottom:15px;
}

#patient .patients .patient .message .line {
    width:50px;
    height:1px;
    background:#7aacb1;
    margin-bottom:15px;
}

#patient .patients .patient .message .ex {
    font-size:90%;
}


/*DOCTOR*/
#doctor .doctors {
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
    padding-bottom:30px;
}

#doctor.column1 .doctors .doctor {
    width:100%;
    background:#fff;
    border:#7aacb1 1px solid;
    border-radius:10px;
    padding:25px 25px 20px;
    margin-bottom:20px;
    display:flex;
    justify-content:space-between;
}

#doctor.column1 .doctors .doctor .photo {
    width:180px;
}

#doctor.column1 .doctors .doctor .detail {
    width:calc(100% - 210px);
}

#doctor.column1 .doctors .doctor .detail .names {
    margin-bottom:15px;
}

#doctor.column1 .doctors .doctor .detail .names .position {
    font-size:70%;
    line-height:150%;
}

#doctor.column1 .doctors .doctor .detail .names .name {
    font-size:110%;
    font-weight:bold;
    color:#fc8017;
    padding-bottom:5px;
}

#doctor.column1 .doctors .doctor .detail .names .name .san {
    font-size:80%;
}

#doctor.column1 .doctors .doctor .detail .names .line {
    width:50px;
    height:1px;
    background:#7aacb1;
}

#doctor.column1 .doctors .doctor .detail .ex {
    font-size:90%;
}

/*2カラム*/
#doctor.column2 .doctors .doctor {
    width:48%;
    background:#fff;
    border:#7aacb1 1px solid;
    border-radius:10px;
    padding:25px 25px 20px;
    margin-bottom:20px;
    display:block;
}

#doctor.column2 .doctors .doctor .photo {
    width:180px;
    margin:0 auto 15px;
}

#doctor.column2 .doctors .doctor .detail {
    width:100%;
}

#doctor.column2 .doctors .doctor .detail .names {
    text-align:center;
    margin-bottom:15px;
}

#doctor.column2 .doctors .doctor .detail .names .position {
    font-size:70%;
    line-height:150%;
}

#doctor.column2 .doctors .doctor .detail .names .name {
    font-size:110%;
    font-weight:bold;
    color:#fc8017;
    padding-bottom:5px;
}

#doctor.column2 .doctors .doctor .detail .names .name .san {
    font-size:80%;
}

#doctor.column2 .doctors .doctor .detail .names .line {
    width:50px;
    height:1px;
    background:#7aacb1;
    margin:auto;
}

#doctor.column2 .doctors .doctor .detail .ex {
    font-size:90%;
}

#doctor .recommend_title {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:20px;
}

#doctor .recommend_title img {
    width:15px;
}

#doctor .recommend_title .title {
    font-size:150%;
    padding:0 15px 0 25px;
}

#doctor .recommends {
    display:flex;
    flex-wrap:wrap;
}

#doctor .recommends .recommend {
    width:25%;
    margin:0 0  20px 0;
}

#doctor .recommends .recommend .photo {
    width:140px;
    margin:0 auto 12px;
}

#doctor .recommends .recommend .photo img {
    border-radius:10vw;
}

#doctor .recommends .recommend .names {
    text-align:center;
}

#doctor .recommends .recommend .names .job {
    border:#464646 1px solid;
    display:inline-block;
    font-size:50%;
    line-height:100%;
    letter-spacing:0.5px;
    padding:3px 3px;
    margin-bottom:7px;
}

#doctor .recommends .recommend .names .position {
    font-size:70%;
    line-height:150%;
    margin-bottom:5px;
    letter-spacing:1px;
}

#doctor .recommends .recommend .names .name {
    font-size:90%;
    font-weight:bold;
    line-height:100%;
    letter-spacing:1.5px;
}

#doctor .recommends .recommend .names .name .san {
    font-size:80%;
    font-weight:normal;
}


/*STAFF*/
#staff {
}

#staff .members {
}

#staff .members .member {
    border:#7aacb1 1px solid;
    border-radius:10px;
    padding:25px 25px 20px;
    margin-bottom:20px;
    display:flex;
    justify-content:space-between;
}

#staff .members .member .photo {
    width:170px;
}

#staff .members .member .detail {
    width:calc(100% - 200px);
}

#staff .members .member .detail .names {
    margin-bottom:15px;
}

#staff .members .member .detail .qualification {
    margin-bottom:25px;
}

#staff .members .member .detail .qualification li {
    font-size:80%;
}

#staff .members .member .detail .names .position {
    font-size:70%;
    color:#466464;
    padding-bottom:3px;
}

#staff .members .member .detail .names .name {
    font-size:110%;
    font-weight:600;
    line-height:100%;
    color:#466464;
    padding-bottom:3px;
}

#staff .members .member .detail .names .kana {
    font-size:60%;
    letter-spacing:2px;
    color:#7aacb1;
}

#staff .members .member .detail .profiles {
}

#staff .members .member .detail .profiles .profile {
    margin-bottom:20px;
}

#staff .members .member .detail .profiles .profile:last-child {
    margin-bottom:0;
}

#staff .members .member .detail .profiles .profile .item {
    border-left:#7aacb1 3px solid;
    font-size:70%;
    margin-bottom:7px;
    color:#7aacb1;
    padding-left:7px;
}

#staff .members .member .detail .profiles .profile .message {
    background:#f7fafc;
    padding:15px 20px;
    font-size:85%;
    line-height:170%;
}


/*FORM*/
.forms .form {
}

.forms .form {
    border-bottom:#e1e1e1 1px solid;
    padding-bottom:15px;
    margin-bottom:15px;
    display:flex;
    align-items:flex-start;
}

.forms .form .items {
    width:220px;
    display:flex;
    align-items:center;
}

.forms .form .items .item {
    font-weight:600;
    letter-spacing:2px;
}

.forms .form .items .required {
    font-size:70%;
    font-weight:500;
    line-height:100%;
    letter-spacing:0;
    padding:3px 5px;
    background:#eb9191;
    color:#fff;
    margin-right:7px;
}

.forms .form .items .any {
    font-size:70%;
    font-weight:500;
    line-height:100%;
    letter-spacing:0;
    padding:3px 5px;
    border:#aaa 1px solid;
    color:#aaa;
    margin-right:7px;
}

.forms .form .answer {
    width:calc(100% - 240px);
}

.radio_btn {
    display:flex;
}

.radio_btn p {
    margin-right:15px;
}

.radio_btn label {
    cursor:pointer;
}

.checkbox {
    display:flex;
}

.checkbox p {
    margin-right:15px;
}

.checkbox label {
    cursor:pointer;
}

input[type="text"],textarea {
    padding:12px 15px;
}

.style_text {
    width:100%;
}

.style_radio {
}

.style_checkbox {
}

.style_select {
    width:250px;
    padding:12px 15px;
    font-size:90%;
}

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

	
	
/*archive*/
.archive-list {
    list-style: none;
    padding: 0;

}

.archive-list li {
    padding: 15px 0;
    border-bottom: 1px solid #ddd; /* 各投稿の間に下線 */
}

.archive-list li:last-child {
    border-bottom: none; /* 最後の投稿の下線を消す */
}

.archive-title {
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    color: #0073aa;
    display: block; /* タイトルを独立した行に */
    margin-bottom: 5px;
}

.archive-title:hover {
    text-decoration: underline;
}

.archive-date {
    font-size: 14px;
    color: #666;
    display: block; /* 日付を独立した行に */
}


.article-meta {
    margin-bottom: 40px;
}


}