@charset "utf-8";
/*
Theme Name:STYLY
Theme URI:https://tcd-theme.com/tcd052
Description: WordPress theme "STYLY" build a simple and beautiful gallery site. You can not only arrange your products, but also place external links such as native ads, so please use it to monetize your gallery site.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-styly
Version:2.1
*/




/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
  font-family: 'design_plus';
  src: url('fonts/design_plus.eot?v=1.5');
  src: url('fonts/design_plus.eot?v=1.5#iefix') format('embedded-opentype'),
       url('fonts/design_plus.woff?v=1.5') format('woff'),
       url('fonts/design_plus.ttf?v=1.5') format('truetype'),
       url('fonts/design_plus.svg?v=1.5#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.5');
  src: url('fonts/tiktok_x_icon.eot?v=1.5#iefix') format('embedded-opentype'),
       url('fonts/tiktok_x_icon.woff?v=1.5') format('woff'),
       url('fonts/tiktok_x_icon.ttf?v=1.5') format('truetype'),
       url('fonts/tiktok_x_icon.svg?v=1.5#design_plus') 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%; }
.pc .admin-bar { padding-top:33px; }
a { color:#333; text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color, border-color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color, border-color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color, border-color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color, border-color; transition-duration:0.2s; transition-timing-function:ease;
}
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#main_contents { background:#fff; width:100%; position:relative; z-index:10; }
#main_col {
  width:1170px; min-width:1170px; margin:50px auto 100px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#left_col { width:820px; float:left; }
#side_col { width:300px; float:right; /*margin:0 0 50px 0;*/ }
.layout2 #left_col { float:right; }
.layout2 #side_col { float:left; }
.pc .no_side_content #left_col { width:auto; float:none; }




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

/* スライダー -------------------------------------------------------- */
#header_slider { width:100%; height:500px; min-width:1260px; overflow:hidden; position:relative; }
.slider_main { width:100%; height:500px; position:relative; }
.slider_main .swiper-slide { width:100%; height:500px; overflow:hidden; position:relative; -webkit-transform:perspective(0); }
.slider_main .item { position:absolute; width:100%; height:100%; left:0; top:0; -webkit-transform:perspective(0); }
.slider_main .image { display:none; }
.slider_main .caption_area { position:absolute; bottom:0; width:100%; height:60px; background:rgba(0,0,0,0.6); z-index:5; }
.slider_main .caption { height:60px; margin:0 50px; overflow:hidden; }
.slider_main .caption .title { font-size:16px; line-height:60px; font-weight:700; -ms-word-wrap: break-word; word-wrap: break-word; position:relative; }
.slider_main .caption .title a { display:block; color:#fff; }
.slider_main .caption .title a:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px;
  width:60px; height:60px; line-height:58px; text-align:center; background:#d80c49; display:block; position:absolute; top:0; right:0px;
}
.slider_main .caption .title a:hover:after { background:#000 !important; }


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


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


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

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


/* 検索フォーム */
#header_search {
  position:absolute; top:0; right:50px; left:50px; margin:0 auto; z-index:2;
  top:50%; margin-top:-20px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
}
#header_search .title { text-align:center; margin:0 0 28px 0; }
#header_search_form {
  background:rgba(255,255,255,0.3); padding:14px; width:478px; border-radius:5px; margin:0 auto;
  -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_search form { width:450px; }
#header_search .header_search_input {
  background:#fff; border:none; padding:0 15px; height:50px; line-height:100%; width:400px; float:left;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_search .header_search_submit {
  border:none; background:#D80C49; text-indent:-300px; overflow:hidden; color:#fff; height:50px; line-height:50px; width:50px; cursor:pointer;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_search .header_search_submit:hover { background:#18323f; }
#header_search .header_search_submit_wrap { cursor:pointer; display:block; width:50px; height:50px; float:right; position:relative; }
#header_search .header_search_submit_wrap:before {
  content:'\e915'; position:absolute; right:0px; left:0px; top:0px; bottom:0px; margin:auto;
  font-family:'design_plus'; color:#fff; font-size:18px; width:18px; height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 動画 ---------------------------------------------------------------- */
#header_video { width:100%; position:relative; background:#000; overflow: hidden; height:0; padding-bottom: 56.25%; }
#header_video .item, #header_video .overlay { display:block; width:100%; height:100%; z-index:2; position:absolute; left:0px; top:0px; }
#header_video video { display:block; position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); min-width: 100%; min-height: 100%; }
#header_video.mobile { height:500px; }
#header_video.youtube_header_video { height:0; padding-bottom: 56.25%; }

@media screen and (min-width: 768px) {
  #wrapper_youtube_video_player{ height:calc(100vw * 9 / 16); }
  #wrapper_youtube_video_player iframe { width:100% !important; margin-left: 0 !important; height: 100% !important; margin-top: 0 !important; }
}
@media screen and (max-width: 767px) {
  #wrapper_youtube_video_player iframe { height:100% !important; margin-top: 0 !important; }
}


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

/* 動画のキャプションのアニメーション */
.pc #header_video .caption .title, .pc #header_video .caption .button {
  opacity:0;
}
.pc #header_video .caption .title {
	-webkit-transform: translateY(-100%);
  transform: translateY(-100%);
}
.pc #header_video .caption .button {
	-webkit-transform: translateY(100%);
  transform: translateY(100%);
}
.pc #header_video .caption.first_active .title, .pc #header_video .caption.first_active .button {
  -webkit-animation: opacityAnimation 1.0s ease forwards 2.0s !important;
  animation: opacityAnimation 1.0s ease forwards 2.0s !important;
}
.pc #header_video .caption.first_active .title {
  -webkit-animation: moveUp 1.0s ease forwards 2.0s !important;
  animation: moveUp 1.0s ease forwards 2.0s !important;
}
.pc #header_video .caption.first_active .button {
  -webkit-animation: moveUp 1.0s ease forwards 2.1s !important;
  animation: moveUp 1.0s ease forwards 2.1s !important;
}

.mobile_device #header_video .caption .title, .mobile_device #header_video .caption .button {
  opacity:1;
}
.mobile_device #header_video .caption .title {
	-webkit-transform: translateY(0%);
  transform: translateY(0%);
}
.mobile_device #header_video .caption .button {
	-webkit-transform: translateY(0%);
  transform: translateY(0%);
}



/* ----- ヘッダーコンテンツここまで -------------------------------------- */


/* ニュースティッカー */
#news_ticker_wrap { margin:0; border-bottom:1px solid #ddd; width:100%; height:60px; }
#news_ticker { height:60px; margin:0 50px; position:relative; overflow:hidden; }
#news_list { }
#news_list .item { position:relative; margin:0; height:60px; }
#news_list .date { font-size:14px; float:left; /*width:100px;*/ margin:0 20px 0 0; color:#d80c49; line-height:60px; }
#news_list .title { font-size:14px; font-weight: 600; width:-webkit-calc(100% - 250px); width:-moz-calc(100% - 250px); width:calc(100% - 250px); float:left; line-height:60px; }
#news_list .title a { display:block; }
#news_ticker .button a { position:absolute; right:0px; top:0px; padding:0 25px 0 0; display:block; height:60px; line-height:60px; font-size:14px; }
#news_ticker .button a:after { font-family:'design_plus'; content:'\e910'; color:#333; font-size:12px; display:block; position:absolute; top:1px; right:0px; }


/* カスタム投稿一覧（アーカイブページでも利用） */
#cpt_list_wrap { width:100%; min-width:1260px; background:#eee; padding:50px 0 100px; position:relative; }
body.single #cpt_list_wrap { padding-bottom:50px; }
#cpt_list {
  width:100%; margin:0 auto 20px; padding:0 50px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#cpt_list .item {
  width:315px; width:-webkit-calc((100% - 90px) / 4); width:-moz-calc((100% - 90px) / 4); width:calc((100% - 90px) / 4);
  height:auto; margin:0 30px 30px 0; position:relative; float:left; opacity:0;
}
#cpt_list .item:nth-child(4n) { margin-right:0; }
#cpt_list .title { font-size:16px; padding:0; margin:0; font-weight:700; -ms-word-wrap: break-word; word-wrap: break-word; }
#cpt_list .title a { display:block; height:50px; line-height:50px; background:#fff; padding:0 20px; text-align:center; }
#cpt_list .title a:hover { background:#000; color:#fff; }
#cpt_list .pr_label { position:absolute; top:0; right:0; background:#000; color:#fff; font-size:11px; height:25px; line-height:25px; padding:0 10px;}
#cpt_list .image { width:100%; height:auto; display:block; overflow:hidden; position:relative; z-index:2; }
#cpt_list .image img { display:block; max-width:none; }
#cpt_list .data {
  width:100%; height:calc(100% - 100px); position:absolute; top:50px; left:0px; background:rgba(0,0,0,0.5); z-index:2; opacity:0;
  -webkit-transition-property: opacity; -webkit-transition: 0.25s; -moz-transition-property: opacity; -moz-transition: 0.25s; -ms-transition-property: opacity; -ms-transition: 0.25s; -o-transition-property: opacity; -o-transition: 0.25s; transition-property: opacity; transition: 0.25s;
}
#cpt_list .item:hover .data { opacity:1; }
#cpt_list .data_inner {
  position:relative; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  font-size:14px; color:#fff; text-align:center; padding:0 20px;
}
#cpt_list .data a { color:#fff; }
#cpt_list .data a:hover { color:#d80c49; }
#cpt_list .data .date { margin:0 0 15px 0; }
#cpt_list .data .category { margin:0 0 12px 0; line-height:1.5; }
/*#cpt_list .data .category a:before { content:', '; }*/
#cpt_list .data .category a:nth-child(2):before { display:none; }
#cpt_list .data ul { font-size:0; }
#cpt_list .data li { font-size:14px; display:inline; margin:0 6px; }
#cpt_list .data li a { background:#fff; width:45px; height:45px; line-height:45px; text-align:center; display:inline-block; border-radius:100%; position:relative; overflow:hidden; }
#cpt_list .data li a span { position:absolute; left:-200%; }
#cpt_list .data li a:hover { background:#d80c49; }
#cpt_list .data li a:after { font-family:'design_plus'; color:#333; font-size:19px; position:absolute; }
#cpt_list .data li.link1 a:after { content:'\e929'; left:13px; top:1px; }
#cpt_list .data li.link2 a:after { content:'\e92a'; left:13px; top:1px; }
#cpt_list .data li a:hover:after { color:#fff; }
#cpt_list .link_button li { float:left; width: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; }
#cpt_list .link_button li.link2 { border-left:1px solid #ddd; }
#cpt_list .link_button li a { display:block; width:100%; height:50px; line-height:50px; background:#fff; text-align:center; }
#cpt_list .link_button li.link1 a:hover { background:#000; color:#fff; }
#cpt_list .link_button li.link2 a:hover { background:#d80c49; color:#fff; }
#cpt_list .link_button.one_link li { width:100%; }
@media screen and (min-width:1700px) {
  #cpt_list_wrap { min-width:1700px; }
  #cpt_list .item { width:-webkit-calc((100% - 120px) / 5); width:-moz-calc((100% - 120px) / 5); width:calc((100% - 120px) / 5); }
  #cpt_list .item:nth-child(4n) { margin-right:30px; }
  #cpt_list .item:nth-child(5n) { margin-right:0px; }
}
@media screen and (min-width:2000px) {
  #cpt_list_wrap { min-width:2000px; }
  #cpt_list .item { width:-webkit-calc((100% - 150px) / 6); width:-moz-calc((100% - 150px) / 6); width:calc((100% - 150px) / 6); }
  #cpt_list .item:nth-child(4n) { margin-right:30px; }
  #cpt_list .item:nth-child(5n) { margin-right:30px; }
  #cpt_list .item:nth-child(6n) { margin-right:0px; }
}


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




/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */
/* 見出し */
#page_header { text-align:center; margin:0 0 50px 0; }
.archive_headline { font-weight:bold; font-weight:700!important; color:#d80c49; }
#page_header .desc { margin:20px 0 0 0; line-height:1.6; }
#cpt_search_header .archive_headline { color:#333; }


/* 記事一覧 */
#blog_list { margin:0 0 30px 0; }
#blog_list .item { width:385px; margin:0 50px 50px 0; position:relative; float:left; }
#blog_list .item:nth-child(2n) { margin-right:0; }
#blog_list .image { width:100%; height:auto; display:block; overflow:hidden; position:relative; z-index:2; margin:0 0 13.6px 0; }
#blog_list .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none; }
#blog_list .title { font-size:16px; line-height:1.8; padding:0; margin:0; font-weight:700; -ms-word-wrap: break-word; word-wrap: break-word; }
#blog_list .title a { display:block; }
#blog_list .meta { margin:8.6px 0 0 0; font-size:12px; }
#blog_list .meta li { display:inline; color:#aaa; line-height:1.2; }
#blog_list .meta li:last-child { border-left:1px solid #ccc; margin:0 0 0 10px; padding:0 0 0 10px; }
#blog_list .meta li:only-child { border:none; margin:0; padding:0; }
#blog_list .meta li a { color:#aaa; }


/* ページング */
.home .page_navi { margin-top:20px; }
.page_navi ul { margin:0; font-size:0; text-align:center; }
.page_navi li { display:inline; margin:0 3px 3px 0; }
.page_navi a, .page_navi a:hover, .page_navi span { font-size:14px; padding:14px 16px; line-height:1; margin:0; background:#fff; border:1px solid #ddd; color:#333; display:inline-block; }
.page_navi a:hover { color:#fff; background:#444; }
.page_navi span.dots { background:none; color:#333; }
.page_navi span.current { color:#fff; background:#d80c49; }
.home .page_navi a, .home .page_navi a:hover, .home .page_navi span, .cpt .page_navi a, .cpt .page_navi a:hover, .cpt .page_navi span { border:1px solid #fff; }

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




/* ----------------------------------------------------------------------
 カスタム投稿アーカイブページ
---------------------------------------------------------------------- */
#cpt_archive_bread_crumb { height:58px; border-bottom:1px solid #ddd; }
#cpt_archive_bread_crumb .taxonomy_name { float:left; height:59px; line-height:59px; background:#000; color:#fff; padding:0 50px; font-size:14px; font-weight:normal; }
#cpt_archive_bread_crumb .post_count { float:left; height:59px; line-height:59px; background:#18323f; color:#fff; padding:0 25px; font-size:12px; }
#cpt_archive_bread_crumb .term_name { float:left; height:58px; line-height:58px; padding:0 25px; font-size:16px; font-weight:500; }




/* ----------------------------------------------------------------------
 カスタム投稿詳細ページ
---------------------------------------------------------------------- */
/* タイトル */
#cpt_single_title_area #post_title { color:#000; width:820px; float:left; clear:both; }
#cpt_single_url_button a { float:right; display:inline-block; border:1px solid #ddd; height:50px; line-height:50px; padding:0 60px 0 40px; position:relative; margin:-10px 0 0 0; }
#cpt_single_url_button a:after { font-family:'design_plus'; content:'\e92a'; color:#333; font-size:18px; display:block; position:absolute; top:-1px; right:35px; }
#cpt_single_url_button a:hover { color:#fff; }
#cpt_single_url_button a:hover:after { color:#fff; }


/* スライダー */
#cpt_slider_wrap { background:#eee; padding:10px 0 10px 10px; margin:0 0 50px 0; }
#cpt_slider { width:800px; height:550px; margin:0; position:relative; overflow:hidden; }
#cpt_slider .item { width:800px; height:550px; }
#cpt_slider_nav { width:800px; margin:10px 0 0 0; }
#cpt_slider_nav .item { width:152px; height:114px; margin:0 10px 0 0; cursor:pointer; }
#cpt_slider_nav .item:before {
  display:block; content:''; width:152px; height:114px; background:rgba(0,0,0,0.3); opacity:0;
  -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -ms-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
#cpt_slider_nav .item:hover:before { opacity:1; }


/* キャッチフレーズ・PR */
#single_pr_label { height:25px; line-height:25px; padding:0 15px; font-size:11px; background:#a3a3a3; color:#fff; display:inline-block; margin:0 0 10px 0; }
.cpt_single_catch { font-size:24px; line-height:1.6; font-weight:bold; font-weight:700; margin:0 0 33px 0; }


/* データリスト */
#cpt_data dl { margin:13px 0 0 0; padding:0; border-top:1px solid #ddd; display:flex; display: -webkit-flex; flex-wrap:wrap; }
#cpt_data dt, #cpt_data dd {
  line-height:1.6; margin:0; padding:13.5px 15px; border:1px solid #ddd;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#cpt_data dt { background:#f5f5f5; border-top:none; border-right:none; width:200px; float:left; text-align:center; }
#cpt_data dd { border-top:none; float:left; width:-webkit-calc(100% - 200px); width:-moz-calc(100% - 200px); width:calc(100% - 200px); overflow-wrap: break-word; }
#cpt_data dd a:after { content:', '; }
#cpt_data dd a:last-child:after { display:none; }


/* 次の記事、前の記事 */
.cpt #single_share_bottom { margin-top:50px; }
.cpt #single_share_bottom .mb45 { margin-bottom:-5px !important; }
.cpt_prev_next_post { margin-top:50px !important; }




/* ----------------------------------------------------------------------
 お知らせのアーカイブページ
---------------------------------------------------------------------- */
#news_archive_list { margin:0 0 20px 0; }
#news_archive_list .item { margin:0; position:relative; }
#news_archive_list .image { width:170px; height:170px; display:block; overflow:hidden; position:relative; z-index:2; margin:0; float:left; }
#news_archive_list .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none; }
#news_archive_list .link {
  float:right; border:1px solid #ddd; border-left:none; border-bottom:none; display:block; color:#333; height:170px; position:relative;
  width:-webkit-calc(100% - 170px); width:-moz-calc(100% - 170px); width:calc(100% - 170px);
  -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_list .link_inner {
  padding:25px 55px;
  position:absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
}
#news_archive_list .title { font-size:16px; line-height:1.6; padding:0; margin:0; font-weight:700; -ms-word-wrap: break-word; word-wrap: break-word; }
#news_archive_list .date { margin:10px 0 0 0; color:#aaa; font-size:12px; }
#news_archive_list .link:hover { background:#f5f5f5; }
#news_archive_list .no_image .link { float:none; width:100%; border-left:1px solid #ddd; }
#news_archive_list .item:last-child .link { border-bottom:1px solid #ddd; }




/* ----------------------------------------------------------------------
 お知らせの詳細ページ
---------------------------------------------------------------------- */
/* タイトル */
.single-news #post_title { color:#333; }


/* お知らせ一覧 */
#single_news_list { margin:40px 0 0 0; position:relative; }
#single_news_list h2 { font-size:14px; margin:0; font-weight:400; background:#d80c49; height:50px; line-height:50px; color:#fff; padding:0 20px; }
#single_news_list .item { background:#fff; border:1px solid #ddd; position:relative; margin:0 0 -1px 0; }
#single_news_list .item:first-child, #single_news_list .item:only-child { border-top:none; }
#single_news_list .item a { display:block; color:#333; padding:20px 20px; }
#single_news_list .item a:hover { background:#f7f7f7; }
#single_news_list .date { font-size:12px; float:right; text-align:right; width:80px; margin:0; color:#aaa; line-height:1.7; }
#single_news_list .title { font-size:14px; width:660px; float:left; line-height:1.5; -ms-word-wrap: break-word; word-wrap: break-word; }
#single_news_list .link { font-size:12px; position:absolute; right:20px; top:18px; color:#fff; padding:0 20px 0 0; }
#single_news_list .link:after { font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px; display:block; position:absolute; top:1px; right:0px; }




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


/* カテゴリー */
#post_meta_top { margin:-51px 0 40px; position:relative; }
#post_meta_top li { float:left; }
#post_meta_top .category { margin-right:-1px; z-index:2; position:relative; }
#post_meta_top .category a { font-size:12px; background:#333; color:#fff; display:inline-block; height:40px; line-height:40px; padding:0 35px; text-align:center; float:left; }
#post_meta_top .category a { display:none; }
#post_meta_top .category a:first-child, #post_meta_top .category a:only-child { display:block; }
#post_meta_top .date {
  font-size:12px; height:40px; line-height:40px; border:1px solid #ddd; border-top:none; padding:0 22px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#post_meta_top .date span { margin:0 10px 0 0; }


/* 記事タイトル */
#post_title { font-size:26px; line-height:1.6; font-weight:bold; font-weight:700; color:#000; margin:0 0 39px 0; word-wrap: break-word; }
body.page #post_title { text-align:center; margin-bottom:61.6px; }
.pc .no_side_content #post_title { text-align:center; }


/*  記事本文*/
#article .post_content { }
.single #article .post_content { }
.post_content iframe{ width: 100%; }


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


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


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


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


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


/* 広告 */
#single_banner_top { margin:5px 0 30px; text-align:center; }
#single_banner_bottom { margin:50px 0 48px 0; text-align:center; }
#single_banner_shortcode { margin:0 0 30px 0; padding:10px 0 0 0; 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_bottom img { max-width:100%; height:auto; display:inline-block; }


/* 関連記事 */
#related_post { margin:90px 0 0 0; }
#related_post .headline { font-size:14px; margin:0 0 35px 0; font-weight:bold; font-weight:700px; background:#d80c49; height:50px; line-height:50px; color:#fff; padding:0 20px; }
#related_post ol { margin:0; position:relative; font-size:0; }
#related_post li { width:250px; display:inline-block; vertical-align:top; margin:0 35px 35px 0; }
#related_post li:nth-child(3n) { margin-right:0; }
#related_post li:nth-last-child(1), #related_post li:nth-last-child(2), #related_post li:nth-last-child(3) { margin-bottom:0; }
#related_post .image { display:block; margin:0 0 12px 0; overflow:hidden; width:100%; height:auto; position:relative; z-index:2; }
#related_post .image img {
  display:block;
  -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none;
}
#related_post .title { font-size:14px; line-height:1.9; font-weight:400; -ms-word-wrap: break-word; word-wrap: break-word; }
#related_post .title a { display:block; }
#related_post .title a:hover { text-decoration:none; }




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */
.page #main_col { margin-top:60px; }

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


/* 404ページ */
#header_image_for_404 { width:100%; max-width:1170px; margin:0 auto 20px; position:relative; overflow:hidden; }
#header_image_for_404 img { width:100%; height:auto; display:block; }
#header_image_for_404 .caption { margin:0; width:100%; padding:0 30px; line-height:1.5; text-align:center; color:#fff; position:absolute; top:50%; left:50%;
  -webkit-transform:translate(-50%, -50%); -mox-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); -o-transform:translate(-50%, -50%); transform:translateY(-50%, -50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_image_for_404 .caption p + p {
	margin-top: 0.5em;
}


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


/* 記事一覧 */
.page_post_list { overflow:hidden; }
.page_post_list .headline { margin:0 0 30px 0; font-weight:400; }
.page_post_list ol { position:relative; list-style-type:none;  margin:0 -20px -20px 0; padding:0; font-size:0; }
.page_post_list li {
  background:none; display:inline-block; vertical-align:top; position:relative;
  width:25%; margin:0 20px 20px 0; padding:0;
  width:-webkit-calc(25% - 20px); width:-moz-calc(25% - 20px); width:calc(25% - 20px);
}
.page_post_list li:nth-child(4n) { margin-right:0px; }
.page_post_list .image_area { position:relative; width:100%; margin:0 0 15px 0; }
.page_post_list .image_area:before { content:""; display:block; padding-top:100%; }
.page_post_list .image_area:before { padding-top:100%; }
.page_post_list .image { display:block; overflow:hidden; position:absolute; top:0; bottom:0; left:0; right:0; z-index:2; }
.page_post_list .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none !important; }
.page_post_list .title { font-size:14px; margin:0; padding:0; display:block; font-weight:400; line-height:1.6; -ms-word-wrap: break-word; word-wrap: break-word; }
.page_post_list .title:hover { text-decoration:none; }
.page_post_list .category { display:inline-block; position:absolute; top:0px; left:0px; z-index:3; }
.page_post_list .category a { font-size:12px; background:#333; color:#fff; display:block; height:40px; line-height:40px; padding:0 22px; text-decoration:none; }
.page_post_list .category a:hover { background:#333 !important; color:#fff; }
.page_post_list .meta { margin:10px 0 0 0; padding:0; }
.page_post_list .meta li { display:inline; margin:0; padding:0; width:auto; line-height:1.5; color:#aaa; font-size:12px; }
.page_post_list .meta li:last-child { margin:0 0 0 10px; padding:0 0 0 10px; border-left:1px solid #ccc; }
.page_post_list .meta li:only-child { margin:0; padding:0; border:none; }
.page_post_list .meta a { color:#aaa; }


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




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header {
  height:100px; width:100%; min-width:1260px; position:relative; z-index:20;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#header_inner { height:100px; width:1170px; margin:0 auto; position:relative; }
.pc body.home #header_inner, .pc body.cpt_archive #header_inner { width:auto; }


/* 固定ヘッダー */
.pc .header_fix { padding-top:150px; }/* #header_inner height + #header margin bottom */
.pc .header_fix #header_top {
  position:fixed; top:0px; left:0px; z-index:200; border-bottom:1px solid #ddd; background:#fbfbfb; height:50px; width:100%;
  animation: slideDown 0.5s ease; -ms-animation: slideDown 0.5s ease; -webkit-animation: slideDown 0.5s ease; -moz-animation: slideDown 0.5s ease;
}
.pc .header_fix #header,.pc .header_fix #header_inner { height:auto; }
@-webkit-keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}
@keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}


/* ロゴ */
.pc #logo_text, .pc #logo_image {
  display:inline; position:absolute; left:0; right:0; top:50%; text-align:center;
  -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%);
}
#logo_image .logo { }
.pc #logo_image img.pc_logo_image { display:block; margin:0 auto; }
.pc #logo_image img.mobile_logo_image { display:none; }
.pc #logo_text h1 { line-height:1; }
.pc #tagline { margin:5px 0 0; height:1; font-size:14px; font-weight:normal; }
.pc #logo_text a { text-decoration:none; }
.pc .header_fix #header #logo_text, .pc .header_fix #header #logo_image { display:none; }


/* グローバルメニュー */
.pc #global_menu_wrap { width:100%; min-width:1260px; height:50px; background:#d80c49; position:relative; z-index:20; }
.pc #global_menu { width:1170px; height:50px; text-align:center; margin:auto; font-size:0; }
.pc #global_menu > ul { display:inline-block; height:50px; font-size:0; position:relative; vertical-align:top; }
.pc #global_menu > ul > li { font-size:1%; position:relative; display:inline-block; }

.pc #global_menu > ul > li > a {
  font-size:14px; text-decoration:none; height:50px; line-height:50px; display:block; padding:0 25px;
  background:#d80c49; margin:0; 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;
}
.pc #global_menu > ul > li.active > a { color:#fff !important; }
.pc #global_menu a:hover { color:#fff !important; }

.pc #global_menu ul ul { display:none; width:230px; 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:1.5; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { font-size:14px; background:#f2f2f2; color:#fff; display:block; border:none; position:relative; padding:14px 20px; height:auto; line-height:1.6; 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:after{ content:'\e910'; right:10px; left:auto; font-family: "design_plus";position: absolute;}
.pc .header_fix #header #global_menu { bottom:-1px; }
.pc #menu_button { display:none; }
.pc #link_menu_button { display:none; }


/* 子メニューを逆方向にする */
#global_menu > ul > li.rev ul, #global_menu > ul > li:nth-last-of-type(1) ul{ right:0; left:auto !important; }
#global_menu > ul > li.rev ul ul, #global_menu > ul > li:nth-last-of-type(1) ul ul { left:auto; right:100%; }
#global_menu > ul > li.rev ul li.menu-item-has-children > a:before, #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a:before { content:'\e90f'; right:auto; left:-10px; font-family: "design_plus";position: relative;}
#global_menu > ul > li.rev ul li.menu-item-has-children > a:after, #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a:after { content:''; }
#global_menu > ul > li.rev ul li.menu-item-has-children > a, #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a { padding-left: 20px; }


/* メガメニュー */
#slide_menu { display:block; width:100%; min-width:1170px; background:#222; position:absolute; top:150px; z-index:20; }
#slide_menu .menu_wrap { width:100%; display:none; }
#slide_menu .menu_wrap ul { width:1170px; margin:0 auto; }

#slide_menu a { color:#fff; display:block; height:50px; line-height:50px; padding:0 0 0 20px; }
#slide_menu a span.count {
  float:right; display:inline-block; background:#18323f; min-width:40px; height:40px; line-height:40px; font-size:12px; text-align:center; margin:5px 5px 0 0; padding:0 12px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#slide_menu ul { overflow:hidden; border-bottom:1px solid #000; }
#slide_menu li {
  float:left; width:20%; border:1px solid #000; margin:0 -1px -1px 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;
}
#slide_menu a:hover  { background:#d80c49; }
.header_fix #slide_menu { top:50px; }


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

.social_link li.youtube a { width: 60px; }
.social_link li.youtube a:before { content: '\ea9e'; width: 35px; }
.social_link li.youtube a:hover:before { color: #DA1725; }

/* パンくずリンク */
#bread_crumb { width:100%; min-width:1170px; height:60px; border-bottom:1px solid #ddd; }
#bread_crumb ul { margin:0 auto; width:1170px; padding:22px 0 0 0; }
#bread_crumb li.home { padding:0; }
#bread_crumb li.home a {
  float:left; height:15px; width:13px; 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:#333; font-size:14px; display:block; position:absolute; top:1px; 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:#000; }
#bread_crumb li { font-size:12px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:1.6; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#333; font-size:9px; height:9px; display:block; position:absolute; left:-20px; top:3px; bottom:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#333; }


/* translations */
.pc #translated_sites{
  display: block;
  position: absolute;
  top: 0;
  right: 50px;
  height: 50px;
}
.pc #translated_sites li span{
  position: relative;
  width: 18px;
  height: 18px;
  overflow: hidden;
  border-radius: 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
  margin-top: -2px;
  border: 1px solid #bbb;
}
.pc #translated_sites li span img{
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pc #translated_sites.horizontal li{
  display: inline-block;
  height: 50px;
  line-height: 50px;
  margin-left: 10px;
}
.pc #translated_sites.horizontal li a{
  display: block;
}
.pc #translated_sites.horizontal li div{
  display: block;
}

.pc #translated_sites.vertical li{
  display: block;
  height: 50px;
  line-height: 50px;
}
.pc #translated_sites.vertical li a, .pc #translated_sites.vertical li .stay{
  display: block;
  height: 50px;
  line-height: 50px;
  padding: 0 20px;
  margin: 0;
  overflow: hidden;
  min-width: 100px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}

.pc #translated_sites.vertical li ul { display:none; width:auto; position:absolute; top:50px; left:0px; margin:0; padding:0; }
.pc #translated_sites.vertical li ul li { line-height:1.5; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #translated_sites.vertical li ul a { font-size:14px; display:block; border:none; position:relative; padding:14px 20px; height:auto; line-height:1.6; margin:0; text-align:left; box-shadow:none; }
.pc #translated_sites.vertical li ul a:hover { text-decoration:none; border:none; }



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

/* ブログボタン */
.footer_blog_button { display:inline-block; font-size:14px; background:#d80c49; color:#fff !important; height:50px; line-height:50px; padding:0 65px 0 40px; float:right; position:relative; z-index:10; box-sizing:border-box; min-width:180px; text-align:center; }
.footer_blog_button:after { font-family:'design_plus'; content:'\e910'; color:#fff; font-size:12px; display:block; position:absolute; top:1px; right:40px; }
.footer_blog_button:hover { background:#000; }
.home .footer_blog_button, .cpt .footer_blog_button { margin-top:-50px; }


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

#fixed_footer_content .free {
  width:100%; padding-right:100px; position:absolute; left:40px; top:50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .post_content p { font-size:14px; margin:0; line-height:1.6; }


/* スライダー */
#footer_slider_wrap { width:100%; min-width:1260px; height:100px; padding:50px 0; background:#222; overflow:hidden; }
#footer_slider { width:1170px; margin:0 auto; position:relative; }
#footer_slider .item { margin:0 10px 0 0; position:relative; width:290px; height:100px; overflow:hidden; }
#footer_slider .image { display:block; width:100px; height:100px; float:left; }
#footer_slider .image img { display:block; width:100%; height:auto; }
#footer_slider .title {
  float:left; display:block; height:100px; position:relative; text-decoration:none; line-height:1.6; font-size:14px; color:#fff; -ms-word-wrap: break-word; word-wrap: break-word;
  width:-webkit-calc(100% - 100px); width:-moz-calc(100% - 100px); width:calc(100% - 100px);
}
#footer_slider .title span {
 display:block; padding:0 20px; max-height:90px; overflow:hidden; margin-top:-4px; /* アイキャッチとツラあわせる */
}


/* スライダーの矢印 */
#footer_slider .slick-arrow {
  width:30px; height:30px; position:absolute; opacity:0; overflow:hidden; cursor:pointer; background:none !important;
  -webkit-transition: all 0.3s ease-in-out; -moz-transition: all 0.3s ease-in-out; -ms-transition: all 0.3s ease-in-out; -o-transition: all 0.3s ease-in-out; transition: all 0.3s ease-in-out;
}
#footer_slider .slick-arrow span { text-indent:-200px; display:block; }
#footer_slider .slick-arrow:before {
  font-family:'design_plus'; color:#fff; font-size:24px; font-weight:bold; display:block; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_slider .slick-prev:before { content:'\e90f'; }
#footer_slider .slick-next:before { content:'\e910'; }
#footer_slider .slick-prev { top:42px; left:-100px; }
#footer_slider .slick-next { top:42px; right:-100px; }
.pc #footer_slider_wrap:hover .slick-prev { left:-50px; opacity:1; }
.pc #footer_slider_wrap:hover .slick-next { right:-50px; opacity:1; }


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


/* 紹介文 */
#footer_info { width:330px; float:left; margin:0 88px 0 0; overflow:hidden; }
.footer_logo { margin:0 0 30px 0; }
#footer_info .info { margin:0 0 20px 0; }
#footer_info .info p { line-height:2.0; font-size:14px; }
#footer_social_link { left:-10px; position:relative; }


/* フッター下部 */
#footer_bottom {
  width:100%; min-width:1260px; height:59px; line-height:59px; border-top:1px solid #ddd; text-align:center; background:#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;
}


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


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




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


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


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


/* デザインされた記事一覧１ */
.styled_post_list1_widget { }
.styled_post_list1 { margin:-6px 0 0; padding:0; }
.styled_post_list1 li { margin:0 0 20px 0; padding:0; background:none; }
.styled_post_list1 li:last-child { border:none; padding:0; margin:0; }
.styled_post_list1 .image { float:left; display:block; margin:6px 20px 0 0; overflow:hidden; width:80px; height:80px; position:relative; z-index:2; }
.styled_post_list1 .image img {
  display:block;
  -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none;
}
.styled_post_list1 .info { }
.styled_post_list1 .title { font-size:14px; margin:0; padding:0; display:block; font-weight:400; line-height:1.9; color:#000; -ms-word-wrap: break-word; word-wrap: break-word; }
.styled_post_list1 .title:hover { text-decoration:none; }
.styled_post_list1 .date { margin:10px 0 0 0; position:relative; display:block; line-height:1; color:#aaa; }


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


/* デザインされた記事一覧３ */
.styled_post_list3 li { position:relative; background:none; padding:0; margin:0 0 20px 0; }
.styled_post_list3 li:last-child, .styled_post_list3 li:only-child { margin:0; }
.styled_post_list3 .image { display:block; margin:0 0 12px 0; overflow:hidden; width:100%; height:auto; position:relative; z-index:2; }
.styled_post_list3 .image img {
  display:block;
  -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none;
}
.styled_post_list3 .title { font-weight:700; font-size:14px; line-height:1.6; display:block; text-decoration:none; -ms-word-wrap: break-word; word-wrap: break-word; }
.styled_post_list3 .meta ul { margin:2px 0 0 0; padding:0; }
.styled_post_list3 .meta li { display:inline; margin:0; padding:0; width:auto; line-height:1.5; color:#aaa; font-size:12px; }
.styled_post_list3 .meta li:first-child { border-right:1px solid #ccc; margin:0 10px 0 0; padding:0 10px 0 0; }
.styled_post_list3 .meta li:only-child { border:none; margin:0; padding:0; }
.styled_post_list3 .meta li a { color:#aaa; }


/* お知らせ一覧 */
.tcd_news_list_widget .side_headline { margin:0; }
.tcd_news_list_widget .title { font-size:14px; }
.tcd_news_list_widget .date { color:#aaa; display:block; }


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


/* タブ記事 */
.widget_tab_post_list_button a {
  color:#333; display:inline-block; padding:15px 0; width:50%; text-align:center; border:1px solid #ddd; float:left; margin-bottom:-1px; font-size:14px; position:relative; text-decoration:none;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.widget_tab_post_list_button a.tab1 { border-right:0; }
.widget_tab_post_list_button a.active { background:#fff; border-bottom:1px solid #fff; }
.widget_tab_post_list { border:1px solid #ddd; font-size:0; padding:20px 0 0 20px; }
.widget_tab_post_list li {
  font-size:12px; width:50%; display:inline-block; vertical-align:top; margin:0 20px 15px 0;
  width:-webkit-calc(50% - 20px); width:-moz-calc(50% - 20px); width:calc(50% - 20px);
}
.widget_tab_post_list2 { display:none; }
.tab_post_list_widget .date { color:#aaa; }
.tab_post_list_widget .title { display:block; font-size:14px; line-height:1.6; -ms-word-wrap: break-word; word-wrap: break-word; }
.tab_post_list_widget .image { width:100%; height:auto; display:block; overflow:hidden; position:relative; z-index:2; margin:0 0 10px 0; }
.tab_post_list_widget .image img { display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none; }


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


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

.tcd_category_list ul {
  display:none; margin:0 !important; padding:0 !important; background:none;
  z-index:9; position:relative;
}
.tcd_category_list ul ul { width:100%; position:relative;}
.tcd_category_list ul li { margin:0; padding:0; }
.tcd_category_list ul li a {  }
.tcd_category_list ul ul li a { }
.tcd_category_list ul ul ul li a { }
.tcd_category_list ul ul ul ul li a { }
/* カスタム投稿カテゴリー */
.tcdw_taxonomy_list_widget .side_headline { margin:0; }
/*.tcdw_taxonomy_list_widget .tcd_category_list > li:first-child > a { border-top:1px solid #ddd; }*/


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

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


/* 検索 */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s, .side_widget.google_search #s {
  margin:0; background:#eee; padding:0 10px; box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2) inset; border:none; width:calc(100% - 40px); height:40px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.widget_search #searchsubmit, .side_widget.google_search #searchsubmit {
  border:none; width:40px; height:40px; background:#aaa; cursor:pointer;
  font-size:18px; color:#fff; position:absolute; font-family: "design_plus"!important; text-align:center; margin:0; padding:0;
}
.widget_search #searchsubmit{ text-indent: -300%; }
.widget_search #searchsubmit:hover, .side_widget.google_search #searchsubmit:hover { background:#fbfbfb; }
.widget_search label.searchsubmit_wrap { cursor:pointer; display:block; width:40px; height:40px; float:right; position:relative; }
.widget_search label.searchsubmit_wrap:after {
  content:'\e915'; position:absolute; right:0px; left:0px; top:0px; bottom:0px; margin:auto;
  font-family:'design_plus'; color:#fff; font-size:18px; width:16px; height:16px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.submit_button{ display: inline; }


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

/* Import from VOGUE */
.p-widget-dropdown__title { background: #fff; box-sizing: border-box; border: 1px solid #ddd; height: 50px; line-height: 50px; padding: 0 18px; position: relative; font-size:14px; }
.p-widget-dropdown__title::after { content: "\e90e"; font-family: "design_plus"; position: absolute; right: 17px; }
.p-widget-dropdown__list { display: none; }
.p-widget-list { margin-bottom: 0; }
.p-widget-list li { list-style: none; font-size: 14px; border: 1px solid #ddd; border-top: 0; background: #fff; font-size: 14px; line-height: 1.5; }
.p-widget-list li a { display: block; padding: 14px 18px; }
.p-widget-list li a:hover { background: #f6f6f6; }
.p-widget-list__item-date { color: #999; display: block; font-size: 12px; }
@media screen and (max-width: 767px) {
  .p-widget-list__item a { padding: 12px 24px; }
  .p-widget-dropdown__title { font-size: 14px; }
}
/* サイドバーのスタイルの影響を受けるため、追記*/
.p-widget-list li { padding:0; margin:0; }


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




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { font-size:12px; margin:0; }
#comment_headline { font-size:16px; margin:43px 0 20px; }
#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:first-child { margin-right:-1px; z-index:2; }
#comment_header ul li a, #comment_header ul li p { font-size:11px; padding:15px 15px; line-height:1.6; 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:1.6; }

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


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


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

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

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

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

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

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

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

#input_hidden_field { display:none; }


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






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

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


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

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


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




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

/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color:#fff; }
.widget_rss 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; }
.category_list_widget ul li { margin:0; padding:0; line-height:1; }
.category_list_widget ul li a { display:block; line-height:1.6; padding:10px 0; }
.category_list_widget .widget_headline + ul { margin:-12px 0 -14px; }
.widget_categories ul { margin:0; }
.widget_categories ul ul { margin-left:1em; }
.widget_categories ul li { margin:0; padding:0; line-height:1; }
.widget_categories ul li a { display:inline-block; line-height:1.6; padding:10px 0; }
.widget_categories ul li { color:#999; }
.widget_categories .widget_headline + ul { margin:-12px 0 -14px; }



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


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

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

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

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

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

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

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


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

.entry-date {
  font-family: 'Arial';
}

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

.main_single_inner {
  display: flex;
  gap: 50px;
}

body.layout2 #left_col {
  order: 2;
}

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

/* ----------------------------------------------------------------------
 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 !important; color:#fff; background-color:#7d7d7d; box-shadow:0 2px 2px rgba(0,0,0,.15) inset; }
.q_button_wrap{ text-align:center; margin: 2em auto; }