@charset "utf-8";
/*
Theme Name:DIVA
Theme URI:https://tcd-theme.com/tcd066
Description: WordPress theme "DIVA" is developed for live music bar or night club. It attracting visitors from the top page. You can announce your events on the schedule page and archive your past events on the gallery page.
Author:TCD
Author URI:https://tcd-theme.com/
Version:1.11.1
Text Domain:tcd-diva
*/


/* ------------------------------------------------------------------------------------
 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: 'footer_bar';
  src: url('fonts/footer_bar.eot?v=1.2');
  src: url('fonts/footer_bar.eot?v=1.2#iefix') format('embedded-opentype'),
       url('fonts/footer_bar.woff?v=1.2') format('woff'),
       url('fonts/footer_bar.ttf?v=1.2') format('truetype'),
       url('fonts/footer_bar.svg?v=1.2#footer_bar') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'tiktok_x_icon';
  src: url('fonts/tiktok_x_icon.eot?v=1.1');
  src: url('fonts/tiktok_x_icon.eot?v=1.1#iefix') format('embedded-opentype'),
       url('fonts/tiktok_x_icon.woff?v=1.1') format('woff'),
       url('fonts/tiktok_x_icon.ttf?v=1.1') format('truetype'),
       url('fonts/tiktok_x_icon.svg?v=1.1#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; }
html { overflow-y: scroll; -webkit-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; 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; }

/* 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 */


/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
html { overflow:auto !important; margin:0 !important; }
html.front-page { overflow: hidden !important; }
body { font-family:Arial,sans-serif; font-size:14px; line-height:1; width:100%; position:relative; }
.pc body.admin-bar { padding-top:32px; }
a { 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;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#main_contents { width:1180px; margin:0 auto; }
body.home #main_contents, body.error404 #main_contents { width:auto; }
#main_col {
  float:left; width:816px; z-index:10; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#side_col {
  float:right; width:364px; padding:30px; border-left:1px solid #000; z-index:10; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#one_col { z-index:10; position:relative; }
body.light_color #side_col { border-left:1px solid #ddd; }




/* ----------------------------------------------------------------------
 Aboutページ
---------------------------------------------------------------------- */
/* レイアウト１ */
#about_layout_type1 .left_content { float:left; width:590px; }
#about_layout_type1 .left_content img { max-width:100%; height:auto; display:block; float:left; }
#about_layout_type1 .left_content img.large_image { width:100%; }
#about_layout_type1 .left_content img.small_image { width:50%; }
#about_layout_type1 .right_content {
  float:left; width:calc(100% - 590px); padding:55px 60px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#about_layout_type1 .about_catch { font-weight:500; line-height:1.5; margin:0 0 40px 0; }
#about_layout_type1.no_image .right_content { float:none; width:100%; padding:75px 60px 0; }
#about_layout_type1.no_image #access_info { margin-top:45px; }
#about_layout_type1.no_image .right_content .headline { text-align:center; margin:0 0 65px 0; }


/* レイアウト２ */
#about_layout_type2 .top_content { }
#about_layout_type2 .top_content img { max-width:100%; width:25%; height:auto; display:block; float:left; }
#about_layout_type2 .bottom_content { padding:75px 60px 0px; }
#about_layout_type2 .about_catch { font-weight:500; line-height:1.5; margin:0 0 65px 0; text-align:center; }
#about_layout_type2 .bottom_content .large_image { max-width:100%; height:auto; display:block; margin:45px auto 0; }
#about_layout_type2.no_image #access_info { margin-top:45px; }


/* レイアウト３ */
#about_layout_type3 .top_content { }
#about_layout_type3 .top_content img { max-width:100%; height:auto; display:block; float:left; }
#about_layout_type3 .top_content img.large_image { width:100%; }
#about_layout_type3 .top_content img.small_image { width:25%; }
#about_layout_type3 .bottom_content { padding:75px 60px 0px; }
#about_layout_type3 .about_catch { font-weight:500; line-height:1.5; margin:0 0 65px 0; text-align:center; }
#about_layout_type3 .bottom_content .large_image { max-width:100%; height:auto; display:block; margin:45px auto 0; }
#about_layout_type3 #access_info { margin-top:45px; }


/* ACCESS */
#access_info { border-top:1px solid #444; margin:80px 60px 60px; padding:60px 0 0 0; }
#access_info .headline { font-size:40px; font-weight:500; line-height:1.5; margin:0 0 10px 0; text-align:center; }
body.light_color #access_info { border-top:1px solid #ddd; }

/* Google Map */
#access_google_map { width:100%; height:500px; }
#access_google_map .pb_googlemap_embed { width: 100%; height: 500px; }
#access_google_map .pb_googlemap_custom-overlay-inner { display: -webkit-box; display: -ms-flexbox; display: flex; position: absolute; top: -94px; left: -40px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; width: 80px !important; height: 80px !important; border-radius: 50%; font-size: 18px; text-align: center; }
#access_google_map .pb_googlemap_custom-overlay-inner::after { display: block; position: absolute; right: 0; bottom: -15px; left: 0; width: 0; height: 0; margin: auto; border-width: 16px 5px 0 5px; border-style: solid; content: ""; }

/* データリスト */
#access_data_list {
  border-left:1px solid #000; background:#333;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -ms-justify-content:space-between; -webkit-justify-content:space-between; justify-content:space-between;
}
#access_data_list dt {
  width:200px; border-right:1px solid #000; border-bottom:1px solid #000; line-height:1.7; text-align:center; padding:20px 30px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#access_data_list dd {
  -webkit-width:calc(100% - 200px); width:calc(100% - 200px); border-right:1px solid #000; border-bottom:1px solid #000; line-height:1.7; padding:20px 30px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#access_data_list .location_link { position:relative; padding:0 0 0 25px; margin:0 0 0 30px; }
#access_data_list .location_link:before {
  font-family:'design_plus'; content:'\e927'; font-size:18px; width:18px; height:18px;
  display:block; position:absolute; left:0px; top:-6px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
body.light_color #access_data_list, body.light_color #access_data_list dt, body.light_color #access_data_list dd { border-color:#ddd; }




/* ----------------------------------------------------------------------
 ヘッダースライダー
---------------------------------------------------------------------- */
#header_slider { position:fixed !important; top:0px; left:0px; width:100%; height:calc(100vh - 90px); overflow:hidden; position:relative; background:#000; }
#header_slider .item {
  opacity:1 !important; width:100%; height:calc(100vh - 90px); overflow:hidden; -webkit-backface-visibility:hidden; backface-visibility:hidden;
  position:absolute !important; top:0 !important; left:100% !important; right:100% !important;
  transition: none !important;
  -webkit-transition: all 900ms cubic-bezier(0.075, 0.82, 0.165, 1) 0s !important; transition: all 900ms cubic-bezier(0.075, 0.82, 0.165, 1) 0s !important;
}
#header_slider .item.first_item { transition: none !important; }
#header_slider .item.slick-current { left:100% !important; }
#header_slider .item.animate { left:0px !important; }
#header_slider .item.left.slick-current { left:auto !important; right:100% !important; }
#header_slider .item.animate.left { left:auto !important; right:0px !important; }
#header_slider .slick-track { width:100% !important; position:relative !important; height:calc(100vh - 90px); }

#header_slider .image { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:1; }
#header_slider.no_footer_slider, #header_slider.no_footer_slider .item, #header_slider.no_footer_slider .slick-track { height:100vh; }
#header_slider .caption {
  width:1180px; margin:auto; position:absolute; z-index:3;
  left:0px; right:0px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#header_slider .direction_type2 .caption_inner { text-align:center; }
#header_slider .direction_type3 .caption_inner { text-align:right; }
#header_slider .caption .title { line-height:1.3; word-wrap: break-word; position:relative; font-weight:500; margin:0; }
#header_slider .caption .sub_title { font-size:16px; line-height:1.3; margin:5px 0 5px 0; position:relative; }
#header_slider .caption .button {
  font-size:14px; min-width:200px; height:55px; line-height:55px; text-align:center; position:relative; padding:0 60px; margin-top:12px; display:inline-block; -webkit-box-sizing:border-box; box-sizing:border-box;
}
#header_slider .overlay { width:100%; height:50%; position:absolute; top:0px; left:0px; z-index:2; }
#header_slider .no_gd .overlay { height:100%; }


/* スマホ専用設定 */
#header_slider .caption .title.mobile_title { text-align:center !important; }
#header_slider .caption.font_direction_vertical .caption_inner {
  position:relative; padding:150px 0 100px;
  left:50%; -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%);
  -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl;
}
#header_slider .slider_logo { }
#header_slider .slider_logo img { display:block; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto; z-index:5; }


/* ナビゲーション */
#header_slider .slick-dots { position:absolute; z-index:10; text-align:center; bottom:25px; width:100%; font-size:0; }
#header_slider .slick-dots li { display:inline-block; width:12px; height:12px; margin:0 4px; font-size:12px; }
#header_slider .slick-dots button { cursor:pointer; border:none; color:transparent; width:12px; height:12px; display:block; font-size:0; background:none; position:relative; }
#header_slider .slick-dots button::before { content:''; display:block; width:12px; height:12px; line-height:13px; background:#fff; border-radius:20px; position: absolute; top:0; left:0; }
#header_slider .slick-dots button:hover::before, #header_slider .slick-dots .slick-active button::before { background:#000; }


/* ナビゲーション（矢印） */
#header_slider .slick-arrow {
  width:60px; height:60px; line-height:60px; text-align:center; position:absolute; opacity:0; cursor:pointer; z-index:9; border:none; background:none; overflow:hidden; text-indent:-200px;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
#header_slider .slick-arrow:before {
  font-family:'design_plus'; color:#fff; width:30px; height:30px; font-size:30px; display:block; position:absolute; text-indent:0px;
  top:2px; left:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#header_slider .slick-prev:before { content:'\e90f'; }
#header_slider .slick-next:before { content:'\e910'; left:0; right:0; margin:auto; }
#header_slider .slick-prev { left:-50px; }
#header_slider .slick-next { right:-50px; }
#header_slider:hover .slick-prev { left:0px; opacity:1; }
#header_slider:hover .slick-next { right:0px; opacity:1; }
#header_slider .slick-arrow:hover:before { color:#fff; }


/* アニメーションの設定 */
#header_slider .caption .title, #header_slider .caption .sub_title,
#header_slider .caption .button, #header_slider .slider_logo img { opacity:0; }

#header_slider .slick-active .caption .sub_title {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 1.0s;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 1.0s;
}
#header_slider .slick-active .caption .title {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 1.7s;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 1.7s;
}
#header_slider .slick-active .caption .button {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.4s;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.4s;
}
#header_slider .slick-active .caption .title.mobile_title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
  animation: opacityAnimation 1.0s ease forwards 1.0s;
}
#header_slider .slick-active .slider_logo img {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s;
  animation: opacityAnimation 1.0s ease forwards 1.0s;
}

#header_slider .first_active .caption .sub_title {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.0s !important;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.0s !important;
}
#header_slider .first_active .caption .title {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.7s !important;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.7s !important;
}
#header_slider .first_active .caption .button {
  -webkit-animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 3.4s !important;
  animation: slideUp 0.7s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 3.4s !important;
}
#header_slider .first_active .caption .title.mobile_title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s !important;
  animation: opacityAnimation 1.0s ease forwards 2.0s !important;
}
#header_slider .first-active .slider_logo img {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s !important;
  animation: opacityAnimation 1.0s ease forwards 2.0s !important;
}

#header_slider .animation_type1.animate .image {
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
  -webkit-animation: zoomOut 35.0s ease forwards;
  animation: zoomOut 35.0s ease forwards;
}
#header_slider .animation_type2.animate .image {
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
  -webkit-animation: zoomIn 35.0s ease forwards;
  animation: zoomIn 35.0s ease forwards;
}


/* アニメーション　スライドアップ */
@-webkit-keyframes slideUp {
  0% { bottom:-30px; }
  100% { opacity:1; bottom:0; }
}
@keyframes slideUp {
  0% { bottom:-30px; }
  100% { opacity:1; bottom:0; }
}
/* アニメーション　ズームアウト */
@-webkit-keyframes zoomOut {
  0% { transform: scale(1.0) rotate(0.0001deg); }
  100% { transform: scale(1.3); }
}
@keyframes zoomOut {
  0% { transform: scale(1.0) rotate(0.0001deg); }
  100% { transform: scale(1.3); }
}
/* アニメーション　ズームイン */
@-webkit-keyframes zoomIn {
  0% { transform: scale(1.3) rotate(0.0001deg); }
  100% { transform: scale(1.0); }
}
@keyframes zoomIn {
  0% { transform: scale(1.3) rotate(0.0001deg); }
  100% { transform: scale(1.0); }
}
/* アニメーション　透過 */
@-webkit-keyframes opacityAnimation {
  0% { opacity:0; }
  100% { opacity:1; }
}
@keyframes opacityAnimation {
  0% { opacity:0; }
  100% { opacity:1; }
}

/* カルーセルはフッターに記述 */




/* ----------------------------------------------------------------------
　お知らせ
---------------------------------------------------------------------- */
/* アーカイブページ */
#news_archive { padding:60px; z-index:10; position:relative; }
#news_archive .item { height:120px; position:relative; margin:0 0 7px 0; }
#news_archive .item:last-child { margin:0; }
#news_archive .image { float:left; display:block; position:relative; overflow:hidden; z-index:2; width:120px; height:120px; background:#000; }
#news_archive .image img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#news_archive .link { float:left; -webkit-width:calc(100% - 120px); width:calc(100% - 120px); display:block; height:120px; position:relative; background:#333; }
#news_archive .link_inner { padding:0 40px; position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#news_archive .link:hover { background:#444; }
#news_archive .item a .title { font-size:16px; font-weight:500; line-height:1.7; margin:10px 0 0 0; max-height:70px; overflow:hidden; }
#news_archive .item a .date { font-size:14px; }
#news_archive .no_image .link { float:left; width:100%; }
#news_archive .link:after {
  font-family:'design_plus'; content:'\e910'; font-size:18px; width:18px; height:18px;
  display:block; position:absolute; right:60px; top:55px; opacity:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
#news_archive .link:hover:after {
  -webkit-animation: slideRight 0.5s ease forwards;
  animation: slideRight 0.5s ease forwards;
}
/* アニメーション */
@-webkit-keyframes slideRight {
  0% { right:60px; opacity:0; }
  100% { right:30px; opacity:1; }
}
@keyframes slideRight {
  0% { right:60px; opacity:0; }
  100% { right:30px; opacity:1; }
}


/* 詳細ページ */
#recent_news { margin:0 60px 60px; z-index:10; position:relative; }
#recent_news .headline { height:50px; line-height:50px; background:#333; padding:0 24px; font-size:18px; font-weight:500; }
#recent_news .item a { display:block; background:#333; padding:30px 40px; margin:7px 0 0 0;}
#recent_news .item a:hover { background:#444; }
#recent_news .item a .title { font-size:14px; font-weight:500; line-height:1.7; margin:10px 0 0 0; color:#fff; }
#recent_news .item a .date { font-size:14px; color:#999; }
#recent_news .link { position:absolute; top:20px; right:20px; font-size:14px; display:block;}
#recent_news .link:after {
  font-family:'design_plus'; content:'\e910'; font-size:12px; width:12px; height:22px;
  display:block; float:right; margin:2px 0 0 10px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}




/* ----------------------------------------------------------------------
 イベント
---------------------------------------------------------------------- */
#event_archive { z-index:10; position:relative; }


/* アーカイブページ ヘッダー */
#event_archive_header { border-bottom:1px solid #000; height:70px; position:relative; }
#event_archive_header .title { float:left; height:70px; line-height:70px; padding:0 33px; font-size:24px; font-weight:500; }
#event_archive_header .nav { float:right; margin:7px 0 0 0; }
#event_archive_header .nav li { float:left; margin:0 7px 0 0; }
#event_archive_header .nav li a {
  display:block; min-width:200px; height:55px; line-height:55px; padding:0 20px; text-align:center; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}


/* アーカイブページ カテゴリー一覧 */
#event_archive_category { position:relative; }
#event_archive_category ul { margin:7px 0 0 7px; }
#event_archive_category li { margin:0 7px 7px 0; float:left; -webkit-width:calc(20% - 7px); width:calc(20% - 7px); }
#event_archive_category li:nth-child(5n) { margin-right:0; }
#event_archive_category li a { display:block; height:55px; line-height:55px; text-align:center; }


/* アーカイブページ イベント一覧 */
#event_archive_list { overflow:hidden; }
#event_archive_list .item { position:relative; border-top:1px solid #000; }
#event_archive_list .main_link { height:250px; -webkit-width:calc(100% - 259px); width:calc(100% - 259px); float:left; display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; }
#event_archive_list .event_date { width:80px; background:#333; text-align:center; position:relative; font-family:Arial !important; }
#event_archive_list .event_date_inner {
  position:absolute; left:50%; top:50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
}
#event_archive_list .event_date span { display:block; }
#event_archive_list .date { font-size:44px; margin:0 0 5px 0; }
#event_archive_list .day { text-transform:uppercase; font-size:12px; margin:0 0 5px 0; }
#event_archive_list .year { font-size:12px; }
#event_archive_list .image { width:251px; height:251px; display:block; position:relative; overflow:hidden; z-index:2; background:#000; }
#event_archive_list .image img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#event_archive_list .event_category { position:absolute; top:0px; left:0px; z-index:10; }
#event_archive_list .event_category span {
  background:orange; color:#fff; display:block; height:35px; line-height:35px; padding:0 20px; min-width:100px; text-align:center; float:left; margin:0 1px 0 0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#event_archive_list .data {
  width:590px; position:relative; border-right:1px solid #000;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#event_archive_list .data_inner {
  padding:0 55px;
  position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#event_archive_list .title { font-size:24px; font-weight:500; line-height:1.7; }
#event_archive_list .title a { display:block; }
#event_archive_list .mobile_title { display:none; }
#event_archive_list .excerpt { font-size:16px; color:#999; line-height:2.2; }
#event_archive_list .link_button { position:relative; width:259px; height:250px; float:right; }
#event_archive_list .link {
  display:block; width:200px; height:55px; line-height:55px; text-align:center;
  position:absolute; left:50%; top:50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%);
}
#event_archive_list #no_event { padding:113px 30px; text-align:center; }
#event_archive_list .event_loader { margin:113px auto; display:block; }


/* 詳細ページ */
body.single-event #bread_crumb ul { width:1000px; margin-left:90px; }
#event_single { width:1000px; margin:0 auto; z-index:10; position:relative; }
#event_single #event_date { position:absolute; left:0px; top:0px; width:80px; height:285px; background:#333; text-align:center; font-family:Arial !important; }
#event_single #event_date_inner {
  width:80px; position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#event_single #event_date span { display:block; }
#event_single #event_date .month { background:#d96d00; color:#fff; font-size:16px; height:35px; line-height:35px; }
#event_single #event_date .date { font-size:44px; margin:35px 0 5px 0; }
#event_single #event_date .day { text-transform:uppercase; font-size:12px; margin:0 0 5px 0; }
#event_single #event_date .year { font-size:12px; }
#event_single #event_category { position:absolute; top:0px; left:80px; z-index:2; }
#event_single #event_category span { color:#fff; display:block; height:35px; line-height:35px; padding:0 20px; min-width:100px; text-align:center; float:left; margin:0 1px 0 0; }
#event_featured_image { width:100%; height:auto; display:block; margin:0 0 40px 0; }
#event_featured_image img { display:block; }
#event_featured_image_mobile { display:none; }
#event_featured_image_mobile img { display:block; }
#event_single #article { padding:35px 80px 90px; }
#event_single #article .post_content { padding:0; }
#event_title { font-size:34px; padding:28px 42px; line-height:1.5; font-weight:500; }
#event_sub_title { font-size:28px; line-height:1.5; font-weight:500; margin:0 0 30px 0; }
#spec_field { padding:40px 0 0 0; margin:40px 0 0 0; border-top:1px solid #444; font-size:16px; }
#event_nav { position:absolute; right:0px; bottom:0px; }
#event_nav a { display:block; height:55px; line-height:55px; width:200px; text-align:center; margin:0 0 0 7px; }
#event_nav .item { float:left; }


/* 詳細ページ　関連イベント */
#event_single_list {
  width:1000px; margin:50px auto 0; padding:32px 32px 10px; z-index:10; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#event_single_list .headline { text-align:center; font-weight:500; line-height:1; margin:0 0 32px 0; font-size:18px; }
#event_single_list #post_list_type1 .item:nth-child(3n) { margin-right:25px; }
#event_single_list #post_list_type1 .item:nth-child(4n) { margin-right:0; }




/* ----------------------------------------------------------------------
 ギャラリー
---------------------------------------------------------------------- */
/* アーカイブページ */
#gallery_archive { padding:60px 60px 20px; z-index:10; position:relative; }
#gallery_archive .item { float:left; width:330px; height:380px; position:relative; margin:0 34px 27px 0; }
#gallery_archive .item:nth-child(3n) { margin-right:0; }
#gallery_archive .image { display:block; position:relative; overflow:hidden; z-index:2; width:100%; height:223px; background:#000; }
#gallery_archive .image img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#gallery_archive .link {
  background:#333; height:150px; position:relative; display:block;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#gallery_archive .title { font-size:16px; font-weight:500; padding:25px 30px; line-height:1.5; }
#gallery_archive .subtitle { font-size:14px; color:#999; position:absolute; bottom:30px; left:30px; }


/* 詳細ページ */
#gallery_single { padding:50px 60px 60px; z-index:10; position:relative; }
#gallery_single #article { padding:0; }
#gallery_single #article .post_content { padding:0; }


/* 詳細ページの見出し */
#gallery_header { margin:0 0 35px; }
#gallery_header .title { font-size:26px; line-height:1.7; font-weight:500; float:left; max-width:750px; }
#gallery_header .subtitle { font-size:14px; color:#888; line-height:26px; float:left; margin:9px 0 0 20px; }
#gallery_event_update { font-size:14px; color:#888; line-height:26px; position:absolute; top:0px; right:0px; margin:9px 0 0 0; }


/* 詳細ページのギャラリーリスト */
#gallery_list { margin:25px 0 -19px; }
#gallery_list li { float:left; width:250px; height:250px; margin:0 19px 19px 0; padding:0; line-height:1; }
#gallery_list li:nth-child(4n) { margin-right:0; }
#gallery_list li img { display:block; width:100%; height:auto; }
#gallery_list li a { display:block; position:relative; }
#gallery_list li a:before {
  content:''; display:block; width:100%; height:100%; background:rgba(0,0,0,0.5); position:absolute; top:0px; left:0px;
  -webkit-transition: opacity 0.35s ease; transition: opacity 0.35s ease;
}
#gallery_list li a:hover:before { opacity:0; }
#gallery_list li a.mfp-iframe:after, #gallery_list li a.open-popup-link:after {
  font-family:'design_plus'; content:'\e939'; color:#fff; font-size:35px; width:35px; height:35px;
  display:block; position:absolute; top:0px; left:0px; right:0px; bottom:0px; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* lightboxプラグインの調整 */
.mfp-title { position:absolute; bottom:4px; width:100%; }
.mfp-title span {
  display:block; background:rgba(0,0,0,0.7); width:100%; padding:23px 30px 20px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.mfp-counter { display:none !important; position:absolute !important; top:auto !important; bottom:-10px !important; }
.mfp-close { font-size:0 !important; }
.mfp-close:before {
  font-family:'design_plus'; color:#fff; font-size:28px; display:block;
  content:'\e91a'; position:absolute; top:-5px; right:0px; font-weight:normal;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.mfp-arrow { opacity: 1 !important; margin-top: -11px !important; width: 12px !important; height: 22px !important; }
.mfp-arrow:active { margin-top: -11px !important; }
.mfp-arrow:before { width: 12px !important; height: 22px !important; margin: 0px !important; border: none !important; opacity:1 !important; }
.mfp-arrow:after { display: none !important; }
.mfp-arrow-left { left:-30px !important; }
.mfp-arrow-left:after { display:none !important; }
.mfp-arrow-left:before {
  margin: 0px !important; border:none !important;
  font-family:'design_plus'; content:'\e90f' !important; font-size:22px; width:12px; height:22px;
  display:block; color:#ccc;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.mfp-arrow-right { right: -20px !important; }
.mfp-arrow-right:after { display:none !important; }
.mfp-arrow-right:before {
  margin: 0px !important; border:none !important;
  font-family:'design_plus'; content:'\e910' !important; font-size:22px; width:12px; height:22px;
  display:block; color:#ccc;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.mfp-arrow-left:hover:before { color:#fff; }
.mfp-arrow-right:hover:before { color:#fff; }
@media screen and (max-width:1000px) {
  .mfp-container { padding:0 40px !important; }
}
@media screen and (max-width:700px) {
  .mfp-title span {padding:15px 15px 15px;}
}
/* youtube */
.mfp-iframe-scaler .mfp-title { display:none; }
/* mp4 */
.mfp-inline-holder .mfp-content { width:auto !important; }
.video_popup { position: relative; width:900px; max-width:100%; margin:auto; padding:40px 0; }
.video_popup video { display:block; width:100%; height:auto; max-width:100%; }
.video_popup .mfp-close { top:0px; right:-14px; color:#fff !important; }
.video_popup .mfp-title { bottom:-25px; display:none; }
.video_popup .mfp-counter { bottom:-25px !important; }
/* animation */
.mfp-content { opacity:0; animation: openAnimation 0.7s ease forwards 0.1s; }
.mfp-removing { animation: closeAnimation 0.7s ease forwards 0s; }
@keyframes openAnimation {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes closeAnimation {
  0%   { opacity: 1; }
  100% { opacity: 0; }
}




/* ----------------------------------------------------------------------
 ページのヘッダー
---------------------------------------------------------------------- */
#container:after { width:100%; height:100vh; content:''; display:block; position:fixed; top:0px; left:0px; z-index:-999; }
#page_header { width:1180px; margin:0 auto; position:relative; }
#page_header_inner { width:1180px; text-align:center; position:relative; padding:230px 0 230px; z-index:3; }
#page_header #page_title { font-size:40px; line-height:1.3; word-wrap: break-word;}
#page_header #post_meta_top { margin:12px auto 10px; display:inline-block; padding:14px 10px; }
#page_header #post_meta_top li { position:relative; float:left; font-size:12px; margin:0 10px; }
#page_header #post_meta_top li.date { padding:0 0 0 20px; }
#page_header #post_meta_top li.date:before {
  font-family:'design_plus'; content:'\e930'; font-size:16px; width:16px; height:16px; line-height:16px;
  display:block; position:absolute; left:0px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#page_header #post_meta_top li.category { padding:0 0 0 17px; }
#page_header #post_meta_top li.category:before {
  font-family:'design_plus'; content:'\e92f'; font-size:12px; width:14px; height:14px; line-height:14px;
  display:block; position:absolute; left:0px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#page_header #post_meta_top li.category a { display:none; }
#page_header #post_meta_top li.category a:nth-child(1) { display:inline-block; }
#page_header .overlay { width:100%; height:100%; position:fixed; top:0px; left:0px; z-index:2; }
#page_header_mobile { display:block; width:100%; position:fixed; top:0px; left:0px; z-index:1; min-height:250px; }
#page_header_mobile:before { display:block; content:''; width:100%; height:50%; }




/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
#blog_archive { padding:60px 60px 50px; }
#blog_archive .item { width:695px; position:relative; margin:0 0 50px 0; }
#blog_archive .item:last-child { margin:0; }
#blog_archive .image {
  display:block; position:relative; overflow:hidden; z-index:2; width:695px; height:auto; margin:0 0 20px 0; background:#000;
}
#blog_archive .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#blog_archive .title {
  position:absolute; top:60px; left:0px; width:100%; padding:0 40px; font-size:28px; font-weight:500; line-height:1.5; z-index:3;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#blog_archive .title a { color:#fff !important; display:block; word-wrap: break-word;}
#blog_archive .no_meta .title { top:30px; }
#blog_archive .image:before { content:''; display:block; width:100%; height:60%; position:absolute; top:0; left:0px; z-index:2; }
#blog_archive .meta { position:absolute; top:0px; left:0px; display:block; padding:14px 10px; z-index:5; }
#blog_archive .meta li { position:relative; float:left; font-size:12px; margin:0 10px; }
#blog_archive .meta li.date { padding:0 0 0 20px; }
#blog_archive .meta li.date:before {
  font-family:'design_plus'; content:'\e930'; font-size:16px; width:16px; height:16px; line-height:16px;
  display:block; position:absolute; left:0px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#blog_archive .meta li.category { padding:0 2px 0 17px; }
#blog_archive .meta li.category:before {
  font-family:'design_plus'; content:'\e92f'; font-size:12px; width:14px; height:14px; line-height:14px;
  display:block; position:absolute; left:0px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#blog_archive .meta li.category a { display:none; }
#blog_archive .meta li.category a:nth-child(1) { display:inline-block; }
#blog_archive .excerpt { font-size:16px; line-height:2.1; overflow-wrap: break-word; }


/* ページング */
.page_navi { padding:50px 0 0 0; margin-bottom:-4px; z-index:10; position:relative; }
.page_navi ul { margin:0; font-size:0; }
.page_navi li { display:inline-block; margin:0 4px 4px 0; }
.page_navi a, .page_navi a:hover, .page_navi span { font-size:12px; width:45px; height:45px; line-height:45px; margin:0; background:#222; display:inline-block; text-align:center;}
.page_navi a:hover { color:#fff; }
.page_navi span.dots { background:none; }
.page_navi span.current { color:#fff; }

.page_navi .next, .page_navi .prev { }
.page_navi .next span, .page_navi .prev span { display:none; }
.page_navi .next:before, .page_navi .prev:before {
  font-family:'design_plus'; font-size:11px; top:1px; position:relative;
  -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 { }
.post_content a:hover { text-decoration:none; }
#article { position:relative; padding-top:50px; }
#article .post_content { padding:0 60px 15px; }


/* アイキャッチ画像*/
#post_image { padding:0; margin:-50px 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 40px 0; }
#single_share_top .share-top { margin:0; }
#single_share_bottom { margin:0 0 20px 0; }
#single_share_bottom .share-btm { margin-bottom:0; padding:0; }
#single_share_top,#single_share_bottom{
  padding-left: 60px;
  padding-right: 60px;
}
.share-type1 ul { text-align:center; }
.share-type3 ul { text-align:center; }
.share-type2 ul.type2 { text-align:center; }
.share-type4 ul.type4 { text-align:center; }
.sns_default_top  { text-align:center; }


/* ページ分割 */
#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; margin:0 2px; width:45px; height:45px; line-height:45px; text-align:center; text-decoration:none; }
#post_pagination p { position:relative; }
#post_pagination a:hover { }
body.light_color #post_pagination p, body.light_color #post_pagination a:hover { color:#fff !important; }


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



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


/* 次の記事、前の記事 */
#next_prev_post { margin:0 60px 60px; }
#next_prev_post .prev_post, #next_prev_post .next_post { float:left; width:calc(50% - 6px); }
#next_prev_post .next_post { float:right; }
#next_prev_post a {
  width:100%; display:block; font-size:14px; line-height:1.5; height:100px; position:relative; display:table; background:#333; color:#fff !important;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#next_prev_post div:last-of-type  { }
#next_prev_post div:only-of-type  { }
#next_prev_post .next_post a { padding:0 70px 0 40px; word-wrap:break-word; }
#next_prev_post .prev_post a { padding:0 40px 0 70px; word-wrap:break-word; }
#next_prev_post a span { display:table-cell; vertical-align:middle; ; height:50px; overflow:hidden; word-wrap: break-word; }
#next_prev_post span.nav { display:none; }
#next_prev_post a:hover { }
#next_prev_post .prev_post a:before {
  content:''; width:12px; height:12px;
  font-family:'design_plus'; font-size:12px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e90f'; position:absolute; top:0px; bottom:0px; left:30px; margin:auto;
}
#next_prev_post .next_post a:before {
  content:''; width:12px; height:12px;
  font-family:'design_plus'; font-size:12px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; position:absolute; top:0px; bottom:0px; right:27px; margin:auto;
}
body.light_color #next_prev_post a { color:#000 !important; }
body.light_color #next_prev_post a:hover { color:#fff !important; }


/* 関連記事 */
#related_post { margin:0 60px 35px; }
#related_post .headline { padding:0 20px; height:50px; line-height:50px; font-weight:500; margin:0 0 25px 0; text-align:center; font-size:18px; font-weight:normal; background:#333; }
#post_list_type1 .item { float:left; width:215px; height:100%; margin:0 25px 25px 0; }
#post_list_type1 .item:nth-child(3n) { margin-right:0; }
#post_list_type1 .item a { display:block; width:100%; height:100%; position:relative; overflow:hidden; z-index:2; word-wrap:break-word; color:#fff !important; background:#000; }
#post_list_type1 .item a:before { content:""; display: block; padding-top:100%; }
#post_list_type1 .item a .title {
  position:absolute; bottom:0px; width:100%; z-index:3; font-size:14px; font-weight:normal; padding:15px 20px; line-height:1.5;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#post_list_type1 .item a img { display:block; width:100%; height:auto; position:absolute; top:0; left:0px; bottom:0; right:0; margin:auto; z-index:1; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#post_list_type1 .item a:after {
  content:''; display:block; width:100%; height:60%; position:absolute; bottom:-2px; left:0px; z-index:2;
  background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
  background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
  background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
}
#one_col #post_list_type1 .item { width:246px; height:246px; }
#one_col #post_list_type1 .item:nth-child(3n) { margin-right:25px;}
#one_col #post_list_type1 .item:nth-child(4n) { margin-right:0px;}


/* プロフィール */
.author_profile { background:#333; margin:10px 60px 60px; padding:50px 40px 48px; position:relative; }
.author_profile a.avatar { display:block; width:100px; height:100px; border-radius:100%; float:left; position:relative; overflow:hidden; z-index:2; background:#000; }
.author_profile img.avatar { display:block; width:100%; height:auto; }
.author_profile .info { font-size:14px; float:right; -webkit-width:calc(100% - 130px); width:calc(100% - 130px); position:relative; }
.author_profile .name { font-size:16px; margin:0 0 20px 0; float:left; font-weight:500; }
.author_profile .desc { margin:0 0 20px 0; }
.author_profile .desc p { line-height:1.6; }
.author_profile .author_link { float:left; margin:0 0 0 -5px; font-size:0; }
.author_profile .author_link li { display:inline-block; margin:0 10px 0 0; position:relative; }
.author_profile .author_link li a {
  display:block; overflow:hidden; width:20px; height:20px; line-height:20px; text-align:center; position:relative;
}
.author_profile .author_link li a span { display:none; }
.author_profile .author_link li a:before {
  font-family:'design_plus'; font-size:14px; display:block;
  position:absolute; top:1px; left:0; right:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.author_profile .author_link li a:hover:before { color:#aaa; }
.author_profile .author_link li.twitter a:before { font-family: 'tiktok_x_icon'; content: "\e901"; }
.author_profile .author_link li.facebook a:before { content:'\e902'; }
.author_profile .author_link li.insta a:before { content:'\ea92'; }
.author_profile .author_link li.pinterest a:before { content:'\e905'; }
.author_profile .author_link li.google a:before { font-family: 'tiktok_x_icon'; content: "\e900"; }
.author_profile .author_link li.youtube a { width:42px; }
.author_profile .author_link li.youtube a:before { font-family: 'footer_bar'; content: "\ea9d"; }
.author_profile .author_link li.contact a:before { content:'\f003'; }
.author_profile .archive_link { float:right; padding:2px 20px 0 0; }
.author_profile .archive_link span:after {
  font-size:12px; font-family:'design_plus'; content:'\e910'; display:block; position:absolute; right:0px; top:2px; height:14px; line-height:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 広告 */
#single_banner_top { margin:0 auto; padding:5px 0 40px; width:700px; }
#single_banner_bottom { margin:0 auto; padding:0 0 58px; width:700px; }
#single_banner_shortcode { margin:0 auto; padding:5px 0 35px; width:700px; }
#mobile_banner_top { margin:30px 0 25px; text-align:center; }
#mobile_banner_bottom { margin:30px 15px 30px; text-align:center; }
.single_banner_area .single_banner_left {
  float:left; width:50%; text-align:right; padding:0 15px 0 0;
 -webkit-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area .single_banner_right {
  float:right; width:50%; text-align:left; padding:0 0 0 15px;
 -webkit-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area img { max-width:100%; height:auto; display:inline-block; margin:0 auto; }
.single_banner_area.one_banner .single_banner_left { float:none; text-align:center; padding:0; width:100%; }




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
/* 404ページ */
#header_image_for_404 { position:fixed !important; top:0px; left:0px; width:100%; height:calc(100vh - 90px); overflow:hidden; position:relative; background:#000; }
#header_image_for_404.no_footer_slider { height:100vh; }
#header_image_for_404 .caption {
  margin:0; width:100%; padding:0 30px; line-height:1.5; text-align:center; color:#fff; position:relative; top:50%; left:50%; opacity:0; z-index:3;
  -webkit-transform:translate(-50%, -50%); transform:translateY(-50%, -50%);
  -webkit-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: slideUp 1.0s ease forwards 1.5s !important;
  animation: slideUp 1.0s ease forwards 1.5s !important;
}
#header_image_for_404 .overlay { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:2; }


/* ページナビゲーション */
#previous_next_page { text-align:center; margin:12px 0 0 0; font-size:0; }
#previous_next_page a {
  font-size:14px; display:inline-block; vertical-align:top; text-decoration:none; text-align:center; padding:0 25px; height:50px; line-height:50px; min-width:180px; background:#ccc; color:#fff; position:relative; margin:0 5px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_page a:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; 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 {
  width:100%; height:100px; z-index:20; position:absolute; top:0px; left:0px;
  -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
.pc .pc_header_fix #header { position:fixed; }


/* ロゴ */
#header_logo { position:absolute; left:50px; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#header_logo .logo { line-height:1; margin:0; padding:0; font-weight:500; }
#header_logo img { display:block; }
#header_logo .mobile_logo_image { display:none; }
#header_logo .mobile_logo_text { display:none; }


/* グローバルメニュー */
.pc #global_menu {
  position:absolute; right:30px; font-size:0;
  top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.pc #global_menu > ul { display:inline-block; height:100px; 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 20px; }

.pc #global_menu > ul > li > a { font-size:14px; text-decoration:none; height:100px; line-height:100px; display:block; color:#fff; }
.pc #global_menu > ul > li.active > a, .pc #global_menu > ul > li.current-menu-item > a { }
.pc #global_menu a:hover { }

.pc #global_menu ul ul { display:none; width:230px; position:absolute; top:100px; left:-25px; 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 !important; display:block; border:none; position:relative; padding:14px 25px 12px; height:auto; line-height:1.6; margin:0; text-align:left; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

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


/* 一番右側のメニュー */
.pc #global_menu > ul > li:last-child ul { left:auto; right:0px; }
.pc #global_menu > ul > li:last-child ul ul { left:auto; right:100%; }
.pc #global_menu > ul > li:last-of-type ul li.menu-item-has-children > a:before { content:'\e90f'; right:auto; left:9px; }


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


/* 固定ヘッダー */
.pc .header_fix { padding-top:0px; }/* #header_inner height + #header margin bottom */
.pc .header_fix #header {
  background:#fff; height:80px; width:100%;
}
.pc body.admin-bar.header_fix #header { margin-top:32px; top:0; }
.pc .admin-bar.header_fix { padding-top:190px; }


/* 固定ヘッダーのグローバルメニュー */
.pc .header_fix #global_menu > ul { height:80px; top:-1px; }
.pc .header_fix #global_menu > ul > li { height:80px; line-height:80px; }
.pc .header_fix #global_menu > ul > li > a { height:80px; line-height:80px; }
.pc .header_fix #global_menu ul ul { top:80px; }
.pc .header_fix #global_menu ul ul ul { top:0px; }



/* パンくずリンク */
#bread_crumb { position:absolute; bottom:0px; z-index:3; }
#bread_crumb ul { width:820px; margin:0 0 25px 0; line-height:1.5; }
#bread_crumb li { display:inline; font-size:12px; padding:0 0 0 17px; margin:0 5px 0 0; line-height:1.2; position:relative; color:#fff; vertical-align:middle; }
#bread_crumb li:before {
  font-family:'design_plus'; content:'\e910'; font-size:9px; width:9px; height:9px;
  display:block; position:absolute; left:0; top:0px; bottom:0; margin-top:3px;
  -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:13px; height:15px; word-wrap: break-word; top:2.5px; color:#fff;
  text-indent:-300%; overflow:hidden; display:block; float:left;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a:after {
  font-family:'design_plus'; content:'\e90c'; width:14px; height:14px; line-height:14px;
  text-indent:0; display:block; position:absolute; top:3px; left:0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home a:hover:after { color:#6698a1; }
#bread_crumb li.home:before { display:none; }
#bread_crumb li a { color:#fff; }
#bread_crumb li a:hover { }
#bread_crumb li.category a { display:none; }
#bread_crumb li.category a:first-of-type, #bread_crumb li.category a:only-of-type { display:inline; }
#no_breadcrumb { height:50px; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
/* カルーセル */
#footer_slider { clear:both; margin:150px 0 0 0; position:relative; z-index:10; width:100%; height:100px; overflow:hidden; }
#footer_slider .item { -webkit-width:calc(100% / 3); width:calc(100% / 3); height:100px; }
#footer_slider .image { float:left; width:100px; height:100px; margin:0; display:block; overflow:hidden; position:relative; z-index:2; background:#000; }
#footer_slider .image img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#footer_slider .title { font-size:16px; font-weight:500; line-height:1.7; }
#footer_slider .title a { display:block; float:left; -webkit-width:calc(100% - 100px); width:calc(100% - 100px); height:100px; position:relative; }
#footer_slider .title a:hover { color:#fff; }
#footer_slider .title a span {
  display:block; padding:0px 45px; max-height:50px; overflow:hidden;
  position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#footer_slider .no_image .title a { float:none; width:100%; border-left:1px solid #000; }
.light_color #footer_slider .no_image .title a { border-color:#ddd; }


/* カルーセル（トップページ用） */
#index_footer_slider { position:fixed; bottom:0px; left:0px; width:100%; height:90px; overflow:hidden; }
#index_footer_slider .item { -webkit-width:calc(100% / 3); width:calc(100% / 3); height:90px; }
#index_footer_slider .title { font-size:16px; font-weight:500; line-height:1.7; }
#index_footer_slider .title a { display:block; width:100%; height:90px; position:relative; }
#index_footer_slider .title a:hover { color:#fff; }
#index_footer_slider .title a span {
  display:block; padding:0px 45px; max-height:54px; overflow:hidden;
  position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#index_footer_slider .no_image .title a { float:none; width:100%; border-left:1px solid #000; }
#index_footer_slider .title a:after {
  font-family:'design_plus'; content:'\e910'; font-size:18px; width:18px; height:18px; color:#fff !important;
  display:block; position:absolute; right:30px; top:35px; opacity:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
}
#index_footer_slider .title a:hover:after {
  -webkit-animation: slideRight2 0.5s ease forwards;
  animation: slideRight2 0.5s ease forwards;
}
/* アニメーション */
@-webkit-keyframes slideRight2 {
  0% { right:30px; opacity:0; }
  100% { right:15px; opacity:1; }
}
@keyframes slideRight2 {
  0% { right:30px; opacity:0; }
  100% { right:15px; opacity:1; }
}



/* ナビゲーション（矢印） */
#index_footer_slider .slick-arrow {
  width:40px; height:90px; line-height:90px; text-align:center; position:absolute; opacity:0; cursor:pointer; z-index:9; border:none; background:rgba(0,0,0,0.2); overflow:hidden; text-indent:-200px; top:0%;
  -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
#index_footer_slider .slick-arrow:before {
  font-family:'design_plus'; color:#fff; width:20px; height:20px; font-size:20px; display:block; position:absolute; text-indent:0px;
  top:5px; left:8px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#index_footer_slider .slick-prev:before { content:'\e90f'; }
#index_footer_slider .slick-next:before { content:'\e910'; left:0; right:0; margin:auto; }
#index_footer_slider .slick-prev { left:-50px; }
#index_footer_slider .slick-next { right:-50px; }
#index_footer_slider:hover .slick-prev { left:0px; opacity:1; }
#index_footer_slider:hover .slick-next { right:0px; opacity:1; }
#index_footer_slider .slick-arrow:hover { background:rgba(0,0,0,0.4); }
#index_footer_slider .slick-arrow:hover:before { color:#fff; }


/* フッター下部 */
body.no_footer_slider #footer_bottom { margin:150px 0 0 0; }
#footer_bottom { text-align:center; padding:100px 0; position:relative; z-index:10; }


/* ロゴ */
#footer_logo { text-align:center; }
#footer_logo .logo { line-height:1; margin:0; padding:0; font-weight:500; }
#footer_logo img { display:block; margin:0 auto;}
#footer_logo .mobile_logo_image { display:none; }
#footer_logo .mobile_logo_text { display:none; }


/* SNSボタン */
#footer_social_link { margin:40px 0 0; font-size:0; }
#footer_social_link li { display:inline-block; margin:0 7px; position:relative; }
#footer_social_link li a {
  display:block; overflow:hidden; width:20px; height:20px; line-height:20px; text-align:center; position:relative;
}
#footer_social_link li a span { display:none; }
#footer_social_link li a:before {
  font-family:'design_plus'; font-size:15px; display:block;
  position:absolute; top:1px; left:0; right:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li a:hover:before { color:#aaa; }
#footer_social_link li.twitter a:before { font-family: 'tiktok_x_icon'; content: "\e901";}
#footer_social_link li.facebook a:before { content:'\e902'; }
#footer_social_link li.insta a:before { content:'\ea92'; }
#footer_social_link li.pinterest a:before { content:'\e905'; }
#footer_social_link li.google a:before { font-family: 'tiktok_x_icon'; content: "\e900";}
#footer_social_link li.youtube a { width:45px; }
#footer_social_link li.youtube a:before { font-family: 'footer_bar'; content: "\ea9d"; }
#footer_social_link li.contact a:before { content:'\f003'; }
#footer_social_link li.rss a:before { content:'\e90b'; }


/* メニュー */
#footer_menu { font-size:0; margin:40px 0 0 0; }
#footer_menu li { display:inline-block; font-size:14px; line-height:1; margin:0 20px; }
#footer_menu li a { display:block; }


/* コピーライト */
#copyright { font-size:12px; margin:40px 0 0 0; position:relative; z-index:10; }


/* ページ上部へ戻るボタン */
#return_top { display:block; }
#return_top a { background:#222; display:block; height:60px; width:60px; line-height:60px; text-decoration:none; z-index:100; position:relative; }
#return_top a:hover { color:#fff !important; }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a:before {
  color:#fff; font-family:'design_plus'; content:'\e911'; font-size:12px; display:block; width:18px; height:18px;
  position:absolute; left:21px; top:4px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#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); }
body.light_color #return_top a { color:#000; }


/* 固定コンテンツ */
#fixed_footer_content {
  position:fixed; bottom:0; left:0; width:100%; height:120px; color:#fff; padding:40px; z-index:9999;
  -webkit-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%); transform: translateY(-50%);
  width:-webkit-calc(100% - 530px); width:calc(100% - 530px);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .has_image .content_left { width:-webkit-calc(100% - 840px); width:calc(100% - 840px); }
#fixed_footer_content .button {
  position:absolute; right:55px; top:50%; -webkit-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%); 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%); 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%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .post_content p { margin:0; line-height:1.6; }




/* ----------------------------------------------------------------------
 ウィジェット
---------------------------------------------------------------------- */
/* 基本設定 */
.side_widget { margin:0 0 30px 0; }
.side_widget:last-child { margin-bottom:0; }
.side_headline, .widget_block .wp-block-heading { font-size:18px; font-weight:500; margin:0 0 20px 0; }
.side_widget ul { margin: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%; }


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


/* カレンダー */
.widget_calendar .side_headline { margin:0 0 30px 0; }
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { padding:2px; line-height:3.4; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; 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; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { }
#wp-calendar td#today { font-weight:bold; }


/* デザインされた記事一覧 */
.styled_post_list1 li { margin:0 0 23px 0; padding:0px; background:none; }
.styled_post_list1 li:last-of-type { margin:0; }
.styled_post_list1 .image { float:left; width:110px; height:110px; margin:0 20px 0 0; display:block; overflow:hidden; position:relative; z-index:2; background:#000; }
.styled_post_list1 .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.styled_post_list1 .info { float:left; -webkit-width:calc(100% - 130px); width:calc(100% - 130px); }
.styled_post_list1 .title { font-size:14px; margin:0; display:block; line-height:1.6; position:relative; word-break:break-all; }
.styled_post_list1 .meta { margin:7px 0 0 0; }
.styled_post_list1 .meta li { float:left; line-height:1; font-size:12px; margin:0 15px 5px 0; padding:0 0 0 20px; position:relative; }
.styled_post_list1 .meta li:last-of-type { margin:0; }
.styled_post_list1 .no_image .info { float:left; width:100%; }
.styled_post_list1 li.date:before {
  font-family:'design_plus'; content:'\e930'; font-size:16px; width:16px; height:16px;
  display:block; position:absolute; left:-1px; top:1px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.styled_post_list1 li.category:before {
  font-family:'design_plus'; content:'\e92f'; font-size:12px; width:12px; height:12px;
  display:block; position:absolute; left:1px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* デザインされた記事一覧2 */
.styled_post_list2 li { margin:0 0 5px 0; padding:20px; }
.styled_post_list2 li:last-of-type { margin:0; }
.styled_post_list2 .title { font-size:14px; margin:0; display:block; line-height:1.6; position:relative; word-break:break-all; }
.styled_post_list2 .meta { margin:7px 0 0 0; }
.styled_post_list2 .meta li { float:left; line-height:1; font-size:12px; margin:0 15px 5px 0; padding:0 0 0 20px; position:relative; }
.styled_post_list2 .meta li:last-of-type { margin:0; }
.styled_post_list2 li.date:before {
  font-family:'design_plus'; content:'\e930'; font-size:16px; width:16px; height:16px;
  display:block; position:absolute; left:-1px; top:1px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.styled_post_list2 li.category:before {
  font-family:'design_plus'; content:'\e92f'; font-size:12px; width:12px; height:12px;
  display:block; position:absolute; left:1px; top:0px; bottom:0; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 検索 */
.widget_search label { display:none; }
#searchform {
  border:1px solid #ddd; background:#fbfbfb; height:50px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#searchform #s {
  border:none; background:none; padding:0 10px; margin:0; width:calc(100% - 50px); height:50px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#searchform #searchsubmit {
  border:none; background:none; width:50px; height:50px; z-index:200; position:relative;
  cursor:pointer; display:block; text-indent:-300%; overflow:hidden;
}
#searchform .submit_button  { position:relative; width:50px; height:50px; float:right; top:-1px; }
#searchform .submit_button:before {
  text-indent:0; display:block; width:50px; height:50px; line-height:50px; 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:#aaa; }
#searchform .submit_button:hover { }


/* ドロップダウンカテゴリーメニュー */
.tcd_category_list { margin:0; }
.tcd_category_list li { margin:0; padding:0; background:none; position:relative; }
.tcd_category_list .child_menu_button { width:50px; height:50px; position:absolute; right:0px; top:0px; z-index:2; cursor:pointer; }
.tcd_category_list .child_menu_button:before {
  font-family:'design_plus'; content:'\e90e'; text-align:center;
  display:block; font-size:14px; width:14px; height:14px; line-height:14px;
  position:absolute; right:18px; top:21px;
}
.tcd_category_list a.active > .child_menu_button:before{ content:'\e911'; }
.tcd_category_list .child_menu_button:hover { background:rgba(0,0,0,0.4); }
.tcd_category_list a {
  font-size:14px; display:block; padding:0 5px 0 20px; height:50px; line-height:50px; overflow:hidden; border:1px solid #000; background:#333; margin:0 0 -1px 0; text-decoration:none; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.tcd_category_list a:hover { color:#fff !important; }
.tcd_category_list li li a { padding-left:34px; }
.tcd_category_list li li li a { padding-left:48px; }
.tcd_category_list li li li li a { padding-left:62px; }

.tcd_category_list ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcd_category_list li.open > ul { }
.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 { }
.tcd_category_list a { }
body.light_color .tcd_category_list a { border-color:#ddd !important; }


/* アーカイブ、カテゴリードロップダウンメニュー */
.widget_archive, .widget_categories, .tcdw_archive_list_widget { }
.widget_archive .side_headline { margin:0 0 20px 0; }
.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; }
.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; }


/* アーカイブ一覧 */
.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; 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 #000; 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; color:#fff; }
.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 #000; 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:#fff; }
body.light_color .p-dropdown__title, body.light_color .p-dropdown__list li { border-color:#ddd !important; }


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


/* イベント一覧 */
.event_list_widget ol { margin:0; padding:0; }
.event_list_widget li { line-height:1; margin:0 0 4px 0; padding:0; }
.event_list_widget .box {
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.event_list_widget .date_container { min-height:100px; width:calc(100% - 230px); position:relative; }
.event_list_widget .date_inner {
  width:100%; text-align:center;
  position:absolute; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.event_list_widget .date_inner span { display:block; font-family:Arial; }
.event_list_widget .date_inner .date { font-size:36px; margin:0 0 7px 0; }
.event_list_widget .date_inner .day { font-size:12px; margin:0 0 7px 0; text-transform:uppercase; }
.event_list_widget .date_inner .year { font-size:12px; }
.event_list_widget .image { width:230px; height:200px; overflow:hidden; position:relative; z-index:2; background:#000; }
.event_list_widget .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.event_list_widget .link {
  display:block; padding:15px 20px; position:relative; line-height:1.5; color:#fff;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-transition: background 0.35s ease; transition: background 0.35s ease;
}
.event_list_widget .type2 .link { width:230px; }
.event_list_widget .type2 .link_inner {
  display:block; width:100%;
  position:relative; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.event_list_widget .link span { display:block; }



/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; }
.widget_rss li { border-bottom:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px;}
.widget_rss li:first-child{ padding-top: 0; }
.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:0 0 -6px 0; padding:0; position:relative;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.widget_tag_cloud .tagcloud a {   color: #000;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 li { border-bottom:1px solid #ddd; padding:0 0 15px 0; margin-bottom:15px; }
.widget_recent_entries li:last-child { border:none; padding:0; margin:0; }
.widget_recent_entries li a { display:block; word-wrap: break-word; }
.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 { margin:0; }
.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 { margin:0; }
.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 { line-height: 1.6; }


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

/* デフォルトのアーカイブとカテゴリー　ドロップダウンメニュー */
.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;color: #000;
}

/* カレンダー */
#calendar_wrap { padding:0; margin:-6px 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; }
body.light_color #wp-calendar tbody a{
  color: #000;
}
#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 1px; 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%);}


/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { margin:0 60px 60px; }
#comment_headline { font-size:18px; font-weight:500; text-align:center; height:50px; line-height:50px; background:#333; margin:0 0 25px 0; }


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


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


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

.comment-meta-left { float:left; width:100%; }
#comments .avatar { float:left; margin:0 10px 0 0; background:#333; width:40px; height:40px; border-radius:100%; }
.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:#888; 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; }
.comment_message { margin:0 0 25px 0; }


/* トラックバック */
.commentlist .ping-link { margin:0 0 25px 0; }
.commentlist .ping-meta { margin:0 0 15px 0; }


/* ページナビ */
#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 #333; margin:0 0 0px; padding:15px; background:#333; }
.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 #000; width:100%; background:#fff; box-shadow:0px 0px 15px 0 rgba(0,0,0,0.2) inset; }
#guest_info input:focus { border:1px solid #e48898; }
#guest_info label { display:block; margin:0 0 10px 0; padding:0; font-size:12px; }
#guest_info span { margin:0 10px 0 0; }

#comment_textarea textarea {
  margin:15px 0 0; width:100%; height:150px; font-size:12px; overflow:auto; padding:10px;
  background:#fff; color:#fff; border:1px solid #222; box-shadow:0px 0px 15px 0 rgba(0,0,0,0.2) inset;
}
#comment_textarea textarea:focus { border:1px solid #e48898; }

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

#input_hidden_field { display:none; }

body.light_color #guest_info input, body.light_color #comment_textarea textarea {
  border-color:#ccc; box-shadow:0 0 3px 0 rgba(0,0,0,0.1) inset;
}
body.light_color #submit_comment { color:#000; }
body.light_color #submit_comment:hover { color:#fff; }


/* パスワード保護 */
.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; }




/* ----------------------------------------------------------------------
 WordPress プリセットスタイル
---------------------------------------------------------------------- */
/* alignment */
.post_content .alignright { float:right; }
.post_content .alignleft { float:left; }
.post_content .aligncenter { display:block; margin-left:auto; margin-right:auto; margin-bottom:7px; }
.post_content blockquote.alignleft, .post_content img.alignleft { margin:7px 24px 7px 0; }
.post_content .wp-caption.alignleft { margin:7px 14px 7px 0; }
.post_content blockquote.alignright, .post_content img.alignright { margin:7px 0 7px 24px; }
.post_content .wp-caption.alignright { margin:7px 0 7px 14px; }
.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter { margin-top:7px; margin-bottom:7px; }


/* text and headline */
.post_content p { line-height:2.4; margin:0 0 2em 0; word-wrap: break-word; }
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { clear:both; line-height:1.4;  margin:0 0 10px 0; padding:10px 0 0 0; }
.post_content h1 { font-size:150%; }
.post_content h2 { font-size:140%; }
.post_content h3 { font-size:130%; }
.post_content h4 { font-size:120%; }
.post_content h5 { font-size:110%; }
.post_content h6 { font-size:100%; }


/* image */
.post_content img[class*="align"], .post_content img[class*="wp-image-"], .post_content img[class*="attachment-"], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img
 { height:auto; max-width:100%; }


/* list */
.post_content li, .post_content dt, .post_content dd { line-height:2.4; }
.post_content ul, .post_content ol, .post_content dl { margin-bottom:24px; }
.post_content ol { list-style:decimal outside none; margin-left:1.5em; }
.post_content ul { list-style:circle outside none; margin-left:1.3em; }
.post_content li > ul, .post_content li > ol { margin-bottom:0; }
.post_content dt { font-weight:bold; }
.post_content dd { margin-bottom:1em; }


/* table */
.post_content table { margin:0 0 24px 0; width:100% !important; }
.post_content td, .post_content th { border:1px solid #000; padding:10px 15px; line-height:2.4; background:#333; }
.post_content th { background:#222; font-weight:normal; }
/* table style */
.post_content table.table_no_border th, .post_content table.table_no_border td { border:none; padding-left:0; }
.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td { border-left:none; border-right:none; padding-left:0; }
body.light_color .post_content td, body.light_color .post_content th { border:1px solid #ccc; background:#fafafa; }
body.light_color .post_content th { background:#eee; }


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px 0; background:#333; border:1px solid #ccc; box-shadow:0px 4px 0px 0px rgba(0,0,0,0.2); position:relative; }
.post_content blockquote:before { content: '"'; font-style:italic; font-size:30px; font-weight:normal; line-height:40px; width:30px; height:30px; position:absolute; top:5px; left:10px; color:#5cbcd7; }
.post_content blockquote:after { content: '"'; font-style:italic; font-size:30px; font-weight:normal; text-align:left; line-height:60px; width:30px; height:30px; position:absolute; bottom:7px; right:-2px; color:#5cbcd7; }
.post_content blockquote cite { border-top:1px dotted #aaa; display:block; padding:20px 0 0 0; font-style:italic; text-align:right; font-size:90%; }
body.light_color .post_content blockquote { background:#f5f5f5; }


/* captions */
.post_content .wp-caption {
  margin-bottom:24px; background:#333; border:1px solid #333; padding:5px; max-width:100%;
  -webkit-border-radius:5px; border-radius:5px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.post_content .wp-caption-text { text-align:center; font-size:12px; font-style:italic; line-height:1.5; margin:9px auto; }
.post_content .wp-caption img[class*="wp-image-"] { display:block; margin:0 auto; }
body.light_color .post_content .wp-caption { background:#f5f5f5; border:1px solid #ccc; }


/* gallery */
.gallery { margin-bottom:20px; }
.gallery a img { border: 0 !important; }
.gallery-item { float:left; margin:0 4px 4px 0; overflow:hidden; position:relative; }
.gallery-columns-1 .gallery-item { max-width:100%; }
.gallery-columns-2 .gallery-item { max-width:48%; max-width:-webkit-calc(50% - 4px); max-width:calc(50% - 4px); }
.gallery-columns-3 .gallery-item { max-width:32%; max-width:-webkit-calc(33.3% - 4px); max-width:calc(33.3% - 4px); }
.gallery-columns-4 .gallery-item { max-width:23%; max-width:-webkit-calc(25% - 4px); max-width:calc(25% - 4px); }
.gallery-columns-5 .gallery-item { max-width:19%; max-width:-webkit-calc(20% - 4px); max-width:calc(20% - 4px); }
.gallery-columns-6 .gallery-item { max-width:15%; max-width:-webkit-calc(16.7% - 4px); max-width:calc(16.7% - 4px); }
.gallery-columns-7 .gallery-item { max-width:13%; max-width:-webkit-calc(14.28% - 4px);	max-width:calc(14.28% - 4px); }
.gallery-columns-8 .gallery-item { max-width:11%; max-width:-webkit-calc(12.5% - 4px); max-width:calc(12.5% - 4px); }
.gallery-columns-9 .gallery-item { max-width: 9%; max-width:-webkit-calc(11.1% - 4px); max-width:calc(11.1% - 4px); }
.gallery-columns-10 .gallery-item { max-width: 7%; max-width:-webkit-calc(9.4% - 0px); max-width:calc(9.4% - 0px); }
.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) { margin-right:0; }
.gallery-caption {
  background-color:rgba(0, 0, 0, 0.7); color:#fff; font-size:12px; line-height:1.5; margin:0; max-height: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;
}
.gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%; }
.gallery-item:hover .gallery-caption { opacity: 1; }
.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption { display: none; }


/* etc */
.post_content .wp-smiley { border:0; margin-bottom:0; margin-top:0; padding:0; }
.post_content address { margin:0 0 24px 0; line-height:2.2; }
.post_content pre { border-left:3px solid #000; background:#333; font-size:12px; margin:0 0 27px 0; line-height:1.7; padding:20px; overflow:auto; }
.post_content .sticky { }
.post_content .mejs-container { margin: 12px 0 25px; }
body.light_color .post_content pre { border-left:3px solid #aaa; background:#f2f2f2; }


/* パスワード保護 */
.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; background:#111; 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 { background:#111; color:#fff; min-width: 100px; border:0; cursor:pointer; }
.c-pw .c-pw__btn:hover { text-decoration: none; }
.c-pw__box { width:100%; border:1px solid #333; 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 #222; background:#222; box-shadow:0px 0px 15px 0 rgba(0,0,0,0.2) inset; 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; }
body.light_color .post_content .c-pw__btn { color:#000; }
body.light_color .post_content .c-pw__btn:hover { color:#fff; }
body.light_color .c-pw__box { border-color:#ddd; }
body.light_color .c-pw__box-input { border-color:#ccc; box-shadow:0 0 3px 0 rgba(0,0,0,0.1) inset; }


/* Cardlink style - カードリンクのスタイル */
.cardlink { word-wrap: break-word; max-width: 100%; margin: 10px 0; padding: 12px; border: 1px solid #ddd; background: #fafafa; }
.cardlink_thumbnail { margin-right: 20px; float: left; }
.cardlink_content { line-height: 1.6; }
.cardlink_timestamp { display: inline; margin: 0; padding: 0; color: #222; font-size: 12px; line-height: 1.6; vertical-align: top; }
.cardlink_title { margin: 0 0 5px; font-size: 14px; }
.cardlink_title a { color: #000; font-weight: bold; text-decoration: none; }
.cardlink_title a:hover { text-decoration: underline; }
.cardlink_excerpt { overflow: hidden; color: #333; font-size: 12px; line-height: 1.8; }
.cardlink_footer { clear: both; }
.clear { clear: both; }
@media screen and (max-width: 767px) {
  .cardlink_thumbnail { float: none; }
  .cardlink_timestamp { line-height: 2.4; vertical-align: middle; }
  .cardlink_excerpt { float: none; }
}



/* 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; }
}


/* ----------------------------------------------------------------------
クラシックエディターのテーブルの横スクロール対応
---------------------------------------------------------------------- */
@media (max-width: 767px) {
  .post_content .s_table{ overflow: auto; white-space: nowrap; margin-bottom: 2em; }
  .post_content .s_table table { margin-bottom: 0; }
  }
  
  /* ----------------------------------------------------------------------
埋め込みコンテンツの余白調整
---------------------------------------------------------------------- */
.wp-block-embed { margin-bottom:2em; }

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

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