@charset "utf-8";
/*
Theme Name:LAW
Theme URI:https://tcd-theme.com/tcd031
Description: WordPress theme "LAW" is developed for lawyers and other professionals, designed to be memorable on the first view. You can also easily create staff pages, so it can be used as a corporate website.
Author:TCD
Author URI:https://tcd-theme.com/
Text Domain:tcd-law
Version:3.5.1
*/


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

@font-face {
  font-family: 'tiktok_x_icon';
  src: url('fonts/tiktok_x_icon.eot?v=1.1');
  src: url('fonts/tiktok_x_icon.eot?v=1.1#iefix') format('embedded-opentype'),
       url('fonts/tiktok_x_icon.woff?v=1.1') format('woff'),
       url('fonts/tiktok_x_icon.ttf?v=1.1') format('truetype'),
       url('fonts/tiktok_x_icon.svg?v=1.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 */




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
a { color:#333; text-decoration:none; }
a, a:before, a:after, input { -webkit-transition:0.3s ease-out; -moz-transition:0.3s ease-out; -o-transition:0.3s ease-out; -ms-transition:0.3s ease-out; transition:0.3s ease-out; }
a:hover { text-decoration:underline; }
.clear { clear:both; }
.hide { display:none; }

/* リンクボタン */
a.link_button { display:inline-block; height:50px; line-height:50px; padding:0 45px; background:#432115; color:#fff; }
a.link_button:hover { text-decoration:none; color:#fff; background:#ff9c00; }


/* page navigation */
.page_navi { margin:0; }
.page_navi h4 { font-size:10px; font-weight:normal; margin:0 0 15px; color:#888; }
.page_navi ul { margin:0; }
.page_navi li { float:left; }
.page_navi a, .page_navi a:hover, .page_navi span
 { color:#fff; font-size:12px; padding:0 15px; height:37px; line-height:37px; margin:0 5px 5px 0; background:#bbb; display:block; }
.page_navi a:hover { color:#fff; background:#ff9c00; text-decoration:none; }
.page_navi span.dots { background:none; color:#333; }
.page_navi span.current { color:#fff; background:#222; }
.page_navi p.back { margin:0; }
.page_navi p.back a, .page_navi p.back a:hover { display:inline-block; padding:0 15px; }


/* ページ分割 */
#post_pagination { margin:0 0 15px 0; clear:both; }
#post_pagination h5 { margin:0 0 10px 0; font-size:12px; }
#post_pagination a, #post_pagination p { float:left; display:inline-block; background:#eee; margin:0 5px 0 0; width:35px; height:35px; line-height:35px; text-align:center; text-decoration:none; color:#333; font-size:12px; }
#post_pagination p { background:#666; color:#fff; }
#post_pagination a:hover { color:#fff; }



/* パンくずリンク */
#bread_crumb { padding:0 0 20px;}
#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:1px; left:0px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home:after { display:none; }
#bread_crumb li.home a:before { content:'\e90c'; }
#bread_crumb li.home a:hover:before { color:#fff; }
#bread_crumb li { color:#aaa; font-size:13px; 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:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#888; }
.pc .no_side #bread_crumb, .pc .error404 #bread_crumb { width:900px; }


#top_slider{
  display: none;
}
#top_slider.slick-initialized {
  display: block;
}


/* ローディングアイコン */
#site-wrap {
  /*display: none;*/
}

#site-loader-overlay {
  background: #fff;
  opacity: 1;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  width: 100vw;
  height: 100vh;
  z-index: 99999;
}

#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;
  -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);
  }
}
/* アイコンフォント */
.icon-arrow-right:before {
  content: "\e910";
}

/* keyframes */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes imageAnimation03 {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  5% {
    visibility: visible;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes imageAnimation03 {
  0% {
    visibility: hidden;
    opacity: 0;
  }
  5% {
    visibility: visible;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
.side_widget { margin:0 0 60px 0; font-size:14px; position:relative;}
.side_widget:last-child { margin:0; }
.side_widget ul { margin:0; }
.side_widget li { line-height:200%; line-height:2; padding:2px 0; margin:0 0 10px 0; }
.side_widget a { }
.side_widget img { height:auto; max-width:100%; }
.side_headline, .widget_block .wp-block-heading { background:#222439; color:#fff; height:50px; line-height:50px; padding:0 15px; font-size:16px; margin:0 0 30px 0; }
.side_widget a { text-decoration:none; } 

.widget_recent_comments li { color:#999; }



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


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


/* styled post list1 */
.styled_post_list1 { margin:0; }
.styled_post_list1 li { margin:0 0 20px 0; }
.styled_post_list1 li:last-child { margin:0; }
.styled_post_list1 li a { }
.styled_post_list1 .info { 
  height: 120px;
  overflow: hidden;
  }
.styled_post_list1 .info .post_date { margin:0 0 5px 0; line-height:100%; font-weight:bold; }
.styled_post_list1 .info .title { font-size:14px; margin:0; padding:0 0 5px 0; display:block; font-weight:400; line-height:180%;
  display: -webkit-inline-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.styled_post_list1 .image { float:left; display:block; margin:0 20px 0 0; width:120px; height:120px; position:relative; }
.styled_post_list1 .image img { width:100%; height:100%; display:block; }
.styled_post_list1 a.image:after {
   content:"";  box-shadow:inset 0 0 0 0 rgba(255,255,255, 0); position:absolute; top:0; left:0; bottom:0; right:0;
   -webkit-transition: all 0.2s ease-in-out; -moz-transition: all 0.2s ease-in-out; -o-transition: all 0.2s ease-in-out; -ms-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out;
}
.styled_post_list1 a.image:hover:after { box-shadow:inset 0 0 0 10px rgba(255,255,255, 0.3); }
.styled_post_list1 .excerpt { padding:0; line-height:200%; }


/* menu category list */
.tcdw_menu_category_list_widget li { margin:0 0 15px 0; }
.tcdw_menu_category_list_widget li:last-child { margin:0; }
.tcdw_menu_category_list_widget a { display:block; background:#432115; height:120px; }
.tcdw_menu_category_list_widget a:hover { background-color:#FF9C00; }
.tcdw_menu_category_list_widget .image { display:block; width:120px; height:120px; float:left; margin:0 25px 0 0; }
.tcdw_menu_category_list_widget .image img { width:120px; height:120px; }
.tcdw_menu_category_list_widget .title { font-size:16px; color:#fff; font-weight:bold; float:left; width:130px; margin-top:25px; display:block; }
.tcdw_menu_category_list_widget .no_image li { margin:0 0 5px 0; }
.tcdw_menu_category_list_widget .no_image a { height:auto; padding:15px 25px; }
.tcdw_menu_category_list_widget .no_image .title { margin:0; width:auto; float:none; }


/* category list */
.tcdw_category_list_widget .side_headline { margin:0; }
.tcdw_category_list_widget li { margin:0 0 3px 0; }
.tcdw_category_list_widget li:last-child { margin:0; }
.tcdw_category_list_widget a { display:block; background:#f3f3f3; padding:12px; color:#333; text-decoration:none; }
.tcdw_category_list_widget a:hover { background-color:#FF9C00; color:#fff; }


/* archive list */
.tcdw_archive_list_widget .side_headline { margin:0; }
.tcdw_archive_list_widget li { margin:0 0 3px 0; }
.tcdw_archive_list_widget li:last-child { margin:0; }
.tcdw_archive_list_widget a { display:block; background:#f3f3f3; padding:12px; color:#333; text-decoration:none; }
.tcdw_archive_list_widget a:hover { background-color:#FF9C00; color:#fff; }


/* search */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s { width:260px; height:40px; margin:0 -2px 5px 0; border:1px solid #ccc; background:#f2f2f2; padding:0 10px; box-shadow:2px 2px 3px 0px #ddd inset; }
.widget_search #search-btn input, .widget_search #searchsubmit { border:none; width:40px; height:40px; background:#000 url(img/common/icon_search.png) no-repeat center; cursor:pointer; display:block; float:right; text-indent:-300%; overflow:hidden; }
.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover { background-color:#666; }
.widget_search #searchform{
  position: relative;
}
.widget_search .submit_button{
  position: absolute;
  right: 0;
  top: 0;
}


/* archive category dropdown */
.widget_archive select, .widget_categories select { border:1px solid #ddd; padding:6px 10px; width:100%; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; margin:0 0 20px 0; }
.widget_archive label, .widget_categories label { display:none; }


/* google search */
.google_search label { display:none; }
.google_search #search-box, .google_search #search_input { width:260px; height:40px; margin:0 -2px 5px 0; border:1px solid #ccc; background:#f2f2f2; padding:0 10px; box-shadow:2px 2px 3px 0px #ddd inset; }
.google_search #search-btn input, .google_search #search_button{ border:none; width:40px; height:40px; background:#000 url(img/common/icon_search.png) no-repeat center; cursor:pointer; display:block; float:right; text-indent:-300%; overflow:hidden; }
.google_search #search-btn input:hover, .google_search #search_button:hover { background-color:#666; }

/* デフォルトのRSS */
.widget_rss .rss-widget-feed { display:none; }
.widget_rss .rss-widget-title { text-decoration: none; color: #fff; }
.widget_rss li { border-bottom:1px solid #ddd; margin:0 0 -1px 0; padding:20px 30px 15px; font-size:14px;}
.widget_rss li:last-of-type { border:none; }
.widget_rss ul li { padding:20px 0px; border-bottom:1px solid #ddd; margin-top:-1px; display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
.widget_rss ul li:first-child{
  padding-top: 0;
}
.widget_rss ul li:not(:first-child) { border-top:1px solid #ddd; }
.widget_rss ul li .rss-date { -ms-flex-order:1; order:1; color:#999; font-size:13px; line-height:1; margin-right:10px; padding:0 0 0 22px; position:relative; }
.widget_rss ul li .rss-date:before {font-family: 'design_plus';
  content: '\e94e';font-size:16px; position:absolute; top:-2px; left:0px; -webkit-font-smoothing: antialiased; }
.widget_rss ul li cite { -ms-flex-order:2; order:2; color:#999; font-size:13px; line-height:1; }
.widget_rss ul li .rsswidget { -ms-flex-order:3; order:3; display:block; width:100%; margin:0; }
.widget_rss ul li .rssSummary { -ms-flex-order:4; order:4; color:#999; font-size:13px; margin: -0.35em 0; }
.widget_rss .rss-date { position:relative; font-family:Arial; }
.widget_rss .rsswidget ~ .rss-date, .widget_rss .rsswidget ~ cite { margin-bottom:10px; }
.widget_rss .rsswidget ~ .rssSummary { margin-top:calc(10px - 0.35em); }

/* デフォルトのタグ一覧 */
.widget_tag_cloud .tagcloud {
	margin:0 0 -6px 0; padding:0; position:relative;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.widget_tag_cloud .tagcloud a { margin:0 6px 6px 0; font-size:14px !important; display:block; background:#fff; padding:0px 20px; border-radius:5px; height:36px; line-height:36px; border: 1px solid #ddd;}
.widget_tag_cloud .tagcloud a:hover { background:#000; color:#fff; }

/* デフォルトの最近の記事 */
.widget_recent_entries li { border-bottom:1px solid #ddd; padding:0 0 15px 0; margin-bottom:15px; }
.widget_recent_entries li:last-child { border:none; padding:0; margin:0; }
.widget_recent_entries li a { display:block; word-wrap: break-word;}
.widget_recent_entries .post-date { position:relative; color:#999; font-size:14px; display:block; margin-top:3px; }
.widget_recent_entries .post-date:before {
  font-family:'design_plus'; content:'\e94e'; font-size:13px; display:inline-block; margin:0 7px 0 0; vertical-align:-1px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


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



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


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

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

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


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

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


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

/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comment_headline { background:#222439; color:#fff; height:50px; line-height:50px; padding:0 15px; font-size:16px; margin:0 0 30px 0; position:relative; }

#comments { font-size:12px; }

#comment_area, #trackback_area { margin:0 0 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:-62px; 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:11px; padding:0; margin:0; text-decoration:none; display:block; font-weight:bold; color:#ddd; }
#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 { text-decoration:underline; color:#ddd; }
#comment_header ul li.comment_switch_active a:hover { text-decoration:underline; color:#fff; }
#comment_header ul li#comment_switch, #comment_header ul li#comment_closed { border-left:1px dotted #ccc; 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 {  }
a.guest-url {  }

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

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

/* ----- comment-content ----- */
.comment-content { padding:0; margin:0; }
* html .comment-content { padding:5px 0 0 0; }
.comment-content a, .comment-content a:visited { }
.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:11px; margin:0 0 1em 0; color:#33a8e5; border:1px solid #94ddd4; padding:10px 15px; background:#d6f4f0; }

.comment_closed { border:1px solid #ccc; text-align:center; margin:0 35px 15px 0; padding:15px; background:#fefefe; }

/* ----- trackback-contens ----- */
.trackback_time { font-size:11px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:160%; }

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


/* ----- comment-pager ----- */
#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:0px; 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 #ff9c00; }
#guest_info label { display:block; margin:0 0 5px 0; padding:0 0 0 0; font-size:11px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

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

#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:#ff9c00; }

#input_hidden_field { display:none; }

/* ----- password protected ----- */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:12px; margin:0; line-height:160%; }




/* ----------------------------------------------------------------------
 WordPress プリセットスタイル
---------------------------------------------------------------------- */
/* alignment */
.post_content .alignright { float:right; }
.post_content .alignleft { float:left; }
.post_content .aligncenter { display:block; margin-left:auto; margin-right:auto; margin-bottom:7px; }
.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright {
  display: table;
  }
.post_content blockquote.alignleft, .post_content img.alignleft { margin:7px 24px 7px 0; }
.post_content .wp-caption.alignleft { margin:7px 14px 7px 0; }
.post_content blockquote.alignright, .post_content img.alignright { margin:7px 0 7px 24px; }
.post_content .wp-caption.alignright { margin:7px 0 7px 14px; }
.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter { margin-top:7px; margin-bottom:7px; }


/* text and headline */
.post_content p { line-height:2; margin:0 0 2em 0; word-wrap: break-word;}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { clear:both; line-height:1.2; font-weight:600; margin:0 0 10px 0; padding:10px 0 0 0; }
.post_content h1 { font-size:150%; }
.post_content h2 { font-size:140%; }
.post_content h3 { font-size:130%; }
.post_content h4 { font-size:120%; }
.post_content h5 { font-size:110%; }
.post_content h6 { font-size:100%; }


/* image */
.post_content img[class*="align"], .post_content img[class*="wp-image-"], .post_content img[class*="attachment-"], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img
 { height:auto; max-width:100%; }


/* list */
.post_content li, .post_content dt, .post_content dd { line-height:2.2; }
.post_content ul, .post_content ol, .post_content dl { margin-bottom:24px; }
.post_content ol { list-style:decimal outside none; margin-left:1.5em; }
.post_content ul { list-style:circle outside none; margin-left:1.3em; }
.post_content li > ul, .post_content li > ol { margin-bottom:0; }
.post_content dt { font-weight:bold; }
.post_content dd { margin-bottom:1em; }


/* table */
.post_content table { margin:0 0 24px 0; }
.post_content td, .post_content th { border:1px solid #bbb; padding:10px 15px 7px; line-height:2.2; background:#fff; }
.post_content th { background:#ddd; font-weight:normal; }


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px 0; border:1px solid #ccc; box-shadow:0px 4px 0px 0px #f2f2f2; position:relative; }
.post_content blockquote:before { content: '"'; font-style:italic; font-size:30px; font-weight:normal; line-height:40px; width:30px; height:30px; position:absolute; top:5px; left:10px; color:#5cbcd7; }
.post_content blockquote:after { content: '"'; font-style:italic; font-size:30px; font-weight:normal; text-align:left; line-height:60px; width:30px; height:30px; position:absolute; bottom:7px; right:-2px; color:#5cbcd7; }
.post_content blockquote cite { border-top:1px dotted #aaa; display:block; padding:20px 0 0 0; font-style:italic; text-align:right; font-size:90%; }

/* captions */
.post_content .wp-caption { margin-bottom:24px; background:#fff; border:1px solid #ccc; padding:5px; max-width:100%; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.post_content .wp-caption-text { text-align:center; font-size:12px; font-style:italic; line-height:1.5; margin:9px auto; }
.post_content .wp-caption img[class*="wp-image-"] { display:block; margin:0 auto; }


/* gallery */
.gallery { margin-bottom:20px; }
.gallery a img { border: 0 !important; }
.gallery-item { float:left; margin:0 4px 4px 0; overflow:hidden; position:relative; }
.gallery-columns-1 .gallery-item { max-width:100%; }
.gallery-columns-2 .gallery-item { max-width:48%; max-width:-webkit-calc(50% - 4px); max-width:calc(50% - 4px); }
.gallery-columns-3 .gallery-item { max-width:32%; max-width:-webkit-calc(33.3% - 4px); max-width:calc(33.3% - 4px); }
.gallery-columns-4 .gallery-item { max-width:23%; max-width:-webkit-calc(25% - 4px); max-width:calc(25% - 4px); }
.gallery-columns-5 .gallery-item { max-width:19%; max-width:-webkit-calc(20% - 4px); max-width:calc(20% - 4px); }
.gallery-columns-6 .gallery-item { max-width:15%; max-width:-webkit-calc(16.7% - 4px); max-width:calc(16.7% - 4px); }
.gallery-columns-7 .gallery-item { max-width:13%; max-width:-webkit-calc(14.28% - 4px);	max-width:calc(14.28% - 4px); }
.gallery-columns-8 .gallery-item { max-width:11%; max-width:-webkit-calc(12.5% - 4px); max-width:calc(12.5% - 4px); }
.gallery-columns-9 .gallery-item { max-width: 9%; max-width:-webkit-calc(11.1% - 4px); max-width:calc(11.1% - 4px); }
.gallery-columns-10 .gallery-item { max-width: 7%; max-width:-webkit-calc(9.4% - 0px); max-width:calc(9.4% - 0px); }
.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) { margin-right:0; }
.gallery-caption { background-color:rgba(0, 0, 0, 0.7);	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; color:#fff; font-size:12px; line-height:1.5; margin:0; max-height:50%; opacity:0; padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%; }
.gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%; }
.gallery-item:hover .gallery-caption { opacity: 1; }
.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption { display: none; }


/* etc */
.post_content .wp-smiley { border:0; margin-bottom:0; margin-top:0; padding:0; }
.post_content address { margin:0 0 24px 0; line-height:2.2; }
.post_content pre { border-left:5px solid #7fc120; font-size:12px; margin:0 0 27px 0; line-height:25px; background:url(img/common/pre.gif) repeat left top; padding:0 17px; overflow:auto; }
.post_content .sticky { }
.post_content .mejs-container { margin: 12px 0 25px; }


/* ----------------------------------------------------------------------
 ソーシャルボタン
---------------------------------------------------------------------- */
@font-face {
    font-family: 'icomoon';
    src:    url('fonts/icomoon.eot?evfvw0');
    src:    url('fonts/icomoon.eot?evfvw0#iefix') format('embedded-opentype'),
        url('fonts/icomoon.ttf?evfvw0') format('truetype'),
        url('fonts/icomoon.woff?evfvw0') format('woff'),
        url('fonts/icomoon.svg?evfvw0#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-feedly:before { content: "\e907"; }
.icon-hatebu:before { content: "\e908"; }
.icon-line:before { content: "\e909"; }
.icon-pocket:before { content: "\e90a"; }
.icon-google-plus:before { content: "\e900"; }
.icon-google-plus2:before { content: "\e901"; }
.icon-facebook:before { content: "\e902"; }
.icon-facebook2:before { content: "\e903"; }
.icon-twitter:before { font-family: 'tiktok_x_icon'; content: "\e901"; }
.icon-rss:before { content: "\e90b"; }
.icon-rss2:before { content: "\e906"; }
.icon-pinterest:before { content: "\e905"; }
#share_top1 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:-15px 0 15px; }
#share_top1 h2 { color:#666666; font-weight:400; }
#share_top1 ul { margin:0; padding:0; list-style:none; }
#share_top1 ul li { display:inline-block; padding:0; text-align:center; }
#share_top1 ul li a { min-width:27px; text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; color: #fff!important; background:#fafafa; border-radius:2px; box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; text-align:center; line-height:25px; padding:1px 5px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li a i { position:relative; top:3px; color:#fff; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top1 ul li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top1 ul li a .share-count { display:inline; font-size:9px; color:#fff; padding:0; line-height:25px; margin:0; border-radius:0 1px 1px 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top1 ul li > a:hover { -webkit-transform:translate3d(0, 1px, 0); transform:translate3d(0, 1px, 0) }
@media screen and (max-width:480px) {
	#share_top1 { width:100%; margin:-10px 0 15px; }
	#share_top1 ul { margin-bottom:15px; }
	#share_top1 ul li a { margin-right:2px; }
	#share_top1 ul li a i { left:1px; }
	#share_top1 ul li>a span { display:none; }
	#share_top1 ul li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm1（Style3）
---------------------------------*/
#share_btm1 { margin:-10px 0 20px; }
#share_btm1 .sns { text-align:center; }
#share_btm1 ul { margin:0 0 2%; padding:0; list-style:none; }
#share_btm1 li { float:left; width:48%; margin:0 1% 1.5%; 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; 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 20px; }
	#share_btm1 ul { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm1 li { width:24%; margin:0 1% 1% 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 -------------*/
/* X */
#share_top1 ul li.twitter a, #share_btm1 ul li.twitter a { color:#fff; background-color:#000; }
#share_top1 ul li.twitter a:hover, #share_btm1 ul li.twitter a:hover { background-color:#222; }
/* Facebook */
#share_top1 ul li.facebook a, #share_btm1 ul li.facebook a { background-color:#35629a; }
#share_top1 ul li.facebook a:hover, #share_btm1 ul li.facebook a:hover { background-color:#1f3669; }
/* Google+ */
#share_top1 ul li.googleplus a, #share_btm1 ul li.googleplus a { background-color:#dd4b39;}
#share_top1 ul li.googleplus a:hover, #share_btm1 ul li.googleplus a:hover { background-color:#b94031;}
#share_top1 ul li.googleplus a i { top:4px; }
/* Hatena */
#share_top1 ul li.hatebu>a, #share_btm1 ul li.hatebu a { background-color:#3c7dd1;}
#share_top1 ul li.hatebu>a:hover, #share_btm1 ul li.hatebu a:hover { background-color:#0270ac;}
/* Pocket */
#share_top1 ul li.pocket a, #share_btm1 ul li.pocket a { background-color:#ee4056; }
#share_top1 ul li.pocket a:hover, #share_btm1 ul li.pocket a:hover { background-color:#c53648; }
/* rss */
#share_top1 ul li.rss a, #share_btm1 ul li.rss a { background-color:#ffb53c; }
#share_top1 ul li.rss a:hover, #share_btm1 ul li.rss a:hover { background-color:#e09900; }
/* Feedly */
#share_top1 ul li.feedly a, #share_btm1 ul li.feedly a { background-color:#6cc655; }
#share_top1 ul li.feedly>a:hover, #share_btm1 ul li.feedly>a:hover { background-color:#5ca449; }
/* Pinterest */
#share_top1 ul li.pinterest a, #share_btm1 ul li.pinterest a { background-color:#d4121c; }
#share_top1 ul li.pinterest a:hover, #share_btm1 ul li.pinterest a:hover { background-color:#a42f35; }


/*--------------------------------
share_top2（Style2）
---------------------------------*/
#share_top2 { width:100%; margin:-15px 0 15px; }
#share_top2 h2 { color:#444; font-weight:400; }
#share_top2 ul.type2 { margin:0; padding:0; list-style:none; }
#share_top2 ul.type2 li { display:inline-block; padding:0; text-align:center; }
#share_top2 ul.type2 li a { text-decoration:none; display:inline-block; margin:0 5px 5px 0; font-size:12px; font-weight:400; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; line-height:25px; padding:1px 5px 0; }
#share_top2 ul.type2 li a i { position:relative; top:3px; color:#222; font-size:1.3em; text-shadow:1px 1px 0 rgba(255, 255, 255, .1); }
#share_top2 ul.type2 li a .ttl { margin:0 3px 0 2px; text-align:center; line-height:20px; }
#share_top2 ul.type2 li a .share-count { color:#444; font-size:9px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
#share_top2 ul.type2 li a:hover, #share_top2 ul.type2 li a:hover i, #share_top2 ul.type2 li a:hover .share-count  { color:#fff !important; }
#share_top2 ul.type2 li a:hover { border-color:rgba(255,255,255,.1); }
@media screen and (max-width:480px) {
	#share_top2 { width:100%; margin:-10px 0 15px; }
	#share_top2 ul.type2 { margin-bottom:15px; }
	#share_top2 ul.type2 li a { margin-right:2px; }
	#share_top2 ul.type2 li a i { left:1px; }
	#share_top2 ul.type2 li>a span.ttl { display:none; }
	#share_top2 ul.type2 li a .share-count { margin-left:3px; }
}

/*--------------------------------
share_btm2（Style4）
---------------------------------*/
#share_btm2 { margin:-10px 0 20px; text-align:center; }
#share_btm2 .sns {}
#share_btm2 ul.type4 { margin:0 0 2%; padding:0; list-style:none; }
#share_btm2 ul.type4 li { float:left; width:48%; margin:0 1% 1.5%; cursor:pointer; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }
.post #share_btm2 ul li { list-style:none; background-image:none; padding:0; }
#share_btm2 ul.type4 li a { position:relative; display:block; top:5px; font-size:13px; padding:10px 2px; text-decoration:none; border-radius:2px; color:#222 !important; text-align:center; background:#fafafa !important; border:1px solid rgba(0,0,0,.1); box-shadow:0 1px 0 rgba(0,0,0,.03); text-shadow:none; }
#share_btm2 ul.type4 li a i { position:relative; top:3px; font-size:140%; color:#222 !important; }
#share_btm2 ul.type4 li a .ttl { margin:0 3px 0 4px; display:inline-block; text-align:center; font-size:12px; }
#share_btm2 ul.type4 li a .share-count { position:absolute; bottom:-2px; right:8px; font-size:10px; padding:0; line-height:25px; margin:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; color:#222 !important; }
#share_btm2 ul.type4 li a:hover, #share_btm2 ul.type4 li a:hover i, #share_btm2 ul.type4 li a:hover .share-count  { color:#fff !important; }
@media only screen and (min-width:480px) {
	#share_btm2 { width:100%; margin:-10px 0 20px; }
	#share_btm2 ul.type4 { margin-right:-1%; list-style:none; overflow:hidden; }
	#share_btm2 ul.type4 li { width:24%; margin:0 1% 1% 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 -------------*/
/* X */
#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:#222 !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:-15px 0 15px -18px; }
#share5_btm { margin:30px 0 0 -18px; }
.sns_default_top { padding:0; overflow:hidden; list-style:none; }
.sns_default_top ul li { display:inline-block; margin:0 5px 3px 0; line-height:1!important; overflow:hidden; vertical-align:top; }
.sns_default_top ul li.twitter_button { width:77px; }
.sns_default_top ul li.fbshare_button:hover { text-decoration:none; }
.sns_default_top ul li.google_button { width:58px; }
.sns_default_top ul li.pocket_button { width:88px; }
@media only screen and (max-width: 480px) {
	.sns_default_top {}
	.sns_default_top ul li { margin-bottom:6px; }
	.sns_default_top ul li.twitter_button { margin-left:0; }
}

/* ----------------------- TCD Advanced Style ------------------------ */

/* ----------------------------------------------------------------------
 Column layout - カラムレイアウト
---------------------------------------------------------------------- */
.post_content .post_row { margin-left:-15px; margin-right:-15px; line-height:2; }
.post_content .post_col, .post_content .post_col-2, .post_content .post_col-3 { position:relative; min-height:1px; width:100%; padding-right:15px; padding-left:15px; float:left; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; margin-bottom:2em; }
@media screen and (min-width:768px){
	.post_content .post_col-2 { width:50%; /* 2カラム */ }
	.post_content .post_col-3 { width:33.33333%; }
}
@media screen and (min-width:1024px){
	.post_content .post_col-2 { width:50%; /* 2カラム */ }
	.post_content .post_col-3 { width:33.33333%; }
}
.clearfix:before, .clearfix:after, .post_content .post_row:before, .post_content .post_row:after {
    content: " ";
    display: table;
}
.clearfix:after, .post_content .post_row:after {
    clear: both;
}

/* ----------------------------------------------------------------------
 headline - 見出しのスタイル
---------------------------------------------------------------------- */
.post_content h3, .post_content h4, .post_content h5, .post_content h6 { line-height:1.6; }
/* h3 */
.post_content .style3a { margin:3em 0 1.5em; padding:1.1em .2em 1em; font-size:22px; font-weight:400; border-top:1px solid #222; border-bottom:1px solid #222; }
.post_content .style3b { margin:3em 0 1.5em; padding:1.1em .9em 1em; font-size:22px; font-weight:400; border-top:2px solid #222; border-bottom:1px solid #ddd; background:#fafafa; box-shadow:0px 1px 2px #f7f7f7; }
/* h4 */
.post_content .style4a { margin:2.5em 2px 1.2em; padding:.3em 0 .3em .8em; font-size:20px; font-weight:400; border-bottom:none; border-left:2px solid #222; }
.post_content .style4b { margin:2.5em 0 1.2em; padding:.9em 0 .8em; font-size:20px; font-weight:400; border-bottom:1px dotted #aaa; }
/* h5 */
.post_content .style5a { margin:2em 0 1em; padding:.5em .8em .3em 1em; font-weight:700; font-size:18px; background:#f5f5f5; box-shadow:0px 2px 0px 0px #f2f2f2; }
.post_content .style5b { margin:2em 0 1em; padding:.5em .8em .4em 1em; font-weight:400; font-size:18px; color:#fff; background:#222; border-radius:4px; box-shadow:0px 2px 0px 0px #f2f2f2; }
/* h6 */
.post_content .style6 { position:relative; margin:2em 0 1em; padding:.5em .8em .8em 1.3em; color:#222; font-weight:bold; font-size:16px; }
.post_content .style6:before { position:absolute; width:12px; height:12px; top:.5em; left:.2em; background:#222; content:""; }
.post_content .news_headline1{ position:relative; margin:80px 0 25px 0; padding:.5em; border-left:8px solid #444; line-height:1.2; font-size:1.2em; }
.post_content .news_headline1:after { content:""; position:absolute; bottom:0px; left:0; height:0; width:100%; border-bottom:1px dotted #ddd; }
.post_content .news_headline2{ margin:40px 0 20px 0; padding:0 .5em; border-left:6px solid #545454; line-height:26px; font-size:1.1em;}
.post_content .balloon { clear:both; display:block; position:relative; margin:50px 0 22px; padding:.5em 18px .5em; width:auto; min-width:115px; color:#fff; text-align:left; font-size:20px; font-weight:400; background:#222; z-index:0; border-bottom:0; }
.post_content .balloon:after { content:""; position:absolute; bottom:-10px; left:30px; margin-left:-10px; display:block; width:0px; height:0px; border-style:solid; border-width:10px 10px 0 10px; border-color:#222 transparent transparent transparent; }

/* ----------------------------------------------------------------------
 flame - 囲み枠
---------------------------------------------------------------------- */
.well { min-height:20px; padding:19px; margin-bottom:20px; background-color:#f5f5f5; border:1px solid #e3e3e3; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); line-height: 2;}
.well2 { margin:1em 0 30px; padding:1em 1.5em; line-height:2; border:1px solid #cdcdcd; background:#fcfcfc; box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.well3 { margin:2em 0 2.5em; padding:1em 1.5em;line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc;  box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.wl_red { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }
.wl_yellow { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.wl_blue { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }
.wl_green { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }

/* ----------------------------------------------------------------------
 button - CSSボタンのスタイル
---------------------------------------------------------------------- */
.q_button { min-width:200px; max-width:90%; background-color:#535353; display:inline-block; vertical-align:middle; padding:.6em 1.3em .5em; font-weight:400; font-size:100%; color:#fff!important; margin:0; text-decoration:none; text-align:center; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; transition:all 0.3s ease-in-out 0s; box-shadow:0 1px 3px rgba(0,0,0,.15); }
.q_button:hover, .q_button:focus { text-decoration:none; color:#fff; background-color:#7d7d7d; box-shadow:0 2px 2px rgba(0,0,0,.15) inset; }
.q_button_wrap{ text-align:center; margin: 2em auto; }
/* Button option */
.rounded { border-radius:6px; }
.pill { border-radius:50px; }
.sz_full { min-width:100px; max-width:100%; display:block; font-size:110%; padding:1em 1.5em .9em; }
.sz_l { min-width:350px; max-width:90%; font-size:110%; padding:.8em 1.5em .7em; }
@media screen and (max-width: 479px) {
  .sz_l { min-width:320px; max-width:95%; }
}
.sz_s { min-width:100px; max-width:90%; font-size:85%; padding:.4em 1em .3em; }
.bt_red{ background:#c01f0e; color:#fff; }
.bt_red:hover, .bt_red:focus { background-color:#d33929; color:#fff; }
.bt_yellow{ background:#f1c40f; color:#fff; }
.bt_yellow:hover, .bt_yellow:focus { background-color:#f9d441; color:#fff; }
.bt_blue{ background:#2980b9; color:#fff; }
.bt_blue:hover, .bt_blue:focus { background-color:#3a91c9; color:#fff; }
.bt_green{ background:#27ae60; color:#fff; }
.bt_green:hover, .bt_green:focus { background-color:#39c574; color:#fff; }

/* ----------------------------------------------------------------------
Youtube responsive - Youtube動画のレスポンシブ表示
---------------------------------------------------------------------- */
.ytube { position:relative; height:0; margin-top:20px; margin-bottom:20px; padding-bottom:56.25%; padding-top:30px; overflow:hidden; }
.ytube iframe { position:absolute; top:0; right:0; width:100% !important; height:100% !important; }

/* ----------------------------------------------------------------------
Table responsive - テーブルのレスポンシブ表示
---------------------------------------------------------------------- */
@media only screen and (max-width:480px) {
   tbody tr { display:block; margin-bottom:1em; }
   tbody th, tbody td{ display: list-item; list-style-type:none; border: none; }
}

/* ----------------------------------------------------------------------
 Cardlink style - カードリンクのスタイル
---------------------------------------------------------------------- */
.cardlink { padding:12px 12px 12px 12px; margin:10px 0; border:1px solid #ddd; word-wrap:break-word; max-width:100%; background:#fafafa; }
.cardlink_thumbnail { float:left; margin-right:20px; }
.cardlink_content { line-height:160%; margin-top:8px; }
.cardlink .timestamp { margin:0; padding:0; font-size:14px; font-family:Arial,sans-serif; font-weight:bold; line-height:220%; }
.cardlink_title { font-size:14px; margin-bottom:5px; }
.cardlink_title a { font-weight:bold; color:#000; text-decoration:none; }
.cardlink_title a:hover { text-decoration:underline; }
.cardlink_excerpt { color:#333; font-size:12px; overflow:hidden; }
.cardlink_footer { clear:both; }
.clear { clear:both; }
@media screen and (max-width: 767px) {
  .cardlink_thumbnail { float:none; }
}
@media screen and (max-width: 479px) {
  .cardlink_excerpt { float:none; }
}

/* ----------------------------------------------------------------------
 Contactform - お問い合わせフォーム
---------------------------------------------------------------------- */
.wpcf7 { width:100%; border:1px solid #ddd; background:#fafafa; padding:0; margin:0 0 2.5em !important; font-size:14px;}
.wpcf7 form{ margin:4.5em 7.5em 0;}
.wpcf7 p { margin-bottom:1em; font-size:16px; }
.wpcf7 input, .wpcf7 textarea { width:auto; -moz-box-sizing: border-box; box-sizing: border-box; width:100%; border:1px solid #ccc; line-height:1.2; padding:8px;  }
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { width:auto; max-width:97%; border:1px solid #ccc; padding:8px; }
.wpcf7 select, .wpcf7 .wpcf7-list-item-label { line-height:1.2; font-size:14px; }
.wpcf7-list-item { display:block; }
.wpcf7 textarea { height:300px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline:none; border:1px solid #bbb; -webkit-box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); box-shadow:inner 0 0 5px rgba(0, 0, 0, 0.5); }
.wpcf7 input.wpcf7-submit, .wpcf7 .wpcf7-previous { position:relative; display:block; width:225px; height:48px; margin:30px auto 0; background-color:#333333; cursor:pointer; border:none !important; color:#fff; text-align:center; text-decoration:none; font-size:14px; line-height:1.5; outline:none; -webkit-transition: all .3s; transition: all .3s; }
.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-submit::before, .wpcf7 input.wpcf7-submit::after { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.wpcf7 input.wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover { background-color:#666666; }
.wpcf7 .wpcf7-not-valid { background:pink; }
.wpcf7 .wpcf7-response-output { margin:10px 0 0; padding:8px 35px 8px 14px; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#B94A48; background-color:#F2DEDE; border:1px solid #EED3D7; }
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1; }
.wpcf7 .wpcf7-previous + br { display: none; }
.wpcf7 form .wpcf7-response-output{ margin: 2em 0.5em 2em!important; padding:0!important; border: none!important; text-align:center; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output{ color:#dc3232; font-size: 1em; }

/* ----------------------------------------------------------------------
 font-size - フォントサイズ
---------------------------------------------------------------------- */
.text70{font-size:70%}      /* フォントサイズ70% */
.text80{font-size:80%}
.text90{font-size:90%}
.text100{font-size:100%}
.text110{font-size:110%}
.text120{font-size:120%}
.text130{font-size:130%}
.text140{font-size:140%}
.text150{font-size:150%}
.text160{font-size:160%}
.text170{font-size:170%}
.text180{font-size:180%}
.text190{font-size:190%}
.text200{font-size:200%}
.text210{font-size:210%}
.text220{font-size:220%}
.b{font-weight:700}     /* 太字 */
.u{text-decoration:underline}     /* 下線 */
.del{text-decoration:line-throug} /* 打ち消し線 */

/* ----------------------------------------------------------------------
 font-color - フォントカラー
---------------------------------------------------------------------- */
.red{color:red}     /* 赤色 */
.blue{color:#2ca9e1}    /* 青色 */
.green{color:#82ae46}   /* 緑色 */
.orange{color:#ff7d00}    /* 橙色 */
.yellow{color:#fff000}    /* 黄色 */
.pink{color:#ff0084}    /* ピンク */
.gray{color:#999999}    /* グレー */

/* ----------------------------------------------------------------------
 background-color - 背景色
---------------------------------------------------------------------- */
.bg-yellow{padding:2px;background-color:#ff0} /* 黄色の文字背景 */
.bg-blue{padding:2px;background-color:#4ab0f5}  /* 青色の文字背景 */
.bg-red{padding:2px;background-color:red} /* 赤色の文字背景 */

/* ----------------------------------------------------------------------
 text-align - 配置
---------------------------------------------------------------------- */
.align1{text-align:center !important} /* 中央寄せ */
.align2{text-align:right !important}  /* 右寄せ */
.align3{text-align:left !important} /* 左寄せ */

/* ----------------------------------------------------------------------
 float - 回り込み
---------------------------------------------------------------------- */
.r-flo{float:right;margin:10px} /* 右に回り込み */
.l-flo{float:left;margin:10px}  /* 左に回り込み */
.f-clear{clear:both}      /* 回り込みの解除 */

/* ----------------------------------------------------------------------
 hover - 画像リンクマウスオーバー時の不透明度
---------------------------------------------------------------------- */
a img.fade { background:none !important; outline:none; -webkit-transition:all .3s; transition:all .3s; }
a:hover img.fade { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; background:none !important; }
/* ----------------------------------------------------------------------
 text-style - テキストスタイル
---------------------------------------------------------------------- */
.att {padding-left:1em;text-indent:-1em;} /* 注意書き等で二行目以降を字下げ */
.att_box { margin:2em 0 2.5em; padding:1em 1.2em; line-height:2.0; border:1px dotted #cccccc; background:#fcfcfc; box-shadow:0px 4px 0px 0px #f7f7f7; } /* テキストボックス */

/* ----------------------------------------------------------------------
 margin - 要素の外側の余白
---------------------------------------------------------------------- */
.m0{margin:0 !important}    /* margin 0px を指定するクラス */
.mt0{margin-top:0 !important}   /* margin-top0px を指定するクラス */
.mr0{margin-right:0 !important}   /* margin-right0px を指定するクラス*/
.mb0{margin-bottom:0 !important}  /* margin-bottom0px を指定するクラス*/
.ml0{margin-left:0 !important}    /* margin-left0px を指定するクラス*/

.m5{margin:5px !important}
.mt5{margin-top:5px !important}
.mr5{margin-right:5px !important}
.mb5{margin-bottom:5px !important}
.ml5{margin-left:5px !important}

.m10{margin:10px !important}
.mt10{margin-top:10px !important}
.mr10{margin-right:10px !important}
.mb10{margin-bottom:10px !important}
.ml10{margin-left:10px !important}

.m15{margin:15px !important}
.mt15{margin-top:15px !important}
.mr15{margin-right:15px !important}
.mb15{margin-bottom:15px !important}
.ml15{margin-left:15px !important}

.m20{margin:20px !important}
.mt20{margin-top:20px !important}
.mr20{margin-right:20px !important}
.mb20{margin-bottom:20px !important}
.ml20{margin-left:20px !important}

.m25{margin:25px !important}
.mt25{margin-top:25px !important}
.mr25{margin-right:25px !important}
.mb25{margin-bottom:25px !important}
.ml25{margin-left:25px !important}

.m30{margin:30px !important}
.mt30{margin-top:30px !important}
.mr30{margin-right:30px !important}
.mb30{margin-bottom:30px !important}
.ml30{margin-left:30px !important}

.m35{margin:35px !important}
.mt35{margin-top:35px !important}
.mr35{margin-right:35px !important}
.mb35{margin-bottom:35px !important}
.ml35{margin-left:35px !important}

.m40{margin:40px !important}
.mt40{margin-top:40px !important}
.mr40{margin-right:40px !important}
.mb40{margin-bottom:40px !important}
.ml40{margin-left:40px !important}

.m45{margin:45px !important}
.mt45{margin-top:45px !important}
.mr45{margin-right:45px !important}
.mb45{margin-bottom:45px !important}
.ml45{margin-left:45px !important}

.m50{margin:50px !important}
.mt50{margin-top:50px !important}
.mr50{margin-right:50px !important}
.mb50{margin-bottom:50px !important}
.ml50{margin-left:50px !important}

.m55{margin:55px !important}
.mt55{margin-top:55px !important}
.mr55{margin-right:55px !important}
.mb55{margin-bottom:55px !important}

.ml55{margin-left:55px !important}
.m60{margin:60px !important}
.mt60{margin-top:60px !important}
.mr60{margin-right:60px !important}
.mb60{margin-bottom:60px !important}
.ml60{margin-left:60px !important}

.m65{margin:65px !important}
.mt65{margin-top:65px !important}
.mr65{margin-right:65px !important}
.mb65{margin-bottom:65px !important}
.ml65{margin-left:65px !important}

.m70{margin:70px !important}
.mt70{margin-top:70px !important}
.mr70{margin-right:70px !important}
.mb70{margin-bottom:70px !important}
.ml70{margin-left:70px !important}

.m75{margin:75px !important}
.mt75{margin-top:75px !important}
.mr75{margin-right:75px !important}
.mb75{margin-bottom:75px !important}
.ml75{margin-left:75px !important}

.m80{margin:80px !important}
.mt80{margin-top:80px !important}
.mr80{margin-right:80px !important}
.mb80{margin-bottom:80px !important}
.ml80{margin-left:80px !important}

/* ----------------------------------------------------------------------
 padding - 要素の内側の余白
---------------------------------------------------------------------- */
.p0{padding:0 !important}   /* padding-0px を指定するクラス */
.pt0{padding-top:0 !important}    /* padding-top0px を指定するクラス */
.pr0{padding-right:0 !important}  /* padding-right0px を指定するクラス */
.pb0{padding-bottom:0 !important} /* padding-bottom0px を指定するクラス */
.pl0{padding-left:0 !important}   /* padding-left0px を指定するクラス */

.p5{padding:5px !important}
.pt5{padding-top:5px !important}
.pr5{padding-right:5px !important}
.pb5{padding-bottom:5px !important}
.pl5{padding-left:5px !important}

.p10{padding:10px !important}
.pt10{padding-top:10px !important}
.pr10{padding-right:10px !important}
.pb10{padding-bottom:10px !important}
.pl10{padding-left:10px !important}

.p15{padding:15px !important}
.pt15{padding-top:15px !important}
.pr15{padding-right:15px !important}
.pb15{padding-bottom:15px !important}
.pl15{padding-left:15px !important}

.p20{padding:20px !important}
.pt20{padding-top:20px !important}
.pr20{padding-right:20px !important}
.pb20{padding-bottom:20px !important}
.pl20{padding-left:20px !important}

.p25{padding:25px !important}
.pt25{padding-top:25px !important}
.pr25{padding-right:25px !important}
.pb25{padding-bottom:25px !important}
.pl25{padding-left:25px !important}

.p30{padding:30px !important}
.pt30{padding-top:30px !important}
.pr30{padding-right:30px !important}
.pb30{padding-bottom:30px !important}
.pl30{padding-left:30px !important}

.p35{padding:35px !important}
.pt35{padding-top:35px !important}
.pr35{padding-right:35px !important}
.pb35{padding-bottom:35px !important}
.pl35{padding-left:35px !important}

.p40{padding:40px !important}
.pt40{padding-top:40px !important}
.pr40{padding-right:40px !important}
.pb40{padding-bottom:40px !important}
.pl40{padding-left:40px !important}

.p45{padding:45px !important}
.pt45{padding-top:45px !important}
.pr45{padding-right:45px !important}
.pb45{padding-bottom:45px !important}
.pl45{padding-left:45px !important}

.p50{padding:50px !important}
.pt50{padding-top:50px !important}
.pr50{padding-right:50px !important}
.pb50{padding-bottom:50px !important}
.pl50{padding-left:50px !important}

.p55{padding:55px !important}
.pt55{padding-top:55px !important}
.pr55{padding-right:55px !important}
.pb55{padding-bottom:55px !important}
.pl55{padding-left:55px !important}

.p60{padding:60px !important}
.pt60{padding-top:60px !important}
.pr60{padding-right:60px !important}
.pb60{padding-bottom:60px !important}
.pl60{padding-left:60px !important}

.p65{padding:65px !important}
.pt65{padding-top:65px !important}
.pr65{padding-right:65px !important}
.pb65{padding-bottom:65px !important}
.pl65{padding-left:65px !important}

.p70{padding:70px !important}
.pt70{padding-top:70px !important}
.pr70{padding-right:70px !important}
.pb70{padding-bottom:70px !important}
.pl70{padding-left:70px !important}

.p75{padding:75px !important}
.pt75{padding-top:75px !important}
.pr75{padding-right:75px !important}
.pb75{padding-bottom:75px !important}
.pl75{padding-left:75px !important}

.p80{padding:80px !important}
.pt80{padding-top:80px !important}
.pr80{padding-right:80px !important}
.pb80{padding-bottom:80px !important}
.pl80{padding-left:80px !important}

/*--------------------------------
回収エリア
---------------------------------*/
#area_wrap {
    width: 1200px;
    margin: 100px auto;
}

#area_wrap .headline {
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 220%;
    letter-spacing: 1px;
    margin: 0 0 30px 0;
    color: #000;
}

#area_wrap .headline {
    float: left;
}

#area_wrap .headline {
    text-align: left;
    font-weight: 500;
}

#area_wrap .all_btn a{
	float: right;
    margin-top: 10px;
    padding: 15px 30px;
    color: #07043f;
    font-size: 110%;
    text-align: center;
    background: #fff;
    border-radius: 30px;
    border: 2px #07043f solid;
}

#area {
	clear: both;
    display: flex;
    justify-content: space-between;
}

#area .area {
    width: 34%;
    line-height: 200%;
}

/*--------------------------------
回収エリア(スマホ版)
---------------------------------*/
.mobile_device #area_wrap {
    width: 100%;
    margin: 0 0 10%;
}

.mobile_device #area_wrap .headline {
	    float: none;
    text-align: center;
}

.mobile_device #area {
    width: 100%;
    display: block;
}

.mobile_device #area .area {
	    width: 92%;
    padding: 0 4%;
}

.mobile_device #area .inst {
    display: block;
    margin: 0 auto;
    padding-top: 4%;
}

.mobile_device #area_wrap .all_btn a {
	float: none;
    display: block;
    width: 50%;
    margin: 4% auto;
}

/*--------------------------------
会社案内
---------------------------------*/
#profile_wrap {
    width: 1200px;
    margin: 100px auto;
}

#profile_wrap .headline {
    font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 220%;
    letter-spacing: 1px;
    margin: 0 0 30px 0;
    color: #000;
}

#profile_wrap .headline {
    float: left;
}

#profile_wrap .headline {
    text-align: left;
    font-weight: 500;
}

#profile_wrap .all_btn a{
	float: right;
    margin-top: 10px;
    padding: 15px 30px;
    color: #07043f;
    font-size: 110%;
    text-align: center;
    background: #fff;
    border-radius: 30px;
    border: 2px #07043f solid;
}

#profile {
	clear: both;
    display: flex;
    justify-content: space-between;
}

#profile .profile {
    width: 34%;
    line-height: 200%;
}

/*--------------------------------
会社案内(スマホ版)
---------------------------------*/
.mobile_device #profile_wrap {
    width: 100%;
    margin: 0 0 10%;
}

.mobile_device #profile_wrap .headline {
	    float: none;
    text-align: center;
}

.mobile_device #profile {
    width: 100%;
    display: block;
}

.mobile_device #profile .profile {
	    width: 92%;
    padding: 0 4%;
}

.mobile_device #profile .inst {
    display: block;
    margin: 0 auto;
    padding-top: 4%;
}

.mobile_device #profile_wrap .all_btn a {
	float: none;
    display: block;
    width: 50%;
    margin: 4% auto;
}
/* ----------------------------------------------------------------------
 汎用スタイルの追加
 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;
}

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

.c-modal__button, .p-faq-list__question::after {
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg)
}
.c-modal__button span, .p-faq-list__answer, .u-none, .u-sp-none, .u-tab-none {
  display: none
}
.p-faq-list__question {
  font-size: 1.8rem;
  line-height: 1.6;
  position: relative;
  margin: 0 0 1.5em;
  padding: 0 2em 0 2.5em;
  cursor: pointer
}
.p-faq-list__question::before {
  font-size: 3rem;
  font-weight: 600;
  position: absolute;
  top: -10px;
  left: 0;
  content: 'Q';
  color: #965931
}
.p-faq-list__question::after {
  position: absolute;
  top: .4em;
  right: 5px;
  width: 10px;
  height: 10px;
  content: '';
  -webkit-transition: .2s linear;
  transition: .2s linear;
  transform: rotate(45deg);
  border-right: 2px solid #965931;
  border-bottom: 2px solid #965931
}
.p-faq-list__question.open::after {
  -webkit-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  transform: rotate(225deg)
}
.p-faq-list__answer {
  font-size: 1.6rem;
  position: relative;
  margin: 2rem 0 4rem;
  padding: 0 0 3rem 6em;
  border-bottom: dotted 1px #999
}
.p-faq-list__answer::before {
  line-height: 1.8;
  position: absolute;
  top: 0;
  left: 3.2em;
  width: 30px;
  height: 30px;
  content: 'A';
  text-align: center;
  color: #FFF;
  border-radius: 6px;
  background: #1D1E2C
}
.p-faq-list__question {
    font-size: 2rem
  }
  .p-faq-list__question::before {
    width: 40px;
    height: 40px
  }
  .p-faq-list__answer {
    padding: 0 0 3rem 5.8em
  }
  .p-faq-list__answer::before {
    left: 3.4em
  }