@charset "utf-8";
/*
Theme Name:AGENDA
Theme URI:https://tcd-theme.com/tcd059
Description: "AEGNDA" is a WordPress theme for politicians and freelancers. In addition to the profile page, you can use original post type to report your activities and achievements to the public.
Author:TCD
Author URI:https://tcd-theme.com/
Version:2.0.2
Text Domain:tcd-agenda
*/


/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
  font-family: 'design_plus';
  src: url('fonts/design_plus.eot?v=1.6');
  src: url('fonts/design_plus.eot?v=1.6#iefix') format('embedded-opentype'),
       url('fonts/design_plus.woff?v=1.6') format('woff'),
       url('fonts/design_plus.ttf?v=1.6') format('truetype'),
       url('fonts/design_plus.svg?v=1.6#design_plus') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'tiktok_x_icon';
  src: url('fonts/tiktok_x_icon.eot?v=1.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; }
audio, canvas, video { display:inline-block; max-width:100%; }
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 */




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; font-size:14px; line-height:1; width:100%; }
.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 { background:#fff; width:100%; position:relative; z-index:10; }
#main_col {
  width:1180px; min-width:1180px; margin:0 auto 150px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#left_col { width:830px; float:left; }
#side_col { width:300px; float:right; }
.layout2 #left_col { float:right; }
.layout2 #side_col { float:left; }
.pc .no_side_content #left_col { width:auto; float:none; }
.home.no_header_slider #main_contents { padding-top:120px; }
.home.no_index_3box #main_contents { padding-top:50px; }




/* ----------------------------------------------------------------------
 ヘッダースライダー
---------------------------------------------------------------------- */
#header_slider { width:100%; min-width:1180px; height:820px; overflow:hidden; position:relative; background:#fff; }
#header_slider .item { opacity:0; width:100%; height:820px; overflow:hidden; position:relative; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#header_slider .image { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:1; }
#header_slider .caption { width:1180px; height:700px; margin:120px auto 0; position:relative; }
#header_slider .caption_inner {
  width:100%; z-index:3; text-align:left; position:absolute;
  top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#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; }
#header_slider .caption .desc { font-size:16px; line-height:2.5; margin:5px 0 0 0; }
#header_slider .caption .button {
  font-size:14px; min-width:220px; height:55px; line-height:55px; text-align:center; position:relative; padding:0 77px 0 60px; display:inline-block; margin:15px 0 0 0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#header_slider .button span { position:relative; }
#header_slider .caption .button span:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px; display:block; position:absolute; right:-22px; top:-18px;  width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#header_slider .overlay { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:2; }


/* ナビゲーション */
#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 .caption .title, #header_slider .caption .desc, #header_slider .caption .button { opacity:0; }

#header_slider .slick-active .caption .title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.5s;
  animation: opacityAnimation 1.0s ease forwards 2.5s;
}
#header_slider .slick-active .caption .desc {
  -webkit-animation: opacityAnimation 1.0s ease forwards 3.5s;
  animation: opacityAnimation 1.0s ease forwards 3.5s;
}
#header_slider .slick-active .caption .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 4.5s;
  animation: opacityAnimation 1.0s ease forwards 4.5s;
}

#header_slider .first_active .caption .title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 3.0s !important;
  animation: opacityAnimation 1.0s ease forwards 3.0s !important;
}
#header_slider .first_active .caption .desc {
  -webkit-animation: opacityAnimation 1.0s ease forwards 4.0s !important;
  animation: opacityAnimation 1.0s ease forwards 4.0s !important;
}
#header_slider .first_active .caption .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 5.0s !important;
  animation: opacityAnimation 1.0s ease forwards 5.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 opacityAnimation {
  0% { }
  100% { opacity: 1; }
}
@keyframes opacityAnimation {
  0% { }
  100% { opacity: 1; }
}
/* アニメーション　ズームアウト */
@-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); }
}




/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */

/* コンテンツビルダー共通パーツ */
.index_content { margin:0 0 55px 0; }
.index_content:last-of-type { margin:0; }
.index_archive_button { text-align:center; margin:50px 0 0 0; }
.index_archive_button a {
  background:#000; color:#fff; font-size:14px; height:55px; line-height:55px; min-width:220px; position:relative; padding:0 60px; display:inline-block;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.index_archive_button a:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px; display:block; float:right; margin:2px 0 0 10px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* ３点ボックス */
#index_3box { width:100%; min-width:1180px; }
#index_3box_inner { width:1180px; margin:0 auto 100px; height:200px; }
#index_3box .box {
  color:#fff; float:left; height:200px; width:33.33333%; width:-webkit-calc(100% / 3); width:calc(100% / 3);
  padding:35px; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#index_3box .title { font-size:16px; line-height:1.8; font-weight:normal; }
#index_3box .button {
  font-size:14px; position:absolute; right:0px; bottom:0px; padding:0 80px 0 60px; min-width:220px; height:50px; line-height:50px; text-align:center;
  -webkit-box-sizing:border-box; box-sizing:border-box; overflow:hidden;
}
#index_3box .button div {
  position: absolute; width:100%; height:50px;
  box-sizing: border-box; -webkit-box-sizing: border-box;
}
#index_3box .button div:nth-child(1) { background:#fff; color:#000; left:0px; }
#index_3box .button div:nth-child(2) {
  background:#000; width:120%; left:-200%;
  transform: skewX(-30deg); -webkit-transform: skewX(-30deg);
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
  -webkit-animation: buttonMoveBack 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
  animation: buttonMoveBack 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
}
#index_3box .button div:nth-child(3) { color:#fff; opacity:0; left:0; }
#index_3box .button:hover div:nth-child(2) {
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
  -webkit-animation: buttonMove 0.7s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
  animation: buttonMove 0.7s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
}
#index_3box .button:hover div:nth-child(3) {
  -webkit-backface-visibility:hidden; backface-visibility:hidden;
  -webkit-animation: opacityAnimation 0.7s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
  animation: opacityAnimation 0.7s cubic-bezier(0.190, 1.000, 0.220, 1.000) forwards;
}
#index_3box .button span { position:relative; }
#index_3box .button span:after {
  font-family:'design_plus'; content:'\e910'; color:#000; font-size:12px; display:block; position:absolute; right:-25px; top:-16px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#index_3box .button:hover div:nth-child(1) span:after { color:#000; }
#index_3box .button:hover div:nth-child(3) span:after { color:#fff; }
@keyframes buttonMove {
  0% { left:-200%; opacity:0; }
  100% { left:-10%; opacity:1; }
}
@-webkit-keyframes buttonMove {
  0% { left:-200%; opacity:0; }
  100% { left:-10%; opacity:1; }
}
@keyframes buttonMoveBack {
  0% { left:-10%; opacity:1; }
  100% { left:-10%; opacity:0; }
}
@-webkit-keyframes buttonMoveBack {
  0% { left:-10%; opacity:1; }
  100% { left:-10%; opacity:0; }
}


/* お知らせ */
#index_news { }
#index_news.two_list { display:-webkit-box; display:-webkit-flex; display:flex; }
#index_news .box {
  padding:17px; border:1px solid #ddd; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#index_news.two_list .box { width:50%; float:left; }
#index_news.two_list .box:first-of-type { border-right:none; }
#index_news .box.show_link { padding-bottom:55px; }
#index_news .headline { font-size:18px; font-weight:500; height:55px; line-height:55px; padding:0 23px; margin:0 0 17px 0; }
#index_news .item { margin:0 0 17px 0; display:flex; flex-wrap:wrap; align-items:center; }
#index_news .image { width:100px; height:100px; display:block; margin:0 17px 0 0; position:relative; z-index:2; overflow:hidden; }
#index_news .image + .info { display:block; width:calc(100% - 117px); }
#index_news img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#index_news .title { font-size:16px; font-weight: 500; line-height:1.8; word-break:break-all; overflow:hidden; }
#index_news .title a { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; }
#index_news .image + .info .title a { -webkit-line-clamp:2; }
#index_news .date { margin:5px 0 0 0; font-size:12px; color:#999; font-family: 'Arial';}
#index_news .type1 .date { margin:0 0 5px 0; }
#index_news .type1 .item { border-bottom:1px solid #ddd; padding:0 0 10px 0; margin:0 0 17px 0; }
#index_news .type1 .item:last-of-type { border-bottom:none; margin:0; }
#index_news .button {
  position:absolute; bottom:0px; left:0px; -webkit-width:calc(100% - 30px); width:calc(100% - 30px); margin:0 15px; height:55px; line-height:55px; border-top:1px solid #ddd; text-align:right; padding:0 20px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#index_news .button:after {
  font-family:'design_plus'; content:'\e910'; color:#000; font-size:12px; display:block; position:absolute; right:0px; top:0px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 活動報告 */
#report_list { }
#report_list .headline {
  font-size:18px; font-weight:500; height:59px; line-height:59px; border:1px solid #ddd; border-top:none; padding:0 23px; margin:0 0 24px 0; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#report_list .post_list { margin-top:-24px; }
#report_list .item { width:260px; height:330px; float:left; margin:24px 24px 0 0; background:#f3f3f3; position:relative; }
#report_list .item:nth-child(3n) { margin-right:0; }
#report_list .image { width:100%; display:block; margin:0; position:relative; z-index:2; overflow:hidden; }
#report_list img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#report_list .category { position:absolute; top:0px; left:0px; z-index:3; background:#000; }
#report_list .category a {
  display:inline-block; color:#fff; font-size:12px; padding:0 19px; height:32px; line-height:32px; min-width:100px; text-align:center;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#report_list .category a:hover { background:rgba(0,0,0,0.2); }
#report_list .title_area { padding:20px 25px; }
#report_list .title { font-size:16px; line-height:1.8; font-weight:500; word-break:break-all; }
#report_list .title a { display:block; }
#report_list .date { font-size:12px; color:#999; margin:7px 0 0 0; font-family: 'Arial';}


/* 活動実績 */
#achv_list { }
#achv_list .headline {
  font-size:18px; font-weight:500; height:59px; line-height:59px; border:1px solid #ddd; border-top:none; padding:0 23px; margin:0 0 22px 0; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#achv_list .item { margin:0 0 25px 0; }
#achv_list .item:last-of-type { margin:0; }
#achv_list .image { float:left; width:330px; height:180px; display:block; margin:0; position:relative; z-index:2; overflow:hidden; }
#achv_list img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#achv_list .title_area {
  -webkit-width:calc(100% - 330px); width:calc(100% - 330px); height:180px; float:left; background:#fff; border:1px solid #ddd; border-left:none; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#achv_list .title_area:hover { background:#f5f5f5; }
#achv_list .title_area_inner {
  position:absolute; padding:0 50px;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#achv_list .title { font-size:26px; color:#000; line-height:1.3; word-wrap: break-word; position:relative; font-weight:500; word-break:break-all; }
#achv_list .sub_title { font-size:16px; color:#000; margin:0 0 10px 0; }


/* ブログ */
#blog_list .headline {
  font-size:18px; font-weight:500; height:59px; line-height:59px; border:1px solid #ddd; border-top:none; padding:0 23px; margin:0 0 22px 0; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#blog_list .item {
  width:276px; height:305px; float:left; margin:0 0 -1px 0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#blog_list .image { width:100%; display:block; margin:0; position:relative; z-index:2; overflow:hidden; }
#blog_list img { width:100%; height:auto; display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#blog_list .title_area {
  height:115px; border-left:1px solid #ddd; border-bottom:1px solid #ddd; padding:14px 33px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#blog_list .item:nth-child(3n) .title_area, #blog_list .item:last-of-type .title_area { border-right:1px solid #ddd; }
#blog_list .title { font-size:16px; line-height:1.8; font-weight:500; max-height:54px; overflow:hidden; word-break:break-all; }
#blog_list .title a { display:block; }
#blog_list .meta, #related_post .meta { font-size:12px; line-height:1.3; height:14px; overflow:hidden; margin:10px 0 0 0; }
#blog_list .meta li, #related_post .meta li { display:inline; color:#999; line-height:1; }
#blog_list .meta li.date, #related_post .meta li.date { border-right:1px solid #ddd; margin:0 5px 0 0; padding:0 10px 0 0; }
#blog_list .meta li a, #related_post .meta li a { color:#999; display:none; }
#blog_list .meta li a:first-of-type, #related_post .meta li a:first-of-type { display:inline; }


/* プロフィールバナー */
#index_prof_banner { width:100%; height:330px; position:relative; }
#index_prof_banner .image { display:none; }
#index_prof_banner .headline_area {
  position:absolute; padding:0 60px;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#index_prof_banner .headline { line-height:1.3; word-wrap: break-word; position:relative; font-weight:500; }
#index_prof_banner .desc { font-size:16px; line-height:2.5; margin:5px 0 0 0; }
#index_prof_banner .button {
  font-size:14px; height:55px; line-height:55px; position:relative; padding:0 60px; display:inline-block; margin:15px 0 0 0; text-align:center; min-width:220px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#index_prof_banner .button:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px; display:block; float:right; margin:1px 0 0 10px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}




/* ----------------------------------------------------------------------
 アーカイブ・固定ページの見出し　共通パーツ
---------------------------------------------------------------------- */
#page_header { width:100%; min-width:1180px; height:450px; position:relative; }

#page_header_catch {
  opacity:0; color:#fff; font-size:36px; line-height:1.3; padding:17px 0; width:100%; min-width:1180px;
  background:rgba(0,0,0,0.2); position:absolute; bottom:0px; left:0px; z-index:3;
}
#page_header_catch span { width:1180px; margin:0 auto; display:block; }

#page_header_overlay { width:100%; min-width:1180px; height:100%; position:absolute; top:0px; left:0px; z-index:2; }

#page_header_title { font-size:36px; line-height:1.3; padding:29px 0; width:100%; min-width:1180px; background:#f5f5f5; }
#page_header_title > div, #page_header_title > span { width:1180px; margin:0 auto; display:flex; align-items: center; }
#page_header_title > div .desc{ font-size:14px; margin-left:30px; }

#page_header_catch.animate {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.5s;
  animation: opacityAnimation 1.0s ease forwards 2.5s;
}
#page_header_catch.animate2 {
  -webkit-animation: opacityAnimation 1.0s ease forwards 3.0s;
  animation: opacityAnimation 1.0s ease forwards 3.0s;
}


/* 画像が無い場合 */
#page_header_no_image { background:#f5f5f5; width:100%; min-width:1180px; height:350px; position:relative; }
#page_header_no_image #page_header_title {
  opacity:0; position:absolute; margin-top:60px; height:auto; line-height:1; background:none;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#page_header_no_image #page_header_title.animate {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.5s;
  animation: opacityAnimation 1.0s ease forwards 2.5s;
}
#page_header_no_image #page_header_title.animate2 {
  -webkit-animation: opacityAnimation 1.0s ease forwards 3.0s;
  animation: opacityAnimation 1.0s ease forwards 3.0s;
}


/* 固定ページ用 */
#page_header_no_title { height:120px; border-bottom:1px solid #ddd; }




/* ----------------------------------------------------------------------
 活動報告
---------------------------------------------------------------------- */
/* アーカイブページ */
#report_category_list { margin:0 0 50px 0; }
#report_category_list ul { }
#report_category_list li { float:left; width:25%; margin:0 -1px -1px 0; }
#report_category_list li a {
  display:block; line-height:55px; text-align:center; font-size:14px; color:#000; background:#fff;
  border:1px solid #ddd;
}
#report_category_list li a:hover { background:#f5f5f5; }
#report_category_list li.active a { background:#008c8c; border-color:#008c8c; color:#fff; position:relative; z-index:10; }


/* 詳細ページ */
#article.report { background:#f5f5f5; border:none; }
#report_category {
  position:absolute; display:inline-block; color:#fff; padding:0 19px; font-size:12px; height:32px; line-height:32px; min-width:100px; text-align:center;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#report_category.no_image { top:0; }
#article.report #post_title { padding-top:8px; margin-bottom:5px; }
#article.report #post_title.no_image { margin-top:28px; }
#report_post_meta_top { margin:0 0 39px 0; padding:0 0 45px 0; border-bottom:1px solid #ddd; }
#report_post_meta_top li { display:inline; line-height:1.7; font-size:12px; color:#999; position:relative; }
#report_post_meta_top li:first-of-type { padding:0 9px 0 0; margin:0 3px 0 0; }
#report_post_meta_top li:first-of-type:after { content:''; display:block; position:absolute; right:0px; top:3px; width:1px; height:10px; background:#bbb; }
#report_post_meta_top a { color:#999; }




/* ----------------------------------------------------------------------
 活動実績
---------------------------------------------------------------------- */
/* 詳細ページ */
#article.achv { border:7px solid #eee; }
#article.achv #post_image { margin-right:-50px; margin-left:-50px; }
#achv_sub_title { font-size:16px; margin:0 0 10px 0; }




/* ----------------------------------------------------------------------
 お知らせ
---------------------------------------------------------------------- */
/* アーカイブページ */
#news_list .item a {
  color:#000; border:1px solid #ddd; border-bottom:none; display:block; padding:24px; height:230px; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#news_list .item a:hover { background:#f5f5f5; }
#news_list .item:last-of-type, #news_list .item:only-of-type { border-bottom:1px solid #ddd; }
#news_list .image { width:260px; height:180px; float:left; }
#news_list .image img { display:block; width:100%; height:auto; }
#news_list .title_area {
  float:left; -webkit-width:calc(100% - 330px); width:calc(100% - 330px);
  position:relative; left:55px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#news_list .no_image .title_area { float:none; left:25px; -webkit-width:calc(100% - 60px); width:calc(100% - 60px); }
#news_list .title { font-size:24px; line-height:1.3; font-weight:500; word-break:break-all; }
#news_list .date { color:#999; font-size:12px; margin:8px 0 0 0; }


/* 詳細ページ */
#article.news #post_meta_top li:first-of-type { padding:0; margin:0; }
#article.news #post_meta_top li:first-of-type:after { display:none; }

#news_list_single { position:relative; }
#news_list_single .headline {
  font-size:18px; height:59px; line-height:61px; font-weight:500; border:1px solid #ddd; border-top:none; border-bottom:none; padding:0 23px; margin:0; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#news_list_single .item a {
  background:#fafafa; display:block; height:55px; line-height:55px; border:1px solid #ddd; border-bottom:none; padding:0 23px; overflow:hidden;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#news_list_single .item:last-of-type a, #news_list_single .item:only-of-type a { border-bottom:1px solid #ddd; }
#news_list_single .item a:hover { background:#fff; }
#news_list_single .date { float:left; width:85px; font-size:12px; color:#999; }
#news_list_single .title { float:left; -webkit-width:calc(100% - 85px); width:calc(100% - 85px); font-weight:normal; word-break:break-all; }
#news_list_single .archive_link { position:absolute; top:23px; right:23px; z-index:2; font-size:14px; }
#news_list_single .archive_link:after {
  margin:2px 0 0 8px; font-size:12px; font-family:'design_plus'; content:'\e910'; color:#333; display:block; float:right; height:12px; line-height:12px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}




/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
/* ページング */
.page_navi { margin:50px 0 0 0; }
.page_navi ul { margin:0; font-size:0; }
.page_navi li { display:inline; margin:0 5px 5px 0; }
.page_navi a, .page_navi a:hover, .page_navi span { font-size:12px; padding:14px 16px; line-height:1; margin:0; background:#f7f7f7; border:1px solid #ddd; color:#000; display:inline-block; }
.page_navi a:hover { color:#fff; background:#000; border-color:#000; }
.page_navi span.dots { background:none; }
.page_navi span.current { color:#fff; background:#000; border-color:#000; }

.page_navi .next, .page_navi .prev { padding:14px 14px !important; }
.page_navi .next span, .page_navi .prev span { display:none; }
.page_navi .next:before, .page_navi .prev:before {
  font-family:'design_plus'; color:#333; font-size:11px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.page_navi .prev:before { content:'\e90f'; }
.page_navi .next:before { content:'\e910'; }
.page_navi .prev:hover:before, .page_navi .next:hover:before { color:#fff; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
.post_content { }
.post_content a:hover, .custom-html-widget a:hover { text-decoration:underline; }
#article { border:1px solid #ddd; padding:50px; margin:0 0 50px 0; position:relative; }
#article.page { border:none; padding:0; margin:0; }


/* 記事タイトル */
#post_title { font-size:34px; line-height:1.3; font-weight:500; color:#000; margin:0 0 45px 0; }
body.page #post_title { text-align:center; margin:-30px 0 50px 0; }
.pc .no_side_content #post_title { text-align:center; }


/* カテゴリ― */
#post_meta_top { margin:-51px 0 45px 0; display:table; padding:10px 20px; }
#post_meta_top li { display:inline; line-height:1.7; font-size:12px; color:#fff; position:relative; }
#post_meta_top li:first-of-type { padding:0 9px 0 0; margin:0 3px 0 0; }
#post_meta_top li:first-of-type:after { content:''; display:block; position:absolute; right:0px; top:3px; width:1px; height:10px; background:#fff; }
#post_meta_top a { color:#fff; }


/* アイキャッチ画像*/
#post_image { padding:0; margin:0 0 39px 0; position:relative; }
#post_image img { width:100%; height:auto; display:block; margin:0; z-index:1; }


/* SNSボタン */
#single_share_top { margin:0 0 5px 0; }
#single_share_top #share_top1 { padding-top:0; }
#single_share_bottom { margin:0; }
#single_share_bottom .share-btm { margin-bottom:0; padding:0; }
#single_share_bottom .mb45 { margin-bottom:45px !important; }


/* ページ分割 */
#post_pagination { margin:0 0 40px 0; padding:12px 0 0 0; clear:both; font-size:0; text-align:center; }
#post_pagination h5 { margin:0 0 10px 0; font-size:12px; }
#post_pagination a, #post_pagination p { font-size:12px; display:inline-block; background:#fff; margin:0 0 0 -1px; width:40px; height:40px; line-height:40px; text-align:center; text-decoration:none; color:#333; border:1px solid #ccc; }
#post_pagination p { background:#000; color:#fff; border-color:#000; position:relative; }
#post_pagination a:hover { color:#fff; }


/* ページ分割（続きを読むver） */
#p_readmore { text-align:center; padding:12px 0 0 0; }
#p_readmore .button {
  background:#000; color:#fff; display:inline-block; height: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; }


/* メタ情報 */
#post_meta_bottom { margin:0 0 50px; background:#fafafa; padding:25px; }
#post_meta_bottom li { display:inline; margin:0 10px 0 0; padding:0 15px 0 20px; border-right:1px solid #ddd; font-size:12px; line-height:1.8; position:relative; }
#post_meta_bottom li:last-child { border:none; margin:0; }
#post_meta_bottom li:before {
  font-family:'design_plus'; color:#aaa; font-size:13px; width:13px; height:13px; line-height:13px; display:block;
  position:absolute; top:0; left:0px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#post_meta_bottom li.post_author:before { content:'\e90d'; top:1px; }
#post_meta_bottom li.post_category:before { content:'\e92f'; }
#post_meta_bottom li.post_tag:before { content:'\e935'; top:2px; }
#post_meta_bottom li.post_comment:before { content:'\e916'; font-size:16px; top:1px; }


/* 次の記事、前の記事 */
#previous_next_post { margin:0; }
#previous_next_post .prev_post, #previous_next_post .next_post { float:left; width:50%; }
#previous_next_post a {
  width:100%; display:block; border:1px solid #ddd; font-size:16px; line-height:1.8; height:110px; position:relative; display:table; background:#fff;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post div:last-of-type a { border-left:none; }
#previous_next_post div:only-of-type a { border-left:1px solid #ddd; }
#previous_next_post .next_post a { padding:0 70px 0 40px; }
#previous_next_post .prev_post a { padding:0 40px 0 70px; }
#previous_next_post a span { display:table-cell; vertical-align:middle; ; height:50px; overflow:hidden; word-wrap: break-word; }
#previous_next_post span.nav { display:none; }
#previous_next_post a:hover { background:#f7f7f7; }
#previous_next_post .prev_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#111; 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;
}
#previous_next_post .next_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#111; font-size:12px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; position:absolute; top:0px; bottom:0px; right:30px; margin:auto;
}


/* 広告 */
#single_banner_top { margin:15px 0 40px; text-align:center; padding:0 20px; }
#single_banner_bottom { margin:0 0 55px; text-align:center; padding:0 20px; }
#single_banner_shortcode { margin:0 0 30px 0; padding:10px 0 0 0; text-align:center; }
#mobile_banner_top { margin:15px 0 40px; }
#mobile_banner_bottom { margin:0 0 55px 0; }

.single_banner_area .single_banner_left {
  width:50%; float:left; padding:0 10px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area .single_banner_right {
  width:50%; float:right; padding:0 10px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.single_banner_area img { max-width:100%; height:auto; display:block; margin:0 auto; }
.single_banner_area.one_banner .single_banner_left { float:none; margin:0 auto; }
.single_banner_area.one_banner img { margin:0 auto; }


/* 関連記事 */
#related_post { margin:50px 0 0 0; }
#related_post .headline {
  margin:0; font-weight:400; font-size:16px; height:55px; line-height:55px; padding:0 23px; border:1px solid #ddd; border-top:none; border-bottom:none; box-shadow:0 -5px 0 0 #000;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#related_post ol { position:relative; width:-webkit-calc(100% + 2px); width:calc(100% + 2px); display: flex; flex-wrap: wrap; }
#related_post > ol > li {
  height:auto; margin:0 -1px -1px 0; border:1px solid #ddd; padding:22px;
  float:none; width:33.33333%; width:-webkit-calc(100% / 3); width:calc(100% / 3);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#related_post .image { display:block; width:100%; height:auto; position:relative; overflow:hidden; z-index:2; margin:0 0 15px 0; }
#related_post .image img { display:block; width:100%; height:auto; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
#related_post .title { line-height:1.9; font-weight:normal; word-break:break-all; }
#related_post .title a { display:block; }

.page-template-page-noside #related_post li{ height: 350px; }


/* ----------------------------------------------------------------------
 プロフィールページ
---------------------------------------------------------------------- */
#profile_top {
  border:1px solid #ddd; margin:0 0 50px 0; padding:20px;
  display:flex; align-items:center; width:100%;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#profile_top .image { -webkit-flex:0 0 270px; flex:0 0 270px; }
#profile_top .image img { display:block; width:100%; height:auto; }
#profile_top .data {
  -webkit-flex:1; flex:1; padding:0 30px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#profile_top .name { font-size:24px; line-height:1.4; font-weight:400px; margin:16px 0 15px 0; }
#profile_top .post_content p:last-of-type { margin:0; }


/* 見出し（共通） */
.profile_headline {
  margin:0; height:55px; line-height:55px; padding:0 23px; border:1px solid #ddd; border-top:none; box-shadow:0 -5px 0 0 #000;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}


/* メッセージ */
#profile_message { margin:0 0 50px 0; }
#profile_message .post_content { border:1px solid #ddd; border-top:none; padding:40px 50px 13px; }


/* 経歴・職歴 */
.profile_list { margin:0 0 50px 0; }
.profile_list:last-of-type { margin:0; }
.profile_list .image { width:100%; height:auto; display:block; }
.profile_list ol { border:1px solid #ddd; border-bottom:none; }
.profile_list ol li { padding:18px 25px; border-bottom:1px solid #ddd; line-height:1.5; }




/* ----------------------------------------------------------------------
 政策ページ
---------------------------------------------------------------------- */
#policy_list .item { background:#f9f9f9; border:7px solid #eee; margin:0 0 50px 0; padding:47px 50px 10px; }
#policy_list .item .link { color:#000; display:block; margin:-47px -50px -10px; padding:47px 50px 10px; }
#policy_list .item:last-of-type { margin-bottom:95px; }
#policy_list .headline { font-size:32px; line-height:1.3; font-weight:500; margin:0 0 10px 0; }
#policy_list .post_content { font-size:14px; }

#policy_headline { font-size:36px; line-height:1.3; font-weight:500; margin:0 0 20px 0; }

#policy_top_desc { margin:0 0 5px 0; font-size:16px; }

#policy_image { display:block; width:100%; height:auto; margin:0 0 50px 0; }

#policy_bottom_desc .post_content { -webkit-width:calc(50% - 25px); width:calc(50% - 25px); float:left; font-size:15px; margin-bottom:-10px; }
#policy_bottom_desc .post_content:last-of-type { float:right; }
#policy_bottom_desc .post_content p:last-of-type { margin:0; }




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
/* 404ページ */
#header_image_for_404 { width:100%; margin:0 auto; position:relative; overflow:hidden; }
#header_image_for_404 img { width:100%; height:auto; display:block; }
#header_image_for_404 .caption { margin:0; width:100%; padding:0 30px; line-height:1.5; text-align:center; color:#fff; position:absolute; top:50%; left:50%; opacity:0;
  -webkit-transform:translate(-50%, -50%); transform:translate(-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: opacityAnimation 1.0s ease forwards 1.5s !important;
  animation: opacityAnimation 1.0s ease forwards 1.5s !important;
}


/* 広告 */
#page_banner { margin:50px 0; text-align:center; font-size:0; }
#page_banner img { max-width:100%; height:auto; display:block; margin:0 auto; }
#page_banner .page_banner {
  width:50%; display:inline-block; border:1px solid #ddd; padding:40px; text-align:center;
  width:-webkit-calc(50% - 15px); width:calc(50% - 15px);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#page_banner .banner_left { margin:0 15px 0 0; }
#page_banner .banner_right { margin:0 0 0 15px; }
#page_banner.one_banner .banner_left, #page_banner.one_banner .banner_right { margin:0; }


/* ページナビゲーション */
#previous_next_page { text-align:center; margin:12px 0 70px 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:1180px; height:120px; position:absolute; z-index:20; margin:auto; background:#fff; top:0; left:0; right:0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#header_inner { }

.pc #header.animate {
  top:-120px;
  -webkit-animation: headerSlideIn 0.8s ease forwards 1.5s;
  animation: headerSlideIn 0.8s ease forwards 1.5s;
}
.pc #header.animate2 {
  top:-120px;
  -webkit-animation: headerSlideIn 0.8s ease forwards 2.0s;
  animation: headerSlideIn 0.8s ease forwards 2.0s;
}
@-webkit-keyframes headerSlideIn {
  0% { }
  100% { top:0px; }
}
@keyframes headerSlideIn {
  0% { }
  100% { top:0px; }
}


/* ロゴ */
.pc #header_logo {
  float:left; height:120px; width:300px; position:relative; text-align:center; border-right:1px solid #ddd;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.pc #header.no_border #header_logo { border:none; }
.pc #logo_image { height:120px; line-height:120px; }
.pc #logo_text {
  height: 120px;
  display: flex;
  align-items: center;
  line-height: 1.4;
}
.pc #logo_image { }
.pc #logo_image img.pc_logo_image { display:inline-block; margin:0 auto; vertical-align:middle; }
.pc #logo_image img.mobile_logo_image { display:none; }
.pc #logo_text h2 { font-weight:normal; }
.pc #logo_text a { text-decoration:none; }
.pc .header_fix #header_logo { display:none; }


/* グローバルメニュー */
.pc #global_menu { -webkit-width:calc(100% - 300px); width:calc(100% - 300px); height:120px; font-size:0; float:right; margin:0; text-align:center; }
.pc #global_menu > ul { display:inline-block; height:120px; font-size:0; position:relative; vertical-align:top; }
.pc #global_menu > ul > li { font-size:1%; position:relative; display:inline-block; height:120px; line-height:120px; margin:0 22px; }

.pc #global_menu > ul > li > a {
  font-size:14px; text-decoration:none; height:120px; line-height:120px; display:block;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.pc #global_menu > ul > li.active > a, .pc #global_menu > ul > li.current-menu-item > a { }
.pc #global_menu a:hover { }

.pc #global_menu ul ul { display:none; width:230px; position:absolute; top:120px; left:-24px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0; border:none; }
.pc #global_menu ul ul li { line-height:1.5; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { font-size:14px; background:#222; color:#fff !important; display:block; border:none; position:relative; padding:14px 25px; height:auto; line-height:1.6; margin:0; text-align:left; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

.pc #global_menu ul ul li.menu-item-has-children > a:before {
  font-size:12px; font-family:'design_plus'; content:'\e910'; color:#fff; display:block; position:absolute; right:15px; top:19px; height:14px; line-height:14px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* その他 */
.pc #menu_button { display:none; }
.pc #global_menu ul.main_menu { display:none; }


/* 子メニューを逆方向にする */
.pc #global_menu > ul > li.rev ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul{ right:-24px; left:auto; }
.pc #global_menu > ul > li.rev ul ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul ul  { left:auto; right:100%; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a:before, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a:before { content:'\e90f'; right:auto; left:21px; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a { padding-left: 45px; }


/* 固定ヘッダー */
.pc .header_fix { }/* #header_inner height + #header margin bottom */
.pc .header_fix #header {
  position:fixed; top:0px; left:0px; z-index:200; background:#fff; height:50px; width:100%;
  box-shadow:0 1px 5px 0 rgba(0,0,0,0.2);
  -webkit-animation: slideDown 0.5s ease; animation: slideDown 0.5s ease;
}
.pc .header_fix #header_inner { height:50px; width:1180px; margin:0 auto; }
@-webkit-keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}
@keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}


/* 固定ヘッダーのグローバルメニュー */
.pc .header_fix #global_menu { bottom:-1px; float:none; height:50px; }
.pc .header_fix #global_menu > ul { height:50px; }
.pc .header_fix #global_menu > ul > li { height:50px; line-height:50px; margin:0; }
.pc .header_fix #global_menu > ul > li > a { margin:0; height:50px; line-height:50px; }
.pc .header_fix #global_menu ul ul { top:50px; left:0; width:200px; }
.pc .header_fix #global_menu ul ul ul { top:0; left:100%; }
.pc .header_fix #global_menu { width:100%; }
.pc .header_fix #global_menu > ul { display: -webkit-box; -webkit-box-pack: justify; display: -webkit-flex;  display: flex; }
.pc .header_fix #global_menu > ul > li {  flex:1; -webkit-box-flex: 1; text-align:center; }


/* パンくずリンク */
#bread_crumb { width:100%; min-width:1180px; }
#bread_crumb ul { margin:0 auto; width:1180px; padding:41px 0 40px 0; }
#bread_crumb li { display:inline; font-size:12px; padding:0 0 0 17px; margin:0 5px 0 0; line-height:1.6; position:relative; }
#bread_crumb li:before {
  font-family:'design_plus'; content:'\e910'; font-size:9px; width:9px; height:9px; line-height:9px;
  display:block; position:absolute; left:0; 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:14px; height:18px; word-wrap: break-word;
  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:2px; 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 { }
#bread_crumb li a:hover { }
#bread_crumb li.category a:after { content:','; }
#bread_crumb li.category a:last-of-type:after, #bread_crumb li.category a:only-of-type:after { display:none; }
#no_breadcrumb { height:50px; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* ３連バナー */
#footer_banner { width:100%; min-width:1180px; }
#footer_banner_inner { width:1180px; margin:0 auto; padding:60px 0; }
#footer_banner .item { float:left; width:360px; height:140px; margin:0 50px 0 0; position:relative; }
#footer_banner .item:last-of-type { margin:0; }
#footer_banner img { width:100%; height:auto; margin:0; display:block; }
#footer_banner a { display:block; position:relative; margin:0 0 25px 0; }
#footer_banner a:last-of-type { margin:0; }
#footer_banner a .title {
  position:absolute; margin:auto; display:inline-block; color:#fff; font-size:18px; line-height:1.5; font-weight:normal; padding:0 30px; z-index:2;
  top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
 -webkit-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
}
#footer_banner a:hover .title { padding:0 30px 0 45px; }
#footer_banner .overlay { width:100%; height:100%; position:absolute; top:0; left:0; z-index:1; }


/* フッターウィジェットエリア */
#footer_bottom { width:1180px; margin:0 auto; padding:60px 0; display:-webkit-box; display:-webkit-flex; display:flex; overflow:hidden; }


/* サイト情報 */
#footer_bottom .footer_logo { margin:0 0 15px 0; }
#footer_info {
  -webkit-flex:0 0 350px; flex:0 0 350px; border-right:1px solid #ddd; padding:0 50px 0 0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  max-width: 350px;
}
#footer_info .info p { line-height:2.3; font-size:14px; }


/* SNSボタン */
#footer_social_link { margin:2px 0 0 -8px; }
#footer_social_link li { float:left; margin:0; position:relative; }
#footer_social_link li a {
  display:block; overflow:hidden; width:33px; height:33px; line-height:33px; text-align:center; position:relative;
}
#footer_social_link li a span { display:none; }
#footer_social_link li a:before {
  font-family:'design_plus'; color:#333; font-size:14px; width:14px; height:14px; display:block;
  position:absolute; top:1px; left:0; right:0; margin:auto;
  -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.pint a:before { content:'\e905'; }
#footer_social_link li.flickr a:before { content:'\eaa4'; }
#footer_social_link li.tumblr a:before { content:'\eab9'; }
#footer_social_link li.mail a:before { content:'\f0e0'; }
#footer_social_link li.rss a:before { content:'\e90b'; }
#footer_social_link li.line a:before { content:'\e909'; }
#footer_social_link li.youtube a:before {
  content: '';
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  position: relative;
  top: 3px;
  left: 0px;
  background-color: #000;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-youtube' viewBox='0 0 16 16'%3E%3Cpath d='M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-youtube' viewBox='0 0 16 16'%3E%3Cpath d='M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z'/%3E%3C/svg%3E");
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  transition: background-color 0.3s ease;
}
#footer_social_link li.note a:before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  top: 2px;
  position: relative;
  background-color: #000;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  transition: background-color 0.3s ease;
}
#footer_social_link li.youtube a:hover:before, #footer_social_link li.note a:hover:before { background-color: #aaa; }



/* メニュー */
.footer_menu {
  -webkit-flex:0 0 476px; flex:0 0 476px; padding:0 48px; border-right:1px solid #ddd;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  max-width: 476px;
}
.footer_menu.two_menu { -webkit-flex:0 0 238px; flex:0 0 238px; max-width: 238px; }
.footer_menu li { font-size:14px; line-height:1.5; margin:0 0 20px 0; }
.footer_menu li:last-of-type { margin:0; }
.footer_menu li a { display:block; }


/* ウィジェット */
#footer_widget {
  -webkit-flex:0 0 350px; flex:0 0 350px; padding:0 0 0 50px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  max-width: 350px;
}
.footer_headline { display:none; }


/* コピーライト */
#copyright {
  text-align:center; font-size:12px; height:60px; line-height:60px; border-top:1px solid #ddd;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}


/* ページ上部へ戻るボタン */
#return_top { display:block; }
#return_top a { display:block; height:60px; width:60px; line-height:60px; text-decoration:none; z-index:100; position:relative; }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a:before {
  font-family:'design_plus'; color:#fff; font-size:12px; display:block; position:absolute; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top a:before { content:'\e911'; left:24px; top:2px; }
#return_top {
  position:fixed; right:0px; bottom:0px; z-index:999;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
#return_top.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }


/* 固定コンテンツ */
#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 48px 0; position:relative; }
.side_widget:last-child, .side_widget:only-child  { margin:0; }
.side_headline, .widget_block .wp-block-heading { font-size:16px; margin:0 0 20px 0; padding:0 20px; font-weight:400; color:#fff; background:#afcfd2; height:55px; line-height:55px; }
.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 { margin:0 0 50px 0; border:none; padding:0; background:none; }
.tcd_ad_widget img { height:auto; max-width:100%; margin:0 auto; display:block; }


/* バナー */
.tcd_banner_widget { margin:0 0 50px 0; border:none; padding:0; background:none; }
.tcd_banner_widget img { height:auto; max-width:100%; margin:0 auto; display:block; }
.tcd_banner_widget a { display:block; position:relative; margin:0 0 25px 0; position:relative; }
.tcd_banner_widget a:last-of-type { margin:0; }
.tcd_banner_widget a .title {
  position:absolute; margin:auto; display:inline-block; color:#fff; font-size:18px; line-height:1.5; padding:0 30px;
  top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index:2;
 -webkit-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
}
.tcd_banner_widget a:hover .title { padding:0 30px 0 45px; }
.tcd_banner_widget .overlay { width:100%; height:100%; position:absolute; top:0; left:0; z-index:1; }


/* カレンダー */
.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 { color:#333; padding:2px; line-height:3.4; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; color:#333; background-color:#eee; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#ccc; }
#wp-calendar caption { padding:7px 0; }
#wp-calendar thead th, #wp-calendar tfoot td { border:none; padding:0; line-height:2; }
#wp-calendar #prev, #wp-calendar #next { line-height:3; }
#wp-calendar #prev a, #wp-calendar #next a { text-decoration:none; background:none; color:#333; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { color:#fff; background:#ccc; }
#wp-calendar td#today { font-weight:bold; }


/* デザインされた記事一覧 */
.styled_post_list1 { margin:0; padding:0; }
.styled_post_list1 li { margin:0 0 20px 0; padding:0px; background:none; }
.styled_post_list1 li:last-of-type { margin:0; }
.styled_post_list1 .image { float:left; width:100px; height:100px; margin:0 20px 0 0; display:block; overflow:hidden; position:relative; z-index:2; }
.styled_post_list1 .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.styled_post_list1 .info { float:left; -webkit-width:calc(100% - 120px); width:calc(100% - 120px); }
.styled_post_list1 .title { font-size:16px; margin:0; display:block; line-height:1.6; position:relative; word-break:break-all; }
.styled_post_list1 .date { margin:5px 0 0 0; position:relative; display:block; line-height:1; color:#999; font-size:12px;  font-family: 'Arial';}


/* タブ記事 */
.widget_tab_post_list_button a {
  display:inline-block; height:55px; line-height:55px; width:50%; text-align:center; border:1px solid #ddd; background:#f9f9f9; float:left; margin-bottom:-1px; font-size:14px; position:relative; text-decoration:none;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.widget_tab_post_list_button a:hover { color:#fff; background:#65989f; border-color:#65989f; }
.widget_tab_post_list_button a.tab1 { border-right:0; }
.widget_tab_post_list_button a.active { background:#fff; border-bottom:1px solid #fff; }
.widget_tab_post_list_button a.active:hover { color:#666; background:#fff !important; border-color:#ddd !important; border-bottom:1px solid #fff !important; }
.widget_tab_post_list { border:1px solid #ddd; font-size:0; padding:20px 0 0 0; }
.widget_tab_post_list li {
  margin:0 0 -1px 0; overflow:hidden; padding:10px; background:none; border-bottom:1px solid #ddd;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  display:-webkit-box; display:-webkit-flex; display:flex;
}
.widget_tab_post_list2 { display:none; }
.widget_tab_post_list .info {
  -webkit-box-flex: 1; flex: 1;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column;
  -webkit-box-pack: center; justify-content: center;
}
.widget_tab_post_list .title { font-size:14px; margin:0; display:block; line-height:1.8; position:relative; word-break:break-all; }
.widget_tab_post_list .date { color:#999; font-size:12px; font-family: 'Arial';}
.widget_tab_post_list .image { /*float:left;*/ width:120px; height:120px; margin:0 14px 0 0; display:block; overflow:hidden; position:relative; z-index:2; }
.widget_tab_post_list .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; }


/* カスタムメニュー */
.tcdw_menu_widget .menu1, .tcdw_menu_widget .menu2 { width:50%; float:left; font-size:12px; }
.tcdw_menu_widget .menu_headline { margin:0 0 15px 0; font-size:16px; font-weight:bold; }
.tcdw_menu_widget li:last-child { margin-bottom:0; }


/* プロフィール */
.tcd_user_profile_widget { border:1px solid #ddd; padding:30px 30px 30px; }
.tcd_user_profile_widget .user_avatar { overflow:hidden; width:130px; height:130px; display:block; margin:0px auto 25px; border-radius:130px; }
.tcd_user_profile_widget .user_avatar img { width:100%; height:auto; display:block; }
.tcd_user_profile_widget .user_desc { line-height:2.3; margin:0 0 30px 0; }
.tcd_user_profile_widget .button { text-align:center; margin:0 0 30px 0; }
.tcd_user_profile_widget .button a { display:inline-block; height:45px; line-height:45px; padding:0 30px; background:#222; color:#fff; text-decoration:none; border-radius:5px; }
.tcd_user_profile_widget .user_sns { text-align:center; margin:0; padding:0; font-size:0; }
.tcd_user_profile_widget li { display:inline-block; vertical-align:top; margin:0; padding:0; line-height:100%; font-size:11px; background:none; width:30px; }
.tcd_user_profile_widget li a { position:relative; text-decoration:none; }
.tcd_user_profile_widget li a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
.tcd_user_profile_widget li a:before {
  font-family:'design_plus'; color:#333; font-size:12px; display:block; position:absolute; top:10px; left:-5px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.tcd_user_profile_widget li.twitter_button a:before { font-family: 'tiktok_x_icon'; content: "\e901";}
.tcd_user_profile_widget li.facebook_button a:before { content:"\e902"; }
.tcd_user_profile_widget li.insta_button a:before { content:"\ea92"; top:10px; }
.tcd_user_profile_widget li.pint_button a:before { content:"\e905"; }
.tcd_user_profile_widget li.mail_button a:before { content:"\f0e0"; }
.tcd_user_profile_widget li.twitter_button a:hover:before { color:#000; }
.tcd_user_profile_widget li.facebook_button a:hover:before { color:#3B5998; }
.tcd_user_profile_widget li.insta_button a:hover:before { color:#8a3ab9; }
.tcd_user_profile_widget li.pint_button a:hover:before { color:#c92228; }
.tcd_user_profile_widget li.mail_button a:hover:before { color:#16b9dc; }


/* ドロップダウンカテゴリーメニュー */
.tcdw_category_list_widget .side_headline { margin:0 0 7px 0; }
.tcd_category_list { margin:0; }
.tcd_category_list li { margin:0; padding:0; background:none; position:relative; }
.tcd_category_list li.parent_menu:after {
  content:'\e90e'; font-family:'design_plus'; color:#333; font-size:12px; display:block; position:absolute; right:16px; top:17px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.tcd_category_list li.parent_menu.active:after { content:'\e911'; }
.tcd_category_list a {
  font-size:14px; display:block; padding:0 5px 0 20px; height:55px; line-height:55px; overflow:hidden; border:1px solid #f3f3f3; background:#f3f3f3; margin:0 0 7px 0; text-decoration:none; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.tcd_category_list > li:first-child > a { border-top:none; }
.tcd_category_list a:hover { color:#000; }
.tcd_category_list li a .count { display:none; float:right; top:5px; position:relative; height:40px; line-height:40px; background:#ccc; color:#fff; padding:0 8px; min-width:24px; text-align:center; font-size:11px; }
.tcd_category_list li a:hover .count{ background:#d80c49; }
.tcd_category_list.show_count li a .count { display:block; }
.tcd_category_list li li a { padding-left:33px; background:#fff; border-color:#ddd; }
.tcd_category_list li li li a { padding-left:47px; }
.tcd_category_list li li li li a { padding-left:61px; }

.tcd_category_list ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcd_category_list ul ul { width:100%; position:relative;}
.tcd_category_list ul li { margin:0; padding:0; }
.tcd_category_list ul li a {  }
.tcd_category_list ul ul li a { }
.tcd_category_list ul ul ul li a { }
.tcd_category_list ul ul ul ul li a { }


/* カスタムメニュー（ドロップダウンver）*/
.tcdw_custom_drop_menu_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.tcdw_custom_drop_menu { margin:0; padding:0; }
.tcdw_custom_drop_menu li { margin:0; padding:0; background:none; position:relative; }
.tcdw_custom_drop_menu a {
  display:block; padding:0 15px; height:55px; line-height:55px; overflow:hidden; border:1px solid #ddd; margin:-1px 0 0 0; text-decoration:none; background:#fff; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.tcdw_custom_drop_menu li:first-child > a { border-top:none; }
.tcdw_custom_drop_menu a:after {
  font-family:'design_plus'; content:'\e910'; color:#aaa; font-size:12px; display:block; position:absolute; top:2px; right:15px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.tcdw_custom_drop_menu a:hover { background:#014760; color:#fff; }
.tcdw_custom_drop_menu a:hover:after { color:#fff; }
.tcdw_custom_drop_menu > li.parent_menu.active > a:after { content:'\e911'; }

.tcdw_custom_drop_menu li ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcdw_custom_drop_menu li ul ul { width:100%; position:relative;}
.tcdw_custom_drop_menu li ul li { margin:0; padding:0; }
.tcdw_custom_drop_menu li ul li a { height:auto; line-height:1.5; padding:18px 25px; background:#f6f6f6; }
.tcdw_custom_drop_menu li ul li a:after { display:none; }
.tcdw_custom_drop_menu li ul ul li a { background:#ddd; }
.tcdw_custom_drop_menu li ul ul ul li a { background:#ccc; }
.tcdw_custom_drop_menu li ul ul ul ul li a { background:#bbb; }


/* 検索 */
.widget_search label { display:none; }
#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 { }


/* アーカイブ、カテゴリードロップダウンメニュー */
.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; }
.widget_categories li { }


/* アーカイブ一覧 */
.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 #ddd; background: #fff; line-height: 50px; }
.p-dropdown__title::after { position: absolute; right: 17px; font-family: "design_plus"; content: "\e90e"; }
.p-dropdown__title:hover { cursor: pointer; }
.p-dropdown__title.is-active::after { content: "\e911"; }
.p-dropdown__list { display: none; }
.p-widget .p-dropdown .p-dropdown__list { margin: 0; }
.p-dropdown__list li { border: 1px solid #ddd; border-top: 0; line-height: 1.5; margin:0; padding:0; }
.p-dropdown__list li a { display: block; padding: 14px 18px; }
.p-dropdown__list li a:hover { background: #f6f6f6; color: #000; }


/* デフォルトの最近の記事 */
.widget_recent_entries li { border-bottom:1px dotted #ccc; padding:0 0 15px 0; }
.widget_recent_entries li:last-child { border:none; padding:0; }


/* アクセス数ランキング */
.ranking_list_widget .side_headline { margin:0 0 -1px 0; z-index:2; position:relative; }
.ranking_list_widget ol { margin:0; padding:0; }
.ranking_list_widget li { padding:6px 0 15px; margin:0; }
.ranking_list_widget .num {
  float:left; position:relative; height:40px; width:40px; display:block; background:#ccc; color:#fff; padding:0 0 0 7px; font-weight:bold; font-size:13px; margin:0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.ranking_list_widget .num:after {
  position:absolute; display:block; content:''; width:0; right:0px; top:0px;
  height:0; border-style: solid; border-width:0 0 40px 40px; border-color:transparent transparent #fff transparent;
}
.ranking_list_widget .title { margin:13px 0 0 0; }

/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color: #fff;}
.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: 15px; }
.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 { 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; }
.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:14px; cursor:pointer;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-appearance:none; appearance:none;
}
.widget_archive .screen-reader-text, .widget_categories .screen-reader-text  {
	display:block; clip:auto; clip-path:none; pointer-events:none;
	height:60px; width:50px; margin:0;
	left:calc(100% - 50px); text-indent:-100vw;
}
.widget_archive .select_wrap,.widget_categories .select_wrap{
  position: relative;
}
.widget_archive .select_wrap:before, .widget_categories .select_wrap:before {
  font-family:'design_plus'; content:'\e90e'; text-align:center; text-indent:0;
  display:block; font-size:14px; width:14px; height:14px; line-height:14px;
  position:absolute; right:15px; top:25px;
}

/* カレンダー */
#calendar_wrap { padding: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; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#aaa; }
#wp-calendar #today { font-weight:600; }
.wp-calendar-nav { font-size:14px; padding:20px 0; width:100%; font-size:14px; }
.wp-calendar-nav .wp-calendar-nav-prev { width:40%; float:left; }
.wp-calendar-nav .wp-calendar-nav-next { width:40%; float:right; text-align:right; }


/* デフォルトのギャラリー */
.widget_media_gallery .gallery-caption {
  background-color:#000; color:#fff; font-size:12px; line-height:1.5; margin:0 0 2.5px; max-height:50%;  transform: translateY(50%);
  opacity:0; padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.widget_media_gallery .gallery-item { margin-top:0 !important; }
.widget_media_gallery .gallery-item img{border: none!important;}
.widget_media_gallery .gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%;  }
.widget_media_gallery .gallery-item:hover .gallery-caption { opacity: .7; transition: all .25s ease; transform: translateY(0%);}


/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { font-size:12px; margin:0; }
#comment_headline { font-size:16px; margin:50px 0 20px 0; }
#comment_area, #trackback_area { margin:15px 0 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


/* コメント・トラックバックのタブ */
#comment_header { position:relative; margin:0 0 25px; }
#comment_header ul { margin:0; }
#comment_header ul li { float:left; text-align:center; margin:0; width:50%; }
#comment_header ul li a, #comment_header ul li p { font-size:11px; padding:18px 15px; line-height:1.6; display:block; color:#333; text-decoration:none; background:#f2f2f2; }
#comment_header ul li a:hover { color:#fff !important; background:#333; }
#comment_header ul li.comment_switch_active a, #comment_header #comment_closed p { color:#fff; position:relative; background:#afcfd2; }
#comment_header ul li.comment_switch_active a:after, #comment_header #comment_closed p:after {
  position:absolute; bottom:-17px; left:-webkit-calc(50% - 5px); left:calc(50% - 5px);
  content:""; width:0; height:0; border-width:10px; border-style:solid; border-color:#afcfd2 transparent transparent transparent;
}
#comment_header ul li.comment_switch_active a:hover { }


/*  コメントの基本部分 */
.commentlist { list-style-type:none; margin:0; padding:0; }
.comment { border:1px solid #ccc; color:#777; margin:0 0 15px; padding:15px 20px 0; background:#fff; }
#comments .post_content { margin:20px 0 0; padding:0; background:none; }
.admin-comment { }


/* コメントの情報部分 */
.comment-meta { position:relative; margin:0 0 10px 0; }

.comment-meta-left { float:left; width:400px; }
#comments .avatar { float:left; margin:0 10px 0 0; background:#fff; width:40px; height:40px; }
.comment-name-date { padding:3px 0 0 0; height:37px; }

a.admin-url { text-decoration:underline; }
a.guest-url { text-decoration:underline; }

.comment-name-date { margin:0; }
.comment-date { font-size:11px; color:#757676; margin:10px 0 0 0; }

.comment-act { background:url(img/common/arrow3.gif) no-repeat left; font-size:11px; position:absolute; right:0px; padding:0 0 0 10px; margin:5px 0 0 0; }
.comment-act li { display:inline; margin:0; }
.comment-reply a, .comment-reply a:visited { border-right:1px solid #aaa; padding:0 10px 0 0; margin:0 6px 0 0; }
.comment-edit a, .comment-edit a:visited { border-left:1px solid #aaa; padding:0 0 0 10px; margin:0 0 0 6px; }


/* コメント本文 */
#comments .post_content p { margin:0 0 15px 0; }
#comments .post_content blockquote span { margin:0 0 -1em 0; display:block; }


/* メッセージ、警告文 */
.comment-note { display:block; font-size:11px; margin:0 0 1em 0; color:#33a8e5; border:1px solid #94ddd4; padding:10px 15px; background:#d6f4f0; }
.comment_closed { border:1px solid #ccc; text-align:center; margin:0 35px 15px 0; padding:15px; background:#fefefe; }
.no_comment { padding-bottom:15px; }


/* トラックバック */
.trackback_time { font-size:11px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:1.6; }

#trackback_url_area { margin:0; }
#trackback_url_area label { display:block; margin:0 0 10px 0; font-size:11px; }
#trackback_url_area input {
  border:1px solid #ccc; background:#fafafa; padding:10px; width:100%; font-size:11px;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}


/* ページナビ */
#comment_pager { margin:0 0 10px; height:24px; }
#comment_pager a, #comment_pager span { display:inline; float:left; margin:0 10px 0 0; }
#comment_pager .current { text-decoration:underline; }


/* コメントフォーム */
.comment_form_wrapper { border:1px solid #ccc; margin:0 0 0px; padding:15px; background:#fff; }
.comment .comment_form_wrapper { margin:0 0 20px; }

#cancel_comment_reply  { background:url(img/common/arrow3.gif) no-repeat left center; margin:0 0 1em 0; padding:0 0 0 10px; }

#comment_user_login p { padding:0 0 0 1px; margin:0; line-height:1; }
#comment_user_login span { margin:0 0 0 40px; }

#comment_login { margin:0; padding:3px 30px 10px 30px; }
#comment_login p { margin:0; padding:12px 0 11px 36px; line-height:1; }
#comment_login a { margin:0 0 0 20px; padding:0 0 0 20px; background:url(img/common/arrow3.gif) no-repeat 10px 3px; }

#guest_info { padding:0; width:100%; }
#guest_info div { margin:0 0 12px 0; text-align:left; }
#guest_info input { margin:0; padding:5px 0; border:1px solid #ccc; width:100%; background:#fff; color:#777; }
#guest_info input:focus { border:1px solid #e48898; }
#guest_info label { display:block; margin:0 0 5px 0; padding:0 0 0 0; font-size:11px; color:#888;}
#guest_info span { margin:0 10px 0 0; }

#comment_textarea textarea { margin:15px 0 0; width:100%; height:150px; border:1px solid #ccc;
                             background:#fff; color:#777; font-size:11px; overflow:auto; }
#comment_textarea textarea:focus { border:1px solid #e48898; }

#submit_comment_wrapper { text-align:center; }
#submit_comment {
  background:#ccc; border:none; cursor:pointer; color:#fff; 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; }

#input_hidden_field { display:none; }


/* パスワード保護 */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:12px; margin:0; line-height:1.6; }


/* パスワード保護 */
.c-pw__desc, .c-pw__desc p { line-height:2.5; }
.c-pw__desc p { margin-bottom:16px; }
.c-pw__btn { box-sizing: border-box; color: #fff; display: inline-block; padding: 13px 20px; font-size:14px; text-align:center; line-height:1; }
.c-pw__btn:hover { background: #333; color: #fff; }
.c-pw__btn--register { min-width: 160px; margin-bottom:32px; }
.c-pw__btn--submit { min-width: 100px; border:0; cursor:pointer; }
.c-pw .c-pw__btn:hover { text-decoration: none; }
.c-pw__box { border:1px solid #ddd; background:#f5f5f5; padding: 25px 36px; display:inline-block; margin-bottom:40px; box-sizing: border-box; }
.c-pw__box .c-pw__box-desc { line-height:1.2; margin-bottom: 20px; }
.c-pw__box-label { margin-right: 14px; }
.c-pw__box-input { border:1px solid #ddd; box-shadow:none; height:40px; width:250px; margin-right: 13px; flex: 1; box-sizing: border-box; padding: 0 10px; }

.post_content .c-pw__btn, .post_content .c-pw__btn:hover { color: #fff; }


/* Cardlink style - カードリンクのスタイル */
.cardlink { display: flex; align-items: center; gap:25px; word-wrap:break-word; max-width:100%; margin:15px 0 2em !important; padding:20px; border:1px solid #ddd; background:#fafafa; }
.cardlink_thumbnail { width: 120px; height:120px }
.cardlink_thumbnail img { width:100%; height:100%; object-fit:cover; }
.cardlink_content { flex:1; line-height:1.6; }
.cardlink_content p { color:#000; margin-bottom:.5em; line-height:1; }
.cardlink_timestamp { display: block; margin:0; padding:0; color:#222; font-size:12px; line-height:1; margin-bottom:13px; }
.cardlink_title { margin:-3px 0 5px; font-size:16px; font-weight: 600; }
.cardlink_title a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow:hidden; color:#000; font-weight:bold; text-decoration:none; max-height: 1.6em; }
.cardlink_title a:hover { text-decoration:none; }
.cardlink_excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow:hidden; color:#000; font-size:14px; line-height:1.9; max-height: 3.8em; }
.cardlink_footer { display: none; }
.clear { clear:both; }
@media screen and (max-width: 767px) {
  .cardlink_timestamp { display:none; }
}
@media screen and (max-width: 567px) {
  .cardlink { gap:15px; padding:15px 11px 12px 13px; }
  .cardlink_thumbnail { width: 100px; height:100px; }
  .cardlink_title { margin-top:-5px; font-size:14px; }
}


/* Google Mapの設定 */
.p-btn {
  -webkit-box-sizing: border-box; box-sizing: border-box;
  display: inline-block; min-width: 180px; height: 50px; padding: 0 15px; border-radius: 0;
  color: #fff; font-size: 14px; line-height: 50px; text-align: center;
}
@media screen and (max-width: 767px) {
  .p-btn { height: 45px; font-size: 12px; line-height: 45px; }
}

/** ブロックエディターのテーブルブロックの調整 **/
.wp-block-table.is-style-stripes td,
.wp-block-table .has-background td{
  background-color: transparent;
}

/* ----------------------------------------------------------------------
埋め込みブロックのmarigin調整
---------------------------------------------------------------------- */
.wp-block-embed { margin-bottom: 2em; }

/* ----------------------------------------------------------------------
 上付き文字、下付き文字
---------------------------------------------------------------------- */
sup {
  vertical-align: super;
  font-size: smaller;
  }
  sub {
  vertical-align: sub;
  font-size: smaller;
  }

  /* ----------------------------------------------------------------------
 長いURLなどがはみ出る現象
---------------------------------------------------------------------- */
.post_content p { word-wrap: break-word; }

#single_share_top {
  margin-bottom: 40px !important;
  padding: 0;
}
#single_share_bottom {
  margin-bottom: 40px !important;
}
.entry-date  {
  font-family: 'Arial';
}

@media screen and (max-width: 991px) {
#header_logo {
  height: 100%;
}
#logo_text {
  height: 100%;
  display: flex;
  align-items: center;
  margin-left: 15px;
}
}