@charset "utf-8";




/* --------------------------------------------------------------------------------
 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.0#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;
}


/* アイコンフォント */
.icon-arrow-right:before {
  content: "\e910";
}

.icon-file-text:before {
  content: "\f15c";
}

.icon-share-alt:before {
  content: "\f1e0";
}

.icon-phone:before {
  content: "\f095";
}

.icon-envelope:before {
  content: "\f0e0";
}

.icon-tag:before {
  content: "\f02b";
}

.icon-pencil:before {
  content: "\f040";
}

.icon-close:before {
  content: "\e91a";
}




body { min-width:100%; }

/* レイアウト */
#header_top { height:60px; min-width:100%; width:100%; background:#fff; position:relative; top:0px; z-index:9; border-bottom: solid 1px #ddd; }
#header_top_inner { height:auto; width:auto; margin:0 auto; position:relative; }
#header_bottom { width:auto; margin:0 20px 20px; padding-top:20px; }
#contents { width:auto; margin:0; padding:0; }
#main_col { width:auto; float:none; position:relative; margin: 0 20px; }
#side_col { width:auto; float:none; border: none; border-top:1px solid #ddd; background:#fff; padding:20px; }
.page-template-page-noside #main_col { width:auto; float:none; }

.single #main_col, .page #main_col { margin: 0; }

/* 広告 */
.banner_set img { max-width:100%; height:auto; display:block; margin:0 auto 15px; }
.banner_set_type2 .banner1 { width:auto; }
.banner_set_type2 .banner1 img { margin:0 auto 15px; }
.banner_set_type3 .banner1 { width:auto; float:none; }
.banner_set_type3 .banner2 { width:auto; float:none; }
.banner_set_type4 .banner1 { width:auto; float:none; }
.banner_set_type4 .banner2 { width:auto; float:none; margin:0; }
.banner_set_type4 .banner3 { width:auto; float:none; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
#main_contents { border: none; border-top: 1px solid #ddd; }

.post_title { background:#eee; width:auto; min-height:77px; padding:10px 20px; font-size: 16px; line-height: 160%; margin: 0 0 20px; }
.page .post_title { min-height:auto; padding:15px 20px; }

/* カテゴリー情報 */
.post_meta { padding:0 20px; }
.post_meta li a{ text-decoration: none; }

/* SNSボタン */
.bookmark { padding:0 20px; }

/* アイキャッチ画像 */
.post_image { padding:0 20px; }

/* 記事エリア */
.post_content { padding:0 20px; }

/* 次の記事、前の記事リンク */
#previous_post { float:none; width:auto; margin-right:0; }
#next_post { float:none; width:auto; }
#previous_post a { padding:20px 20px 20px 40px; display:block; background:url(img/common/arrow_left.png) no-repeat 15px 22px; border-right:none; }
#next_post a { padding:20px 40px 20px 20px; display:block; background:url(img/common/arrow_right.png) no-repeat right 15px top 22px; border-left:none; }

/* 見出し */
.single_headline { padding:20px 15px; border: none; font-size: 16px; }

/* 関連記事 */
#related_post { margin:0 0 10px 0; }
#related_post ol { margin:0 15px; }
#related_post li { float:none; width:auto; margin:0 0 15px 0; }

#related_post .image img{ width: 100px; height: 100px; padding: 0; border: none; }

/* おすすめ記事 */
#single_recommend_post ol { margin:0 15px 30px; }

/* 広告 */
.single_banner_top { padding:15px 20px; border: none; }
.single_banner_bottom { padding:15px 20px; border: none; }




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
#comment_area, #trackback_area { margin:15px 20px 20px; }

#comment_header ul { position:relative; right:auto; top:auto; margin:0 20px; }
#comment_header ul li { border:1px solid #ccc; width:100%; float:none; text-align:center; margin:0 0 -1px 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;
 }
#comment_header ul li#comment_switch, #comment_header ul li#comment_closed { border:none; border:1px solid #ccc; padding:0; margin:0; position:relative; }
#comment_header ul li a, #comment_header ul li p { padding:15px 0; }

#comment_header ul li a:hover, #comment_header ul li.comment_switch_active a, #comment_header ul li.comment_switch_active a:hover { color:#333; background:#eee; }

.comment-meta-left { width:50%; font-size:11px; }

.comment { padding:10px 10px 0; }

/* ---------- form area ------------------------------------------------------------------------------------------------------------------------- */
.comment_form_wrapper { border:1px solid #ccc; margin:0 15px 30px; padding:15px; background:#fff; }






/* ----------------------------------------------------------------------
 記事一覧
---------------------------------------------------------------------- */

/* 記事一覧 */
#post_list .post_item { margin: 0 0 10px 0; padding: 0; border-color: #ddd; }
#post_list .title_area { background:none; padding:0; }
#post_list .image img { /*float:none; width:150px; height:150px; margin:15px auto 0;*/ }
#post_list .title { float:none; width:auto; min-height:77px; padding:10px 10px 10px 20px; font-size:16px; line-height:160%; margin:0; background:#eee; }
#post_list .no_thumbnail .title { float:none; width:auto; }
#post_list .title a { text-decoration:none; display:block; }
#post_list .title a:hover { text-decoration:underline; }
#post_list .desc { float: none; padding: 12px; line-height:200%; font-size: 12px; }
#post_list .image + .desc { float: right; width: calc(100% - 137px); padding: 12px 12px 15px 0; line-height:200%; }
.design_date .year{ width: 66px; }

.post_item .image { float: left; margin: 12px 15px 12px 10px; }
#post_list .post_item .image img { float: none; width: 100px; height: 100px; margin: 0 auto; border: none; padding: 0;  }

/* 日付部分*/
.design_date { position:relative; right:0px; top:0px; display:block; float:left; margin:10px 10px 10px 20px; width: 66px; height: 77px; }
.post_item .design_date { margin:10px 15px; }
.design_date .date{ font-size: 20px; font-weight: bold; width: 66px; padding: 13px 0 5px; }
.design_date .month{ font-size: 10px; margin: 0 0 5px 0; }

/* ロードボタン */
#load_post { text-align:center; padding:30px 0; }
#load_post a { display:inline-block; width:180px; height:40px; line-height:40px; font-size:12px; color:#fff; text-align:center; text-decoration:none; overflow:hidden; background: #333; position: relative; }
#load_post a:before{
  font-family:'design_plus'; color:#fff; font-size:14px; display:inline; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content: '\e910'; top:2px; right:10px; 
}
#loading.hide { display:none; }
#infscr-loading { text-align:center; height:27px; padding:27px 0 0 0; line-height:160%; }


/* その他 */
.archive_headline { background:#333; color:#fff; padding:0 20px; font-size:14px; height: 40px; line-height: 40px; margin-bottom: 10px; }
#post_list .post_item.no_post { padding:30px 40px; }


/* 広告 */
.pl_banner_top, .pl_banner_middle, .pl_banner_bottom { background:none; padding:20px 0; border-right:none; border-left:none; }


/* 次の記事、前の記事リンク */
#previous_next_post{ display: flex; flex-wrap: wrap; margin: 0 20px 40px; border: none; }
#previous_next_post p{ display: block; width: calc(50% - 2px); border: solid 1px #ddd; text-align: center; float: none; }
#previous_next_post p:empty{ border: none; }
#previous_next_post p:last-child{ border-left: none; }
#previous_next_post p a{ display: block; height: 50px; line-height: 50px; background: none; width: 100%; padding: 0; position: relative; }
#previous_next_post p a:before{
  font-family:'design_plus'; color:#ccc; font-size:14px; display:inline; position:absolute;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#previous_next_post #previous_post a:before { content:'\e90f'; top:0px; left:10px; }
#previous_next_post #next_post a:before { content:'\e910'; top:0px; right:10px; }





/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */

/* カテゴリーボタン */
#header_button { display:none; }

/* カテゴリーリスト */
#header_category_list { display:none !important; }

/* おすすめ記事リスト */
#header_recommend_list { display:none !important; }

/* タグリスト */
#header_tag_list { display:none !important; }

/* その他の記事リスト */
#header_misc_list { display:none !important; }

/* ソーシャルボタン */
#header_social_link { display:none; }

/* ヘッダーメニュー */
#header_menu { display:none; }

/* グローバルメニュー */
/*a.menu_button {
   position:absolute; right:15px; top:15px; margin:0;
   display:inline-block; font-size:11px; color:#333; padding:0 10px; line-height:30px; text-decoration:none;
   -moz-border-radius:4px; -khtml-border-radius:4px; -webkit-border-radius:4px; border-radius:4px;
   border:1px solid #ccc;
}
a.menu_button:hover { background:#222; border:1px solid #222; color:#fff; }
a.active { color:#000; background:#aaa; box-shadow:1px 1px 2px rgba(0,0,0,0.2) inset; }

#global_menu { display:none; clear:both; width:100%; margin:0; top:58px; position:relative; box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -moz-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); }
#global_menu ul { margin:0; }
#global_menu a { display:block; border:1px solid #666; margin:0 0 -1px 0; padding:2px 10px 2px 32px; line-height:40px; text-decoration:none; color:#fff; background:#333 url(img/common/arrow4.png) no-repeat 20px; }
#global_menu a:hover { color:#fff; }
#global_menu ul ul a { padding-left:46px; background:#333 url(img/common/arrow4.png) no-repeat 34px; }
#global_menu ul ul ul a { padding-left:60px; background:#333 url(img/common/arrow4.png) no-repeat 48px; }*/


/* ロゴ */
#logo_text { position:absolute; top:-38px; left:0px; z-index:9999; }
#logo_text h1 { font-size:18px; font-weight:normal; }
#logo_text a, #logo_image h1 a { color:#333; text-decoration:none; display:block; }
#logo_text a:hover, #logo_image h1 a:hover { text-decoration:underline; }
#logo_image { position:absolute; top:-39px; z-index:9; }
#logo_image h1 { top:0px !important; left:0px !important; margin:0; padding:0; line-height:100%; font-size:18px; }
#logo_image h1 img { display:none; }
#logo_image h1 a:before { content:attr(data-label); }


/* header */
#logo_image_mobile { display: table-cell; text-align: left; vertical-align: middle; float:none; margin:0; font-size:14px; font-weight:normal; padding-left: 15px; height: 60px; }
#logo_image_mobile a { display:inline-block; height:20px; margin:0; }
#logo_image_mobile img { width:auto; max-height: 100%; }

#logo_text { margin:19px 0 0 15px; z-index:10; float:left; text-align:left; width:-webkit-calc(100% - 90px); width:-moz-calc(100% - 90px); width:calc(100% - 90px); overflow:hidden; }
#logo_text h1 { font-size:18px; font-weight:normal; }
#logo_text a, #logo_image h1 a { color:#fff; text-decoration:none; display:block; -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; transition-property:none; }
#logo_text a:hover, #logo_image h1 a:hover { text-decoration:underline; }

/* menu button */
a.menu_button {
   position:absolute; right:0px; top:0px; z-index:9;
   display:inline-block; font-size:11px; color:#333; width:60px; height:60px; line-height:56px; text-decoration:none;
}
a.menu_button span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
a.menu_button:before {
  font-family:'design_plus'; color:#888; display:block; position:absolute; top:18px; left:18px;
  font-size:18px; width:24px; height:24px; line-height:24px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
a.menu_button:before { content:'\f0c9'; text-align: center; }
a.menu_button:hover, a.menu_button.active { background:#333; }
a.menu_button:hover:before, a.menu_button.active:before { color:#fff; }

/* グローバルメニュー */
#global_menu { display:none; clear:both; width:100%; margin:0; top:60px; left:0; position:absolute; z-index:9; box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -moz-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1); }
#global_menu ul { margin:0; }
#global_menu ul ul { display:none; }
#global_menu a {
  position:relative; display:block;  margin:0; padding:0px 15px; height:50px; line-height:50px; overflow:hidden; text-decoration:none;
  color:#fff; background:#333; font-size:13px;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#global_menu a:hover { color:#fff; }
#global_menu ul ul a { padding-left:28px; background:#222; }
#global_menu ul ul ul a { padding-left:42px; background:#111; }
#global_menu ul ul ul ul a { padding-left:55px; background:#000; }
#global_menu li.menu-item-has-children { position:relative; }
#global_menu .child_menu_button { display:block; position:absolute; text-align:center; width:60px; height:49px; right:0px; top:1px; z-index:9; cursor:pointer;  }
#global_menu .child_menu_button .icon:before {
  content:'+'; font-size:13px; color:#aaa; text-align:center;
  display:block; width:20px; height:20px; line-height:20px; border:1px solid #555; border-radius:100%;
  position:absolute; left:20px; top:15px;
}
#global_menu .child_menu_button.active .icon:before, #global_menu .child_menu_button:hover .icon:before { color:#fff; border-color:#fff; }
#global_menu li.menu-item-has-children.open > .child_menu_button .icon:before { content:'-'; }
#global_menu li.menu-item-has-children.open > ul { display:block; }


/* バナー */
#header_banner1 { float:none; margin:0 0 20px 0; }
#header_banner1 img { display:block; max-width:100%; height:auto; }
#header_banner2 { margin:0 0 20px 0; text-align: center; }
#header_banner2 img { display:block; max-width:100%; height:auto; margin: 0 auto; }

/* サイトの説明文 */
#site_description { /*display:none;*/ font-size: 14px; }

/* パンくずリンク */
#bread_crumb { clear:both; margin:0 0 20px 0; }
#bread_crumb li { font-size:10px; margin-bottom:10px; }
#bread_crumb li a{ text-decoration: none; }
#bread_crumb li.home a:before { top: -1px; }



/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

/* フッター上部 */
#footer_top { width:100%; min-width:100%; background:#fff; }
#footer_top_inner { width:auto; margin:0 20px; padding:20px 0 0; }

/* ロゴ */
#footer_logo_area { width:auto; float:none; margin:0; }
#footer_logo_text h3 { font-size:20px; margin:0 0 20px 0; }
#footer_logo_text a { text-decoration:none; }
#footer_logo_image h3 { margin:0 0 30px 0; text-align: center; }
#footer_logo_image h3 a { display: inline-block; }
#footer_logo_image h3 img { display:block; max-width:100%; height:auto; }

/* メニュー */
#footer_menu ul { border:none; margin:0; display: flex; flex-wrap: wrap; }
#footer_menu li { float:none; width:50%; margin:0; font-size:12px; border-bottom:none; line-height: 220%; }
#footer_menu li a { background:none; padding:0; display:block; text-decoration:none; }
#footer_menu li a:hover { text-decoration:underline; }

/* ウィジェット */
#footer_widget1 { float:none; width:auto; font-size:12px; margin:0; }
#footer_widget2 { float:none; width:auto; font-size:12px; }
.footer_widget { margin:0 0 20px 0; }

/* フッター下部 */
#footer_bottom { width:100%; min-width:100%; background:#fff; text-align: center; }
#footer_bottom_inner { width:auto; margin:0 15px; padding:20px 0; }
#footer_bottom img { max-width:100%; height:auto; display:block; margin:0 auto; }
#footer_banner1 { float:none; margin:0 0 15px 0; }
#footer_banner2 { float:none; }

/* コピーライト */
#copyright_area { width:100%; min-width:100%; background:#fff; color:#000; padding-top: 20px; }
#copyright_area_inner { width:auto; margin:0 auto; padding:0; font-size:12px; }
#copyright_area a { color:#fff; text-decoration:none; }
#copyright_area a:hover { text-decoration:underline; }
#copyright { float:none; display: block; height: 50px; line-height: 50px; text-align: center; background: #000; color: #fff; }

/* 最下部のメニュー */
#footer_menu2 { float:none; margin:0 0 30px 0; }
#footer_menu2 ul{ display: block; text-align: center; margin: 0 auto; }
#footer_menu2 li { float:none; margin-right:10px; padding-right:10px; border:none; display: inline-block; border-right: solid 1px #000; line-height: 100%; }
#footer_menu2 li:last-child { border:none; }
#footer_menu2 a { display:block; padding:0; background:none; color: #000; }


/* return_top */
#return_top{
  opacity: 1;
  bottom: 0;
  right: 0;
  width: 50px;
  height: 50px;
  border-radius: 0;
  background-image: none;
  position: fixed;
  /*bottom: 67px;*/
  right: 0px;
  text-indent: 0;
}
#return_top a{
  display: block;
  width: 50px;
  height: 50px;
  /*background: #aaa;*/
  background-image: none;
  text-decoration: none;
  z-index: 9999;
}
#return_top a span { /*text-indent:100%; white-space:nowrap; overflow:hidden; display:block;*/ display: none; }

#return_top a:before {
  font-family:'design_plus'; color:#fff; font-size:16px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e911'; top:20px; left:18px;
}


/* SNSボタン */
#footer_social_link { margin:0 auto 30px; text-align:center; }
#footer_social_link li { display:inline-block; margin:0; position:relative; }
#footer_social_link li a {
  display:block; text-indent:-200px; overflow:hidden; width:30px; height:30px; position:relative; 
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none; 
}
#footer_social_link li:before {
  font-family:'design_plus'; color:#000; font-size:14px; display:block; position:absolute; top:10px; left:9px;
  width:17px; height:17px; line-height:17px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li.twitter:before { content:'\e904'; }
#footer_social_link li.facebook:before { content:'\e902'; }
#footer_social_link li.insta:before { content:'\ea92'; top:11px; }
#footer_social_link li.pint:before { content:'\e905'; top:11px; }
#footer_social_link li.flickr:before { content:'\eaa4'; top:11px; }
#footer_social_link li.tumblr:before { content:'\eab9'; top:11px; }
#footer_social_link li.rss:before { content:'\e90b'; }
#footer_social_link li.twitter:hover:before { color:#16b9dc; }
#footer_social_link li.facebook:hover:before { color:#3B5998; }
#footer_social_link li.insta:hover:before { color:#8a3ab9; }
#footer_social_link li.rss:hover:before { color:#ffcc00; }
#footer_social_link li.pint:hover:before { color:#cb2027; }
#footer_social_link li.flickr:hover:before { color:#ff0084; }
#footer_social_link li.tumblr:hover:before { color:#34526f; }




/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */

.side_headline{ background: none; margin: 0 0 10px; padding-left: 0; font-size: 16px; }

/* styled post list1 */
.styled_post_list1 li{ background: none; }
.styled_post_list1 .image img{ width: 100px; height: 100px; padding: 0; border: none; }
.styled_post_list1 .info .title{ font-size: 14px; margin: 0; padding: 0; text-decoration: none; font-weight: normal; }
.styled_post_list1 .info .date{ font-size: 10px; color: #000; }
.styled_post_list1 .excerpt{ display: none; }

/* search */
.widget_search #search-box, .widget_search #s { width:75%; height:40px; margin:0 0 5px 0; }
.widget_search #search-btn input, .widget_search #searchsubmit { width:22%; }


/* author */
.tcdw_author_widget .author_bottom a{ background-image: none; display: block; padding: 0; height: 40px; line-height: 40px; font-size: 12px; position: relative; background: #fff; }
.tcdw_author_widget .author_bottom a:before{
  font-family:'design_plus'; color:#999; font-size:16px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; top:2px; right:10px;
}


/* category */
.tcdw_category_list_widget a{ background: none; padding: 10px 15px; }


/* google search */
.google_search label { display:none; }
.google_search #search_input, .google_search #s { width:calc(100% - 40px); height:40px; margin:0; border:1px solid #ccc; background:#f2f2f2; padding:0 10px; box-shadow:2px 2px 3px 0px #ddd inset; border-radius:0; }
.google_search input#search_button, .google_search #searchsubmit { border:none; width:40px; height:40px; background:#000 url(img/common/icon_search.png) no-repeat center; cursor:pointer; display:block; float:right; border-radius:0px; text-indent:-300%; overflow:hidden; }
.google_search input#search_button:hover, .google_search #searchsubmit:hover { background-color:#666; }

