@import url("http://fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic");
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
  list-style: none;
}
fieldset,
img {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  overflow: hidden;
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}
:focus {
  outline: 0;
}
ins {
  text-decoration: none;
}
del {
  text-decoration: line-through;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  background-color: transparent;
}
header,
nav,
hgroup,
footer,
section,
article,
aside {
  display: block;
}
.clear {
  height: 0;
  line-height: 0;
  clear: both;
}
.left {
  text-align: left;
  float:left;
}
.center {
  text-align: center;
}
.right {
  text-align: right;
  float: right;
}
.alt {
position:absolute;
top:-5000px;
left:-999px;
}

body {
  color: #FFF;
  font-size: 13px;
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', sans-serif;
  background: url(//bfile.shinobi.jp/6949/bg.jpg) center -5px no-repeat, #071822;
  background: url(//bfile.shinobi.jp/6949/bg.jpg) center -5px no-repeat \8;
  background-attachment: fixed;
  background-size: 100% auto !important;
}
a:link,
a:visited {
  color: #FF9;
  outline: none;
  text-decoration: none;
}
a:hover,
a:active {
  color: #FFF;
  text-decoration: underline;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  opacity:0.8;
  filter:alpha(opacity=80);
  -ms-filter: "alpha( opacity=80 )";
}
::-moz-selection,
::selection {
  background: #2EA9DF;
  color: #333333;
}
strong,
b {
  font-weight: bold;
}
input,
textarea {
  padding: 3px;
  border: 1px solid #CCCCCC;
  background: #FFF;
  color: #666666;
}
input:hover,
textarea:hover,
input:focus,
textarea:focus {
  -webkit-box-shadow: 0px 0px 4px #955251;
  -moz-box-shadow: 0px 0px 4px #955251;
  box-shadow: 0px 0px 4px #955251;
  border: 1px solid #955251;
}
#MainBlock {
  margin: 0 auto;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  width: 1000px;
}
#EntryListBlock {
  margin: 0 10px 20px 0;
  float: left;
  width: 685px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
#EntryListBlock header{
background: rgba(0, 0, 0, 0.3);
}
.EntryTextBox {
  width: 645px;
  margin: 10px 10px 0;
  padding: 15px;
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  position: relative;
}
.EntryTextBox:nth-last-of-type(1) {
  margin: 10px;
}
.EntryDivide {
  border: 0;
  height: 1px;
  margin: 20px 10px;
  background-color: #CCCCCC;
}
.EntryDivide:nth-last-of-type(1) {
  display: none;
}
#PluginBlock {
  width: 300px;
  margin: 0;
  float: right;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  overflow: hidden;
}
#PluginBlock2 {
  width: 220px;
  margin: 0 5px 0 0 ;
  float: right;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  overflow: auto;
}
#PluginBlock2 .blogsearch {
}
#PluginBlock2 .PluginTitle {
line-height: 1.2;
margin: 5px 0 0 0;
color: #FFF;
font-size: 88%;
}
#PluginBlock2 .PluginContents{
line-height: 1.5;
font-size: 11px;
}

.ninja-recommend-block .vertical .ninja-recommend-article-title {
font-size: 12px;
margin: 0 0 0 -2px;
}
 #PluginBlock3 {
  width: 728px;
  height:90px;
  position:absolute;
  top:10px;
  left:50%;
  overflow: hidden;
  border: 1px solid #FFF;
  margin: 0 0 0 -200px;
}
#PluginBlock3 .PluginContents{
  margin: -15px 0 0 -5px;
}
#PluginBlock3 .PluginContents .ninja-recommend-article-title{
color: #FFF !important;
padding:5px 0 0;
}
#PluginBlock4 {
  background-color: #FFF;
width:auto;
height:auto;
max-height:180px;
font-size: 12px;
overflow-x: hidden;
overflow-y: auto;
padding:0;
margin:0 0 5px;
}
#PluginBlock4 li{
width:31%;
float:left;
text-align: left;
overflow: hidden;
height:1.85em;
white-space: normal !important;
word-break: keep-all;
text-overflow: ellipsis !important;
-webkit-text-overflow: ellipsis !important;
-o-text-overflow: ellipsis !important;
margin: 0 0 5px 15px !important;
padding:0 0 3px;
}
#PluginBlock4 a{
color: #333;
text-decoration: none;
margin:0 0 0 1.5%;
display:inline-block;
background: url(//bfile.shinobi.jp/6946/icon_arrow_smap.png) -2px -1px no-repeat;
text-indent: 4px;
}
#PluginBlock4 span{
text-decoration: none;
padding:0 0 0 10px;
}
#PluginBlock4 .ninja-recommend .social-count{
min-width: 4%;
padding:0 0 0 10px;
}
#PluginBlock4 .trademark{
top:0px;
}
#PluginBlock4 .ninja-recommend li.ninja-recommend-article{
border-bottom: 1px dotted #CCC;
}
#PluginBlock4 .ninja-recommend-article-title{
line-height: 2.1;
margin: -4px 0 0;
}

#PluginBlock5 {
margin: 20px 0 5px;
border-top: 1px solid #ddd;
}
#PluginBlock5 .PluginTitle{
margin: 10px 0 0;
}

#PluginLayout,
#PluginLayout2 {
  margin: 0 auto;
}
.PluginInnerBlock {
  width: 276px;
  margin: 10px 0 15px;
  padding: 5px 12px;
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
}
.PluginInnerBlock:nth-last-of-type(1) {
  margin: 10px auto;
}
.PluginInnerBlock2 {
  width: 196px;
  margin: 10px 0 15px;
  padding: 5px 12px;
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
}
.PluginInnerBlock2:nth-last-of-type(1) {
  margin: 10px auto;
}
aside a:hover, a:active {
 color: #03D;
}
header {
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
  color: #FFF;
  position: relative;
}
.header_wrapper {
  width: 950px;
  padding: 190px 0 110px;
  margin: 0 auto;
  text-align: center;
}
.header_wrapper #BlogTitle{
  width: 100%; font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}
#BlogTitle a{
  width: auto;
  display: block;
  margin: 0 auto;
}
header #BlogTitle a:link,
header #BlogTitle a:visited {
  font-weight: bold;
  font-size: 18px;
  text-decoration: none;
  color: #FFF;
  line-height: 1.8;
  width: auto;
  margin: 0 auto 5px;
  padding: 10px;
  word-break: break-all;
}
header #BlogExplanation {
  font-size: 11px;
  color: #FFF;
  text-align: center;
  width: 100%;
}
nav {
  text-align: center;
  padding: 5px 10px;
}
nav ul {
}
nav li {
  display: inline;
  margin: 0 0.5em 0 0;
}
nav a {
  padding: 0.3em 12px;
  text-decoration: none;
}
#MenuPage, #MenuCategory {
  background: rgba(0, 0, 0, 0.4);
  margin: 0;
  padding: 8px 0;
}
#MenuPage a {
  color: #FFF;
  font-size: 12px;
}
#MenuPage a.current,
#MenuPage a:focus,
#MenuPage a:hover,
#MenuPage a:active {
  color: #BB5C61;
  background: #955251;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
#MenuCategory {
  margin: 0;
}
#MenuCategory a {
  color: #99D;
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
  font-size: 88%;
margin: 0 5px 20px 0;
white-space: nowrap;
line-height: 2.5;
}
#MenuCategory a.current,
#MenuCategory a:focus,
#MenuCategory a:hover,
#MenuCategory a:active {
  color: #FFF;
  background: url(//temple01rcm.iku4.com/File/stripesblack.png) center 0 repeat;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
#Breadcrumbs {
  color: #99D;
  width:960px;
  margin: 10px auto 0;
}
#Breadcrumbs a {
  color: #99D;
  padding: 5px 10px;
}
.EntryTextBox header {
  margin: 0 0 10px 0;
}
.EntryTextBox header .EntryTitle {
  margin: 0 0 8px 0;
  padding: 10px 5px 0 10px;
  font-size: 115%;
  line-height: 1.4;
  font-weight: bold;
}
.EntryWriteDate{
background: #ff3366;
position: absolute;
top: 15px;
left: -53px;
padding: 10px;
font-size: 10px;
font-weight: bold;
text-align: center;
}
.EntryWriteDate a{
color: #FFF !important;
}
.EntryTextBox header .EntryTitle a {
}
.EntryTextBox header .EntryTitle a:link,
.EntryTextBox header .EntryTitle a:visited {
  color: #FFF;
}
.EntryTextBox header .EntryTitle a:hover {
}
.EntryTextBox header ul {
  margin: 0;
  text-align: right;
}
.EntryTextBox header li {
  display: inline-block;
  margin: 0 10px;
  font-size: 82%;
  font-style: oblique;
  color: #FFF;
}
.EntryTextBox header li a:link,
.EntryTextBox header li a:visited {
  text-decoration: underline;
  color: #FFF;
}
.EntryTextBox header .EntryCategory:before {
  content: "Category:";
}
.EntryTextBox header .EntryWriteDate:before {
  content: "Date:";
}header .ninja-recommend-article-content{
  color: #FFF;
}
.EntryTextBox .EntryPsText {
  margin: 2em 0;
  text-align: right;
}
.EntryTextBox .EntryPsText a {
  color: #333333;
  text-decoration: underline;
}
.EntryTextBox .EntryPsText:before {
  padding: 0 10px 0 0;
  text-decoration: none;
}
.entryText {
  color: #FFF;
  font-size: 13px;
  line-height: 28px;
  padding:0 5px;
}
.EntryText a:link,
.EntryText a:visited {
  text-decoration: underline;
}
.EntryText img, .entryTextMain img {
  max-width: 100%;
  margin: 5px;
}
.EntryText h1,
.EntryText h2,
.EntryText h3,
.EntryText h4,
.EntryText h5,
.EntryText h6 {
  margin: 1.5em 0px 0.6em;
  padding: 0 0 0 0.5em;
  word-wrap: break-word;
  font-weight: bold;
}
.EntryText h1,
.EntryText h2 {
  font-size: 130%;
  border-left: #333333 4px solid;
}
.EntryText h3 {
  font-size: 120%;
}
.EntryText h4 {
  font-size: 100%;
  font-style: italic;
}
#PluginBlock h4, #PluginBlock2 h4 {
  font-size: 13px;
}
.EntryText h5 {
  font-size: 100%;
  font-style: italic;
}
.EntryText h6 {
  font-size: 100%;
  font-style: italic;
}
.EntryText p {
  margin: 0.7em 0 1.5em 0.5em;
}
.EntryText mark {
  background: #2EA9DF;
  color: #333333;
  padding: 0 0.2em;
}
.EntryText table {
  width: 100%;
  border: 1px solid #CCCCCC;
  border-collapse: collapse;
  border-spacing: 0;
  text-align: center;
}
.EntryText table th,
.EntryText table td,
.EntryText table caption {
  padding: 2%;
}
.EntryText table th {
  padding: 5px;
  border: 1px solid #CCCCCC;
  border-width: 0 0 1px 1px;
  font-weight: bold;
  text-align: center;
}
.EntryText table td {
  padding: 5px;
  border: 1px solid #CCCCCC;
  border-width: 0 0 1px 1px;
  text-align: center;
}
.EntryText ul,
.EntryText ol,
.EntryText dl {
  margin: 0.8em 1.2em;
}
.EntryText ul li {
  list-style: disc inside;
  margin: 0 0 0.3em 0;
}
.EntryText ol li {
  list-style: decimal inside;
  margin: 0 0 0.3em 0;
}
.EntryText dl dt {
  font-weight: bold;
  margin: 0 0 0.5em 0;
}
.EntryText dl dd {
  margin: 0 0 0.8em 0.5em;
}
.EntryText blockquote {
  background-color: #EEEEEE;
  color: #333333;
  padding: 10px;
  border-left: 3px solid #CCCCCC;
  font-size: 90%;
  font-style: italic;
}
.EntryText blockquote cite {
  color: #666666;
}
.EntryText pre {
  background-color: #EEEEEE;
  padding: 10px;
  font-size: 90%;
}
.EntryText hr {
  border: 0;
  height: 1px;
  margin: 2em auto;
  background-color: #CCCCCC;
}
.entryPsLink{
  margin: 10px 0 0;
}
.entryPsLink a{
  padding: 5px 10px;
  background-color: #000;
}
.NinjaClap {
  padding: 1em 0 0;
}
.NinjaClap .NinjaClap a img {
  margin: 0 0.5em;
  vertical-align: middle;
  width: 80px;
}
#CommentBlock {
  margin: 2em 0 0;
}
#CommentBlock .CommentMenuTitle {
  font-weight: bold;
  text-decoration: none;
  margin: 0 0 10px;
  padding: 6px 8px 4px;
  background: #000;
}
.CommentTextBox {
  margin: 0 0 1em;
  padding: 0.5em 0 1.5em 0;
  border-bottom: 1px solid #CCCCCC;
}
.CommentTextBox header {
  margin: 0;
}
.CommentTextBox header ul {
  margin: 0;
  text-align: right;
}
.CommentTextBox header ul li {
  display: inline-block;
  margin: 0 0 0 10px;
  font-style: italic;
  font-size: 90%;
}
.CommentTextBox .CommentTitle, .CommentResBox .CommentResTitle{
    padding: 8px 10px 5px;
}
.CommentResBox {
  margin: 1em 0 0 1em;
  padding: 0.5em 0 0.5em 1em;
  border-left: 3px solid #CCCCCC;
}
.CommentTitle,
.CommentResTitle {
  padding: 0.3em 0.2em 0 0;
  font-weight: bold;
  line-height: 1.4;
}
.CommentText,
.CommentResText {
  padding: 0.5em 0;
  line-height: 1.4;
}
.CommentText * {
  line-height: 1.4;
  font-size: 90%;
}
.CommentText span{
  color: #FFF !important;
}
.CommentFormBlock ul {
  margin: 3px 0;
}
.CommentFormBlock ul li {
  padding: 0.5em 0em;
  text-align: left;
  vertical-align: middle;
  font-size: 80%;
}
.CommentFormBlock ul li .CommentForms {
  width: 180px;
  margin: 0 5px 0 0;
}
.CommentFormBlock ul li textarea.CommentForms {
  resize: none;
  width: 270px;
}
.CommentFormBlock ul li .CommentForms_pass {
  width: 150px;
  margin: 0 5px 0 0;
}
.CommentFormBlock .CommentFormSubmit {
  clear: both;
  padding: 1em 0;
}
.CommentFormBlock .CommentFormSubmit input {
  padding: 0.5em 1em;
  background: #333333;
  cursor: pointer;
  color: #FAFAFA;
}
.CommentFormBlock .CommentFormSubmit input:hover {
  background: #2EA9DF;
  color: #333333;
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  -ms-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.CommentBlock.edit {
  margin: 2em auto;
  padding: 2em;
  width: 280px;
}
#PageLinkBlock {
  margin: 20px auto 0;
}
#PageLinkBlock ul {
  text-align: center;
}
#PageLinkBlock ul li {
  display: inline;
  margin: 0;
}
#PageLink10Block {
  margin: 20px auto 30px;
}
#PageLink10Block #PageLink10 {
  width: auto;
  text-align: center;
  text-indent: center;
  font-family: Tahoma, Arial, Helvetica, sans-serif;
}
#PageLink10Block #PageLink10 li {
  margin: 5px;
  font-weight: bold;
  display: inline;
}
#PageLink10Block #PageLink10 li a,
#PageLink10Block #PageLink10 li span {
  background: #333333;
  padding: 5px 8px;
  font-weight: normal;
  text-decoration: none;
  color: #FAFAFA;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
#PageLink10Block #PageLink10 li span {
  background: #2EA9DF;
  color: #333333;
}
#PageLink10Block #PageLink10 li a:focus,
#PageLink10Block #PageLink10 li a:hover,
#PageLink10Block #PageLink10 li a:active {
  background: #2EA9DF;
  color: #333333;
}
.PluginTitle {
  line-height: 1.5;
  font-size: 105%;
  font-weight: bold;
  margin: 5px 0;
}
#PluginBlock .PluginTitle{
  padding: 0 0 3px 0;
  border-bottom: 1px solid #DEDEDE;
  color: #FFF;
  font-size: 88%;
}
#PluginBlock  .ninja-recommend{
  margin: 0 0 0 -3px;
}
.PluginExplanation {
  line-height: 1.5;
}
.PluginContents {
  padding: 5px 5px 0 0;
  line-height: 1.5;
  font-size: 11px;
}
.PluginContents li {
  line-height: 1.5;
}
.PluginContents .plugin_data {
  padding: 0 0 5px;
}
.PluginContents .plugin_data * {
  line-height: 1.4;
}
.PluginContents .plugin_data_date {
  text-align: right;
}
.plugin_data .left{
  float: none;
}
.CalendarMoveTable {
  margin: 0 auto;
  width: 100%;
}
.CalendarMoveTable td {
  height: 2em;
  text-align: center;
  vertical-align: middle;
}
.CalendarMoveTable td a:link,
.CalendarMoveTable td a:visited,
.CalendarMoveTable td a:hover {
  text-decoration: none;
}
.CalendarMoveTable .CalendarPrevTd a {
  padding-left: 1.5em;
}
.CalendarMoveTable .CalendarPrevTd a:before {
  padding: 0 10px 0 0;
}
.CalendarMoveTable .CalendarNextTd a {
  padding-right: 1.5em;
}
.CalendarMoveTable .CalendarNextTd a:after {
  padding: 0 0 0 10px;
}
.CalendarTable {
  margin: 0 auto;
  width: 100%;
}
.CalendarTable th,
.CalendarTable td {
  height: 2.5em;
  border: 1px solid #CCCCCC;
  text-align: center;
  vertical-align: middle;
}
.CalendarTable .CalendarWdayTr .CalendarWdaySat,
.CalendarTable .CalendarWdayTr .CalendarWday,
.CalendarTable .CalendarWdayTr .CalendarWdaySun {
  text-align: center;
  font-weight: bold;
}
.CalendarTable .CalendarTr .CalendarTd,
.CalendarTable .CalendarTr .CalendarTdSat,
.CalendarTable .CalendarTr .CalendarTdSun {
  text-align: center;
}
.CalendarTable .CalendarTdLink a {
  padding: 4px 0;
  display: block;
  text-align: center;
  color: #2EA9DF;
}
.CalendarTable .CalendarTdLink a .CalendarTdLinkFont {
  font-weight: bold;
}
.blogsearch .box {
  width: 150px;
  padding: 3px;
}
.blogsearch .btn {
  background: #333333;
  color: #FAFAFA;
  cursor: pointer;
  padding: 3px;
  font-size: 90%;
}
.blogsearch .btn:hover {
  background: #2EA9DF;
  color: #333333;
}
.qrcode_image {
  text-align: center;
  background: rgba(0, 0, 0, 0.4);
  padding: 10px 0 8px;
}
footer {
  margin: 10px auto 0;
  padding: 30px 10px;
  background: rgba(0, 0, 0, 0.3);
}
footer ul {
  text-align: center;
}
footer li {
  display: block;
  width: 100%;
  padding: 7px 0 0;
  font-size: 90%;
  color: #FFF;
}
footer a {
  color: #FFF;
}

/* :::::: toggle button :::::: */
#navTgl, .open, .menu {
  display: none;
  overflow: hidden;
}

@media screen and (max-width:768px){

body {
  background: url(//bfile.shinobi.jp/6949/bg_smap.jpg) center 0 no-repeat, #001b2c;
  background-attachment: fixed;
  background-size: 100% auto !important;
}
  #MainBlock {
    width: 100%;
  }
  header {
    width: 100%;
    margin: 0;
    padding: 20px 0;
  }
  header #BlogTitle,
  header #BlogExplanation {
    width: 100%;
    margin: 0px auto;
  }
.header_wrapper{
    width: 95%; 
    height: auto;
}

/* :::::: toggle button :::::: */
#navTgl:checked ~ .contents {
  -webkit-transform: translateX(250px);
  transform: translateX(250px);
}
#navTgl {
  display: none;
  overflow: hidden;
}
label {
  cursor: pointer;
  position: fixed;
  top: 0;
  left: 0;
}
.open {
  display: block;
  z-index: 99;
  width: 50px;
  height: 50px;
  color: white;
  background-color: #ff3366;
  font-size: 2em;
  line-height: 50px;
  text-align: center;
  -webkit-transition: background-color .6s, -webkit-transform .6s;
  transition: background-color .6s, transform .6s;
}
#navTgl:checked + .open {
  display: block;
  background-color: indianRed;
  -webkit-transform: translateX(250px);
  transform: translateX(250px);
}
.close {
  pointer-events: none;
  z-index: 1;
  width: 100%;
  height: 100%;
  transition: background-color .6s;
}
#navTgl:checked ~ .close {
  pointer-events: auto;
  background-color: rgba(0,0,0,.3);
}

#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: #fff;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 2px;
  background: #fff;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -6px;
}
#panel-btn-icon:after{
  margin-top: 4px;
}

#navTgl:checked + .open  #panel-btn-icon { background: transparent;  }
#navTgl:checked + .open #panel-btn-icon:before,  #navTgl:checked + .open #panel-btn-icon:after { margin-top: 0; }
#navTgl:checked + .open #panel-btn-icon:before { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); height: 1px; }
#navTgl:checked + .open #panel-btn-icon:after { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); height: 1px;  }


/* :::::: drawer menu :::::: */
.menu {
  display: block;
  z-index: 99;
  position: fixed;
  overflow: auto;
  top: 0;
  left: 0;
  width: 230px;
  height: 100%;
  padding: 10px;
  background-color: rgba(255,255,255,0.95);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: -webkit-transform .6s;
  transition: transform .6s;
}
#navTgl:checked ~ .menu {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.menu p,
.menu li a {
  color: #666;
}
.menu p {
  font-size: 12px;
  font-weight: bold;
  padding: 10px 0 10px 10px;
  text-align: center;
  border-bottom: 1px solid #ddd;
}
.menu ul,
header nav ul {
padding: 0;
margin: 0 0 20px ;
}
.menu li {
  border-bottom: 1px solid #ddd;
  font-size: 13px;
  line-height: 1.4;
}
.menu li a,
header nav li a {
  display: block;
  padding: 1em;
  text-decoration: none;
  transition: background-color .6s;
  line-height: 1.6;
}
.menu li a:hover {
  background-color: #fff;
}

/* ナビ非表示 */
#MenuPage, #MenuCategory {
    display: none;
}
 /* */

  nav {
    padding: 5px 0;
    margin: 0 auto;
  }
  nav ul {
    width: 95%;
  }
  #Breadcrumbs {
    width: 98%;
    margin: 0px auto;
    padding: 10px 0;
  }
.EntryTextBox{
    width: 100%;
    margin: 0 !important;
    padding: 0;
}
.entryText{
    padding: 0 20px;
}
.EntryWriteDate {
    background: #2A2D8E;
    top: -35px;
    left: 0;
    z-index: 10;
}
.EntryWriteDate br{
    display: none;
}
  #EntryListBlock {
    width: 100%;
    float: none;
    margin: 10px auto;
    padding: 10px 0;
  }
  #EntryListBlock .EntryTextBox {
    width: auto;
    margin: 35px 0 0 !important;
  }
#EntryListBlock h2 a{}
  #PluginBlock{
    width: 100%;
    float: none;
    margin: 0 auto 10px;
    padding: 0 0;
  }
  #PluginBlock2{
    width: 100%;
    float: none;
    margin: 0 auto 10px;
    padding: 0 0;
  }
#PluginBlock3 {
    width: 100%;
    float: none;
    margin: 0 auto;
    padding: 0 0;
    position: relative;
    left: 0px;
  }
#PluginBlock4 li {
width: 100%;
}
#PluginBlock5{
    padding: 0 15px;
}
#PluginBlock body img,  #PluginBlock2 body img, #PluginBlock3 body img, #PluginBlock4 body img{
    margin: 0 0 0 -10px;
}
.PluginInnerBlock {
width: auto;
}
  .PluginLayout,
  .PluginLayout2 {
    width: 100%;
    margin: 0 0;
    padding: 0 0;
  }
  .PluginInnerBlock,
  .PluginInnerBlock2 {
    margin: 10px 0 30px;
  }
  .PluginInnerBlock3 {
    margin: 5px 5px 0 0;
  }
/*  .PluginInnerBlock:nth-last-of-type(1),
  .PluginInnerBlock2:nth-last-of-type(1) {
    margin: 10px 2%;
  }
*/
.PluginInnerBlock2{
width: 95%;
}
.PluginInnerBlock2 .ninja-recommend-article{
display: inline-block  !important;
width: 43%  !important;
}
  footer {
    width: 100%;
    margin: 0;
    padding: 20px 0;
  }
  img {
    max-width: 100%;
    height: auto;
    width: auto;
    margin: 0;
  }
}
@media screen and (max-width: 480px) {
  #Breadcrumbs {
    display: none;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none){
.open, .close, .menu {
  display:none !important;
}
}

/* --- 追加の微調整 --- */

/* 1. 記事の可読性を上げる（フォントサイズと行間の微調整） */
.entryText {
    font-size: 15px; /* 13pxから少し大きく */
    line-height: 1.9; /* 行間をゆったりと */
    letter-spacing: 0.03em;
}

/* 2. 記事のタイトルを強調 */
.EntryTextBox header .EntryTitle {
    font-size: 140%; /* 少し大きく */
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); /* 下線を追加 */
    padding-bottom: 15px;
}

/* 3. 画像の角を少し丸めて柔らかく */
.EntryText img {
    border-radius: 4px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
}

/* 4. 引用（blockquote）のデザインを既存のトーンに合わせる */
.EntryText blockquote {
    background-color: rgba(255, 255, 255, 0.05); /* 真っ白から半透明へ */
    color: #ddd;
    border-left: 3px solid #ff3366; /* アクセントカラーのピンクを使用 */
    margin: 20px 10px;
}

/* 5. サイドバーの各ブロックに少しだけ隙間を作る */
.PluginInnerBlock {
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: border 0.3s;
}
.PluginInnerBlock:hover {
    border: 1px solid rgba(255, 255, 255, 0.3);
}

/* 6. スクロールを滑らかに */
html {
    scroll-behavior: smooth;
}

/* --- 読みやすさ向上のための追加設定 --- */

/* 1. 記事本文の背景に薄く黒を敷く（文字を浮き立たせる） */
.EntryText {
    background: rgba(0, 0, 0, 0.45); /* 黒を45%の濃さで敷く */
    padding: 25px !important;       /* 内側に余白を作って読みやすく */
    border-radius: 5px;             /* 角を少し丸める */
    box-shadow: inset 0 0 20px rgba(0,0,0,0.5); /* 内側に影を入れて奥行きを出す */
    margin-top: 15px;
}

/* 2. 記事タイトル周りの視認性アップ */
.EntryTextBox header {
    background: rgba(0, 0, 0, 0.6) !important; /* タイトル部分は少し濃いめに */
    padding: 10px 15px;
    border-radius: 5px 5px 0 0;
}

/* 3. サイドバー（プラグイン）の文字も背景から浮かせる */
.PluginContents {
    background: rgba(0, 0, 0, 0.3);
    padding: 10px !important;
    border-radius: 3px;
    color: #eee; /* 文字色を少し明るいグレーに */
}

/* 4. リンク色の微調整（背景に沈まないように） */
.EntryText a:link, .EntryText a:visited {
    color: #ffcc66; /* 少しオレンジ寄りの黄色にして視認性を確保 */
    text-shadow: 1px 1px 2px #000; /* 文字に影をつけて背景と切り離す */
}

/* --- URLの突き抜け防止 --- */

.EntryText, 
.CommentText, 
.PluginContents {
    word-wrap: break-word;     /* 古いブラウザ用 */
    overflow-wrap: break-word; /* 枠線で折り返す */
    word-break: break-all;     /* 隙間なく折り返す（URLに最適） */
}

/* --- 強制折り返し（最強設定） --- */
.EntryText, 
.CommentText, 
.PluginContents,
.EntryTitle {
    display: block !important;       /* 要素をブロック化して幅を確定させる */
    word-break: break-all !important; /* 英数字もURLも強制的に改行 */
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
    max-width: 100% !important;      /* 親要素からはみ出さない */
    box-sizing: border-box !important;
}

/* 記事内のリンクタグ自体にも指定 */
.EntryText a {
    display: inline-block;           /* リンクをインラインブロック化 */
    max-width: 100%;                 /* 枠を超えない */
    word-break: break-all;
    vertical-align: bottom;
}

/* --- 超強力・強制改行（これでもダメなら構造の問題） --- */

/* 記事本文のブロックを強制的に再定義 */
.EntryText, 
.entryText, 
.EntryText p, 
.EntryText a {
    display: block !important;       /* インライン要素をブロック化 */
    width: 100% !important;         /* 幅を親要素に固定 */
    max-width: 615px !important;    /* 記事エリアの実質幅（EntryTextBoxのpaddingを考慮） */
    word-break: break-all !important; /* どこでも改行 */
    overflow-wrap: break-word !important;
    white-space: normal !important;  /* 改行を禁止する設定を解除 */
    box-sizing: border-box !important;
}

/* リンクタグが原因で突き抜けるのを防ぐ */
.EntryText a {
    display: inline !important;      /* 文字列として扱う */
    word-wrap: break-word !important;
}

/* 万が一、枠を突き抜けた分を隠す（保険） */
.EntryTextBox {
    overflow: hidden !important;
}

/* --- 引用タグ（blockquote）の再定義 --- */
.EntryText blockquote {
    display: block !important;
    position: relative;
    margin: 20px 10px !important;
    padding: 25px 20px 15px 45px !important; /* 左側にアイコン用の余白 */
    background: rgba(255, 255, 255, 0.1) !important; /* 本文より少し明るい半透明 */
    border-left: 5px solid #ff3366 !important; /* アクセントカラーのピンク */
    border-radius: 0 8px 8px 0;
    color: #eee !important;
    font-style: italic;
    line-height: 1.7 !important;
    box-sizing: border-box !important;
}

/* --- 引用デザイン完全上書き（最優先） --- */
html body #MainBlock #EntryListBlock .EntryTextBox .EntryText blockquote {
    display: block !important;
    margin: 20px 0 !important;
    padding: 20px 20px 20px 40px !important;
    background: rgba(255, 255, 255, 0.1) !important; /* 本文より少し明るい背景 */
    border-left: 6px solid #ff3366 !important; /* 左側に太いピンクの線 */
    color: #eee !important;
    font-style: italic !important;
    position: relative !important;
    box-sizing: border-box !important;
    min-height: 50px !important;
}

/* 引用アイコン（“）の強制表示 */
html body #MainBlock #EntryListBlock .EntryTextBox .EntryText blockquote::before {
    content: "“" !important;
    position: absolute !important;
    top: -10px !important;
    left: 10px !important;
    color: rgba(255, 51, 102, 0.3) !important;
    font-size: 60px !important;
    font-family: "Times New Roman", serif !important;
    display: block !important;
}

/* --- 【最終手段】引用デザインの強制再構築 --- */

/* 1. 既存のリセット(border:0)を、極限まで長い指定で上書き */
html body div#MainBlock div#EntryListBlock article.EntryTextBox section.EntryText blockquote,
blockquote {
    display: block !important;
    visibility: visible !important;
    
    /* 枠線と背景を強制表示 */
    border-left: 8px solid #ff3366 !important; /* 左側の太いピンク線 */
    background-color: rgba(255, 255, 255, 0.15) !important; /* 本文より少し明るい半透明 */
    
    /* 余白の強制確保 */
    margin: 25px 10px !important;
    padding: 20px 20px 20px 45px !important;
    
    /* 文字の設定 */
    color: #eeeeee !important;
    font-style: italic !important;
    line-height: 1.8 !important;
    position: relative !important;
}

/* 2. 引用マーク（“）を絶対に出す設定 */
html body div#MainBlock div#EntryListBlock article.EntryTextBox section.EntryText blockquote::before {
    content: "“" !important;
    display: block !important;
    position: absolute !important;
    top: -5px !important;
    left: 10px !important;
    font-size: 60px !important;
    color: rgba(255, 51, 102, 0.4) !important;
    font-family: "Times New Roman", Georgia, serif !important;
}

/* 一番上のナビゲーション・カテゴリータグ一覧を非表示にする */
#MenuCategory, 
#MenuPage,
nav[id^="Menu"] {
    display: none !important;
}

/* もしヘッダー直下の余白が空きすぎたらこれで調整 */
#Breadcrumbs {
    margin-top: 0 !important;
}

/* --- ブログ題字（タイトル）の拡大と装飾 --- */

#BlogTitle a {
    font-size: 42px !important;      /* 以前の倍以上の大きさに設定 */
    font-weight: bold !important;
    letter-spacing: 0.1em !important; /* 文字の間隔を少し広げて優雅に */
    line-height: 1.4 !important;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6) !important; /* 背景画像に埋もれないよう影を強化 */
    display: inline-block !important;
    padding: 10px 20px !important;
}

/* 説明文（キャプション）もバランスを見て少し調整 */
#BlogExplanation {
    font-size: 16px !important;      /* 少し大きくして読みやすく */
    margin-top: 15px !important;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8) !important;
    opacity: 0.9;
}

/* スマホ表示では画面からはみ出さないよう自動調整 */
@media screen and (max-width: 768px) {
    #BlogTitle a {
        font-size: 28px !important;  /* スマホでは適切なサイズに絞る */
    }
    .header_wrapper {
        padding: 60px 0 40px !important; /* 上下の余白を詰めてスッキリ */
    }
}

/* 引用の「“」アイコンを擬似要素で追加 */
.EntryText blockquote::before {
    content: "“";
    position: absolute;
    top: 5px;
    left: 10px;
    color: rgba(255, 51, 102, 0.4); /* ピンクを薄くして配置 */
    font-size: 60px;
    font-family: serif;
    line-height: 1;
}

/* 引用内のURLも突き抜けないように設定 */
.EntryText blockquote a {
    word-break: break-all !important;
    color: #ffcc66 !important;
}

/* --- 段落（pタグ）の行間・余白の調整 --- */

.EntryText p {
    margin: 1.5em 0 !important;   /* 上下に1.5文字分の空きを作る */
    line-height: 1.9 !important;  /* 行間をゆったりさせて読みやすく */
    display: block !important;    /* 確実にブロックとして扱う */
}

/* 連続する改行（br）が多すぎる場合の微調整（任意） */
.EntryText br {
    display: block;
    content: "";
    margin-top: 0.5em;
}

/* 引用文の中の段落も同様に調整 */
.EntryText blockquote p {
    margin: 1em 0 !important;
}

/* --- 段落間余白の強制適用（最終手段） --- */

/* 1. 本文内のすべての「塊」に下の余白を強制 */
.EntryText > *, 
.entryText > *, 
.entryTextMain > * {
    margin-bottom: 1.8em !important; /* 下側に1.8文字分の空き */
    display: block !important;       /* ブロック化して余白を有効にする */
}

/* 2. <p>タグのみを狙い撃ち（さらに強力に） */
p {
    margin-top: 0 !important;
    margin-bottom: 1.8em !important;
    line-height: 1.9 !important;
}

/* 3. 画像(img)などは余白が空きすぎないように微調整 */
.EntryText img {
    margin-bottom: 1.0em !important;
    display: inline-block !important; /* 画像は横に並ぶ可能性を残す */
}

/* 4. 引用ブロックの中も個別に指定 */
blockquote p {
    margin-bottom: 1.0em !important;
}