@charset "utf-8";

/*
theme Name: 4+adachi
Author: Yaya-Design Haruna Abe
Description: original theme
version： 2.0.0
*/
/*cssのリセット*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, abbr, address, cite, code, del, dfn, em, img,
ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd,
ol, ul, li, fieldset, form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details,
figcaption, figure, footer, header, hgroup, menu, nav, section,
summary, time, mark, audio, video {
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: 0;
	outline: 0;
	background: transparent;
}

body {
	line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
	color: #333;
}

a :hover{
	opacity: 0.8;
}

ins {
	text-decoration: none;
	color: #000;
	background-color: #ff9;
}

mark {
	font-weight: bold;
	font-style: italic;
	color: #000;
	background-color: #ff9;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	cursor: help;
	border-bottom: 1px dotted;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

hr {
	margin: 4rem auto;
	padding:0;
	border: 0;
	width: 35%;
	height: 8px;
	background-image: repeating-linear-gradient(45deg, #333 0, #333 1px, transparent 0, transparent 50%);
	background-size: 8px 8px;
}


html {
	font-size: 16px/*1.05rem*/;
}

table{
	margin: 50px auto;
}

body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	line-height: 1.7;
	margin: 0;
	padding: 0;
	color: #333;
}

/*見出しを全て太字で表示 + 文字色を黒に*/
h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
}

h1{
	font-size: 1.75rem;
	padding: 0.5em 0;
	border-top: solid 1px #333;
	border-bottom: solid 1px #333;
	margin-bottom: 50px
}

h2{font-size: 1.6rem;}
h3{font-size: 1.25rem;}

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

video{
	width:100%;
	height:auto;
}



/*---------------------------------------------------------
共通
---------------------------------------------------------*/

p {
    margin-bottom: 1rem;
}

.right{
	text-align: right;
}

.small{
	font-size: 0.8rem;
}

/*コンテンツのサイズ指定*/
.header-inner,
.footer-inner {
	width: 100%;
	box-sizing: border-box;
}

.container{
	box-sizing: border-box;
	max-width: 800px;
	margin:0 auto 100px auto;
	padding: 2rem;
}

/* tablet 〜1000px */
@media screen and (max-width:1000px){
	.container{
		max-width: 85%;
	}
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.container{
		max-width: 100%;
	}
}


/*---------------------------------------------------------
背景・ヘッダー
---------------------------------------------------------*/
header{
	width: 100%;
}

.header-inner{
	height: 100px;
}

.site-title-wrap {
	box-sizing: border-box;
    position: absolute;
	top: -10px;
    left: 50px;
}

.site-title-wrap a img {
	position: fixed;
	z-index: 99;
	width: 25%;
	height: auto;
}

/* tablet 〜1000px */
@media screen and (max-width:1000px){
	.site-title-wrap {
		top: 0;
		left: 20px;
	}

	.site-title-wrap a img {
		width: 35%;
	}
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.site-title-wrap {
		top: 0;
		left: 10px;
	}

	.site-title-wrap a img {
		width: 45%;
	}
}


.haikei{
	box-sizing: border-box;
	z-index: -999;
	position: fixed;	
	width: 100%;
	height: 100vh;
	margin: 0 auto;
}

.haikei img.h-l-top,
.haikei img.h-l-btm,
.haikei img.h-r-top,
.haikei img.h-r-btm,
.haikei img.h-cmyk{
	position: absolute;
	width: 50px;
	height: auto;
}

.haikei img.h-text{
	position: absolute;
	height: 350px;
	width: auto;
	top: 100px;
    right: 20px;
}

.haikei img.h-l-top{
	top:10px;
	left: 10px;
}

.haikei img.h-l-btm{
	bottom:10px;
	left: 10px;
}

.haikei img.h-r-top{
	top: 10px;
	right: 10px;
}

.haikei img.h-r-btm{
	bottom: 10px;
	right: 10px;
}

.haikei img.h-cmyk{
    bottom: 70px;
    right: 0;
}

/* tablet 〜1000px */
@media screen and (max-width:1000px){
	.haikei img.h-cmyk{
		display: none;
	}
	
	.haikei img.h-l-btm{
		bottom:65px;
	}

	.haikei img.h-r-btm{
		bottom: 65px;
	}
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.haikei img.h-l-top,
	.haikei img.h-l-btm,
	.haikei img.h-r-top,
	.haikei img.h-r-btm,
	.haikei img.h-cmyk{
		width: 35px;
	}

	.haikei img.h-text{
		right: 5px;
		
	}
	
	.haikei img.h-r-btm,
	.haikei img.h-l-btm{
		display: none;
	}
}


.mainmenu{
	list-style-type: none;
	position: relative;
}

.mainmenu ul{
	position: absolute;
	top: 40px;
	right: 100px;
    position: fixed;
    z-index: 100;
}

.mainmenu ul li{
	display: inline-block;
	margin-left: 2rem;
	text-decoration: none;
	background-image: linear-gradient(90deg, #fff, #fff);
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 0 1px;
	position: relative;
}

.mainmenu ul li a:hover {/*ホバーで三角*/
    font-weight: bold;
	transition:0s;
}

.mainmenu ul li a:hover:after {
    border-top: 0;
    border-bottom: solid 20px #00A1E9;
    border-left: solid 12px transparent;
    border-right: solid 12px transparent;
    width: 0;
    height: 0;
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    bottom: -20px;
}

.mainmenu ul li:nth-child(2) a:hover:after {
    border-bottom: solid 20px #E8007E;
}

.mainmenu ul li:nth-child(3) a:hover:after {
    border-bottom: solid 20px #FFEF01;
}

/*SP nav*/

.footer-nav-wrap{
	display: none;
}

@media screen and (max-width:1000px){
	
	.mainmenu{
		display: none;
	}

	.footer-nav-wrap{
		display: block;
	}

	.footer-nav {
		position: fixed;
		display: block;
		background: #fff;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 100;
	}

	.footer-nav ul {
		height: 55px;
		list-style: none;
		padding: 0;
		margin: 0;
		display: flex;
		justify-content: space-evenly;
	}

	.footer-nav ul li {
		flex: 1;
	}
	
	.footer-nav ul li:nth-child(1){background-color: #00A1E9}
	.footer-nav ul li:nth-child(2){background-color: #E8007E}
	.footer-nav ul li:nth-child(3){background-color: #FFEF01}
	.footer-nav ul li:nth-child(4){background-color: #000000}
	
	.footer-nav ul li a {
		height: 55px;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		color: #000;
		text-decoration: none;
		font-weight: bold;
		font-size:0.8rem;
		color: #fff;
	}
}


/*---------------------------------------------------------
フッター
---------------------------------------------------------*/

.copyright {
	text-align: center;
}

.copyright p {
	font-size: 0.8rem;
}

@media screen and (max-width:1000px){
	.footer{
		margin-bottom: 60px
	}
}

.top-bnr{
	width:20%;
	height:auto;
	margin:0 auto 50px auto;
	text-align: center;
}

.top-bnr img{
	border:1px solid #000;
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.top-bnr{
		width:100%;
	}
}

/*---------------------------------------------------------
TOPページ
---------------------------------------------------------*/

.main{
	box-sizing: border-box;
	margin: 0 auto 100px auto;
}

.main img{
	margin-bottom: 50px;
}

.main p{
	letter-spacing: 0.15em;
	line-height: 1.7;
}

/* SP 〜599px */
@media screen and (max-width:599px){
.main br{
	display:none;
}
}

/* スライダー */
.css-carousel-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.css-carousel-slider img {
    width: 100%;
    height: auto;
    vertical-align: top;
}

/* スライド設定 */
.css-carousel-slider .slide-wrap {
    width: 400%; /* 画像の合計数*100%を設定(*2) */
    position: absolute;
    display: flex;
    top: 0;
    left: 0;
    z-index: 0;
    animation: css-carousel-slider 20s infinite; /* スライダーアニメーション全体の時間(*3) */
    animation-delay: 2s; /* スライダーが始まるまでの時間(*4) */
}
.css-carousel-slider .slide-wrap-main {
    width: 100%;
    z-index: 1;
    animation: css-carousel-slider-main 20s infinite; /* (*3)と同じ内容を設定 */
    animation-delay: 2s; /* (*4)と同じ内容を設定 */
}
.css-carousel-slider .slide {
    width: 100%;
}

/* スライダーアニメーションの設定(*5) */
@keyframes css-carousel-slider {
    0% { transform: translateX(0); }

    20% { transform: translateX(calc(1 / 4 * -100%)); }
    25% { transform: translateX(calc(1 / 4 * -100%)); }

    45% { transform: translateX(calc(2 / 4 * -100%)); }
    50% { transform: translateX(calc(2 / 4 * -100%)); }

    70% { transform: translateX(calc(3 / 4 * -100%)); }
    75% { transform: translateX(calc(3 / 4 * -100%)); }

    95% { transform: translateX(calc(4 / 4 * -100%)); }
    100% { transform: translateX(calc(4 / 4 * -100%)); }
}

@keyframes css-carousel-slider-main {
    0% { transform: translateX(100%); }
    75% { transform: translateX(100%); }
    95% { transform: translateX(0%);}
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.css-carousel-slider img {
		height: 450px;
		object-fit: cover;
	}
}

.blogttl{
	width: 50%;
	margin: 50px auto;
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.blogttl{
		width: 80%;
	}

}

/*ページネーション*/
.pagination {
	margin: 2rem 0;
	text-align: center;
}

.pagination ul {
	font-size: 0;
}

.pagination ul li {
	font-size: 1rem;
	display: inline-block;
	margin-right: .5rem;
}

.pagination ul li:last-child {
	border: 0;
}

.pagination ul li a,
.pagination .current {
	display: block;
	padding: .3rem .8rem;
	border: 1px solid #333;
}

.pagination ul li .prev,
.pagination ul li .next {
	border: 0;
}

.pagination ul li a {
	text-decoration: none;
	color: #333;
}

.pagination ul li a:hover {
	opacity: .6;
}

.pagination .current {
	color: #fff;
	font-weight: bold;
	background-color: #333;
}


/*---------------------------------------------------------
投稿一覧（トップ・アーカイブ）
---------------------------------------------------------*/

.article-list{
	padding: 1.5rem;
	border: #333 solid 1px;
	margin-bottom: 2rem;
}

.img-wrap {
    position: relative;
}

.img-wrap img{
	width:100%;
}

span.cat-data {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff;
    padding: 7px 0;
    color: #666;
    font-size: 0.8rem;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

span.new-post{
	color: #E8007E;
}

.two{
	box-sizing: border-box;
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.two-item{
	box-sizing: border-box;
	width: 48%;
}

.img-wrap img {
    height: 250px!important;
    object-fit: cover;
}
/* SP 〜599px */
@media screen and (max-width:599px){

	.two{
		flex-direction: column;
	}

	.two-item{
		width: 100%;
	}
}

/*---------------------------------------------------------
投稿詳細ページ
---------------------------------------------------------*/


.article-info {
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
}

.article-info p {
    margin-bottom: 0;
	font-size: 0.9rem;
}

.article-text{
	margin: 50px auto;
}

.article-text h1 {
    border-left: 3px solid #000;
    border-top: none;
    border-bottom: none;
    padding: 0 0 0 20px;
}

.article-text h2,h3,h4,h5,h6 {
    margin: 20px 0;
	font-size:1.25rem;
}

.article-text a {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	background: transparent;
  text-decoration:underline dotted;
	color: #333;
}

.article-text a :hover{
	opacity: 0.8;
}

/*リスト（番号なし）*/

.article-text ul, ol {
  padding: 0;
}

.article-text ul li {
  position: relative;
  list-style-type: none!important;
  padding: 0.5em 0 0.5em 0.2em;
  margin-bottom: 5px;
  line-height: 1.5;
  vertical-align: middle;
}

.article-text ul li:before{ 
  display:inline-block; 
  vertical-align: middle;
  /*丸*/
  content:'';
  width:1em;
  height: 1em;
  background: #333;
  border-radius: 50%;
  margin-right: 8px;
}

/*リスト（番号あり）*/

.article-text ol {
  counter-reset: number;
  list-style-type: none!important;
  margin: 20px 0;
}

.article-text ol li {
  position: relative;
  padding-left: 30px;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 30px;
}

.article-text ol li:before{
  position: absolute;
  counter-increment: number;
  content: counter(number);
  display:inline-block;
  background: #333;
  color: white;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*キャプション*/

figure.wp-block-video {
    display: inline-block;
    position: relative;
    line-height: 1;
    overflow: hidden;
}

figure.wp-block-image{
	width:100%;
	height:auto;
    display: inline-block;
    position: relative;
    line-height: 1;
    overflow: hidden;
}

figcaption {
    padding: 0 1em;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    line-height: 3;
    color: white;
    background-color: black;
    text-align: right;
    opacity: 0.75;
    overflow: hidden;
    transition-duration: 0.5s;
}

.wp-block-video:hover figcaption {
    line-height: 0;
    transition-duration: 0.5s;
}

/* プロフィール*/

.profile {
	box-sizing: border-box;
	margin: 0 auto;
	padding: 20px;
	display: flex;
	border: dashed 3px #eaedf2;
	margin-bottom: 100px;
}
.profile_image {
	text-align: center;
	padding-right: 20px;
}
.profile_image img {
	max-width: 100px;
	border-radius: 100%;
}
.profile_text_name {
	font-weight: bold;
	margin: 6px 0;
}
.profile_text_description {
	font-size: .8em;
	margin: 6px 0;
}

.profile_text p a{
	font-weight:bold;
	font-size:.9em;
}

.profile_text p a i{
	color: #E8007E;
	margin-right: 5px;
}

@media screen and (max-width:599px) {
	.profile {
		display: block;
	}
	.profile_image {
		padding-right: 0;
	}
	.profile_image img {
		max-width: 120px;
	}
	.profile_text_name {
		margin-top: 6px;
	}
}

/*関連記事*/
.relatedkiji h2{
	font-size: 1.6rem;
	padding: 0.5em 0;
	border-top: solid 1px #333;
	border-bottom: solid 1px #333;
	margin-bottom: 30px
}

.relatedkiji img{
	width: 100%;
	height: 150px;
	object-fit: cover;
}

.relatedkiji ul{
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.relatedkiji ul li{
	width: 23%;
    list-style: none;
    padding: 0px 1%;
}

.relatedkiji ul li p{
	font-size: 0.9rem;
	margin-bottom: 0;
	font-weight: bold;
}

.relatedkiji ul li p:last-child{
	font-size: 0.7rem;
}

/* SP 〜599px */
@media screen and (max-width:599px){
	.relatedkiji ul li{
		width: 100%;
		padding: 0;
		margin-bottom: 30px
	}
}

