/*
Theme Name:iito birth child
Theme URI:
Description:WordPressテーマ TCD「Birth」の自作子テーマです。
Template:birth_tcd057
Author:Daigo Murakawa
Author URI:https://www.props-co.jp/
Version:1.4.7
*/

/* ボタン */
.design_button a {
  display:inline-block; height:55px; line-height:55px; min-width:220px; padding:0 20px; background:#fadadb; color:#545454; text-align:center;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.design_button a:hover { background:#6598a1; color:#fff; }

/* ３点ボックス */
#index_3box.index_content:first-of-type { padding-top:30px; }
#index_3box { padding-top:100px; display: -webkit-box; display: -ms-flexbox; display: flex; }
#index_3box .box {
  /*float:left;*/ width:33.33333%; width:-webkit-calc(100% / 3); width:-moz-calc(100% / 3); width:calc(100% / 3);
  border-right:1px solid #fff;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_3box .title { font-size:16px; }
#index_3box .title a { display:block; font-weight:normal; height:58px; line-height:58px; text-align:center; background:#afcfd2; color:#000; }
#index_3box .title a:hover { background:#6598a1; }
#index_3box .image { width:100%; display:block; position:relative; z-index:2; overflow:hidden; }
#index_3box img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }


/* イントロ */
#index_intro { }
#index_intro .headline { text-align:center; line-height:1.5; margin:0; font-weight:500; }
#index_intro .desc { text-align:center; line-height:3.0; margin:0px 0 0 0; }
#index_intro .image { width:100%; height:380px; position:relative; margin:85px 0 0 0; }
#index_intro .button {
  display:inline-block; height:55px; line-height:55px; min-width:220px; padding:0 20px; text-align:center;
  margin:auto; position:absolute; top:0; bottom:0;
  left:50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}


/* お知らせ */
#index_news { }
#index_news .headline { text-align:center; line-height:1.5; margin:0; font-weight:500; }
#index_news .sub_title { text-align:center; font-size:16px; line-height:1.0; margin:0; }
#index_news_list { margin:60px 0 40px; }
#index_news_list article { float:left; background:#f5f5f5; width:380px; height:150px; margin:0 20px 0 0; overflow:hidden; }
#index_news_list article:nth-child(3n) { margin:0; }
#index_news_list .image { width:150px; height:150px; display:block; float:left; position:relative; z-index:2; overflow:hidden; }
#index_news_list .image img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#index_news_list .title_area {
  float:left; position:relative; height:150px;
  width:-webkit-calc(100% - 150px); width:-moz-calc(100% - 150px); width:calc(100% - 150px);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_news_list .no_image .title_area { width:100%; }
#index_news_list .title_area_inner {
  position:absolute; left:40px; right:40px;
  top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
}
#index_news_list .title { font-weight:normal; line-height:1.8; }
#index_news_list .title a { display:block; }
#index_news_list .date { font-size:12px; color:#999; margin-top:7px; }
#index_news .button { text-align:center; }


/* ワイドコンテンツ */
#index_wide_content { width:100%; min-width:1180px; height:440px; position:relative; margin:100px 0 0 0; }
#index_wide_content .headline_area {
  position:absolute; text-align:center; width:100%;
  top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
}

#index_wide_content .headline { text-align:center; color:#6598a0; line-height:1.5; margin:0; font-weight:500; }
#index_wide_content .button {
  display:inline-block; height:55px; line-height:55px; min-width:220px; padding:0 20px; text-align:center; margin:30px 0 0 0;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}


/* 診療科目 */
#index_course { }
#index_course .headline { text-align:center; line-height:1.5; margin:0; font-weight:500; }
#index_course .desc { text-align:center; line-height:3.0; margin:0px 0 0 0; }
#index_course_list {
  margin:87px 0 0 0; border-top:1px solid #ddd; border-left:1px solid #ddd;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -ms-justify-content:space-between; -webkit-justify-content:space-between; justify-content:space-between;
}
#index_course_list li {
  float:left; width:50%; border-right:1px solid #ddd; border-bottom:1px solid #ddd;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_course_list.type2 li {
  width:33.3333%; width:-webkit-calc(100% / 3); width:-moz-calc(100% / 3); width:calc(100% / 3);
}
#index_course_list a {
  display:block; padding:38px 38px 28px; background:#fff; height:100%;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_course_list a:hover { background:#f9f9f9; }
#index_course_list .image { margin:0 0 43px 0; }
#index_course_list .title { text-align:center; font-size:24px; font-weight:500; margin:0 0 25px 0; }
#index_course_list .short_desc { line-height:2.7; }
#index_course .button { text-align:center; margin:40px 0 0 0; }


/* ブログ */
#index_blog { width:100%; min-width:1180px; background:#f5f5f5; margin:100px 0 0 0; }
#index_blog_inner { width:1180px; margin:0 auto; padding:48px 0 60px; }
#index_blog .headline { text-align:center; line-height:1.5; margin:0; font-weight:500; }
#index_blog .sub_title { text-align:center; font-size:16px; line-height:1.0; margin:0; }
#index_blog .button { text-align:center; margin:40px 0 0 0; }
/* スライダー部分 */
#index_blog_list { margin:60px 0 0 0; position:relative; height:342px; border:1px solid #ddd; }
#index_blog_list .item {
  width:25%; height:340px; border-right:1px solid #ddd; padding:15px; background:#fff;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_blog_list .image { width:100%; display:block; margin:0 0 15px 0; position:relative; z-index:2; overflow:hidden; }
#index_blog_list img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#index_blog_list .title { font-size:16px; font-weight:normal; line-height:1.7; margin:0 0 10px 0; }
#index_blog_list .title a { display:block; }
#index_blog_list li { float:left; font-size:12px; color:#999; }
#index_blog_list li:first-of-type { border-right:1px solid #ddd; padding:0 5px 0 0; margin:0 5px 0 0; }
#index_blog_list li.category a { color:#999; display:none; }
#index_blog_list li.category a:first-of-type { display:inline; }
#index_blog_list .slick-arrow {
  width:15px; height:15px; position:absolute; overflow:hidden; cursor:pointer; background:none !important;
  -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -ms-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
#index_blog_list .slick-arrow span { text-indent:-200px; display:block; }
#index_blog_list .slick-arrow:before {
  font-family:'design_plus'; color:#555; font-size:15px; font-weight:bold; display:block; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#index_blog_list .slick-prev:before { content:'\e90f'; }
#index_blog_list .slick-next:before { content:'\e910'; }
#index_blog_list .slick-arrow:hover:before { color:#666; }
#index_blog_list .slick-prev { top:162px; left:-40px; }
#index_blog_list .slick-next { top:162px; right:-40px; }


/* Google Maps */
#index_gmap .headline { text-align:center; line-height:1.5; margin:0; font-weight:normal; }
#index_gmap .sub_title { text-align:center; font-size:16px; line-height:1.0; margin:0 0 60px; }
#index_gmap .button { text-align:center; margin:40px 0 0 0; }
#index_gmap .p-access__map { width: 100%; height: 500px; margin-bottom: 40px; }
#index_gmap .p-access__custom-overlay-inner { display: -webkit-box; display: -ms-flexbox; display: flex; position: absolute; top: -94px; left: -40px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; width: 80px !important; height: 80px !important; border-radius: 50%; font-size: 18px; text-align: center; }
#index_gmap .p-access__custom-overlay-inner::after { display: block; position: absolute; right: 0; bottom: -15px; left: 0; width: 0; height: 0; margin: auto; border-width: 16px 5px 0 5px; border-style: solid; content: ""; }


/* 会社情報 */
#index_company { padding-top:100px; }
#index_company .left_area { width:560px; float:left; margin:0 0 0 0; }
#index_company .right_area { width:560px; float:right; margin:0 0 0 0; }
#index_company .image { margin:0 0 17px 0; }
#index_company .desc { line-height:2.5; }
#index_company li { float:left; width:30px; }
#index_company li a { display:block; position:relative; text-decoration:none; }
#index_company li a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#index_company li a:before {
  font-family:'design_plus'; color:#7f7f7f; font-size:13px; display:block; position:absolute; top:10px; left:0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#index_company li a:hover:before { color:#000; }
#index_company li.twitter a:before { content:"\e904"; }
#index_company li.facebook a:before { content:"\e902"; }
#index_company li.insta a:before { content:"\ea92"; top:10px; }
#index_company li.pint a:before { content:"\e905"; }
#index_company li.mail a:before { content:"\f0e0"; }


/* スケジュール */
#schedule_table {
  margin:0;
  table-layout:fixed;
  border-collapse:collapse; border-spacing:0; width:100%;
  border-top:1px solid #ccc; border-left:1px solid #ccc;
}
#schedule_table caption { background:#ccc; color:#fff; height:50px; line-height:50px; margin-bottom:-1px; font-weight:normal; }
#schedule_table thead { background:#fafafa; }
#schedule_table td, #schedule_table th {
  padding:20px 10px; text-align:center; vertical-align:middle; font-weight:normal;
  border-right:1px solid #ccc; border-bottom:1px solid #ccc;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#schedule_table .header { width:180px; background:#fff; }
#schedule_table .color { background:#eff5f6; }


/* フリースペース */
.index_free_space {}


/* 見出しセット */
.index_headline_set .headline { text-align:center; line-height:1.5; margin:0; font-weight:500; }
.index_headline_set .desc { text-align:center; line-height:3.0; margin:0px 0 0 0; }


/* スライダー */
#header_slider { width:100%; min-width:1180px; padding-top:56.85%; overflow:hidden; position:relative; background:#fff; }
#header_slider .item { opacity:0; width:100%; position:relative; -webkit-backface-visibility:hidden; backface-visibility:hidden; overflow: hidden; }
#header_slider .image { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:1; }
#header_slider .caption {
  width:100%; z-index:3; padding:0 20px; text-align:center; margin-top:-40px;
  position:absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_slider .caption .title { line-height:1.3; -ms-word-wrap: break-word; word-wrap: break-word; position:relative; font-weight:500; }
#header_slider .link { display:block; width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:4; }
#header_slider .overlay { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:2; }
#header_slider video { position:absolute; top:0; display:block; height:100%; width:auto; max-width:inherit; }
#header_slider .image-entity { width:100%; height:auto; opacity:0; }
.youtube-player { position:absolute; top:0; opacity:0; pointer-events:none; }


/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header {
  height:90px; width:100%; min-width:1180px; position:relative; z-index:20;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_inner { height:90px; width:1180px; margin:0 auto; position:relative; }


/* ロゴ */
.pc #logo_text, .pc #logo_image {
  display:inline; position:absolute; left:0; top:50%;
  -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%);
}
#logo_image .logo { }
.pc #logo_image img.pc_logo_image { display:block; margin:0 auto; }
.pc #logo_image img.mobile_logo_image { display:none; }
.pc #logo_text h2 { line-height:1; font-weight:normal; }
.pc #logo_text a { text-decoration:none; }
.pc .header_fix #header #logo_text, .pc .header_fix #header #logo_image { display:none; }

@media screen and (max-width: 1280px) {
.pc #header .logo { display: none; }
.mobile #logo_text {
  position: absolute;
  top: 50%;
  left: 20px;
  margin: auto;
  -webkit-transform: translate(0%, -50%);
  -moz-transform: translate(0%, -50%);
  -o-transform: translate(0%, -50%);
  transform: translate(0%, -50%); }
}

/* ヘッダーボタン */
#header_button { float:right; margin:18px 0 0 46px; }
#header_button a { min-width:180px; height:50px; line-height:50px; }


/* グローバルメニュー */
.pc #global_menu { height:90px; font-size:0; float:right; }
.pc #global_menu > ul { display:inline-block; height:90px; font-size:0; position:relative; vertical-align:top; }
.pc #global_menu > ul > li { font-size:1%; position:relative; display:inline-block; height:90px; line-height:90px; margin:0 0 0 46px; }

.pc #global_menu > ul > li > a {
  font-size:14px; text-decoration:none; height:90px; line-height:90px; display:block;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.pc #global_menu > ul > li.active > a, .pc #global_menu > ul > li.current-menu-item > a { }
.pc #global_menu a:hover { }

.pc #global_menu ul ul { display:none; width:210px; position:absolute; top:90px; left:-24px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0; border:none; }
.pc #global_menu ul ul li { line-height:1.5; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { font-size:14px; background:#222; color:#000 !important; display:block; border:none; position:relative; padding:14px 25px; height:auto; line-height:1.6; margin:0; text-align:left; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

.pc #global_menu ul ul li.menu-item-has-children > a:before {
  font-size:12px; font-family:'design_plus'; content:'\e910'; color:#fff; display:block; position:absolute; right:15px; top:19px; height:14px; line-height:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* その他 */
.pc #menu_button { display:none; }
.pc #global_menu ul.main_menu { display:none; }


/* 固定ヘッダー */
.pc .header_fix { padding-top:90px; }/* #header_inner height + #header margin bottom */
.pc .header_fix #header {
  position:fixed; top:0px; left:0px; z-index:200; background:#fff; height:50px; width:100%;
  box-shadow:0 1px 5px 0 rgba(0,0,0,0.2);
  animation: slideDown 0.5s ease; -ms-animation: slideDown 0.5s ease; -webkit-animation: slideDown 0.5s ease; -moz-animation: slideDown 0.5s ease;
}
.pc .header_fix #header_inner { height:50px; }
@-webkit-keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}
@keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}


/* 固定ヘッダーのグローバルメニュー */
.pc .header_fix #header_button { display:none; }
.pc .header_fix #global_menu { bottom:-1px; float:none; }
.pc .header_fix #global_menu > ul > li { height:50px; line-height:50px; margin:0; }
.pc .header_fix #global_menu > ul > li > a { margin:0; height:50px; line-height:50px; }
.pc .header_fix #global_menu ul ul { top:50px; left:0; width:100%; }
.pc .header_fix #global_menu ul ul ul { top:0; left:100%; }
.pc .header_fix #global_menu { width:100%; }
.pc .header_fix #global_menu > ul { display: -webkit-box; -webkit-box-pack: justify; display: -webkit-flex; display: -ms-flex; display: flex; }
.pc .header_fix #global_menu > ul > li {  flex:1; -webkit-box-flex: 1; text-align:center; }


