@charset "UTF-8";

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


/* text and headline */
.post_content p:not(.no_editor_style) { line-height:2.4; margin:0 0 2em 0; }
/* .post_content p:first-child { margin-top:-0.7em; } */
.post_content p:last-child:not(.no_editor_style) { margin-bottom:0; }
.post_content h1:not(.no_editor_style),
.post_content h2:not(.no_editor_style),
.post_content h3:not(.no_editor_style),
.post_content h4:not(.no_editor_style),
.post_content h5:not(.no_editor_style),
.post_content h6:not(.no_editor_style) { clear:both; line-height:1.4; padding:0; font-weight:600; }
.post_content h1:not(.no_editor_style) { font-size:150%; margin:0 0 35px 0; text-align:center; }
.post_content h2:not(.no_editor_style) { font-size:140%; margin:0 0 35px 0; text-align:center; }
.post_content h3:not(.no_editor_style) { font-size:130%; margin:0 0 35px 0; }
.post_content h4:not(.no_editor_style) { font-size:120%; margin:0 0 30px 0; }
.post_content h5:not(.no_editor_style) { font-size:110%; margin:0 0 30px 0; }
.post_content h6:not(.no_editor_style) { font-size:100%; margin:0 0 30px 0; }


/* 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:not(.no_editor_style), .post_content dt:not(.no_editor_style), .post_content dd:not(.no_editor_style) { line-height:2.2; }
.post_content ul:not(.no_editor_style), .post_content ol:not(.no_editor_style), .post_content dl:not(.no_editor_style) { margin-bottom:24px; }
.post_content ol:not(.no_editor_style) { list-style:decimal outside none; margin-left:1.5em; }
.post_content ul:not(.no_editor_style) { list-style:circle outside none; margin-left:1.3em; }
.post_content li > ul:not(.no_editor_style), .post_content li > ol:not(.no_editor_style) { margin-bottom:0; }
.post_content dt:not(.no_editor_style) { font-weight:bold; }
.post_content dd:not(.no_editor_style) { margin-bottom:1em; }


/* table */
.post_content table { margin:0 0 24px 0; width:100% !important; }
.post_content td, .post_content th { border:1px solid #ddd; padding:17px 30px; line-height:2.2; background:#fff; -webkit-box-sizing:border-box; box-sizing:border-box; }
.post_content th { background:#f7f7f7; font-weight:normal; }
/* table style */
.post_content table.table_no_border th, .post_content table.table_no_border td { border:none; padding-left:0; }
.post_content table.table_border_horizontal th, .post_content table.table_border_horizontal td { border-left:none; border-right:none; padding-left:0; }


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px; background:#fff; border:1px solid #ccc; box-shadow:0px 3px 0px 0px rgba(150,150,150,0.1); 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:#f8f8f8; border:1px solid #ccc; padding:5px; max-width:100%;
  -webkit-border-radius:5px; border-radius:5px;
  -webkit-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 img { border: 0 !important; display:block; margin:0; }
.gallery-item { float:left; margin:0 4px 4px 0; overflow:hidden; position:relative; }
.gallery-columns-1, .gallery-columns-2, .gallery-columns-3, .gallery-columns-4, .gallery-columns-5,
  .gallery-columns-6, .gallery-columns-7, .gallery-columns-8, .gallery-columns-9, .gallery-columns-10 { margin:0 -4px -4px 0 !important; }
.gallery-columns-1 .gallery-item { max-width:100%; }
.gallery-columns-2 .gallery-item { max-width:calc(50% - 4px); }
.gallery-columns-3 .gallery-item { max-width:calc(100% / 3 - 4px); }
.gallery-columns-4 .gallery-item { max-width:calc(25% - 4px); }
.gallery-columns-5 .gallery-item { max-width:calc(20% - 4px); }
.gallery-columns-6 .gallery-item { max-width:calc(100% / 6 - 4px); }
.gallery-columns-7 .gallery-item { max-width:calc(100% / 7 - 4px); }
.gallery-columns-8 .gallery-item { max-width:calc(100% / 8 - 4px); }
.gallery-columns-9 .gallery-item { max-width:calc(100% / 9 - 4px); }
.gallery-columns-10 .gallery-item { max-width:calc(10% - 4px); }
.gallery-caption {
  background-color:rgba(0, 0, 0, 0.7); color:#fff; font-size:12px; line-height:1.5; margin:0; pointer-events:none;
  padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%;
  -webkit-box-sizing:border-box; box-sizing:border-box;
	transform: translate3d(0, 100%, 0);
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) 0s;
}
.gallery-item:hover .gallery-caption { transform: translate3d(0, 0, 0); }
.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption { display: none; }
@media screen and (max-width:767px) {
  .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:3px solid #ccc; background:#f8f8f8; font-size:12px; margin:0 0 27px 0; line-height:1.7; padding:20px; overflow:auto; }
.post_content .sticky { }
.post_content .mejs-container { margin: 12px 0 25px; }


/* QUADRAから追加分 */
.post_content .underline, .post_content .underline:hover { text-decoration:underline; }
.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;
}
.post_content .s_table { overflow: auto; white-space: nowrap; margin-bottom: 2em; }
.post_content .s_table table { margin-bottom: 0; }

/*  WordPress プリセットスタイル */
@media screen and (max-width:767px) {
  .post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { }
  .post_content p:not(.no_editor_style) { line-height:2; }
  .post_content li, .post_content dt, .post_content dd { line-height:1.8; }
  .post_content td, .post_content th { line-height:1.8; padding:14px 20px; }
}

/* table スクロール対応 */
@media (max-width: 767px) {
  .post_content .s_table,
  .post_content .wp-block-table { overflow: auto; white-space: nowrap; margin-bottom: 2em; }
  .post_content .s_table table,
  .post_content .wp-block-table { margin-bottom: 0; }
}


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


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


/* ----------------------------------------------------------------------
 Column layout - カラムレイアウト
---------------------------------------------------------------------- */
/*
.post_row { margin-right:-25px; margin-left:-25px; line-height:2.4; }
.post_row:before, .post_row:after { display:table; content:" "; }
.post_row:after { clear:both; }
.post_col, .post_col-2, .post_col-3 { -webkit-box-sizing:border-box; box-sizing:border-box; position:relative; width:100%; min-height:1px; margin-bottom:2em; padding-right:25px; padding-left:25px; float:left; }
@media screen and (min-width: 768px) {
    .post_col-2 { width:50%; }
    .post_col-3 { width:33.33333%; }
}
@media screen and (min-width: 1024px) {
    .post_col-2 { width:50%; }
    .post_col-3 { width:33.33333%; }
}
*/
.post_row {
  line-height:2.4;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
  -ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
  -ms-align-items:flex-start; -webkit-align-items:flex-start; align-items:flex-start;
}
.post_col {
  margin-bottom:2em;
  -ms-flex: 1 1 0%; -webkit-flex: 1 1 0%; flex: 1 1 0%;
}
.post_col-2 { margin-right:50px; }
.post_col-3 { margin-right:25px; }
.post_col:last-of-type { margin-right:0; }
@media screen and (max-width: 768px) {
  .post_row { display:block; line-height:2; }
  .post_col-2 { margin-right:0px; }
  .post_col-3 { margin-right:0px; }
}


/* ----------------------------------------------------------------------
 headline - 見出しのスタイル
---------------------------------------------------------------------- */
.post_content .style3a, .post_content .style3b, .post_content .style4a, .post_content .style4b, .post_content .style5a, .post_content .style5b, .post_content .style6 { font-weight: 500; line-height:1.6; }
/* h2 */
.style2a { margin:65px 0 30px !important; padding:0 0 .9em !important; border-bottom:3px solid #000; font-size:26px !important; }
.style2b { margin:65px 0 30px !important; padding:.48em 1em .47em !important; background:#000; color:#fff; font-size:26px !important; }
/* h3 */
.style3a { margin:65px 0 30px !important; padding:1.2em .15em !important; border-top:1px solid #ccc; border-bottom:1px solid #ccc; font-size:22px !important; }
.style3b { margin:65px 0 30px !important; padding:1.1em 1.4em 1.15em !important; border:1px solid #ddd; border-top:3px solid #000; background:#fafafa; font-size:22px !important; }
/* h4 */
.style4a { margin:65px 0 30px !important; padding:.4em 0 .4em 1.2em !important; border-left:3px solid #000; font-size:20px !important; font-weight:500; }
.style4b { -webkit-box-sizing:border-box; box-sizing:border-box; position:relative; margin:65px 0 30px !important; padding:.8em 1.5em .8em !important; border-left:#000 3px solid; font-size:20px !important; }
.style4b:after { position:absolute; top:0; left:0; width:100%; height:calc(100% - 2px); border:1px solid #ddd; border-left:none; content: ''; }
/* h5 */
.style5a { margin:65px 0 30px !important; padding:.85em 1.5em .8em !important; border:1px solid #ddd; background:#fafafa; font-size:18px !important; }
.style5b { margin:65px 0 30px !important; padding:.85em 1.5em .8em !important; background:#000; color:#fff; font-size:18px !important; }
/* h6 */
.style6 { position:relative; margin:65px 0 30px !important; padding:0 .8em 0 1.3em !important; color:#000; font-size:16px !important; font-weight:700; }
.style6:before { position:absolute; top:.35em; left:0; width:12px; height:12px; background:#000; content:""; }
.balloon { display:block; z-index:0; position:relative; width:auto; min-width:115px; margin:50px 0 22px; padding:.5em 18px .5em; clear:both; border-bottom:0; background:#222; color:#fff; font-size:20px; font-weight:400; text-align:left; }
.balloon:after { display:block; position:absolute; bottom:-10px; left:30px; width:0px; height:0px; margin-left:-10px; border-width:10px 10px 0 10px; border-style:solid; border-color:#222 transparent transparent transparent; content:""; }
@media screen and (max-width: 767px) {
    .style2a { margin:30px 0 20px !important; padding:0 0 .6em !important; font-size:20px !important; }
    .style2b { margin:30px 0 20px !important; padding:.42em .7em .41em !important; background:#000; color:#fff; font-size:20px !important; } 
    .style3a { margin:30px 0 20px !important; padding:.6em .15em !important; font-size:18px !important; }
    .style3b { margin:30px 0 20px !important; padding:.5em .5em .45em .6em !important; font-size:18px !important; }
    .style4a { margin:30px 0 20px !important; padding:.4em 0 .4em .8em !important; border-left:2px solid #000; font-size:16px !important; }
    .style4b { margin:30px 0 20px !important; padding:.8em 1em .75em !important; border-left:#000 2px solid; font-size:16px !important; }
    .style5a { margin:30px 0 20px !important; padding:.8em 1em .75em !important; font-size:15px !important; }
    .style5b { margin:30px 0 20px !important; padding:.8em 1em .75em !important; font-size:15px !important; }
}

/* デフォルト見出し+クイックタグ見出しのスタイル */
@media screen and (min-width: 769px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6:not(.no_editor_style) { margin-top: 40px !important; } 
}
@media screen and (max-width: 768px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6:not(.no_editor_style) { margin-top: 30px !important; } 
}
@media screen and (max-width: 600px) {
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h2:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h3:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h4:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h5:not(.no_editor_style),
    .post_content :not(h2):not(h3):not(h4):not(h5):not(h6) + h6:not(.no_editor_style) { margin-top: 20px !important; } 
}
.post_content h2:not(.no_editor_style) { font-size:28px; font-weight:600; }
.post_content h3:not(.no_editor_style) { font-size:26px; font-weight:600; }
.post_content h4:not(.no_editor_style) { font-size:22px; font-weight:600; }
.post_content h5:not(.no_editor_style) { font-size:20px; font-weight:600; }
.post_content h6:not(.no_editor_style) { font-size:18px; font-weight:600; }
@media screen and (max-width: 767px) {
    .post_content h2:not(.no_editor_style) { font-size:22px; }
    .post_content h3:not(.no_editor_style) { font-size:20px; }
    .post_content h4:not(.no_editor_style) { font-size:18px; }
    .post_content h5:not(.no_editor_style) { font-size:16px; }
    .post_content h6:not(.no_editor_style) { font-size:14px; }
}
/* Vertical */
.p-vertical { width:100%; margin:70px 0; font-size:36px; line-height:1.4; text-align:center; }
.p-vertical p { display:inline-block; margin:0; font-size:inherit; line-height:inherit; text-align:left; -webkit-writing-mode:vertical-rl; -ms-writing-mode:tb-rl; writing-mode:vertical-rl; }
@media screen and (max-width: 767px) { 
 .p-vertical { margin:33px 0; font-size:24px; line-height:1.3; }
}


/* ----------------------------------------------------------------------
 headline - 見出し
---------------------------------------------------------------------- */
#main_contents .post_content .styled_h2, #main_contents .post_content .styled_h3 { margin: 3em 0 1.3em 0!important; }
#main_contents .post_content .styled_h4, #main_contents .post_content .styled_h5 { margin: 2.3em 0 1em 0!important; }
@media (max-width: 599px) {
#main_contents .post_content .styled_h2, #main_contents .post_content .styled_h3 { margin: 2.3em 0 1em 0!important; }
#main_contents .post_content .styled_h4, #main_contents .post_content .styled_h5 { margin: 2em 0 1em 0!important; }
}


/* ----------------------------------------------------------------------
 Underline - アンダーライン
---------------------------------------------------------------------- */
.q_underline { background-image: -webkit-linear-gradient(left, transparent 50%, #fff799 50%); background-image: -moz-linear-gradient(left, transparent 50%, #fff799 50%); background-image: linear-gradient(to right, transparent 50%, #fff799 50%); background-position: 0 0.8em; background-repeat: repeat-x; background-size: 200% 0.5em; border: none; border-bottom-color: transparent; -webkit-transition: background 2s ease; -ms-transition: background 2s ease; transition: background 2s ease; }
.q_underline.is-active{ background-position: -100% 0.8em; }


/* ----------------------------------------------------------------------
 Speech balloon - スピーチ
---------------------------------------------------------------------- */
.speech_balloon { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: start; -ms-flex-align: start; -webkit-align-items: flex-start; align-items: flex-start; }
.speech_balloon_user { -webkit-flex: 0 0 auto; -ms-flex: 0 0 auto; flex: 0 0 auto; margin-right: 36px; margin-bottom: 2em; min-width: 80px; text-align: center; }
.speech_balloon_user_image { border-radius: 50%; height: 80px !important; width: 80px; object-fit: cover; }
.speech_balloon_user_name { font-size: 87.5%; line-height: 1.2; margin-top: 12px; }
.speech_balloon_user_name:only-child { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center; margin-top: 0; min-height: 80px; }
.speech_balloon_text { -webkit-flex: 1 1 auto; -ms-flex: 1 1 auto; flex: 1 1 auto; margin-bottom: 3em; position:relative; }
.speech_balloon_text_inner { background: #fff; border: 2px solid #ddd; border-radius: 10px; line-height: 2; min-height: 80px; padding: 22px 28px; position: relative; }
.speech_balloon_text_inner > *:last-child { margin-bottom: 0 !important; }

.speech_balloon.right {  -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse }
.speech_balloon.right .speech_balloon_user { margin-left: 36px; margin-right: 0; }

.speech_balloon_text .before , .speech_balloon_text .after{
  border-color: transparent; border-style: solid; pointer-events: none; height: 0; margin-top: -10px; width: 0; position: absolute; right: 100%; top: 40px;
}
.speech_balloon_text .before { border-left-color:inherit; border-width: 8px 0 8px 10px; }
.speech_balloon_text .after { border-right-color:inherit; border-width: 8px 10px 8px 0; }
.speech_balloon.left .before { transform:rotate(180deg); }
.speech_balloon.left .after { margin-right:-3px; }
.speech_balloon.right .before { left:100%; }
.speech_balloon.right .after { left:100%; transform:rotate(180deg); margin-left:-3px; }


/* ----------------------------------------------------------------------
 flame - 囲み枠
---------------------------------------------------------------------- */
.well { margin-bottom:30px; padding:1.1em 2em; border:1px solid #ddd; border-radius:6px; background-color:#fafafa; line-height:1.8; }
.well2 { margin-bottom:30px; padding:1.1em 2em; border:1px solid #ddd; line-height:1.8; }
.well3 { margin-bottom:30px; padding:1.1em 2em; border:1px dashed #ddd; background:#fafafa; line-height:1.8; }
.wl_red { border-color:#ebccd1; background-color:#f2dede; color:#a94442 !important; }
.wl_yellow { border-color:#faebcc; background-color:#fcf8e3; color:#8a6d3b !important; }
.wl_blue { border-color:#bce8f1; background-color:#d9edf7; color:#31708f !important; }
.wl_green { border-color:#d6e9c6; background-color:#dff0d8; color:#3c763d !important; }

@media screen and (max-width: 767px) {
    .well, .well2, .well3 { padding:.9em .8em .9em 1em; }
}


/* ----------------------------------------------------------------------
 button - CSSボタンのスタイル
---------------------------------------------------------------------- */
.q_custom_button {
  max-width: 100%; width:270px; height:60px; line-height:1.5; padding:0 1.5em;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-inline-flex; display:inline-flex;
  -ms-justify-content:center; -webkit-justify-content:center; justify-content:center;
  -ms-align-items:center; -webkit-align-items:center; align-items:center;
  text-align:center; position:relative; overflow:hidden; font-size:16px; z-index:1;
  color:#fff; border-width:1px; border-style:solid; text-decoration: none;
  transition: border-color 0.3s ease;
}
.q_custom_button:before {
  content: ''; display: block; width: 100%; height: calc(100% + 2px);
  position: absolute; top: -1px; z-index: -1;
  transition-property:background-color, left, opacity;
  transition-duration:0.5s;
  transition-timing-function:cubic-bezier(0.22, 1, 0.36, 1);
}
.q_custom_button:hover { color:#fff; }

@media (max-width: 767px) {
  .q_custom_button { max-height:50px; }
}


/* Button option */
.rounded { border-radius:6px; }
.pill { border-radius:70px; }
.bt_red{ background:#c01f0e; border-color:#c01f0e; color:#fff; }
.bt_red:hover, .bt_red:focus { background-color:#d33929; border-color:#d33929; color:#fff; }
.bt_yellow{ background:#f1c40f; border-color:#f1c40f; color:#fff; }
.bt_yellow:hover, .bt_yellow:focus { background-color:#f9d441; border-color:#f9d441; color:#fff; }
.bt_blue{ background:#2980b9; border-color:#2980b9; color:#fff; }
.bt_blue:hover, .bt_blue:focus { background-color:#3a91c9; border-color:#3a91c9; color:#fff; }
.bt_green{ background:#27ae60; border-color:#27ae60; color:#fff; }
.bt_green:hover, .bt_green:focus { background-color:#39c574; border-color:#39c574; color:#fff; }

/* クイックタグのデザインボタン */
.q_button_wrap { text-align:center; margin-bottom:2em; }

/* ----------------------------------------------------------------------
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 - テーブルのレスポンシブ表示
---------------------------------------------------------------------- */
.rps_table { line-height:2.0; }
@media only screen and (max-width:567px) {
  .rps_table tr { display:block; margin-bottom:1.5em; }
  .rps_table th, .rps_table td{ display:list-item; list-style-type:none; border:none; }
  .rps_table td { border-top: none; }
}


/* ----------------------------------------------------------------------
 Cardlink style - カードリンクのスタイル
---------------------------------------------------------------------- */
.cardlink {
  word-wrap:break-word; margin:15px 0 2em; padding:20px; border:1px solid #ddd; background:#fafafa;
  display:-webkit-box; display:-webkit-flex; display:flex;
  -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.cardlink .image { margin-right:25px; }
.cardlink .image img { width:130px; height:130px; -o-object-fit:cover; object-fit:cover; }
.cardlink .content { width:calc(100% - 155px); }
.cardlink .title_area { }
.cardlink .date { display:block; color:#222; font-size:12px; line-height:1; margin:3px 0 10px 0!important; }
.cardlink .title { width:100%; margin:-3px 0 5px 0 !important; font-size:16px; font-weight:bold; line-height:1.7; }
.cardlink .title a { color:rgba(var(--tcd-accent-color, 191,157,135),1); }
.cardlink .title a:hover { color:rgba(var(--tcd-accent-color, 191,157,135),0.5); }
.cardlink .desc { font-size:14px; line-height:1.7; margin:0 0 0 0 !important; max-height:3.4em; overflow:hidden; visibility:visible; box-sizing: content-box; }
.cardlink .desc span { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
@media screen and (max-width: 750px) {
  .cardlink { display:block; padding:15px 15px 10px; margin:30px 0 35px !important; }
  .cardlink .image { float:left; }
  .cardlink .image img { width:120px; height:120px; }
  .cardlink .content { width:auto; }
  .cardlink .title_area {
    width:calc(100% - 145px); float:left; height:120px;
    display:-webkit-box; display:-webkit-flex; display:flex;
    -webkit-flex-wrap:wrap; flex-wrap:wrap;
    -webkit-align-items:center; align-items:center;
  }
  .cardlink .date { align-self:flex-end; margin:6px 0 10px 0!important; }
  .cardlink .title { margin:-3px 0 0 0 !important; max-height:5.1em; overflow:hidden; visibility:visible; }
  .cardlink .date + .title { align-self:flex-start; }
  .cardlink .title a { display:-webkit-inline-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
  .cardlink .desc { clear:both; padding:10px 0 0 0; max-height:3.4em; }
  .cardlink .desc span { -webkit-line-clamp:2; }
}


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


/* ----------------------------------------------------------------------
 汎用スタイルの追加
 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;
}
@charset "UTF-8";


/* ----------------------- Share button -------------------------- */


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


[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "design_plus" !important;
  line-height: 1; font-style: normal; font-variant: normal; font-weight: normal; speak: none; text-transform: none;
  /* 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: "\e944"; font-size: 18px; }
.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"; }
.icon-note:before {
  content: '';
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center; top:0px;
}


/*--------------------------------
Share Buttons
---------------------------------*/
.share-top { 
	margin-bottom: 30px; 
}
.share-btm { margin-bottom: 50px; }


/*--------------------------------
share_top1（Style1）
---------------------------------*/
.share-type1 { width: 100%; }
.share-type1 h2 { color: #666666; font-weight: 400; }
.share-type1 ul { list-style: none; margin: 0; padding: 0; display: flex; }
.share-type1 li { flex: 1 1 0%; max-width: 100px; margin: 0 3px 3px 0; padding: 0; text-align: center; }
.share-type1 li > a:hover { -webkit-transform: translate3d(0, 1px, 0); transform: translate3d(0, 1px, 0); }
.share-type1 a { min-width: 27px; text-decoration: none; display: inline-block; margin: 0 3px 3px 0; font-size: 12px; font-weight: 400; color: #fff !important; background: #fafafa; border-radius: 3px; box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03); text-shadow: none; text-align: center; line-height: 30px; 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; width: 100%; }
.share-type1 i { position: relative; top: 3px; color: #fff; font-size: 1.3em; text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1); }
.share-type1 .ttl { margin: 0 3px 0 2px; text-align: center; line-height: 20px; }
.share-type1 .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; }

@media screen and (max-width: 767px) {
  .share-type1 { width: 100%; }
  .share-type1 ul { margin-bottom: 15px; }
  .share-type1 li > a span { display: none; }
  .share-type1 a { margin-right: 2px; }
  .share-type1 i { left: 1px; }
  .share-type1 .share-count { margin-left: 3px; }
}


/*--------------------------------
share_btm1（Style3）
---------------------------------*/
.share-type3 .sns { margin: 0; text-align: center; }
.share-type3 ul { margin: 0 -3% 3% 0; list-style: none; display: flex; flex-wrap: wrap; }
.share-type3 li { width: calc(50% - 5px); margin: 0 5px 5px 0; cursor: pointer; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
.post .share-type3 ul li { list-style: none; background-image: none; padding: 0; }
.share-type3 ul li a { display: flex; justify-content: center; align-items: center; font-size: 13px; color: #fff; border-radius: 3px; text-align: center; text-decoration: none; vertical-align: middle; height: 37px; }
.share-type3 ul li a i { font-size: 140%; }
.share-type3 ul li a .ttl { margin: 0 3px 0 4px; display: inline-block; text-align: center; font-size: 12px; }
.share-type3 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-type3 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-type3 { width:auto; margin: 20px 0 15px; }
  .share-type3 ul { margin-right: -1%; list-style: none; overflow: hidden; }
  .share-type3 li { width: calc(25% - 5px); }
  .share-type3 li a { font-size: 12px; height: 42px; }
  .share-type3 li:nth-child(4n) { margin-right: 0; }
}


/*------------- share_top1 & share_btm1 button_color -------------*/
/* X */
.share-type1 .twitter a, .share-type3 .twitter a { background-color: #000; }
.share-type1 .twitter a:hover, .share-type3 .twitter a:hover { background-color: #333; }

/* Facebook */
/*
.share-type1 ul li.twitter a, .share-type3 ul li.twitter a { color:#fff; background-color:#55acee; }
*/
.share-type1 ul li.facebook a, .share-type3 ul li.facebook a { background-color: #35629a; }
.share-type1 ul li.facebook a:hover, .share-type3 ul li.facebook a:hover { background-color: #1f3669; }

/* Google+ */
.share-type1 ul li.googleplus a, .share-type3 ul li.googleplus a { background-color: #dd4b39; }
.share-type1 ul li.googleplus a:hover, .share-type3 ul li.googleplus a:hover { background-color: #b94031; }
.share-type1 ul li.googleplus a i { top: 4px; }

/* Hatena */
.share-type1 ul li.hatebu > a, .share-type3 ul li.hatebu a { background-color: #3c7dd1; }
.share-type1 ul li.hatebu > a:hover, .share-type3 ul li.hatebu a:hover { background-color: #0270ac; }

/* Pocket */
.share-type1 ul li.pocket a, .share-type3 ul li.pocket a { background-color: #ee4056; }
.share-type1 ul li.pocket a:hover, .share-type3 ul li.pocket a:hover { background-color: #c53648; }

/* rss */
.share-type1 ul li.rss a, .share-type3 ul li.rss a { background-color: #ffb53c; }
.share-type1 ul li.rss a:hover, .share-type3 ul li.rss a:hover { background-color: #e09900; }

/* Feedly */
.share-type1 ul li.feedly a, .share-type3 ul li.feedly a { background-color: #6cc655; }
.share-type1 ul li.feedly > a:hover, .share-type3 ul li.feedly > a:hover { background-color: #5ca449; }

/* Pinterest */
.share-type1 ul li.pinterest a, .share-type3 ul li.pinterest a { background-color: #d4121c; }
.share-type1 ul li.pinterest a:hover, .share-type3 ul li.pinterest a:hover { background-color: #a42f35; }

.share-type1 ul li.line_button a, .share-type3 ul li.line_button a { background-color: #00B900; }
.share-type1 ul li.line_button a:hover, .share-type3 ul li.line_button a:hover { background-color: #009100; }

.share-type1 ul li.note_button a, .share-type3 ul li.note_button a { background:#fff; border:1px solid #ddd; color:#000 !important; box-sizing:content-box; top: -1px; position:relative; }
.share-type1 ul li.note_button a:hover, .share-type3 ul li.note_button a:hover { background:#eee; border-color:#ddd; }


/*--------------------------------
share_top2（Style2）
---------------------------------*/
.share-type2 { width: auto; /*margin:30px 0 15px;*/ }
.share-type2 h2 { color: #444; font-weight: 400; }
.share-type2 ul.type2 { margin: 0; padding: 0; list-style: none; display: flex; }
.share-type2 ul.type2 li { flex: 1 1 0%; max-width: 100px; padding: 0; text-align: center; margin: 0 3px 3px 0; }
.share-type2 ul.type2 li a { text-decoration: none; display: inline-block; font-size: 12px; font-weight: 400; border-radius: 3px; color: #222 !important; text-align: center; background: #fafafa !important; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03); text-shadow: none; line-height: 30px; padding: 1px 4px 0; width: 100%; }
.share-type2 ul.type2 li a i { position: relative; top: 3px; color: #222; font-size: 1.3em; text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1); }
.share-type2 ul.type2 li a .ttl { margin: 0 3px 0 2px; text-align: center; line-height: 20px; }
.share-type2 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-type2 ul.type2 li a:hover, .share-type2 ul.type2 li a:hover i, .share-type2 ul.type2 li a:hover .share-count { color: #fff !important; }
.share-type2 ul.type2 li a:hover { border-color: rgba(255, 255, 255, 0.1); }

@media screen and (max-width: 480px) {
  .share-type2 { width: auto; }
  .share-type2 ul.type2 { margin-bottom: 15px; }
  .share-type2 ul.type2 li a { margin-right: 1px; }
  .share-type2 ul.type2 li a i { left: 1px; }
  .share-type2 ul.type2 li a .share-count { margin-left: 3px; }
}
@media screen and (max-width: 767px) {
  .share-type2 ul.type2 li > a span.ttl { display: none; }
}


/*--------------------------------
share_btm2（Style4）
---------------------------------*/
.share-type4 { text-align: center; }
.share-type4 .sns { margin: 0; }
.share-type4 ul.type4 { margin: 0 -3% 3% 0; list-style: none; display: flex; flex-wrap: wrap; }
.share-type4 ul.type4 li { width: calc(50% - 5px); margin: 0 5px 5px 0; cursor: pointer; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
.post .share-type4 ul li { list-style: none; background-image: none; padding: 0; }
.share-type4 ul.type4 li a { display: flex; justify-content: center; align-items: center; font-size: 13px; text-decoration: none; border-radius: 3px; color: #222 !important; text-align: center; background: #fafafa !important; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03); text-shadow: none; height: 37px; }
.share-type4 ul.type4 li a i { font-size: 140%; color: #222 !important; }
.share-type4 ul.type4 li a .ttl { margin: 0 3px 0 4px; display: inline-block; text-align: center; font-size: 12px; }
.share-type4 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-type4 ul.type4 li a:hover, .share-type4 ul.type4 li a:hover i, .share-type4 ul.type4 li a:hover .share-count { color: #fff !important; }

@media only screen and (min-width: 480px) {
  .share-type4 { width: auto; margin: 20px 0 15px; }
  .share-type4 ul.type4 { margin-right: -1%; list-style: none; overflow: hidden; }
  .share-type4 ul.type4 li { width: calc(25% - 5px); }
  .share-type4 ul.type4 li a { font-size: 12px; height: 42px; }
  .share-type4 ul.type4 li:nth-child(4n) { margin-right: 0; }
}


/*------------- share_top2 & share_btm4 button_color -------------*/
/* X */
.share-type2 ul.type2 li.twitter a, .share-type4 ul.type4 li.twitter a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.twitter a:hover, .share-type4 ul.type4 li.twitter a:hover { color: #fff !important; background-color: #000 !important; }

/* Facebook */
.share-type2 ul.type2 li.facebook a, .share-type4 ul.type4 li.facebook a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.facebook a:hover, .share-type4 ul.type4 li.facebook a:hover { color: #fff !important; background-color: #35629a !important; }

/* Google+ */
.share-type2 ul.type2 li.googleplus a, .share-type4 ul.type4 li.googleplus a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.googleplus a:hover, .share-type4 ul.type4 li.googleplus a:hover { color: #fff !important; background-color: #dd4b39 !important; }
.share-type2 ul.type2 li.googleplus a i, .share-type4 ul.type4 li.googleplus a i { top: 4px; }

/* Hatena */
.share-type2 ul.type2 li.hatebu a, .share-type4 ul.type4 li.hatebu a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.hatebu a:hover, .share-type4 ul.type4 li.hatebu a:hover { color: #fff !important; background-color: #3c7dd1 !important; }

/* Pocket */
.share-type2 ul.type2 li.pocket a, .share-type4 ul.type4 li.pocket a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.pocket a:hover, .share-type4 ul.type4 li.pocket a:hover { color: #fff !important; background-color: #ee4056 !important; }

/* rss */
.share-type2 ul.type2 li.rss a, .share-type4 ul.type4 li.rss a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.rss a:hover, .share-type4 ul.type4 li.rss a:hover { color: #fff !important; background-color: #ff8c00 !important; }

/* Feedly */
.share-type2 ul.type2 li.feedly a, .share-type4 ul.type4 li.feedly a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.feedly a:hover, .share-type4 ul.type4 li.feedly a:hover { color: #fff !important; background-color: #6cc655 !important; }

/* Pinterest */
.share-type2 ul.type2 li.pinterest a, .share-type4 ul.type4 li.pinterest a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.pinterest a:hover, .share-type4 ul.type4 li.pinterest a:hover { color: #fff !important; background-color: #d4121c !important; }

.share-type2 ul.type2 li.line_button a, .share-type4 ul.type4 li.line_button a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.line_button a:hover, .share-type4 ul.type4 li.line_button a:hover { color: #fff !important; background-color: #00B900 !important; }

.share-type2 ul.type2 li.note_button a, .share-type4 ul.type4 li.note_button a { color: #222 !important; background-color: #fafafa !important; }
.share-type2 ul.type2 li.note_button a:hover, .share-type4 ul.type4 li.note_button a:hover { color: #fff !important; background-color: #000 !important; }
.share-type2 ul.type2 li.note_button a:hover .icon-note:before, .share-type4 ul.type4 li.note_button a:hover .icon-note:before {
  content: '';
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 100 100'%3E%3Cpath d='M10 10.4968C25.408 10.4968 46.504 9.70479 61.648 10.1208C81.952 10.6408 89.624 19.5048 89.888 41.3448C90.152 53.7208 89.888 89.1048 89.888 89.1048H67.896C67.896 58.1368 68.008 53.0168 67.896 43.2568C67.632 34.6568 65.2 30.5768 58.584 29.7928C51.592 29.0088 31.992 29.6808 31.992 29.6808V89.1448H10V10.4968Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center; top:0px;
}


/*--------------------------------
share_top5（公式ボタン）
---------------------------------*/
.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 ul li { margin-bottom: 6px; }
  .sns_default_top ul li.twitter_button { margin-left: 0; }
}


