@charset "UTF-8";

a:link { color: #333333; text-decoration:none;-webkit-transition: 1s ease-in-out;} 
a:visited { color: #333333; text-decoration:none;-webkit-transition: 1s ease-in-out;} 
a:active { color: #99a2a5; text-decoration:underline;}
a:hover { color: #99a2a5;text-decoration:underline;} 

.nonborder { 
border:none; 
outline:none; 
}

*{box-sizing:border-box;
-moz-box-sizing:border-box;
-webkit-box-sizing:border-box
}

ul{
margin:0;
}

pre{
padding:0;
}

body {
font-size:14px;
font-family:'YuGothic', '游ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN', Meiryo, メイリオ, 'MS PGothic', Helvetica, Arial, sans-serif;
text-align:left;
color:#222222;
line-height:1.8em;
position:relative;
-webkit-text-size-adjust: none;
}

#container{
width:100%;
margin:0 auto;
padding:0;
position:relative;
}

#header-container{
width:100%;
height:auto;
margin:0 auto;
padding:30px 17.5%;
text-align:left;
position:relative;
border-bottom:3px #f5f5f5 double;
}

#header-container:after {
content: "";
display: block;
clear: both;
}

#header-container header{
float:left;
margin:0;
padding:0;
position:relative;
}

#main-container{
width:65%;  
padding:50px 0 100px 0;
margin:0 auto;
}

#main-container:after {
content: "";
display: block;
clear: both;
}

.topimage{
width:100%;
margin:0 0 50px 0
}

.topimage img{
width:100%;
margin:0 0 20px 0;
}

.welcome{
display:block;
padding:0 0 20px 0;
font-size:17px;
font-family: 'Playfair Display', serif;
font-weight:400;
letter-spacing:2px;
}

.topimage p{
font-size:10px;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
}


/* header */

h1,h2,h3,h4{
font-weight:normal;
margin:0;
}

h1{
padding:0;
margin:0 0 5px 0;
font-size:20px;
font-family: 'Playfair Display', serif;
font-weight:400;
letter-spacing:2px;
line-height:1.2em;
text-transform:uppercase;
-webkit-animation: headerMotion 1.3s;
-moz-animation: headerMotion 1.3s;
-o-animation: headerMotion 1.3s;
animation: headerMotion 1.3s;
}

.intro{
letter-spacing:2px;
margin:0;
padding:0;
font-size:11px;
color:#222222;
}

h1 a:link,h1 a:visited{
color:#222222;
}

h1 a:hover{
color:#222222;
text-decoration:none;
}

h2{
font-size:20px;
padding:0;
margin:0 0 20px 0;
line-height:1.2em;
letter-spacing:2px;
}

h3{
font-size:13px;
padding:0 0 0 20px;
margin:0;
font-family: 'Playfair Display', serif;
font-weight:400;
letter-spacing:2px;
}

h3 span{
padding:0 10px;
background-color:#ffffff;
}

h4{
font-size:20px;
padding:0 0 20px 0;
font-family: 'Playfair Display', serif;
font-weight:400;
letter-spacing:2px;
}

h4 a{
color:#222222;
text-decoration:none;
}

.comtitle a,.tbtitle a{
padding:0;
color:#222222;
}

.comtitle a:hover,.tbtitle a:hover{
padding:0;
color:#222222;
}

.comtitle{
padding:0;
}

.tbtitle{
margin-top:10px;
}

.comment header{
margin:0;
}

/*menu*/

#menu{
float:right;
padding:0;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
text-transform:uppercase;
margin:10px 0 0 0;
-webkit-animation: headerMotion 1.3s;
-moz-animation: headerMotion 1.3s;
-o-animation: headerMotion 1.3s;
animation: headerMotion 1.3s;
}

#menu ul {
margin:0;
border:0;
}
			
#menu  li {
display:inline-block;
margin:0;
padding:0 0 0 30px;
font-size:10px;
}

#menu li a {
padding:0;
border: 0;
color:#333333;
}

#menu li a:hover{
color:#cccccc;
text-decoration:none;
}

a.menu-link {
display: none;
}

.js nav[role=navigation] {
max-height: none;
}

/* topnav */

.topnav{
width:100%;
margin:0;
padding:0 0 50px 0;
}

.topnav:after {
content: "";
display: block;
clear: both;
}

.topnav ul{
margin:0;
text-align:center;
}

.topnav li {
padding:0;
margin:0 10px;
display:inline-block;
}

.topnav li a:link,.topnav li a:visited{
color:#CCCCCC;
font-size:13px;
}

.topnav li a:hover{
color:#cccccc;
text-decoration:none;
}

#page-top {
position: fixed;
bottom: 20px;
right: 20px;
font-size:77%;
z-index:998;
}

#page-top a {
background-color: rgba(255,  255,  255,  0.3);
text-decoration: none;
color:#222222;
width:auto;
padding:10px 15px;
text-align: center;
display: block;
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
font-family: 'Playfair Display', serif;
font-weight:400;
letter-spacing:2px;
}

#page-top a:hover {
text-decoration: none;
background:#ffffff;
color:#222222;
}

.postnav{
}

#prev{
width:50px;
height:auto;
padding:50px 0;
display:block;
background-color: rgba(0, 0, 0, 0.5);
position:fixed;
top:40%;
left:0;
font-size:40px;
text-align:center;
color:#ffffff;
z-index:997;
border-top-right-radius:5px; 
border-bottom-right-radius:5px;
}

#next{
width:50px;
height:auto;
padding:50px 0;
display:block;
background-color: rgba(0, 0, 0, 0.5);
position:fixed;
top:40%;
right:0;
font-size:40px;
text-align:center;
color:#ffffff;
z-index:997;
border-top-left-radius:5px;
border-bottom-left-radius:5px;
}

.pagenav{
}

/* maincontents */

section#maincontents{
width:70%;
padding:0 30px 30px 0;
margin:0;
float:left;
}

/* blogpost */

.blogpost{
padding:0 0 30px 0;
margin-bottom:20px;
position:relative;
border-bottom:1px #f5f5f5 solid;
}

.blogpost header{
width:100%;
padding:0;
margin:0;
}

.blogpost time{
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
font-size:10px;
color:#666666;
}

.blogpost img{
max-width: 100%;
height: auto;
width /***/:auto;　
-ms-interpolation-mode: bicubic;
}

.blogpost p{
margin:0;
}

.morelink{
margin:20px 0;
}

.morelink a{
color:#222222;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
text-transform:uppercase;
font-size:9px;
padding:10px 20px;
border:1px #333333 solid;
}

.morelink a:hover{
background-color:#333333;
color:#ffffff;
text-decoration:none;
}

.fc2_footer{
margin:20px 0 0 0;
}

.fc2button-facebook iframe {
width:105px !important;
}

.relate_dl{
padding:20px;
margin:20px 0;
background-color:#f5f5f5;
}

.relate_dt{
padding:0 0 10px 0;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
}

/* social */

.button{
float:left;
margin:-40px 0 0 0;
}

.bottomnav{
margin:0 !important;
padding:0 !important;
}

.bottomnav ul{
margin:0 !important;
}

.bottomnav li {
padding:0 !important;
margin:0 15px 0 0 !important;
display:inline-block !important;
overflow:hidden;
}

.bottomnav li a:link,.bottomnav li a:visited{
color:#333333 !important;
font-size:13px !important;
display:block;
width:20px;
height:20px;
}

.bottomnav li a:hover{
color:#222222 !important;
text-decoration:none !important;
width:60px;
transition: width 1s linear;  
-webkit-transition:width 1s linear;  
}

#maincontents blockquote{
border:2px #222222 dotted;
font-size:13px;
padding:10px;
margin:10px;
}

.titlelist{
margin:0;
padding:0;
-webkit-animation: itemanime 1.3s;
-moz-animation: itemanime 1.3s;
-o-animation: itemanime 1.3s;
animation: itemanime 1.3s;
}

.searcharea{
padding:0;
margin:0;
}

.searcharea h4{
width:100%;
padding:0;
margin:-70px 0 40px 0;
text-align:center;
}

.searcharea h4{
margin:0 0 20px 0;
}

.searcharea h2{
font-size:17px;
margin:0;
padding:0;
}

.searcharea li{
margin:0 0 30px 0 !important;
}

.none { 
display:none;
}

.block { 
display:block;
padding:0 2.5%;
}

pre code{
display:block;
overflow:auto;
border:1px #222222 solid;
padding:10px;
}

/* list-style */

.blogpost ul,.searcharea ul,.relate_dl ul,.plugcontent ul{
margin:0 0 0 1.5em;
}

.blogpost ul li,.searcharea li,.relate_dl ul li,.plugcontent ul li{
list-style-type:circle;
list-style-position:outside;
margin:0;
padding:0;
position:relative;
height:100%;
}

/* footer-style */

.bottomfooter{
width:100%;
height:auto;
font-size:9px;
padding:0;
margin-top:30px;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
text-align:right;
}

.comfooter{
font-size:10px;
padding:10px 0;
margin:0;
text-align:right;
font-family: 'Open Sans', sans-serif;
font-weight:400;
}

.tbfooter{
font-size:10px;
padding:10px 0;
border-bottom:1px #ffffff dashed;
margin:0;
text-align:right;
font-family: 'Open Sans', sans-serif;
font-weight:400;
}

.titlelistfooter{
font-size:10px;
padding-bottom:10px;
margin-bottom:10px;
font-family: 'Open Sans', sans-serif;
font-weight:400;
}

/* comment */

.pcomment,.trackback{
padding:0;
margin: 0 0 50px 0; 
}

.comment{
padding:0;
margin: 0 0 50px 0;  
}

.ecomment{
width:100%;
margin:0;
padding:0;
-webkit-animation: itemanime 1.3s;
-moz-animation: itemanime 1.3s;
-o-animation: itemanime 1.3s;
animation: itemanime 1.3s;
}

.ctriangle{
width:100%;
margin-bottom:20px;
position:relative;
} 

.triangle{
position:absolute;
width:0;
height:0;
left:50px;
top:10px;
border-top:20px solid transparent;/*下*/
border-right: 20px solid  transparent;/*左*/
border-left: 20px solid transparent;/*右*/
border-bottom: 20px solid #f5f5f5;/*上*/
}

.cbody{
margin:20px 0 0 0;
padding:20px 20px 10px 20px;
background-color:#f5f5f5;
}

.pcomment p,.ecomment p{
padding:5px 0;
}

.pcomment label,.ecomment label{
color:#222222;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
font-size:9px;
}

input:-webkit-autofill {
background-color:none;
}

#name,#title,#email,#website{
width:60%;
padding:5px 0;
border:none;
outline:none;
border:1px #222222 solid;
}

textarea{
width:99%;
height:150px;
scrollbar-base-color:#ffffff;
scrollbar-track-color:#ffffff;
overflow:auto;
border:none;
outline:none;
border:1px #222222 solid;
-webkit-appearance: none;
border-radius:0;
}

#password{
width:30%;
padding:5px 0;
border:none;
outline:none;
border:1px #222222 solid;
}

#ppost,#ecom,#dcom{
color: #222222;
padding:5px 15px;
margin:0 0 10px 0;
height: 40px;
border:1px #222222 solid;
width: auto;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:2px;
font-size:9px;
}

#ppost:hover,#ecom:hover,#dcom:hover{
color: #ffffff;
padding:5px 15px;
background-color:#333333;
}

.trackback{
word-break: break-all;
}

/* sidebar */

#sidebar{
width:30%;
margin:0;
padding:0 0 0 30px;
float:right;
-webkit-animation: itemanime 1.3s;
-moz-animation: itemanime 1.3s;
-o-animation: itemanime 1.3s;
animation: itemanime 1.3s;
}

.plugcontent{
padding:0;
margin:0 0 40px 0;
}

.plugcontent ul{
}

.plugin{
margin:-10px 0 0 0;
padding:30px 0 0 0;
border-top:1px #ffffff solid;
}

.plugin-tag{
/*
word-break: keep-all;
*/
word-break: break-all;
}

.plugin-search .input{
width:80%;
}

/* bottomfooter */

#footer-container{
width:100%;
margin:0 auto;
font-size:12px;
padding:20px 17.5%;
text-align:center;
clear:both;
}

#footer-container footer{
padding:0;
overflow:hidden;
margin:0 auto;
}

#footer-container .footer-address{
margin:0;
padding:0;
}

/* calender */

table.calender {
width:100%;
margin:0 auto;
font-size: 100%;
}

table.calender caption {
margin-bottom: 10px;
margin:0 auto;
}

table.calender th,
table.calender td {
padding: 0.1em;
border-bottom: 1px dashed #cccccc;
text-align: center;
}

table.calender td a {
display: block;
background-color:#dfebeb;
color: #333333;
border-radius:50%;
-webkit-border-radius:50%; 
-moz-border-radius:50%; 
}

table.calender td a:hover {
background-color:#fdfcbd;
color: #333333;
}

table.calender th#sun {
color: #ee9074;
}

table.calender th#sat {
color: #77b8bc;
}

/************************************************************************************
smaller than 980
*************************************************************************************/
@media screen and (max-width:980px) {

#header-container{
width:100%;
height:auto;
margin:0 auto;
padding:30px 5%;
text-align:left;
position:relative;
border-bottom:3px #f5f5f5 double;
}

#main-container{
width:90%;  
margin:0 auto;
}

#footer-container{
width:100%;
padding:0 5%;
}

}

/************************************************************************************
smaller than 768
*************************************************************************************/
@media screen and (max-width: 768px) {

#header-container{
width:100%;
height:auto;
margin:0 auto;
padding:50px 5% 0 5%;
text-align:center;
position:relative;
border-bottom:3px #f5f5f5 double;
}

#header-container header{
float:none;
margin:0;
padding:0;
position:relative;
}

#menu{
width:100%;
height:auto;
padding:0;
font-family: 'Open Sans', sans-serif;
font-weight:400;
letter-spacing:3px;
text-transform:uppercase;
font-size:11px;
margin:30px 0 0 0;
float:none;
}

a.menu-link {
display: block;
padding: 1em;
color:#444444;
text-decoration:none;
font-family: 'Open Sans', sans-serif;
font-weight:400;
text-transform:uppercase;
letter-spacing:3px;
text-align:center;
margin:0px auto;
font-size:11px;
}

nav[role=navigation] {
clear: both;
-webkit-transition: all 0.3s ease-out;  
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;
}

.js nav[role=navigation] {
overflow: hidden;
max-height: 0;
}

nav[role=navigation].active {
max-height: 40em;
}

nav[role=navigation] ul {
margin: 0;
padding: 0 0 30px 0;
border-top: none;
text-align:center;
}

#menu  li {
display:block;
margin:0;
padding:10px 0;
font-size:10px;
}

nav[role=navigation] li a {
display: block;
padding: 0.8em;
color:#444444;
}

section#maincontents{
width:100%;
padding:0 0 30px 0;
margin:0;
float:none;
}

#sidebar{
width:100%;
margin:0;
padding:0;
float:none;
}

#name,#title,#email,#website{
-webkit-appearance: none;
border-radius:0;
}

textarea{
-webkit-appearance: none;
border-radius:0;
}

#password{
-webkit-appearance: none;
border-radius:0;
}

#ppost,#ecom,#dcom{
-webkit-appearance: none;
border-radius:0;
}

}

/************************************************************************************
smaller than 568
*************************************************************************************/
@media screen and (max-width: 568px) {

/* disable webkit text size adjust (for iPhone) */
html {
-webkit-:text-size-adjust: none;
}

#header-container{
text-align:center;
}


/*videos */
.video embed,.video object,
.video  iframe {
width: 100%;
height: auto;
min-height:300px;    
}

}

/****************************************************************
   itemanime
*****************************************************************/

@-webkit-keyframes itemanime {
  0% {
   opacity: 0;
   -webkit-transform: translateY(60px);
  }
  50% {
   opacity: 0;
   -webkit-transform: translateY(20px);
  }
  80% {
   opacity: 1;
  }
  100% {
   -webkit-transform: translateY(0);
  }
}

@-moz-keyframes itemanime {
  0% {
   opacity: 0;
   -moz-transform: translateY(60px);
  }
  50% {
   opacity: 0;
   -moz-transform: translateY(20px);
  }
  80% {
   opacity: 1;
  }
  100% {
   -moz-transform: translateY(0);
  }
}

@-o-keyframes itemanime {
  0% {
   opacity: 0;
   -o-transform: translateY(60px);
  }
  50% {
   opacity: 0;
   -o-transform: translateY(20px);
  }
  80% {
   opacity: 1;
  }
  100% {
   -o-transform: translateY(0);
  }
}

@keyframes itemanime {
  0% {
   opacity: 0;
   transform: translateY(60px);
  }
  50% {
   opacity: 0;
   transform: translateY(20px);
  }
  80% {
   opacity: 1;
  }
  100% {
   transform: translateY(0);
  }
}

/***************************************************************
   headerMotion
****************************************************************/

@-webkit-keyframes headerMotion {
  0% {
   opacity: 0;
   -webkit-transform: translateY(-100px);
  }
  50% {
   opacity: 0;
   -webkit-transform: translateY(-100px);
  }
  100% {
   opacity: 1;
   -webkit-transform: translateY(0);
  }
}

@-moz-keyframes headerMotion {
  0% {
   opacity: 0;
   -moz-transform: translateY(-100px);
  }
  50% {
   opacity: 0;
   -moz-transform: translateY(-100px);
  }
  100% {
   opacity: 1;
   -moz-transform: translateY(0);
  }
}

@-o-keyframes headerMotion {
  0% {
   opacity: 0;
   -o-transform: translateY(-100px);
  }
  50% {
   opacity: 0;
   -o-transform: translateY(-100px);
  }
  100% {
   opacity: 1;
   -o-transform: translateY(0);
  }
}

@keyframes headerMotion {
  0% {
   opacity: 0;
   transform: translateY(-100px);
  }
  50% {
   opacity: 0;
   transform: translateY(-100px);
  }
  100% {
   opacity: 1;
   transform: translateY(0);
  }
}

/*--------------------------------------
  ヨメレバ・カエレバ（レスポンシブ）
--------------------------------------*/
.booklink-box, .kaerebalink-box{
    padding:25px;
    margin-bottom: 10px;
    overflow: hidden;
    font-size:small;
}
.booklink-image, .kaerebalink-image{
    margin:0 15px 0 0;
    float:left;
    min-width: 160px;
    text-align: center;
}
.booklink-image img, .kaerebalink-image img{
    margin:0 auto;
    text-align:center;
}
.booklink-info, .kaerebalink-info{
    margin:0;
    line-height:120%;
    overflow: hidden;
}
.booklink-name, .kaerebalink-name{
    margin-bottom:24px;
    line-height:1.5em;
}
.booklink-powered-date, .kaerebalink-powered-date{
     font-size:8px;
     margin-top:10px;
     font-family:verdana;
     line-height:120%;
}
.booklink-detail, .kaerebalink-detail{font-size: 12px;}
.booklink-powered-date, .kaerebalink-detail{margin-bottom:15px;}
.booklink-link2, .kaerebalink-link1{margin-top:10px;}
.booklink-link2 a,
.kaerebalink-link1 a{
    width:50%;
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
    display:inline-block;
    margin:5px 2px 0 0;
    padding:10px 1px;
    text-align:center;
    float:left;
    text-decoration:none;
    font-weight:800;
    text-shadow:1px 1px 1px #dcdcdc;
    font-size:12px;
    color: #fff !important;
}
.booklink-link2 a:hover,
.kaerebalink-link1 a:hover{opacity: 0.6;}
.booklink-link2 a:active
.kaerebalink-link1 a:active{
    position:relative;
    top:1px;
}
/*ボタンを変えるときはここから*/
.shoplinkamazon a{color:#FF9901 !important;border: 1px solid #FF9901 !important;}
.shoplinkrakuten a{color:#c20004 !important;border: 1px solid #c20004 !important;}
.shoplinkkindle a{color:#007dcd !important;border: 1px solid #007dcd !important;}
.shoplinkkakakucom a{color:#314995 !important;border: 1px solid #314995;}
.shoplinkyahoo a{color:#7b0099 !important;border: 1px solid #7b0099 !important;}
/*ここまでを変更*/
.shoplinkyahoo img{display:none;}
.shoplinkyahoo a{font-size:10px;}
.booklink-footer{display: none;}

@media screen and (max-width: 680px) {
.booklink-box, .kaerebalink-box{padding:15px;}
.booklink-image, .kaerebalink-image{
    width: 100px !important;
    min-width: initial;
}
.booklink-name > a, .kaerebalink-name > a{
    font-size: 15px;
    font-weight: bold;
}
.booklink-name, .kaerebalink-name{margin-bottom:12px;}
.booklink-powered-date, .kaerebalink-powered-date{margin-top:5px;}
.booklink-link2 a,
.kaerebalink-link1 a{
    width:calc(100% - 4px);
    -moz-border-radius:5px;
    -webkit-border-radius:5px;
    border-radius:5px;
    margin: 2px 0px;
    padding:10px 0px;
}
}


/*YouTube動画貼り付け*/
.youtube {
	display: inline-block;
	position: relative;
	overflow: hidden;
	width: 320px;
	height: 180px;
	white-space: nowrap;
}
.youtube::before {
	position: absolute;
	content: attr(data-name);
	color: #fff;
	text-align: center;
	font-size: 18px;
	padding-top: 8px;
	padding-left: 10px;
	background: rgba(0, 0, 0, 0.6);
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	transition: all 0.3s;
}
.youtube:hover::before {
	background: rgba(0, 0, 0, 0.7);
	cursor: pointer;
	transition: all 0.3s;
}