@charset "utf-8";
/*
Theme Name:MAXX
Theme URI:https://tcd-theme.com/tcd043
Description: WordPress theme "Venus" is inspired luxurious fashion brand. It builds a minimal but unique top page. You can also use the brand page as image gallery.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-maxx
Version:2.0
*/


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

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


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

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

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




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; color:#333; line-height:1; width:100%; min-width:1250px; }
a { color:#333; text-decoration:none; }
a, a:before, a:after, input, div.image {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
a:hover { text-decoration:underline; }
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#main_contents { background:#fff; width:100%; position:relative; z-index:10; }
#main_col {
  width:1250px; margin:72px auto 100px; padding:0 50px;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
#left_col { width:800px; float:left; }
#side_col { width:300px; float:right; margin-bottom: 50px; }



/* ローディングアイコン */
#site_wrap { display:none; }
#site_loader_overlay {
  position: fixed; background:#fff; background:rgba(255,255,255,1);
  top:0px; left:0px; bottom:0px; right:0px;
  z-index: 99999; opacity:1;
  -webkit-transition: opacity 0.3s; transition: opacity 0.3s;
}
#site_loader_spinner {
  width:60px; height:60px; border-radius:100%; margin-top:-30px; margin-left:-30px;
  border:4px solid #ccc; border-top-color:#666; box-sizing:border-box;
  position:absolute; top:50%; left:50%;
  animation:loading 1.2s linear infinite;
  -webkit-animation:loading 1.2s linear infinite;
}
@keyframes loading{
  0% { transform:rotate(0deg); }
  100% { transform:rotate(360deg); }
}
@-webkit-keyframes loading{
  0% {-webkit-transform:rotate(0deg); }
  100% {-webkit-transform:rotate(360deg); }
}


/* アニメーション */
.pc #main_col .animation_element {
  opacity:0;
}
.pc #main_col .animation_element.active {
  -webkit-transform:translateY(50px);
  transform:translateY(50px);
  -webkit-animation:moveUp 0.65s ease forwards 0.5s;
  animation:moveUp 0.65s ease forwards 0.5s;
}
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform:translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform:translateY(0); transform:translateY(0); opacity: 1; }
}


/* キャプションホバースライド */
.caption_hover_slide {
  -webkit-transition:margin-left 0.35s ease;
  -moz-transition:margin-left 0.35s ease;
  -ms-transition:margin-left 0.35s ease;
  -o-transition:margin-left 0.35s ease;
  transition:margin-left 0.35s ease;
}
.image:hover .caption_hover_slide { margin-left:1em; }
.image:hover .caption_hover_slide.caption2 { margin-left:-1em; }




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

.pc #header { width:100%; min-width:1250px; }
.pc #header_top { background:#000; position:relative; z-index:100; }
.pc #header_bottom { background:#ff4001; position:relative; z-index:100; }
.pc .header_inner { width:1150px; margin:0 auto; position:relative; }
.pc #header_top_inner { height:80px; }

/* html.mobile → html.pc のタイムラグ対策 */
.mobile #header { display:none; }

/* ヘッダー固定 */
.pc .header_fix #header {
  position:fixed; width:100%; top:0px; left:0px; z-index:200; background:#fff;
  -webkit-transform:translateY(0%); -moz-transform:translateY(0%); -ms-transform:translateY(0%); -o-transform:translateY(0%); transform:translateY(0%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  animation: slideDown 0.5s ease; -ms-animation: slideDown 0.5s ease; -webkit-animation: slideDown 0.5s ease; -moz-animation: slideDown 0.5s ease;
}
@-webkit-keyframes slideDown {
  0% { -webkit-transform:translateY(-100%); -moz-transform:translateY(-100%); -ms-transform:translateY(-100%); -o-transform:translateY(-100%); transform:translateY(-100%); }
  100% { -webkit-transform:translateY(0%); -moz-transform:translateY(0%); -ms-transform:translateY(0%); -o-transform:translateY(0%); transform:translateY(0%); }
}
@keyframes slideDown {
  0% { -webkit-transform:translateY(-100%); -moz-transform:translateY(-100%); -ms-transform:translateY(-100%); -o-transform:translateY(-100%); transform:translateY(-100%); }
  100% { -webkit-transform:translateY(0%); -moz-transform:translateY(0%); -ms-transform:translateY(0%); -o-transform:translateY(0%); transform:translateY(0%); }
}

.pc .header_fix { padding-top:130px; }
.pc .header_fix #header {
  -webkit-transition:opacity 0.2s ease;
  -moz-transition:opacity 0.2s ease;
  -ms-transition:opacity 0.2s ease;
  -o-transition:opacity 0.2s ease;
  transition:opacity 0.2s ease;
}
.pc .header_fix #header:hover { opacity:1; }

.pc .admin-bar { padding-top:32px; }
.pc .header_fix.admin-bar, .pc .header_fix.admin-bar { padding-top:152px; }
.pc .header_fix.admin-bar #header { top:32px; }
@media screen and (max-width:782px) {
.pc .fix_top.admin-bar { padding-top:46px; }
.pc .header_fix.admin-bar { padding-top:166px; }
.pc .header_fix.admin-bar #header { top:46px; }
}
@media screen and (max-width:600px) {
.pc .header_fix.admin-bar { padding-top:46px; }
.pc .header_fix.admin-bar #header { top:0; }
}


/* ロゴ */
.pc #header_logo #logo_text, .pc #header_logo #logo_image { width:1150px; text-align:center; position:absolute; top:50%;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}
.pc #header_logo .logo { display:inline-block; font-size:24px; margin:0 auto; }
.pc #header_logo .logo a { color:#fff; text-decoration:none; }
.pc #header_logo img { display:block; max-height:80px; }


/* グローバルメニュー */
.pc #global_menu { z-index:20; position:relative; color:#fff; }
.pc #global_menu a { color:#fff; }
.pc #global_menu > ul { height:50px; font-size:0; position:relative; text-align:center; margin:0 auto; }
.pc #global_menu > ul > li { font-size:1%; position:relative; display:inline-block; }

.pc #global_menu > ul > li > a {
  font-size:14px; text-decoration:none; height:50px; line-height:50px; display:block; padding:0 30px;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
.pc #global_menu > ul > li > a:hover { }

.pc #global_menu ul ul { display:none; width:240px; position:absolute; top:50px; left:0px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0; border:none; }
.pc #global_menu ul ul li { line-height:150%; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { display:block; font-size:14px; background:#000; border:none; position:relative; padding:14px 20px 12px 20px; height:auto; line-height:160%; margin:0; text-align:left; box-shadow:none; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

.pc #global_menu ul ul li.menu-item-has-children > a:before {
  margin:0; display:block; top:20px; right:10px; position:absolute; content:"";
  width:0; height:0; border-style:solid; border-width:4px 0px 4px 4px; border-color:transparent transparent transparent #fff;
}

.pc #global_menu ul ul { top:50px; bottom:auto; }
.pc #global_menu ul ul ul { top:0; bottom:auto; }

.pc #global_menu li li.current-menu-item > a { color:#fff; }

.pc #global_menu>ul>li:last-child ul li.menu-item-has-children > a{
  padding: 14px 25px 14px 32px;
}
.pc #global_menu>ul>li:last-child ul li.menu-item-has-children > a:before{
  content: '';right: auto;left: 15px;
  transform: rotate(180deg);
}
.pc #global_menu>ul>li:last-child ul li.menu-item-has-children ul{
  left: auto;
  right: 100%;
}

/* SNSボタン */
#header_social_link { position:absolute; top:21px; right:0; }
#header_social_link li { float:left; margin:0 5px 0 0; position:relative; }
#header_social_link li a {
  display:block; text-indent:-200px; overflow:hidden; width:30px; height:30px; position:relative;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none;
}
#header_social_link li:before {
  font-family:'design_plus'; color:#fff; font-size:17px; display:block; position:absolute; top:10px; left:9px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#header_social_link li:hover:before { color:#ff4001; }
#header_social_link li.twitter:before { font-family: 'tiktok_x_icon'; content: "\e901";}
#header_social_link li.facebook:before { content:'\e902'; }
#header_social_link li.insta:before { content:'\ea92'; margin-top:1px; }
#header_social_link li.rss:before { content:'\e90b'; }


/* パンくずリンク */
#bread_crumb { margin:0; height:50px; line-height:50px; min-width:1150px; overflow:hidden; background:#eee; }
#bread_crumb ul { width:1150px; margin:0 auto; }
#bread_crumb li.home { padding:0; }
#bread_crumb li.home a {
  float:left; height:15px; width:13px; line-height:15px; display:block; position:relative;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-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:#999; font-size:14px; display:block; width:17px; height:17px; line-height:50px; position:relative; top:1px;
  -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 { text-decoration:none; }
#bread_crumb li.home a:hover:before { color:#ff4001; }
#bread_crumb li { color:#000; font-size:14px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:100%; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#000; font-size:9px; display:block; position:absolute; left:-20px; top:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#000; }

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

/* ヘッダー画像 */
#header_images { width:100%; height:312.5px; min-width:1250px; overflow:hidden; position:relative; }
#header_images .grid-item { width:25%; height:312.5px; overflow:hidden; position:relative; }
#header_images .grid-item[data-state="start"] { -webkit-transition:opacity 0.5s ease-in-out; -moz-transition:opacity 0.5s ease-in-out; -ms-transition:opacity 0.5s ease-in-out; -o-transition:opacity 0.5s ease-in-out; transition:opacity 0.5s ease-in-out; }
#header_images .grid-item[data-state="move"] { -webkit-transition:all 0.5s ease-in-out; -moz-transition:all 0.5s ease-in-out; -ms-transition:all 0.5s ease-in-out; -o-transition:all 0.5s ease-in-out; transition:all 0.5s ease-in-out; }
#header_images .grid-item .image { display: block;
  -webkit-transition:background-color 0.2s ease;
  -moz-transition:background-color 0.2s ease;
  -ms-transition:background-color 0.2s ease;
  -o-transition:background-color 0.2s ease;
  transition:background-color 0.2s ease;
}
#header_images .grid-item .image img { display:block; width:100%; height:auto; min-height:100%;
  -webkit-transition:opacity 0.2s ease;
  -moz-transition:opacity 0.2s ease;
  -ms-transition:opacity 0.2s ease;
  -o-transition:opacity 0.2s ease;
  transition:opacity 0.2s ease;
}
#header_images .grid-item .caption { display:block; line-height:200%; opacity:0;  width:100%; margin:auto; padding:0 10%; position:absolute; top:50%; z-index:5;
  -webkit-transform:translateY(-50%); -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  -webkit-transition:opacity 0.2s ease;
  -moz-transition:opacity 0.2s ease;
  -ms-transition:opacity 0.2s ease;
  -o-transition:opacity 0.2s ease;
  transition:opacity 0.2s ease;
}
#header_images .caption p { margin-bottom:20px; }
#header_images .grid-item .caption .button { display:inline-block; /*margin:15px 0 0 0;*/ padding:15px 25px; font-size:16px; text-decoration:none; line-height:125%; /*background:#000;*/ }
#header_images .grid-item .image:hover { background:#ff4001; }
#header_images .grid-item .image:hover img { opacity:0.5; }
#header_images .grid-item .image:hover .caption { opacity:1; }


/* スライダー */
#header_slider { width:100%; height:auto; position:relative; margin:0 auto; }
#header_slider .item { width:100%; height:auto; }
#header_slider .item img { width:100%; height:auto; display:block; }
#header_slider .item .overlay span:before { content:''; display:block; width:100%; height:100%; z-index:2; position:absolute; left:0px; top:0px; }


/* スライダーのキャッチコピー */
#header_slider .caption {
  position:absolute; text-align:center; z-index:5; width:1150px; margin:auto; left:0; right:0;
  top:50%; top:-webkit-calc(50% + 30px); top:-moz-calc(50% + 30px); top:calc(50% + 30px);
  -webkit-transform: translate3d(0,-50%,0); transform: translate3d(0,-50%,0);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_slider .caption .title { line-height:125%; }
#header_slider .caption .button {
  font-size:16px; text-decoration:none; padding:0 25px; height:50px; line-height:50px; display:inline-block; margin:15px 0 0 0;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}

/* スライダーのキャッチコピーのアニメーション */
.pc #header_slider .caption .title,  .pc #header_slider .caption .button {
  opacity:0;
}
.pc #header_slider .item.slick-active .caption .title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 1.0s; animation: opacityAnimation 1.0s ease forwards 1.0s;
}
.pc #header_slider .item.slick-active .caption .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s; animation: opacityAnimation 1.0s ease forwards 2.0s;
}
.pc #header_slider .first_active .caption .title {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s !important; animation: opacityAnimation 1.0s ease forwards 2.0s !important;
}
.pc #header_slider .first_active .caption .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 3.0s !important; animation: opacityAnimation 1.0s ease forwards 3.0s !important;
}
@-webkit-keyframes opacityAnimation {
  0% { }
  100% { opacity: 1; }
}
@keyframes opacityAnimation {
  0% { }
  100% { opacity: 1; }
}

/* video, youtube */
#header_video_wrapper { width:100%; position:relative; }
#header_video_wrapper:before { content:''; display:block; padding-top:56.25%; /* aspect 16:9 */ }
#header_video_wrapper #header_video, #header_video_wrapper #header_youtube { width:100%; height:100%; position:absolute; top:0; left:0; }


/* コンテンツボックス */
.index_box_list { margin:0; width:100%; display:-webkit-flex; display:flex; -webkit-justify-content:space-between; justify-content:space-between; }
.index_box_list .box { width:399px; margin:0; padding:0; overflow:hidden; position:relative; }
.index_box_list .box + .box { width:399px; }
.index_box_list + .index_box_list { margin-top:1px; }
.index_box_list .image { display:block; width:100%; height:100%; overflow:hidden; }
.index_box_list img { width:100%; height:auto; display:block; }

/* コンテンツ１ */
#index_content1 { position:relative; margin:0 0 70px 0; }
#index_content1 .catchphrase { margin:0 0 30px 0; text-align:center; }
#index_content1 .catchphrase .headline { margin:0 0 15px 0; font-size:40px; font-weight:400; line-height:150%; }
#index_content1 .catchphrase .desc { margin:0 0 2em 0; font-size:16px; line-height:200%; }
#index_content1 .catchphrase .desc p { margin:0 0 20px 0; }
#index_content1 .index_box_list a { text-decoration:none; }
#index_content1 .index_box_list .caption { display:block; width:100%; line-height:200%;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
#index_content1 .index_box_list .image .caption { padding:10% 10% 0 10%; height:100%; color:#fff; position:absolute; top:0; left:0; }
#index_content1 .index_box_list .noimage .caption { padding:15px; text-align:center; }
#index_content1 .index_box_list .caption p { margin:0 0 2em 0; }
#index_content1 .index_box_list .headline { margin:0 0 20px 0; color:#ff4001; font-size:34px; font-weight:400; text-align:center;
  -webkit-transition:color 0.2s ease; -moz-transition:color 0.2s ease; -ms-transition:color 0.2s ease; -o-transition:color 0.2s ease; transition:color 0.2s ease;
}
#index_content1 .index_box_list .image:hover .headline { color:#fff !important; }

/* コンテンツ２ */
#index_content2 { margin:0 0 80px 0; }
#index_content2 .catchphrase { margin:0 0 30px 0; text-align:center; }
#index_content2 .catchphrase .headline { margin:0 0 15px 0; font-size:40px; font-weight:400; line-height:1.4; text-align:center; }
#index_content2 .catchphrase .desc { margin:0 0 2em 0; font-size:16px; line-height:200%; text-align:center; }
#index_content2 .index_box_list .caption { display:block; padding:0 10%; width:100%; color:#fff; line-height:200%; position:absolute; top:50%; left:0; z-index:2;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
#index_content2 .index_box_list .box1 { width:100%; }
#index_content2 .index_box_list .box3_text {
  -webkit-transition:background-color 0.2s ease;
  -moz-transition:background-color 0.2s ease;
  -ms-transition:background-color 0.2s ease;
  -o-transition:background-color 0.2s ease;
  transition:background-color 0.2s ease;
}
#index_content2 .index_box_list .box3_text .caption p { margin:2em 0; }
#index_content2 .index_box_list .box3_text .image:before {
  content:'\e910'; font-family:'design_plus'; color:#262626; font-size:320px; line-height:1; text-align:right; display:block; margin:-0.45em 0 0 0;
  position:absolute; top:50%; right:-90px; z-index:1;
  -webkit-transition:all 0.2s ease; -moz-transition:all 0.2s ease; -ms-transition:all 0.2s ease; -o-transition:all 0.2s ease; transition:all 0.2s ease;
}
#index_content2 .index_box_list .box3_text:hover .image:before { color:#fff; opacity:0.15; }
#index_content2 .index_box_list.noimage .box3_text .image { min-height:300px; }

/* アーカイブのボタン */
.index_archive_link a { background:#bbb; color:#fff; text-decoration:none; display:block; margin:0 auto; width:180px; height:50px; line-height:50px; text-align:center; overflow:hidden; position:relative; font-size:14px; }
.index_archive_link a:hover { color:#fff; }

/* プログラム */
#index_program { margin:0 0 50px 0;  padding:85px 0 0 0; position:relative; }
#index_program_headline { font-size:24px; font-weight:400; position:absolute; top:18px; left:0px; }
#index_program .index_archive_link { position:absolute; right:0px; top:0px; }

/* お知らせ */
#index_news { margin:79px 0 50px 0;  padding:85px 0 0 0; position:relative; }
#index_news_headline { font-size:24px; font-weight:400; position:absolute; top:18px; left:0px; }
#index_news .index_archive_link { position:absolute; right:0px; top:0px; }

/* バナー */
#index_banner { margin:50px 0; text-align:center; }
#index_banner .banner { margin:0 0 25px 0; text-align:center; }
#index_banner .banner img { display:block; margin:0 auto; max-width:100%; height:auto; opacity:1; }
#index_banner .banner a { display:inline-block; background:#000; }
#index_banner .banner a:hover img { opacity: 0.7; transition: 0.5s; transition-property: opacity; }

/* ブログ */
#index_blog { position:relative; padding:85px 0 0 0; margin-bottom: 15px; }
#index_blog_headline { font-size:24px; font-weight:400; position:absolute; top:18px; left:0px; }
#index_blog .index_archive_link { position:absolute; right:0px; top:0px; }
#index_blog_list { font-size:0; }
#index_blog_list > li { display:inline-block; vertical-align:top; width:380px; overflow:hidden; margin:0 40px 30px 0; padding:0; position:relative; }
#index_blog_list > li:nth-child(2n) { margin-right:0; }
#index_blog_list li ul { margin:0; padding:0; }
#index_blog_list li li { display:block; margin:0; padding:0; font-size:12px; }
#index_blog_list li .image { display:block; width:100%; height:0; overflow:hidden; padding-top:60%; position:relative; }
#index_blog_list li .image img { width:100%; height:auto; min-height:100%; display:block; position:absolute; top:0; left:0;aspect-ratio: 380 / 228; object-fit: cover; }
#index_blog_list li .category { position:absolute; top:0; right:0; }
#index_blog_list li .date { position:absolute; top:0; left:0; }
#index_blog_list li .title { display:block; margin:10px 0 0 0; font-size:14px; line-height:160%; font-weight:400; text-decoration:none; }
#index_blog_list li a:hover{ text-decoration:none; }



/* ----------------------------------------------------------------------
 固定ページテンプレート
---------------------------------------------------------------------- */

/* ヘッダー画像 */
#header_image { position:relative; overflow:hidden; }
#header_image img { width:100%; height:auto; display:block; }
#header_image .caption { margin:0; width:100%; max-width:1150px; padding:0 30px; line-height:1.5; text-align:center; color:#fff; position:absolute; top:50%; left: 50%;
  -webkit-transform:translate(-50%, -50%); -mox-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%); transform:translateY(-50%, -50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}


/* コンテントヘッダー */
.page_content_header { margin:0 0 63px 0; width:100%; position:relative; }
.page_content_header:before { content:''; display:block; padding-top:25%; }
.page_content_header .headline { width:25%; height:100%; line-height:1.2; font-size:24px; font-weight:400; color:#fff; background:#ff4001; position:absolute; top:0; left:0; z-index:2; }
.page_content_header .headline h1 { max-height:100%; position:absolute; top:50%; left:50%; width:85%; text-align:center;
  -webkit-transform:translate(-50%, -50%); -mox-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%); transform:translateY(-50%, -50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
  font-size: 100%; margin: 0; padding: 0;
}
.page_content_header .image { display:block; width:75%; height:100%; position:absolute; top:0; right:0; }
.page_content_header img { display:block; width:auto; height:auto; min-width:100%; min-height:100%; }
.page_content_header .headline2 { width:100%; }
.page_content_header.image:before{ display:none; }


/* テンプレート共通 */
.page_content img { display:block; margin:0 0 30px 0; width:100%; height:auto; }
.page_content.page_content .post_row { margin-left:-20px; margin-right:-20px; }.page_content .post_row .post_col, .page_content .post_row .post_col-2, .page_content .post_row .post_col-3 { margin-bottom:0; padding-left:20px; padding-right:20px; }
.page_content .post_row .post_col-2 img { margin-top:7px; }

.page_content #post_title { margin:0 0 18px; font-size:40px; font-weight:400; }.page_content .headline { margin:0 0 20px 0; padding:0; font-size:24px; font-weight:400; line-height:1.6; }
.page_content .headline + p { margin-top:-10px; }
.page_content1, .page_content2, .page_content3, .page_content4, .page_content5 { margin-top:0; margin-bottom:20px; }
.page_content1 { margin-bottom:63px; }
.page_content2 { margin-bottom:33px; }
.page_content3 { margin-bottom:30px; }
.page_content4 { margin-bottom:16px; }


/* テンプレート1 */
.page_content.type1 .page_content1 img { margin-top:50px; }

/* テンプレート3 */
.page_content.type3 .page_content2 img, .page_content.type3 .page_content3 img { margin-bottom:20px; }
.page_content.type3 .page_content2 img { margin-bottom:23px; }
.page_content.type3 .page_content3 img { margin-bottom:23px; }
.page_map { margin-top:48px; margin-bottom:50px; }
.page_map_info { margin-top:57px; text-align:center; }
.page_content .page_map_info img { margin:0 auto 12px auto; width:auto; height:auto; }
.page_content .page_map_info p { margin:10px 0; }
.page_map_iframe iframe { width:100%; }
.page_map_shrotcode iframe { max-width:100%; }
.page_map_desc { margin-top:16px; }
.page_map_info .button { display:inline-block; margin:2px 0 0 0; padding:15px 25px; text-decoration:none; line-height:1; color:#fff; background:#bbb; }
.page_map_info .button:hover { text-decoration:none; color:#fff; background:#ff4001; }
.page_content.type3 .page_content2 { margin-bottom:50px; }



/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
.no_post { margin:50px 0; }

/* ヘッダーのキャッチフレーズ */
#archive_header { margin:0 0 45px; text-align:center; }
#archive_headline { font-size:40px; line-height:1.4; margin:0; }
#archive_desc { line-height:200%; margin:12px 0 0 0; }


/* アーカイブ */
#post_list { font-size:0; }
#post_list > li { display:inline-block; vertical-align:top; width:380px; overflow:hidden; margin:0 5px 35px 0; padding:0; position:relative; }
#post_list > li:nth-child(3n) { margin-right:0; }
#post_list li ul { margin:0; padding:0; }
#post_list li li { display:block; margin:0; padding:0; font-size:12px; }
#post_list li .image { display:block; width:100%; height:0; overflow:hidden; padding-top:60%; position:relative; }
#post_list li .image img { width:100%; height:auto; min-height:100%; display:block; position:absolute; top:0; left:0; aspect-ratio: 380 / 228; object-fit: cover; }
#post_list li .category { position:absolute; top:0; right:0; }
#post_list li .date { position:absolute; top:0; left:0; }
#post_list li .title { display:block; margin:0; width:100%; height:4.5em; color:#fff; line-height:160%; font-size:15px; font-weight:400; position:absolute; bottom:0; left:0; background:rgba(0,0,0,0.7);
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
#post_list li .title span { display:block; padding:0 20px; max-height:3.2em; overflow:hidden; position:absolute; top:50%; left:0;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}


/* 日付・カテゴリー共通 */
li.category2 { display:block; margin:0; padding:0; width:auto; height:auto; min-width:90px; min-height:30px; line-height:30px; text-align:center; }
li.category2 a { display:block; padding:0 15px; color:#fff; background:#ff4001; text-decoration:none; }
li.date2 { width:79px; height:79px; background:#000; color:#fff; text-align:center; border-right:1px solid #fff; border-bottom:1px solid #fff; }
li.date2 span { display:block; }
li.date2 .entry-date-year { padding-top:12px; font-size:9px; }
li.date2 .entry-date-month { padding-top:5px; font-size:12px; text-transform:uppercase; }
li.date2 .entry-date-day { padding-top:4px; font-size:22px; }


/* ページング */
.page_navi { margin:0; }
.page_navi ul { margin:0; }
.page_navi li { float:left; margin:0 8px 50px 0; }
.page_navi a, .page_navi a:hover, .page_navi span { font-size:12px; padding:15px 18px; line-height:100%; margin:0; color:#fff; background:#000; display:block; }
.page_navi a:hover { color:#fff; background:#ff4001; text-decoration:none; }
.page_navi span.dots { background:none; }
.page_navi span.current { color:#fff; background:#ff4001; }
.page_navi p.back { margin:0; }
.page_navi p.back a { background:#000; color:#fff; text-decoration:none; display:inline-block; width:200px; height:50px; line-height:50px; text-align:center; font-size:14px; position:relative; padding:0; }
.page_navi p.back a:hover { color:#fff; }


/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */

#article { margin:0 0 56px 0; position:relative; }


/* アイキャッチ画像 */
#post_image { padding:0; margin:0 0 43px 0; }
#post_image img { width:100%; height:auto; display:block; margin:0; }


/* 日付・カテゴリー */
#post_meta_top { margin:0 0 30px 0; padding:0; width:100%; height:81px; }
#article.has_post_thumbnail #post_meta_top { position:absolute; top:0; left:0; }
#post_meta_top li { float:left; margin:0; padding:0; font-size:12px; }
#post_meta_top .category { float:right; }


/* 記事タイトル */
#post_title { padding:0; margin:0 0 37px; font-size:40px; line-height:1.4; word-wrap: break-word;}


/*  記事本文*/
.post_content {  }
.post_content a { color:#ff4001; }


/* SNSボタン */
#single_share_top { margin:0 0 20px; }
#single_share_top #share_top1 { padding-top:0; }


/* ページ分割 */
#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:#000; margin:0 5px 0 0; width:35px; height:35px; line-height:35px; text-align:center; text-decoration:none; color:#fff; font-size:12px; }
#post_pagination p { background:#ff4001; color:#fff; }
#post_pagination a:hover { color:#fff; }


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


/* 次の記事、前の記事 */
#previous_next_post { margin:0 0 50px 0; }
#previous_next_post .prev_post { float:left; width:398px; }
#previous_next_post .next_post { float:right; width:398px; }
#previous_next_post a {
  display:block; padding:35px; background:#000;
  line-height:130%; height:110px; color:#fff; text-decoration:none; position:relative;
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post .title { display:block; font-size:14px; line-height:180%; width:calc(100% - 102px); max-height:75px; overflow:hidden; position:absolute; top:50%;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}
#previous_next_post a:hover { background:#ff4001; color:#fff; text-decoration:none; }
#previous_next_post a:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; margin:-0.5em 0 0 0; width:20px; position:absolute; top:50%;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_post .prev_post a { padding-left:65px; }
#previous_next_post .next_post a { padding-right:65px; }
#previous_next_post .prev_post a:before { content:'\e90f'; left:35px; text-align:left; }
#previous_next_post .next_post a:before { content:'\e910'; right:35px; text-align:right; }


/* 広告 */
#single_banner_area { margin:0 0 50px; text-align:center; }
#single_banner_area .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area img { max-width:100%; height:auto; display:block; }
#single_banner_area.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area.one_banner img { margin:0 auto; }


/* 広告（ページ下部） */
#single_banner_area_bottom { margin:0 0 50px; text-align:center; }
#single_banner_area_bottom .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area_bottom .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area_bottom img { max-width:100%; height:auto; display:block; }
#single_banner_area_bottom.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area_bottom.one_banner img { margin:0 auto; }


/* 広告（ショートコードver） */
#single_banner_area2 { margin:0 0 30px 0; text-align:center; }
#single_banner_area2 .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area2 .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area2 img { max-width:100%; height:auto; display:block; }
#single_banner_area2.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area2.one_banner img { margin:0 auto; }


/* 関連記事 */
#related_post { margin:0; }
#related_post .headline { margin:0 0 20px 0; font-weight:400; font-size:20px; }
#related_post ol { margin:0 0 20px 0; position:relative; font-size:0; }
#related_post li { width:250px; margin:0 25px 30px 0; display:inline-block; vertical-align:top; }
#related_post li:nth-child(3n) { margin-right:0; }
#related_post li .image { margin:0 0 10px 0; display:block; width:100%; height:0; overflow:hidden; padding-top:60%; position:relative; }
#related_post li a.image img { width:100%; height:auto; position:absolute; top:0; left:0; }
#related_post li .title { font-size:14px; line-height:160%; font-weight:400; }
#related_post li .title a { display:block; text-decoration:none; -ms-word-wrap: break-word; word-wrap: break-word; }




/* ----------------------------------------------------------------------
 お知らせ
---------------------------------------------------------------------- */

/* お知らせ一覧 */
#recent_news { margin:0 0 30px 0; }
#recent_news .headline { margin:0 0 30px 0; font-size:24px; font-weight:400; }
#recent_news ol { border:1px solid #ddd; border-bottom:none; }
#recent_news li { border-bottom:1px solid #ddd; line-height:160%; position:relative; }
#recent_news li:hover { background:#f7f7f7; }
#recent_news .title { display:inline; margin:0; font-weight:400; }
#recent_news .title a { display:block; padding:20px 20px 20px 120px; text-decoration:none; position:relative; }
#recent_news .no_date .title a { padding-left:20px; }
#recent_news .date { display:inline; font-size:12px; font-weight:700; position:absolute; top:50%; left:20px;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}

#recent_news .date {
  font-family: 'Arial';
}




/* ----------------------------------------------------------------------
 プログラム
---------------------------------------------------------------------- */
.program_header { height:55px; overflow:hidden; background:#000; }
.program_header .program_category_title { display:block; float:left; margin:0 20px 0 0; padding:0 20px; line-height:55px; background:#ff4001; color:#fff; font-size:20px; font-weight:400; }
.program_header .program_category_subtitle { display:block; margin:0; padding:0; height:100%; color:#ff4001; font-size:14px; font-weight:400; line-height:1.2; position:relative; }
.program_header .program_category_subtitle span { padding:0 20px 0 0; position:absolute; top:50%;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%); }

/* プログラム一覧 */
#program_list { margin:0; margin-bottom: 50px; }
#program_list li { margin:0 0 1px 0; }
#program_list .program { padding:0; width:100%; height:150px; overflow:hidden; position:relative; }
#program_list .program a { display:block; width:100%; height:100%; color:#fff; text-decoration:none; background:#000; }
#program_list .program .image_offset { display:block; min-width:100%; position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%,-50%); -moz-transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -o-transform:translate(-50%,-50%); transform:translate(-50%,-50%);
}
#program_list .program img { display:block; min-width:100%; height:150px; }
#program_list .program .caption { width:100%; font-size:32px; line-height:1.2; position:absolute; top:50%; left:0; z-index:2;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}
#program_list .program .program_title { margin:0; padding:0 20px 0 40px; font-size:32px; font-weight:400; }
#program_list .program .program_subtitle { margin:0; padding:5px 20px 0 40px; font-size:16px; font-weight:400; }
#program_list .program a:hover { color:#fff; text-decoration:none; background:#ff4001; }
#program_list .program a:hover img { opacity:0.5; }

/* プログラム詳細 */
.program_content #post_title { margin:50px 0 5px 0; font-size:40px; font-weight:400; }
.program_content .headline2, .program_content .headline3, .program_content .headline4 { font-size:24px; font-weight:400; }
.program_content .headline2, .program_content .headline3 { line-height:1.5; }
.program_content .headline2 { padding-top:0; margin-top:33px; }
.program_content .headline4 { padding-top:13px; }
.program_content .image img { display:block; width:100%; height:auto; }
.program_content.program_content .post_row { margin-left:-20px; margin-right:-20px; }
.program_content .post_row .post_col, .program_content .post_row .post_col-2, .program_content .post_row .post_col-3 { padding-left:20px; padding-right:20px;  }
.program_content .post_row .post_col-2 .image { margin-top:26px; }


/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */

/* 基本設定 */
.side_widget { margin:0 0 50px 0; font-size:14px; position:relative; line-height: 1.6;}
.side_widget:last-child, .side_widget:only-child  { margin:0; }
.side_headline, #side_col .widget_block .wp-block-heading { font-size:20px; font-weight:400; margin:0 0 20px 0; color:#ff4001; }
.side_widget ul { margin: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%; }


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


/* カレンダー */
/*.widget_calendar { border:1px solid #ddd; padding:15px; }*/
/*.widget_calendar .side_headline { margin:-16px -16px 20px; position:relative; }*/
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:2px; line-height: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; }

#footer_widget #wp-calendar th,#footer_widget #wp-calendar td{
  color: #fff;
}

#footer_widget:after{
  content: "";
  display: block;
  width: 300px;
  height: 0;
}

/* デザインされた記事一覧１ */
.styled_post_list1 { margin:0; padding:0; }
.styled_post_list1 li { margin:0 0 18px 0; padding:0; }
.styled_post_list1 li:last-child { margin:0; }
.styled_post_list1 .title { font-size:14px; margin:0; padding:0; display:block; font-weight:400; line-height:180%; text-decoration:none; }
.styled_post_list1 .date { margin:0 0 8px 0; color:#ff4001; position:relative; display:block; }
.styled_post_list1 .date {
  font-family: 'Arial';
}
.styled_post_list1 .image { float:left; display:block; margin:6px 20px 0 0; overflow:hidden; width:120px; height:120px; }


/* 開閉式カテゴリー一覧 */
.tcdw_category_list_widget { }
.collapse_category_list { margin:0; padding:0; }
.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 { display:block; padding:12px 18px 12px 20px; margin:0; text-decoration:none; position:relative; color:#fff; background:#000; overflow:hidden; }
.collapse_category_list li a:hover { background:#ff4001; }
.collapse_category_list li a .count { float:right; top:0px; position:relative; padding:0 10px; min-width:15px; text-align:center; font-size:11px; border:1px solid rgba(255,255,255,0.3); border-radius:2px; }
.collapse_category_list li li a .count {}
.collapse_category_list li li li a .count {}
.collapse_category_list .parent_category a.active { margin:0; }
.collapse_category_list .children { display:none; }
.collapse_category_list .children a { padding-left:30px; margin:0; }
.collapse_category_list ul .children a { padding-left:40px; }


/* 検索 */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s, .widget.google_search #s { width:260px; height:40px; margin:0; border:1px solid #ccc; background:#f2f2f2; padding:0 10px; }
.widget_search #search-btn input, .widget_search #searchsubmit { border:none; width:40px; height:40px; background:#000 url(img/common/icon_search_white.png) no-repeat center; cursor:pointer; display:block; float:right; text-indent:-300%; overflow:hidden; }
.widget.google_search #searchsubmit{ font-family: 'design_plus'; color:#fff; font-size:18px; border:none; width:40px; height:40px; background:#000; cursor:pointer; display:block; float:right; overflow:hidden; }
.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .widget.google_search #searchsubmit:hover { background-color:#ff4001; color:#fff; }


/* アーカイブ、カテゴリードロップダウンメニュー */
.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select { border:1px solid #ddd; padding:12px 10px; width:100%; margin:0; font-size:14px; }
.widget_archive select { padding:12px; }
.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; }

/* プログラム一覧、バナーリスト1 */
ul.banner_list1 { margin:0; padding:0; }
ul.banner_list1 li { margin:0 0 7px 0; padding:0; width:100%; height:100px; overflow:hidden; position:relative; }
ul.banner_list1 li:last-child { margin-bottom:0; }
ul.banner_list1 li .image { display:block; width:100%; height:100%; color:#fff; text-decoration:none; background:#fff; }
ul.banner_list1 li .image_offset { display:block; position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%,-50%); -moz-transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -o-transform:translate(-50%,-50%); transform:translate(-50%,-50%);
}
ul.banner_list1 li img { display:block; min-width:100%; max-width:none; height:100px; }
ul.banner_list1 li .caption { width:100%; padding:0 20px; font-size:16px; font-weight:400; line-height:1.4; position:absolute; top:50%; left:0; z-index:2;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
ul.banner_list1 li .image:hover { color:#fff; text-decoration:none; background:#ff4001; }
ul.banner_list1 li .image:hover img { opacity:0.5; }

/* バナーリスト2 */
ul.banner_list2 { margin:0; padding:15px; background:#000; }
ul.banner_list2 li { margin:0 0 9px 0; padding:0; width:100%; height:150px; overflow:hidden; position:relative; }
ul.banner_list2 li:last-child { margin-bottom:0; }
ul.banner_list2 li a { display:block; width:100%; height:100%; color:#fff; text-decoration:none; }
ul.banner_list2 li .image_offset { display:block; min-width:100%; position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%,-50%); -moz-transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -o-transform:translate(-50%,-50%); transform:translate(-50%,-50%);
}
ul.banner_list2 li img { display:block; min-width:100%; max-width:none; min-height:150px; }
ul.banner_list2 li .caption { width:100%; padding:0 20px; font-size:16px; font-weight:400; line-height:1.4; position:absolute; top:50%; left:0; z-index:2;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
  -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box;
}
ul.banner_list2 li .caption2 { text-align:right; }
ul.banner_list2 li .image:hover { color:#fff; text-decoration:none; background:#ff4001; }
ul.banner_list2 li .image:hover img { opacity:0.5; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_top { background:#000; color:#fff; }
#footer_top_inner { width:1150px; margin:0 auto; padding:60px 0 50px; text-align:center; }
#footer_top a { color:#fff;}
#footer_top .post_content a{text-decoration: underline;}
#footer_top a:hover { color:#ff4001; }

/* logo */
#footer_logo { margin:0 0 20px; }
#footer_logo .logo { font-size:34px; margin:0; }
#footer_logo .desc { font-size:12px; margin:20px 0 0 0; }

/* 住所 */
#footer_address { margin:20px 0 9px; text-align:center; font-size: 14px; }
#footer_address span { display:inline-block; }

/* SNSボタン */
#footer_social_link { display:none; }
#footer_social_link li { display:inline-block; margin:0 3px; position:relative; }
#footer_social_link li a {
  display:block; text-indent:-200px; overflow:hidden; width:30px; height:30px; position:relative;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none;
}
#footer_social_link li:before {
  font-family:'design_plus'; color:#fff; font-size:17px; display:block; position:absolute; top:10px; left:9px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li:hover:before { color:#ff4001; }
#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'; margin-top:1px; }
#footer_social_link li.rss:before { content:'\e90b'; }

/* コピーライトエリア */
#footer_bottom { background:#ff4001; width:100%; }
#footer_bottom_inner { width:1150px; margin:0 auto; position:relative; }

/* コピーライト */
#copyright { padding:16px 10px; font-size:12px; line-height:1.5; color:#fff; text-align:center; }
#copyright a { color:#fff; }

/* ページ上部へ戻るボタン */
#return_top { position:relative; text-align:center; }
.pc #return_top { bottom:initial !important; }
#return_top a { display:block; height:50px; text-decoration:none; backgeound:rgba(0,0,0,0.8); }
#return_top a span { display:none; }
#return_top a:before {
  font-family:'design_plus'; color:#fff; font-size:16px; display:block; position:absolute; top:50%; left:50%; margin:-0.4em 0 0 -0.5em;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top a:before { content:'\e911'; }


/* フッターバナー */
#footer_banners { color:#fff; background:#000; }
#footer_banners_inner { width:100%; display:-webkit-flex; display:flex; }
.footer_banner { width:100%; overflow:hidden; position:relative; }
.footer_banner img { display:block; width:100%; height:auto; /*min-height:100%;*/ }
.footer_banner .caption { width:100%; line-height:1.5; position:absolute; top:50%; left:0; z-index:2;
  -webkit-transform:translateY(-50%); -moz-transform:translateY(-50%); -ms-transform:translateY(-50%); -o-transform:translateY(-50%); transform:translateY(-50%);
}
.footer_banner .footer_banner_headline { margin:0; padding:0 15%; font-size:24px; font-weight:400;  }
.footer_banner .footer_banner_desc { margin:10px 0 0 0; padding:0 15%; font-weight:400; color:#fff; }
.footer_banner .footer_banner_desc p { margin:0 0 1em 0; }
.footer_banner .image { display:block; width:100%; height:100%; }
.footer_banner .image:hover { color:#fff; text-decoration:none; background:#ff4001; }
.footer_banner .image:hover img { opacity:0.5; }


/* フッターウィジェット */
#footer_widget { margin:0 auto 45px auto; padding:0; font-size:0; text-align:center; border-bottom:1px solid #222;display: flex; flex-wrap: wrap;justify-content: space-between; }
.footer_widget { display:inline-block; vertical-align:top; font-size:14px; line-height:160%; text-align:left; width:300px; overflow:hidden; margin:0 20px 46px 0; padding:0; position:relative; }
#footer_widget.has-only-nav-widget .footer_widget.widget_nav_menu { width:150px; margin-right:10px; }
.footer_headline,#footer_widget .widget_block .wp-block-heading { margin:0 0 18px 0; font-size:14px; color:#aaa; line-height:1; font-weight:600; }
.footer_widget ul { margin:0; }
.footer_widget li ul { margin:10px 0 10px 10px; }
.footer_widget li { line-height:160%; padding:0; margin:0 0 10px 0; }
.footer_widget li li {  }
.footer_widget a { color:#fff; text-decoration:none; }
.footer_widget a:hover { color:#ff4001; text-decoration:none; }
.footer_widget img { height:auto; max-width:100%; }

.footer_widget .banner_list2 { padding:0; }
.footer_widget .collapse_category_list { border:1px solid #222; border-top:0; margin:0; padding:0; }
.footer_widget .collapse_category_list ul { margin:0; padding:0; }
.footer_widget .collapse_category_list li { border-top:1px solid #222; margin:0; padding:0; }
.footer_widget .collapse_category_list li a { background:transparent !important; }
.footer_widget .collapse_category_list li a .count { border:1px solid #222; }

.footer_widget.widget_search #search-btn input, .footer_widget.widget_search #searchsubmit, .footer_widget.widget.google_search #searchsubmit { background-color:#fff; }
 #footer_widget .widget.google_search #searchsubmit{
  color: #000;
 }
 #footer_widget .widget.google_search #searchsubmit:hover{
  color: #fff;
 }

 #footer_widget .widget_search #searchsubmit{
  background-image: url(img/common/icon_search.png);
}
#footer_widget .widget_search #searchsubmit:hover{
  background-image: url(img/common/icon_search_white.png)
}

/*.widget_search #searchsubmit{
  background-color: #fff;
}*/


/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color: inherit;}
.widget_rss .rss-widget-title:hover{ text-decoration: underline; }
.widget_rss li { border-bottom:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px;}
.widget_rss li:first-child{
  padding-top: 0;
  margin-top: 10px;
}
.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; }

#footer_widget .widget_rss ul li .rssSummary,
#footer_widget .widget_rss ul li .rss-date,
#footer_widget .widget_rss ul li cite  { color: #fff; }
.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; text-decoration: none;}

#footer_widget  .tagcloud a{
  color: #000;
}
#footer_widget  .widget_tag_cloud .tagcloud a:hover {
  background:#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; }
#footer_widget .widget_recent_entries .post-date{
  color: #fff;
}
.widget_recent_entries .post-date:before {
  font-family:'design_plus'; content:'\e94e'; font-size:13px; display:inline-block; margin:0 7px 0 0; vertical-align:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}

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


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


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

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

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

/* カレンダー */
#calendar_wrap { padding:0; margin:-6px 0 -20px; }
#wp-calendar { margin:0 auto; width:100%; font-size:14px; border-collapse:collapse; table-layout:fixed;}
#wp-calendar caption { padding:12px 0; font-size:16px; font-weight:600; }
#wp-calendar thead th, #wp-calendar tfoot td { padding:12px 10px; line-height:2; }
#wp-calendar thead th { font-weight:500; }
#wp-calendar tbody th, #wp-calendar tbody td { padding:0; margin:0; line-height:1; text-align:center; }
#wp-calendar tbody span { display:block; padding:15px 10px; }
#wp-calendar tbody a { display:block; width:30px; height:30px; line-height:30px; border-radius:30px; margin:0 auto; text-decoration:none; background-color:#000; color:#fff; }
#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 5px; max-height:50%;  transform: translateY(50%);
  opacity:0; padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.widget_media_gallery .gallery-item { margin-top:0 !important; }
.widget_media_gallery .gallery-item img{border: none!important;}
.widget_media_gallery .gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%;  }
.widget_media_gallery .gallery-item:hover .gallery-caption { opacity: .7; transition: all .25s ease; transform: translateY(0%);}



/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */

/* 基本設定 */
#comments { font-size:12px; margin:0; margin-bottom: 50px; }
#comment_headline { margin:0 0 20px 0; font-weight:400; }
#comment_area, #trackback_area { margin:15px 0 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


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


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


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

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

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

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

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


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


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


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

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


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



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

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

#comment_user_login p { padding:0 0 0 1px; margin:0; line-height: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:11px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

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

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

#input_hidden_field { display:none; }

/* ----- パスワード保護 ----- */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:12px; margin:0; line-height: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.4; margin:0 0 2em 0;word-wrap: break-word; }
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { clear:both; line-height:1.2; font-weight:400; 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%; padding-top:20px; }
.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; /*width:100% !important;*/ }
.post_content td, .post_content th { border:1px solid #bbb; padding:10px 15px; line-height:2.2; }
.post_content th { background:#ddd; font-weight:normal; }
/* table style */
.post_content table.table_no_border th, .post_content table.table_no_border td { border:none; padding-left:0; }
.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td { border-left:none; border-right:none; padding-left:0; }


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


/* ----------------------------------------------------------------------
 上付き文字、下付き文字
---------------------------------------------------------------------- */
sup {
  vertical-align: super;
  font-size: smaller;
  }
  sub {
  vertical-align: sub;
  font-size: smaller;
  }
  
  /* ----------------------------------------------------------------------
  ブロックエディターの埋め込みブロックのmargin調整
 ---------------------------------------------------------------------- */
 .wp-block-embed { margin-bottom: 2em; }
 
 /** ブロックエディターのテーブルブロックの調整 **/
.wp-block-table.is-style-stripes td,
.wp-block-table .has-background td{
  background-color: transparent;
}

/* ----------------------------------------------------------------------
クラシックエディターのテーブルの横スクロール対応
---------------------------------------------------------------------- */
@media (max-width: 767px) {
  .post_content .s_table{ overflow: auto; white-space: nowrap; margin-bottom: 2em; }
  .post_content .s_table table { margin-bottom: 0; }
  }
  