/* <system section="theme" selected="smooth"> */
@charset "UTF-8";/*!
Theme: Smooth
Author: Hatena Blog Team
Responsive: yes
*//*!
 * Bootstrap Reboot v4.2.1 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):hover,a:not([href]):not([tabindex]):focus{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}pre,code,kbd,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}html,body{background:#f9fafb;font-family:helvetica,Segoe UI,游ゴシック体,YuGothic,游ゴシック Medium,Yu Gothic Medium,游ゴシック,Yu Gothic,メイリオ,Meiryo,sans-serif;color:#293030}html{line-height:1}body{font-size:17px;line-height:1.6}img{vertical-align:baseline}a{color:#293030}a:hover{color:#586767;transition:all .3s}.date{margin:0 0 .7em;font-size:.9rem}.date a{color:#6f8383}.date a:hover{color:#a5b3b3}.date-last-updated{color:#6f8383;font-size:.9rem}#globalheader-container{position:sticky;top:0;background:#f9fafb}#container{word-wrap:break-word}#blog-title{max-width:1280px;margin:auto;padding:4% 5%;text-align:center}#title{font-size:150%;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-weight:400}@media(min-width:768px){#title{font-size:215%}}#blog-description{font-size:90%;font-weight:400}#content-inner{width:100%;display:flex;flex-direction:column}@media(min-width:768px){#content-inner{flex-direction:row;margin:auto;padding:0 20px}}@media(min-width:1200px){#content-inner{width:1200px}}#wrapper{flex:0 0 100%;max-width:100%}@media(min-width:768px){#wrapper{flex:0 0 75%;max-width:75%}}@media(min-width:1020px){#main{padding:0 3% 0 0}}.header-image-enable #blog-title,.header-image-only #blog-title{padding:0 0 1.5em}@media(min-width:1200px){.header-image-enable #blog-title,.header-image-only #blog-title{width:1160px}}.header-image-enable #blog-title #blog-title-inner,.header-image-only #blog-title #blog-title-inner{display:flex;align-items:center;justify-content:center;height:50vw;max-height:200px}@media(min-width:1200px){.header-image-enable #blog-title #blog-title-inner,.header-image-only #blog-title #blog-title-inner{background-size:100%}}.header-image-enable #blog-title-content,.header-image-only #blog-title-content{margin:0 .5em}.breadcrumb{font-size:.9rem}.categories{margin-bottom:2em}.categories a{display:inline-block;background:#e9f0f2;margin:0 .3em 0 0;padding:0 10px;font-size:12px}.pager{text-align:center;margin:3em .8em}@media(min-width:1020px){.pager{margin:0}}.pager a{display:inline-block;width:100%;background:#eff1f5;padding:.7em 1.2em;border:none;font-weight:400;font-size:.9rem;color:#293030}.pager a:hover{background-color:#e9ecf1;text-decoration:none}.pager .pager-next,.pager .pager-prev{width:100%;padding:.5em 0}.pager .pager-prev+.pager-next{margin-left:1em;padding-left:1em}@media(min-width:768px){.pager .pager-prev+.pager-next{margin-left:1.5em;padding-left:1.5em}}.pager.permalink{display:flex;justify-content:center;align-items:center;text-align:center}.hatena-urllist{padding-left:0;list-style:none}.hatena-urllist li{border-top:1px dotted #cfd8d8;padding-top:10px;padding-bottom:10px}.hatena-urllist .archive-module-year,.hatena-urllist .archive-module-month{line-height:2}.hatena-urllist .urllist-date-link a{color:#6f8383}.hatena-urllist .urllist-category-link{display:inline-block;background:#e9f0f2;margin:.5em .3em 0 0;padding:3px 10px;font-size:12px;line-height:1.3}.hatena-urllist .urllist-category-link:hover{background:#d9e5e9;text-decoration:none;transition:background .3s}.hatena-urllist .urllist-entry-body{margin-top:10px}.hatena-module{margin-bottom:3em;padding-left:20px;padding-right:20px;font-size:.85rem}.hatena-module:last-child{margin-bottom:0}.hatena-module-title{margin-bottom:12px;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-size:20px}.hatena-module-body{font-size:15px}.hatena-module-body .urllist-title-link{font-size:100%}.hatena-module-body .archive-module-button{display:inline-block;width:15px;height:15px}.hatena-module-body .archive-module-hide-button,.hatena-module-body .archive-module-show-button{position:absolute;overflow:hidden;width:15px;height:15px;text-indent:-15px}.hatena-module-body .archive-module-hide-button:after,.hatena-module-body .archive-module-show-button:after{content:"";top:50%;display:inline-block;position:absolute;width:8px;height:8px;margin-top:-.1em;border-top:1px solid #6f8383;border-right:1px solid #6f8383}.hatena-module-body .archive-module-hide-button{transform:rotate(135deg);margin-top:.2em}.hatena-module-body .archive-module-show-button{transform:rotate(45deg);margin-top:.2em}@media(min-width:481px){.search-result-form{margin:0 1em}}.search-result+p{background:#fff;border:1px solid #f0f1f1;margin:0 0 3em;padding:8% 0;font-weight:700;text-align:center}.search-form,.search-result-form{position:relative;width:100%;background:#fff;margin:auto;border:1px solid #eee;box-sizing:border-box}.search-form:hover,.search-result-form:hover{border-color:#ddd}.search-module-input,.search-result-form .search-result-input{width:90%;height:30px;padding:5px;background:#fff;border:none;outline:none}.search-module-input::-webkit-input-placeholder,.search-result-form .search-result-input::-webkit-input-placeholder,.search-module-input::-placeholder,.search-result-form .search-result-input::-placeholder{color:#9faba9}.search-module-button,.search-result-form .search-result-button{width:20px;height:20px;background:transparent url(https://cdn.blog.st-hatena.com/images/theme/search@2x.png?version=c11b730f58f74c6b04379106157dac) no-repeat right center;background-size:20px 20px;border:none;outline:none;text-indent:-9999px;position:absolute;top:5px;right:5px;opacity:.5;cursor:pointer}.search-module-button:hover,.search-result-form .search-result-button:hover{opacity:.85}#top-box{margin:0 auto;padding:0 10px}@media(min-width:768px){#top-box{padding:0 20px}}@media(min-width:1200px){#top-box{max-width:1200px}}.entry{background:#fff;border:1px solid #f0f1f1;margin-bottom:2em;padding:8% 5%}@media(min-width:768px){.entry{padding:8% 9% 5%}}.entry-header{position:relative;margin-bottom:1.5em}@media(min-width:481px){.entry-header{margin-bottom:3em}}.entry-header-menu{position:absolute;top:0;right:0;margin-bottom:1em}.entry-header-menu a{background:#f9fafb;border:1px solid #cfd8d8;padding:5px 10px;font-size:.9rem}.entry-header-menu a:hover{background:#f3f5f7;text-decoration:none}.entry-title{margin-bottom:.5em;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;font-size:130%;font-weight:400;line-height:1.5}@media(min-width:768px){.entry-title{font-size:190%}}.entry-content{line-height:1.85}.entry-content a{color:#119e4d}.entry-content a:hover{color:#0c7037}.entry-content a.keyword{-webkit-text-decoration:underline dotted #cfd8d8;text-decoration:underline dotted #cfd8d8}.entry-content a.keyword:hover{color:#586767;-webkit-text-decoration:underline dotted #ffffff;text-decoration:underline dotted #ffffff}.entry-content img,.entry-content video{max-width:100%;height:auto}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{margin:1.5em 0 .8em;line-height:1.3}.entry-content h1{padding-bottom:15px;font-size:190%;border-bottom:1px solid #cfd8d8}.entry-content h2{font-size:165%}.entry-content h3{padding-bottom:10px;font-size:140%;border-bottom:1px solid #cfd8d8}.entry-content h4{font-size:130%}.entry-content h5{padding-bottom:10px;font-size:120%;border-bottom:1px solid #cfd8d8}.entry-content h6{font-size:100%}.entry-content ul,.entry-content ol,.entry-content dd{margin:0 0 1em 1.5em;padding:0;line-height:1.7}.entry-content ul li ul,.entry-content ol li ul,.entry-content dd li ul,.entry-content ul li ol,.entry-content ol li ol,.entry-content dd li ol{margin-bottom:0}.entry-content dl{margin-top:2em}.entry-content dl dt{margin-bottom:.8em}.entry-content p{margin:0 0 .7em}.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6,.entry-content .footnote-number{scroll-margin-top:56px}.entry-content blockquote{position:relative;padding:9px 15px 9px 40px;border:1px solid #f0f1f1}@media(min-width:1020px){.entry-content blockquote{padding:20px 20px 20px 60px}}.entry-content blockquote:before{display:inline-block;position:absolute;top:10px;left:10px;vertical-align:middle;content:"“";font-size:40px;font-family:Times New Roman,游明朝体,YuMincho,游明朝,Yu Mincho,serif;color:#6f8383;line-height:1}@media(min-width:1020px){.entry-content blockquote:before{left:15px;font-size:70px}}.entry-content blockquote p{margin-bottom:0}.entry-content blockquote cite{display:block;margin-top:.5rem;text-align:right;font-size:85%;line-height:1.3}.entry-content table{border-collapse:collapse;border-spacing:0;border-bottom:1em;margin-bottom:1em;width:100%;overflow:auto;display:block}.entry-content table th,.entry-content table td{border:1px solid #f0f1f1;padding:5px 10px}.entry-content table th{background:#f9fafb}.entry-content pre,.entry-content code{font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content pre{background:#293030;border:none;white-space:pre-wrap;text-overflow:ellipsis ellipsis;font-size:100%;font-size:.9rem;padding:10px;color:#ccc}@media(min-width:768px){.entry-content pre{font-size:.85rem;padding:15px}}.entry-content pre>code{margin:0;padding:0;white-space:pre;border:none;background-color:transparent;font-family:Monaco,Consolas,Courier New,Courier,monospace,sans-serif}.entry-content code{font-size:90%;margin:0 .1em;padding:0 5px;border-radius:3px}.entry-content .table-of-contents{background:#f9fafb;margin-left:0;padding:15px 10px 15px 35px;font-size:16px}@media(min-width:768px){.entry-content .table-of-contents{padding:20px 20px 20px 50px}}.entry-footer{margin-top:1em}.entry-footer-modules .hatena-module{padding:0}.entry-footer-section{margin-bottom:8px;color:#6f8383;font-size:.9rem}.entry-footer-section a{color:#6f8383}.entry-footer-ad{margin-left:-9%;margin-right:-9%}.comment-box{margin:0 -5%;padding:5% 5% 0;border-top:1px solid #f0f1f1}@media(min-width:768px){.comment-box{margin:0 -11%;padding:20px 11% 0}}.comment-box .leave-comment-title{background:#f9fafb;border:1px solid #cfd8d8;padding:.5rem 1rem;font-size:.9rem}.comment-box .leave-comment-title:hover{background:#f3f5f7}.comment-box .comment{list-style:none;padding-left:0}.comment-box .comment a{color:#119e4d}.comment-box .comment a:hover{color:#0c7037}.comment-box .comment .comment-user-id{font-size:14px;font-weight:700}.comment-box .comment .entry-comment{padding:20px 0 0;border-top:1px solid #f0f1ff;color:#6f8383}.comment-box .comment .entry-comment:first-child{padding-top:0;border-top:none}.comment-box .comment .entry-comment .comment-content{word-wrap:break-word}.comment-box .comment .entry-comment .comment-content p{font-size:14px}.comment-box .comment .entry-comment time{font-size:12px}.comment-box .comment .read-more-comments{font-size:14px}@media(min-width:1020px){.comment-box .comment .read-more-comments{margin-right:25px}}.comment-box .comment .read-more-comments a{position:relative;display:inline-block}.comment-box .comment .read-more-comments a:after{content:"";top:20%;left:-20px;display:inline-block;position:absolute;width:8px;height:8px;border-top:1px solid #119e4d;border-right:1px solid #119e4d;transform:rotate(135deg);margin-top:1px}#box2{flex:0 0 100%;max-width:100%;background:#fff3;padding:1em 0}@media(min-width:768px){#box2{flex:0 0 25%;max-width:25%}}#box2 .hatena-urllist>li:last-child{border-bottom:1px dotted #cfd8d8}.hatena-module-profile .profile-icon-link{display:inline;float:left;margin-right:.7em}.hatena-module-profile .profile-icon-link .profile-icon{border-radius:400px}@media(min-width:1020px){.hatena-module-profile .profile-icon-link{display:block;float:none;margin-right:0}}.hatena-module-profile .id{display:block}.hatena-module-profile .id a{color:#119e4d;font-weight:700}.hatena-module-profile .id a:hover{color:#0c7037}.hatena-module-profile .profile-description p{font-size:80%}.archive-module-calendar .calendar-day a{color:#119e4d;font-weight:700}.archive-module-calendar .calendar-day a:hover{color:#0c7037}.hatena-module-recent-comments .user-id span{font-size:12px;opacity:.7}#footer{background:#fff;margin-top:2em;padding-top:2rem;padding-bottom:2rem;text-align:center;font-size:.9rem;color:#6f8383}#footer a{color:#6f8383}#footer p{margin:.5em auto}.archive-header-category{margin-bottom:.3em}.page-archive .archive-heading{margin:.5em .7em 1.3em;line-height:1.5}@media(min-width:1020px){.page-archive .archive-heading{margin:.5em 0 1.3em}}.page-archive .archive-entries-sort{margin-left:1.2em}@media(min-width:768px){.page-archive .archive-entries-sort{margin-left:0}}.page-archive .archive-entry{background:#fff;border:1px solid #f0f1f1;margin-bottom:30px;padding:9% 6% 6%}@media(min-width:768px){.page-archive .archive-entry{padding:6%}}@media(min-width:768px){.page-archive .archive-entry .entry-title{font-size:150%}}

/* </system> */

/* <system section="background" selected="default"> */
/* default */
/* </system> */


/* ==== 見出し(大・中・小) シンプルボーダー版 ==== */

/* 大見出し(h3) */
.entry-content h3 {
  font-size: 22px;
  font-weight: 700;
  color: #2d3a4b;
  border-bottom: 2px solid #2d3a4b;
  padding: 0.5em 0;
  margin: 2em 0 1em;
}

/* 中見出し(h4) */
.entry-content h4 {
  font-size: 20px;
  font-weight: 700;
  color: #2d3a4b;
  border-bottom: 2px dashed #ff6f61;
  padding: 0.5em 0;
  margin: 1.8em 0 1em;
  background: none; /* 旧デザインの背景色をリセット */
}

/* 小見出し(h5) */
.entry-content h5 {
  font-size: 20px;
  font-weight: 700;
  color: #2d3a4b;
  border-left: 4px solid #2d3a4b;
  padding: 0.2em 0 0.2em 0.6em;
  margin: 1.5em 0 0.8em;
  background: none; /* 旧デザインの背景色をリセット */
}

.entry-content h3,
.entry-content h4,
.entry-content h5 {
  color: #1a1a1a;
}


/* ==== 本文テキスト 2026年基準・ウェブサイト風 ==== */
.entry-content {
  font-family: "Zen Kaku Gothic New", "Noto Sans JP", -apple-system,
    BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
}

.entry-content p {
  font-size: 16px;
  line-height: 1.8;
  color: #333333;
  letter-spacing: 0.02em;
}



.subscribe-button {
  margin: 1em 0;
}
.subscribe-button a {
  display: inline-block;
  margin: 0 auto;
  width: 100%;
  max-width: 300px;
  line-height: 38px;
  text-decoration: none;
  text-align: center;
  color: #fff;
  background-color: #eb4c5e; 
  box-shadow: 0 4px #da253a; 
  border-radius: 4px;
  transition: all .3s;
}
.subscribe-button a:hover {
  transform: translateY(4px);
  box-shadow: 0 0 #999;
}


/** あわせて読みたい囲み枠 */
.emphasize-link-tab {
  position: relative;
  margin: 36px 0 16px;
  padding: 18px 34px 18px 14px;
  border: 2px solid #df8182;
  border-radius: 8px;
  background-color: #fffbf5;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  box-shadow: 0 2px 6px rgba(223, 129, 130, 0.15);
}
.emphasize-link-tab:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(223, 129, 130, 0.3);
  background-color: #fff4ec;
}
.emphasize-link-tab::before {
  font-family: FontAwesome;
  position: absolute;
  top: -12px;
  left: 10px;
  padding: 0 10px 0 26px;
  content: "あわせて読みたい";
  background-color: #df8182;
  border-radius: 10px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
}
.emphasize-link-tab::after {
   position: absolute;
  top: -16px;
  left: 4px;
  width: 28px;
  height: 28px;
  background-color: #df8182;
  border-radius: 14px;
  line-height: 25px;
  text-align: center;
  content: "\f010";
  font-size: 18px;
  font-family: "blogicon";
  color: #fff;
}
.emphasize-link-tab a {
  display: block;
  font-weight: bold;
  font-size: 15px;
  line-height: 1.6;
}
.emphasize-link-tab a::after {
  font-family: FontAwesome;
  content: "\f08e";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  color: #0044cc; /*リンクの色と同じにする*/
  transition: transform 0.2s ease;
}
.emphasize-link-tab a:hover::after {
  color: #b22222; /*リンクにホバーしたときの色と同じにする*/
  transform: translateY(-50%) translateX(4px);
}



/** check囲み枠(立体感デザイン) */
.emphasize-check-tab {
  display: block;
  position: relative;
  background: #fff9f0;
  border: 1px solid #fbe4c8;
  border-radius: 14px;
  padding: 1.6em 1.4em 1.2em;
  margin: 2.2em 0 1.5em;
  box-shadow: 0 6px 18px rgba(238, 121, 23, 0.12);
}
.emphasize-check-tab::before {
  content: "Check!!";
  position: absolute;
  display: inline-block;
  top: -18px;
  left: 18px;
  padding: 6px 18px;
  font-size: 14px;
  font-weight: bold;
  color: #ffffff;
  background: linear-gradient(135deg, #ffb066, #ee7917);
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(238, 121, 23, 0.35);
}
.emphasize-check-tab p {
  margin: 0;
  padding: 0;
  color: #2c3e50;
  line-height: 1.8;
  font-size: 14.5px;
}


/** 点線囲み(立体感デザイン) */
.tensen-box {
  position: relative;
  background: #f8fbff;
  border: 2px dashed #a9c8ea;
  border-radius: 14px;
  padding: 1.4em 1.5em;
  margin: 2em 0;
  box-shadow: 0 6px 16px rgba(91, 139, 208, 0.1);
}
.tensen-box p {
  margin: 0;
  padding: 0;
  color: #2c3e50;
  line-height: 1.8;
  font-size: 14.5px;
}



/** ラベル付き囲み枠(タブ型) ブルー */
.box2 {
  background: #F8FAFC;
  border: 1px solid #DBEAFE;
  border-radius: 16px;
  padding: 28px 32px;
  overflow: hidden;
}
.box2 > div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #1E3A5F;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.6;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
}
.box2 > div:last-child {
  margin-bottom: 0 !important;
}
.box2 > div::before {
  content: "✓";
  color: #3B82F6;
  font-weight: 700;
  flex-shrink: 0;
  margin-right: 10px;
}


/** 囲み枠 ラベル付き 立体感デザイン(ピンク版) */
.box27 {
    position: relative;
    background: #fff6f7;
    border: 1px solid #f6dde1;
    border-radius: 14px;
    padding: 1.6em 1.4em 1.2em;
    margin: 2.2em 0 1.5em;
    box-shadow: 0 6px 18px rgba(217, 79, 100, 0.1);
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -18px;
    left: 18px;
    padding: 6px 18px;
    font-size: 15px;
    background: linear-gradient(135deg, #f5a8b6, #d9788d);
    color: #ffffff;
    font-weight: bold;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(217, 79, 100, 0.35);
}
.box27 p {
    margin: 0;
    padding: 0;
    color: #2c3e50;
    line-height: 1.8;
    font-size: 14.5px;
}





/** ポイント・メリット */
.point-blue {
  position: relative;
  background: #f7fbfd;
  border: 1px solid #e1eef4;
  border-radius: 14px;
  padding: 40px 28px 28px;
  margin: 36px 0;
  box-shadow: 0 6px 20px rgba(79, 179, 217, 0.12);
}

.point-blue .box-title {
  position: absolute;
  top: -18px;
  left: 20px;
  background: linear-gradient(135deg, #62c1ce, #4a9fc9);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  padding: 8px 20px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(79, 159, 201, 0.4);
}

.point-blue ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.point-blue li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 4px;
  margin: 0;
  line-height: 1.7;
  font-size: 15px;
  color: #2c3e50;
}

.point-blue li + li {
  border-top: 1px dashed #dceaf1;
}

.point-blue li::before {
  content: "✓";
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #62c1ce;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 50%;
  box-shadow: 0 2px 5px rgba(98, 193, 206, 0.5);
}


/** 囲み枠 チェックリスト型 ピンク(デメリット用) */
.point-pink {
  position: relative;
  background: #fff7f7;
  border: 1px solid #f5dede;
  border-radius: 14px;
  padding: 40px 28px 28px;
  margin: 36px 0;
  box-shadow: 0 6px 20px rgba(217, 79, 100, 0.1);
}

.point-pink .box-title {
  position: absolute;
  top: -18px;
  left: 20px;
  background: linear-gradient(135deg, #e8899a, #d94f64);
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  padding: 8px 20px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(217, 79, 100, 0.4);
}

.point-pink ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.point-pink li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 4px;
  margin: 0;
  line-height: 1.7;
  font-size: 15px;
  color: #2c3e50;
}

.point-pink li + li {
  border-top: 1px dashed #f5dede;
}

.point-pink li::before {
  content: "✗";
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #d94f64;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 50%;
  box-shadow: 0 2px 5px rgba(217, 79, 100, 0.5);
}



.embed-card.embed-blogcard{
    max-width: 100% !important;
}



.link-btn {
    text-decoration: none!important;
    color: #fff!important;
    font-weight: bold;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 60px;
    box-shadow: 0px 8px 10px -6px rgba(0,0,0,.3);
    transition: .2s;
}
.link-btn:hover {
    box-shadow: none;
    transform: translateY(2px);
    opacity: .8;
}
/***ボタン中央寄せ用***/
.center {
    text-align: center;
    margin: 1.5em 0;
}
/***ボタン背景色***/
.ao {
    background: #6b6be2;
}
.midori {
    background: #6be292;
}
.pink {
    background: pink;
}
.g-ao {
    background: linear-gradient(45deg, #007adf, #00ecbc);
}
.g-midori {
    background: linear-gradient(45deg, #9ae25b, #00c1e3);
}
.g-pink {
    background-image: linear-gradient(45deg, #ff6e87, #fcc951);
}




/** (角丸・薄ピンク背景・グレー) ピンク */
.box3 {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-weight: bold;
    color: #565656;/*文字色*/
    background: #ffeaea;
    border: solid 3px #565656;/*線*/
    border-radius: 10px;/*角の丸み*/
}
.box3 p {
    margin: 0; 
    padding: 0;
}




/* Smoothテーマ用：表を横スクロールさせる設定 */
.scroll-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 20px 0;
}
.scroll-table table {
    width: 100%;
    min-width: 600px; /* 横スクロールを強制 */
    border-collapse: collapse;
    background-color: #fff !important;
    color: #333 !important;
}
.scroll-table th, .scroll-table td {
    border: 1px solid #ddd;
    padding: 10px;
    white-space: nowrap;
}



/* 投稿日（元々の右上の日付）を完全に隠す */
.date.entry-date {
    display: none !important;
}

/* 公式の更新日（チェックを入れると出るもの）を記事タイトル付近に表示 */
.last-updated {
    display: block !important; /* ブロック化して位置を安定させる */
    margin-bottom: 10px;       /* タイトルとの隙間 */
    color: #666;
    font-size: 14px;
    font-weight: bold;
}

.last-updated::before {
    content: "🔄 更新日："; /* アイコンを付与 */
    margin-right: 5px;
}

/* もし投稿日の場所に更新日を表示したい場合は、以下の設定を有効にします */
.entry-header .last-updated {
    text-align: left;
}



/* ========================================
   アフィリエイトボタン共通設定
   (Agoda / Amazon / 共通) 260423
======================================== */

/* 1. 共通構造：無駄を削ぎ落とし高さを圧縮 */
.btn-orange, .btn-red, .btn-no-flame {
  text-align: center !important;
  margin: 18px 0 !important;
  box-sizing: border-box !important;
  display: block !important;
}

.promo-top {
  display: block !important;
  font-weight: bold !important;
  font-size: 15px !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.2 !important;
}

.note-bottom {
  display: block !important;
  font-size: 11px !important;
  margin: 6px 0 0 0 !important;
  color: #666 !important;
  line-height: 1.2 !important;
}

/* ボタン本体の共通デザイン */
.btn-orange a, .btn-red a, .btn-no-flame a {
  display: block !important;
  width: 100% !important;
  max-width: 400px !important;
  margin: 0 auto !important;
  padding: 13px 20px !important; /* 高さを抑えつつ押しやすく */
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 6px !important;
  font-weight: bold !important;
  font-size: 19px !important;
  box-shadow: 0 3px 0 rgba(0,0,0,0.1) !important; /* 自然な立体感 */
  transition: all 0.2s ease !important;
}

/* ホバー時の挙動（共通） */
.btn-orange a:hover, .btn-red a:hover, .btn-no-flame a:hover {
  opacity: 0.9 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 5px 10px rgba(0,0,0,0.15) !important;
}

/* ----------------------------------------
   2. 各パターンの個別デザイン
---------------------------------------- */

/* 【btn-orange】オレンジ・枠あり（Amazon/物販向き） */
.btn-orange {
  padding: 10px !important;
  background: #fff9f0 !important; /* 温かみのある背景 */
  border: 2px solid #ff6b35 !important;
  border-radius: 8px !important;
}
.btn-orange .promo-top { color: #ff6b35; }
.btn-orange a { background-color: #ff6b35 !important; }

/* 【btn-red】赤・枠なし（Agoda/旅行向き） */
.btn-red {
  padding: 0 !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
}
.btn-red .promo-top { color: #d4145a; }
.btn-red a { background-color: #d4145a !important; }


/* 【btn-no-flame】オレンジ・枠なし長方形（究極にシンプル） */
.btn-no-flame {
  padding: 0 !important; /* 枠がないため余白ゼロ */
}
.btn-no-flame .promo-top { color: #ff6b35; margin-bottom: 8px !important; }
.btn-no-flame a {
  background-color: #ff6b35 !important;
  border-radius: 4px !important; /* 長方形らしさを出すため角丸を控えめに */
}

/* 前回の設定にこれを追加 */
.btn-orange a, .btn-red a, .btn-no-flame a {
    text-decoration: none !important; /* 下線を消す */
    display: block !important;       /* ボタン全体をクリック可能にする */
    width: 100%;
}

/* 画像は引き続き非表示 */
.btn-orange img, .btn-red img, .btn-no-flame img { 
    display: none !important; 
}

/* ========================================
   映画まとめ記事：カード型デザイン(統合・最終版)
======================================== */

/* 映画1本を包むカード外枠 */
.movie-card {
    margin-top: -12px;
    margin-bottom: 50px;
    padding: 0;
    background: #f8f8f8;
    border: 1px solid #ddd;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
    overflow: hidden;
}

/* 中見出し(ピンク・カード上部密着) 使用：<span class="movie-subtitle"> */
.movie-subtitle:not(.loc-style) {
    display: block;
    position: relative;
    margin: 0 0 20px 0;
    padding: 20px 15px;
    background: #ffffff;
    border: none;
    border-bottom: 6px solid #ff4d79;
    color: #1a1a2e;
    font-size: 20px;
    font-weight: 900;
    text-align: center;
    line-height: 1.5;
    background-image: none;
    border-radius: 0;
}
.movie-subtitle:not(.loc-style)::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -10px;
    border: 10px solid transparent;
    border-top: 10px solid #ff4d79;
    display: block;
}

/* 小見出し(ロケ地見出し・オレンジ グラデーションラベル) 使用：<span class="movie-subtitle loc-style"> */
.movie-subtitle.loc-style {
    display: block;
    width: fit-content;
    max-width: 90%;
    margin: 20px auto 24px;
    padding: 10px 28px;
    background: linear-gradient(135deg, #ffb066, #ee7917);
    color: #ffffff;
    border: none;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(238, 121, 23, 0.3);
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    letter-spacing: 0.03em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    position: relative;
    top: 0;
    transition: none;
}
.movie-subtitle.loc-style::after {
    display: none;
}

/* アフィリエイト画像：中央寄せと角丸 */
.movie-poster {
    text-align: center;
    margin-bottom: 20px;
}
.movie-poster img {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* あらすじ：映画フィルムのパーフォレーション風 */
.movie-story {
    background: #f9f9f9;
    padding: 1.5em;
    border-top: 2px dashed #ccc;
    border-bottom: 2px dashed #ccc;
    margin: 20px 0;
    position: relative;
}
.movie-story::before {
    content: "STORY";
    font-size: 10px;
    font-weight: bold;
    color: #999;
    letter-spacing: 0.2em;
}

/* ロケ地セクション：ガイドブック風デザイン */
.movie-location {
    margin: 8px 0 25px;
}
.movie-location .loc-header {
    font-weight: bold;
    color: #fff;
    background: #4a90e2;
    display: inline-block;
    padding: 3px 15px;
    border-radius: 4px;
    font-size: 14px;
    margin-bottom: 15px;
}

/* 各スポットの塊 */
.loc-spot {
    margin-bottom: 15px;
    padding-bottom: 12px;
    border-bottom: 1px dashed #d1e3f7;
}
.loc-spot:last-child { border-bottom: none; }

/* スポット名 */
.loc-name {
    display: block;
    font-size: 17px;
    font-weight: bold;
    color: #1a1a2e;
    margin-bottom: 8px;
    border-left: 5px solid #4a90e2;
    padding-left: 10px;
}

/* スポットの紹介文 */
.loc-description {
    font-size: 14px;
    color: #444;
    line-height: 1.7;
    margin-bottom: 12px;
}

/* 詳細データ(住所・アクセスなど、目立たせ版) */
.loc-data {
    background: #f0f7ff;
    padding: 14px 16px;
    border-radius: 6px;
    font-size: 14.5px;
    color: #2c3e50;
    font-weight: 600;
    list-style: none;
    margin: 0;
}
.loc-data li {
    margin-bottom: 6px;
    padding-left: 1.2em;
    position: relative;
    border-bottom: none;
}
.loc-data li::before {
    content: "・";
    position: absolute;
    left: 0;
    color: #4a90e2;
    font-weight: bold;
}

/* 映画のポイント：チェックリスト風 */
.movie-points {
    background: #fff9f0;
    border-radius: 8px;
    padding: 15px;
    margin: 20px 0;
}
.movie-points .point-head {
    font-weight: bold;
    color: #ff9500;
    font-size: 15px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
}
.movie-points .point-head::before {
    content: "★";
    margin-right: 5px;
}


/* ========================================
   ゾノ旅 モダンデザインCSS(国別まとめ記事用)
   カラー：ネイビー(#2d3a4b)+コーラル(#ff6f61)+ソフトグレー背景
======================================== */

/* ---- 1. 導入リード文ボックス ---- */
.fz-lead {
    background: linear-gradient(135deg, #eef6f6 0%, #fdf4f0 100%);
    border-radius: 18px;
    padding: 1.6em 1.6em;
    margin: 1.5em 0 2.5em;
    font-size: 15.5px;
    line-height: 1.9;
    color: #2d3a4b;
}
.fz-lead p { margin: 0 0 0.8em; }
.fz-lead p:last-child { margin-bottom: 0; }

/* ---- 2. クイックファクト(基本情報を一目で) ---- */
.fz-quickfacts {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 2em 0;
}
.fz-quickfacts .fact {
    flex: 1 1 150px;
    background: #ffffff;
    border: 1px solid #eee;
    border-radius: 14px;
    box-shadow: 0 6px 16px rgba(45,58,75,0.06);
    padding: 14px 16px;
}
.fz-quickfacts .fact .label {
    display: block;
    font-size: 12px;
    color: #ff6f61;
    font-weight: bold;
    margin-bottom: 4px;
    letter-spacing: 0.05em;
}
.fz-quickfacts .fact .value {
    display: block;
    font-size: 16px;
    font-weight: bold;
    color: #2d3a4b;
}

/* ---- 3. モデルコース ステップカード ---- */
.fz-step {
    position: relative;
    background: #ffffff;
    border-left: 5px solid #ff6f61;
    border-radius: 0 14px 14px 0;
    padding: 1em 1.2em;
    margin: 1.2em 0;
    box-shadow: 0 6px 16px rgba(45,58,75,0.05);
}
.fz-step .step-num {
    display: inline-block;
    background: #2d3a4b;
    color: #fff;
    font-weight: bold;
    font-size: 13px;
    padding: 2px 12px;
    border-radius: 20px;
    margin-bottom: 8px;
}
.fz-step p { margin: 0.3em 0 0; line-height: 1.8; }

/* ---- 4. 公式情報カード(外務省・大使館など) ---- */
.fz-official {
    background: #eef4fb;
    border: 1px solid #cfe0f5;
    border-radius: 14px;
    padding: 1.2em 1.4em;
    margin: 1.5em 0;
    position: relative;
}
.fz-official::before {
    content: "公式情報";
    display: inline-block;
    background: #3a6ea5;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    padding: 3px 12px;
    border-radius: 20px;
    margin-bottom: 10px;
}
.fz-official p { margin: 0.5em 0 0; line-height: 1.8; }
.fz-official a { color: #3a6ea5; font-weight: bold; }


/* ---- 5. 注意・安全情報カード(立体感デザイン) ---- */
.fz-warning {
    position: relative;
    background: #fff8ec;
    border: 1px solid #f3d9a0;
    border-radius: 14px;
    padding: 1.8em 1.4em 1.2em;
    margin: 2.2em 0 1.5em;
    box-shadow: 0 6px 18px rgba(232, 161, 60, 0.15);
}
.fz-warning .fz-warning-title {
    position: absolute;
    display: inline-block;
    top: -18px;
    left: 18px;
    padding: 8px 20px;
    font-size: 18px;
    background: linear-gradient(135deg, #f5c374, #e8a13c);
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(232, 161, 60, 0.4);
}
.fz-warning p {
    margin: 0.5em 0 0;
    line-height: 1.8;
}


/* ---- 6. テーブル(費用・スケジュール比較) ---- */
.fz-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 1.8em auto;
    border-radius: 14px;
    box-shadow: 0 6px 16px rgba(45,58,75,0.06);
    max-width: 100%;
    width: fit-content; /* 追加：コンテンツの幅に合わせる */
    margin-left: auto;
    margin-right: auto;
}
.fz-table-wrap table {
    width: 100%;
    min-width: 480px;
    border-collapse: collapse;
    background: #fff !important;
    margin: 0 auto;
}
.fz-table-wrap th {
    background: #2d3a4b !important;
    color: #fff !important;
    padding: 12px;
    font-size: 14px;
}
.fz-table-wrap td {
    padding: 12px;
    border-bottom: 1px solid #eee;
    font-size: 14px;
    color: #333 !important;
}
.fz-table-wrap tr:last-child td { border-bottom: none; }


/* ==== 記事内テーブル ポップ立体デザイン(修正版) ==== */
.entry-content table {
  width: 100% !important;
  max-width: 100%;
  margin: 2em auto !important;
  table-layout: auto;
  border-collapse: separate;
  border-spacing: 0;
}

.entry-content table th,
.entry-content table td {
  padding: 13px 16px;
  vertical-align: middle;
  overflow-wrap: break-word;
}

.entry-content table th {
  background: linear-gradient(135deg, #6fd3e8, #4fb3d9);
  color: #ffffff;
  font-size: 14.5px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.03em;
  text-shadow: 0 1px 2px rgba(0,0,0,0.1);
  white-space: nowrap;
}

.entry-content table td {
  font-size: 14px;
  color: #333;
  background: #ffffff;
  border-bottom: 2px dashed #eaf6fa;
  text-align: center;
}

.entry-content table tr:nth-child(even) td {
  background: #f0fbff;
}

.entry-content table tr:hover td {
  background: #fff4d6;
  transition: background 0.2s ease;
}

.entry-content table td:first-child {
  font-weight: 900;
  color: #2c8fb5;
  white-space: nowrap;
}

.entry-content table tr:first-child th:first-child {
  border-top-left-radius: 18px;
}
.entry-content table tr:first-child th:last-child {
  border-top-right-radius: 18px;
}
.entry-content table tr:last-child td {
  border-bottom: 6px solid #bfe3ef;
}
.entry-content table tr:last-child td:first-child {
  border-bottom-left-radius: 18px;
}
.entry-content table tr:last-child td:last-child {
  border-bottom-right-radius: 18px;
}


/* ---- 7. FAQカード ---- */
.fz-faq {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 14px;
    padding: 1.1em 1.3em;
    margin: 1em 0;
    box-shadow: 0 6px 16px rgba(45,58,75,0.05);
}
.fz-faq .q {
    display: flex;
    align-items: flex-start;
    font-weight: bold;
    color: #2d3a4b;
    font-size: 15.5px;
    margin: 0 0 8px;
}
.fz-faq .q::before {
    content: "Q";
    background: #ff6f61;
    color: #fff;
    font-weight: bold;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    min-width: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    font-size: 13px;
}
.fz-faq .a {
    display: flex;
    align-items: flex-start;
    line-height: 1.8;
    color: #444;
    font-size: 14.5px;
    margin: 0;
}
.fz-faq .a::before {
    content: "A";
    background: #2d3a4b;
    color: #fff;
    font-weight: bold;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    min-width: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    font-size: 13px;
}

/* ---- 8. ポイント強調(小さめの一言メモ) ---- */
.fz-point {
    background: #f4f9f4;
    border-left: 5px solid #5fb87b;
    border-radius: 0 10px 10px 0;
    padding: 0.8em 1.1em;
    margin: 1.3em 0;
    font-size: 14.5px;
    line-height: 1.8;
    color: #2d3a4b;
}




/* ==== 目次 外枠・帯デザイン ==== */
.entry-content ul.table-of-contents {
  position: relative;
  display: block;
  background: #ffffff;
  border: 1px solid #eee;
  border-radius: 14px;
  padding: 0 0 4px;
  margin: 32px 0;
  overflow: hidden;
  box-shadow: 0 6px 16px rgba(45, 58, 75, 0.08);
}

.entry-content .table-of-contents li {
  list-style: none;
  line-height: 1.8;
  font-size: 14.5px;
}

.entry-content .table-of-contents > li {
  margin: 2px 0;
}

.entry-content .table-of-contents a {
  color: #2c3e50;
  text-decoration: none;
  border-bottom: 1px dashed transparent;
  transition: border-color 0.2s, color 0.2s;
}

.entry-content .table-of-contents a:hover {
  color: #ff6f61;
  border-bottom: 1px dashed #ff6f61;
}







