@charset "utf-8";
/*
Theme Name:VENUS
Theme URI:https://tcd-theme.com/tcd038
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-venus
Version:4.1.2
*/

/* --------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
-------------------------------------------------------------------------------- */
@font-face {
    font-family: 'design_plus';
    src: url('fonts/design_plus.eot?v=1.0');
    src: url('fonts/design_plus.eot?v=1.0#iefix') format('embedded-opentype'),
         url('fonts/design_plus.woff?v=1.0') format('woff'),
         url('fonts/design_plus.ttf?v=1.0') format('truetype'),
         url('fonts/design_plus.svg?v=1.0#design_plus') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'update_icon';
    src: url('fonts/update_icon.eot?v=1.0');
    src: url('fonts/update_icon.eot?v=1.0#iefix') format('embedded-opentype'),
         url('fonts/update_icon.woff?v=1.0') format('woff'),
         url('fonts/update_icon.ttf?v=1.0') format('truetype'),
         url('fonts/update_icon.svg?v=1.0#update_icon') 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:#000; line-height:1; background:#fff; -webkit-font-smoothing:antialiased; }
.admin-bar { padding-top:32px; }
@media screen and (max-width:782px) {
	.admin-bar { padding-top:46px; }
}
.serif { font-family:'Times New Roman',serif; }
a { color:#333; text-decoration:none; }
a, a:before, a:after, input {
	-webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
	-moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
	-o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
	transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
a:hover { text-decoration:underline; }
.clear { clear:both; }
.hide { display:none; }


/* レイアウト */
#header { width:100%; min-width:1250px; background:#222; position:relative; z-index: 3;}
#header_inner { width:1250px; margin:0 auto; position:relative; }
#contents { width:100%; min-width:1250px; }
#contents_inner { width:1250px; margin:0 auto; padding:60px 0 150px; }
.post-type-archive-news #contents_inner { padding-bottom:105px; }
.tax-brand_category #main_col { margin-bottom:-145px; }
.home #contents_inner, .single-brand #contents_inner { padding-bottom:150px; }
.page #contents_inner { padding-bottom:115px; }
#main_col { width:900px; float:left; }
#side_col { width:300px; float:right; word-wrap:break-word; }
#side_col a:hover{ text-decoration:none; }
#main_col.fullwidth { width:100%; float:none; }
#main_col.barnd_main_col { width:1000px; float:left; }
#side_col.brand_side_col { width:180px; float:right; }
#main_col.barnd_main_col.centerd { width:100%; max-width:1000px; margin:0 auto; float:none; }
#footer { width:100%; min-width:1250px; background:#222; color:#fff; }
#footer_inner { width:1250px; margin:0 auto; padding:60px 0 25px 0; }
#footer_bottom { width:100%; min-width:1250px; background:#000;position: relative;z-index: 3;}
#footer_bottom_inner { width:1250px; margin:0 auto; position:relative; }


/* ローディングアイコン */
#site_wrap { display:block; }
#site_wrap.hide { display:block; opacity:0; height:0; overflow:hidden; }
#site_loader_overlay {
	position:fixed; background:#fff;
	top:0px; left:0px; bottom:0px; right:0px;
	z-index:99999; opacity:1;
}
#site_loader_spinner {
	font-size:10px; position:fixed;
	top:50%; top:-webkit-calc(50% - 33px); top:calc(50% - 33px); top:calc(50% - 33px);
	left:50%; left:-webkit-calc(50% - 33px); left:calc(50% - 33px); left:calc(50% - 33px);
	-webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%);
	-webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); transform:translateX(-50%);
	text-indent:-9999em;
	border-top:3px solid rgba(203,118,132,0.2); border-right:3px solid rgba(203,118,132,0.2); border-bottom:3px solid rgba(203,118,132,0.2); border-left:3px solid #cb7684;
	-webkit-transform:translateZ(0); -ms-transform:translateZ(0); transform:translateZ(0); -webkit-animation:loading-anime 1.1s infinite linear; animation:loading-anime 1.1s infinite linear;
}
#site_loader_spinner, #site_loader_spinner:after { border-radius:50%; width:60px; height:60px; }
@-webkit-keyframes loading-anime {
	0% { -webkit-transform:rotate(0deg); transform:rotate(0deg); }
	100% { -webkit-transform:rotate(360deg); transform:rotate(360deg); }
}
@keyframes loading-anime {
	0% { -webkit-transform:rotate(0deg); transform:rotate(0deg); }
	100% { -webkit-transform:rotate(360deg); transform:rotate(360deg); }
}

.rich_font_1{ font-family: var(--tcd-font-type1); }
.rich_font_2{ font-family: var(--tcd-font-type2); }
.rich_font_3 { font-family: var(--tcd-font-type3);}


/* アイコンフォント */
.icon-file-text:before {
  content: "\f15c";
}

.icon-share-alt:before {
  content: "\f1e0";
}

.icon-phone:before {
  content: "\f095";
}

.icon-envelope:before {
  content: "\f0e0";
}

.icon-tag:before {
  content: "\f02b";
}

.icon-pencil:before {
  content: "\f040";
}

.icon-close:before {
  content: "\e91a";
}


/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */

/* ロゴ */
#home_logo #logo { color:#000; line-height:1.1; font-size:40px; margin:50px 0; width:100%; min-width:1250px; text-align:center; }
#home_logo #logo img { display:block; margin:0 auto; max-width:100%; height:auto; max-height:40px; }
#header #logo { font-weight:300; }
.pc #logo_text, .pc #logo_image { float:left; }
.pc #logo_text #logo { margin:0; font-size:26px; line-height:60px; min-width:60px; }
.pc #logo_text #logo a { color:#fff; display:block; margin:0 auto; padding:0 12px; text-align:center; text-decoration:none; -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none; }
.pc #logo_image #logo a { position:relative; width:auto; min-width:60px; max-width:300px; height:60px; text-align:center; display:block; }
.pc #logo_image #logo img { position:absolute; top:50%; left:50%; width:auto; -webkit-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.pc #mobile_logo { display:none; }

/* グローバルメニュー */
.pc #global_menu { z-index:100; color:#fff; position:relative; }
.pc #global_menu a { display:block; color:#fff; font-size:16px; text-decoration:none; }
.pc #global_menu li a { height:60px; line-height:60px; text-decoration:none; }
.pc #global_menu li a:hover { color:#fff; text-decoration:none; }
.pc #global_menu > ul { margin:0 auto; font-size:0; text-align:center; }
.pc #global_menu > ul > li { display:inline-block; width:16%; min-width:150px; text-align:center; font-size:1%; position:relative; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.pc #global_menu > ul > li > a { font-weight:700; }
.pc #global_menu > ul > li > a:hover, .pc #global_menu > ul > li.active > a, .pc #global_menu > ul > li.current-menu-item > a { color:#cb7684; }
.pc #global_menu ul ul { display:none; width:220px; position:absolute; top:60px; left:0px; margin:0; padding:0; z-index:101; text-align:left; background:#222; border-top:none; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0 0 0 -1px; border:none; border-left:none; }
.pc #global_menu ul ul li { width:220px; line-height:1.5; padding:0; margin:0; text-align:left; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; position:relative; }
.pc #global_menu ul ul a { display:block; font-size:14px; 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, .pc #global_menu ul ul > li.active > a, .pc #global_menu ul ul li.current-menu-item > a { background:#cb7684; }
.pc #global_menu li.hide_menu { display:none; }
.pc #global_menu ul ul li.menu-item-has-children > a:before { margin:0; display:block;
  font-family:'design_plus'; content:'\e910'; font-size:10px; display:block; position:absolute; right:12px;
  top: calc(50% + 2px); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}

/* 子メニューを逆方向にする */
.pc #global_menu > ul > li.rev ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul{ right:0; left:auto; }
.pc #global_menu > ul > li.rev ul ul, .pc #global_menu > ul > li:nth-last-of-type(1) ul ul  { left:auto; right:100%; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a:before, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a:before { content:'\e90f'; right:auto; left:10px; }
.pc #global_menu > ul > li.rev ul li.menu-item-has-children > a, .pc #global_menu > ul > li:nth-last-of-type(1) ul li.menu-item-has-children > a { padding-left: 35px; }


/* ドロワーメニュー */
#drawer_menu{ display:none; }

/* モバイル用 */
.menu_button { display:none; }
#global_menu .child_menu_button { display:none; }

/* メニューをページ上部に固定 */
.header_fixed #header { top:0px; }
.header_slide_down #header {
	position:fixed; width:100%; top:0px; z-index:3; opacity:0.9;
	-webkit-transform:translateY(0%); -ms-transform:translateY(0%); transform:translateY(0%);
	animation:slideDown 0.5s ease; -ms-animation:slideDown 0.5s ease; -webkit-animation:slideDown 0.5s ease; -moz-animation:slideDown 0.5s ease;
}
@keyframes slideDown {
	0% { -webkit-transform:translateY(-100%); -ms-transform:translateY(-100%); transform:translateY(-100%); }
	100% { -webkit-transform:translateY(0%); -ms-transform:translateY(0%); transform:translateY(0%); }
}
.header_slide_up #header {
	position:fixed; width:100%; top:0px; z-index:3; opacity:0.9;
	-webkit-transform:translateY(-100%); -ms-transform:translateY(-100%); transform:translateY(-100%);
	animation:slideUp 0.5s ease; -ms-animation:slideUp 0.5s ease; -webkit-animation:slideUp 0.5s ease; -moz-animation:slideUp 0.5s ease;
}
@keyframes slideUp {
	0% { -webkit-transform:translateY(0%); -ms-transform:translateY(0%); transform:translateY(0%); }
	100% { -webkit-transform:translateY(-100%); -ms-transform:translateY(-100%); transform:translateY(-100%); }
}
.pc .home.header_slide_down #home_logo { display:hidden; }
.header_slide_down { padding-top:60px; }

.pc .header_slide_down.admin-bar, .pc .header_slide_up.admin-bar { padding-top:92px; }
.pc .header_slide_down.admin-bar #header, .pc .header_slide_up.admin-bar #header { top:32px; }
@media screen and (max-width:782px) {
.pc .header_slide_down.admin-bar, .pc .header_slide_up.admin-bar { padding-top:106px; }
.pc .header_slide_down.admin-bar #header, .pc .header_slide_up.admin-bar #header { top:46px; }
}
@media screen and (max-width:600px) {
.pc .header_slide_down.admin-bar, .pc .header_slide_up.admin-bar { padding-top:46px; }
.pc .header_slide_down.admin-bar #header, .pc .header_slide_up.admin-bar #header { top:0; }
}

/* ページタイトル */
h1.title, .header_title { margin:0 0 55px 0; color:#000; font-size:50px; font-weight:400; line-height:1.2; text-align:center; }

/* パンくずリンク */
#bread_crumb { padding:0 0 20px; margin:-35px auto 0; }
#bread_crumb li.home a {
  float:left; height:15px; width:0px; line-height:15px; display:block; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#bread_crumb li.home a:before {
  font-family:'design_plus'; color:#888; font-size:14px; display:block; position:absolute; top:2px; left:0px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home:after { display:none; }
#bread_crumb li.home a:before { content:'\e90c'; }
#bread_crumb li.home a:hover:before { color:#fff; }
#bread_crumb li { color:#aaa; font-size:14px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:160%; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#aaa; font-size:9px; display:block; position:absolute; left:-20px; top:-2px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#888; }
.pc .no_side #bread_crumb, .pc .error404_style #bread_crumb { width:900px; }


/* ----------------------------------------------------------------------
 ヘッダーメッセージ
---------------------------------------------------------------------- */

.p-header-message {
	box-sizing: border-box;
  display:-webkit-box; display:-ms-flexbox; display:flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
  min-height:50px; text-align: center; font-size:14px; font-weight:600; padding:1em 20px;
}
.p-header-message__label { display:block; color:inherit; line-height:1.4; margin:-0.2em 0; padding-top:1px; }
a.p-header-message__label:hover { text-decoration: underline; color:inherit; }
@media (max-width: 767px) {
  .p-header-message { min-height:40px; font-size:14px; }
}


/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */

.pc .home #header { background:transparent; }
.pc .home #header_inner { background:#222; }
.pc .home.header_slide_down #header, .pc .home.header_slide_up #header { background:#222; }

.home #contents_inner { padding-top:0; }

/* スライダー */
.index_slider { position:relative; overflow:hidden; }
.index_slider .slides .image img { display:block; width:100%; }
.index_slider a { color:#fff; text-decoration:none; }
.index_slider a:hover { color:#cb7684; }
.index_slider a .slide-caption { cursor:pointer; }
.index_slider .slide-caption { width:100%; height:100%; cursor:default; position:absolute; top:0; left:0; }
.index_slider .slide-caption-inner { display:block; width:100%; max-height:100%; color:#fff; font-size:36px; line-height:2; text-align:center; position:relative; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); }
.index_slider .slide-caption-inner p { margin:0 0 1em 0; }
.flex-control-nav { width:100%; text-align:center; position:absolute; bottom:10px; left:0; z-index:2; }
.flex-control-nav li { display:inline; }
.flex-control-nav a { display:inline-block; margin:10px 5px; width:13px; height:13px; background:#fff; text-indent:-400px; overflow:hidden; border-radius:100%; box-shadow:0 0 2px 0 rgba(0,0,0,0.4); }
.flex-control-nav a:hover, .flex-control-nav a.flex-active { background-color:#cb7684; }

/* グリッド */
#index_grid { position:relative; width:100%; overflow:hidden; }
.grid-item, .grid-item-width1 { float:left; width:25%; height:312.5px; overflow:hidden;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; -ms-transition:all 0.35s ease-in-out; -o-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
}
.grid-item-width2 { width:50%; }
.grid-item-width3 { width:75%; }
.grid-item-width4 { width:99%; }
.grid-item[data-state="start"] { -webkit-transition-property:opacity,background-color; -moz-transition-property:opacity,background-color; -ms-transition-property:opacity,background-color; -o-transition-property:opacity,background-color; transition-property:opacity,background-color; }
#index_grid a { color:#fff; text-decoration:none; }
#index_grid .caption { width:100%; height:100%; padding:30px; line-height:1.6; position:relative; z-index:2;
	-moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#index_grid .caption h2 { margin:0 0 5px 0; font-size:32px; font-weight:400; line-height:1.2; }
#index_grid .caption p { margin:0 0 1em 0; font-size:16px; }
#index_grid .image { width:100%; height:100%; position:absolute; top:0; left:0; z-index:1;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; -ms-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
	-webkit-transition-property:transform,opacity; -moz-transition-property:transform,opacity; -ms-transition-property:transform,opacity; transition-property:transform,opacity;
	-webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1);
}
#index_grid .image img { display:block; height:100.2%; width:auto; max-width:none; min-width:100.5%; position:absolute; top:0; left:50%;
	-webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); transform:translateX(-50%);
}
#index_grid .grid-item:hover .image { opacity:0.7;
 -webkit-transform:scale(1.2); -moz-transform:scale(1.2); -ms-transform:scale(1.2); -o-transform:scale(1.2); transform:scale(1.2);
}

/* トップページのNEWS/BLOG */
#index_recent { color:#555; font-size:14px; height:100%; }
#index_recent_tab { width:100%; overflow:hidden; position:absolute; top:0; left:0; }
#index_recent_tab li a, #index_recent_tab li span { padding:18px 0; display:block; color:#000; text-decoration:none; text-align:center; }
#index_recent_tab li { float:left; width:50%; height:50px; }
#index_recent_tab li.fullwidth { width:100%; }
#index_recent_tab_contents { height:100%; padding-top: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;
}
#index_recent .index_recent_tab_content { display:none; padding:20px 0 45px 40px; height:100%; line-height:2; 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;
}
#index_recent .index_recent_tab_content.active { display:block; }
#index_recent .index_recent_tab_content ol { height:100%; overflow:auto; padding-right:40px; }
#index_recent .index_recent_tab_content li { clear:left; }
#index_recent .index_recent_tab_content li time { float:left; width:100px; }
#index_recent .index_recent_tab_content li a { display:block; margin-left:100px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
#index_recent .index_recent_tab_content a { color:#555; text-decoration:none; }
#index_recent .index_recent_tab_content a.link { color:#000; position:absolute; right:40px; bottom:16px; }
#index_recent .index_recent_tab_content a.link:after { font-family:'design_plus'; content:'\e910'; font-size:12px; color:#000; display:inline-block; padding-left:0.5em; }
#index_news_tab, #index_news { background:#f1f1f1; }
#index_blog_tab, #index_blog { background:#e8e8e8; }



/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */

/* 記事一覧（アーカイブページ） */
#archive { width:100%; overflow:hidden; margin-bottom:30px; }
#archive #post_list { position:relative; margin:0 -10px 0 0; padding:0 0 40px 0; position:relative; display:flex; flex-wrap:wrap; }
#archive #post_list li { margin:0 5px 5px 0; width:308.75px; background:#f6f6f6; position:relative; }
#archive #post_list li .image { margin:0 0 25px 0; height:200px; overflow:hidden; }
#archive #post_list li .image img { display:block; width:100%; height:auto; min-height:100%;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
	-webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1);
}
#archive #post_list li .image:hover img { opacity:0.7;
	-webkit-transform:scale(1.2); -moz-transform:scale(1.2); -ms-transform:scale(1.2); -o-transform:scale(1.2); transform:scale(1.2);
}
#archive #post_list li .category { margin:0 0 5px 0; padding:0 30px; font-size:14px; line-height:1.2; min-height:2em; overflow:hidden; color:#525252; }
#archive #post_list li .category a { color:#525252; text-decoration:none; }
#archive #post_list li .title { height:4.8em; overflow:hidden; margin:0 0 15px 0; padding:0 30px; width: 100%; font-size:16px; color:#000; line-height:1.6; -ms-word-wrap:break-word; word-wrap:break-word;
    display: -webkit-inline-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    box-sizing: border-box;
}
#archive #post_list li .title a { text-decoration:none; }
#archive #post_list li .date { margin:15px 0 25px; padding:0 30px; font-size:14px; color:#525252; line-height:1;  font-family: 'Arial';}

/* カテゴリー */
#archive ul.category { margin:20px 0 45px 0; padding:0; position:relative; }
#archive ul.category li { margin:0 5px 5px 0; float:left; }
#archive ul.category li a { display:inline-block; padding:14px 5px; min-width:192px; font-size:14px; line-height:1.6; text-align:center; color:#000; background:#f6f6f6; text-decoration:none; }
#archive ul.category li a:hover { color:#fff; background:#ccc; }
#archive ul.category li a.active { color:#fff; background:#222; }
#archive ul.category li a span {}

/* フェードインするエフェクト */
#post_list .article.active {
	-webkit-animation:fadeIn 0.65s ease forwards;
	animation:fadeIn 0.65s ease forwards;
	opacity:1;
}
@-webkit-keyframes fadeIn {
	0% { opacity:0; }
	100% { opacity:1; }
}
@keyframes fadeIn {
	0% { opacity:0; }
	100% { opacity:1; }
}

/* ローディングボタン */
#load_post { text-align:center; padding:30px 0 0 0; height:60px; position:relative; }
#load_post a { font-size:16px; color:#fff; display:inline-block; background:#bbb; text-decoration:none; height:60px; line-height:60px; width:250px; text-align:center; box-sizing:border-box; border-radius:50px; }
#load_post a:hover { color:#fff; background-color:#cb7684; }

#infscr-loading { width:100%; color:#525252; font-size:14px; text-align:center; position:absolute; left:0; bottom:0; }

#infscr-loading img { margin-right:8px; vertical-align:middle; }
#infscr-loading div { display:inline; }

/* ページナビ */
.page_navi { margin:50px 0; clear:both; }
.page_navi h4 { margin:0 0 10px 0; font-size:14px; }
.page_navi li { float:left; display:inline-block; margin:0 5px 0 0; width:35px; height:35px; }
.page_navi a, .page_navi .current { display:block; background:#eee; line-height:35px; text-align:center; text-decoration:none; color:#333; font-size:14px; }
.page_navi .current { background:#666; color:#fff; }
.page_navi a:hover { color:#fff; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */

#article { background:#fff; padding:0; margin:0; }

/* 記事タイトル */
#post_title { padding:0; margin:30px 0; font-size:42px; font-weight:400; line-height:1.2; text-align:center; word-wrap:break-word; }
.single-post #post_title { margin:50px 0 0; }

/* アイキャッチ画像 */
.post_image { padding:0; margin:0 0 50px 0; }
.post_image img { width:100%; height:auto; display:block; margin:0; }

/* SNSボタン */
#single_share { margin:0 0 5px 0; }

/* 記事エリア */
.post_content { color:#525252; }

/* ページ分割 */
#post_pagination { margin:0 0 50px 0; clear:both; }
#post_pagination h5 { margin:0 0 10px 0; font-size:14px; }
#post_pagination a, #post_pagination p { float:left; display:inline-block; background:#eee; margin:0 5px 0 0; width:35px; height:35px; line-height:35px; text-align:center; text-decoration:none; color:#333; font-size:14px; }
#post_pagination p { background:#666; color:#fff; }
#post_pagination a:hover { color:#fff; }

/* メタ情報 */
#post_meta_top { margin:20px 0 50px 0; padding:0; text-align:center; color:#666; }
#post_meta_top a { color:#666; }
#post_meta_top li { display:inline-block; margin:0 10px 0 0 ; padding:0 10px 0 0; border-right:1px solid #ccc; font-size:14px; }
#post_meta_top li:last-child { border:none; margin:0; padding:0; }

#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:-3px; left:0px; }
#post_meta_bottom li.post_tag:before { content:'\e935'; top:-2px; left:1px; }
#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; }

/* last modified date */
.modified:before { position: relative; font-family:'update_icon'; content:'\e140'; font-size:12px; padding: 0 5px 0 15px; top: 1px; }
@media (max-width: 991px) {
  .modified, .modified:before { font-size: 14px; }
}
@media (max-width: 767px) {
.modified, .modified:before { font-size: 14px; }
}


/* 次の記事、前の記事リンク */
#previous_next_post { line-height:1.5; font-weight:700; }
#previous_next_post a { color:#333; }
#previous_next_post a:hover { color:#333; text-decoration:none; }
#previous_next_post .prev_post { float:left; width:50%; min-width:360px; margin:0 0 10px 0; }
#previous_next_post .next_post { float:right; width:50%; min-width:360px; margin:0; }
#previous_next_post .prev_post a { display:block; margin-right:-1px; padding:0 40px 0 80px; height:6em; overflow:hidden; position:relative; border:1px solid #ddd; }
#previous_next_post .next_post a { display:block; padding:0 70px 0 50px; height:6em; overflow:hidden; position:relative; border:1px solid #ddd; }
#previous_next_post .prev_post a:hover, #previous_next_post .next_post a:hover { background:#f6f6f6; }
#previous_next_post .title { display:block; max-height:6em; position:relative; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); }
#previous_next_post .prev_post a:before, #previous_next_post .next_post a:before {
  font-family:'design_plus'; color:#ccc; font-size:28px; display:block; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_post .prev_post a:before { height:28px; position:absolute; left:20px; top:50%; margin-top:-20px; content:'\e90f'; }
#previous_next_post .next_post a:before { height:28px; position:absolute; right:20px; top:50%; margin-top:-20px; content:'\e910'; }
#previous_next_post .prev_post a:hover:before {
	animation:move1 1.0s ease infinite;
	-ms-animation:move1 1.0s ease infinite;
	-webkit-animation:move1 1.0s ease infinite;
	-moz-animation:move1 0.7s ease infinite;
}
@keyframes move1 {
	0% { left:20px; }
	50% { left:15px; }
	100% { left:20px; }
}
#previous_next_post .next_post a:hover:before {
	animation:move2 1.0s ease infinite;
	-ms-animation:move2 1.0s ease infinite;
	-webkit-animation:move2 1.0s ease infinite;
	-moz-animation:move2 0.7s ease infinite;
}
@keyframes move2 {
	0% { right:20px; }
	50% { right:15px; }
	100% { right:20px; }
}

/* NEW 次の記事・前の記事 */
.p-page-nav { margin-top:50px; font-size:16px; font-weight:normal; }
.p-page-nav__inner { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
.p-page-nav__item {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
  width:50%; height:120px; padding:0 30px; color:#000; border:1px solid #ddd;
}
.p-page-nav__item:hover { color:rgba(0,0,0,0.5) !important; }
.p-page-nav__item--prev:before { content: "\e90f"; color:inherit; font-family: "design_plus"; margin-right:30px; transition:none; }
.p-page-nav__item--next:after { content: "\e910"; color:inherit; font-family: "design_plus"; margin-left:30px; transition:none; }
.p-page-nav__item--next:only-child { margin-left:auto; }
.p-page-nav__item--prev + .p-page-nav__item--next { border-left:none; }
.p-page-nav__title {
  display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;
  -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
  line-height:1.6; max-height: 3.2em; width:100%;
}
.p-page-nav__title-sp { display:none; }

@media (max-width: 767px) {
  .p-page-nav { margin-top:40px; font-size:12px; }
  .p-page-nav__item { height:50px; padding:0 15px; }
  .p-page-nav__title-pc { display:none; }
  .p-page-nav__title-sp { display:block; width:100%; text-align: center; }
  .p-page-nav__item--prev:before, .p-page-nav__item--next:after { margin:0; }
}



/* 関連記事 */
#related_post h2 { color:#000; font-size:26px; margin:50px 0 40px 0; text-align:center; }
#related_post ol { margin:0 -6px 0 0 ; position:relative; }
#related_post li { float:left; width:296px; margin:0 5px 5px 0; position:relative; background:#f6f6f6; }
#related_post li .image { display:block; width:100%; height:190px; overflow:hidden; }
#related_post li .image a { display:block; }
#related_post li .image img { display:block; width:100%; height:100%;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
	-webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1);
}
#related_post li .image:hover img { opacity:0.7;
 -webkit-transform:scale(1.2); -moz-transform:scale(1.2); -ms-transform:scale(1.2); -o-transform:scale(1.2); transform:scale(1.2);
}
#related_post li .category { color:#666; font-size:14px; line-height:1.2; margin:20px 0 2px 0; padding:0 30px; height:2.4em; overflow:hidden; }
#related_post li .title { color:#000; font-size:16px; line-height:1.5; margin:0 0 20px 0; padding:0 30px; min-height:3em; display: -webkit-inline-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; text-align:left; }
#related_post li .date { color:#666; margin:0 0 20px 0; padding:0 30px; font-size:14px; line-height:1; }

/* 広告 */
#single_banner_area { margin:50px 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_area_bottom { margin:20px 0 50px 0; 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; }

/* author information */
#single_author { margin:0 0 20px; border:1px solid #ccc; padding:15px 15px 2px; -moz-border-radius:4px; -khtml-border-radius:4px; -webkit-border-radius :4px; border-radius:4px; background:#f9f9f9; }
#single_author_avatar { float:left; margin:0 10px 20px 0; }
#single_author_avatar img { width:70px; height:70px; display:block; border:none; padding:0; }
#single_author_meta { float:left; width:calc(100% - 90px); position:relative; }
#single_author_name { margin:0 0 10px 0; font-size:14px; line-height:160%; }
#single_author_name2 { margin:0 0 0 15px; font-size:10px; }
#single_author_link { color:#333; position:absolute; right:0px; top:0px; text-decoration:none; font-size:12px; background:#e8e8e8 url(img/common/arrow_right2.png) no-repeat 16px 9px; padding:5px 20px 5px 30px; -moz-border-radius:4px; -khtml-border-radius:4px; -webkit-border-radius:4px; border-radius:4px; }
#single_author_link:hover { color:#fff; }
#single_author_desc { padding:10px 0 0 0; font-size:14px; border-top:1px dotted #ccc; }
#single_author_desc p { margin:0 0 10px 0; line-height: 180%; }

/* author profile */
.author_social_link { margin:15px 0 12px 0; }
.author_social_link li { float:left; font-size:11px; margin:0 4px 0 0; }
.author_social_link li a { display:block; text-decoration:none; background:#ccc; color:#fff; height:20px; line-height:20px; padding:0 15px; -moz-border-radius:2px; -khtml-border-radius:2px; -webkit-border-radius:2px; border-radius:2px; }
.author_social_link li.author_link a { color:#fff; }
.author_social_link li.twitter a { background-color:#000; color:#fff; }
.author_social_link li.twitter a:hover { background-color:#222; }
.author_social_link li.facebook a { background-color:#3B5998; color:#fff; }
.author_social_link li.facebook a:hover { background-color:#4674d3; }

/* NEW プロフィール */
.p-author-profile {
  background:#f5f5f5; margin:50px 0 0; position:relative; padding:40px;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-align-items:center; -webkit-align-items:center; align-items:center;
}
.p-author-profile__image { display:block; width:120px; height:120px; border-radius:100%; overflow:hidden; }
.p-author-profile__image img { width:100%; height:auto; }
.p-author-profile__content { width:calc(100% - 120px); padding-left:40px; box-sizing:border-box; }
.p-author-profile__title { font-size:18px; margin-bottom:20px; font-weight:600; }
.p-author-profile__title a:hover { color:rgba(0, 0, 0, 0.5); text-decoration:none; }
.p-author-profile__desc { font-size:14px; line-height:1.8; margin:-0.4em 0; max-height:3.6em; overflow:hidden; }
.p-author-profile__desc span{
	display:-webkit-inline-box;
 -webkit-box-orient:vertical;
 -webkit-line-clamp:2
}
.p-author-profile__icons { margin-top:15px; }
.p-author-profile__icons li:not(:last-of-type) { margin-right:0.6em; }
.c-hover-animation { overflow:hidden; backface-visibility: hidden; }
.c-hover-animation__image { transition: transform  0.5s ease, opacity 0.5s ease; }
@media (hover: hover) and (pointer: fine) {
  a.c-hover-animation:hover .c-hover-animation__image, a:hover .c-hover-animation .c-hover-animation__image
  { /*transform: scale(1.2);*/ opacity:0.5; }
}

@media (max-width:767px) {
  .p-author-profile { margin-top:40px; padding:20px; }
  .p-author-profile__image { width:90px; height:90px; }
  .p-author-profile__content { width:calc(100% - 90px); padding-left:15px; }
  .p-author-profile__title { font-size:16px; margin-bottom:15px; }
  .p-author-profile__desc { font-size: 14px; }
  .p-author-profile .c-sns-icons--type1 { font-size:14px; }
}

.p-author-profile.author_archive{ margin: 30px 0 50px; }
.p-author-profile.author_archive .p-author-profile__desc{ max-height:inherit; overflow:inherit; }
.p-author-profile.author_archive .p-author-profile__desc span{ display:block; }

@media (max-width:767px) {
	.p-author-profile.author_archive{ margin: 10px 0 20px; }
}

/* SNSアイコン */
.c-sns-icons { display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap; -ms-align-items:center; -webkit-align-items:center; align-items:center; }
.c-sns-icons__item {}
.c-sns-icons__item a:hover{ text-decoration:none; }
.c-sns-icons__item:not(:last-of-type) { margin-right:15px; }
.c-sns-icons__link { display:block; transition:opacity 0.2s ease; }
.c-sns-icons__link:hover { opacity:0.5; }
.c-sns-icons__link:before { font-family:'design_plus'; display:block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.c-sns-icons__link--user-url:before { content:'\e942'; }
.c-sns-icons__link--facebook:before { content:'\e944'; }
.c-sns-icons__link--twitter:before { font-family: 'tiktok_x_icon'; content: "\e901"; }
.c-sns-icons__link--instagram:before { content:'\ea92'; font-size:0.95em; padding-top:0.05em; }
.c-sns-icons__link--pinterest:before { content:'\e905'; }
.c-sns-icons__link--youtube:before { content:'\ea9d'; }
.c-sns-icons__link--tiktok:before { content: "\e900"; font-family:'tiktok_x_icon'; }
.c-sns-icons__link--line:before { content: "\e909"; }
.c-sns-icons__link--note:before { content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  transition: color 0.3s ease; }
.c-sns-icons__link--contact:before { content:'\f0e0'; font-size:0.95em; }
.c-sns-icons__link--rss:before { content:'\e90b'; font-size:0.9em; padding-top:0.05em; }


/* モノクロ */
.c-sns-icons--type1 { font-size:18px; }
.c-sns-icons--type1 .c-sns-icons__link { color:#000; }




/* ----------------------------------------------------------------------
 固定ページ
---------------------------------------------------------------------- */

/* typeN */
.page_template_type .headline { font-size:26px; color:#000; line-height:1.4; }
.page_template_type .headline .headline_innter { margin:0 0 1em 0; line-height:1.4; font-weight:500; font-size:inherit; }
.page_template_type .headline_large { font-size:42px; color:#000; text-align:center; line-height:1.4; }
.page_template_type .headline_large .headline_innter { margin:0 0 10px 0; line-height:1.4; font-weight:500; font-size:inherit; }
.page_template_type img.image { margin:0 0 20px 0; width:100%; display:block; }
.page_template_type dl dt { clear:left; float:left; width:8em; margin:0 0 5px 0; font-weight:300; }
.page_template_type dl dd { margin:0 0 5px 0; padding:0 0 0 8em; font-weight:300; }
.page_template_type .row1, .page_template_type .row2, .page_template_type .row3, .page_template_type .row4, .page_template_type .row5, .page_template_type .row6 { margin:90px 0; }
.page_template_type .post_col .headline .headline_innter:last-child { margin-bottom:10px; }
.page_template_type .post_col .desc p:last-child { margin-bottom:0; }
.page_template_type .row5 #map-canvas { margin-top:30px; }
.page_template_type .row5 #map-canvas img{ max-width: none; }
/* type2 */
.page_template_type2 .row1 .desc, .page_template_type2 .row3 .desc { text-align:center; }
.page_template_type2 .row5 .desc { margin-top:20px; }
.page_template_type2 .row2 { margin-bottom:30px; }
.page_template_type2 .row2 .image { margin-bottom:0; }
.page_template_type2 .row3 { margin-top:60px; }
.page_template_type2 .row4 { margin-bottom:20px; }
.page_template_type2 .row5 { margin-top:0; }

/* type3 */
.page_template_type3 .row1 .desc, .page_template_type3 .row4 .desc { text-align:center; }

/* type4 */
.page_template_type4 .row1 .desc { text-align:center; }
.page_template_type4 .row3 .headline_large .headline_innter { margin:60px 0; }

/* type5 */
.page_template_type5 { margin: 0 -15px; }
.page_template_type5 .post_content { margin-bottom:35px; padding:0 0 70px; background:#f6f6f6; }
.page_template_type5 .post_content_inner { margin:0 9.6%; padding-top: 90px; }
.page_template_type5 #tcd-pb-wrap { margin-top: -90px; }
.page_template_type5 .post_image { margin:0; }
.page_template_type5 .header_catch { height:60px; line-height:60px; text-align:center; color: #fff; font-size:30px; font-weight:400; }
.page_template_type5 .tcd-pb-row { background-color: inherit !important; }
@media screen and (max-width: 768px) {
	.page_template_type5 .post_image{ margin: 0 -15px -60px; }
	.page_template_type5 .post_content{ margin: 0 -15px 35px; }
}
.page_template_type5 .foot_btn_area1, .page_template_type5 .foot_btn_area2 { width:100%; height:60px; margin:70px 0 0; text-align:center; }
.page_template_type5 .page_link_button { width:260px; height:60px; line-height:60px; display:inline-block; background-color:#222; position:relative; left:.5em; margin:0 auto; font-weight:400; font-size:16px; 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; font-family: "Segoe UI", Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; }
.page_template_type5 .page_link_button:hover { text-decoration:none; color:#fff; background-color:#777; }
.page_template_type5 .page_link_button:after { font-family:'design_plus'; content:'\e910'; font-size:12px; color:#fff; position:relative; left:2.5em; }

.page_template_type2 .post_content, .page_template_type3 .post_content, .page_template_type4 .post_content { margin-bottom:-65px; }

/* ----------------------------------------------------------------------
 NEWS
---------------------------------------------------------------------- */

/* 記事ページ */
#single_news_list { background:#fff; margin-top:50px; padding:0; position:relative; }
#single_news_headline { margin:0 0 30px; background:#222; color:#fff; padding:0 30px; height:45px; line-height:45px; }
#single_news_list ol { margin:0 0 15px 0; border-bottom:1px solid #ddd; }
#single_news_list li { margin:0 0 20px 0; font-size:14px; }
#single_news_list li:last-child { margin-bottom:30px; }
#single_news_list li .date { float:left; width:100px; display:block; }
#single_news_list li .title { float:left; width:650px; display:block; font-weight:500; }
#single_news_list .link { color:#000; position:absolute; right:0; bottom:-15px; font-size:14px; }
#single_news_list a :hover, #single_news_list .link:hover { text-decoration:none; }
#single_news_list .link:after { font-family:'design_plus'; content:'\e910'; font-size:12px; display:inline-block; padding:0 0 0 0.6em; }

/* アーカイブページ */
#news_archive #post_list { position:relative; margin:0; padding:0 0 5px 0; }
#news_archive #post_list li { display: flex; align-items: center; padding:28px 30px; margin:0 0 40px 0; background:#f6f6f6; }
#news_archive .news_image { display:block; width:48%; height:375px; overflow:hidden; margin-right:2%; }
#news_archive .news_image img { display:block; width:100%; height:auto;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
	-webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1);
}
#news_archive .news_image:hover img { opacity:0.7;
 -webkit-transform:scale(1.2); -moz-transform:scale(1.2); -ms-transform:scale(1.2); -o-transform:scale(1.2); transform:scale(1.2);
}
#news_archive .news_text { width:50%; padding:0; margin:0; 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;
}
#news_archive .title { margin:0 0 20px; font-size:32px; font-weight:400; line-height:1.2; text-align:left; }
#news_archive .title a { display:block; color:#000; text-decoration:none; }
#news_archive .excerpt { margin:0; font-size:14px; line-height:2; color:#525252; display: -webkit-inline-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
#news_archive .date { margin:0; font-size:14px; color:#525252; position:absolute; top:-30px; left: 3px; font-family: 'Arial'; }
#news_archive #post_list li:nth-of-type(even) { flex-direction:row-reverse; }
#news_archive #post_list li:nth-of-type(even) .news_image { margin-right:0; margin-left:2%; }
#news_archive #post_list li:nth-of-type(even) .news_text {  }
#news_archive #load_post { margin-top:0; }



/* ----------------------------------------------------------------------
 BRAND
---------------------------------------------------------------------- */

.brand_catchcopy { padding:0; margin:30px 0 20px 0; font-size:42px; font-weight:400; line-height:1.2; text-align:center; }
.brand_leadcopy { padding:0; margin:20px 0 30px 0; font-size:14px; line-height:2; text-align:center; color:#525252; }

/* アイキャッチ画像 */
.brand_post_image { padding:0; margin:0 0 90px 0; text-align:center; }
.brand_post_image img { max-width:100%; height:auto; }
.image-caption { margin:10px 0 0 0; color:#535353; text-align:left; font-size:14px; line-height:1.6; }
.brand_post_image a { text-decoration:none; }

/* スライダー */
.brand_post_image .brand_slider { position:relative; overflow:hidden; }
.brand_post_image .brand_slider .slides img { display:block; margin:0 auto; width:auto !important; max-width:100%; }
.flex-direction-nav { z-index:2; height:0; }
.flex-direction-nav a { display:block; width:60px; height:60px; background:#fff; text-indent:-400px; overflow:hidden; }
.flex-nav-prev, .flex-nav-next { opacity:0; width:50%; height:100%; position:absolute; z-index:2;}
.flex-nav-prev { left:0; top:0; }
.flex-nav-next { right:0; top:0; }
.flex-nav-prev:hover, .flex-nav-next:hover { opacity:1; }
.flex-nav-prev, .flex-nav-next, .flex-nav-prev:hover, .flex-nav-next:hover { -webkit-transition:opacity 0.35s ease-in-out; -moz-transition:opacity 0.35s ease-in-out; transition:opacity 0.35s ease-in-out; }
.flex-nav-prev a { background:rgba(0,0,0,0.4) url(img/common/arrow_left.png) no-repeat center center; position:absolute; left:0px; top:50%; margin-top:-30px; }
.flex-nav-next a { background:rgba(0,0,0,0.4) url(img/common/arrow_right.png) no-repeat center center; position:absolute; right:0px; top:50%; margin-top:-30px; }
.flex-direction-nav a:hover { background-color:rgba(0,0,0,0.8); }

/* アーカイブページ */
#brand_archive #post_list { position:relative; margin:0 0 30px 0; padding:0 0 20px 0; }
.post-type-archive-brand #main_col, .post-type-archive-brand #side_col, .tax-brand_category #main_col, .tax-brand_category #side_col { /*margin-top:60px;*/ }
#brand_archive .flex-nav-prev, #brand_archive .flex-nav-next { width:25%; min-width:60px; }




/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */

.side_widget { margin:0 0 50px 0; font-size:14px; position:relative; }
.side_widget:last-child, .side_widget:only-child { margin:0; }
.side_widget ul { margin:0; }
.side_widget li { line-height:200%; padding:2px 0; margin:0 0 10px 0; }
.side_widget li ul { margin:10px 0 0 0; }
.side_widget li li { padding:0; }
.side_widget li li:last-of-type { margin:0; }
.side_widget img { height:auto; max-width:100%; }
.side_headline { background:#222; color:#fff; height:50px; line-height:50px; font-size:14px; margin:0 0 20px 0; padding:0 20px; font-size:14px; font-weight:bold; }

/* banner */
.ml_ad_widget { border:none; padding:0; background:none; }
.ml_ad_widget img { height:auto; max-width:100%; width:auto; margin:0 auto; display:block; }

/* calendar */
#wp-calendar { margin:0 auto; width:100%; font-size:14px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:2px; line-height:340%; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; color:#333; background-color:#eee; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#ccc; }
#wp-calendar caption { padding:7px 0; }
#wp-calendar thead th, #wp-calendar tfoot td { border:none; padding:0; line-height:200%; }
#wp-calendar #prev, #wp-calendar #next { line-height:300%; }
#wp-calendar #prev a, #wp-calendar #next a { text-decoration:none; background:none; color:#333; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { color:#fff; background:#ccc; }
#wp-calendar td#today { font-weight:bold; }

/* styled post list1 */
.styled_post_list1_widget .side_headline { }
.styled_post_list1 { margin:0; }
.styled_post_list1 li, #footer_widget_area .styled_post_list1 li { margin:0 0 20px 0; padding:0; background:none; position:relative; display: flex; align-items: center; }
.styled_post_list1 li:last-child, #footer_widget_area .styled_post_list1 li:last-child { margin:0; padding:0; border:none; }
.styled_post_list1 ul li, #footer_widget_area .styled_post_list1 ul li { display:inline; line-height:160%; border:none; }
.styled_post_list1 ul li:last-child, #footer_widget_area .styled_post_list1 ul li:last-child { border-left:1px solid #ccc; margin:0 0 0 5px; padding:0 0 0 7px; }
.styled_post_list1 ul li:only-child, #footer_widget_area .styled_post_list1 ul li:only-child { border:none; margin:0; padding:0; }
.styled_post_list1 .info { width:calc(100% - 135px); }
.styled_post_list1 .title { font-size:14px; margin:0 0 5px 0; padding:2px 0 0 0; display:-webkit-box; font-weight:bold; max-height:100px; overflow:hidden; line-height:1.8; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; word-wrap: break-word; }
.styled_post_list1 .date { color:#525252; font-size:11px; line-height:1; margin:0; }
.styled_post_list1 .has-post-thumbnail .date { position:absolute; left:135px; bottom:0; }
.styled_post_list1 .image { float:left; display:block; margin:0 15px 0 0; overflow:hidden; width:120px; height:120px; }
.styled_post_list1 .image img {
	width:120px; height:120px;
	-webkit-transition:all 0.35s ease-in-out; -moz-transition:all 0.35s ease-in-out; transition:all 0.35s ease-in-out;
	-webkit-transform:scale(1); -moz-transform:scale(1); -ms-transform:scale(1); -o-transform:scale(1); transform:scale(1);
}
.styled_post_list1 .image:hover img {
 -webkit-transform:scale(1.2); -moz-transform:scale(1.2); -ms-transform:scale(1.2); -o-transform:scale(1.2); transform:scale(1.2);
}

/* collapse category list */
.side_widget.tcdw_category_list_widget .side_headline { margin-bottom:0; }
.collapse_category_list { border-bottom:1px solid #ccc; }
.collapse_category_list ul { margin:0; padding:0; }
.collapse_category_list li ul { margin:0; padding:0; }
.collapse_category_list li { margin:0; padding:0; }
.collapse_category_list li li { margin:0; padding:0; }
.collapse_category_list li a { color:#222; border:1px solid #ccc; display:block; padding:14px 15px; text-decoration:none; border-bottom:none; }
.collapse_category_list li a:hover { color:#222; background-color:#f6f6f6; }
.collapse_category_list .parent_category > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 15px 24px; padding-left:27px; }
.collapse_category_list li .parent_category > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 26px 24px; padding-left:39px; }
.collapse_category_list .children { display:none; }
.collapse_category_list .children a { padding-left:27px; }
.collapse_category_list ul .children a { padding-left:39px; }

/* search */
.widget_search h3{ margin-bottom:0;}
.widget_search label { display:none; }
#searchform { background:#fff; height:60px; border:1px solid #ddd; }
#searchform #s { border:none; background:none; padding:0 20px; margin:0; width:calc(100% - 50px); height:60px; }
#searchform #searchsubmit {
  border:none; background:none; width:50px; height:60px; z-index:200; position:relative;
  cursor:pointer; display:block; text-indent:-300px; overflow:hidden;
}
#searchform .submit_button  { position:relative; width:50px; height:60px; float:right; top:1px; }
#searchform .submit_button:before {
  text-indent:0; display:block; width:50px; height:60px; line-height:60px; text-align:center; cursor:pointer; z-index:1;
  position:absolute; font-family:'design_plus'; color:#333; font-size:16px; content:'\e915'; right:2px; top:0px; font-weight:600;
  transition: color 0.2s ease; -webkit-font-smoothing: antialiased;
}
@media(hover: hover) {
  #searchform .submit_button:hover:before { color:rgba(0,0,0,0.5) !important; }
}

/* archive category dropdown */
.widget_categories h3, .widget_archive h3 { margin-bottom:0; }
.widget_categories h3 + ul, .widget_archive h3 + ul { margin-top:20px; }
.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select { border:1px solid #ccc; padding:12px 10px; width:100%; margin:0; font-size:14px; box-sizing:border-box; height:50px; }
.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; }

.tcdw_archive_list_widget, .widget_categories form {
  position: relative;
}

.tcdw_archive_list_widget:after, .widget_categories form:after {
  right: 13px;
  top: 20px;
  padding: 0px;
  position: absolute;
  visibility: visible;
  font-size: 14px;
	font-family:'design_plus';
	content:'\e90e';
  display: block;
  box-sizing: border-box;
  height: 14px;
  width: 14px;
  line-height: 14px;
  z-index: 1;
}
.tcdw_archive_list_widget select, .widget_categories select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  -ms-word-break: normal;
  word-break: normal;
  position: relative;
  z-index: 2;
  background: none;
}

.widget_archive:after {
  right: 13px;
  bottom: 16px;
  padding: 0px;
  position: absolute;
  visibility: visible;
  font-size: 14px;
  font-family:'design_plus';
  content:'\e90e';
  display: block;
  box-sizing: border-box;
  height: 14px;
  width: 14px;
  line-height: 14px;
  z-index: 1;
}
.widget_archive:has(ul):after{
  color:#fff;
}
.widget_archive select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  -ms-word-break: normal;
  word-break: normal;
  position: relative;
  z-index: 2;
  background: none;
}


/* brand category list */
.brand_category_list { margin:0; padding:0; }
.brand_category_list li { display:block; margin:0 0 5px 0; padding:0; position: relative; }
.brand_category_list li:after { display: block; padding-top:100%; content:""; }
.brand_category_list li a { display:block; margin:0 auto; width:100%; height:100%; font-size:14px; color:#000; background:#f6f6f6; font-weight:700; text-align:center; text-decoration:none; position:absolute; top:0; left:0; bottom:0; right:0; }
.brand_category_list li a:hover { color:#fff; background:#ccc; }
.brand_category_list li a.active { color:#fff; background:#222; }
.brand_category_list li a span { display:block; width:100%; position:relative; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%); }

/* styled menu */
.side_widget.tcdw_menu_widget .side_headline { margin-bottom:0; }
.tcdw_menu_widget .menu { border-bottom:1px solid #ccc; }
.tcdw_menu_widget .menu ul { margin:0; padding:0; }
.tcdw_menu_widget .menu li ul { margin:0; padding:0; }
.tcdw_menu_widget .menu li { margin:0; padding:0; }
.tcdw_menu_widget .menu li li { margin:0; padding:0; }
.tcdw_menu_widget .menu li a { color:#222; border:1px solid #ccc; display:block; padding:14px 15px; text-decoration:none; border-bottom:none; cursor:pointer; }
.tcdw_menu_widget .menu li a:hover { color:#222; background-color:#f6f6f6; }
.tcdw_menu_widget .menu .menu-item-has-children > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 15px 24px; padding-left:27px; }
.tcdw_menu_widget .menu li .menu-item-has-children > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 26px 24px; padding-left:39px; }
.tcdw_menu_widget .menu li li .menu-item-has-children > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 38px 24px; padding-left:51px; }
.tcdw_menu_widget .menu li li li .menu-item-has-children > a { background:transparent url(img/common/arrow_bottom2.gif) no-repeat 50px 24px; padding-left:63px; }
.tcdw_menu_widget .menu .sub-menu { display:none; }
.tcdw_menu_widget .menu li li a { padding-left:27px; }
.tcdw_menu_widget .menu li li li a { padding-left:39px; }
.tcdw_menu_widget .menu li li li li a { padding-left:51px; }
.tcdw_menu_widget .menu li li li li li a { padding-left:63px; }


/* RSS */
.widget_rss h3 { margin-bottom:0; }
.widget_rss .side_headline .rss-widget-feed { display:none; }
.widget_rss .side_headline a { color:#fff; }
.widget_rss li { border:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px; }
.widget_rss ul li { padding:20px 20px; border: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; }
.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: -6px 0px 0px -7px;
  display: -webkit-box; display: -ms-flexbox; display: -webkit-flex; display: flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.widget_tag_cloud .tag-cloud-link {
  font-size:12px!important; background:#eeeeee;
  border-radius:5px; overflow: hidden; margin: 6px 0px 0px 6px;
  display:block; line-height:35px; height:35px; padding:0px 12px;
  color: #000; transition:all 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  .widget_tag_cloud .tag-cloud-link:hover {
    background:rgba(var(--tcd-accent-color, 0,0,0),1); color:#fff;
  }
}


/* デフォルトの最近の記事 */
.widget_recent_entries h3 { margin-bottom:0; }
.widget_recent_entries li { padding:20px 20px; margin:0 0 -1px 0; border:1px solid #ddd; display:flex; flex-direction:column; }
.widget_recent_entries li a { display:block; font-size:14px; line-height:1.8; width:100%; order:2;
  max-height:3.6em;
  word-wrap:break-word;
  overflow:hidden;
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.widget_recent_entries li a br { display:none; }
.widget_recent_entries .post-date { position:relative; color:#999; font-size:14px; margin:0 0 5px 0; display:block; width:100%; order:1; }
.widget_recent_entries .post-date:before { font-family:'design_plus'; content:'\e94e'; font-size:14px; margin:0 5px 0 0; position:relative; top:1.5px; -webkit-font-smoothing: antialiased; }


/* カスタムHTML */
.textwidget{ line-height:2; }

/* 最近のコメント */
.recentcomments{ color:#999; }

/* テキスト */
.textwidget{ line-height:2; }




/* ----------------------------------------------------------------------
 404
---------------------------------------------------------------------- */
.error404_style #contents_inner {
  width: 100%; position: absolute; z-index: 20;
  align-items: center; justify-content: center; display: flex;
  margin: 0; padding: 0;
}

.pc .error404_style #contents_inner { height: calc(100vh - 106px); }
.pc .error404_style #contents { height:calc(100vh - 106px) }

.mobile .error404_style #contents_inner { height: calc(100vh - 116px); }
.mobile .error404_style #contents { height:calc(100vh - 116px) }

.error404_style #footer { display:none; }

.p-404-page__contents {
  text-align: center;
  position: relative;
  z-index: 3;
  color: #fff;
}

.p-404-page__headline {
  font-size: 42px;
  line-height: 1.5;
  margin: -0.25em 0;
}

.p-404-page__desc {
  font-size: 16px;
  line-height: 2.2;
  margin: -0.6em 0;
}

*+.p-404-page__desc {
  margin-top: calc(35px - 0.6em);
}

.p-404-page__desc a {
  color: rgba(var(--tcd-link-color, 21, 120, 214), 1);
}

.p-404-page__desc a:hover {
  text-decoration: underline;
}

.p-404-page__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.p-404-page__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

@media (max-width: 767px) {
  .p-404-page__headline {
    font-size: 24px;
  }
  .p-404-page__desc {
    font-size: 14px;
  }
  *+.p-404-page__desc {
    margin-top: calc(25px - 0.6em);
  }
}

#search_form_404 { height:50px; max-width:400px; position:relative; margin:2em auto 0; }

#search_form_404 #page_search_button {
   display:block; height:60px; width:60px; line-height:60px; text-decoration:none; z-index:3;
	position:absolute; bottom:10px; right:0; left:0; margin:auto;
}
#search_form_404 #page_search_button:before {
  color:#fff; font-family:'design_plus'; content:'\e90e'; font-size:31px; display:block;
  position:absolute; left:14px; bottom:0px; margin:auto;
}

#search_form_404 .search_form{
  margin: 0 auto 50px;
}

#search_form_404 .input_area input { position:absolute; left:0px; width:100%; height:50px; border:none; background:#fff; z-index:1; padding:0 60px 0 25px; border-radius:50px; z-index:1; }
#search_form_404 .search_button input { position:absolute; right:0px; top:0px; border:none; background:none; width:50px; height:50px; z-index:2; cursor:pointer; }
#search_form_404 .search_button label { position:absolute; right:0px; top:0px; z-index:10; width:50px; height:50px; display:block; pointer-events:none; }
#search_form_404 .search_button label:before {
  display:block; font-family:"design_plus"; color:#000; font-size:16px;content: '\e915';
  top:19px; right:20px; position:absolute; transition: color 0.2s ease;
}




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* フッターサイト名 */
#footer_logo { font-size:40px; font-weight:300; text-align:center; margin:0 0 40px 0; }
#footer_logo a { color:#fff; }
#footer_logo img { max-width:100%; }

/* フッターウィジェット */
.footer_contents { margin:0; font-size:14px; line-height:2.4; text-align:center; }
.footer_contents a { color:#fff; }
.footer_widget { display:inline-block; width:300px; margin:0 10px 20px 10px; vertical-align:top; text-align:left; color:#fff; }
.footer_headline { font-size:14px; font-weight:700; margin:0 0 6px 0; color:#cb7684; }
.footer_headline a { color:#cb7684; }

.footer_widget.widget_nav_menu { width:150px; margin:0 5px 20px 5px; }
.footer_widget.widget_nav_menu .sub-menu { margin-left:0.66em; }

.footer_widget .collapse_category_list li a { color:#fff; }
.footer_widget .collapse_category_list li a:hover { color:#cb7684; background-color:transparent; }

.footer_widget.tcdw_menu_widget .menu li a { color:#fff; }
.footer_widget.tcdw_menu_widget .menu li a:hover { color:#cb7684; background-color:transparent; }

/* ソーシャルボタン */
#footer_social_link { margin:30px 0 20px 0; text-align:center; }
#footer_social_link li { display:inline-block; margin:0 4px; padding:0; position:relative; }
#footer_social_link li a { display:block; overflow:hidden; width:28px; height:28px; background:#fff; border-radius:50%; }
#footer_social_link li a span {
  font-family:'design_plus'; color:#000; font-size:14px; position:absolute; top:7px; left:7px;
  display:block; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link .f_facebook:before { content:'\e902'; }
#footer_social_link .f_twitter:before { font-family: 'tiktok_x_icon'; content: "\e901"; }
#footer_social_link .f_tiktok:before { font-family: 'tiktok_x_icon'; content: "\e900"; }
#footer_social_link .f_instagram:before{ content:'\ea92'; }
#footer_social_link .f_rss:before { content:'\e90b'; }
#footer_social_link .f_youtube:before { content: '\ea9d'; }
#footer_social_link .f_line:before { content: "\e909"; }
#footer_social_link .f_note:before { content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  -webkit-mask-position: center;
  transition: color 0.3s ease;
}



#footer_social_link li a:hover, #footer_social_link li.twitter a:hover, #footer_social_link li.facebook a:hover, #footer_social_link li.rss a:hover { background-color:#aaa; }

/* フッター会社名 */
#footer_company_name { margin:0 0 15px 0; font-size:14px; text-align:center; line-height: 1.6;}
#footer_company_address { margin:0 0 15px 0; font-size:14px; text-align:center; line-height: 1.6;}
#footer_company_name a, #footer_company_address a { color:#fff; text-decoration: underline;}
#footer_company_name a:hover, #footer_company_address a:hover{
  opacity: .6;
}
/* コピーライト */
#copyright { padding:0; font-size:14px; text-align:center; color:#fff; height:46px; line-height:46px; }
#copyright a { color:#fff; }

/* ページ上部へ戻るボタン */
#return_top { position:fixed; right:20px; bottom:0; z-index:10;}
#return_top:hover { opacity:1; }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a { position:relative; display:block; width:100%; height:60px; width:60px; border-radius:60px; margin:0; padding:0; text-decoration:none; background:#bbb; }
#return_top a:hover { background-color:#333; }
#return_top a:before { font-family:'design_plus'; color:#fff; font-size:20px; position:absolute; width:20px; height:20px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
#return_top a:before { content:'\e911'; top:20px; left:20px; }

/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comment_headline { background:#222; color:#fff; height:50px; line-height:50px; font-size:14px; padding:0 17px; margin:45px 0 0 0; }

#comments { font-size:14px; }

#comment_area, #trackback_area { margin:15px 0px 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


/* ------ comment_header ----------------------------------------------------------------------------------------------------------------------- */
#comment_header { position:relative; }
#comment_headline { }
#comment_header ul { position:absolute; right:15px; top:-30px; margin:0; }
#comment_header ul li { float:left; text-align:center; margin:0; }
#comment_header ul li a, #comment_header ul li p
 { font-size:12px; padding:0; margin:0; text-decoration:none; display:block; font-weight:bold; color:#fff; }
#comment_header ul li.comment_switch_active a, #comment_header ul li#comment_closed p
 { }
#comment_header ul li a:hover { text-decoration:underline; }
#comment_header ul li.comment_switch_active a { color:#fff; text-decoration:underline; }
#comment_header ul li.comment_switch_active a:hover { text-decoration:underline; }
#comment_header ul li#comment_switch, #comment_header ul li#comment_closed { border-left:1px dotted #fff; padding:0 0 0 15px; margin:0 0 0 15px; }

/* ------ comment ------------------------------------------------------------------------------------------------------------------------------ */
.commentlist { list-style-type:none; margin:0; padding:0; }
.comment { border:1px solid #ccc; color:#777; margin:0 0 15px; padding:15px 20px 0; background:#fafafa; }
#comments .post_content { margin:20px 0 0; padding:0; background:none; }
.even_comment, .odd_comment_children { background:#fafafa; }
.odd_comment, .even_comment_children { background:#fefefe; }
.admin-comment { }

/* ----- comment-meta ----- */
.comment-meta { position:relative; margin:0 0 10px 0; }

.comment-meta-left { float:left; width:400px; }
.avatar { float:left; margin:0 10px 0 0; border:1px solid #ccc; background:#fff; width:37px; height:37px; padding:2px; }
.comment-name-date { padding:3px 0 0 0; height:37px; }

a.admin-url { text-decoration:underline; }
a.guest-url { text-decoration:underline; }

.comment-name-date { margin:0; }
.comment-date { font-size:12px; color:#757676; margin:10px 0 0 0; }

.comment-act { background:url(img/common/arrow3.gif) no-repeat left; font-size:12px; position:absolute; right:0px; padding:0 0 0 10px; margin:5px 0 0 0; }
.comment-act li { display:inline; margin:0; }
.comment-reply a, .comment-reply a:visited { border-right:1px solid #aaa; padding:0 10px 0 0; margin:0 6px 0 0; }
.comment-edit a, .comment-edit a:visited { border-left:1px solid #aaa; padding:0 0 0 10px; margin:0 0 0 6px; }

/* ----- comment-content ----- */
.comment-content { padding:0; margin:0; }
* html .comment-content { padding:5px 0 0 0; }
.comment-content a, .comment-content a:visited { text-decoration:underline; }
.comment-content a:hover { }
.comment-content p { margin:0 0 10px 0; }
.comment blockquote span { margin:0 0 -1em 0; display:block; }

.comment-note { display:block; font-size:12px; margin:0 0 1em 0; color:#33a8e5; border:1px solid #94ddd4; padding:10px 15px; background:#d6f4f0; }

.comment_closed { border:1px solid #ccc; text-align:center; margin:0 35px 15px 0; padding:15px; background:#fefefe; }

/* ----- trackback-contens ----- */
.trackback_time { font-size:12px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:160%; }

#trackback_url_area { }
#trackback_url_area label { display:block; margin:0 0 10px 0; font-size:12px; }
#trackback_url_area input { border:1px solid #ccc; background:#fafafa; padding:10px; width:100%; font-size:12px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }


/* ----- comment-pager ----- */
#comment_pager { margin:0 0 10px; height:24px; }
#comment_pager a, #comment_pager span { display:inline; float:left; margin:0 10px 0 0; }
#comment_pager .current { text-decoration:underline; }



/* ---------- form area ------------------------------------------------------------------------------------------------------------------------- */
.comment_form_wrapper { border:1px solid #ccc; margin:0 0px 30px; padding:15px; background:#fff; }
.comment .comment_form_wrapper { margin:0 0 30px; }

#cancel_comment_reply { background:url(img/common/arrow3.gif) no-repeat left center; margin:0 0 1em 0; padding:0 0 0 10px; }

#comment_user_login p { padding:0 0 0 1px; margin:0; line-height:100%; }
#comment_user_login span { margin:0 0 0 40px; }

#comment_login { margin:0; padding:3px 30px 10px 30px; }
#comment_login p { margin:0; padding:12px 0 11px 36px; line-height:100%; }
#comment_login a { margin:0 0 0 20px; padding:0 0 0 20px; background:url(img/common/arrow3.gif) no-repeat 10px 3px; }

#guest_info { padding:0; width:100%; }
#guest_info div { margin:0 0 12px 0; text-align:left; }
#guest_info input { margin:0; padding:5px 0; border:1px solid #ccc; width:100%; background:#fff; color:#777; }
#guest_info input:focus { border:1px solid #e48898; }
#guest_info label { display:block; margin:0 0 5px 0; padding:0 0 0 0; font-size:12px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

#comment_textarea textarea { margin:15px 0 0; width:100%; height:150px; border:1px solid #ccc; background:#fff; color:#777; font-size:12px; overflow:auto; }
#comment_textarea textarea:focus { border:1px solid #e48898; }

#submit_comment_wrapper { text-align:center; }
#submit_comment {
	background:#aaa; border:none; cursor:pointer; color:#fff; font-size:14px; width:200px; height:50px; margin:15px auto 0; display:block;
	-webkit-transition:background-color 200ms ease-in-out;
	-moz-transition:background-color 200ms ease-in-out;
	-o-transition:background-color 200ms ease-in-out;
	-ms-transition:background-color 200ms ease-in-out;
	transition:background-color 200ms ease-in-out;
}
#submit_comment:hover { background:#e48898; }

#input_hidden_field { display:none; }

/* ----- password protected ----- */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:14px; margin:0; line-height:160%; }


/* ----------------------------------------------------------------------
 ソーシャルボタン
---------------------------------------------------------------------- */
@font-face {
    font-family: 'icomoon';
    src:    url('fonts/icomoon.eot?evfvw0');
    src:    url('fonts/icomoon.eot?evfvw0#iefix') format('embedded-opentype'),
        url('fonts/icomoon.ttf?evfvw0') format('truetype'),
        url('fonts/icomoon.woff?evfvw0') format('woff'),
        url('fonts/icomoon.svg?evfvw0#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-feedly:before { content: "\e907"; }
.icon-hatebu:before { content: "\e908"; }
.icon-line:before { content: "\e909"; }
.icon-pocket:before { content: "\e90a"; }
.icon-google-plus:before { content: "\e900"; }
.icon-google-plus2:before { content: "\e901"; }
.icon-facebook:before { content: "\e902"; }
.icon-facebook2:before { content: "\e903"; }
.icon-twitter:before { font-family: 'tiktok_x_icon'; content: "\e901";    font-size: 0.9em;}
.icon-rss:before { content: "\e90b"; }
.icon-rss2:before { content: "\e906"; }
.icon-pinterest:before { content: "\e905"; }
#share_top1 ul li a, #share_top2 ul li a, #share_btm1 ul li a, #share_btm2 ul li a { -webkit-transition:all 0.3s; -moz-transition:all 0.3s; -o-transition:all 0.3s; transition:all 0.3s; }

/*--------------------------------
share_top1（Style1）
---------------------------------*/
#share_top1 { width:100%; margin:20px 0 40px; }
#share_top1 h2 { color:#666666; font-weight:400; }
#share_top1 ul { margin:0; padding:0; list-style:none; }
#share_top1 ul li { display:inline-block; padding:0; text-align:center; }
#share_top1 ul li a { min-width:27px; text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; color: #fff!important; background:#fafafa; border-radius:2px; box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; text-align:center; line-height:25px; padding:1px 5px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li a i { position:relative; top:3px; color:#fff; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top1 ul li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top1 ul li a .share-count { display:inline; font-size:9px; color:#fff; padding:0; line-height:25px; margin:0; border-radius:0 1px 1px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li > a:hover { -webkit-transform:translate3d(0, 1px, 0); transform:translate3d(0, 1px, 0) }
@media screen and (max-width:480px) {
	#share_top1 { width:100%; margin:-10px 0 5px; }
	#share_top1 ul li a { margin-right:2px; }
	#share_top1 ul li a i { left:1px; }
	#share_top1 ul li>a span { display:none; }
	#share_top1 ul li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm1（Style3）
---------------------------------*/
#share_btm1 { margin:-10px 0 20px; }
#share_btm1 .sns { margin:0; text-align:center; }
#share_btm1 ul { margin:0 -3% 3% 0; list-style:none; display:flex; flex-wrap:wrap; }
#share_btm1 li { width:47%; margin:0 3% 1.5% 0; padding:0; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm1 ul li { list-style:none; background-image:none; padding:0; }
#share_btm1 ul li a { position:relative; display:block; top:3px; font-size:13px; padding:10px 2px 15px; color:#fff; border-radius:2px; text-align:center; text-decoration:none; vertical-align:middle; }
#share_btm1 ul li a i { position:relative; top:3px; font-size:140%; }
#share_btm1 ul li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm1 ul li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_btm1 ul li a:hover { -webkit-transform: translate3d(0px, 2px, 1px); -moz-transform: translate3d(0px, 2px, 1px); transform: translate3d(0px, 2px, 1px); }
@media only screen and (min-width:480px) {
	#share_btm1 { width:100%; margin:10px 0 15px; }
	#share_btm1 ul { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm1 li { width:24%; margin:0 1% 2% 0; }
	#share_btm1 li a { font-size:12px; padding:10px 2px; }
	#share_btm1 li:nth-child(4n) { margin-right:0; }
}

/*------------- share_top1 & share_btm1 button_color -------------*/
/* Twitter */
#share_top1 ul li.twitter a, #share_btm1 ul li.twitter a { color:#fff; background-color:#000; }
#share_top1 ul li.twitter a:hover, #share_btm1 ul li.twitter a:hover { background-color:#000; }
/* Facebook */
#share_top1 ul li.facebook a, #share_btm1 ul li.facebook a { background-color:#35629a; }
#share_top1 ul li.facebook a:hover, #share_btm1 ul li.facebook a:hover { background-color:#1f3669; }
/* Google+ */
#share_top1 ul li.googleplus a, #share_btm1 ul li.googleplus a { background-color:#dd4b39;}
#share_top1 ul li.googleplus a:hover, #share_btm1 ul li.googleplus a:hover { background-color:#b94031;}
#share_top1 ul li.googleplus a i { top:4px; }
/* Hatena */
#share_top1 ul li.hatebu>a, #share_btm1 ul li.hatebu a { background-color:#3c7dd1;}
#share_top1 ul li.hatebu>a:hover, #share_btm1 ul li.hatebu a:hover { background-color:#0270ac;}
/* Pocket */
#share_top1 ul li.pocket a, #share_btm1 ul li.pocket a { background-color:#ee4056; }
#share_top1 ul li.pocket a:hover, #share_btm1 ul li.pocket a:hover { background-color:#c53648; }
/* rss */
#share_top1 ul li.rss a, #share_btm1 ul li.rss a { background-color:#ffb53c; }
#share_top1 ul li.rss a:hover, #share_btm1 ul li.rss a:hover { background-color:#e09900; }
/* Feedly */
#share_top1 ul li.feedly a, #share_btm1 ul li.feedly a { background-color:#6cc655; }
#share_top1 ul li.feedly>a:hover, #share_btm1 ul li.feedly>a:hover { background-color:#5ca449; }
/* Pinterest */
#share_top1 ul li.pinterest a, #share_btm1 ul li.pinterest a { background-color:#d4121c; }
#share_top1 ul li.pinterest a:hover, #share_btm1 ul li.pinterest a:hover { background-color:#a42f35; }


/*--------------------------------
share_top2（Style2）
---------------------------------*/
#share_top2 { width:100%; margin:20px 0 40px; }
#share_top2 h2 { color:#444; font-weight:400; }
#share_top2 ul.type2 { margin:0; padding:0; list-style:none; }
#share_top2 ul.type2 li { display:inline-block; padding:0; text-align:center; }
#share_top2 ul.type2 li a { text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; line-height:25px; padding:1px 5px 0; }
#share_top2 ul.type2 li a i { position:relative; top:3px; color:#222; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top2 ul.type2 li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top2 ul.type2 li a .share-count { color:#444; font-size:9px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top2 ul.type2 li a:hover, #share_top2 ul.type2 li a:hover i, #share_top2 ul.type2 li a:hover .share-count { color:#fff !important; }
#share_top2 ul.type2 li a:hover { border-color:rgba(255,255,255,.1); }
@media screen and (max-width:480px) {
	#share_top2 { width:100%; margin:-10px 0 5px; }
	#share_top2 ul.type2 li a { margin-right:2px; }
	#share_top2 ul.type2 li a i { left:1px; }
	#share_top2 ul.type2 li>a span.ttl { display:none; }
	#share_top2 ul.type2 li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm2（Style4）
---------------------------------*/
#share_btm2 { margin:-10px 0 20px; text-align:center; }
#share_btm2 .sns { margin:0; }
#share_btm2 ul.type4 { margin:0 -3% 2% 0; list-style:none; display:flex; flex-wrap:wrap; }
#share_btm2 ul.type4 li { width:47%; margin:0 3% 3% 0; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm2 ul li { list-style:none; background-image:none; padding:0; }
#share_btm2 ul.type4 li a { position:relative; display:block; top:5px; font-size:13px; padding:10px 2px 15px; text-decoration:none; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; }
#share_btm2 ul.type4 li a i { position:relative; top:3px; font-size:140%; color:#222 !important; }
#share_btm2 ul.type4 li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm2 ul.type4 li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; color:#222 !important; }
#share_btm2 ul.type4 li a:hover, #share_btm2 ul.type4 li a:hover i, #share_btm2 ul.type4 li a:hover .share-count { color:#fff !important; }
@media only screen and (min-width:480px) {
	#share_btm2 { width:100%; margin:10px 0 15px; }
	#share_btm2 ul.type4 { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm2 ul.type4 li { width:24%; margin:0 1% 2% 0; }
	#share_btm2 ul.type4 li a { font-size:12px; padding:10px 2px; }
	#share_btm2 ul.type4 li:nth-child(4n) { margin-right:0; }
}
/*------------- share_top2 & share_btm4 button_color -------------*/
/* Twitter */
#share_top2 ul.type2 li.twitter a, #share_btm2 ul.type4 li.twitter a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.twitter a:hover, #share_btm2 ul.type4 li.twitter a:hover { color:#fff !important; background-color:#000 !important; }
/* Facebook */
#share_top2 ul.type2 li.facebook a, #share_btm2 ul.type4 li.facebook a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.facebook a:hover, #share_btm2 ul.type4 li.facebook a:hover { color:#fff !important; background-color:#35629a !important; }
/* Google+ */
#share_top2 ul.type2 li.googleplus a, #share_btm2 ul.type4 li.googleplus a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.googleplus a:hover, #share_btm2 ul.type4 li.googleplus a:hover { color:#fff !important; background-color:#dd4b39 !important;}
#share_top2 ul.type2 li.googleplus a i, #share_btm2 ul.type4 li.googleplus a i { top:4px; }
/* Hatena */
#share_top2 ul.type2 li.hatebu a, #share_btm2 ul.type4 li.hatebu a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.hatebu a:hover, #share_btm2 ul.type4 li.hatebu a:hover { color:#fff !important; background-color:#3c7dd1 !important;}
/* Pocket */
#share_top2 ul.type2 li.pocket a, #share_btm2 ul.type4 li.pocket a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pocket a:hover, #share_btm2 ul.type4 li.pocket a:hover { color:#fff !important; background-color:#ee4056 !important; }
/* rss */
#share_top2 ul.type2 li.rss a, #share_btm2 ul.type4 li.rss a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.rss a:hover, #share_btm2 ul.type4 li.rss a:hover { color:#fff !important; background-color:#ff8c00 !important; }
/* Feedly */
#share_top2 ul.type2 li.feedly a, #share_btm2 ul.type4 li.feedly a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.feedly a:hover, #share_btm2 ul.type4 li.feedly a:hover { color:#fff !important; background-color:#6cc655 !important; }
/* Pinterest */
#share_top2 ul.type2 li.pinterest a, #share_btm2 ul.type4 li.pinterest a { color:#222 !important; background-color:#fafafa !important; }
#share_top2 ul.type2 li.pinterest a:hover, #share_btm2 ul.type4 li.pinterest a:hover { color:#fff !important; background-color:#d4121c !important; }

/*--------------------------------
share_top5（公式ボタン）
---------------------------------*/
#share5_top { margin:0 0 20px; }
#share5_btm { margin:20px 0 35px; }
.sns_default_top { padding:0; list-style:none; }
.sns_default_top ul { margin:0; padding:0; }
.sns_default_top ul li { display:inline-block; margin:0 5px 3px 0; line-height:1!important; overflow:hidden; vertical-align:top; }
.sns_default_top ul li.twitter_button { width:78px; }
.sns_default_top ul li.fbshare_button:hover { text-decoration:none; }
.sns_default_top ul li.google_button { width:58px; }
.sns_default_top ul li.pocket_button { width:88px; }
@media only screen and (max-width: 480px) {
	#share5_top { margin:-10px 0 20px; }
	#share5_btm { margin:0 0 20px; }
	.sns_default_top ul li { margin-bottom:6px; }
	.sns_default_top ul li.twitter_button { margin-left:0; }
}

/**
* スマホ用固定フッターバーの設定
*/
.footer-bar02 {
  background: #ffffff;
  border-top: 1px solid #ddd;
  display: table;
  font-size: 12px;
  position: fixed;
  bottom: 0;
  table-layout: fixed;
  text-align: center;
  width: 100%;
  z-index: 9998;
}
.footer-bar02 a {
  display: block;
  padding: 15px 0;
}

.footer-bar02-item {
  display: table-cell;
  vertical-align: middle;
}
.footer-bar02-item + .footer-bar02-item {
  border-left: 1px solid #ddd;
}
.footer-bar02-item:only-child .footer-bar02-icon {
  display: block;
  position: relative;
}
.footer-bar02-item:only-child .footer-bar02-icon:before {
  position: absolute;
  right: 15px;
}

.footer-bar02-icon:before {
  display: block;
  font-family: "design_plus";
  font-size: 16px;
  margin-bottom: .5em;
}

.modal-overlay {
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}

.modal-content {
  margin: auto;
  position: fixed;
  bottom: 20%;
  left: 0;
  right: 0;
  width: 209px;
  z-index: 9999;
}

.modal-close:before {
  color: #fff;
  font-size: 32px;
  position: absolute;
  font-family: "design_plus";
  bottom: 20%;
  right: 0;
  text-align: center;
  width: 50px;
}

.share {
  text-align: center;
}

.share-button {
  /*background: #fff;*/
  display: inline-block;
  vertical-align: center;
  width: 50px;
  height: 50px;
}
.share-button + .share-button {
  margin-left: 3px;
}
.share-button a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}
.share-button a:before {
  font-size: 24px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 24px;
  height: 24px;
}

/* 日付 */
@font-face {
  font-family: 'footer_bar';
  src: url('fonts/footer_bar.eot?v=1.0');
  src: url('fonts/footer_bar.eot?v=1.0#iefix') format('embedded-opentype'),
       url('fonts/footer_bar.woff?v=1.0') format('woff'),
       url('fonts/footer_bar.ttf?v=1.0') format('truetype'),
       url('fonts/footer_bar.svg?v=1.0#footer_bar') format('svg');
  font-weight: normal;
  font-style: normal;
}
.c-date {
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  font-family:'Arial'; font-size:14px; color:#999; line-height:1;
}
.c-date:before { font-family: 'footer_bar'; content: '\e912'; font-size:0.85em; margin-top: 0.15em; margin-right:4px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.c-date--updated:before { font-family:'design_plus'; content:'\e943'; }
@media (max-width: 767px) {
  .c-date { font-size:12px; }
}

.c-line1, .c-line2, .c-line3, .c-line4 { overflow:hidden; visibility:visible; word-break: break-all; }
.c-line2 > span, .c-line2 > a { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }


/* ----------------------------------------------------------------------
 汎用スタイルの追加
 https://tcd-theme.com/2023/09/utility-classes.html
---------------------------------------------------------------------- */
.post_content .a_break { display: inline-block; }
@media (max-width: 767px) {
  .post_content .is-pc { display:none!important; }
}
@media not all and (max-width: 767px) {
  .post_content .is-sp { display:none!important; }
}
.post_content .e_link {
  display: inline-block; position: relative; padding-right:1em;
}
.post_content .e_link:after {
  font-family: 'design_plus'; content: '\e92a'; font-size: 100%; display: block;
  position: absolute; transition:none; margin-top:-0.1em;
  right:0; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
.post_content img.frame {
  border: 1px solid #d2d2d2;
  -webkit-box-shadow: 0 6px 6px -6px #cccccc;
  -moz-box-shadow: 0 6px 6px -6px #cccccc;
  box-shadow: 0 6px 6px -6px #cccccc;
}


/* ----------------------------------------------------------------------
 ブロックエディターの埋め込み機能の調整
---------------------------------------------------------------------- */
.wp-block-embed { margin-bottom:2em; }

/* ----------------------------------------------------------------------
 上付き文字、下付き文字
---------------------------------------------------------------------- */
sup {
vertical-align: super;
font-size: smaller;
}
sub {
vertical-align: sub;
font-size: smaller;
}


/* ----------------------------------------------------------------------
 長いURLなどがはみ出る現象
---------------------------------------------------------------------- */
.post_content p { word-wrap: break-word; }


.has-text-align-left { text-align:left !important; }
.has-text-align-right { text-align:right !important; }
  
  /** ブロックエディターのテーブルブロックの調整 **/
.wp-block-table.is-style-stripes td,
.wp-block-table .has-background td{
  background-color: transparent;
}

.font_type1 { font-family: var(--tcd-font-type1); }
.font_type2 {font-family: var(--tcd-font-type2); }
.font_type3 {font-family: var(--tcd-font-type3); }

.entry-date {
  font-family: 'Arial';
}

/* スクロール */
html {
	scroll-behavior: smooth;
	scroll-padding-top: 60px;
}
html:has(.header_fixed) {
	scroll-padding-top: 140px;
}
html:has(.header_slide_down) {
	scroll-padding-top: 80px;
}
@media (max-width: 1199px) {
  html {
	scroll-padding-top: 20px !important;
}
	html:has(.mobile_header_fix) {
		scroll-padding-top: 90px !important;
	}
}

body.single-post .flex_layout {
  display: flex;
  gap: 50px;
}

body.single-post.layout2 #main_col {
  order:2;
}

body.single-brand .flex_layout {
  display: flex;
  gap: 50px;
}

body.single-brand.layout2 #main_col {
  order:2;
}

body.single-news .flex_layout {
  display: flex;
  gap: 50px;
}

body.single-news.layout2 #main_col {
  order:2;
}

body.page-template-default  .flex_layout {
  display: flex;
  gap: 50px;
}

body.page-template-default.layout2  #main_col {
  order: 2;
}

body.page-template-page-notitle  .flex_layout {
  display: flex;
  gap: 50px;
}

body.page-template-page-notitle.layout2  #main_col {
  order: 2;
}

.page_template_type p {
      line-height: 2.4;
    margin: 0 0 2em 0;
}

.page_template_type dd {
      line-height: 2.2;
}

.page_template_type dt {
      line-height: 2.2;
}