/*
Theme Name: soichi
Theme URI:
Author: soichiro iwamoto
Author URI:
Description: Description
Version: 1.0.0
*/
/*--common------------------------------------------------------------*/
body{
  font-size:14px;
  color:#191919;
  text-rendering: optimizeLegibility;
  line-height: 1.8;
  letter-spacing:0.1em;
  padding:80px 0px 150px 0px;
  margin: 0 auto;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 300;
  font-style: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
  position:relative;
  max-width:1080px;
}
/*body.archive{
  max-width: 1330px;
  margin: 0 auto;
}*/
*,*:before,*:after{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
h1,
h2,
h3,
h4{
  line-height:1.56;
  color: #191919;
    font-weight: normal;
}
.w_1080{
  margin:0 40px;
  width: calc(100% - 80px);
}
@media screen and (max-width:578px){
  .w_1080{
    margin:0 20px;
    width: calc(100% - 40px);
  }
}
figure{
 box-sizing: border-box;
}
figure,
figcaption,
img{
  max-width:100%;
  height:auto;
  padding: 0;
  margin-left: 0;
  margin-right: 0;
}
a{
  color:#191919;
  transition:0.3s;
}
a:visited{
  color:#191919;
}
a:hover{
  color:grey;
}
p{
  margin:1em 0;
}
em{
  font-weight:500;
}
blockquote{
  background:#e6e6e6;
  padding:1em;
  border-radius: 10px;
  margin: 0;
}
blockquote cite{
  display: block;
  text-align: right;
}
iframe{
  width:100%;
}
pre{
  overflow-x: scroll;
  margin:2em 0;
  background:#333;
  color:#f8f8f8;
  line-height: 1.8em;
  font-size:0.8em;
  padding:1em;
  border-radius:10px;
}
::selection {
    background: #eee;
}

/*Firefox*/
::-moz-selection {
    background: #eee;
}
pre::selection{
  background:#191919;
}
/*Firefox*/
pre::-moz-selection {
    background: #191919;
}
table{
  border-collapse:collapse;
  border:0.5px solid #ddd;
}
table th,
table td{
  border:solid 1px #ddd;
  padding:0.5em;
}
ul,ol{
  padding-left:1em;
}
li> ul,
li > ol{
  padding-left:1.5em;
}
dl{
  margin:2em 0;
}
dt{
  font-weight:700;
  margin-top:2em;
  margin-bottom:1em;
}
dd{
  margin-left:0.5em;
  padding-left:0.5em;
}
input{
	font-size:16px;
}
input.search-field,
input[type="text"],
input[type="email"],
textarea{
	-webkit-appearance: none;
	appearance: none;
	font-size:16px;
	width:100%;
	padding:0.5em;
	border-radius: 0;
	border:solid 1px #191919;
	outline:0;
}
input[type="text"],
input[type="email"],
textarea{
	border-radius: 3px;
	padding:1em;
	margin-top:0.5em;
}
input.search-field:focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus{
	background:#fff;
}
input[type="submit"]{
	-webkit-appearance: none;
	appearance: none;
	margin-left:3px;
	padding:0 1em;
	border-radius:0;
	box-shadow:0;
	border:0;
	cursor:pointer;
	background:#191919;
	color:#fff;
	transition:0.3s;
}

.wpcf7-form input[type="submit"],
.mw_wp_form input[type="submit"]{
	width: 100%;
	height: 60px;
	margin-top: 2em;
}
.wpcf7-form input[type="submit"]:hover,
.mw_wp_form input[type="submit"]:hover{
	background:grey;
}

/*@media screen and (min-width:1000px){
  .w_1080{
    width:calc(100% - 80px);
    display:flex;
    justify-content:space-between;
  }
  .w_1080 main{
    width:calc(100% - 320px);
  }
  .w_1080 aside{
    width:260px;
  }
}*/
#breadcrumb > div{
  display: inline-block;
  font-size:0.8em;
}
.archive #breadcrumb{
  margin-bottom:1em;
}
.bebas-neue-by-fontfabric{
  font-family: "ff-basic-gothic-pro", sans-serif;
  font-weight: 200;
  font-style: normal;
}
/*--------------------------------------------------------------------*/
/*Editor color palette.------------------------------------------------*/
.has-black-color{color: #000000}
.has-dark-gray-color{color: #28303D}
.has-gray-color{color: #39414D}
.has-green-color{color: #D1E4DD}
.has-blue-color{color: #D1DFE4}
.has-purple-color{color: #D1D1E4}
.has-red-color{color: #E4D1D1}
.has-orange-color{color: #E4DAD1}
.has-yellow-color{color: #EEEADD}
.has-white-color{color: #FFFFFF}

.has-black-background-color{background-color: #000000}
.has-dark-gray-background-color{background-color: #28303D}
.has-gray-background-color{background-color: #39414D}
.has-green-background-color{background-color: #D1E4DD}
.has-blue-background-color{background-color: #D1DFE4}
.has-purple-background-color{background-color: #D1D1E4}
.has-red-background-color{background-color: #E4D1D1}
.has-orange-background-color{background-color: #E4DAD1}
.has-yellow-background-color{background-color: #EEEADD}
.has-white-background-color{background-color: #FFFFFF}
/*---------------------------------------------------------------*/
/*スクロール時のfadeupアニメーション*/
.fadeUpTrigger{
opacity: 0;
}
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration:2s;
    animation-fill-mode:forwards;
    opacity: 0;
}
@keyframes fadeUpAnime{
from {
    opacity: 0;
    transform: translateY(100px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
/*-----------------------------*/
/*--スライドショー--*/
/*矢印の設定*/

.slick-prev,
.slick-next {
    position: absolute;
	z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #191919;/*矢印の色*/
    border-right: 2px solid #191919;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    margin-top:-20px;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    margin-top:-20px;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
	position: relative;
	z-index: 3;
    text-align:center;
	margin:0px 0 0 0;/*ドットの位置*/
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:35px;/*ドットボタンのサイズ*/
    height:3px;/*ドットボタンのサイズ*/
    display:block;
    background:#191919;/*ドットボタンの色*/
    border:0;
    padding:0;
    opacity:50%;
    border-radius:1px;
}

.slick-dots .slick-active button{
    background:#191919;/*ドットボタンの現在地表示の色*/
    opacity:100%;
}
/*--スライドショーエンド--*/
/*--header-------------------------------------------------------*/
#main_header{
  padding:0 40px;
  position:fixed;
  width:100%;
  height:60px;
  z-index:999;
  top:0;
  left:0;
  right:0;
  max-width:1330px;
  margin:0 auto;
}
/*.archive:not(.post-type-archive-news) #main_header{
  max-width:1330px;
  margin:0 auto;
}*/
@media screen and (min-width:578px){
  #main_header{
    display:flex;
    justify-content: space-between;
  }
}
@media screen and (max-width:578px){
  #main_header{
    padding:0 20px;
  }
}
.site-title,
.site-description{
  font-size:1em;
  display:inline-block;
  line-height:60px;
  padding:0;
  margin:0;
}
.site-title{
  font-weight:bold;
}
@media screen and (min-width:578px){
  .site-title{
    width:160px;
  }
}
.site-title a{
  color:#191919;
  text-decoration:none;
  font-weight: 700;
  font-style: normal;
}
.site-title img{
  display: block;
  width:auto;
  height:20px;
  margin-top:20px;
}
.site-description{
  color:#191919;
}
/*@media screen and (min-width:1081px){
  .main-navigation{
    position: fixed;
    top:120px;
  }
  .main-navigation ul{
    display: block;
  }
}*/
@media screen and (min-width:880px){
  #jsNavBtn{
    display: none;
  }
  .main-navigation ul{
    list-style: none;
    padding:0;
    margin:0;
  }
  .main-navigation ul li{
    margin-right:2em;
  }
  .main-navigation a{
    line-height: 60px;
    display: block;
    text-decoration: none;
    font-weight: 700;
    font-size: 12px;
  }
}
@media screen and (min-width:880px)/* and (max-width:1080px)*/{
  .main-navigation ul{
    display: flex;
  }
}
@media screen and (max-width:880px){
  .main-navigation{
    background:#f7f7f7;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    width:100%;
    z-index:1000;
    opacity:0;
    visibility: hidden;
    transition:0.3s;
    overflow-y:scroll;
  }
  .main-navigation > div{
    padding:60px 20px 20px 20px;
  }
  .main-navigation ul{
    margin:0;
    list-style:none;
  }
  .main-navigation ul li{
    margin-bottom:30px;
  }
  .main-navigation ul li a{
    font-size:1.25em;
  }
  .main-navigation div > menu > ul li{
    margin-bottom:1em;
  }
  .main-navigation div > menu > ul ul{
    margin-top:1em;
  }
  .main-navigation a{
    text-decoration:none;
    font-size:1.2em;
  }
  .openNav .main-navigation{
    opacity:1;
    visibility: visible;
    transition-delay: 0.3s;
  }
  .openNav .main-navigation a{
    color:#191919;
  }
}
/*@media screen and (min-width:1000px){
  .main-navigation div > menu{
  padding:60px;
  }
  .main-navigation div > menu > ul{
  display: flex;
  flex-wrap:wrap;
  justify-content: flex-start;
  }
  .main-navigation div > menu > ul > li{
  width:30%;
  margin-right:5%;
  }
  .main-navigation div > menu > ul > li:nth-of-type(3n){
    margin-right:0;
  }
  .main-navigation a{
    font-size: 1.5em;
    line-height: 1.5;
  }
}*/
#jsNavBtn{
    position:fixed;
    z-index:2000;
    width:30px;
    height:18px;
    top:20px;
    right:20px;
    cursor:pointer;
    opacity:1;
    visibility:visible;
  }
#jsNavBtn span{
    display:block;
    width:100%;
    height:2px;
    background:#191919;
    transition:opacity 0.3s,transform 0.3s;
  }
#jsNavBtn span:nth-of-type(1),
#jsNavBtn span:nth-of-type(2){
    margin-bottom:6px;
  }
#jsNavBtn span:nth-of-type(1),
#jsNavBtn span:nth-of-type(3){
    transition-delay:0s;
  }
#jsNavBtn span:nth-of-type(2){
    transition:0.3s;
    transition-delay:0.3s;
  }
  /*--.openNav
  .openNav #jsNavBtn span{
    background:#fff;
  }-------*/
  .openNav #jsNavBtn span:nth-of-type(1){
    transform:translateY(8px) rotate(45deg);
    /*background-color:#f8f8f8;*/
    transition-delay:0.3s;
  }
  .openNav #jsNavBtn span:nth-of-type(2){
    width:0;
    opacity:0;
    transition-delay:0s;
  }
  .openNav #jsNavBtn span:nth-of-type(3){
    transform:translateY(-8px) rotate(-45deg);
   /*background-color:#f8f8f8;*/
    transition-delay:0.3s;
  }
@media screen and (min-width:1000px){
  #main_header{
    padding:0 40px;
  }
}
@media screen and (max-width:587px){
  .site-description{
    display:none;
  }
}
/*---------------------------------------------------------------*/
/*---sidebar-----------------------------------------------------*/
aside .widget{
  margin:30px 0;
}
aside .widget:nth-of-type(1){
  margin-top:0;
}
aside .widget:nth-last-of-type(1){
  margin-bottom:0;
}
h3.widget__title{
  margin:0;
  margin-bottom:0.5em;
  font-size:1em;
  font-family: heisei-kaku-gothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
}
.search-form{
  display: flex;
}
.search-form label{
  width:100%;
}
input.search-field{
  width:100%;
  padding:4px;
}
input[type="submit"]{
  margin-left:3px;
}
.widget ul{
  margin:0;
  padding:0;
}
.widget li{
  border-bottom:solid 1px #ddd;
  list-style:none;
  margin-bottom: 1rem;
}
.widget li a{
  text-decoration:none;
  color:#191919;
  line-height:2em;
  font-size:0.8em;
}
.widget_tag_cloud{
  display: flex;
  justify-content: start;
  position:relative;
}
.widget_tag_cloud::before{
  content:"";
  height:calc(100% - 2em);
  width:1px;
  display:block;
  position:absolute;
  background:#ddd;
  left:5px;
  bottom:0;
  z-index:-1;
}
.widget_tag_cloud > h3{
  margin:0;
  margin-right:0.8em;
  color:#191919;
}
.tag-cloud-link{
  font-size:0.8em !important;
  display:inline-block;
  text-decoration: none;
  color:#191919;
  line-height:20px;
  padding:0 5px;
  font-weight:300;
}
/*---------------------------------------------------------------*/
/*--fotter-------------------------------------------------------*/
.site-footer{
  margin-top: 80px;
  position:absolute;
  right:48px;
  bottom:48px;
}
@media screen and (max-width:640px){
  .site-footer{
    right:20px;
    bottom:20px;
  }
}
.site-footer .copyright{
  text-align: right;
  font-size:12px;
  font-weight:300;
}
.site-footer .copyright p{
  margin:0;
}
/*---------------------------------------------------------------*/
/*--archive------------------------------------------------------*/
.archive:not(.post-type-archive-news) .w_1080{
  max-width:1330px;
}
.entries-article{
margin:0 0 10px 0;
}
.top-section__heading{
  font-family: "ff-basic-gothic-pro", sans-serif;
  font-weight: 200;
  font-style: normal;
  font-size: 2em;
}
.category .top-section__heading{
  font-family: heisei-kaku-gothic-std, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2em;
}
@media screen and (min-width:641px){
  .archive:not(.post-type-archive-news) .entries{
    display: flex;
    flex-wrap:wrap;
    justify-content:flex-start;
  }
}
@media screen and (max-width:768px) and (min-width:641px){
  .archive:not(.post-type-archive-news) .entries-article{
    width:calc(50% - 5px);
    margin-right:10px;
  }
  .archive:not(.post-type-archive-news) .entries-article:nth-of-type(2n){
    margin-right: 0;
  }
}
@media screen and (min-width:768px){
  .archive:not(.post-type-archive-news) .entries-article{
    width:calc(33.3333% - 10px);
    margin-right:15px;
  }
  .archive:not(.post-type-archive-news) .entries-article:nth-of-type(3n){
    margin-right: 0;
  }
}
.archive:not(.post-type-archive-news) .entries-article__info{
  margin-top:1em;
  margin-bottom:2em;
}
.post-eyecatch{
  height:auto;
  width:100%;
  overflow: hidden;
  position:relative;
}
.post-eyecatch:before{
  content:"";
  display: block;
  padding-top:56.25%;
}
.post-eyecatch img{
  display:block;
  width: 100%;
  object-fit: cover;
  position:absolute;
  top:0;
  left:0;
  transition:0.3s;
}
.post-eyecatch a:hover img{
  transform: scale(1.05);
}
.entries-article__time{
  color:#191919;
}
.entries-article__title{
  margin:0;
  font-size:1em;
}
.entries-article__title a{
  text-decoration:none;
  color:#191919;
}
/*.entries-article p{
  font-size:0.9em;
}*/
.more_read_button{
display: block;
text-align: right;
margin-bottom:1em;
}
.more_read_button a{
  font-family: 'ff-basic-gothic-pro','Noto Sans JP',sans-serif;
  font-weight: 700;
  color:#191919;
  display: inline;
}
.cat_wrap,
.tag_wrap{
display:flex;
flex-wrap:nowrap;
font-size:0.8em;
align-items: center;
}

.cat_wrap ul,
.tag_wrap ul{
  padding:0;
  margin:0;
}
.cat_wrap ul li,
.tag_wrap ul li{
  list-style: none;
  display:inline-block;
  margin-left:4px;
  margin-bottom:4px;
}
.cat_wrap a,
.tag_wrap a{
  text-decoration: none;
  color:#191919;
  display: block;
  line-height:20px;
  padding:0 5px;
  font-weight:300;
}
.cat_wrap a,
.tag_wrap a,
.tag-cloud-link{
  border:solid #191919 1px;
  border-radius:3px;
}
.cat_wrap a:hover,
.tag_wrap a:hover,
.tag-cloud-link:hover{
  color:#191919;
}
/*--pagination--*/
.pagination ul{
  display: flex;
  list-style: none;
  justify-content: flex-start;
  flex-wrap: nowrap;
  padding:0;
  margin:0;
}
.pagination{
  margin: 60px 0;
}
.pagination li{
  min-width:30px;
  min-height:40px;
  margin:0 2px;
}
.pagination li a,
.pagination li span{
  display: block;
  line-height:40px;
  width:100%;
  height:100%;
  text-align: center;
  text-decoration: none;
  color:#191919;
  border:solid 1px #191919;
  box-sizing:border-box;
}
.pagination li span.page-numbers{
  /*! opacity: 1; */
  background: #191919;
  color: #f8f8f8;
}
.pagination li span.dots{
  border:0;
  color:#191919;
  background:0;
}
/*--pagination-_end-*/
/*---------------------------------------------------------------*/
/*--single-------------------------------------------------------*/
main h1,
main h2,
main h3,
main h4,
main h5,
main h6{
  margin:3em 0 1em 0;
}
.single-title{
  margin:1em 0;
}
.entry-header{
  margin-bottom:2em;
  padding-bottom:2em;
  border-bottom:solid 1px #ddd;
}
.single .post-eyecatch{
  margin-bottom:2em;
}
.single .post-date{
  font-size:0.8em;
}
.single .pubdate{
  margin-right:0.8em;
}
.tag_category_wrap{
  display:flex;
  margin-top:5px;
  flex-wrap: wrap;
}
.cat_wrap{
  margin-right:0.8em;
}
.sharedaddy{
  margin-top:2em;
}
/*---------------------------------------------------------------*/
/*----front-page-------------------------------------------------*/
body.home {
  padding-top:60px;
}
@media screen and (min-width: 1081px){
body.home {
    padding-top: 0px;
}
}
.home main h1{
  width: 160px;
  margin-top: 145px;
  margin-bottom:145px;
}
/*@media screen and (max-width:587px){
  .home  main h1{
    width: 200px;
    margin-top: calc(50vh - 80px);
    transform: translateY(-51px);
  }
}*/
.home h2{
  font-size:2em;
  font-weight: 700;
  margin-bottom:1em;
  line-height: 0.7em;
}
.home h2 span{
  font-size: 0.333333333em;
  font-weight:300;
  font-family: heisei-kaku-gothic-std, sans-serif;
}
.home h2.entries-article__title{
  font-size:1.2em;
  line-height: 1.8em;
  line-height: 1.56;
}
.home .news_wrap{
  margin-top:6em;
}
.home .news_wrap h2{
  font-size:2em;
  margin-top:0;
  line-height: 1.8em;
}
.home .news_wrap .entries-article{
  display: flex;
}
.home .news_wrap  .entries-article__time {
    padding-right: 1em;
}
.home .news_wrap .more_read_button{
  border:0;
  margin:0;
  text-decoration: underline;
  display: inline;
}
@media screen and (min-width:641px){
.home .works_wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.home .works_wrap .entries-article{
  width:calc(50% - 5px);
}
}
.home .slick-prev,
.home .slick-next {
  position: absolute;
	z-index: 3;
  top: calc(50% - 7px);
  }

.home .more_read_button{
  font-size: 0.8em;
  margin:2em auto 0 auto;
  border:1px #191919 solid;
  text-decoration:none;
  line-height: 3em;
  height:3em;
  text-align: center;
  width:200px;
}

/*--contact-------------------------*/
.page-id-23 .w_1080,
.privacy-policy .w_1080{
  max-width:800px;
}
.page-id-23 h1{
  margin-top:3em;
  font-size:2em;
  font-family: "ff-basic-gothic-pro", sans-serif;
  font-weight: 200;
  font-style: normal;
}
/*--news archive---------------------*/
body.post-type-archive-news{
  max-width:1000px;
}
.post-type-archive-news .entries-article{
  margin:60px 0;
  border-bottom:solid 1px #c5c5c5;
}
/*-----------------------------------*/
