@charset "UTF-8";
/*
Theme Name: yamamotojin
Author: koizumi
Description: yamamotojin
Version:1.6
License: GNU General Public License v2 or later
License URI: LICENSE
*/

body {
margin: 0;
font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', 'ＭＳ Ｐゴシック', sans-serif;
font-size: 15px;
-webkit-text-size-adjust: 100%;
font-weight: 300;
line-height: 1.6;
color: #333333;
text-align: justify;
letter-spacing: 0.08em;
}

body,html{padding: 0 ;margin: 0!important}

*{
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}


/* テキスト */
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
dl, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
}

h1{font-size: 28px;font-weight: 300}
h2 {font-size: 24px;font-weight: 300}
h3 {font-size: 20px}
h4 {font-size: 18px}
h5 {font-size: 16px}
h6 {font-size: 14px}


h1,h2,h3,h4,h5,h6{margin:0 0 10px;line-height: 1.5em;}

.mincho{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 300;
}

button, input, label, select, textarea{
font-family: inherit;
font-size: 15px;
}


img{max-width: 100%;height: auto;}

ul{padding: 0;margin: 0}
ul li{list-style:none}
a{text-decoration: none;color: #45AAB8;}
p{margin:0 0 1em;}
.bold{font-weight:bold}

.d-flex{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

.d-flex-around{justify-content: space-around;}
.d-flex-start{justify-content: flex-start;}
.d-flex-end{justify-content: flex-end;}
.d-flex-center{justify-content: center;}
.align-center{align-items: center;}
.flex-reverse{flex-wrap: wrap-reverse;}
.text-center{text-align: center;}
.text-right{text-align: right;}


/* ------------------------------------------------
外枠
------------------------------------------------
*/ 

.container{
max-width: 1030px;
padding: 0 15px;
margin: 0 auto;
}

main{margin-bottom: 100px;}

#wrapper{padding-top: 141px;}

@media only screen and (max-width:768px){
.container{padding: 0 20px;}
#wrapper{padding-top: 65px;}
}

@media only screen and (max-width:480px){
main{margin-bottom: 50px;}
}


/* ------------------------------------------------
header 
------------------------------------------------
*/ 

header{
padding: 20px 0;
background-color: #ffffff;
position: fixed;
top: 0;
z-index: 220;
width: 100%;
font-size: 14px;
}

header nav.d-flex{align-items: flex-end}

#header-logo{
width:220px;
padding-bottom:0px;
}

ul.grand-menu{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content:center;
}

ul.grand-menu li a{
color: #333333;
padding: 15px;
display: block;
}

header ul li a:hover{
cursor: pointer;
text-decoration: underline;
opacity: 1;
}

.ham,.black-bg{display: none;}

@media only screen and (max-width:768px){
header{padding: 10px 0;}

#header-logo{max-width: 200px;padding: 0;}

header{font-size: 13px;}

header .container{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

.grand-menu li{
width: 100%;
text-align: center;}

ul.grand-menu li a{padding: 20px 10px;}


.ham,.black-bg{display: inherit;}

.ham {
position: relative;
width: 32px;
height: 32px;
cursor: pointer;
z-index: 300;
}

.ham_l {
position: absolute;
width: 32px;
height: 2px;
right: 0;
background-color: #333333;
transition: all 0.5s;
}

.ham_l-1 {top: 1px;}
.ham_l-2 {top: 10px;}
.ham_l-3 {top: 20px;}

.open .ham_l-1 {transform: rotate(-45deg);top: 11px;background-color: #333333;}
.open .ham_l-2 {opacity: 0;}
.open .ham_l-3 {transform: rotate(45deg);top: 11px;background-color: #333333;}


.header-nav  {
position: fixed;
right: 0;
top: -100%;
width: 100%;
height: 70vh;
background-color: #ffffff;
transition: all 0.5s;
z-index: 200;
overflow-y: auto;
}


.open .header-nav  {top: 0;}

.black-bg {
position: fixed;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
z-index: 5;
background-color: #333333;
opacity: 0;
visibility: hidden;
transition: all 0.5s;
cursor: pointer;
z-index: 100;
}

.open .black-bg {opacity: 0.6;visibility: visible;}
.open .header-nav {display: block;transition: .4s;}

}

@media only screen and (max-width:480px){
#header-logo{max-width: 180px;}
}


/* ------------------------------------------------
footer
------------------------------------------------
*/ 

footer{
border-top: 1px solid #333333;
padding: 20px 0;
font-size: 13px;
}

.footer-inner ul li{
width: 32px;
margin: 0 15px 10px 0;
}


.float-Btn {
position: fixed;
bottom: 20px;
right: 20px;
cursor: pointer;
}


@media (max-width: 768px) {
.float-Btn{
right: 20px;
bottom: 0;
width: 58px;
}
}

.float-Btn a{
display: inline-block;
color: #CCC;
font-size: 28px;
background: #efefef;
padding: 8px 15px 12px 15px;
border-radius: 2px;
}




/* ------------------------------------------------
index
------------------------------------------------
*/ 


/* アニメーション設定  */
.fadein{
opacity: 0;
transform: translate3d(0, 40px, 0);
}

.fadein.is-active{
opacity: 1;
transform: translate3d(0, 0, 0);
transition: 1s;
} 


.main-slider{margin-bottom: 60px;}

/* page title */
.main-tit{
font-size: 22px;
font-weight: normal;
margin: 30px 0 20px;
}


@media only screen and (max-width: 600px){
.main-title{font-size: 20px;font-size: 1.2em;}
}

/* 記事 */
.blog-tit{
font-size: 22px;
font-weight: normal;
margin: 20px 0 40px;
border-top: 1px solid #333333;
border-bottom: 1px solid #333333;
padding: 10px 0 10px 20px;
}

@media only screen and (max-width: 600px){
.blog-tit{font-size: 20px;font-size: 1.2em;}
}

.blog-article{
width: 30%;
margin:0 5% 30px 0;
}

.blog-article:nth-child(3n){margin-right: 0;}


@media only screen and (max-width:600px){
.blog-article{width: 48%;margin:0 4% 30px 0;}
.blog-article:nth-child(3n){margin:0 4% 30px 0;}
.blog-article:nth-child(2n){margin-right: 0;}
}

.post-thumbnail{
display: inline-block;
overflow: hidden;
line-height: 0;
margin-bottom: 10px
}

.post-thumbnail img {
transform: scale(1, 1);
transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.blog-article a:hover img{
transform: scale(1.05, 1.05);
opacity: 1;
}

.description-time{
font-size: 11.5px;
color: #9fa0a0;
font-weight: 600;
line-height: 1.5em;
margin-bottom: 0.2em;
}

.post-description h3{
font-size: 16px;
color: #333333;
font-weight: 300;
margin-bottom: 5px;}

.description{
font-size: 12px;
color: #333333;
}

figure{margin-bottom: 1em;}

/* タグ */
.post-item-tags li{
letter-spacing: 0.1em;
margin-right: 5px;
}

.post-item-tags ul:before{
content: "タグ：";
}

.post-item-tags li:after{content: ",";}
.post-item-tags li:last-child:after{
content: "";
}

.post-item-tags li a:hover{
transition: .3s;
opacity: .7;
}

.post-item-tags{
margin-top: 50px;
font-size: 12px;
}


/* パンくず */
ul.breadcrumb{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
font-size: 13px;
}

ul.breadcrumb li:not(:first-child){
color: #9fa0a0;
padding-left: 10px;
}

ul.breadcrumb li:not(:first-child):before{
content: "";
display: inline-block;
width: 6px;
height: 6px;
margin-right: 10px;
margin-bottom: 1px;
border-top: 1px solid #333333;
border-right: 1px solid #333333;
transform: rotate(45deg);
}

.pagination {text-align: center;}

/* nav */
.nav-links {
display: flex;
justify-content: center;
flex-wrap: wrap;
font-size: 14px;
margin-top: 50px;
}

.pagination .page-numbers {
padding: 15px 10px;
margin-right: 15px;
background: #efefef;
border: 1px solid #9fa0a0;
line-height: 0;
}


.pagination a:hover{
transition: .3s;
opacity: 1;
background: #9fa0a0;
color: #ffffff;
}

.pagination .current {
background: #9fa0a0;
border: 1px solid #efefef;
color: #ffffff;
}

.pagination .dots {background: transparent;}


/* 2カラム-side */
.col--l .group{margin-top: 20px;}
.col--l .content{width: 70%;}

.sidebar{width: 25%;margin-top: 30px;}

@media only screen and (max-width: 768px){
.col--l .content{width: 100%;}
.col--l .sidebar{display: none;}
}


.sidebar .side-area{margin-bottom: 50px;}

.sidebar a{color: #333333;}

.sidebar h3{
font-size: 18px;
line-height: 1.1em;
border-bottom: 1px solid #333333;
padding-bottom: 10px;
}

.related ul li,
.sidebar .side-area ul li{
border-bottom: 1px dashed #333333;
font-size: 13px;
}

.related ul li a,
.sidebar .side-area ul li a{
padding: 15px 0;
}

.side-recently a,
.side-category a{display: block;}

.related .post-thumbnail,
.side-thumbnail{
width: 28%;
line-height: 0;
}


.side-thumbnail{
display: inline-block;
overflow: hidden;
}

.side-thumbnail img {
transform: scale(1, 1);
transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.side-new li a:hover img,
.related a:hover img{
transform: scale(1.05, 1.05);
opacity: 1;
}

.related .post-description,
.side-description{
width: 68%;
}

.sidebar h4{
font-size: 13px;
margin-bottom: 0;
font-weight: 300;
}

.sidebar .side-active select{
color: #333333;
border: 1px solid #333333;
width: 100%;
padding: 5px
}

.related{margin-top: 80px;}

h2.related-tit{
font-size: 18px;
padding: 5px 0;
max-width: 100%;
border-bottom: 1px solid #333333;
}




/* 前後の記事 */
.page-article{margin-top: 80px;}

.previous-article,
.next-article{
width: 35%;
font-size: 13px;
}

.previous-article a,
.next-article a{
display: flex;
align-items: center;
}

.previous-article a:before{
content: "";
display: inline-block;
padding-left: 25px;
height: 25px;
margin: 0 10px;
border-left: 1px solid #9fa0a0;
border-bottom: 1px solid #9fa0a0;
transform: rotate(45deg);
}

.next-article  a{
justify-content: flex-end;
}

.next-article a:after{
content: "";
display: inline-block;
padding-left: 25px;
height: 25px;
margin: 0 10px;
border-right: 1px solid #9fa0a0;
border-top: 1px solid #9fa0a0;
transform: rotate(45deg); 
}
