@charset "utf-8";
/*
Theme Name:ZERO
Theme URI:https://tcd-theme.com/tcd055
Description: WordPress theme "ZERO" can create a blog without featured Images. You can focus on the title and the body of the article and the contents are stand out. Even though, no featured images, there are practical functions such as the number of views and ranking page.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-zero
Version:2.1.1
*/


/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
  font-family: 'design_plus';
  src: url('fonts/design_plus.eot?v=1.6');
  src: url('fonts/design_plus.eot?v=1.6#iefix') format('embedded-opentype'),
       url('fonts/design_plus.woff?v=1.6') format('woff'),
       url('fonts/design_plus.ttf?v=1.6') format('truetype'),
       url('fonts/design_plus.svg?v=1.6#design_plus') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'tiktok_x_icon';
  src: url('fonts/tiktok_x_icon.eot?v=1.0');
  src: url('fonts/tiktok_x_icon.eot?v=1.0#iefix') format('embedded-opentype'),
       url('fonts/tiktok_x_icon.woff?v=1.0') format('woff'),
       url('fonts/tiktok_x_icon.ttf?v=1.0') format('truetype'),
       url('fonts/tiktok_x_icon.svg?v=1.0#tiktok_x_icon') format('svg');
  font-weight: normal;
  font-style: normal;
}


/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
audio, canvas, video { display:inline-block; max-width:100%; }
html { overflow-y: scroll; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
img { -ms-interpolation-mode:bicubic; }

/* clearfix */
.clearfix:after { content: "."; display:block; clear:both; height:0; font-size:0.1em; line-height:0; visibility:hidden; overflow:hidden; }
.clearfix { display:inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height:1% }
.clearfix { display:block;}
/* end MacIE5 */




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; color:#000; line-height:1; width:100%; }
.pc .admin-bar { padding-top:33px; }
a { color:#000; text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#main_contents { background:#fff; width:100%; position:relative; z-index:10; }
#main_col {
  width:1150px; min-width:1150px; margin:80px auto 100px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
body.single-post #main_col {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

body.page-template-default #main_col {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

#left_col { width:795px; float:left; }
#side_col { width:300px; float:right; }
body.single-post.layout2 #main_col #left_col {
  order: 2;
}
body.page-template-default.no_side_content #main_col {
  display: block;
}
body.page-template-default.layout2 #main_col #left_col {
  order: 2;
}
body.single-post.no_side_content #main_col {
  display: block;
}

.p-toc-open {
  z-index: 10000 !important;
}


/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */

/* スライダー -------------------------------------------------------- */
#header_slider { width:100%; height:500px; min-width:1150px; overflow:hidden; position:relative; }
.slider_main { width:100%; height:500px; position:relative; }
.slider_main .swiper-slide { width:100%; height:500px; overflow:hidden; position:relative; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.slider_main .item { position:absolute; width:100%; height:100%; left:0; top:0; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.slider_main .image { display:none; }
.slider_main .caption_area { position:absolute; bottom:0; width:100%; height:55px; background:rgba(0,0,0,0.6); z-index:5; }
.slider_main .caption { width:1150px; height:55px; margin:0 auto; overflow:hidden; }
.slider_main .caption .title { font-size:16px; line-height:55px; -ms-word-wrap: break-word; word-wrap: break-word; position:relative; }
.slider_main .caption .title a { display:block; color:#fff; }


/* 矢印のナビゲーション */
.header_slider_button_next, .header_slider_button_prev {
  width:30px; height:30px; position:absolute; opacity:0; cursor:pointer; z-index:9999;
  top:50%; margin-top:-15px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -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;
}
.header_slider_button_next:before, .header_slider_button_prev:before {
  font-family:'design_plus'; color:#fff; font-size:24px; font-weight:bold; display:block; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.header_slider_button_prev:before { content:'\e90f'; }
.header_slider_button_next:before { content:'\e910'; }
.header_slider_button_prev { left:-50px; }
.header_slider_button_next { right:-50px; }
#header_slider:hover .header_slider_button_prev { left:21px; opacity:1; }
#header_slider:hover .header_slider_button_next { right:15px; opacity:1; }



/* スライダーのキャッチコピー内にあるタイトルのアニメーション */
#header_slider .caption .title { opacity:0; }
#header_slider .swiper-slide-active .caption .title { -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s; animation: opacityAnimation 1.0s ease forwards 1.0s; }
#header_slider .first_active .caption .title { -webkit-animation: opacityAnimation 1.0s ease forwards 1.5s !important; animation: opacityAnimation 1.0s ease forwards 1.5s !important; }


/* アニメーション　透過 */
@-webkit-keyframes opacityAnimation {
  0% { }
  100% { opacity: 1; }
}
@keyframes opacityAnimation {
  0% { }
  100% { opacity: 1; }
}

/* アニメーション　下から上へ */
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}


/* 動画 ---------------------------------------------------------------- */
#header_video { width:100%; height:100%; /*height:-webkit-calc(100vh - 160px); height:-moz-calc(100vh - 160px); height:calc(100vh - 160px);*/ position:relative; overflow:hidden; background:#000; }
#header_video .item, #header_video .overlay { display:block; width:100%; height:100%; z-index:2; position:absolute; left:0px; top:0px; }
#header_video video { display:block; height:auto; width:100%; max-width:inherit; margin:0 auto; }
#header_video.mobile { height:500px !important; }
#header_video.youtube_header_video { height:100%; height:-webkit-calc(100vh - 160px); height:-moz-calc(100vh - 160px); height:calc(100vh - 160px); }


/* 動画のキャプション ---------------------------------------------------------------- */
#header_video .caption {
  position:absolute; text-align:center; z-index:5; width:calc(100% * 1150 / 1280); max-width:1150px; margin:auto; left:0; right:0; top:50%;
  -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,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;
}
#header_video .caption .title { font-size:42px; line-height:1.4; }
#header_video .caption .desc { margin-top:20px; font-weight:normal !important; }
#header_video .caption .button {
  font-size:14px; text-decoration:none; padding:0 45px; height:45px; line-height:45px; display:inline-block; margin:25px 0 0 0; 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;
}

/* 動画のキャプションのアニメーション */
#header_video .caption .title, #header_video .caption .button {
  opacity:0;
}
#header_video .caption.first_active .title, #header_video .caption.first_active .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.5s !important;
  animation: opacityAnimation 1.0s ease forwards 1.5s !important;
}




/* ----------------------------------------------------------------------
 記事一覧
---------------------------------------------------------------------- */
/* タブ */
#index_post_list_tab { width:100%; min-width:1150px; background:#df3f3f; }
#index_post_list_tab ol { width:1150px; height:60px; margin:0 auto; color:#fff; }
#index_post_list_tab ol li {
  float:left; height:60px; line-height:60px; text-align:center; min-width:200px; padding:0 70px; font-size:14px; border-right:1px solid rgba(255,255,255,0.2); cursor:pointer;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
#index_post_list_tab ol li:first-child, #index_post_list_tab ol li:only-child { border-left:1px solid rgba(255,255,255,0.2); }
#index_post_list_tab ol li.active, #index_post_list_tab ol li.active:hover { background:#fff; color:#333; }
#index_post_list_tab ol li:hover { background:rgba(0,0,0,0.2); }
.no_header_content { margin:0; line-height:1px; height:1px; border:none; background:#ccc; }



/* 記事一覧 */
.post_list { padding:0; }
.post_list_wrap { display:none; }
#post_list1 { position:relative; display:block; }


/* 日付 */
.post_list .post_date { width:87px; float:left; padding:50px 0 0 0; position:relative; }
.post_list .item:first-child .post_date { padding:0; }
.post_list .post_date time { width:60px; display:block; text-align:center; }
.post_list .post_date .date { font-size:52px; display:block; margin:-6px 0 1px 0; font-weight:normal; }
.post_list .post_date .month { font-size:14px; display:block; margin:0 0 8px 0; font-weight:normal; }
.post_list .post_date .month strong { font-weight:normal; }
.post_list .post_date .year { font-size:11px; display:block; color:#aaa; font-weight:normal; }


/* 日付の右側に表示している黒丸 */
.post_list .post_date:after { display:block; content:''; width:10px; height:10px; background:#000; position:absolute; right:-5px; top:60px; border-radius:100%; z-index:2; }
.post_list .item:first-child .post_date:after { top:13px; }


/* 先頭の記事の黒丸の上の線を隠す */
.post_list .item:first-child .post_date:before { display:block; content:''; width:10px; height:15px; background:#fff; position:absolute; right:-5px; top:0px; z-index:2; }


/* 一番下の要素にグラデーションのラインを追加 */
.post_list .item:last-of-type { position:relative; margin-bottom:120px; }
.post_list .item:last-of-type:before {
  height:130px; width:1px; left:87px; bottom:-130px; position:absolute; z-index:9; display:block; content:'';
  background: -webkit-linear-gradient(top, #e6e6e6, #ffffff);
  background: -moz-linear-gradient(top, #e6e6e6, #ffffff);
  background: -ms-linear-gradient(top, #e6e6e6, #ffffff);
  background: -o-linear-gradient(top, #e6e6e6, #ffffff);
  background: linear-gradient(to bottom, #e6e6e6, #ffffff);
}


/* 右側 */
.post_list .main_data {
  float:right; width:-webkit-calc(100% - 87px); width:-moz-calc(100% - 87px); width:calc(100% - 87px);
  padding:50px 0 45px 77px; border-left:1px solid #e6e6e6; border-bottom:1px solid #e6e6e6; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.post_list .item:first-child .main_data { padding-top:0; }
#post_list1 .post_list .item:last-child .main_data { border-bottom:1px solid #e6e6e6; }
.post_list.no_date .main_data { border-left:none; padding-left:0; float:none; width:100%; }


/* カテゴリ―・アクセス数 */
.post_list .main_data ol { margin:0 0 17px 0; }
.post_list .category { float:left; }
.post_list .category a { display:inline-block; height:30px; line-height:30px; padding:0 40px; text-align:center; background:#000; color:#fff; font-size:12px; margin-right:-1px; z-index:2; position:relative;}
.post_list .view {
 height:30px; line-height:28px; border:1px solid #ddd; display:inline-block; padding:0 12px; font-size:12px; color:#666;
-moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.post_list .view:before {
content:'\e92b'; font-family:'design_plus'; font-size:16px; font-weight:bold; display:block; width:16px; height:16px; float:left; margin:0 4px 0 0;
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 記事タイトル */
.post_list .title { font-size:30px; line-height:1.6; margin:0 0 10px 0; word-wrap:break-word; }
.post_list .title a { display:block; }
.post_list .excerpt { font-size:14px; line-height:2.0; }


/* ajaxロード */
#load_post { text-align:center; position:absolute; left:87px; right:0; bottom:10px; }
#load_post a { display:none; }
#infscr-loading { text-align:center; z-index:100; position:absolute; left:87px; right:0px; bottom:10px; font-size:14px; }
#infscr-loading img { display:block; margin:0 auto; }


/* ランキングページ用 */
.post_list.type2 .item { background:#f9f9f9; position:relative; border:1px solid #ddd; margin:0 0 -1px 0; }
.post_list.type2 .ranking_num { width:70px; float:left; text-align:center; }
.post_list.type2 .ranking_num p {
  width:70px; position:absolute; font-size:28px;
  top:50%; top:-webkit-calc(50% - 15px); top:-moz-calc(50% - 15px); top:calc(50% - 15px);
}
.post_list.type2 .main_data, .post_list.type2 .item:first-child .main_data, .post_list.type2 .item:first-child .main_data {
  background:#fff; border:none !important; border-left:1px solid #ddd !important; padding:40px 50px;
  width:-webkit-calc(100% - 70px); width:-moz-calc(100% - 70px); width:calc(100% - 70px);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.post_list.type2 .item:last-of-type { margin-bottom:0px; }
.post_list.type2 .item:last-of-type:before { display:none; }




/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
/* 見出し */
#page_header { width:100%; height:100px; min-width:1150px; border-bottom:1px solid #ddd; }
#page_header_inner { width:1150px; margin:0 auto; position:relative; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
#page_title { font-weight:bold; font-weight:700px; float:left; margin:0 50px 0 0; }
#page_title span { margin:0 0 0 38px; vertical-align:5px; font-weight:400; color:#000; }
#page_header .desc { margin:0; line-height:1.6; float:left; }


/* タブ */
#archive_post_list_tab {
  width:100%; min-width:1150px; height:60px; background:#f9f9f9; 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;
}
#archive_post_list_tab ol { width:1150px; height:60px; margin:0 auto; }
#archive_post_list_tab ol li {
  float:left; height:61px; line-height:60px; min-width:200px; text-align:center; padding:0 70px; border-top: 1px solid #ddd; border-right:1px solid #ddd; font-size:14px; cursor:pointer; z-index:2; margin-top:-1px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  -webkit-transition-property:background-color, border, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, border, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, border, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, border, color; transition-duration:0.2s; transition-timing-function:ease;
}
#archive_post_list_tab ol li:first-of-type { border-left:1px solid #ddd; }
#archive_post_list_tab ol li.active, #archive_post_list_tab ol li.active:hover { background:#fff !important; color:#333; border-bottom:1px solid #fff; }
#archive_post_list_tab ol li:hover { color:#fff; background:#222; }
#archive_post_list_tab ol li.active:hover { border-color:#ddd; border-bottom:1px solid #fff; }


/* ページング */
.page_navi { margin:-66px 0 66px 160px; }
.page_navi ul { margin:0; font-size:0; }
.page_navi li { display:inline; margin:0 -1px 5px 0; }
.page_navi a, .page_navi a:hover, .page_navi span { font-size:14px; padding:14px 16px; line-height:1; margin:0; border:1px solid #ddd; background:#fff; color:#333; display:inline-block; }
.page_navi a:hover { color:#fff; background:#000; border-color:#000; }
.page_navi span.dots { background:none; color:#fff; }
.page_navi span.current { color:#fff; background:#000; border-color:#000; }

.page_navi .next span, .page_navi .prev span { display:none; }
.page_navi .next:before, .page_navi .prev:before {
  font-family:'design_plus'; color:#333; font-size:11px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.page_navi .prev:before { content:'\e90f'; }
.page_navi .next:before { content:'\e910'; }
.page_navi .prev:hover:before, .page_navi .next:hover:before { color:#fff; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
.post_content { color:#666; }
.post_content a:hover, .custom-html-widget a:hover { text-decoration:underline; }


/* 日付 */
#post_date { float:left; position:relative; }
#post_date time { width:60px; display:block; text-align:center; }
#post_date .date { font-size:52px; display:block; margin:-6px 0 1px 0; font-weight:normal; }
#post_date .month { font-size:14px; display:block; margin:0 0 8px 0; font-weight:normal; }
#post_date .month strong { font-weight:normal; }
#post_date .year { font-size:11px; display:block; color:#aaa; font-weight:normal; }


/* 記事エリア */
#main_data { float:right; width:-webkit-calc(100% - 87px); width:-moz-calc(100% - 87px); width:calc(100% - 87px); }


/* カテゴリ―・アクセス数 */
#post_meta_top { margin:0 0 43px 0; }
#post_meta_top .category { float:left; }
#post_meta_top .category a {
  display:inline-block; min-width:110px; height:30px; line-height:30px; padding:0 40px; text-align:center; color:#fff; font-size:12px; margin:0;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box;
}
#post_meta_top .view {
  height:30px; line-height:28px; color:#666; border:1px solid #ddd; border-left:none; display:inline-block; padding:0 12px; font-size:12px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#post_meta_top .view:before {
content:'\e92b'; font-family:'design_plus'; font-size:16px; font-weight:bold; display:block; width:16px; height:16px; float:left; margin:0 4px 0 0;
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 記事タイトル */
#post_title { font-size:40px; line-height:1.3; color:#000; margin:0 0 40px 0; word-wrap:break-word; }
body.page #post_title { text-align:center; margin:-30px 0 50px 0; }
.pc .no_side_content #post_title { text-align:center; }


/*  記事本文*/
#article .post_content { }
.single #article .post_content { }


/* アイキャッチ画像*/
#post_image { padding:0; margin:0 0 50px 0; position:relative; }
#post_image img { width:100%; height:auto; display:block; margin:0; z-index:1; }


/* SNSボタン */
#single_share_top { margin:0 0 5px 0; }
#single_share_top #share_top1 { padding-top:0; }
#single_share_bottom { margin:0; }
#single_share_bottom .share-btm { margin-bottom:0; padding:0; }
#single_share_bottom .mb45 { margin-bottom:45px !important; }


/* ページ分割 */
#post_pagination { margin:0 0 40px 0; padding:12px 0 0 0; clear:both; font-size:0; text-align:center; }
#post_pagination h5 { margin:0 0 10px 0; font-size:12px; }
#post_pagination a, #post_pagination p { font-size:12px; display:inline-block; background:#fff; margin:0 0 0 -1px; width:40px; height:40px; line-height:40px; text-align:center; text-decoration:none; color:#333; border:1px solid #ccc; }
#post_pagination p { background:#000; color:#fff; border-color:#000; position:relative; }
#post_pagination a:hover { color:#fff; }


/* ページ分割（続きを読むver） */
#p_readmore { text-align:center; padding:12px 0 0 0; }
#p_readmore .button { background:#000; color:#fff; display:inline-block; height:40px; line-height:40px; padding:0 40px; text-decoration:none; }
#p_readmore .button:hover { background:#999; }


/* メタ情報 */
#post_meta_bottom { margin:0 0 50px; background:#fafafa; padding:25px; }
#post_meta_bottom li { display:inline; margin:0 10px 0 0; padding:0 15px 0 20px; border-right:1px solid #ddd; font-size:12px; line-height:1.8; position:relative; }
#post_meta_bottom li:last-child { border:none; margin:0; }
#post_meta_bottom li:before {
  font-family:'design_plus'; color:#aaa; font-size:13px; width:13px; height:13px; line-height:13px; display:block;
  position:absolute; top:0; left:0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#post_meta_bottom li.post_author:before { content:'\e90d'; top:1px; }
#post_meta_bottom li.post_category:before { content:'\e92f'; }
#post_meta_bottom li.post_tag:before { content:'\e935'; top:2px; }
#post_meta_bottom li.post_comment:before { content:'\e916'; font-size:16px; top:1px; }


/* 次の記事、前の記事 */
#previous_next_post { margin:0; }
#previous_next_post .prev_post, #previous_next_post .next_post { float:left; width:50%; }
#previous_next_post a { width:100%;
  display:block; border:1px solid #ddd; color:#333; font-size:14px; line-height:1.8; height:97px; color:#333; position:relative; display:table;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post .next_post a { margin-left:-1px; padding:0 60px 0 25px; }
#previous_next_post .prev_post a { padding:0 25px 0 60px; }
#previous_next_post a span { display:table-cell; vertical-align:middle; ; height:50px; overflow:hidden; -ms-word-wrap: break-word; word-wrap: break-word; }
#previous_next_post span.nav { display:none; }
#previous_next_post a:hover { background:#f7f7f7; color:#333; }
#previous_next_post .prev_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#aaa; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e90f'; position:absolute; top:-6px; bottom:0px; left:20px; margin:auto;
}
#previous_next_post .next_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#aaa; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; position:absolute; top:-6px; bottom:0px; right:20px; margin:auto;
}


/* 広告 */
#single_banner_top { margin:5px 0 30px; text-align:center; border:1px solid #ddd; padding:30px 20px; }
#single_banner_bottom { margin:50px 0 ; text-align:center; border:1px solid #ddd; padding:30px 20px; }
#single_banner_shortcode { margin:0 0 30px 0; padding:10px 0 0 0; text-align:center; }

.single_banner_area .single_banner_left {
  width:50%; float:left; padding:0 10px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area .single_banner_right {
  width:50%; float:right; padding:0 10px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area img { max-width:100%; height:auto; display:block; margin:0 auto; }
.single_banner_area.one_banner .single_banner_left { float:none; margin:0 auto; }
.single_banner_area.one_banner img { margin:0 auto; }


/* 最新記事 */
#single_recent_post { margin:50px 0 0 0; }
#single_recent_post .headline { font-size:14px; margin:0 0 -1px 0; font-weight:400; background:#000; height:50px; line-height:50px; color:#fff; padding:0 30px; border-radius:5px 5px 0 0; display:inline-block; }
#single_recent_post li { margin:0 0 -1px 0; }
#single_recent_post li .title { font-size:14px; font-weight:normal; }
#single_recent_post li a { display:block; border:1px solid #ddd; padding:20px; line-height:1.6; }
#single_recent_post li a:hover { color:#333; background:#f9f9f9; }
#single_recent_post li a .single_recent_post_time{ margin-right: 10px; display: inline-block; }
#single_recent_post li a .single_recent_post_cat{ margin-right: 10px; display: inline-block; padding: 0 15px; color: #fff; font-size: 12px; box-sizing:border-box; }

/* 関連記事 */
#related_post { margin:50px 0 0 0; }
#related_post .headline { font-size:14px; margin:0 0 -1px 0; font-weight:400; background:#000; height:50px; line-height:50px; color:#fff; padding:0 30px; border-radius:5px 5px 0 0; display:inline-block; position:relative; z-index:2;}
#related_post ol { margin:0; position:relative; font-size:0; }
#related_post li {
  width:50%; height:100px; display:inline-block; vertical-align:top; margin:0 -1px -1px 0; border: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;
}
#related_post li:nth-child(2n) { margin-right:0; }
#related_post .post_date {
  width:60px; float:left; position:relative; padding:11px 0 0 15px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#related_post .post_date time { width:50px; display:block; text-align:center; }
#related_post .post_date .date { font-size:40px; display:block; margin:0 0 1px 0; font-weight:normal; }
#related_post .post_date .month { font-size:14px; display:block; margin:0 0 8px 0; font-weight:normal; }
#related_post .post_date .month strong { font-weight:normal; }
#related_post .post_date .year { font-size:11px; display:block; color:#aaa; font-weight:normal; }
#related_post .title { font-size:14px; line-height:1.9; font-weight:normal; -ms-word-wrap: break-word; word-wrap: break-word; }
#related_post .title a {
  display:block; float:right; height:52px; overflow:hidden; margin:23px 20px 0 0;
  width:-webkit-calc(100% - 100px); width:-moz-calc(100% - 100px); width:calc(100% - 100px);
}
#related_post .title a:hover { text-decoration:none; color:#333; }
#related_post li:hover { background:#f9f9f9; }




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */

/* プロフィールページ */
#profile_page_top { }
#profile_page_top .user_avatar { overflow:hidden; width:200px; height:200px; display:block; margin:0px auto 30px; border-radius:130px; }
#profile_page_top .user_avatar img { width:100%; height:auto; display:block; }
#profile_page_top .user_name { font-size:21px; margin:0 0 25px 0; text-align:center; font-weight:400; }
#profile_page_top .user_sns { text-align:center; margin-bottom:33px; padding:0; font-size:0; }
#profile_page_top li { display:inline-block; vertical-align:top; margin:0; padding:0; line-height:100%; font-size:11px; background:none; width:30px; }
#profile_page_top li a { position:relative; text-decoration:none; }
#profile_page_top li a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#profile_page_top li a:before {
  font-family:'design_plus'; color:#333; font-size:12px; display:block; position:absolute; top:10px; left:-5px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#profile_page_top li.twitter_button a:before { font-family: 'tiktok_x_icon'; content: "\e901";}
#profile_page_top li.facebook_button a:before { content:"\e902"; }
#profile_page_top li.insta_button a:before { content:"\ea92"; top:10px; }
#profile_page_top li.pint_button a:before { content:"\e905"; }
#profile_page_top li.mail_button a:before { content:"\f0e0"; }
#profile_page_top li.twitter_button a:hover:before { color:#000; }
#profile_page_top li.facebook_button a:hover:before { color:#3B5998; }
#profile_page_top li.insta_button a:hover:before { color:#8a3ab9; }
#profile_page_top li.pint_button a:hover:before { color:#c92228; }
#profile_page_top li.mail_button a:hover:before { color:#16b9dc; }


/* 404ページ */
#header_image_for_404 { width:100%; margin:0 auto; position:relative; overflow:hidden; }
#header_image_for_404 img { width:100%; height:auto; display:block; }
#header_image_for_404 .caption { margin:0; width:100%; padding:0 30px; line-height:1.5; text-align:center; color:#fff; position:absolute; top:50%; left:50%; opacity:0;
  -webkit-transform:translate(-50%, -50%); -mox-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%); transform:translateY(-50%, -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_image_for_404 .caption p + p {
	margin-top: 0.5em;
}
#header_image_for_404.animate .caption {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.5s !important;
  animation: opacityAnimation 1.0s ease forwards 1.5s !important;
}


/* 広告 */
#page_banner { margin:50px 0; text-align:center; font-size:0; }
#page_banner img { max-width:100%; height:auto; display:block; margin:0 auto; }
#page_banner .page_banner {
  width:50%; display:inline-block; border:1px solid #ddd; padding:40px; text-align:center; font-size:14px;
  width:-webkit-calc(50% - 15px); width:-moz-calc(50% - 15px); width:calc(50% - 15px);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#page_banner .banner_left { margin:0 15px 0 0; }
#page_banner .banner_right { margin:0 0 0 15px; }
#page_banner.one_banner .banner_left, #page_banner.one_banner .banner_right { margin:0; }


/* ページナビゲーション */
#previous_next_page { text-align:center; margin:0 0 70px 0; font-size:0;}
#previous_next_page a {
  display:inline-block; vertical-align:top; font-size:14px; text-decoration:none; text-align:center; padding:0 25px; height:50px; line-height:50px; min-width:180px; background:#000; color:#fff; position:relative; margin:0 5px; border-radius:4px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_page a:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:14px; display:block; position:absolute; top:1px; right:16px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_page a.prev:after { content:'\e90f'; right:auto; left:16px; }




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */

/* ヘッダー上部 */
#header_top { width:100%; min-width:1150px; position:relative; z-index:20; background:#000; }
#header_top_inner { height:60px; width:1150px; margin:0 auto; position:relative; color:#fff; }
#site_desc { font-size:14px; height:60px; line-height:60px; font-weight:normal; }


/* ヘッダー下部 */
#header {
  height:100px; width:100%; min-width:1150px; 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:100px; width:1150px; 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; }
.pc #logo_text a { text-decoration:none; color:#fff; }
.pc .header_fix #header #logo_text, .pc .header_fix #header #logo_image { display:none; }


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

.pc #global_menu > ul > li > a {
  font-size:14px; text-decoration:none; height:50px; line-height:50px; display:block; padding:0 25px; color:#fff;
  margin:25px 0 0 0; overflow:hidden; border-radius:5px;
  -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 { color:#fff !important; box-shadow:1px 1px 3px 2px rgba(0,0,0,0.1) inset; }
.pc #global_menu a:hover { color:#fff !important; }

.pc #global_menu ul ul { display:none; width:230px; position:absolute; top:100px; left:0px; 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:#fff; display:block; border:none; position:relative; padding:14px 25px; height:auto; line-height:1.6; margin:0; text-align:left; box-shadow:none;
  -webkit-transition-property:all; -webkit-transition-duration:0.35s; -webkit-transition-timing-function:ease; -moz-transition-property:all; -moz-transition-duration:0.35s; -moz-transition-timing-function:ease; -o-transition-property:all; -o-transition-duration:0.35s; -o-transition-timing-function:ease; transition-property:all; transition-duration:0.35s; transition-timing-function:ease;
}
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; padding-left:40px; }

.pc #global_menu ul ul li.menu-item-has-children > a:before {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:14px; display:block; position:absolute; left:200px; top:19px; height:14px; line-height:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.pc .header_fix #header #global_menu { bottom:-1px; }
.pc #menu_button { display:none; }
.pc #global_menu ul.main_menu { display:none; }


/* 子メニューを逆方向にする */
.pc #global_menu > ul > li.rev ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul{ right:0; left:auto; }
.pc #global_menu > ul > li.rev ul ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul ul  { left:auto; right:100%; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a:before, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a:before { content:'\e90f'; right:auto; left:9px; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a { padding-left: 25px; }



/* メガメニュー */
#header_category_menu { width:100%; min-width:1150px; background:#333; position:absolute; z-index:20; display:none; }
#header_category_menu_inner { width:1150px; margin:0 auto; position:relative; }
#header_category_menu a { color:#fff; display:block; }
#header_category_menu ul a {
  padding:21px; font-size:14px;
  -webkit-transition-property:all; -webkit-transition-duration:0.35s; -webkit-transition-timing-function:ease; -moz-transition-property:all; -moz-transition-duration:0.35s; -moz-transition-timing-function:ease; -o-transition-property:all; -o-transition-duration:0.35s; -o-transition-timing-function:ease; transition-property:all; transition-duration:0.35s; transition-timing-function:ease;
}
#header_category_menu ul a:hover { background:#b83334; padding-left:34px; }
#header_category_menu ul ul a { background:#b83334; }
#header_category_menu ul ul a:hover { background:rgba(0,0,0,0.2) !important; }
#header_category_menu ul { }
#header_category_menu ul ul {
  display:none; position:absolute; top:0; left:230px; z-index:9999; background:#b83334; height:100%;
  width:-webkit-calc(100% - 230px); width:-moz-calc(100% - 230px); width:calc(100% - 230px);
}
#header_category_menu ul ul li { width:230px; float:left; }
#header_category_menu li.has_child > a { position:relative; }
#header_category_menu li.has_child > a:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:14px; display:block; position:absolute; left:200px; top:22px; height:14px; line-height:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#header_category_menu li.has_child.active > a { background:#b83334; padding-left:34px; }


/* SNSボタン */
#header_social_link { position:absolute; right:-10px; top:15px; }
.social_link li { float:left; margin:0; position:relative; }
.social_link li a {
  display:block; overflow:hidden; width:35px; height:33px; line-height:33px; text-align:center; position:relative;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none;
}
.social_link li a span { display:none; }
.social_link li a:before {
  font-family:'design_plus'; color:#fff; font-size:16px; width:17px; height:17px; display:block;
  position:absolute; top:1px; left:0; right:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.social_link li a:hover:before { color:#fff; }
.social_link li.twitter a:before { font-family: 'tiktok_x_icon'; content: "\e901";}
.social_link li.facebook a:before { content:'\e902'; }
.social_link li.insta a:before { content:'\ea92'; }
.social_link li.pint a:before { content:'\e905'; }
.social_link li.flickr a:before { content:'\eaa4'; }
.social_link li.tumblr a:before { content:'\eab9'; }
.social_link li.mail a:before { content:'\f0e0'; }
.social_link li.rss a:before { content:'\e90b'; }
.social_link li.twitter a:hover:before { color:#000 !important; }
.social_link li.facebook a:hover:before {color:#3B5998 !important; }
.social_link li.insta a:hover:before { color:#8a3ab9 !important; }
.social_link li.pint a:hover:before { color:#c92228 !important; }
.social_link li.flickr a:hover:before { color:#0279d3 !important; }
.social_link li.tumblr a:hover:before { color:#4c6f92 !important; }
.social_link li.rss a:hover:before { color:#ffcc00 !important; }
.social_link li.mail a:hover:before { color:#16b9dc !important; }
.pc .header_fix #header #header_social_link { display:none; }


/* 固定ヘッダー */
.pc .header_fix { padding-top:50px; }/* #header_inner height + #header margin bottom */
.pc .header_fix #header {
  position:fixed; top:0px; left:0px; z-index:200; background:#fbfbfb; height:50px; width:100%;
  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 #global_menu > ul > li { height:50px; line-height:50px; margin:0; }
.pc .header_fix #global_menu > ul > li > a { margin:0; border-radius:0; }
.pc .header_fix #global_menu > ul > li.active > a, .pc .header_fix #global_menu > ul > li.current-menu-item > a { box-shadow:none; }
.pc .header_fix #global_menu ul ul { top:50px; width:100%; }
.pc .header_fix #global_menu ul ul ul { top:0; }
.pc .header_fix #global_menu { width:100%; border-right:1px solid rgba(255,255,255,0.3); }
.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; border-left:1px solid rgba(255,255,255,0.3); }
.pc .header_fix #header_category_menu { position:fixed; top:50px; z-index:9999; }


/* パンくずリンク */
#bread_crumb { width:100%; min-width:1150px; height:50px; border-bottom:1px solid #ddd; }
#bread_crumb ul { margin:0 auto; width:1150px; padding:17px 0 0 0; }
#bread_crumb li { display:inline; font-size:12px; padding:0 0 0 17px; margin:0 5px 0 0; line-height:1.6; position:relative; }
#bread_crumb li:before {
  font-family:'design_plus'; content:'\e910'; color:#333; font-size:9px; width:9px; height:9px; line-height:9px;
  display:block; position:absolute; left:0; top:4px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home { padding:0 0 0 5px;}
#bread_crumb li.home a {
  position:relative; width:14px; height:16px; word-wrap: break-word;
  text-indent:-300%; overflow:hidden; display:block; float:left;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a:after {
  font-family:'design_plus'; content:'\e90c'; font-size:14px; width:14px; height:14px; line-height:14px;
  text-indent:0; display:block; position:absolute; top:2px; left:0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home a:hover:after { color:#000; }
#bread_crumb li.home:before { display:none; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* 固定コンテンツ */
#fixed_footer_content {
  position:fixed; bottom:0; left:0; width:100%; height:120px; color:#fff; padding:40px; z-index:9999;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
#fixed_footer_content.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
#fixed_footer_content a { color:#fff; text-decoration:none; }
#fixed_footer_content .content_left {
  position:absolute; left:40px; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  width:-webkit-calc(100% - 530px); width:-moz-calc(100% - 530px); width:calc(100% - 530px);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .has_image .content_left { width:-webkit-calc(100% - 840px); width:-moz-calc(100% - 840px); width:calc(100% - 840px); }
#fixed_footer_content .button {
  position:absolute; right:55px; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  min-width:300px; height:55px; line-height:55px; text-align:center; display:inline-block; padding:0 40px 0 10px; font-size:16px;
}
#fixed_footer_content .button:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:14px; display:block; position:absolute; top:1px; right:16px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#fixed_footer_content .image {
  position:absolute; right:55px; max-width:728px;
  top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
}
#fixed_footer_content .image img { width:100%; max-width:100%; height:auto; display:block; }
#fixed_footer_content .close {
  position:absolute; right:5px; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  display:block; width:40px; height:40px; border-radius:100%;
}
#fixed_footer_content span { display:none; }
#fixed_footer_content .close:before {
  font-family:'design_plus'; color:#fff; font-size:20px; display:block;
  content:'\e91a'; position:absolute; top:10px; left:10px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#fixed_footer_content .close:hover { background:rgba(255,255,255,0.1); }
#fixed_footer_content .catch { font-size:21px; margin:0; line-height:1.5; }
#fixed_footer_content .desc { font-size:14px; margin:5px 0 0 0; line-height:2; }
#fixed_footer_content .pr { background:#fff; color:#333; display:inline; font-size:12px; margin:5px 15px 0 0; padding:0 12px; border-radius:2px; height:20px; line-height:20px; float:left; }
#fixed_footer_content .pr1 { display:none; }

#fixed_footer_content .free {
  width:100%; padding-right:100px; position:absolute; left:40px; 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;
}
#fixed_footer_content .post_content p { font-size:14px; margin:0; line-height:1.6; }


/* スライダー */
#footer_slider_wrap {
  width:100%; min-width:1150px; padding:50px 0; margin:50px 0 0 0; background:#f5f5f5; overflow:hidden;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#footer_slider { width:1150px; margin:0 auto; position:relative; }
#footer_slider .item {
  margin:0; position:relative; width:370px; height:100px; overflow:hidden; border-right:1px dotted #ccc; margin:0 40px 0 0; padding:0 40px 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;
}
#footer_slider .title {
  display:block; text-decoration:none; line-height:1.6; font-size:14px; -ms-word-wrap: break-word; word-wrap: break-word;
}
#footer_slider .category a { display:inline-block; height:30px; line-height:30px; padding:0 40px; text-align:center; color:#fff; font-size:12px; margin:0 0 15px 0; }


/* スライダーの矢印 */
#footer_slider .slick-arrow {
  width:15px; height:15px; position:absolute; opacity:0; 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;
}
#footer_slider .slick-arrow span { text-indent:-200px; display:block; }
#footer_slider .slick-arrow:before {
  font-family:'design_plus'; color:#333; font-size:15px; font-weight:bold; display:block; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_slider .slick-prev:before { content:'\e90f'; }
#footer_slider .slick-next:before { content:'\e910'; }
#footer_slider .slick-arrow:hover:before { color:#666; }
#footer_slider .slick-prev { top:42px; left:-100px; }
#footer_slider .slick-next { top:42px; right:-100px; }
.pc #footer_slider_wrap:hover .slick-prev { left:-50px; opacity:1; }
.pc #footer_slider_wrap:hover .slick-next { right:-50px; opacity:1; }


/* フッターウィジェット */
#footer_top { width:100%; min-width:1150px; }
#footer_top_inner { width:1150px; padding:50px 0px 20px; margin:0 auto; overflow:hidden; }
#footer_left_widget { width:300px; float:left; margin:0 110px 0 0; }
#footer_center_widget { width:400px; float:left; margin:0 10px 0 0; }
#footer_right_widget { width:330px; float:left; }
#footer_top .side_widget { margin:0 0 30px 0; }
.footer_headline { font-size:16px; margin:0 0 30px 0; display:none; }


/* フッター下部 */
#footer_bottom { background:#df3f3f; width:100%; min-width:1150px; }
#footer_bottom_inner { width:1150px; margin:0 auto; position:relative; height:60px; line-height:60px; text-align:center; }


/* SNSボタン */
#footer_bottom .social_link { position:absolute; left:-12px; top:15px; }


/* コピーライト */
#copyright { font-size:12px; line-height:60px; color:#fff; }
#copyright a { color:#fff; }


/* ページ上部へ戻るボタン */
#return_top { display:block; }
#return_top a { display:block; height:60px; width:60px; line-height:60px; text-decoration:none; background:#000; z-index:100; position:relative; }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a:before {
  font-family:'design_plus'; color:#fff; font-size:12px; display:block; position:absolute; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top a:before { content:'\e911'; left:24px; top:2px; }
#return_top {
  position:fixed; right:0px; bottom:0px; z-index:999;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
#return_top.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }




/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
/* 基本設定 */
.side_widget { margin:0 0 50px 0; font-size:14px; position:relative; }
.side_widget:last-child, .side_widget:only-child  { margin:0; }
.side_headline { font-size:14px; margin:0 0 20px 0; padding:0 30px; font-weight:400; color:#fff; background:#000; height:50px; line-height:50px; border-radius:5px 5px 0 0; display:inline-block; }
.side_widget ul { margin:0; }
.side_widget li ul { margin:10px 0 0 0; }
.side_widget li { line-height:2; padding:2px 0; margin:0 0 10px 0; }
.side_widget a { text-decoration:none; }
.side_widget a:hover { }
.side_widget img { height:auto; max-width:100%; }


/* 広告 */
.ml_ad_widget { margin:0 0 50px 0; border:none; padding:0; background:none; }
.ml_ad_widget img { height:auto; max-width:100%; margin:0 auto; display:block; }


/* カレンダー */
.widget_calendar { }
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:2px; line-height:3.4; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; color:#333; background-color:#eee; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#ccc; }
#wp-calendar caption { padding:7px 0; }
#wp-calendar thead th, #wp-calendar tfoot td { border:none; padding:0; line-height:2; }
#wp-calendar #prev, #wp-calendar #next { line-height:3; }
#wp-calendar #prev a, #wp-calendar #next a { text-decoration:none; background:none; color:#333; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { color:#fff; background:#ccc; }
#wp-calendar td#today { font-weight:bold; }


/* デザインされた記事一覧１ */
.styled_post_list1_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.styled_post_list1 { margin:0; padding:20px 0 0 0; border-top:1px solid #ddd; }
.styled_post_list1 li { margin:0 0 20px 0; padding:0 0 20px 0; background:none; border-bottom:1px solid #ddd; }
.styled_post_list1 li:last-child { margin:0; }
.styled_post_list1 .info { position:relative; padding:0 30px 0 0; }
.styled_post_list1 .info:after {
  font-family:'design_plus'; content:'\e910'; color:#111; font-size:14px; display:block; position:absolute; right:0px;
  top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.styled_post_list1 .title { font-size:14px; margin:0; display:block; font-weight:400; line-height:1.7; color:#000; -ms-word-wrap: break-word; word-wrap: break-word; position:relative; }
.styled_post_list1 .title:hover { text-decoration:none; }
.styled_post_list1 .date { margin:5px 0 0 0; position:relative; display:block; line-height:1; color:#aaa; font-size:12px; font-family: 'Arial';}


/* デザインされた記事一覧２ */
.styled_post_list2_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.styled_post_list2 li { position:relative; background:none; padding:0; margin:0 0 -1px 0; line-height:1.8; }
.styled_post_list2 li a { position:relative; display:block; border:1px solid #ddd; padding:16px 40px 16px 20px; background:#fff; -ms-word-wrap: break-word; word-wrap: break-word; }
.styled_post_list2 li a:after {
  font-family:'design_plus'; content:'\e910'; color:#111; font-size:14px; display:block; position:absolute; right:15px;
  top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* デザインされた記事一覧３ */
.styled_post_list3_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.styled_post_list3 li {
  float:left; width:50%; position:relative; background:none; padding:0; margin:0 -1px -1px 0; line-height:1; border:1px solid #ddd; height:150px; padding:7px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.styled_post_list3 .category a { display:block; background:#000;  color:#fff; height:30px; line-height:30px; text-align:center; margin:0 0 7px 0; font-size:12px; overflow:hidden; }
.styled_post_list3 .title { line-height:1.6; display:block; font-size:14px; max-height:90px; overflow:hidden; padding:0 10px; }


/* カスタムメニュー */
.tcdw_menu_widget .menu1, .tcdw_menu_widget .menu2 { width:50%; float:left; font-size:12px; }
.tcdw_menu_widget .menu_headline { margin:0 0 15px 0; font-size:16px; font-weight:bold; }
.tcdw_menu_widget li:last-child { margin-bottom:0; }


/* プロフィール */
.tcd_user_profile_widget { border:1px solid #ddd; padding:30px 30px 30px; }
.tcd_user_profile_widget .user_avatar { overflow:hidden; width:130px; height:130px; display:block; margin:0px auto 25px; border-radius:130px; }
.tcd_user_profile_widget .user_avatar img { width:100%; height:auto; display:block; }
.tcd_user_profile_widget .user_desc { font-size:14px; line-height:2.3; margin:0 0 30px 0; }
.tcd_user_profile_widget .button { text-align:center; margin:0 0 30px 0; }
.tcd_user_profile_widget .button a { display:inline-block; height:45px; line-height:45px; padding:0 30px; background:#222; color:#fff; font-size:14px; text-decoration:none; border-radius:5px; }
.tcd_user_profile_widget .user_sns { text-align:center; margin:0; padding:0; font-size:0; }
.tcd_user_profile_widget li { display:inline-block; vertical-align:top; margin:0; padding:0; line-height:100%; font-size:11px; background:none; width:30px; }
.tcd_user_profile_widget li a { position:relative; text-decoration:none; }
.tcd_user_profile_widget li a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
.tcd_user_profile_widget li a:before {
  font-family:'design_plus'; color:#333; font-size:12px; display:block; position:absolute; top:10px; left:-5px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.tcd_user_profile_widget li.twitter_button a:before {font-family: 'tiktok_x_icon'; content: "\e901"; }
.tcd_user_profile_widget li.facebook_button a:before { content:"\e902"; }
.tcd_user_profile_widget li.insta_button a:before { content:"\ea92"; top:10px; }
.tcd_user_profile_widget li.pint_button a:before { content:"\e905"; }
.tcd_user_profile_widget li.mail_button a:before { content:"\f0e0"; }
.tcd_user_profile_widget li.twitter_button a:hover:before { color:#000; }
.tcd_user_profile_widget li.facebook_button a:hover:before { color:#3B5998; }
.tcd_user_profile_widget li.insta_button a:hover:before { color:#8a3ab9; }
.tcd_user_profile_widget li.pint_button a:hover:before { color:#c92228; }
.tcd_user_profile_widget li.mail_button a:hover:before { color:#16b9dc; }


/* ドロップダウンカテゴリーメニュー */
.tcdw_category_list_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.tcd_category_list { margin:0; padding:1px 0 0 0; border-top:1px solid #ddd; }
.tcd_category_list li { margin:0; padding:0; background:none; position:relative; }
.tcd_category_list a {
  display:block; padding:0 5px 0 15px; height:50px; line-height:50px; overflow:hidden; border:1px solid #ddd; margin:-1px 0 0 0; font-size:14px; text-decoration:none; background:#fff; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.tcd_category_list > li:first-child > a { border-top:none; }
.tcd_category_list a:hover { background:#f5f5f5; color:#333; }
.tcd_category_list li a .count { float:right; top:5px; position:relative; height:40px; line-height:40px; background:#bbb; color:#fff; padding:0 8px; min-width:24px; text-align:center; font-size:11px; border-radius:4px; }
.tcd_category_list li a:hover .count{ background:#d80c49; }
.tcd_category_list li li a { padding-left:28px; }
.tcd_category_list li li li a { padding-left:42px; }
.tcd_category_list li li li li a { padding-left:56px; }

.tcd_category_list ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcd_category_list ul ul { width:100%; position:relative;}
.tcd_category_list ul li { margin:0; padding:0; }
.tcd_category_list ul li a {  }
.tcd_category_list ul ul li a { }
.tcd_category_list ul ul ul li a { }
.tcd_category_list ul ul ul ul li a { }


/* カスタムメニュー（ドロップダウンver）*/
.tcdw_custom_drop_menu_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.tcdw_custom_drop_menu { margin:0; padding:0; }
.tcdw_custom_drop_menu li { margin:0; padding:0; background:none; position:relative; }
.tcdw_custom_drop_menu a {
  display:block; padding:0 15px; height:55px; line-height:55px; overflow:hidden; border:1px solid #ddd; margin:-1px 0 0 0; font-size:14px; text-decoration:none; background:#fff; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.tcdw_custom_drop_menu li:first-child > a { border-top:none; }
.tcdw_custom_drop_menu a:after {
  font-family:'design_plus'; content:'\e910'; color:#aaa; font-size:12px; display:block; position:absolute; top:2px; right:15px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.tcdw_custom_drop_menu a:hover { background:#014760; color:#fff; }
.tcdw_custom_drop_menu a:hover:after { color:#fff; }
.tcdw_custom_drop_menu > li.parent_menu.active > a:after { content:'\e911'; }

.tcdw_custom_drop_menu li ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcdw_custom_drop_menu li ul ul { width:100%; position:relative;}
.tcdw_custom_drop_menu li ul li { margin:0; padding:0; }
.tcdw_custom_drop_menu li ul li a { height:auto; line-height:1.5; padding:18px 25px; background:#f6f6f6; }
.tcdw_custom_drop_menu li ul li a:after { display:none; }
.tcdw_custom_drop_menu li ul ul li a { background:#ddd; }
.tcdw_custom_drop_menu li ul ul ul li a { background:#ccc; }
.tcdw_custom_drop_menu li ul ul ul ul li a { background:#bbb; }


/* 検索 */
.widget_search label { display:none; }
.widget_search .side_headline { display:none; }
#searchform {
  border:1px solid #ddd; background:#fbfbfb; height:40px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#searchform #s {
  border:none; background:none; padding:0 10px; margin:0; width:calc(100% - 40px); height:40px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#searchform #searchsubmit {
  border:none; background:none; width:40px; height:40px; z-index:200; position:relative;
  cursor:pointer; display:block; text-indent:-300%; overflow:hidden;
}
#searchform .submit_button  { position:relative; width:40px; height:40px; float:right; }
#searchform .submit_button:before {
  text-indent:0; display:block; width:40px; height:40px; line-height:40px; text-align:center; cursor:pointer; z-index:1;
  position:absolute; font-family:'design_plus'; color:#333; font-size:18px; content:'\e915'; right:0px; top:1px;
}
#searchform .submit_button:hover:before { color:#fff; }
#searchform .submit_button:hover { background:#333; }


/* アーカイブ、カテゴリードロップダウンメニュー */
.widget_archive, .widget_categories, .tcdw_archive_list_widget { }
.widget_archive { }
.widget_archive ul  { margin:0; padding:0; }
.widget_archive ul li { }
.widget_archive select, .widget_categories select, .tcd_archive_dropdown select { border:1px solid #ddd; padding:12px 10px; width:100%; margin:0; font-size:14px; }
.widget_archive select { border:1px solid #ddd; padding:12px; }
.widget_archive label, .widget_categories label { display:none; }
.widget_archive select option, .widget_categories select option, .tcd_archive_dropdown option { background:#fff; color:#333; }
.widget_categories li { font-size:14px; }


/* アーカイブ一覧 */
.tcdw_archive_list_widget .side_headline { display:none; }
.p-widget-dropdown { height: 45px; line-height: 45px; position: relative; }
.p-widget-dropdown::after { color: #666; content: "\e90e"; font-family: "design_plus"; position: absolute; top: 0; right: 17px; z-index: 1; }
.p-widget-dropdown select { padding-right:33px; position: relative; z-index: 2; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.p-widget-dropdown select::-ms-expand { display: none; }

.p-dropdown { font-size: 14px; }
.p-dropdown__title { -webkit-box-sizing: border-box; box-sizing: border-box; position: relative; height: 50px; padding: 0 18px; border: 1px solid #ddd; background: #fff; line-height: 50px; }
.p-dropdown__title::after { position: absolute; right: 17px; font-family: "design_plus"; content: "\e90e"; }
.p-dropdown__title:hover { cursor: pointer; }
.p-dropdown__title.is-active::after { content: "\e911"; }
.p-dropdown__list { display: none; }
.p-widget .p-dropdown .p-dropdown__list { margin: 0; }
.p-dropdown__list li { border: 1px solid #ddd; border-top: 0; line-height: 1.5; margin:0; padding:0; }
.p-dropdown__list li a { display: block; padding: 14px 18px; }
.p-dropdown__list li a:hover { background: #f6f6f6; color: #000; }


/* デフォルトの最近の記事 */
.widget_recent_entries li { border-bottom:1px dotted #ccc; padding:0 0 15px 0; }
.widget_recent_entries li:last-child { border:none; padding:0; }


/* アクセス数ランキング */
.ranking_list_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.ranking_list_widget ol { margin:0; padding:0; }
.ranking_list_widget li { padding:6px 0 15px; margin:0; }
.ranking_list_widget .num {
  float:left; position:relative; height:40px; width:40px; display:block; background:#ccc; color:#fff; padding:0 0 0 7px; font-weight:bold; font-size:13px; margin: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;
}
.ranking_list_widget .num:after {
  position:absolute; display:block; content:''; width:0; right:0px; top:0px;
  height:0; border-style: solid; border-width:0 0 40px 40px; border-color:transparent transparent #fff transparent;
}
.ranking_list_widget .title { margin:13px 0 0 0; }




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { font-size:12px; margin:0; }
#comment_headline { font-size:16px; margin:50px 0 20px 0; }
#comment_area, #trackback_area { margin:15px 0 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


/* コメント・トラックバックのタブ */
#comment_header { position:relative; margin:0 0 25px; }
#comment_header ul { margin:0; }
#comment_header ul li { float:left; text-align:center; margin:0; width:50%; }
#comment_header ul li a, #comment_header ul li p { font-size:11px; padding:18px 15px; line-height:1.6; display:block; color:#333; text-decoration:none; background:#f2f2f2; }
#comment_header ul li a:hover { color:#fff !important; background:#333; }
#comment_header ul li.comment_switch_active a, #comment_header #comment_closed p { color:#fff; position:relative; background:#333; }
#comment_header ul li.comment_switch_active a:after, #comment_header #comment_closed p:after {
  position:absolute; bottom:-17px; left:-webkit-calc(50% - 5px); left:-moz-calc(50% - 5px); left:calc(50% - 5px);
  content:""; width:0; height:0; border-width:10px; border-style:solid; border-color:#333 transparent transparent transparent;
}
#comment_header ul li:first-child a, #comment_header ul li:first-child p { border-radius:5px 0 0 5px; }
#comment_header ul li:last-child a, #comment_header ul li:last-child p { border-radius:0 5px 5px 0; }
#comment_header ul li.comment_switch_active a:hover { background:#333 !important; }


/*  コメントの基本部分 */
.commentlist { list-style-type:none; margin:0; padding:0; }
.comment { border:1px solid #ccc; color:#777; margin:0 0 15px; padding:15px 20px 0; background:#fff; }
#comments .post_content { margin:20px 0 0; padding:0; background:none; }
.admin-comment { }


/* コメントの情報部分 */
.comment-meta { position:relative; margin:0 0 10px 0; }

.comment-meta-left { float:left; width:400px; }
#comments .avatar { float:left; margin:0 10px 0 0; background:#fff; width:40px; height:40px; }
.comment-name-date { padding:3px 0 0 0; height:37px; }

a.admin-url { text-decoration:underline; }
a.guest-url { text-decoration:underline; }

.comment-name-date { margin:0; }
.comment-date { font-size:11px; color:#757676; margin:10px 0 0 0; }

.comment-act { background:url(img/common/arrow3.gif) no-repeat left; font-size:11px; position:absolute; right:0px; padding:0 0 0 10px; margin:5px 0 0 0; }
.comment-act li { display:inline; margin:0; }
.comment-reply a, .comment-reply a:visited { border-right:1px solid #aaa; padding:0 10px 0 0; margin:0 6px 0 0; }
.comment-edit a, .comment-edit a:visited { border-left:1px solid #aaa; padding:0 0 0 10px; margin:0 0 0 6px; }


/* コメント本文 */
#comments .post_content p { margin:0 0 15px 0; }
#comments .post_content blockquote span { margin:0 0 -1em 0; display:block; }


/* メッセージ、警告文 */
.comment-note { display:block; font-size:11px; margin:0 0 1em 0; color:#33a8e5; border:1px solid #94ddd4; padding:10px 15px; background:#d6f4f0; }
.comment_closed { border:1px solid #ccc; text-align:center; margin:0 35px 15px 0; padding:15px; background:#fefefe; }
.no_comment { padding-bottom:15px; }


/* トラックバック */
.trackback_time { font-size:11px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:1.6; }

#trackback_url_area { margin:0; }
#trackback_url_area label { display:block; margin:0 0 10px 0; font-size:11px; }
#trackback_url_area input { border:1px solid #ccc; background:#fafafa; padding:10px; width:100%; font-size:11px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }


/* ページナビ */
#comment_pager { margin:0 0 10px; height:24px; }
#comment_pager a, #comment_pager span { display:inline; float:left; margin:0 10px 0 0; }
#comment_pager .current { text-decoration:underline; }


/* コメントフォーム */
.comment_form_wrapper { border:1px solid #ccc; margin:0 0 0px; padding:15px; background:#fff; }
.comment .comment_form_wrapper { margin:0 0 20px; }

#cancel_comment_reply  { background:url(img/common/arrow3.gif) no-repeat left center; margin:0 0 1em 0; padding:0 0 0 10px; }

#comment_user_login p { padding:0 0 0 1px; margin:0; line-height:1; }
#comment_user_login span { margin:0 0 0 40px; }

#comment_login { margin:0; padding:3px 30px 10px 30px; }
#comment_login p { margin:0; padding:12px 0 11px 36px; line-height:1; }
#comment_login a { margin:0 0 0 20px; padding:0 0 0 20px; background:url(img/common/arrow3.gif) no-repeat 10px 3px; }

#guest_info { padding:0; width:100%; }
#guest_info div { margin:0 0 12px 0; text-align:left; }
#guest_info input { margin:0; padding:5px 0; border:1px solid #ccc; width:100%; background:#fff; color:#777; }
#guest_info input:focus { border:1px solid #e48898; }
#guest_info label { display:block; margin:0 0 5px 0; padding:0 0 0 0; font-size:11px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

#comment_textarea textarea { margin:15px 0 0; width:100%; height:150px; border:1px solid #ccc;
                             background:#fff; color:#777; font-size:11px; overflow:auto; }
#comment_textarea textarea:focus { border:1px solid #e48898; }

#submit_comment_wrapper { text-align:center; }
#submit_comment {
  background:#aaa; border:none; cursor:pointer; color:#fff; font-size:14px; width:200px; height:50px; margin:15px auto 0; display:block; border-radius:5px;
  -webkit-transition: background-color 200ms ease-in-out; -moz-transition: background-color 200ms ease-in-out; -o-transition: background-color 200ms ease-in-out; -ms-transition: background-color 200ms ease-in-out; transition: background-color 200ms ease-in-out;
}
#submit_comment:hover { background:#e48898; }

#input_hidden_field { display:none; }


/* パスワード保護 */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:12px; margin:0; line-height:1.6; }


/* パスワード保護 */
.c-pw__desc, .c-pw__desc p { line-height:2.5; }
.c-pw__desc p { margin-bottom:16px; }
.c-pw__btn { box-sizing: border-box; color: #fff; display: inline-block; padding: 13px 20px; font-size:14px; text-align:center; line-height:1; }
.c-pw__btn:hover { background: #333; color: #fff; }
.c-pw__btn--register { min-width: 160px; margin-bottom:32px; }
.c-pw__btn--submit { min-width: 100px; border:0; cursor:pointer; }
.c-pw .c-pw__btn:hover { text-decoration: none; }
.c-pw__box { border:1px solid #ddd; background:#f5f5f5; padding: 25px 36px; display:inline-block; margin-bottom:40px; box-sizing: border-box; }
.c-pw__box .c-pw__box-desc { line-height:1.2; margin-bottom: 20px; }
.c-pw__box-label { margin-right: 14px; }
.c-pw__box-input { border:1px solid #ddd; box-shadow:none; height:40px; width:250px; margin-right: 13px; flex: 1; box-sizing: border-box; padding: 0 10px; }

.post_content .c-pw__btn, .post_content .c-pw__btn:hover { color: #fff; }

/* Google Mapの設定 */
.p-btn {
  -webkit-box-sizing: border-box; box-sizing: border-box;
  display: inline-block; min-width: 180px; height: 50px; padding: 0 15px; border-radius: 0;
  color: #fff; font-size: 14px; line-height: 50px; text-align: center;
}
@media screen and (max-width: 767px) {
  .p-btn { height: 45px; font-size: 12px; line-height: 45px; }
}



/** ブロックエディターのテーブルブロックの調整 **/
.wp-block-table.is-style-stripes td,
.wp-block-table .has-background td{
  background-color: transparent;
}


.wp-block-embed { margin:0 0 2em 0; }


/* ----------------------------------------------------------------------
 上付き文字、下付き文字
---------------------------------------------------------------------- */
sup {
vertical-align: super;
font-size: smaller;
}
sub {
vertical-align: sub;
font-size: smaller;
}


/* 基本設定 */
.p-widget ul { margin:0; }
.p-widget li { line-height:2; padding:2px 0; margin:0 0 10px 0; }
.p-widget a { text-decoration:none; } 

/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color:#fff; }
.widget_rss ul { border-top:1px solid #ddd; margin-top:-21px; }
.widget_rss li { border-bottom:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px;}
.widget_rss li:last-of-type { border:none; }
.widget_rss ul li { padding:20px 0px; border-bottom:1px solid #ddd; margin-top:-1px; display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.widget_rss ul li:not(:first-child) { border-top:1px solid #ddd; }
.widget_rss ul li .rss-date { -ms-flex-order:1; order:1; color:#999; font-size:13px; line-height:1; margin-right:10px; padding:0 0 0 22px; position:relative; }
.widget_rss ul li .rss-date:before {font-family: 'design_plus';
  content: '\e94e';font-size:16px; position:absolute; top:-2px; left:0px; -webkit-font-smoothing: antialiased; }
.widget_rss ul li cite { -ms-flex-order:2; order:2; color:#999; font-size:13px; line-height:1; }
.widget_rss ul li .rsswidget { -ms-flex-order:3; order:3; display:block; width:100%; margin:0; }
.widget_rss ul li .rssSummary { -ms-flex-order:4; order:4; color:#999; font-size:13px; margin: -0.35em 0; }
.widget_rss .rss-date { position:relative; font-family:Arial; }
.widget_rss .rsswidget ~ .rss-date, .widget_rss .rsswidget ~ cite { margin-bottom:10px; }
.widget_rss .rsswidget ~ .rssSummary { margin-top:calc(10px - 0.35em); }

/* デフォルトのタグ一覧 */
.widget_tag_cloud .tagcloud {
  margin:-21px 0 -6px 0; padding:10px 0 0; position:relative;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
  border-top:1px solid #ddd;
}
.widget_tag_cloud .tagcloud a { margin:0 6px 6px 0; font-size:14px !important; display:block; background:#fff; padding:0px 20px; border-radius:5px; height:36px; line-height:36px; border: 1px solid #ddd;}
.widget_tag_cloud .tagcloud a:hover { background:#000; color:#fff; }

/* デフォルトの最近の記事 */
.widget_recent_entries ul { border-top:1px solid #ddd; margin-top:-21px; padding-top: 15px;}
.widget_recent_entries li { border-bottom:1px solid #ddd; padding:0 0 15px 0; margin-bottom:15px; word-wrap:break-word; }
.widget_recent_entries li:last-child { border:none; padding:0; margin:0; }
.widget_recent_entries li a { display:block; }
.widget_recent_entries .post-date { position:relative; color:#999; font-size:14px; display:block; margin-top:3px; }
.widget_recent_entries .post-date:before {
  font-family:'design_plus'; content:'\e94e'; font-size:13px; display:inline-block; margin:0 7px 0 0; vertical-align:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* デフォルトのカテゴリー */
.category_list_widget ul { margin:0; }
.category_list_widget ul ul { margin-left:1em; }
.category_list_widget ul li { margin:0; padding:0; line-height:1; }
.category_list_widget ul li a { display:block; line-height:1.6; padding:10px 0; }
.category_list_widget .widget_headline + ul { margin:-12px 0 -14px; }
.widget_categories ul ul { margin-left:1em; }
.widget_categories ul li { margin:0; padding:0; line-height:1; }
.widget_categories ul li a { display:inline-block; line-height:1.6; padding:10px 0; }
.widget_categories ul li { color:#999; }
.widget_categories .widget_headline + ul { margin:-12px 0 -14px; }


/* デフォルトの固定ページ */
.widget_pages ul ul { margin-left:1em; }
.widget_pages ul li { margin:0; padding:0; line-height:1; }
.widget_pages ul li a { display:block; line-height:1.6; padding:10px 0; }
.widget_pages .widget_headline + ul { margin:-12px 0 -14px; }


/* デフォルトのナビ　*/
.widget_nav_menu ul { margin:0; }
.widget_nav_menu ul ul { margin-left:1em; }
.widget_nav_menu ul li { margin:0; padding:0; line-height:1; }
.widget_nav_menu ul li a { display:block; line-height:1.6; padding:10px 0; }
.widget_nav_menu .widget_headline + ul { margin:-12px 0 -14px; }

/* デフォルトのコメントウィジェット */
.widget_recent_comments li { color:#999; }

/* デフォルトのテキストウィジェット */
.widget_text .post_content { font-size:16px; line-height: 1.6; }

/* デフォルトのブロック */
.widget_block { font-size:16px; line-height:1.6; }

/* デフォルトのメタウィジェット */
.widget_meta ul { margin-bottom:-8px; }

/* デフォルトのアーカイブとカテゴリー　ドロップダウンメニュー */
.widget_archive select, .widget_categories select {
  border:1px solid #ddd; background:#fff;  width:100%; height:60px; padding:0 18px; font-size:16px; cursor:pointer;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-appearance:none; appearance:none;
}
.widget_archive .screen-reader-text, .widget_categories .screen-reader-text  {
  display:block; clip:auto; clip-path:none; pointer-events:none;
  height:60px; width:50px; margin:0;
  left:calc(100% - 50px); text-indent:-100vw;
}
.widget_archive .select_wrap,.widget_categories .select_wrap{
  position: relative;
}
.widget_archive .select_wrap:before, .widget_categories .select_wrap:before {
  font-family:'design_plus'; content:'\e90e'; text-align:center; text-indent:0;
  display:block; font-size:14px; width:14px; height:14px; line-height:14px;
  position:absolute; right:15px; top:25px;
}

/* カレンダー */
#calendar_wrap { padding:16px 0 0; margin:-21px 0 -20px; }
#wp-calendar { margin:0 auto; width:100%; font-size:14px; border-collapse:collapse; table-layout:fixed;}
#wp-calendar caption { padding:12px 0; font-size:16px; font-weight:600; }
#wp-calendar thead th, #wp-calendar tfoot td { padding:12px 10px; line-height:2; }
#wp-calendar thead th { font-weight:500; }
#wp-calendar tbody th, #wp-calendar tbody td { padding:0; margin:0; line-height:1; text-align:center; }
#wp-calendar tbody span { display:block; padding:15px 10px; }
#wp-calendar tbody a { display:block; width:30px; height:30px; line-height:30px; border-radius:30px; margin:0 auto; text-decoration:none; background-color:#000; color:#fff; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#aaa; }
#wp-calendar #today { font-weight:600; }
.wp-calendar-nav { font-size:14px; padding:20px 0; width:100%; font-size:14px; }
.wp-calendar-nav .wp-calendar-nav-prev { width:40%; float:left; }
.wp-calendar-nav .wp-calendar-nav-next { width:40%; float:right; text-align:right; }


/* デフォルトのギャラリー */
.widget_media_gallery .gallery-caption {
  background-color:#000; color:#fff; font-size:12px; line-height:1.5; margin:0 0 2.5px; max-height:50%;  transform: translateY(50%);
  opacity:0; padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.widget_media_gallery .gallery-item { margin-top:0 !important; }
.widget_media_gallery .gallery-item img{border: none!important;}
.widget_media_gallery .gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%;  }
.widget_media_gallery .gallery-item:hover .gallery-caption { opacity: .7; transition: all .25s ease; transform: translateY(0%);}

.widget_text .post_content { font-size:16px; line-height: 1.6; margin-top: -21px;border-top: 1px solid #ddd;padding-top: 20px;}
.widget_categories > ul, .widget_archive > ul, .widget_pages > ul, .widget_meta > ul, .widget_recent_comments > ul, .widget_calendar .calendar_wrap { border-top:1px solid #ddd; margin-top:-21px; padding-top: 15px;}
.widget_categories .select_wrap, .widget_archive .select_wrap { margin-top:-21px; }
.widget_block .wp-block-heading { font-size:14px; margin:0 0 20px 0; padding:0 30px; font-weight:400; color:#fff; background:#000; height:50px; line-height:50px; border-radius:5px 5px 0 0; display:inline-block; }
.widget_block ul.wp-block-archives-list, .widget_block ul.wp-block-categories-list { border-top:1px solid #ddd; margin-top:-21px; padding-top: 15px;}
  

/* スクロール */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 70px;
}
html:has(.l-header--fixed) {
	scroll-padding-top: 100px;
}
@media (max-width: 1199px) {
	html:has(.l-header--fixed) {
		scroll-padding-top: 100px;
	}
}