@charset "utf-8";
/*
Theme Name:VIEW
Theme URI:https://tcd-theme.com/tcd032
Description:WordPress theme "VIEW" was developed for gallery websites. It is designed to maximize eye catching images. You can use the gallery slider to represent multiple images on the blog page as well.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-view
Version:3.0
*/

/* --------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */
@font-face {
    font-family: 'design_plus';
    src: url('fonts/design_plus.eot?v=1.1');
    src: url('fonts/design_plus.eot?v=1.1#iefix') format('embedded-opentype'),
         url('fonts/design_plus.woff?v=1.1') format('woff'),
         url('fonts/design_plus.ttf?v=1.1') format('truetype'),
         url('fonts/design_plus.svg?v=1.1#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.0#tiktok_x_icon') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* アイコンフォント */
.icon-arrow-right:before {
  content: "\e910";
}

.icon-file-text:before {
  content: "\f15c";
}

.icon-share-alt:before {
  content: "\f1e0";
}

.icon-phone:before {
  content: "\f095";
}

.icon-envelope:before {
  content: "\f0e0";
}

.icon-tag:before {
  content: "\f02b";
}

.icon-pencil:before {
  content: "\f040";
}

.icon-close:before {
  content: "\e91a";
}




/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video
 { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
audio, canvas, video { display:inline-block; max-width:100%; }
html { overflow-y: scroll; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
img { -ms-interpolation-mode:bicubic; max-width:100%; }

iframe { max-width: 100%; }

/* clearfix */
.clearfix:after { content: "."; display:block; clear:both; height:0; font-size:0.1em; line-height:0; visibility:hidden; overflow:hidden; }
.clearfix { display:inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height:1% }
.clearfix { display:block;}
/* end MacIE5 */




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; color:#333; line-height:1; width:100%; }
.pc .admin-bar { padding-top:33px; }
a { color:#333; text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
}
a:hover { /*text-decoration:underline;*/ }
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#header { min-width:1200px; background:#fff; position: relative; overflow: hidden; }
/*#header_inner { width:1200px; margin:0 auto; padding:28px 0 28px; position:relative; }*/
#header_inner { height:145px; width:1200px; margin:0 auto; position:relative; }
#contents { min-width:1200px; background:#F0F2F3; position: relative; }
#contents_inner { width:1200px; margin:0 auto; padding:38px 0 80px; }
#main_col { width:820px; float:left; }
#side_col { width:300px; float:right; background:#fff; padding:25px; }
.page-template-page-noside #main_col { width:1200px; float:none; }
.page_404 #contents_inner{ position: relative; z-index: 10; }
.page_404 #main_col{ width: 100%; margin: -38px auto -80px; min-height: 450px; display: flex; align-items: center; text-align: center; }
.page_404 #main_col .page_404_contents{ margin: 0 auto; padding: 50px 0; color: #fff; }
.page_404 #contents_inner.no_bg .page_404_contents{ color: #000; }
.page_404 #main_col .page_404_contents h2{ font-size: 42px; line-height: 1.4; font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; }
.page_404 #main_col .page_404_contents div{ font-size: 16px; line-height: 2; margin-top: 15px; font-family: Arial, "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; }
.page_404 .page_404_overlay{ width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 1; }


/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */

/* グローバルメニュー */
.pc #global_menu { position:relative; z-index:100; background:#222222; min-width:1200px; }
.pc #global_menu > ul { height:55px; width:1200px; margin:0 auto; text-align:center; font-size:0; }
.pc #global_menu > ul > li { display:inline-block; min-width:150px; font-size:1%; vertical-align:middle; position:relative; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.pc #global_menu > ul > li:nth-child(9n), .pc #global_menu > ul > li:nth-child(10n), .pc #global_menu > ul > li:nth-child(11n), .pc #global_menu > ul > li:nth-child(12n)
.pc #global_menu > ul > li:nth-child(13n), .pc #global_menu > ul > li:nth-child(14n), .pc #global_menu > ul > li:nth-child(15n)
  { display:none; }
.pc #global_menu > ul > li a { color:#fff; background:#222222; height:55px; line-height:55px; font-size:12px; text-decoration:none; display:block; text-align:center; }
.pc #global_menu li a:hover { background:#6bb8e4; text-decoration:none; }
.pc #global_menu > ul > li.active > a { background:#6bb8e4; }

.pc #global_menu ul ul { display:none; width:220px; position:absolute; top:55px; left:0px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0 0 0 -1px; border:none; }
.pc #global_menu ul ul li { width:220px; line-height:150%; padding:0; margin:0; text-align:left; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; position:relative; }
.pc #global_menu ul ul a { display:block; font-size:12px; background:#6bb8e4; position:relative; padding:14px 20px 12px 20px; height:auto; line-height:160%; margin:0; text-align:left; box-shadow:none; color:#fff; }
.pc #global_menu ul ul a:hover { background:#457694; color:#fff; text-decoration:none; }

.pc #global_menu li.hide_menu { display:none; }

.menu_button { display:none; }


/* メニューをページ上部に固定 */
.pc .header_fixed #global_menu { position:relative; top:0px; }

.pc .header_slide_down #global_menu {
  position:fixed; width:100%; box-shadow:0 0 5px 0 rgba(0,0,0,0.5); top:0px;
  animation: slideDown 0.5s ease; -ms-animation: slideDown 0.5s ease; -webkit-animation: slideDown 0.5s ease; -moz-animation: slideDown 0.5s ease;
}
.pc .header_slide_down { padding-top:55px; }

@keyframes slideDown {
  0% { top:-55px; }
  100% { top:0px; }
}
.pc .header_slide_up #global_menu {
  position:fixed; width:100%; box-shadow:0 0 5px 0 rgba(0,0,0,0.5); top:-55px;
  animation: slideUp 0.5s ease; -ms-animation: slideUp 0.5s ease; -webkit-animation: slideUp 0.5s ease; -moz-animation: slideUp 0.5s ease;
}
@keyframes slideUp {
  0% { top:0px; }
  100% { top:-55px; }
}


/* ロゴ */
.pc #logo_text { height: 100%; }
.pc #logo_text #logo { float:left; font-size:26px; font-weight:normal; height: 100%; display: flex; align-items: center;}
.pc #logo_text #logo a { display:block; -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none; }
.pc #logo_text #logo a:hover { }
.pc #logo_text #tagline { font-size:12px; font-weight:normal; }
.pc #logo_image #logo { position:absolute; float:left; margin:0; padding:0; line-height:100%; }
.pc #logo_image #logo img { display:block; }


/* バナー */
#header_banner_area { position:absolute; right:0px; top:28px; }
#header_banner_area a { }
#header_banner_area a img { display:block; max-width:100%; }


/* パンくずリンク */
#bread_crumb { padding:0 0 30px; margin:0 auto; }
#bread_crumb li.home a {
  float:left; height:15px; width:0px; line-height:15px; display:block; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#bread_crumb li.home a:before {
  font-family:'design_plus'; color:#666; font-size:14px; display:block; position:absolute; top:2px; left:0px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home:after { display:none; }
#bread_crumb li.home a:before { content:'\e90c'; }
#bread_crumb li.home a:hover:before { color:#fff; }
#bread_crumb li { color:#666; font-size:12px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:160%; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#666; font-size:9px; display:block; position:absolute; left:-20px; top:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#666; }
#bread_crumb li a:hover{ text-decoration: none; }


/* 言語ボタン */
.pc #header_lang { position:absolute; right:0px; top:0px; font-size:14px; z-index:20; font-family: Arial !important; z-index: 999; }
.pc #header_lang.type1 li { float:left; margin:0 0 0 0; }
.pc #header_lang.type1 li a { display:block; height:55px; line-height:55px; position:relative; overflow:hidden; padding: 0 10px; }
.pc #header_lang.type1 li a:before {
  display:block; content:''; height:6px; width:100%; position:absolute; bottom:-6px; left:0px;
  -webkit-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
.pc #header_lang.type1 li a:hover:before { bottom:0; }
.pc #header_lang.type1 img { display:inline-block; width:20px; height:20px; border-radius:100%; position:relative; margin:-3px 5px 0 0; vertical-align: middle; }
.pc #header_lang.type1 .button { display:none; }
.pc #header_lang a.active_site { pointer-events:none; }
.pc #header_lang.type2 ul { }
.pc #header_lang.type2 ul ul { display:none; position:absolute; top:55px; right:0px; width:auto; }
.pc #header_lang.type2 ul li { position:relative; width: auto; }
.pc #header_lang.type2 ul ul a { display:block; height:auto; line-height:1.6; padding:14px 25px 14px; font-size:14px; text-align:center; }
.pc #header_lang.type2 ul ul a:hover { }
.pc #header_lang.type2 > ul > li > a { display:block; height:55px; line-height:55px; padding:0 25px; background:none !important; position:relative; overflow:hidden; }
.pc #header_lang.type2 > ul > li > a:hover { }
.pc #header_lang_button { display:none; }
.pc #header_lang.type2 img { display:block; width:20px; height:20px; border-radius:100%; position:absolute; left:25px; top:0px; bottom:0px; margin:auto; }
.pc #header_lang.type2 a.has_flag { padding-left:55px; }
.pc #header_lang.type1 img,
.pc #header_lang.type2 .active_site img { border: 2px solid #ddd; }


/* post num */
.posts_num{ display: flex; align-items: center; position: absolute; right: -1px; top: 28px; border: 1px solid #ddd; width: 70px; height: 70px; padding: 5px; overflow: hidden; font-size: 14px; color: #000; background: #fff; line-height: 1.3;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translateX(90px); transform: translateX(90px);
  }
  .posts_num.active{ -webkit-transform: translateX(0px); transform: translateX(0px); }
.posts_num div{ display: block; width: 100%; text-align: center; }
.posts_num span{ font-size: 20px; font-weight: 600; color: #FE7F00; }

/* ----------------------------------------------------------------------
 トップページ、アーカイブページ
---------------------------------------------------------------------- */


/* ヘッダースライダー */
#header_slider { width:100%; min-width:1200px; height:500px; overflow:hidden; position:relative; background:#fff; }
#header_slider .item { opacity:0; width:100%; height:500px; 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:1200px; height:500px; margin:0 auto; 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 .title.font_style_type1 { font-family: Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, sans-serif; }
#header_slider .caption .title.font_style_type2 { font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; font-weight:500; }
#header_slider .caption .title.font_style_type3 { font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; 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'; 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 .link { display:block; width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:4; }
#header_slider .overlay { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:2; }
#header_slider video { position:absolute; top:0; display:block; height:auto; width:100%; max-width:inherit; }
#header_slider .image-entity { width:100%; height:auto; opacity:0; }
.youtube-player { position:absolute; top:0; opacity:0; pointer-events:none; }


/* ナビゲーション */
/*#header_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); }
}


/* トップページのNEWS */
#index_news { max-width:1200px; height:55px; background:#fff; overflow:hidden; font-size:12px; margin:0 0 38px 0; }
#index_news .headline { width:132px; height:55px; line-height:55px; text-align:center; float:left; }
#index_news .newsticker { position: relative; overflow: hidden; width:878px; height:55px; margin:0; float:left; }
#index_news ol { margin:0; position:absolute; top:0px; }
#index_news ol li { height:55px; overflow:hidden; }
#index_news ol .date { width:90px; height:55px; line-height:55px; display:block; color:#6db8e2; float:left; }
#index_news ol .title { width:770px; height:55px; line-height:55px; display:block; float:left;  }
#index_news .link {
  text-decoration:none; width:190px; height:55px; line-height:55px; display:block; background:#bbb; color:#fff; float:right; padding:0 20px; text-align: center;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  position: relative; overflow: hidden;
}

#index_news .link:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#index_news .link:before { content:'\e910'; top:1px; right:19px; }


/* アーカイブページの見出し */
.archive_headline { max-width:1160px; padding:0 20px; height:50px; line-height:50px; background:#6bb8e4; color:#fff; font-size:16px; margin:0 0 38px 0; }
#category_desc { margin:-20px 0 38px 0; font-size: 14px; }


/* 記事一覧（トップページ） */
#post_list_type1 { width:100%; overflow:hidden; position:relative; padding-bottom:62px; }
#post_list_type1 #post_list { position:relative; /*margin:0 -13px 0 0;*/ margin: 0; padding:0; text-align:left; }
#post_list_type1 #post_list > li {
	margin:0 4px 13px 4px; width:290px; height:280px; background:#fff; position: relative;
	/*display:inline-block;*/
	float: left;
	width: calc((100% - 24px)/4);
}
/*@media screen and (min-width:1200px) {*/
@media screen and (min-width:1204px) {
/*
  #post_list_type1 #post_list > li:nth-child(4n-3) { margin:0 4px 13px 0; }
  #post_list_type1 #post_list > li:nth-child(4n) { margin:0 0px 13px 4px; }
*/
  #post_list_type1 #post_list > li:nth-of-type(4n-3) { margin:0 4px 13px 0; }
  #post_list_type1 #post_list > li:nth-of-type(4n) { margin:0 0px 13px 4px; }
}
#post_list_type1 #post_list li .title { font-size:12px; -ms-word-wrap:break-word; word-wrap:break-word; }
#post_list_type1 #post_list li .title a { display:block; /*width:270px;*/ width: 100%; box-sizing: border-box; height:60px; line-height:60px; overflow:hidden; text-align:center; padding:0 10px; text-decoration:none; }
#post_list_type1 #post_list li .title a:hover { color:#fff; background:#222; }
#post_list_type1 #post_list .image a { color:#fff; }
#post_list_type1 #post_list .excerpt a { display:block; }


/* 記事一覧（アーカイブページ） */
#post_list_type2 { width:100%; overflow:hidden; position:relative; padding-bottom:62px; }
#post_list_type2 #post_list { position:relative; /*margin:0 -13px 0 0;*/ padding:0; text-align:left; }
#post_list_type2 #post_list > li { margin:0 4px 13px 4px; /*width:290px;*/ height:386px; background:#fff; position: relative; /*display:inline-block;*/ float: left; width: calc((100% - 24px)/4); }
/*@media screen and (min-width:1200px) {*/
@media screen and (min-width:1204px) {
/*
  #post_list_type2 #post_list > li:nth-child(4n-3) { margin:0 4px 13px 0; }
  #post_list_type2 #post_list > li:nth-child(4n) { margin:0 0px 13px 4px; }
*/
  #post_list_type2 #post_list > li:nth-of-type(4n-3) { margin:0 4px 13px 0; }
  #post_list_type2 #post_list > li:nth-of-type(4n) { margin:0 0px 13px 4px; }
}
#post_list_type2 #post_list > li.no_desc { height:280px; }
#post_list_type2 #post_list li .title { font-size:12px; -ms-word-wrap:break-word; word-wrap:break-word; }
#post_list_type2 #post_list li .title a { display:block; /*width:270px; */ width: 100%; box-sizing: border-box; height:60px; line-height:60px; overflow:hidden; text-align:center; padding:0 10px; text-decoration:none; }
#post_list_type2 #post_list li .title a:hover { color:#fff; background:#222; }
#post_list_type2 #post_list .excerpt { margin:0 20px; border-top:1px solid #ddd; padding:20px 0; line-height:180%; height:47px; overflow:hidden; font-size:12px; }
#post_list_type2 #post_list .excerpt a { display:block; }
#post_list_type2 #post_list .image a { color:#fff; }


/* 記事一覧の上にフェードインするエフェクト */
#post_list .article {
  position: relative;
  display:inline-block;
}
#post_list .article.active {
  position: relative;
  display:inline-block;
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
	-webkit-animation: moveUp 0.65s ease forwards;
	animation: moveUp 0.65s ease forwards;
  opacity:1;
}
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}


/* サムネイルをオンマウスした時のアニメーション */
#post_list li .image { position:relative; display:block; overflow:hidden; text-align:center; /*width:290px;*/ width: 100%;  height:220px; background:#000; }
#post_list li .image img {
	position:relative; display:block; max-width:none; width: -webkit-calc(100% + 20px); width: calc(100% + 20px); height: 100%;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(-10px,0,0); transform: translate3d(-10px,0,0);
	-webkit-backface-visibility: hidden; backface-visibility: hidden;object-fit: cover;
}
#post_list li .image:hover img {
	opacity:0.4;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

#post_list li .image .desc { text-align:left; -webkit-backface-visibility:hidden; backface-visibility:hidden; position:absolute; bottom:0; left:0; width:100%; height:auto; color:#fff; }
#post_list li .image .desc::before, #post_list li .image .desc::after { pointer-events:none; }
#post_list li .image .desc.no_meta { bottom:auto; text-align:center; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }

#post_list li .image ul li { line-height:160%; height:20px; overflow:hidden; margin:0 0 10px 0; }
#post_list li .image ul li.date { }
#post_list li .image ul li.category { background:url(img/common/icon_category.png) no-repeat 2px 3px; padding:0 0 0 24px; }
#post_list li .image ul li.link { background:url(img/common/icon_link.png) no-repeat left 3px; padding:0 0 0 24px; }

#post_list li .image ul {
	position:relative; overflow:hidden; padding:15px 20px; opacity:0; height:80px; font-size:12px;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: translateX(-100%); transform: translateX(-100%);
}
#post_list li .image:hover ul {
	opacity:1;
	-webkit-transform: translateX(0); transform: translateX(0);
}

#post_list li .image ul::after {
	position:absolute; bottom:0; left:0; width:100%; height:1px;
	background: #fff; background:rgba(255,255,255,0.6);
	content:'';
	-webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
	-webkit-transform: translate3d(-100%,0,0); transform: translate3d(-100%,0,0);
}
#post_list li .image:hover ul::after {
  -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
}

#post_list li .image p.excerpt {
	padding:15px 0; margin:0; line-height:160%; opacity:0; font-size:12px;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: translateX(100%); transform: translateX(100%);
}
#post_list li .image:hover p.excerpt {
	opacity:1;
	-webkit-transform: translateX(0); transform: translateX(0);
}
#post_list li .image p.excerpt a { padding:0px 20px; height:40px; overflow:hidden; }


/* type2用 */
#post_list_type2 #post_list li .image ul { padding:70px 20px 10px; box-sizing: inherit; height: auto; }
#post_list_type2 #post_list li .image ul::after { display:none; }


/* ローディングボタン */
#load_post { text-align:center; padding:30px 0 0 0; height:60px; position:relative; }
#load_post a { font-size:12px; color:#fff; display:inline-block; background-color: #bbb; text-decoration:none; height:50px; line-height:50px; width:250px; text-align:center; position: relative; }
#load_post a:hover { color:#fff; background:#6bb8e4; }

#load_post a:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#load_post a:before { content:'\e90e'; top:1px; right:19px; }

#infscr-loading {
  z-index:9999; color:#fff; text-align:center; position:fixed; top:50%; left:50%; transform: translate(-50%, -50%); display:block; padding:20px 50px;
  background:rgba(0,0,0,0.8); border:1px solid #111; box-shadow:0 0 4px 0 rgba(0,0,0,0.2);
}
#infscr-loading img { display:block; margin:0 auto 8px; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */

#article { background:#fff; padding:30px; margin:0 0 30px 0; }

/* 日付 */
#post_date_headline { margin:-30px -30px 30px; background:#6bb8e4; color:#fff; padding:0 30px; height:45px; line-height:45px; font-size:14px; }

/* 記事タイトル */
#post_title { padding:0; margin:0 0 30px 0; font-size:21px; line-height:160%; word-wrap: break-word;}

/* ギャラリー */
#post_image { margin:0 0 30px 0; }
#gallery { width:760px; }
#gallery img { display:block; width:760px; height:auto; }
.flex-direction-nav { z-index:2; position:relative; height:100%; }
.flex-direction-nav a { display:block; width:60px; height:60px; background:#fff; text-indent:-400px; overflow:hidden; }
.flex-nav-prev a { background:rgba(0,0,0,0.4) url(img/common/arrow_left.png) no-repeat 20px 20px; position:absolute; left:0px; top:calc(50% - 30px); }
.flex-nav-next a { background:rgba(0,0,0,0.4) url(img/common/arrow_right.png) no-repeat 25px 20px; position:absolute; right:0px; top:calc(50% - 30px); }
.flex-direction-nav a:hover { background-color:#222; }
.flex-direction-nav{ top: 0 !important; }

#image_meta { padding:15px 20px; margin:0; background:#222222; color:#fff; }
#image_meta p { font-size:12px; width:350px; float:left; margin:0; line-height:160%; }
#image_meta ul { width:350px; float:right; margin:0; }
#image_meta li a { color:#fff; }
#image_meta li { float:right; margin:0 0 0 20px; padding:0 0 0 0; line-height:160%; font-size:12px; }
#image_meta li.category { background:url(img/common/icon_category.png) no-repeat 2px 3px; padding:0 0 0 24px; }
#image_meta li.link { background:url(img/common/icon_link.png) no-repeat left 3px; padding:0 0 0 24px; }


/* SNSボタン */
#single_share { margin:0 0 10px 0; }


/* アイキャッチ画像 */
.post_image { padding:0; margin:0 0 25px 0; }
.post_image img { width:100%; height:auto; display:block; margin:0; }


/* 記事エリア */
.post_content { }


/* ページ分割 */
#post_pagination { margin:0 0 50px 0; clear:both; }
#post_pagination h5 { margin:0 0 10px 0; font-size:12px; }
#post_pagination a, #post_pagination p { float:left; display:inline-block; background:#eee; margin:0 5px 0 0; width:35px; height:35px; line-height:35px; text-align:center; text-decoration:none; color:#333; font-size:12px; }
#post_pagination p { background:#666; color:#fff; }
#post_pagination a:hover { color:#fff; }


/* メタ情報 */
#post_meta_bottom { margin:0 0 30px 0; background:#fafafa; padding:20px; }
#post_meta_bottom li { display:inline; margin:0 10px 0 0; padding:0 10px 0 0; border-right:1px solid #ddd; font-size:12px; line-height:160%; }
#post_meta_bottom li:last-child { border:none; margin:0; padding:0; }
#post_meta_bottom li.post_category { background:url(img/common/icon_category2.png) no-repeat left top; padding-left:20px; }
#post_meta_bottom li.post_tag { background:url(img/common/icon_tag.png) no-repeat left 1px; padding-left:20px; }
#post_meta_bottom li.post_author { background:url(img/common/icon_author.png) no-repeat left 1px; padding-left:20px; }
#post_meta_bottom li.post_comment { background:url(img/common/icon_comment.png) no-repeat left 1px; padding-left:18px; }


/* 次の記事、前の記事リンク */
#previous_next_post { }
#previous_next_post img { max-width: none;}
#previous_next_post .prev_post { float:left; width:375px; margin:0; line-height:100%; }
#previous_next_post .next_post { float:right; width:375px; margin:0; line-height:100%; }
@media screen and (max-width:1240px) {
  #previous_next_post .prev_post { float:none; margin:0 auto 10px; }
  #previous_next_post .next_post { float:none; margin:10px auto 0; }
}
#previous_next_post a {
  display:block; font-size:13px; width:375px; height:95px; position:relative; background:#000; overflow:hidden;
 -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post img {
  display:block; width:375px; height:auto; opacity:0.6; position:absolute; top:0px; left:0px; z-index:5;
  width: -webkit-calc(100% + 20px); width: calc(100% + 20px);
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s; transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0);
	-webkit-backface-visibility: hidden; backface-visibility: hidden;
}
#previous_next_post .next_post img { left:-10px; }
#previous_next_post .prev_post a:hover img {
	-webkit-transform: translate3d(-10px,0,0); transform: translate3d(-10px,0,0);
}
#previous_next_post .next_post a:hover img {
	-webkit-transform: translate3d(10px,0,0); transform: translate3d(10px,0,0);
}
#previous_next_post .title {
  display:block; width:375px; height:20px; line-height:20px; overflow:hidden; padding:0 40px; position:absolute; top:38px; left:0px; text-align:center; z-index:10; color:#fff;
 -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post .prev_post .title:before { position:absolute; left:20px; top:2px; content:''; display:block; width:11px; height:18px; /*background:url(img/common/arrow_left.png) no-repeat left top;*/ }
#previous_next_post .next_post .title:before { position:absolute; right:20px; top:2px; content:''; display:block; width:11px; height:18px; /*background:url(img/common/arrow_right.png) no-repeat left top;*/ }

#previous_next_post .next_post .title:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_post .next_post .title:before { content:'\e910'; top:1px; right:19px; }

#previous_next_post .prev_post .title:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_post .prev_post .title:before { content:'\e90f'; top:1px; right:19px; }


#previous_next_post .prev_post a:hover .title:before {
  animation: move1 1.0s ease infinite;
  -ms-animation: move1 1.0s ease infinite;
  -webkit-animation: move1 1.0s ease infinite;
  -moz-animation: move1 0.7s ease infinite;
}
@keyframes move1 {
  0% { left:20px; }
  50% { left:15px; }
  100% { left:20px; }
}
#previous_next_post .next_post a:hover .title:before {
  animation: move2 1.0s ease infinite;
  -ms-animation: move2 1.0s ease infinite;
  -webkit-animation: move2 1.0s ease infinite;
  -moz-animation: move2 0.7s ease infinite;
}
@keyframes move2 {
  0% { right:20px; }
  50% { right:15px; }
  100% { right:20px; }
}


/* 広告 */
#single_banner_area { text-align:center; background:#F0F2F3; border:30px solid #fff; padding:30px 0; margin:0 0 30px 0; }
#single_banner_area div { display:inline; margin:0 23px; }
#single_banner_area div img { max-width:100%; height:auto; }


/* 関連記事 */
#related_post { overflow:hidden; position: relative;text-align: center;}
#related_post .headline { background:#6bb8e4; color:#fff; height:50px; line-height:50px; font-size:14px; padding:0 17px; margin:0 0 20px 0; }
#related_post ol { margin:0 -20px 0 0; position:relative; display: flex; flex-wrap:wrap; }
#related_post li { display: block;width:190px; height:292px; margin:0 20px 20px 0; position:relative; background:#fff; }
#related_post ol li:nth-child(4n){ margin-right:0; }
#related_post li .image { margin:0 15px 0 0; display:block; width:190px; height:135px; overflow:hidden; }
#related_post li a.image img {
  width:190px; height:135px;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);object-fit: cover;
}
#related_post li .image:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
#related_post li .title { font-size:12px; line-height:150%; margin:0; padding:15px; height:38px; overflow:hidden; text-decoration:none; text-align: left; }
#related_post li .title a { display:block; max-height:38px; overflow:hidden; }
#related_post li .excerpt { margin:0 15px; padding:15px 0 0 0; font-size:12px; line-height:180%; max-height:60px; overflow:hidden; border-top:1px solid #ddd; text-align: left; }
#related_post li .excerpt a { display:block; }




/* ----------------------------------------------------------------------
 NEWS
---------------------------------------------------------------------- */

/* 記事ページ */
#single_news_list { background:#fff; padding:30px; }
#single_news_headline { margin:-30px -30px 30px; background:#6bb8e4; color:#fff; padding:0 30px; height:45px; line-height:45px; }
#single_news_list ol { margin:0 0 15px 0; border-bottom:1px solid #ddd; }
#single_news_list li { margin:0 0 20px 0; font-size:13px; }
#single_news_list li .date { float:left; width:100px; display:block; }
#single_news_list li .title { float:left; width:650px; display:block; font-weight:500; }
#single_news_list .link { display:block;  background:url(img/common/arrow6.png) no-repeat left; padding:3px 0 3px 23px; }

/* アーカイブページ */
#news_archive_headline { background:#6bb8e4; color:#fff; padding:0 30px; height:45px; line-height:45px; margin:0 0 35px 0; }
#news_archive #post_list li {
  background:#fff; padding:20px; margin:0 0 20px 0; width:100%;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#news_archive .news_image { margin:0 25px 0 0; display:block; width:330px; height:200px; overflow:hidden; float:left; }
#news_archive .news_image img {
  width:330px; height:200px;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);object-fit: cover;
}
#news_archive .news_image:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
#news_archive .date { font-size:13px; margin:0 0 15px 0; color:#6bb8e4; }
#news_archive .title { font-size:14px; margin:0 0 15px 0; line-height:200%; }
#news_archive .title a { display:block; }
#news_archive .excerpt { font-size:13px; line-height:200%; }




/* ----------------------------------------------------------------------
 Category lists
---------------------------------------------------------------------- */
.page-template-page-category #main_col { width:1200px; float:none; }
.page-template-page-category #main_col #article { padding: 20px 20px 2px; }
#category_list{ display:flex; flex-wrap:wrap; }
#category_list li{ width:calc(33.333333333% - 12px); margin-right: 18px; margin-bottom: 18px; }
#category_list li:nth-child(3n){ margin-right: 0; }
.cate_list_img{ background: #000; }
.cate_list_img img{ display: block; width: 100%; height: auto; }
.cate_list_btns{ height: 50px; display: flex; font-size: 14px; }
.cate_list_name{ display: block; width: 50%; height: 50px; font-weight: normal; }
.cate_list_name a{ display: flex; width: 100%; height:  50px; padding: 0 10px; justify-content: center; align-items:center; overflow: hidden; border: 1px solid #ddd; box-sizing:border-box; }
.cate_list_extra{ display: block; width: 50%; height: 50px; }
.cate_list_extra a{ display: flex; width: calc(100% + 1px); height:  50px; padding: 0 10px; justify-content: center; align-items:center; overflow: hidden; border: 1px solid #ddd; box-sizing:border-box;  margin-left: -1px; z-index: 9998; }

.cate_list_name:last-child{ width: 100%; }
.cate_list_name:last-child a{ width: 100%; padding: 0 20px; justify-content: left; }

.cate_list_name a:hover{ color:inherit; position: relative; z-index: 9999; }
.cate_list_extra a:hover{ color:inherit; }
.cate_list_name:last-child a:hover{ color:inherit; }

/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
.side_widget { margin:0 0 20px 0; font-size:14px; position:relative; }
.side_widget:last-child, .side_widget:only-child  { margin:0; }
.side_widget ul { margin:0; }
.side_widget li ul { margin:10px 0 0 0; }
.side_widget li { line-height:200%; padding:2px 0; margin:0 0 10px 0; }
.side_widget a { }
.side_widget a:hover { }
.side_widget img { height:auto; max-width:100%; }
.side_headline,#side_col .widget_block .wp-block-heading { background:#6bb8e4; color:#fff; height:50px; line-height:50px; font-size:14px; margin:0 0 25px 0; padding:0 20px; font-size:14px; font-weight:bold; }


/* banner */
.ml_ad_widget { margin:0 0 20px 0; border:none; padding:0; background:none; }
.ml_ad_widget img { height:auto; max-width:100%; width:auto; margin:0 auto; display:block; }


/* calendar */
#wp-calendar { margin:0 auto; width:100%; font-size:12px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:2px; line-height:340%; 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:200%; }
#wp-calendar #prev, #wp-calendar #next { line-height:300%; }
#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 */
.styled_post_list1_widget .side_headline { }
.styled_post_list1 { margin:0; }
.styled_post_list1 li+li, #footer_widget_area .styled_post_list1 li +li{
  margin-top: 20px;
}
.styled_post_list1 li, #footer_widget_area .styled_post_list1 li { margin:0 0 20px 0; padding:0; background:none; }
.styled_post_list1 li:last-child, #footer_widget_area .styled_post_list1 li:last-child { margin:0; padding:0; border:none; }
.styled_post_list1 ul li, #footer_widget_area .styled_post_list1 ul li { display:inline; line-height:160%; border:none; }
.styled_post_list1 ul li:last-child, #footer_widget_area .styled_post_list1 ul li:last-child { border-left:1px solid #ccc; margin:0 0 0 5px; padding:0 0 0 7px; }
.styled_post_list1 ul li:only-child, #footer_widget_area .styled_post_list1 ul li:only-child { border:none; margin:0; padding:0; }
.styled_post_list1 .info { margin-top: -5px; }
.styled_post_list1 .title { font-size:13px; margin:0; padding:0; display:block; font-weight:bold; max-height:50px; overflow:hidden; line-height:180%; word-wrap: break-word;}
.styled_post_list1 .date { font-size:12px; line-height:160%; }
.styled_post_list1 .excerpt { font-size:12px; max-height:40px; overflow:hidden; line-height:190%; }
.styled_post_list1 .excerpt a { display:block; }
.styled_post_list1 .image { float:left; display:block; margin:0 15px 0 0; overflow:hidden; width:100px; height:100px; }
.styled_post_list1 .image img {
  width:100px; height:100px;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
}
.styled_post_list1 .image:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}


/* image post list */
.styled_post_list4 .post_type1 .image { display:inline-block; margin:0 0 7px 0; overflow:hidden; width:100%; height:auto; }
.styled_post_list4 .post_type1  .image img {
  width:100%; height:auto; display:block;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
}
.styled_post_list4 .post_type1  .image:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
.styled_post_list4 ol { margin:0; padding:0; position:relative; }
.styled_post_list4 li { float:left; width:95px; height:95px; margin:0 7px 7px 0; padding:0; }
.styled_post_list4 li:nth-child(3n){ margin-right:0; }
.styled_post_list4 li .image { display:inline-block; margin:0; overflow:hidden; width:100%; height:auto; }
.styled_post_list4 li .image img {
  width:100%; height:auto; display:block;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
}
.styled_post_list4 li .image:hover img {
 -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}


/* collapse category list */
.collapse_category_list { border-bottom:1px solid #ccc; }
.collapse_category_list ul { margin:0; padding:0; }
.collapse_category_list li ul { margin:0; padding:0; }
.collapse_category_list li { margin:0; padding:0; }
.collapse_category_list li li { margin:0; padding:0; }
.collapse_category_list li a { border:1px solid #ccc; display:block; padding:10px 15px; text-decoration:none; border-bottom:none; }
.collapse_category_list li a:hover { color:#fff; }
.collapse_category_list .parent_category > a { background:#fff url(img/common/arrow_bottom2.gif) no-repeat 15px 21px; padding-left:27px; }
.collapse_category_list li .parent_category > a { background:#fff url(img/common/arrow_bottom2.gif) no-repeat 26px 21px; padding-left:39px; }
.collapse_category_list .parent_category > a:hover, .collapse_category_list li .parent_category > a:hover
 { background-image:url(img/common/arrow_bottom3.gif); background-repeat:no-repeat; }
.collapse_category_list .children { display:none; }
.collapse_category_list .children a { padding-left:25px; }
.collapse_category_list ul .children a { padding-left:50px; }

/* search */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s, .side_widget.google_search #s { width:260px; height:40px; margin:0 -2px 5px 0; border:1px solid #ccc; background:#f2f2f2; padding:0 10px; box-shadow:2px 2px 3px 0px #ddd inset; }
.widget_search #search-btn input, .widget_search #searchsubmit, .side_widget.google_search #searchsubmit { border:none; width:40px; height:40px; background:#000 url(img/common/icon_search.png) no-repeat center; cursor:pointer; display:block; float:right; text-indent:-300%; overflow:hidden; }
.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .side_widget.google_search #searchsubmit:hover { background-color:#666; }


/* archive category dropdown */
.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select { -webkit-appearance:none; -moz-appearance:none;　appearance:none; }
.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select { background:#222; color:#fff; border:1px solid #fff; padding:12px 10px; width:100%; margin:0; font-size:14px; color: #fff}
.widget_archive label, .widget_categories label { display:none; }
.widget_archive select option, .widget_categories select option, .tcdw_archive_list_widget option { background:#fff; color:#333; }


/* default recent post widget */
.widget_recent_entries li { border-bottom:1px dotted #ccc; padding:0 0 15px 0; }
.widget_recent_entries li:last-child { border:none; padding:0; }

/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color: inherit;}
.widget_rss li { border-bottom:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px;}
.widget_rss li:last-of-type { border:none; }
.widget_rss ul li { padding:20px 0px; border-bottom:1px solid #ddd; margin-top:-1px; display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.widget_rss ul li:not(:first-child) { border-top:1px solid #ddd; }
.widget_rss ul li .rss-date { -ms-flex-order:1; order:1; color:#999; font-size:13px; line-height:1; margin-right:10px; padding:0 0 0 22px; position:relative; }
.widget_rss ul li .rss-date:before {font-family: 'design_plus';
  content: '\e94e';font-size:16px; position:absolute; top:-2px; left:0px; -webkit-font-smoothing: antialiased; }
.widget_rss ul li cite { -ms-flex-order:2; order:2; color:#999; font-size:13px; line-height:1; }
.widget_rss ul li .rsswidget { -ms-flex-order:3; order:3; display:block; width:100%; margin:0; }
.widget_rss ul li .rssSummary { -ms-flex-order:4; order:4; color:#999; font-size:13px; margin: -0.35em 0; }
.widget_rss .rss-date { position:relative; font-family:Arial; }
.widget_rss .rsswidget ~ .rss-date, .widget_rss .rsswidget ~ cite { margin-bottom:10px; }
.widget_rss .rsswidget ~ .rssSummary { margin-top:calc(10px - 0.35em); }
/* デフォルトのタグ一覧 */
.widget_tag_cloud .tagcloud {
	margin: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; margin-top: 0;}
.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; margin-top: 0;}
.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;  margin-top: 0;}
.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; margin-top: 0;}
.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_archive select, .widget_categories select,.tcdw_archive_list_widget select {
	border:1px solid #ddd; background:#fff;  width:100%; height:60px; padding:0 18px; font-size:15px; cursor:pointer;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-appearance:none; appearance:none;color: #000;
}
.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, .tcdw_archive_list_widget .select_wrap{
  position: relative;
}
.widget_archive .select_wrap:before, .widget_categories .select_wrap:before, .tcdw_archive_list_widget .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;
}

/* デフォルトのテキストウィジェット */
.widget_text .post_content { font-size:16px; line-height: 1.6; }

/* カレンダー */
#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%);}

/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* フッター上部 */
#footer { min-width:1200px; background:#fff; }
#footer_inner { width:1200px; margin:0 auto; padding:60px 0; }
#footer .side_widget + .side_widget {
  margin-top: 40px;
}

/* ウィジェットエリア */
#footer_widget_area1 { width:300px; float:left; margin:0 80px 20px 0; }
#footer_widget_area2 { width:300px; float:left; margin:0 0 20px 0; }
.footer_headline,#footer .widget_block .wp-block-heading { font-size:14px; margin:0 0 20px 0; font-weight:700; }


/* メニュー */
#footer_menu1 { width:170px; float:left; margin:0 80px 0 0; }
#footer_menu2 { width:170px; float:left; margin:0 80px 0 0; }
#footer_menu2 ul { position:relative; margin:0; }
.footer_menu li { font-size:12px; line-height:160%; margin-bottom:20px; }
.footer_menu li a { display:block; }
@media screen and (max-width:641px) {
  .footer_headline, #footer .widget_block .wp-block-heading { font-size:14px; margin:0 0 15px 0; }
}

/* ページ最下部 */
#footer_bottom { min-width:1200px; background:#f1f2f4; }
#footer_bottom_inner { width:1200px; margin:0 auto; padding:0px 0px 20px; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
 }

/* ソーシャルボタン */
#footer_social_link { float:left; margin:27px 38px 0 0; }
#footer_social_link li { float:left; margin:0 15px 0 0; position: relative; }
#footer_social_link li a {
  display:block; text-indent:-200px; overflow:hidden; width: 17px; height: 17px; position: relative;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none;
}
#footer_social_link li:before {
  font-family:'design_plus'; color:#ccc; font-size:14px; display:block; position:absolute; top:0px; left:0px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li.twitter:before { font-family: 'tiktok_x_icon'; content: "\e901";}
#footer_social_link li.facebook:before { content:'\e902'; }
#footer_social_link li.insta:before { content:'\ea92'; }
#footer_social_link li.pint:before { content:'\e905'; }
#footer_social_link li.flickr:before { content:'\eaa4'; }
#footer_social_link li.tumblr:before { content:'\eab9'; }
#footer_social_link li.rss:before { content:'\e90b'; }
/*#footer_social_link li.twitter:hover:before { color:#16b9dc; }
#footer_social_link li.facebook:hover:before { color:#3B5998; }
#footer_social_link li.insta:hover:before { color:#8a3ab9; }
#footer_social_link li.rss:hover:before { color:#ffcc00; }
#footer_social_link li.pint:hover:before { color:#cb2027; }
#footer_social_link li.flickr:hover:before { color:#ff0084; }
#footer_social_link li.tumblr:hover:before { color:#34526f; }*/
#footer_social_link li:hover:before { color:#999; }
#footer_social_link li.youtube:before { content: "\ea9e"; }
#footer_social_link li.youtube a { width: 40px; }


/*#footer_social_link li.twitter a { width:19px; height:15px; background:url(img/footer/icon_twitter.png) no-repeat left top; }
#footer_social_link li.facebook a { width:12px; height:21px; background:url(img/footer/icon_facebook.png) no-repeat left top; top:-3px; position:relative; }
#footer_social_link li.rss a { width:17px; height:17px; background:url(img/footer/icon_rss.png) no-repeat left top; }
#footer_social_link li a:hover { background-position:left bottom; }*/
/* news sns btn */
/*.user_sns li span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
.user_sns li a:before { font-family:'design_plus'; color:#222; font-size:12px; display:block; position:absolute; top:5px; left:5px; width:11px; height:11px; line-height:11px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.user_sns li.twitter a:before { font-family: 'design_plus'; content:'\e904'; }
.user_sns li.facebook a:before { content:'\e902'; }
.user_sns li.insta a:before { content:'\ea92'; }
.user_sns li.pint a:before { content:'\f231'; font-size:13px; top:6px; }
.user_sns li.tumblr a:before { content:'\eab9'; }
.user_sns li.flickr a:before { content:'\eaa4'; }
.user_sns li a:hover:before { color:#fff; }*/


/* メニュー */
#footer_bottom_menu { float:left; margin:28px 0 0 0; }
#footer_bottom_menu li { float:left; margin:0; font-size:12px;  }
#footer_bottom_menu li a { display:block; border-right:1px solid #aaa; padding:0 15px 0 0; margin:0 15px 0 0; }
#footer_bottom_menu li a:hover { }
#footer_bottom_menu li:last-child a { border:none; margin:0; }


/* コピーライト */
#copyright { float:right; margin:28px 0 0 0; font-size:12px; }


/* ページ上部へ戻るボタン */
#return_top { }
#return_top a { position:fixed; right:20px; bottom:20px; /*text-indent:-200px;*/ display:block; width:100%; height:60px; width:60px; border-radius:60px; margin:0; padding:0; text-decoration:none; /*background:#222 url(img/footer/return_top.png) no-repeat center;*/ overflow:hidden; z-index:10; }
#return_top:hover { opacity:1; }


#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:22px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top a:before { content:'\e911'; top:20px; left:19px; }



/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comment_headline { background:#6bb8e4; color:#fff; height:50px; line-height:50px; font-size:14px; padding:0 17px; margin:20px 0 0 0; }

#comments { font-size:12px; }

#comment_area, #trackback_area { margin:15px 0px 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


/*  ------ comment_header ----------------------------------------------------------------------------------------------------------------------- */
#comment_header { position:relative; }
#comment_headline { }
#comment_header ul { position:absolute; right:15px; top:-30px; margin:0; }
#comment_header ul li { float:left; text-align:center; margin:0; }
#comment_header ul li a, #comment_header ul li p
 { font-size:12px; padding:0; margin:0; text-decoration:none; display:block; font-weight:bold; color:#fff; }
#comment_header ul li.comment_switch_active a, #comment_header ul li#comment_closed p
 {  }
#comment_header ul li a:hover { text-decoration:underline; }
#comment_header ul li.comment_switch_active a { color:#fff; text-decoration:underline; }
#comment_header ul li.comment_switch_active a:hover { text-decoration:underline; }
#comment_header ul li#comment_switch, #comment_header ul li#comment_closed { border-left:1px dotted #fff; padding:0 0 0 15px; margin:0 0 0 15px; }

/*  ------ comment ------------------------------------------------------------------------------------------------------------------------------ */
.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:#fafafa; }
#comments .post_content { margin:20px 0 0; padding:0; background:none; }
.even_comment, .odd_comment_children { background:#fafafa; }
.odd_comment, .even_comment_children { background:#fefefe; }
.admin-comment { }

/* ----- comment-meta ----- */
.comment-meta { position:relative; margin:0 0 10px 0; }

.comment-meta-left { float:left; width:400px; }
.avatar { float:left; margin:0 10px 0 0; border:1px solid #ccc; background:#fff; width:37px; height:37px; padding:2px; }
.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:12px; color:#757676; margin:10px 0 0 0; }

.comment-act { background:url(img/common/arrow3.gif) no-repeat left; font-size:12px; 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; }

/* ----- comment-content ----- */
.comment-content { padding:0; margin:0; }
* html .comment-content { padding:5px 0 0 0; }
.comment-content a, .comment-content a:visited { text-decoration:underline; }
.comment-content a:hover { }
.comment-content p { margin:0 0 10px 0; }
.comment blockquote span { margin:0 0 -1em 0; display:block; }

.comment-note { display:block; font-size:12px; 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; }

/* ----- trackback-contens ----- */
.trackback_time { font-size:12px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:160%; }

#trackback_url_area { }
#trackback_url_area label { display:block; margin:0 0 10px 0; font-size:12px; }
#trackback_url_area input { border:1px solid #ccc; background:#fafafa; padding:10px; width:100%; font-size:12px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }


/* ----- comment-pager ----- */
#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; }



/* ---------- form area ------------------------------------------------------------------------------------------------------------------------- */
.comment_form_wrapper { border:1px solid #ccc; margin:0 0px 30px; padding:15px; background:#fff; }
.comment .comment_form_wrapper { margin:0 0 30px; }

#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:100%; }
#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:100%; }
#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:12px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

#comment_textarea textarea { margin:15px 0 0; width:100%; height:150px; border:1px solid #ccc;
                             background:#fff; color:#777; font-size:12px; overflow:auto; }
#comment_textarea textarea:focus { border:1px solid #e48898; }

#submit_comment_wrapper { text-align:center; }
#submit_comment {
  background:#aaa; border:none; cursor:pointer; color:#fff; font-size:14px; width:200px; height:50px; margin:15px auto 0; display:block;
  -webkit-transition: background-color 200ms ease-in-out;
  -moz-transition: background-color 200ms ease-in-out;
  -o-transition: background-color 200ms ease-in-out;
  -ms-transition: background-color 200ms ease-in-out;
  transition: background-color 200ms ease-in-out;
}
#submit_comment:hover { background:#e48898; }

#input_hidden_field { display:none; }

/* ----- password protected ----- */
.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:160%; }




/* ----------------------------------------------------------------------
 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; 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.2; font-weight:600; 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.2; }
.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; }
.post_content td, .post_content th { border:1px solid #bbb; padding:10px 15px 7px; line-height:2.2; background:#fff; }
.post_content th { background:#ddd; font-weight:normal; }


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px 0; border:1px solid #ccc; box-shadow:0px 4px 0px 0px #f2f2f2; 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%; }

/* captions */
.post_content .wp-caption { margin-bottom:24px; background:#fff; border:1px solid #ccc; padding:5px; max-width:100%; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; -webkit-box-sizing:border-box; -moz-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; }


/* 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);	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; 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%; }
.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:5px solid #7fc120; font-size:12px; margin:0 0 27px 0; line-height:25px; background:url(img/common/pre.gif) repeat left top; padding:0 17px; overflow:auto; }
.post_content .sticky { }
.post_content .mejs-container { margin: 12px 0 25px; }



/* ----------------------------------------------------------------------
 ソーシャルボタン
---------------------------------------------------------------------- */
@font-face {
    font-family: 'icomoon';
    src:    url('fonts/icomoon.eot?evfvw0');
    src:    url('fonts/icomoon.eot?evfvw0#iefix') format('embedded-opentype'),
        url('fonts/icomoon.ttf?evfvw0') format('truetype'),
        url('fonts/icomoon.woff?evfvw0') format('woff'),
        url('fonts/icomoon.svg?evfvw0#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-feedly:before {
    content: "\e907";
}
.icon-hatebu:before {
    content: "\e908";
}
.icon-line:before {
    content: "\e909";
}
.icon-pocket:before {
    content: "\e90a";
}
.icon-google-plus:before {
    content: "\e900";
}
.icon-google-plus2:before {
    content: "\e901";
}
.icon-facebook:before {
    content: "\e902";
}
.icon-facebook2:before {
    content: "\e903";
}
.icon-twitter:before {
  font-family: 'tiktok_x_icon'; content: "\e901";
}
.icon-rss:before {
    content: "\e90b";
}
.icon-rss2:before {
    content: "\e906";
}
.icon-pinterest:before {
    content: "\e905";
}

/*--------------------------------
share_top1（Style1）
---------------------------------*/
#share_top1 { width:100%; margin:0 0 15px; }
#share_top1 h2 { color:#666666; font-weight:400; }
#share_top1 ul { margin:0; padding:0; list-style:none; }
#share_top1 ul li { display:inline-block; padding:0; text-align:center; }
#share_top1 ul li a { min-width:27px; text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; color: #fff!important; background:#fafafa; border-radius:2px; box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; text-align:center; line-height:25px; padding:1px 5px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li a i { position:relative; top:3px; color:#fff; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top1 ul li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top1 ul li a .share-count { display:inline; font-size:9px; color:#fff; padding:0; line-height:25px; margin:0; border-radius:0 1px 1px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li > a:hover { -webkit-transform:translate3d(0, 1px, 0); transform:translate3d(0, 1px, 0) }
@media screen and (max-width:480px) {
	#share_top1 { width:100%; }
	#share_top1 ul { margin-bottom:15px; }
	#share_top1 ul li a { margin-right:2px; }
	#share_top1 ul li a i { left:1px; }
	#share_top1 ul li>a span { display:none; }
	#share_top1 ul li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm1（Style3）
---------------------------------*/
#share_btm1 {}
#share_btm1 .sns { margin:0; text-align:center; }
#share_btm1 ul { margin:0 -3% 3% 0; list-style:none; }
#share_btm1 li { float:left; width:47%; margin:0 3% 1.5% 0; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm1 ul li { list-style:none; background-image:none; padding:0; }
#share_btm1 ul li a { position:relative; display:block; top:3px; font-size:13px; padding:10px 2px 14px; color:#fff; border-radius:2px; text-align:center; text-decoration:none; vertical-align:middle; }
#share_btm1 ul li a i { position:relative; top:3px; font-size:140%; }
#share_btm1 ul li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm1 ul li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_btm1 ul li a:hover { -webkit-transform: translate3d(0px, 2px, 1px); -moz-transform: translate3d(0px, 2px, 1px); transform: translate3d(0px, 2px, 1px); }
@media only screen and (min-width:480px) {
	#share_btm1 { width:100%; margin:20px 0 15px; }
	#share_btm1 ul { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm1 li { width:24%; margin:0 1% 2% 0; }
	#share_btm1 li a { font-size:12px; padding:10px 2px 14px; }
	#share_btm1 li:nth-child(4n) { margin-right:0; }
}

/*------------- share_top1 & share_btm1 button_color -------------*/
/* Twitter */
#share_top1 ul li.twitter a, #share_btm1 ul li.twitter a { color:#fff; background-color:#000; }
#share_top1 ul li.twitter a:hover, #share_btm1 ul li.twitter a:hover { background-color:#222; }
/* Facebook */
#share_top1 ul li.facebook a, #share_btm1 ul li.facebook a { background-color:#35629a; }
#share_top1 ul li.facebook a:hover, #share_btm1 ul li.facebook a:hover { background-color:#1f3669; }
/* Google+ */
#share_top1 ul li.googleplus a, #share_btm1 ul li.googleplus a { background-color:#dd4b39;}
#share_top1 ul li.googleplus a:hover, #share_btm1 ul li.googleplus a:hover { background-color:#b94031;}
#share_top1 ul li.googleplus a i { top:4px; }
/* Hatena */
#share_top1 ul li.hatebu>a, #share_btm1 ul li.hatebu a { background-color:#3c7dd1;}
#share_top1 ul li.hatebu>a:hover, #share_btm1 ul li.hatebu a:hover { background-color:#0270ac;}
/* Pocket */
#share_top1 ul li.pocket a, #share_btm1 ul li.pocket a { background-color:#ee4056; }
#share_top1 ul li.pocket a:hover, #share_btm1 ul li.pocket a:hover { background-color:#c53648; }
/* rss */
#share_top1 ul li.rss a, #share_btm1 ul li.rss a { background-color:#ffb53c; }
#share_top1 ul li.rss a:hover, #share_btm1 ul li.rss a:hover { background-color:#e09900; }
/* Feedly */
#share_top1 ul li.feedly a, #share_btm1 ul li.feedly a { background-color:#6cc655; }
#share_top1 ul li.feedly>a:hover, #share_btm1 ul li.feedly>a:hover { background-color:#5ca449; }
/* Pinterest */
#share_top1 ul li.pinterest a, #share_btm1 ul li.pinterest a { background-color:#d4121c; }
#share_top1 ul li.pinterest a:hover, #share_btm1 ul li.pinterest a:hover { background-color:#a42f35; }


/*--------------------------------
share_top2（Style2）
---------------------------------*/
#share_top2 { width:100%; margin:30px 0 15px; }
#share_top2 h2 { color:#444; font-weight:400; }
#share_top2 ul.type2 { margin:0; padding:0; list-style:none; }
#share_top2 ul.type2 li { display:inline-block; padding:0; text-align:center; }
#share_top2 ul.type2 li a { text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; line-height:25px; padding:1px 5px 0; }
#share_top2 ul.type2 li a i { position:relative; top:3px; color:#222; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top2 ul.type2 li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top2 ul.type2 li a .share-count { color:#444; font-size:9px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top2 ul.type2 li a:hover, #share_top2 ul.type2 li a:hover i, #share_top2 ul.type2 li a:hover .share-count  { color:#fff !important; }
#share_top2 ul.type2 li a:hover { border-color:rgba(255,255,255,.1); }
@media screen and (max-width:480px) {
	#share_top2 { width:100%; margin:0; }
	#share_top2 ul.type2 { margin-bottom:15px; }
	#share_top2 ul.type2 li a { margin-right:2px; }
	#share_top2 ul.type2 li a i { left:1px; }
	#share_top2 ul.type2 li>a span.ttl { display:none; }
	#share_top2 ul.type2 li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm2（Style4）
---------------------------------*/
#share_btm2 { text-align:center; }
#share_btm2 .sns { margin:0; }
#share_btm2 ul.type4 { margin:0 -3% 2% 0; list-style:none; }
#share_btm2 ul.type4 li { float:left; width:47%; margin:0 3% 3% 0; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm2 ul li { list-style:none; background-image:none; padding:0; }
#share_btm2 ul.type4 li a { position:relative; display:block; top:5px; font-size:13px; padding:10px 2px; text-decoration:none; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; }
#share_btm2 ul.type4 li a i { position:relative; top:3px; font-size:140%; color:#222 !important; }
#share_btm2 ul.type4 li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm2 ul.type4 li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; color:#222 !important; }
#share_btm2 ul.type4 li a:hover, #share_btm2 ul.type4 li a:hover i, #share_btm2 ul.type4 li a:hover .share-count  { color:#fff !important; }
@media only screen and (min-width:480px) {
	#share_btm2 { width:100%; margin:20px 0 15px; }
	#share_btm2 ul.type4 { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm2 ul.type4 li { width:24%; margin:0 1% 2% 0; }
	#share_btm2 ul.type4 li a { font-size:12px; padding:10px 2px; }
	#share_btm2 ul.type4 li:nth-child(4n) { margin-right:0; }
}
/*------------- share_top2 & share_btm4 button_color -------------*/
/* Twitter */
#share_top2 ul.type2 li.twitter a, #share_btm2 ul.type4 li.twitter a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.twitter a:hover, #share_btm2 ul.type4 li.twitter a:hover { color:#fff !important; background-color:#000 !important; }
/* Facebook */
#share_top2 ul.type2 li.facebook a, #share_btm2 ul.type4 li.facebook a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.facebook a:hover, #share_btm2 ul.type4 li.facebook a:hover { color:#fff !important; background-color:#35629a !important; }
/* Google+ */
#share_top2 ul.type2 li.googleplus a, #share_btm2 ul.type4 li.googleplus a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.googleplus a:hover, #share_btm2 ul.type4 li.googleplus a:hover { color:#fff !important; background-color:#dd4b39 !important;}
#share_top2 ul.type2 li.googleplus a i, #share_btm2 ul.type4 li.googleplus a i { top:4px; }
/* Hatena */
#share_top2 ul.type2 li.hatebu a, #share_btm2 ul.type4 li.hatebu a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.hatebu a:hover, #share_btm2 ul.type4 li.hatebu a:hover { color:#fff !important; background-color:#3c7dd1 !important;}
/* Pocket */
#share_top2 ul.type2 li.pocket a, #share_btm2 ul.type4 li.pocket a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pocket a:hover, #share_btm2 ul.type4 li.pocket a:hover { color:#fff !important; background-color:#ee4056 !important; }
/* rss */
#share_top2 ul.type2 li.rss a, #share_btm2 ul.type4 li.rss a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.rss a:hover, #share_btm2 ul.type4 li.rss a:hover { color:#fff !important; background-color:#ff8c00 !important; }
/* Feedly */
#share_top2 ul.type2 li.feedly a, #share_btm2 ul.type4 li.feedly a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.feedly a:hover, #share_btm2 ul.type4 li.feedly a:hover { color:#fff !important; background-color:#6cc655 !important; }
/* Pinterest */
#share_top2 ul.type2 li.pinterest a, #share_btm2 ul.type4 li.pinterest a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pinterest a:hover, #share_btm2 ul.type4 li.pinterest a:hover { color:#fff !important; background-color:#d4121c !important; }

/*--------------------------------
share_top5（公式ボタン）
---------------------------------*/
#share5_top { margin:20px 0 10px; }
#share5_btm { margin:30px 0 0; }
.sns_default_top { padding:0; overflow:hidden; list-style:none; }
.sns_default_top ul li { display:inline-block; margin:0 5px 3px 0; line-height:1!important; overflow:hidden; vertical-align:top; }
.sns_default_top ul li.twitter_button { width:77px; }
.sns_default_top ul li.fbshare_button:hover { text-decoration:none; }
.sns_default_top ul li.google_button { width:58px; }
.sns_default_top ul li.pocket_button { width:88px; }
@media only screen and (max-width: 480px) {
	.sns_default_top {}
	.sns_default_top ul li { margin-bottom:6px; }
	.sns_default_top ul li.twitter_button { margin-left:0; }
}

/* ----------------------- TCD Advanced Style ------------------------ */

/* ----------------------------------------------------------------------
 Column layout - カラムレイアウト
---------------------------------------------------------------------- */
.post_content .post_row { margin-left:-15px; margin-right:-15px; line-height:2; }
.post_content .post_col, .post_content .post_col-2, .post_content .post_col-3 { position:relative; min-height:1px; width:100%; padding-right:15px; padding-left:15px; float:left; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; margin-bottom:2em; }
@media screen and (min-width:768px){
	.post_content .post_col-2 { width:50%; /* 2カラム */ }
	.post_content .post_col-3 { width:33.33333%; }
}
@media screen and (min-width:1024px){
	.post_content .post_col-2 { width:50%; /* 2カラム */ }
	.post_content .post_col-3 { width:33.33333%; }
}
.clearfix:before, .clearfix:after, .post_content .post_row:before, .post_content .post_row:after {
    content: " ";
    display: table;
}
.clearfix:after, .post_content .post_row:after {
    clear: both;
}

/* ----------------------------------------------------------------------
 headline - 見出しのスタイル
---------------------------------------------------------------------- */
.post_content h3, .post_content h4, .post_content h5, .post_content h6 { line-height:1.6; }
/* h3 */
.post_content .style3a { margin:3em 0 1.5em; padding:1.1em .2em 1em; font-size:22px; font-weight:400; border-top:1px solid #222; border-bottom:1px solid #222; }
.post_content .style3b { margin:3em 0 1.5em; padding:1.1em .9em 1em; font-size:22px; font-weight:400; border-top:2px solid #222; border-bottom:1px solid #ddd; background:#fafafa; box-shadow:0px 1px 2px #f7f7f7; }
/* h4 */
.post_content .style4a { margin:2.5em 2px 1.2em; padding:.3em 0 .3em .8em; font-size:20px; font-weight:400; border-bottom:none; border-left:2px solid #222; }
.post_content .style4b { margin:2.5em 0 1.2em; padding:.9em 0 .8em; font-size:20px; font-weight:400; border-bottom:1px dotted #aaa; }
/* h5 */
.post_content .style5a { margin:2em 0 1em; padding:.5em .8em .3em 1em; font-weight:700; font-size:18px; background:#f5f5f5; box-shadow:0px 2px 0px 0px #f2f2f2; }
.post_content .style5b { margin:2em 0 1em; padding:.5em .8em .4em 1em; font-weight:400; font-size:18px; color:#fff; background:#222; border-radius:4px; box-shadow:0px 2px 0px 0px #f2f2f2; }
/* h6 */
.post_content .style6 { position:relative; margin:2em 0 1em; padding:.5em .8em .8em 1.3em; color:#222; font-weight:bold; font-size:16px; }
.post_content .style6:before { position:absolute; width:12px; height:12px; top:.5em; left:.2em; background:#222; content:""; }
.post_content .news_headline1{ position:relative; margin:80px 0 25px 0; padding:.5em; border-left:8px solid #444; line-height:1.2; font-size:1.2em; }
.post_content .news_headline1:after { content:""; position:absolute; bottom:0px; left:0; height:0; width:100%; border-bottom:1px dotted #ddd; }
.post_content .news_headline2{ margin:40px 0 20px 0; padding:0 .5em; border-left:6px solid #545454; line-height:26px; font-size:1.1em;}
.post_content .balloon { clear:both; display:block; position:relative; margin:50px 0 22px; padding:.5em 18px .5em; width:auto; min-width:115px; color:#fff; text-align:left; font-size:20px; font-weight:400; background:#222; z-index:0; border-bottom:0; }
.post_content .balloon:after { content:""; position:absolute; bottom:-10px; left:30px; margin-left:-10px; display:block; width:0px; height:0px; border-style:solid; border-width:10px 10px 0 10px; border-color:#222 transparent transparent transparent; }

/* ----------------------------------------------------------------------
 flame - 囲み枠
---------------------------------------------------------------------- */
.well { line-height:2; min-height:20px; padding:19px; margin-bottom:20px; background-color:#f5f5f5; border:1px solid #e3e3e3; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); }
.well2 { margin:1em 0 30px; padding:1em 1.5em; line-height:2; border:1px solid #cdcdcd; background:#fcfcfc; box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.well3 { margin:2em 0 2.5em; padding:1em 1.5em;line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc;  box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.wl_red { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }
.wl_yellow { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.wl_blue { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }
.wl_green { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }

/* ----------------------------------------------------------------------
 button - CSSボタンのスタイル
---------------------------------------------------------------------- */
.q_button { min-width:200px; max-width:90%; background-color:#535353; display:inline-block; vertical-align:middle; padding:.6em 1.3em .5em; font-weight:400; font-size:100%; color:#fff!important; margin:0; text-decoration:none; text-align:center; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; transition:all 0.3s ease-in-out 0s; box-shadow:0 1px 3px rgba(0,0,0,.15); }
.q_button:hover, .q_button:focus { text-decoration:none; color:#fff!important; background-color:#7d7d7d; box-shadow:0 2px 2px rgba(0,0,0,.15) inset; }
.q_button_wrap{ text-align:center; margin: 2em auto; }
/* Button option */
.rounded { border-radius:6px; }
.pill { border-radius:50px; }
.sz_full { min-width:100px; max-width:100%; display:block; font-size:110%; padding:1em 1.5em .9em; }
.sz_l { min-width:350px; max-width:90%; font-size:110%; padding:.8em 1.5em .7em; }
@media screen and (max-width: 479px) {
  .sz_l { min-width:320px; max-width:95%; }
}
.sz_s { min-width:100px; max-width:90%; font-size:85%; padding:.4em 1em .3em; }
.bt_red{ background:#c01f0e; color:#fff; }
.bt_red:hover, .bt_red:focus { background-color:#d33929; color:#fff; }
.bt_yellow{ background:#f1c40f; color:#fff; }
.bt_yellow:hover, .bt_yellow:focus { background-color:#f9d441; color:#fff; }
.bt_blue{ background:#2980b9; color:#fff; }
.bt_blue:hover, .bt_blue:focus { background-color:#3a91c9; color:#fff; }
.bt_green{ background:#27ae60; color:#fff; }
.bt_green:hover, .bt_green:focus { background-color:#39c574; color:#fff; }

/* ----------------------------------------------------------------------
Youtube responsive - Youtube動画のレスポンシブ表示
---------------------------------------------------------------------- */
.ytube { position:relative; height:0; margin-top:20px; margin-bottom:20px; padding-bottom:56.25%; padding-top:30px; overflow:hidden; }
.ytube iframe { position:absolute; top:0; right:0; width:100% !important; height:100% !important; }

/* ----------------------------------------------------------------------
Table responsive - テーブルのレスポンシブ表示
---------------------------------------------------------------------- */
.rps_table { line-height:2.0; }
@media only screen and (max-width:480px) {
    .rps_table tr { display:block; margin-bottom:1.5em; }
    .rps_table th, .rps_table td{ display:list-item; list-style-type:none; border:none; }
}

/* ----------------------------------------------------------------------
 Cardlink style - カードリンクのスタイル
---------------------------------------------------------------------- */
.cardlink { padding:12px 12px 12px 12px; margin:10px 0; border:1px solid #ddd; word-wrap:break-word; max-width:100%; background:#fafafa; }
.cardlink_thumbnail { float:left; margin-right:20px; }
.cardlink_content { line-height:1.6; }
.cardlink .timestamp { margin:0; padding:0; font-size:100%; font-weight:bold; }
.cardlink_title { font-size:14px; margin:5px 0 5px; }
.cardlink_title a { font-weight:bold; color:#000; text-decoration:none; }
.cardlink_title a:hover { text-decoration:underline; }
.cardlink_excerpt { color:#333; font-size:12px; overflow:hidden; line-height:1.8; }
.cardlink_footer { clear:both; }
.clear { clear:both; }
@media screen and (max-width: 767px) {
  .cardlink_thumbnail { float:none; }
}
@media screen and (max-width: 479px) {
  .cardlink_excerpt { float:none; }
}

/* ----------------------------------------------------------------------
 Contactform - お問い合わせフォーム
---------------------------------------------------------------------- */
.wpcf7 { width:100%; border:1px solid #ddd; background:#fafafa; padding:0; margin:0 0 2.5em !important; font-size:14px;}
.wpcf7 form{ margin:1.5em 1.5em 0;}
.wpcf7 p { margin-bottom:1em; font-size:12px; }
.wpcf7 input, .wpcf7 textarea { width:auto; -moz-box-sizing: border-box; box-sizing: border-box; width:100%; border:1px solid #ccc; line-height:1.2; padding:8px;  }
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { width:auto; max-width:97%; border:1px solid #ccc; padding:8px; }
.wpcf7 select, .wpcf7 .wpcf7-list-item-label { line-height:1.2; font-size:14px; }
.wpcf7-list-item { display:block; }
.wpcf7 textarea { height:300px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline:none; border:1px solid #bbb; -webkit-box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); box-shadow:inner 0 0 5px rgba(0, 0, 0, 0.5); }
.wpcf7 input.wpcf7-submit, .wpcf7 .wpcf7-previous { position:relative; display:block; width:225px; height:48px; margin:30px auto 0; background-color:#333333; cursor:pointer; border:none !important; color:#fff; text-align:center; text-decoration:none; font-size:14px; line-height:1.5; outline:none; -webkit-transition: all .3s; transition: all .3s; }
.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-submit::before, .wpcf7 input.wpcf7-submit::after { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.wpcf7 input.wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover { background-color:#666666; }
.wpcf7 .wpcf7-not-valid { background:pink; }
.wpcf7 .wpcf7-response-output { margin:10px 0 0; padding:8px 35px 8px 14px; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#B94A48; background-color:#F2DEDE; border:1px solid #EED3D7; }
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1; }
.wpcf7 .wpcf7-previous + br { display: none; }
.wpcf7 form .wpcf7-response-output{ margin: 2em 0.5em 2em!important; padding:0!important; border: none!important; text-align:center; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output{ color:#dc3232; font-size: 1em; }

/* ----------------------------------------------------------------------
 font-size - フォントサイズ
---------------------------------------------------------------------- */
.text70{font-size:70%}      /* フォントサイズ70% */
.text80{font-size:80%}
.text90{font-size:90%}
.text100{font-size:100%}
.text110{font-size:110%}
.text120{font-size:120%}
.text130{font-size:130%}
.text140{font-size:140%}
.text150{font-size:150%}
.text160{font-size:160%}
.text170{font-size:170%}
.text180{font-size:180%}
.text190{font-size:190%}
.text200{font-size:200%}
.text210{font-size:210%}
.text220{font-size:220%}
.b{font-weight:700}     /* 太字 */
.u{text-decoration:underline}     /* 下線 */
.del{text-decoration:line-throug} /* 打ち消し線 */

/* ----------------------------------------------------------------------
 font-color - フォントカラー
---------------------------------------------------------------------- */
.red{color:red}     /* 赤色 */
.blue{color:#2ca9e1}    /* 青色 */
.green{color:#82ae46}   /* 緑色 */
.orange{color:#ff7d00}    /* 橙色 */
.yellow{color:#fff000}    /* 黄色 */
.pink{color:#ff0084}    /* ピンク */
.gray{color:#999999}    /* グレー */

/* ----------------------------------------------------------------------
 background-color - 背景色
---------------------------------------------------------------------- */
.bg-yellow{padding:2px;background-color:#ff0} /* 黄色の文字背景 */
.bg-blue{padding:2px;background-color:#4ab0f5}  /* 青色の文字背景 */
.bg-red{padding:2px;background-color:red} /* 赤色の文字背景 */

/* ----------------------------------------------------------------------
 text-align - 配置
---------------------------------------------------------------------- */
.align1{text-align:center !important} /* 中央寄せ */
.align2{text-align:right !important}  /* 右寄せ */
.align3{text-align:left !important} /* 左寄せ */

/* ----------------------------------------------------------------------
 float - 回り込み
---------------------------------------------------------------------- */
.r-flo{float:right;margin:10px} /* 右に回り込み */
.l-flo{float:left;margin:10px}  /* 左に回り込み */
.f-clear{clear:both}      /* 回り込みの解除 */

/* ----------------------------------------------------------------------
 hover - 画像リンクマウスオーバー時の不透明度
---------------------------------------------------------------------- */
a img.fade { background:none !important; outline:none; -webkit-transition:all .3s; transition:all .3s; }
a:hover img.fade { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; background:none !important; }
/* ----------------------------------------------------------------------
 text-style - テキストスタイル
---------------------------------------------------------------------- */
.att {padding-left:1em;text-indent:-1em;} /* 注意書き等で二行目以降を字下げ */
.att_box { margin:2em 0 2.5em; padding:1em 1.2em; line-height:2.0; border:1px dotted #cccccc; background:#fcfcfc; box-shadow:0px 4px 0px 0px #f7f7f7; } /* テキストボックス */

/* ----------------------------------------------------------------------
 margin - 要素の外側の余白
---------------------------------------------------------------------- */
.m0{margin:0 !important}    /* margin 0px を指定するクラス */
.mt0{margin-top:0 !important}   /* margin-top0px を指定するクラス */
.mr0{margin-right:0 !important}   /* margin-right0px を指定するクラス*/
.mb0{margin-bottom:0 !important}  /* margin-bottom0px を指定するクラス*/
.ml0{margin-left:0 !important}    /* margin-left0px を指定するクラス*/

.m5{margin:5px !important}
.mt5{margin-top:5px !important}
.mr5{margin-right:5px !important}
.mb5{margin-bottom:5px !important}
.ml5{margin-left:5px !important}

.m10{margin:10px !important}
.mt10{margin-top:10px !important}
.mr10{margin-right:10px !important}
.mb10{margin-bottom:10px !important}
.ml10{margin-left:10px !important}

.m15{margin:15px !important}
.mt15{margin-top:15px !important}
.mr15{margin-right:15px !important}
.mb15{margin-bottom:15px !important}
.ml15{margin-left:15px !important}

.m20{margin:20px !important}
.mt20{margin-top:20px !important}
.mr20{margin-right:20px !important}
.mb20{margin-bottom:20px !important}
.ml20{margin-left:20px !important}

.m25{margin:25px !important}
.mt25{margin-top:25px !important}
.mr25{margin-right:25px !important}
.mb25{margin-bottom:25px !important}
.ml25{margin-left:25px !important}

.m30{margin:30px !important}
.mt30{margin-top:30px !important}
.mr30{margin-right:30px !important}
.mb30{margin-bottom:30px !important}
.ml30{margin-left:30px !important}

.m35{margin:35px !important}
.mt35{margin-top:35px !important}
.mr35{margin-right:35px !important}
.mb35{margin-bottom:35px !important}
.ml35{margin-left:35px !important}

.m40{margin:40px !important}
.mt40{margin-top:40px !important}
.mr40{margin-right:40px !important}
.mb40{margin-bottom:40px !important}
.ml40{margin-left:40px !important}

.m45{margin:45px !important}
.mt45{margin-top:45px !important}
.mr45{margin-right:45px !important}
.mb45{margin-bottom:45px !important}
.ml45{margin-left:45px !important}

.m50{margin:50px !important}
.mt50{margin-top:50px !important}
.mr50{margin-right:50px !important}
.mb50{margin-bottom:50px !important}
.ml50{margin-left:50px !important}

.m55{margin:55px !important}
.mt55{margin-top:55px !important}
.mr55{margin-right:55px !important}
.mb55{margin-bottom:55px !important}
.ml55{margin-left:55px !important}

.m60{margin:60px !important}
.mt60{margin-top:60px !important}
.mr60{margin-right:60px !important}
.mb60{margin-bottom:60px !important}
.ml60{margin-left:60px !important}

.m65{margin:65px !important}
.mt65{margin-top:65px !important}
.mr65{margin-right:65px !important}
.mb65{margin-bottom:65px !important}
.ml65{margin-left:65px !important}

.m70{margin:70px !important}
.mt70{margin-top:70px !important}
.mr70{margin-right:70px !important}
.mb70{margin-bottom:70px !important}
.ml70{margin-left:70px !important}

.m75{margin:75px !important}
.mt75{margin-top:75px !important}
.mr75{margin-right:75px !important}
.mb75{margin-bottom:75px !important}
.ml75{margin-left:75px !important}

.m80{margin:80px !important}
.mt80{margin-top:80px !important}
.mr80{margin-right:80px !important}
.mb80{margin-bottom:80px !important}
.ml80{margin-left:80px !important}

/* ----------------------------------------------------------------------
 padding - 要素の内側の余白
---------------------------------------------------------------------- */
.p0{padding:0 !important}   /* padding-0px を指定するクラス */
.pt0{padding-top:0 !important}    /* padding-top0px を指定するクラス */
.pr0{padding-right:0 !important}  /* padding-right0px を指定するクラス */
.pb0{padding-bottom:0 !important} /* padding-bottom0px を指定するクラス */
.pl0{padding-left:0 !important}   /* padding-left0px を指定するクラス */

.p5{padding:5px !important}
.pt5{padding-top:5px !important}
.pr5{padding-right:5px !important}
.pb5{padding-bottom:5px !important}
.pl5{padding-left:5px !important}

.p10{padding:10px !important}
.pt10{padding-top:10px !important}
.pr10{padding-right:10px !important}
.pb10{padding-bottom:10px !important}
.pl10{padding-left:10px !important}

.p15{padding:15px !important}
.pt15{padding-top:15px !important}
.pr15{padding-right:15px !important}
.pb15{padding-bottom:15px !important}
.pl15{padding-left:15px !important}

.p20{padding:20px !important}
.pt20{padding-top:20px !important}
.pr20{padding-right:20px !important}
.pb20{padding-bottom:20px !important}
.pl20{padding-left:20px !important}

.p25{padding:25px !important}
.pt25{padding-top:25px !important}
.pr25{padding-right:25px !important}
.pb25{padding-bottom:25px !important}
.pl25{padding-left:25px !important}

.p30{padding:30px !important}
.pt30{padding-top:30px !important}
.pr30{padding-right:30px !important}
.pb30{padding-bottom:30px !important}
.pl30{padding-left:30px !important}

.p35{padding:35px !important}
.pt35{padding-top:35px !important}
.pr35{padding-right:35px !important}
.pb35{padding-bottom:35px !important}
.pl35{padding-left:35px !important}

.p40{padding:40px !important}
.pt40{padding-top:40px !important}
.pr40{padding-right:40px !important}
.pb40{padding-bottom:40px !important}
.pl40{padding-left:40px !important}

.p45{padding:45px !important}
.pt45{padding-top:45px !important}
.pr45{padding-right:45px !important}
.pb45{padding-bottom:45px !important}
.pl45{padding-left:45px !important}

.p50{padding:50px !important}
.pt50{padding-top:50px !important}
.pr50{padding-right:50px !important}
.pb50{padding-bottom:50px !important}
.pl50{padding-left:50px !important}

.p55{padding:55px !important}
.pt55{padding-top:55px !important}
.pr55{padding-right:55px !important}
.pb55{padding-bottom:55px !important}
.pl55{padding-left:55px !important}

.p60{padding:60px !important}
.pt60{padding-top:60px !important}
.pr60{padding-right:60px !important}
.pb60{padding-bottom:60px !important}
.pl60{padding-left:60px !important}

.p65{padding:65px !important}
.pt65{padding-top:65px !important}
.pr65{padding-right:65px !important}
.pb65{padding-bottom:65px !important}
.pl65{padding-left:65px !important}

.p70{padding:70px !important}
.pt70{padding-top:70px !important}
.pr70{padding-right:70px !important}
.pb70{padding-bottom:70px !important}
.pl70{padding-left:70px !important}

.p75{padding:75px !important}
.pt75{padding-top:75px !important}
.pr75{padding-right:75px !important}
.pb75{padding-bottom:75px !important}
.pl75{padding-left:75px !important}

.p80{padding:80px !important}
.pt80{padding-top:80px !important}
.pr80{padding-right:80px !important}
.pb80{padding-bottom:80px !important}
.pl80{padding-left:80px !important}

/* ----------------------------------------------------------------------
 汎用スタイルの追加
 https://tcd-theme.com/2023/09/utility-classes.html
---------------------------------------------------------------------- */
.post_content .a_break { display: inline-block; }
@media (max-width: 767px) {
  .post_content .is-pc { display:none!important; }
}
@media not all and (max-width: 767px) {
  .post_content .is-sp { display:none!important; }
}
.post_content .e_link {
  display: inline-block; position: relative; padding-right:1em;
}
.post_content .e_link:after {
  font-family: 'design_plus'; content: '\e92a'; font-size: 100%; display: block;
  position: absolute; transition:none; margin-top:-0.1em;
  right:0; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.post_content img.frame {
  border: 1px solid #d2d2d2;
  -webkit-box-shadow: 0 6px 6px -6px #cccccc;
  -moz-box-shadow: 0 6px 6px -6px #cccccc;
  box-shadow: 0 6px 6px -6px #cccccc;
}

/* ----------------------------------------------------------------------
クラシックエディターのテーブルの横スクロール対応
---------------------------------------------------------------------- */
@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-table.is-style-stripes td,
.wp-block-table .has-background td{
  background-color: transparent;
}

/* ----------------------------------------------------------------------
 上付き文字、下付き文字
---------------------------------------------------------------------- */
sup {
  vertical-align: super;
  font-size: smaller;
  }
  sub {
  vertical-align: sub;
  font-size: smaller;
  }
  
 /* ----------------------------------------------------------------------
 ブロックエディターのYotutubeのレスポンシブ対応
---------------------------------------------------------------------- */
.wp-block-embed { margin-bottom: 2em; }

.entry-date {
  font-family: 'Arial';
}

.rich_font_logo {
  transition: color 0.3s ease !important;
}