@charset "utf-8";


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
/* レイアウト */
#main_contents { }
#main_col {
  padding:30px 30px 50px; width:calc(100% - 360px); float:right;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#side_col {
  padding:30px 30px 50px; width:360px; float:left; overflow:hidden; 
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#one_col {
  padding:30px 30px 50px; max-width:900px; margin:0 auto;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
body.layout2 #main_col { float:left; }
body.layout2 #side_col { float:right; }
@media screen and (max-width:950px) {
  #main_col, #one_col { width:auto; float:none !important; }
  #side_col { width:auto; float:none !important; border-top:1px solid #ddd; padding-top:50px; }
}
@media screen and (max-width:750px) {
  #main_col { padding:30px 20px 40px; }
  #side_col { padding:30px 20px 40px; }
  body.single-post #main_col { padding-bottom:0; }
}


/* ヘッダー */
#header { }
#header_top_inner { width:auto; height:60px; }
#header_video { max-height: 100%; }


/* 固定ヘッダー */
.mobile body.home.header_fix_mobile { padding-top:0; } 
.mobile .header_fix_mobile { padding-top:60px; }
.mobile .header_fix_mobile #header {
  position:fixed; top:0px; left:0px; z-index:200; width:100%; box-shadow:0 0 15px 5px rgba(0,0,0,0.1);
  -webkit-animation: slideDown 0.5s ease; animation: slideDown 0.5s ease;
}
@-webkit-keyframes slideDown {
  0% { top:-70px; }
  100% { top:0px; }
}
@keyframes slideDown {
  0% { top:-70px; }
  100% { top:0px; }
}
@media screen and (max-width:750px) {
  .mobile .header_fix_mobile { padding-top:60px; }
  @-webkit-keyframes slideDown {
    0% { top:-60px; }
    100% { top:0px; }
  }
  @keyframes slideDown {
    0% { top:-60px; }
    100% { top:0px; }
  }
}


/* スライドメニュー */
#mobile_menu {
  position:fixed; top:0px; right:-400px; width:400px; height:100%; background:#333; overflow:auto; z-index:9999;
  -webkit-transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000); transition:right 300ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-backface-visibility: hidden; backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
}
.open_menu #mobile_menu { right:0; box-shadow:-5px 0 20px 0 rgba(0,0,0,0.4); }
@media screen and (max-width:500px) {
  #mobile_menu { right:-80%; width:80%; }
}


.open_menu #container:before {
  content:''; display:block; width:100%; height:100%; position:fixed; top:0px; left:0px; background:rgba(0,0,0,0.6); z-index:9999;
}
/* safariとedgeのみ背景をぼかす */
_::-webkit-full-page-media, _:future, :root .open_menu #container:before { background:rgba(0,0,0,0.6); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
@supports (-ms-ime-align: auto) {
  .open_menu #container:before { background:rgba(0,0,0,0.6); -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }
}
/* ぼかしはここまで */


/* admin bar利用時 */
body.admin-bar { padding-top:32px; }
body.admin-bar.header_fix_mobile #header { margin-top:32px; }
body.admin-bar #mobile_menu { padding-top:32px; }
.mobile body.admin-bar.header_fix_mobile { padding-top:102px; }
@media screen and (max-width:781px) {
  body.admin-bar { padding-top:46px; }
  body.admin-bar.header_fix_mobile #header { margin-top:46px; }
  body.admin-bar #mobile_menu { padding-top:46px;}
  body.admin-bar.fixed_find_menu #find_menu_wrap { top:46px; }
  body.admin-bar.fixed_find_menu { padding-top:106px; }
  .mobile body.admin-bar.header_fix_mobile { padding-top:126px; }
}


/* モバイル用キャッチフレーズと説明文を置き換え */
@media screen and (max-width:750px) {
  .has_mobile_word span { display:none; }
  .has_mobile_word span.mobile { display:block; }
}

/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */
#header_slider_wrap { height:480px; }
@media screen and (max-width:950px) {
  #header_slider_wrap { height:400px; }
}
@media screen and (max-width:550px) {
  #header_slider_wrap { height:350px; }
}


/* スライダー */
#header_slider { min-width:inherit; height:480px; }
#header_slider .item { height:480px; }
#header_slider_wrap .caption { width:auto; margin-top:30px; padding:0 30px; }
@media screen and (max-width:950px) {
  #header_slider { min-width:inherit; height:400px; }
  #header_slider .item { height:400px; }
  #header_slider_wrap .caption { padding:0 20px; }
  #header_slider_wrap .caption .title { line-height:1.3; }
  #header_slider_wrap .caption .button { min-width:200px; height:45px; line-height:45px; padding:0 15px; font-size:12px; }
}
@media screen and (max-width:750px) {
}
@media screen and (max-width:550px) {
  #header_slider { height:350px; }
  #header_slider .item { height:350px; }
  #header_slider_wrap .caption.para_slider_caption { bottom:30px; }
}

@media screen and (max-width:550px) {
  #header_slider:has(video) { height:100vh !important; }
  #header_slider_wrap:has(video) { height:100vh !important; }
}

/* パララックススライダー */
@media screen and (max-width:1250px) {
  #header_slider.header_para_slider { min-width: auto; }
  #header_slider.header_para_slider .item { height:480px; width:480px; }
}
@media screen and (max-width:950px) {
  #header_slider.header_para_slider { min-width: auto; }
  #header_slider.header_para_slider .item { height:400px; width:400px }
}
@media screen and (max-width:550px) {
  #header_slider.header_para_slider { min-width: auto; }
  #header_slider.header_para_slider .item { height:350px; width:350px }
}


/* サイドボタン */
@media screen and (max-width:950px) {
  #index_side_button { display:none !important; }
}


/* ブロックコンテンツ */
.index_box_content .title { top:30px; left:30px; }
.index_box_content .catch { bottom:30px; left:30px; }
@media screen and (max-width:750px) {
  .index_box_content .box { float:none; height:210px; }
  .index_box_content .image_wrap { height:210px; }
  .index_box_content .image { height:210px !important; }
  .index_box_content.type1 .box { width:100%; }
  .index_box_content.type2 .box { width:100%; }
  .index_box_content .title span { margin-top:5px; }
}


/* フリースペース */
#index_free_space { width:auto; margin:0 auto; padding:40px 30px 10px; }
@media screen and (max-width:950px) {
  #index_free_space { padding:30px 20px 0px; }
}




/* ----------------------------------------------------------------------
　トップページ　（コンテンツビルダー）
---------------------------------------------------------------------- */
/* キャッチフレーズ */
.index_cb_catch { padding:37px 30px 40px; }
@media screen and (max-width:950px) {
  .index_cb_catch { padding:25px 20px 23px; }
}
@media screen and (max-width:750px) {
}

/* アーカイブボタン */
@media screen and (max-width:950px) {
  .index_cb_button a { min-width:200px; height:45px; line-height:45px; padding:0 15px; font-size:12px; }
}

/* エレメント画像 */
@media screen and (max-width:950px) {
  .element_image { }
  .element_image img { width:38px; height:auto; margin:0 auto 25px; }
}




/* ----------------------------------------------------------------------
　クリニック
---------------------------------------------------------------------- */
/* トップページ */
#index_clinic { width:auto; padding:15px 30px 60px; }
#index_clinic .post_list { margin:0 0 60px 0; }
#index_clinic .item { width:100%; height:350px; }
#index_clinic .item:nth-child(2) .title_area, #index_clinic .item:nth-child(5) .title_area, #index_clinic .item:nth-child(8) .title_area, #index_clinic .item:nth-child(11) .title_area {
  top:auto;
}
#index_clinic .item:nth-child(2) .image_wrap, #index_clinic .item:nth-child(5) .image_wrap, #index_clinic .item:nth-child(8) .image_wrap, #index_clinic .item:nth-child(11) .image_wrap {
  top:auto; bottom:auto;
}
#index_clinic .title_area { height:350px; width:50%; right:0px; left:auto; }
#index_clinic .image_wrap { height:350px; width:50%; left:0px; }
#index_clinic .image { height:350px !important; }
#index_clinic .item:nth-child(even) .title_area { right:auto; left:0px; }
#index_clinic .item:nth-child(even) .image_wrap { left:auto; right:0px; }
@media screen and (max-width:950px) {
  #index_clinic .item { height:250px; }
  #index_clinic .title_area { height:250px; }
  #index_clinic .image_wrap { height:250px; }
  #index_clinic .image { height:250px !important; }
}
@media screen and (max-width:750px) {
  #index_clinic .item { height:auto; }
  #index_clinic .title_area { width:100%; height:auto; position:relative; top:auto; bottom:auto; left:auto; right:auto; }
  #index_clinic .image_wrap { width:100%; height:320px; position:relative; top:auto; bottom:auto; left:auto; right:auto; }
  #index_clinic .image { height:320px !important; }
  #index_clinic .title_area_inner { padding:65px 30px; position:relative; top:0px; -webkit-transform: translateY(0%); transform: translateY(0%); }
}
@media screen and (max-width:550px) {
  #index_clinic .post_list { margin:0 0 30px 0; }
  #index_clinic { width:auto; padding:15px 20px 40px; }
  #index_clinic .index_cb_catch { padding-left:0; padding-right:0; }
  #index_clinic .title_area .desc { margin-top:9px; }
}


/* アーカイブページ */
#clinic_list { width:auto; margin:40px 30px; }
#clinic_list .bottom_area_inner { padding:0 30px; }
#clinic_list .catch { text-align:center; font-size:24px; line-height:1.6; font-weight:500; }
#clinic_list .desc { font-size:16px; line-height:2; margin-top:45px; }
#clinic_list .link_button a { min-width:200px; height:45px; line-height:45px; padding:0 15px; font-size:12px; }
@media screen and (max-width:750px) {
  #clinic_list .item { width:auto; float:none; border-right:1px solid #ddd;}
  #clinic_list .bottom_area { height:auto; }
  #clinic_list .bottom_area_inner { padding: 25px 30px 30px; position:relative; top:0%; -webkit-transform: translateY(0%); transform: translateY(0%); }
  #clinic_list .title{height: 50px; line-height: 50px;}
  #clinic_list .desc { font-size:14px; margin-top:18px; }
  #clinic_list .link_button { margin-top:23px;}
}
@media screen and (max-width:550px) {
  #clinic_list { margin:30px 20px; }
  #clinic_list .image_wrap { height:115px; }
}


/* --------------------- 詳細ページ ---------------------*/
/* スタッフの情報 */
@media screen and (max-width:750px) {
  #clinic_staff_info { padding:0; }
  #clinic_staff_info .name { margin:20px 0 0 0; }
}


/* コンテンツ一覧1 */
#clinic_content_list1 .item { height:auto; margin:0 0 20px 0; }
#clinic_content_list1 .item:last-child { margin:0 0 20px 0; }
#clinic_content_list1 .image { width:auto; height:250px; float:none; }
#clinic_content_list1 .desc {
  font-size:16px; line-height:2; width:auto; padding:25px 30px;
  position:relative; left:auto; top:0%; -webkit-transform: translateY(0%); transform: translateY(0%);
}
@media screen and (max-width:750px) {
  #clinic_content_list1 .item:last-child { margin:0; }
  #clinic_content_list1 .image { height:200px; }
}


/* コンテンツ一覧２ */
#clinic_content_list2 .item {
  height:auto; margin:0 0 20px 0; padding:30px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#clinic_content_list2 .item:last-child { margin:0 0 20px 0; }
#clinic_content_list2 .image { width:auto; max-width:300px; height:260px; float:none; margin:0 auto; }
#clinic_content_list2 .left_area { width:auto; height:auto; float:none; margin:0 0 20px 0; }
#clinic_content_list2 .left_area_inner { padding:0; position:relative; left:auto; top:0%; -webkit-transform: translateY(0%); transform: translateY(0%); }
#clinic_content_list2 .headline { font-size:22px; text-align:center; }
#clinic_content_list2 .desc { font-size:16px; line-height:2; margin-top:10px; }
#clinic_content_list2 .link_button { width:auto; height:auto; float:none; text-align:center; }
#clinic_content_list2 .link_button a {
  min-width:200px; height:50px; line-height:50px; padding:0 15px; font-size:12px;
  position:relative; left:0; top:0%; -webkit-transform: translateY(0%); transform: translateY(0%);
}
@media screen and (max-width:750px) {
  #clinic_content_list2 .item:last-child { margin:0; }
}


/* Google Map */
@media screen and (max-width:950px) {
  #cinic_address_data { border:none; padding:30px; margin:0; }
  #cinic_address_data .link_button a { min-width:200px; height:50px; line-height:50px; padding:0 15px; font-size:12px; }
}
@media screen and (max-width:750px) {
  #access_google_map { height:450px; }
  #access_google_map .pb_googlemap_embed { height:450px; }
  #cinic_address_data .address{margin-top: 15px;}
　#cinic_address_data .link_button{margin-top: 15px;}
}
@media screen and (max-width:550px) {
  #access_google_map { height:320px; }
  #access_google_map .pb_googlemap_embed { height:320px; }
}




/* ----------------------------------------------------------------------
　キャンペーン
---------------------------------------------------------------------- */
/* トップページ */
#index_campaign1 { padding:15px 0 60px; }
@media screen and (max-width:550px) {
  #index_campaign1 .desc{ line-height: 2.0; }
  #index_campaign_slider .category a{min-width: 100px;}
}

/* スライダー */
#index_campaign_slider_area { width:auto; }
#index_campaign_slider_wrap { width:auto; }
#index_campaign_slider { width:auto; margin:0 10px 60px 30px; }
#index_campaign_slider .item { width:calc(100% / 3); margin:0 20px 0 0; }
#index_campaign_slider .item a.link { width:100%; }
/* ナビゲーション（矢印） */
#index_campaign1 .index_slider_arrow { display:none; }
@media screen and (max-width:950px) {
  #index_campaign_slider { width:auto; margin:0 10px 50px 30px; }
  #index_campaign_slider .item a.link .top_area { height:193px; }
  #index_campaign_slider .blur_image { height:193px; }
  #index_campaign_slider .title_area { height:70px; }
  #index_campaign_slider .title { padding:0 20px; }
  #index_campaign_slider .item a.link { height:250px; }
  #index_campaign_slider .desc { margin-top:10px; }

}
@media screen and (max-width:550px) {
  #index_campaign1 { padding:5px 0 40px!important; }
  #index_campaign_slider { width:auto; margin:0 0 25px 20px; }
}


/* トップページ 二つ目 */
#index_campaign2 { padding:15px 0 60px; }
@media screen and (max-width:550px) {
  #index_campaign2 { padding:5px 0 40px!important; }
  #index_campaign2 .desc{ line-height: 2.0; }
}


/* 記事一覧（アーカイブページと共有） */
body.home #campaign_list  { width:auto; margin:0 10px 40px 30px; }
#archive_campaign #campaign_list  { width:auto; margin:0 10px 0 30px; }
#campaign_list .item { width:calc(100% / 3 - 20px); margin:0 20px 20px 0; }
#archive_campaign #campaign_list .item:nth-child(3n), #campaign_list .item.third { margin-right:0; }
#campaign_list .item.large { width:calc(50% - 20px); }
#campaign_list .item.large:nth-child(2n) { margin-right:0; }
#campaign_list .item a.link { height:193px; }
#campaign_list .item.large a.link { height:300px; }
#campaign_list .blur_image { height:193px; }
#campaign_list .item.large a.link .blur_image { height:300px; }
#campaign_list.type2 .item.large:nth-child(2n) { margin-right:20px; }
#campaign_list.type2.same_size .item:nth-child(3n) { margin-right:20px; }
#campaign_list.type2.same_size .item.large:nth-child(2n) { margin-right:0px; }
@media screen and (max-width:950px) {
  #campaign_list .item { width:calc(50% - 20px); margin:0 20px 20px 0; }
  #archive_campaign #campaign_list .item:nth-child(3n), #campaign_list .item.third { margin-right:20px; }
  #campaign_list .title_area { height:70px; }
  #campaign_list .title { padding:0 20px; }
  #campaign_list .item.large a.link { height:193px; }
  #campaign_list .item.large a.link .blur_image { height:193px; }
  #campaign_list.type2 .item:nth-child(3n) { margin-right:20px; }
  #campaign_list.type2 .item.large:nth-child(2n) { margin-right:20px; }
  #campaign_list.type2 .item.large.even { margin-right:20px; }
}
@media screen and (max-width:550px) {
  #index_campaign2 { padding:5px 0 40px; }
  body.home #campaign_list  { margin:0 20px 20px; }
  #archive_campaign #campaign_list  { margin:0 20px 20px; }
  #campaign_list .item { width:100%; margin:0 0 10px 0; }
  #archive_campaign #campaign_list .item:nth-child(3n), #campaign_list .item.third { margin-right:0px; }
  #campaign_list .item.large { width:100%; }
  #campaign_list.type2 .item:nth-child(3n) { margin-right:0px; }
  #campaign_list.type2 .item.large:nth-child(2n) { margin-right:0px; }
  #campaign_list.type2 .item.large.even { margin-right:0px; }
  #campaign_list.type2.same_size .item:nth-child(3n) { margin-right:0px; }
}


/* アーカイブページ */
#archive_campaign { margin-bottom:40px; }
#archive_campaign_category_list {
  width:100%; height:52px; margin:0 auto 40px; overflow:scroll; position:relative;
  -webkit-overflow-scrolling: touch;
}
#archive_campaign_category_list .small { display:table; flex-wrap:nowrap; }
#archive_campaign_category_list .small li { width:150 !important; -ms-flex:0; -webkit-flex:0; flex:0; }
#archive_campaign_category_list ul { display:table; table-layout:fixed; text-align:center; width:-webkit-calc(100% + 5px); width:calc(100% + 5px); }
#archive_campaign_category_list::-webkit-scrollbar { display: none; }
#archive_campaign_category_list ul::-webkit-scrollbar { display: none; }
#archive_campaign_category_list ul li::-webkit-scrollbar { display: none; }
#archive_campaign_category_list li { width:200px !important; float:none; display:table-cell; vertical-align:top; }
#archive_campaign_category_list li a { font-size:12px; height:50px; line-height:52px; border-right:none; }
@media screen and (max-width:750px) {
  #archive_campaign_category_list li { width:170px !important; }
  #archive_campaign_category_list { margin:0 auto 30px; }
}
@media screen and (max-width:550px) {
  #archive_campaign { margin-bottom:30px; }
  #archive_campaign_category_list li { width:150px !important; }
  #archive_campaign_category_list { margin:0 auto 20px; }
}


/* カテゴリーページ */
#campaign_list2 .title_area_inner { padding:0 30px; }
#campaign_list2 .label { left:auto; right:170px; width:80px; height:80px; z-index:20; }
@media screen and (max-width:950px) {
  #category_campaign_headline { padding:0 20px; margin:0 0 20px 0; height:50px; line-height:50px; font-size:18px; }
  #category_campaign_desc { font-size:14px; margin:0 0 20px 0; }
  #campaign_list2 { padding:0; }
  #campaign_list2 .item { height:200px; margin:0 0 10px 0; }
  #campaign_list2 .item:last-child { margin:0; }
  #campaign_list2 .item a { height:200px; }
  #campaign_list2 .image_wrap { width:200px; height:200px; }
  #campaign_list2 .title_area { width:calc(100% - 200px); }
  #campaign_list2 .desc { font-size:14px; margin:10px 0 0 0; }
  #campaign_list2 .label { right:120px; }
}
@media screen and (max-width:550px) {
  #campaign_list2 .item { height:140px; }
  #campaign_list2 .item a { height:140px; }
  #campaign_list2 .image_wrap { width:140px; height:140px; }
  #campaign_list2 .title_area { width:calc(100% - 140px); }
  #campaign_list2 .label { right:60px; }
  #campaign_list2 .desc { display:none; }
  #campaign_list2 .title { max-height:6.4em; }
  #campaign_list2 .title span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
}




/* ----------------------------------------------------------------------
　お知らせ
---------------------------------------------------------------------- */
/* トップページ */
#index_news { padding:15px 0 60px; }
#index_news .post_list { width:auto; margin:0 30px 60px; }
@media screen and (max-width:950px) {
  #index_news .post_list { display:block; }
  #index_news .post_list .item { width:100%; height:auto; margin:0 0 -1px 0; }
  #index_news .post_list .item a { padding:25px 20px 20px; }
  #index_news .post_list .date { font-size:12px; }
}
@media screen and (max-width:750px) {
  #index_news .title { font-size:14px; }
}
@media screen and (max-width:550px) {
  #index_news { padding:15px 0 40px; }
  #index_news .post_list { margin:0 20px 30px; }  
}


/* アーカイブページ */
#news_archive .image_wrap { width:200px; height:200px; }
#news_archive .title_area { -webkit-width:calc(100% - 200px); width:calc(100% - 200px); height:200px; }
#news_archive .title { max-height:4.8em; }
#news_archive .title span { -webkit-line-clamp:3; }
@media screen and (max-width:950px) {
  #news_archive .image_wrap { width:335px; }
  #news_archive .title_area { -webkit-width:calc(100% - 335px); width:calc(100% - 335px); }
  #news_archive .no_image .title_area_inner { padding:0; }
}
@media screen and (max-width:750px) {
  #news_archive .item { height:115px; }
  #news_archive .item a { padding:15px; }
  #news_archive .image_wrap { width:145px; height:85px; }
  #news_archive .title_area { -webkit-width:calc(100% - 145px); width:calc(100% - 145px); height:85px; }
  #news_archive .title { font-size:14px; }
  #news_archive .title_area_inner { padding:0 0 0 20px; }
  #news_archive .date { font-size:12px; }
}


/* 詳細ページ */
@media screen and (max-width:750px) {
  #recent_news { margin:30px 0 0 0; padding:30px 20px; }
  #recent_news li a { padding: 18px 20px;}
  #recent_news li .title { font-size:14px; overflow:visible; white-space:normal; text-overflow:clip; }
  #recent_news li .date { font-size:12px; }
  #recent_news .link { font-size:14px; position:absolute; right:40px; top:32px; }
  body.single-news #single_banner_bottom { padding:10px 0 0; }
}
@media screen and (max-width:550px) {
  #recent_news { margin:30px 0 0 0; padding:0; background:none !important; }
  #recent_news .headline { margin:0 0 20px 0; }
  #recent_news .link { font-size:14px; position:relative; right:auto; top:auto; float:right; margin:20px 20px 0 0; }
  #recent_news li .title { overflow:hidden; max-height:3.2em; z-index:2; }
  #recent_news li .title span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
}




/* ----------------------------------------------------------------------
　バナーコンテンツ
---------------------------------------------------------------------- */
@media screen and (max-width:950px) {
  #index_banner .box { width:100%; height:400px; float:none; }
}
@media screen and (max-width:550px) {
  #index_banner .box { height:230px; }
  #index_banner .blur_image { height:230px; }
  #index_banner .title { width:100px; height:100px; line-height:100px; }
  #index_banner .catch { height:50px; font-size:14px; }
  #index_banner .catch p { font-size:14px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
}




/* ----------------------------------------------------------------------
　スタッフ
---------------------------------------------------------------------- */
/* トップページ */
#index_staff { padding:15px 0 60px; }
@media screen and (max-width:550px) {
  #index_staff { padding:15px 0 40px!important; }
  #index_staff .desc{ line-height: 2.0; }
}

/* スライダー */
#index_staff .index_slider_arrow { display:block; }
#index_staff .index_slider_arrow.prev { top:100px; left:0px; }
#index_staff .index_slider_arrow.next { top:100px; right:0px; }
#index_staff_slider_area { width:auto; }
#index_staff_slider_wrap { width:auto; }
#index_staff_slider { z-index:2; position:relative; width:auto; margin:0 40px 58px 55px; overflow:visible; }
#index_staff_slider .item { width:calc(100% / 3 - 20px); margin:0 20px 0 0; }
@media screen and (max-width:550px) {
  #index_staff .index_slider_arrow.prev { margin-top:-100px; left:0px; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
  #index_staff .index_slider_arrow.next { margin-top:-100px; right:0px; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
  #index_staff_slider { margin:0 55px 30px; }
  #index_staff { padding:15px 0 40px; }  
  #index_staff_slider .item { width:100%; margin:0; }
  #index_staff_slider .animate_image { margin:35px auto 15px; }
  #index_staff_slider .desc_area { height:auto; position:relative; }
  #index_staff_slider .desc_area:before { content: ""; display: block; padding-top: 100%; }
  #index_staff_slider .desc_area .desc { position: absolute; top: 0;  left: 0; width: 100%; height: 100%; max-height:inherit; overflow:visible; }
  #index_staff_slider .desc_area p {
    padding:30px; position:absolute; display:block;
    top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  }
}


/* アーカイブページ */
#staff_list { width:auto; margin:40px 30px; }
#staff_list .item { width:50%; }
@media screen and (max-width:550px) {
  #staff_list { margin:30px 20px; }
  #staff_list .item { width:100%; height:auto; }
  #staff_list .item.no_data_list { height:auto; }
  #staff_list .title { font-size:16px; height:50px; line-height:50px; }
  #staff_list .desc { height:auto; padding:25px 30px; }
  #staff_list .desc p {
    font-size:14px; overflow:visible; max-height:inherit; padding:0;
    position:relative; top:0%; -webkit-transform: translateY(0%); transform: translateY(0%);
  }
  #staff_list .desc p span { display:block; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-height: 2.0; }
  #staff_list .image_wrap { height:115px; }
  #staff_list .data_list { margin:0 10px 10px; padding:20px 20px; height:auto; }
  #staff_list .data_list .headline { padding:15px 0 25px; }
  #staff_list .data_list ul { max-height:inherit; overflow:visible; }
  #staff_list .data_list li { font-size:12px; margin:0 15px 10px 0; }
}


/* 詳細ページ */
#single_staff { margin-bottom:-35px; }
@media screen and (max-width:950px) {
  #single_staff { margin-bottom:-15px; }
}
@media screen and (max-width:950px) {
  #single_staff { margin-bottom:-35px; }
}




/* ----------------------------------------------------------------------
　サービス
---------------------------------------------------------------------- */
/* アーカイブページ */
#archive_service { width:auto; margin:0px auto 0px; }
#archive_service .item:last-child { border-bottom:none; }
#archive_service .top_area .title { top:50px; left:50px; }
#archive_service .top_area .catch { bottom:50px; left:50px; }
#archive_service .bottom_area { padding:50px 50px; border-left:none; border-right:none; }
@media screen and (max-width:950px) {
  #archive_service .bottom_area .link_button  a { min-width:200px; height:45px; line-height:45px; padding:0 15px; font-size:12px; }
  #archive_service .top_area .title { top:30px; left:30px; }
  #archive_service .top_area .title span{margin: 7px 0 0 0;}
  #archive_service .top_area .catch { bottom:30px; left:30px; }
  #archive_service .bottom_area { padding:30px 30px 40px; }
}
@media screen and (max-width:750px) {
  #archive_service .bottom_area .sub_category { width:auto; float:none; }
  #archive_service .bottom_area .desc { width:auto; float:none; margin:20px 0 0; }
  #archive_service .bottom_area .link_button { padding:30px 0 0 0; }
}
@media screen and (max-width:550px) {
  #archive_service .top_area { height:90px; }
  #archive_service .top_area .image { height:90px; }
  #archive_service .top_area .title { left:20px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
  #archive_service .top_area .catch { display:none; }
  #archive_service .mobile_catch { display:block; padding:15px 20px 12px; border-bottom:1px solid #ddd; line-height:1.6; }
  #archive_service .bottom_area { padding:20px 20px 30px; }
  #archive_service .bottom_area .desc { margin:10px 0 0; }
  #archive_service .bottom_area .link_button { padding:20px 0 0 0; }
}


/* カテゴリーページ */
#main_col #archive_service .top_area .title { left:30px; }
#main_col #archive_service .top_area .catch { left:30px; }
@media screen and (max-width:550px) {
  body.tax-service_category #archive_service .mobile_catch { padding:15px 0px 12px; }
  #main_col #archive_service .item .category_desc { font-size:14px; margin-top:23px; }
  #archive_service .archive_service_child { margin:23px 0 0 0; }
  #archive_service .archive_service_child .headline { padding:0 20px; margin:0 0 0 0; height:50px; line-height:50px; }
  #archive_service .archive_service_child .category_desc { font-size:14px; margin:23px 0; }
}

/* 記事一覧（詳細ページでも使用） */
.service_post_list li { width:calc(50% - 14px); margin:0 20px 20px 0; }
.service_post_list li:nth-child(2n) { margin-right:0; }
.service_post_list li a { height:330px; }
.service_post_list .title_area { padding:30px 35px; }
@media screen and (max-width:550px) {
  .service_post_list li a { height:290px; }
  .service_post_list .image_wrap { height:117px; }
  .service_post_list .image { height:117px !important; }
  .service_post_list li { width:100%; margin:0 0 10px 0; }  
  .archive_service_child:last-of-type .service_post_list li:last-child { margin-bottom:0px; }
  .service_post_list .desc span{line-height: 2.0;}
}


/* 詳細ページ */
body.single-service #main_col { padding-bottom:30px; }
@media screen and (max-width:950px) {
  body.single-service #main_col { padding-bottom:10px; }
  #single_service_title_area { margin:0 0 23px 0; }
  #single_service_title_area .title { height:50px; line-height:50px; padding:0 20px; }
  #single_service .cf_price_list { margin:0 0 30px 0; }
  #single_service_related_post .headline { font-size:18px !important; padding:0 0 20px 0; margin:0 0 20px 0; } 
}
@media screen and (max-width:750px) {
  #single_service_title_area .image { height:230px; }
  #single_service_related_post { padding-top:15px; }
}
@media screen and (max-width:550px) {
  body.single-service #main_col { padding-bottom:20px; }
  #single_service_title_area .image { height:150px; }
}




/* ----------------------------------------------------------------------
 コラム
---------------------------------------------------------------------- */
/* アーカイブページ */
#archive_column { margin:40px 30px; width:auto; padding:60px 30px; }
@media screen and (max-width:950px) {
  #archive_column { width:auto; padding:40px 20px; }
  #archive_column .headline { font-size:32px; font-weight:500; text-align:center; margin:0 0 20px 0; }
  #column_list { margin-bottom:-10px; }
  #column_list .item { width:calc(50% - 10px); height:285px; margin:55px 20px 0 0; }
  #column_list.no_category .item { margin-top:22px; }
  #column_list .item a.link { padding:20px; }
  #column_list .item a.link .top_area { height:170px; }
  #column_list .title_area { height:70px; }
  #column_list .blur_image { height:170px; }
  #column_list .title { padding:0 20px; }
  #column_list .desc { margin:15px 0 0 0; font-size:14px; }
}
@media screen and (max-width:750px) {
  #archive_column { margin:0; border:none !important; }
  #column_list { margin-bottom:10px; }
  #column_list .category a { min-width: 100px;}
}
@media screen and (max-width:550px) {
  #archive_column { padding:30px 20px 40px; }
  #column_list { margin-bottom:0px; }
  #column_list .item { width:auto; height:auto; margin:55px 0 0 0; }
  #archive_column .headline { margin:0 0 10px 0; }
  #column_list .desc span{ -webkit-line-clamp:3; line-height: 2.0; }
  #column_list .desc { max-height:6.0em; }
}


/* ---------- 詳細ページ ---------- */
#single_column { border:1px solid #ccc; }
@media screen and (max-width:750px) {
  #single_column .post_content { padding:20px 20px 20px; }
  #single_column #next_prev_post { margin:0px 20px 35px; }
  #single_column #related_post { padding:0 20px 30px; margin:0; }
  #single_column #post_pagination { padding:10px 0 0 0; margin-bottom:15px; }
  #single_column #p_readmore { padding:10px 0 0 0; margin-bottom:0px; }
  #column_post_image { padding:0; margin:-1px -1px 0; position:relative; }
  #column_post_image img { width:100%; height:auto; display:block; margin:0; z-index:1; }
  #column_post_image .category a { min-width:100px; padding:0 15px; }
  #column_post_image .category a:first-child { display:inline-block; }
  #column_post_title_area { margin:0; text-align:center; padding-top:25px; }
  #column_post_title_area .title { color:#ff4b54; font-size:32px; line-height:1.3; font-weight:500; margin:0; }
  #column_post_title_area .date { margin-top:5px; font-size:12px; color:#999; }
}
@media screen and (max-width:550px) {
  body.single-column #main_col { padding:0; }
  #single_column { border:none; padding:30px 20px 10px; }
  #column_post_image { padding:0; margin:0; position:relative; }
  #single_column .post_content { padding:20px 0px 20px; }
  #single_column #next_prev_post { margin:0px 0px 35px; }
  #single_column #related_post { padding:0 0 0; margin:0; }
}




/* ----------------------------------------------------------------------
 よくある質問
---------------------------------------------------------------------- */
@media screen and (max-width:950px) {
  #faq_headline { padding:0 18px; margin:0 0 25px 0; height:50px; line-height:50px; }
  #faq_category { margin:0 0 20px 0; line-height:2.0; }
  #faq_category li { font-size:14px; }
  #faq_list .item { margin:0 0 27px 0; }
  #faq_list .item:last-child { margin:0; }
  #faq_list .meta { margin:0 0 15px 50px; }
  #faq_list .meta li { font-size:12px; }
  #faq_list .post_content { margin:0; }
 #faq_list .queestion{margin: 0 0 15px 0;}
}



/* ----------------------------------------------------------------------
　詳細ページ　カスタムフィールド　共通パーツ
---------------------------------------------------------------------- */
/* ヘッダー画像 */
@media screen and (max-width:950px) {
  .cf_header_image { height:300px; margin:0 0 25px 0; }
  #campaign_header_image { height:350px; }
  #campaign_header_image .blur_image { height:350px; }
  #campaign_header_image .title_area { height:70px; }
}
@media screen and (max-width:750px) {
  .cf_header_image { height:200px;  }
  .cf_header_image .title_area { height:50px; }
  .cf_header_image .blur_image { height:200px; }
  .cf_header_image .title { padding:0 25px;  }
  #campaign_header_image { height:250px; }
  #campaign_header_image .blur_image { height:250px; }
}
@media screen and (max-width:550px) {
  .cf_header_image { height:115px; }
  .cf_header_image .title_area { height:auto; }
  .cf_header_image .title_area:before { height:115px; position:absolute; }
  .cf_header_image .blur_image { height:115px; }
  .cf_header_image .title { padding:10px 22px 10px; position:relative; top:0; -webkit-transform: translateY(0%); transform: translateY(0%); overflow:visible; max-height:inherit; }
  .cf_header_image .title span { display:block; -webkit-box-orient:horizontal; -webkit-line-clamp:none; }
  .cf_header_image .title br { display:none; }
  #campaign_header_image { height:200px; }
  #campaign_header_image .blur_image { height:200px; }
  #campaign_header_image .title_area { height:auto; }
  #campaign_header_image .title_area:before { height:200px; }
  .cf_header_image .category a { min-width:100px; }
}


/* キャッチフレーズ */
@media screen and (max-width:950px) {
  .cf_catch .catch { margin-bottom:15px; }
  .cf_catch .post_content { margin:0; }
}
@media screen and (max-width:750px) {
}


/* 特徴一覧 */
@media screen and (max-width:950px) {
  .cf_data_list { padding:30px 30px 5px; margin:0 0 30px 0; }
  .cf_data_list .headline { padding:0 0 30px 0; margin:0 0 30px 0; }
  .cf_data_list li { padding:0 0 0 25px; font-size:14px; }
  .cf_data_list li:before { width:16px; height:16px; line-height:16px; top:1px; }
}
@media screen and (max-width:750px) {
  .cf_data_list li { float:none; width:auto; }
  .cf_data_list.type2 li { width:auto; }
  .cf_data_list ul li {line-height: 2.4;}
  .cf_data_list li:before{top: 7.5px;}
}


/* コンテンツ一覧 */
@media screen and (max-width:950px) {
  .cf_content_list .item { margin:0; }
  .cf_content_list .headline { font-size:16px; height:50px; line-height:50px; padding:0 20px; }
}


/* 画像一覧 */
@media screen and (max-width:950px) {
  .cf_image_list { margin:0 0 25px 0; }
}
@media screen and (max-width:750px) {
  .cf_image_list.type1 img {width: calc(50% - 5px);}
  .cf_image_list:last-child { margin:0; }
}


/* 価格一覧 */
@media screen and (max-width:950px) {
  .cf_price_list .headline { font-size:16px; height:50px; line-height:50px; padding:0 20px; }
  .cf_price_list dl{border-top: none;}
  .cf_price_list .desc{margin-top: 15px;}
}
.cf_price_list dt { width:calc(100% - 120px); padding:12px 20px; }
.cf_price_list dd { width:120px; padding:12px 20px; text-align:center; position:relative; }
.cf_price_list dd span {
  position:absolute; left:0; right:0;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}




/* ----------------------------------------------------------------------
 ブログアーカイブページ
---------------------------------------------------------------------- */
#archive_blog { padding:40px 30px 50px; }
#blog_list { margin:0 auto; width:auto; }
@media screen and (max-width:950px) {
  #blog_list .item { height:405px; }
  #blog_list .image_wrap { height:195px; }
  #blog_list .image { height:195px !important; }
  #blog_list .category a { min-width:100px; }
  #blog_list .title_area { height:211px; padding:25px 30px; }
  #blog_list .title_area .title { font-size:18px; }
  #blog_list .title_area .excerpt { font-size:14px; margin:15px 0 0 0; }
  #blog_list .item.has_date { height:425px; }
  #blog_list .item.has_date .title_area { height:230px; }
}
@media screen and (max-width:750px) {
  #archive_blog { padding:40px 30px 40px; }
  #blog_list .item { width:50%; }
  #blog_list .item:nth-child(3n) .title_area, #blog_list .item:nth-child(2n) .title_area, #blog_list .item:last-child .title_area { border-right:1px solid #ddd; }
}
@media screen and (max-width:550px) {
  #archive_blog { padding:30px 20px 40px; }
  #blog_list .item { width:100%; height:auto; }
  #blog_list .item .title_area { border-right:1px solid #ddd; border-bottom:none; }
  #blog_list .item:last-child .title_area { border-bottom:1px solid #ddd; }
  #blog_list .title_area { height:auto; padding:25px 30px 20px; }
  #blog_list .item.has_date { height:auto; }
  #blog_list .item.has_date .title_area { height:auto; }
  #blog_list .title_area .title { max-height:4.5em; }
  #blog_list .title_area .title span { -webkit-line-clamp:3; }
}


/* ページング */
.page_navi { padding:50px 0 0 0; margin:0 26px -4px; }
#archive_campaign .page_navi { padding:20px 0 0 0; }
body.post-type-archive-news .page_navi { margin:0 26px 15px; }
@media screen and (max-width:750px) {
  .page_navi { padding:30px 0 0 0; margin:0 16px -4px; }
  body.post-type-archive-news .page_navi { margin:0 26px -4px; }
}
@media screen and (max-width:550px) {
  #archive_campaign .page_navi { padding:0; }
}




/* ----------------------------------------------------------------------
 ページヘッダー
---------------------------------------------------------------------- */
#page_header { margin-top:0px; }
#page_header_inner { width:auto; height:480px; }
#page_header.small #page_header_inner { height:180px; }
#page_header_catch { width:auto; padding:0 30px; }
#page_header_catch .title { margin-top:0px; }
@media screen and (max-width:950px) {
  #page_header_inner { height:350px; }
  #page_header.small #page_header_inner { height:130px; }
}
@media screen and (max-width:750px) {
}
@media screen and (max-width:550px) {
  #page_header_inner { height:300px; }
  #page_header_catch { width:auto; padding:0 20px; }
  #page_header_catch .desc{line-height: 2.0;}
  #page_header.small #page_header_inner { height:90px; }
}

/* 404ページ */
#page_404 { width:100%; height:calc(100vh - 60px); position:relative; background:#000; margin-top:0px; }




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */

/* メニューボタン */
#menu_button {
  position:absolute; z-index:50; top:0px; right:0px;
  display:inline-block; font-size:11px; width:60px; height:60px; line-height:60px; text-decoration:none; text-align:center;
}
#menu_button span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#menu_button:before {
  font-family:'design_plus'; display:block; position:absolute; top:23px; left:0; right:0; margin:auto;
  font-size:18px; width:18px; height:18px; line-height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#menu_button:before { content:'\f0c9'; }
#menu_button:hover, a.menu_button.active { }
#menu_button:hover:before, #menu_button.active:before { }
@media screen and (max-width:750px) {
  #menu_button { width:40px; height:60px; line-height:60px; right:10px; }
  #menu_button:before { top:23px; }
}


/* グローバルメニュー */
#header #global_menu { display:none; }
#mobile_menu #global_menu { width:100%; margin:0; }
#mobile_menu #global_menu ul { margin:0; }
#mobile_menu #global_menu ul ul { }
#global_menu li ul { display:none; }
#mobile_menu #global_menu a {
  position:relative; display:block;  margin:0; padding:18px 20px; line-height:1.6; overflow:hidden; text-decoration:none;
  color:#fff; font-size:13px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#mobile_menu #global_menu a:hover { color:#fff; }
#mobile_menu #global_menu ul ul a { padding-left:32px; }
#mobile_menu #global_menu ul ul ul a { padding-left:47px; }
#mobile_menu #global_menu ul ul ul ul a { padding-left:60px; }


/* グローバルメニュー（子メニュー） */
#mobile_menu #global_menu li { position:relative; }
#mobile_menu #global_menu .child_menu_button { display:block; position:absolute; text-align:center; width:55px; height:55px; right:0px; top:1px; z-index:9; cursor:pointer;  }
#mobile_menu #global_menu .child_menu_button .icon:before {
  font-family:'design_plus'; content:'\e90e'; color:#fff; text-align:center;
  display:block; font-size:12px; width:12px; height:12px; line-height:12px;
  position:absolute; right:22px; top:25px;
}
#mobile_menu #global_menu .child_menu_button.active .icon:before, #mobile_menu #global_menu .child_menu_button:hover .icon:before { color:#fff; border-color:#fff; }
#mobile_menu #global_menu li.open > .child_menu_button .icon:before { content:'\e911'; }
#mobile_menu #global_menu li.open > ul {  }
#mobile_menu #global_menu .child_menu_button:hover { background:rgba(0,0,0,0.2); }


/* 閉じるボタン */
#mobile_menu .close_button { display:block; width:100%; height:60px; position:relative; cursor:pointer; border-bottom:1px solid rgba(255,255,255,0.2); }
#mobile_menu .close_button:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; 
  content:'\e91a'; position:absolute; top:24px; right:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* バナー */
#header_mobile_banner { }
#header_mobile_banner img { display:block; margin:0 auto; max-width:100%; height:auto; }
#header_mobile_banner .banner { margin:20px 0; }


/* ボタン */
#header_button { right:60px; top:0px; }
#header_button .button a { display:block; min-width:180px; height:60px; line-height:60px; font-size:13px; }
@media screen and (max-width:950px) {
  #header_button, #header_button.animate { display:none; }
}


/* ロゴ */
#header_logo { left:30px; margin:auto; }
#header_logo .pc_logo_image { display:none; }
#header_logo .pc_logo_text { display:none; }
#header_logo .mobile_logo_image { display:block; }
#header_logo .mobile_logo_text { display:block; }
@media screen and (max-width:750px) {
  #header_logo { left:20px; }
}


/* パンくずリンク */
#bread_crumb {  }
#bread_crumb ul { width:auto; padding:0 30px; }
#bread_crumb li { height:50px; line-height:50px; }
@media screen and (max-width:750px) {
  #bread_crumb ul { padding:0 20px; }
  #bread_crumb li:before{margin-top: 4px;}
}




/* ----------------------------------------------------------------------
 記事ページ
---------------------------------------------------------------------- */
/* タイトル */
@media screen and (max-width:750px) {
  #post_title_area { margin:0 0 20px 0; padding:9px 0 13px 20px; }
}


/* アイキャッチ画像*/
@media screen and (max-width:750px) {
  #post_image { margin: 0 0 23px 0;}

}


/* SNSボタン */
@media screen and (max-width:750px) {
  #single_share_top { margin:0 0 30px 0; padding:0px 0 0 0; }
  #single_share_bottom { margin:30px 0 0 0; }
  #single_share_bottom .share-btm { margin-bottom:0 !important; padding:0; }
  #single_share_top .mt10, #single_share_top .mt10 { margin:0 !important; }
  #single_share_bottom .mb45, #single_share_bottom .mb45 { margin:0 !important; }
  .share-type1 ul { text-align:center; margin-bottom:-5px !important; }
  .share-type3 ul { text-align:center; margin-bottom:-5px !important; }
  .share-type2 ul.type2 { text-align:center; margin-bottom:-5px !important; }
  .share-type4 ul.type4 { text-align:center; margin-bottom:-5px !important; }
  .sns_default_top  { text-align:center; margin-bottom:-5px !important; }
  body.single-news #single_share_bottom { margin:0 0 25px 0; }
}


/* メタ情報 */
#post_meta_bottom { padding:15px 20px 13px; }
#post_meta_bottom li { display:block; margin:0 0 5px 0; padding:0 0 0 20px; border-right:none; }
#post_meta_bottom li:last-child { border:none; margin:0; }
@media screen and (max-width:750px) {
  #post_meta_bottom { margin:30px 0 0; }
}


/* 次の記事、前の記事 */
#next_prev_post { margin:60px 0 0; }
#next_prev_post .item { height:50px; }
#next_prev_post .title_area { font-size:12px; margin:0; text-align:center; width:100%; }
#next_prev_post .title { display:none; }
#next_prev_post .nav { display:block; top:1px; position:relative; }
#next_prev_post a:before { left:15px; }
#next_prev_post .next_post a:before { left:auto; right:15px; }
#next_prev_post .next_post .title_area { margin:0; }
@media screen and (max-width:750px) {
  #next_prev_post { margin:30px 0 0; }
}


/* ページ分割 */
@media screen and (max-width:750px) {
  #post_pagination { padding:0; }
}


/* プロフィール */
.author_profile { padding:30px 25px; }
.author_profile a.avatar { float:none; margin:0 auto 20px; }
.author_profile .info { float:none; width:auto; }
.author_profile .name { font-size:18px; }
.author_profile .archive_link { margin-top:2px; }
.author_profile .archive_link span:after { top:2px; }
@media screen and (max-width:750px) {
  .author_profile { margin:30px 0 0; }
}


/* 関連記事 */
#related_post { margin:60px 0 0; padding:30px 30px 5px; }
#related_post .headline { margin:0 0 30px 0; }
#related_post .item { width:calc(50% - 10px); margin:0 20px 20px 0; }
#related_post .item:nth-child(3n) { margin-right:20px; }
#related_post .item:nth-child(2n) { margin-right:0px; }
#related_post .item .title { font-size:14px; max-height:4.8em; }
#related_post .item .title span { -webkit-line-clamp:3; }
@media screen and (max-width:750px) {
  #related_post { margin:30px 0 0; padding:30px 20px 5px; }
  #related_post .image_wrap{ margin: 0 0 12px 0;}
}
@media screen and (max-width:550px) {
  #related_post { margin:30px -20px 0; }
  #related_post .image_wrap { height:90px; }
  #related_post .image { height:90px !important; }
}


/* 広告 */
#single_banner_top { width:auto; }
#single_banner_bottom { width:auto; }
#single_banner_shortcode { width:auto; }
#mobile_banner_top { margin:10px 0 20px; text-align:center; }
#mobile_banner_bottom { margin:30px 0 0; text-align:center; }
@media screen and (max-width:750px) {
  #single_banner_top { padding:0 0 20px; }
  #single_banner_bottom { padding:30px 0 0; }
  #single_banner_shortcode { padding:0 0 20px; }
}
@media screen and (max-width:650px) {
  .single_banner_area .single_banner_left { float:none; width:auto; text-align:center; padding:0 0 7px 0; }
  .single_banner_area .single_banner_right { float:none; width:auto; text-align:center; padding:0; }
}




/* ----------------------------------------------------------------------
 ウィジェット 
---------------------------------------------------------------------- */
@media screen and (max-width:750px) {
  .side_widget { margin:0 0 30px 0; }
}


/* カスタム投稿カテゴリー一覧 （カスタム投稿の上部に表示）*/
@media screen and (max-width:950px) {
  .side_category_list .headline { height:50px; line-height:50px; }
  .side_category_list { margin:0 -30px 50px; padding:0 30px 50px; border-bottom:1px solid #ddd; }
}
@media screen and (max-width:750px) {
  .side_category_list { margin:0 -30px 30px; padding:0 30px 30px; }
}
@media screen and (max-width:550px) {
  .side_category_list { margin:0 -20px 30px; padding:0 20px 30px; }
}


/* キャンペーン記事一覧 */
@media screen and (max-width:950px) {
  .campaign_list_widget .side_headline { padding:0 20px; }
  .campaign_list_widget .item { height:195px; width:50%; float:left; }
  .campaign_list_widget .item a.link { height:195px; }
  .campaign_list_widget .blur_image { height:195px; }
  .campaign_list_widget .title { font-size:16px; padding:0 16px; }
}
@media screen and (max-width:550px) {
  .campaign_list_widget .item { width:auto; float:none; }
}


/* キャンペーンスライダー */
@media screen and (max-width:950px) {
  .campaign_slider_widget .side_headline { font-size:16px; padding:0 20px; }
  .campaign_slider_widget .item { height:195px; }
  .campaign_slider_widget .item a.link { height:195px; }
  .campaign_slider_widget .blur_image { height:195px; }
  .campaign_slider_widget .title { padding:0 16px; font-size:16px; }
}


/* デザインされた記事一覧1 */
@media screen and (max-width:950px) {
  .styled_post_list1 li { margin:0 0 -1px 0; padding:0; width:50%; float:left; }
  .styled_post_list1 .title_area { border-bottom:1px solid #ddd; }
}
@media screen and (max-width:750px) {
  .styled_post_list1 li { margin:0;width:auto; float:none; }
  .styled_post_list1 .title_area { border-bottom:none; }

}


/* 広告一覧 */
@media screen and (max-width:950px) {
  .tcd_banner_widget .banner_item { margin:0 5px 5px 0; width:calc(100% / 3 - 4px); float:left; }
  .tcd_banner_widget .banner_item:nth-child(3n) { margin-right:0; }
  .tcd_banner_widget .banner_item:last-child { margin-bottom:0; }
  .tcd_banner_widget .banner_item img { width:100%; height:auto; }
}
@media screen and (max-width:750px) {
  .tcd_banner_widget .banner_item { width:calc(50% - 3px); }
  .tcd_banner_widget .banner_item:nth-child(3n) { margin-right:5px; }
  .tcd_banner_widget .banner_item:nth-child(2n) { margin-right:0px; }
}
@media screen and (max-width:550px) {
  .tcd_banner_widget .banner_item { margin:0 0 5px 0; width:auto; float:none; }
  .tcd_banner_widget .banner_item:nth-child(3n) { margin-right:0px; }
}




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* フッターロゴ */
#footer_logo .pc_logo_image { display:none; }
#footer_logo .pc_logo_text { display:none; }
#footer_logo .mobile_logo_image { display:block; }
#footer_logo .mobile_logo_text { display:block; }


/* バナーコンテンツ */
@media screen and (max-width:750px) {
  #footer_banner .box { width:100%; height:250px; float:none; }
  #footer_banner .blur_image { height:250px; }
  #footer_banner .catch { height:60px; }
}
@media screen and (max-width:550px) {
  #footer_banner .box { height:225px; float:none; }
  #footer_banner .blur_image { height:225px; }
  #footer_banner .catch { height:50px; }
}


/* インフォメーション */
#footer_information_inner {
  width:auto; margin:0 auto;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
#footer_company { padding:60px 30px 50px; width:100%; border-right:none; border-bottom:1px solid #ddd; text-align:center; }
#footer_logo img { margin:0 auto 20px; }
.footer_info_content {
  padding:60px 30px; width:50%; border-right:1px solid #ddd; text-align:center;
  -webkit-box-sizing:border-box; box-sizing:border-box; 
}
.footer_info_content:last-child { border:none; }
@media screen and (max-width:750px) {
  #footer_company { padding:40px 30px 30px; text-align:left; }
  #footer_logo img { margin:0 0 20px; }
  .footer_info_content { padding:40px 30px; width:100%; border-right:none; border-bottom:1px solid #ddd; }
  .footer_info_content .title { font-size:20px; }
  .footer_info_content .button a { margin:23px 0 0 0; min-width:200px; height:45px; line-height:45px; padding:0 15px; font-size:12px; }
}
@media screen and (max-width:550px) {
  #footer_company { padding:40px 20px 30px; }
  .footer_info_content { padding:40px 20px; }
  #footer_company .desc{ line-height: 2.0; }
}


/* メニューエリア */
#footer_menu_area { width:auto; min-width:inherit; }
#footer_menu_area_inner { width:auto; padding:0 0 60px 0; }
.footer_menu { padding:60px 30px 0; width:50%; }
@media screen and (max-width:750px) {
  #footer_menu_area_inner { width:auto; padding:0 0 40px 0; }
  .footer_menu { padding:40px 30px 0; width:50%; }
}
@media screen and (max-width:550px) {
  .footer_menu { padding:40px 20px 0; }
  .footer_menu .footer_headline{margin: 0 0 20px 0;}
  .footer_menu li { margin-bottom: 10px; }
}


/* フッター下部 */
#footer_bottom { height:60px; width:auto; min-width:inherit; }
#footer_bottom_inner { width:auto; }
@media screen and (max-width:950px) {
  #footer_bottom { height:auto; }
}


/* SNSボタン */
#footer_social_link { top:20px; left:20px; text-align:center; }
@media screen and (max-width:950px) {
  #footer_social_link { padding:15px 0; position:relative; top:0px; left:0px; text-align:center; border-bottom:1px solid #555; }
}


/* コピーライト */
#copyright {
  line-height:60px; height:60px; font-size:12px; position:relative; overflow:hidden; padding:0 20px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
@media screen and (max-width:950px) {
  #copyright { line-height:50px; height:50px; }
  body.has_header_button #copyright { border-bottom:1px solid #444; }
}


/* ページ上部へ戻るボタン */
#return_top a { height:60px; width:60px; line-height:60px; }
#return_top a:before { top:2px;}
@media screen and (max-width:950px) {
  #return_top.active { bottom:0px; }
  #return_top a { height:50px; width:50px; line-height:50px; }
  body.has_header_button #return_top.active { bottom:50px; }
}


/* ヘッダーボタン */
#footer_button { display:none; }
@media screen and (max-width:950px) {
  body.has_header_button { padding-bottom:50px; }
  #footer_button {
    width:100%; position:fixed; bottom:0; left:0px; z-index:100;
    display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
    -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
   -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
   -webkit-transition: -webkit-transform 0.35s; transition: all 0.35s;
  }
  #footer_button.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
  #footer_button .button { width:auto; -ms-flex: 1 1 0%; -webkit-flex: 1 1 0%; flex: 1 1 0%; }
  #footer_button .button a { padding:0 15px; display:block; min-width:inherit; height:50px; line-height:50px; font-size:12px; text-align:center; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
}


/* フッターバー */
#dp-footer-bar {
  position:fixed; right:0px; bottom:0px; z-index:999; width:100%;
}
.open_menu #dp-footer-bar { display:none; }
.dp-footer-bar-type1 #dp-footer-bar {
  opacity:0;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  pointer-events: none;
}
.dp-footer-bar-type1 #dp-footer-bar.active {
  opacity:1;
  pointer-events: visible;
}
.dp-footer-bar-type2 #dp-footer-bar {
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
.dp-footer-bar-type2 #dp-footer-bar.active {
  -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}


/* 固定フッターが有効時、モバイルデバイス調整用 */
body.show_footer_bar { padding-bottom:0px; }
body.show_footer_bar #return_top.active { -webkit-transform: translate3d(0,-55px,0); transform: translate3d(0,-55px,0); }
body.home.show_footer_bar #container { padding-bottom:0px; }
@media screen and (max-width:950px) {
  body.show_footer_bar #footer_button.active { -webkit-transform: translate3d(0,-55px,0); transform: translate3d(0,-55px,0); }
  body.show_footer_bar.has_header_button { padding-bottom:50px; }
}



/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { margin-top:21px; }
#comment_headline { padding:0 20px; height:50px; line-height:50px; margin:0 0 8px 0; font-size:16px; }
@media screen and (max-width:550px) {
  #comments { margin:10px 0 30px; }
}

/* コメント・トラックバックのタブ */
#comment_tab li a, #comment_tab li p { padding:15px 15px; }




/* ----------------------------------------------------------------------
 その他
---------------------------------------------------------------------- */
/*  WordPress プリセットスタイル */
.post_content p { line-height:2; }
.post_content li, .post_content dt, .post_content dd { line-height:2; }
.post_content td, .post_content th { line-height:2; }


/* パスワード保護 */
.c-pw__box { padding:20px; margin:0 0 20px 0; }
.c-pw__box-label { display:block; margin:0 0 15px 0; text-align:center; }
.c-pw__box-input { width:calc(100% - 160px); margin:0 10px 0 0; -webkit-box-sizing:border-box; box-sizing:border-box; }
.c-pw__btn--submit { width:150px; min-width:inherit; -webkit-box-sizing:border-box; box-sizing:border-box; }
@media screen and (max-width:600px) {
  .c-pw__box { padding:15px; }
  .c-pw__box-input { width:calc(100% - 105px); margin-right:5px; }
  .c-pw__btn--submit { width:100px; }
}


/* Cardlink style - カードリンクのスタイル */
.cardlink { margin:30px 0 !important; padding:15px;  }

