@charset "utf-8";

/**************************************
共通
**************************************/
body {
    font-family: "Noto Sans JP", sans-serif !important;
    background-color:white;
}
p {
    font-family:'Noto Sans JP';
}
a{
    color: #333333;
    text-decoration: none;
}
a:hover {
    opacity: 0.7;
}
.sub-page{
    margin-top: 80px;
}
#wrapper{
    width: 1070px;
    margin: 130px auto 120px;
    display: flex;
    justify-content: space-around;
    flex-direction: row-reverse;
}
#content{
    width: 700px;
}
.widget_recent_entries ul li a:hover, .widget_categories ul li a:hover, .widget_archive ul li a:hover, .widget_pages ul li a:hover, .widget_meta ul li a:hover, .widget_rss ul li a:hover, .widget_nav_menu ul li a:hover, .widget_block ul li a:hover{
    background: none;
}
.entry-content{
    margin: 0;
}
.center{
    text-align: center;
}
.center img{
    display: inline;
}
.page_main p{
    margin-bottom: 30px;
    font-weight: 500;
    line-height: 2;
    font-size: 15px;
}
.page_main h1{
    width: 100%;
    font-size: 27px;
    font-weight: bold;
    text-align: center;
    line-height: 1.2em;
    margin-bottom: 30px;
    padding: 20px 0 18px 0;
    clear: both;
    color: #ef7474;
    border-top: 6px solid #ef7474;
    border-bottom: 1px solid #ef7474;
}
.page_main h2{
    background: #ef7474;
    line-height: 2;
    color: #fff;
    margin: 0 0 30px;
    border-radius: 10px;
    font-size: 20px;
    padding: 10px 20px;
}
.page_main h3{
    width: auto;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    padding: 5px 10px 5px 7px;
    clear: both;
    color: #3b3b3b;
    border-left: 4px solid #ef7474;
    border-bottom: 2px solid #ef7474;
}
.page_main h2.h2_none, .page_main h3.h3_none {
    background: none;
    margin: 0px;
    padding: 0px;
    border: 0px;
}
.page_main h4, .page_main h5, .page_main h6 {
    position: relative;
    padding-left: 25px;
    line-height: 1.4;
    color: #ef7474;
    position: relative;
    font-size: 16px;
}
.page_main h4:before, .page_main h5:before, .page_main h6:before {
    font-family: "Font Awesome 5 Free";
    content: "\f00c";
    position: absolute;
    font-size: 1em;
    left: 0;
    top: 0;
    color: #ef7474;
}
ol, ul{
    margin: 0;
    padding: 0;
}
li{
    font-size: 15px;
}

@media screen and (min-width:768px) {
    .sp {
        display: none !important;
    }
}

@media screen and (max-width:768px) {
    .pc {
        display: none !important;
    }
}

/**************************************
ヘッダー
**************************************/
.global_header {
    position: fixed;
    width: 100%;
    top: 0px;
    font-size: 0;
    opacity: 1;
    z-index: 99;
    transition: .4s;
	background-color: #f2efec;
}
html body header.global_header .header_left{
    max-width: 420px;
    margin: 0 0 0 30px;
}

html body header.global_header .header_right nav.header_menu_wrapper .header_menu li a {
    font-size: 16px;
    color: #4d4d4d!important;
    font-weight: 600;
}


/**************************************
フッター
**************************************/
footer.global_footer {
    background-color: #fafafa !important;
    padding-top: 60px !important;
}
html body footer.global_footer .footer_wrapper{
    max-width: 73vw;
}
html body footer.global_footer .footer_wrapper .footer_nav{
    width: 100%;
    border-top: solid 2px #e3e3e3;
    padding-top: 3%;
}
footer.global_footer .footer_wrapper .footer_site_link a svg{
    height: 13px!important;
}
footer.global_footer .footer_wrapper .footer_site_link a {
    border: unset !important;
}

footer.global_footer .footer_wrapper .footer_nav .footer_menu ul li {
    max-width: 100%!important;
}

footer.global_footer .footer_wrapper .footer_nav .footer_menu>div {
    width: 100%;
    padding: 0px;
    border: 0!important;
}

footer.global_footer .footer_wrapper .footer_nav .footer_menu .footer_menu_first{
    border: 0!important;
}

footer.global_footer .footer_wrapper .footer_nav .footer_menu .footer_menu_first ul li a {
    color: #333 !important;
}

footer.global_footer .footer_wrapper .footer_nav a {
    color: #333 !important;
    font-weight: 500;
    font-size: 0.8vw;
}
html body footer.global_footer .footer_copyright{
    color: #fff !important;
    background-color: #666164;
    margin: 3% 0 0;
    padding: 1% 0;
}
html body footer.global_footer .footer_wrapper .footer_nav .footer_menu span{
    color: #666164;
    font-size: 1vw !important;
}
footer.global_footer .footer_wrapper .footer_site_link a.footer_btn {
    background-color: #f4f0ea !important;
}
html body footer.global_footer .footer_wrapper .footer_nav .footer_menu ul{
    display: flex;
    gap: 40px;
    justify-content: center;
}
html body footer.global_footer .footer_wrapper .footer_nav .footer_menu ul li a::before {
    border-right: 1px solid #5b5b5b !important;
    transform: rotate(90deg) !important;
    width: 14px !important;
    height: 12px !important;
    left: -21px!important;
    top: 3px!important;
}
footer.global_footer .footer_copyright{
    font-size: 14px;
}
footer.global_footer .footer_wrapper .footer_site_link{
    align-items: center;
}
ul.f_btn{
    display: flex;
    padding: 0;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 35%;
}
ul.f_btn li{
    width: 45%;
}
ul.f_btn li img{
    width: 100%;
    height: 100%;
}

/**************************************
サイドバー
**************************************/
#sidebar {
    width: 260px;
    padding: 0;
    font-size: 15px;
    font-weight: 500;
    border-radius: 0;
}
#sidebar aside{
    margin-bottom: 30px;
}
#sidebar h3{
    padding: 13px 13px;
    color: white;
    background-color: #ef7474;
    text-align: center;
    border-radius: 7px 7px 0px 0px;
    margin: 0;
    font-size: 15px;
}
#sidebar ul.menu {
    width: 100%;
    height: auto;
    border: 1px solid #dddcda;
}
#sidebar ul.menu li {
    width: auto;
    height: auto;
    margin: 0;
    padding: 10px;
    border-bottom: 1px dotted #c7c7c7;
}
#sidebar ul.menu li:last-child{
    border-bottom: 0;
}
#sidebar ul.menu li a {
    width: auto;
    height: auto;
    display: block;
    position: relative;
    padding: 3px 10px 3px 25px;
    font-size: 15px;
}
#sidebar ul.menu li a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f138";
    font-weight: 900;
    color: #ef7474;
    position: absolute;
    left: 0;
    top: 5px;
}
#sidebar .side_info {
    height: auto;
    padding: 8px;
    border: 1px solid #dddcda;
}
#sidebar .side_info p {
    font-size: 14px;
    border-bottom: 1px dotted #c7c7c7;
    padding: 3px 0;
}
#sidebar .side_info p.img,
#sidebar .side_info p:last-child{
    border-bottom: 0;
}
#sidebar .side_info p span {
    margin-left: 65px;
}
#sidebar .side_info p b{
    color: #ed7c7c;
}
#sidebar .side_info .access_map {
    width: auto;
    height: auto;
    margin: 10px 0 5px 0;
    display: table;
}

/**************************************
お知らせ一覧
**************************************/
div#list {
    max-width: 1200px;
    margin: auto;
}
h1#archive-title {
    color: rgb(255, 255, 255);
    text-align: center;
    background-image: url(../img/intro_top.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    background-attachment: scroll;
    font-size: 2rem;
    letter-spacing: 0.1rem;
    padding: 9rem 2rem 6rem 2rem;
    line-height: 1.6;
    font-weight: bold;
}
.entry-card-content.card-content.e-card-content .admin-pv {
    display: none;
}

/*お知らせページの中*/
article#post-178 footer.article-footer.entry-footer {
    display: none;
}
main.single_main div#breadcrumb {
    display: none;
}

/*見出し下の線*/
.orange_under_line {
    color: #FA6826 !important;
    background-color: #FA6826;
    width: 55px !important;
    margin: auto !important;
    border-bottom: solid 2px;
}

/**************************************
テーブル
**************************************/
table {
    width: 100%;
    border-collapse: collapse;
    font-size: 16px;
    font-weight: 600;
}
table .color {
    background-color: #ef7474;
    color: #fff;
}
table th,
table td{
    padding: 10px;
    border:0;
}
table th{
    background-color: #ef7474;
    color: #ffffff;
    text-align: center;
    border-bottom: solid 1px white;
    width: 30%;
}
table td {
    text-align: center;
    color: #545454;
    border: 1px solid #cbcbcb;
    border-left: 0;
    background: #fff;
}
table tr:first-child th{
    border-top: solid 1px #ef7474;
}
table tr:last-child th{
    border-bottom: solid 1px #ef7474;
}

span.wpcf7-list-item {
    display: block;
}

table.table {
    table-layout: fixed;
    width: 100%;
}
table.table th {
    font-size: 14px;
}
table.table td {
    font-size: 14px;
    border: solid 1px #ef7474;
    text-align: left;
}
table.table tr:last-child th{
    border-bottom: solid 1px #ef7474;
}

/**************************************
ページ下　お問い合わせ
**************************************/
.page-contact {
    overflow: hidden;
    padding: 20px;
    border: 2px solid #ef7474;
    border-radius: 10px;
    margin: 60px 0 0;
}
.page-contact p{
    margin: 0px 0px 13px;
}
.page-contact a {
    display: block;
    margin-bottom: 1em;
}

/**************************************
患者様の声　VOICE
**************************************/
.page_main .voice h2{
    color: #ef7474;
    background: none;
    padding: 0;
    font-size: 22px;
}
.voice img.img_ttl{
    object-fit: cover;
    height: 410px;
}
.voice img.img{
    object-fit: cover;
}

/**************************************
初めての方へ
**************************************/
.point{
  margin-top: 30px;
}
.point li{
    overflow: hidden;
    border-bottom: dotted 2px #cecece;
    margin-bottom: 30px;
    clear: both;
}
.point li:last-child{
    border-bottom: 0px;
    margin-bottom: 0px;
}
.point li h3.h3_none{
    display: inline-block;
}
.point li p.img{
    float: right;
    width: 250px;
    height: 250px;
    margin-left: 30px;
}
.point li p.img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
ul.flow{
    margin-top: 25px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 20px;
}
ul.flow li{
    display: inline-block;
    vertical-align: top;
    width: 220px;
}
ul.flow li p{
    margin: 0;
}
ul.flow li p.img img{
    width: 100%;
}
ul.flow li p.ttl{
    font-size: 22px;
    font-weight: 600;
}

/**************************************
スタッフ紹介
**************************************/
.stuff_block{
  width: 100%;
  overflow: hidden;
}
.stuff_img{
  float: left;
  width: 50%;
}
.stuff_img p.pc{
  margin-top: 0;
}
.stuff_txt{
  float: right;
  width: 48%;
}
.stuff_txt ul {
    margin-bottom: 8px;
    margin-top: 5px;
}

/**************************************
症例一覧
**************************************/
.case-block span.case-title {
    display: block;
    font-size: 28px;
    color: gray;
    text-align: center;
    padding: 10px;
}
.case-block span.case-title::before,
.case-block span.case-title::after {
    content: "-";
    display: inline-block;
    color: #ef7474;
    transform: scaleX(4);
}
.case-block span.case-title::before {
    margin-right: 25px;
}
.case-block span.case-title::after {
    margin-left: 25px;
}
.case-block ul {
    width: 100%;
    overflow: hidden;
    margin-bottom: 40px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
}
.case-block li {
    display: block;
    width: 33.333333333333333333333333333333333333333%;
    padding: 5px;
    float: left;
}
.case-block a {
    text-decoration: none;
    transition: 0.2s;
    overflow: hidden;
    display: block;
    border-radius: 5px;
    background-color:#ef7474;
    color: white;
    text-align: center;
    padding: 15px;
    font-size: 14px;
    font-weight: normal;
    position: relative;
}
.case-block a::after {
    content: " ";
    display: inline-block;
    border: 5px solid transparent;
    border-left-color: white;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.case-block a:hover {
    transform: scale(0.9);
    opacity: 0.5;
}


/**************************************
症例LP
**************************************/
#wrapper-lp{
    width: 1050px;
    margin: 60px auto 60px;
}
#wrapper-lp #content{
    width: 100%;
}
.case_main_visual{
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    background-image: url(../images/bk_t_main.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.case_main_visual .case_main_visual_in{
    max-width: 1400px;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.case_main_visual_in img {
    margin: auto;
}
.worries_block{
    padding: 15px 20px 5px;
}
.worries_block span.sub-hd {
    display: block;
    padding: 1em 0;
    text-align: center;
    font-size: 24px;
    font-weight: normal;
    color: dimgrey;
    border-top: 1px solid darkgray;
    border-bottom: 1px solid darkgray;
    margin: 1em 0;
}
.worries_block img.img-r {
    float: right;
    margin-left: 1em;
    margin-bottom: 1em;
    width: 30%;
}
.lp-nayami ul{
    width: 70%;
}
.lp-nayami ul li {
    text-align: left;
    padding: 1em 0;
    padding-left: 45px;
    color: dimgrey;
    font-size: 18px;
    border-bottom: 1px dotted darkgray;
    background-image: url(../images/check-icon.png);
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: left center;
}
.worries_block .center-img img {
    margin: 3em auto;
}
.worries_block span.hd_2 {
    display: block;
    margin-bottom: 1em;
    font-size: 30px;
    font-weight: bold;
    color: #124f88;
    text-align: center;
}
#shorei .center-img{
    margin: 40px 0;
}
#shorei img {
    margin: auto;
}

/**************************************
AI姿勢分析
**************************************/
/*ブレッドエリア*/
.bresd_area ul{
    width: 100%;
    margin: auto;
}
ul.check-li {
    width: 100%;
    border: 1px solid #0b60b7;
    padding: 0 10px;
    margin-bottom: 1em;
}
ul.check-li li {
    padding: 15px 0;
    border-bottom: 1px dotted #0b60b7;
    font-weight: bold;
    padding-left: 35px;
    background-image: url(../images/check-01.png);
    background-size: 25px;
    background-position: left center;
    background-repeat: no-repeat;
}
ul.check-li li:last-of-type {
    border-bottom: none;
}
.bread_right{
    margin: 20px 50px;
    float: right;
    width: 25%;
}

/*TOP-当院の施術がお役に立てないケースがあります*/
.other_hospitals{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-evenly;
    max-width: 1000px;
    border: solid 3px #ceebfa;
    padding: 40px 39px 65px 50px;
    margin: 50px auto;
    align-items: center;
}
.other_hospitals_title{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}
.other_hospitals_title span{
    color: #164b86;
    font-size: 20px;
    font-weight: bold;
}
.other_hospitals_txt{
    text-align: center;
    margin: 10px 0;
}
.other_hospitals .btn a{
    text-decoration: none;
    color: #FFF;
    background-color: #0d70ba;
    padding: 20px 45px;
}
.other_hospitals .btn{
    margin-top: 50px;
}

.attention_txt{
    color: #0e5094;
    font-size: 22px;
    font-weight: bold;
    margin-top: -15px;
}
.attention_txt span{
    color: #ec2436;
    font-size: 35px;
    font-weight: bold;
}

/*症例下層*/
div.symptom_nayami{
  overflow: hidden;
  width: 700px;
  margin: auto;
}
div.symptom_nayami .right{
  float: right;
  width: 230px;
  text-align: center;
}
div.symptom_nayami .right img{
  display: inline-block;
}

div.symptom_nayami ul{
  float: left;
  width: 450px;
}

div.symptom_nayami ul li{
  background-image: url("../images/check-icon.png");
  background-repeat: no-repeat;
  background-size: 32px;
  background-position: left center;
  padding: 13px 0px 13px 50px;
  border-bottom: dotted 2px #c5bbbb;
  color: #562b0c;
  font-size: 16px;
  font-weight: bold;
}

/* ページャー */
.page-numbers{
    width: auto;
    height: auto;
    padding: 3px 30px;
}