@charset "utf-8";
/*
 Theme Name: MY THEME
Author: CATWALK
Description: オリジナルテーマです
Version: 1.0
 */

.alignleft{
	float: left;
	margin-left:0;
	margin-right:1em;
}

.alignright{
	float: right;
	margin-left:1em;
	margin-right:0;
}

.aligncenter{
	margin-right:auto;
	margin-left:auto;
}

.wp-block-categories.aligncenter,
.wp-block-latest-posts.aligncenter,
.wp-block-archives.aligncenter,
.wp-block-tag-cloud.aligncenter,
.wp-block-latest-comments.aligncenter,
.wp-block-rss.aligncenter{
text-align:center;
}

figure{
	margin-left:0;
	margin-right:0;
}

body{
	font-family: sans-serif;
}
p{
	line-height: 1.8;
	font-size: var(--f5);
}
.wp-block-image img{
	height: auto;
}
:root{
	--f1: 2.44em;
	--f2: 1.95em;
	--f3: 1.56em;
	--f4: 1.25em;
	--f5: 1em;
	--f6: 0.8em;
	
	--basecolor: #63a211;
	--gradient:linear-gradient( 72.5deg,  rgba(34,126,34,1) 6.4%, rgba(99,162,17,1) 84.8% );
	
	--myfont: 'Josefin Sans','sans-serif';
	
	--myw:720px;
}
h1{
	font-size: var(--f1);
}
h2{
	font-size: var(--f2);
}
h3{
	font-size: var(--f3);
}
h4{
	font-size: var(--f4);
}
h5{
	font-size: var(--f5);
}
h6{
	font-size: var(--f6);
}
h2{
	border-left: solid 14px var(--basecolor);
	padding-left: 14px;
}
body{
	margin: 0;
}
.mycontainer{
	margin-left: 10px;
	margin-right: 10px;
}
.alignfull{
	max-width: none;
	width: auto;
	margin-left: -10px;
	margin-right: -10px;
	}

@media (min-width: 740px){
	.mycontainer{
		max-width: none;
		margin-left: calc((100vw - var(--myw))/2);
		margin-right: calc((100vw - var(--myw))/2);
	}
	.alignfull{
		margin-left:calc((100vw - var(--myw))/2*-1);
		margin-right:calc((100vw - var(--myw))/2*-1);
	}
	.alignwide{
		margin-left:calc((100vw - var(--myw))/4*-1);
		margin-right:calc((100vw - var(--myw))/4*-1);
		max-width:none;
		width:auto;
	}
}

@media (min-width:1320px){
	.alignwide{
		margin-right:-150px;
		margin-left:-150px;
	}
}

.myposthead{
	padding-top: 20px;
	padding-bottom: 25px;
	text-align: center;
}
a{
	color: inherit;
	text-decoration: none;
}
a:hover{
	opacity:0.7;
}
.post-categories{
	display: flex;
	justify-content: center;
	padding:0;
	list-style-type:none;
}
.post-categories li:not(:last-child){
	margin-right:10px;
}
.post-categories a{
	padding: 3px 10px;
	border:solid 1px currentColor;
	border-radius:10px;
	color:var(--basecolor);
	font-size:var(--f6);
}
.nav-links{
	display: flex;
	margin: 30px 0;
	font-size: var(--f6);
}
.nav-previous{
	flex:1;
	display:flex;
	align-items:center;
}
.nav-next{
	flex:1;
	margin-left:10px;
	text-align:right;
	display:flex;
	align-items:center;
	justify-content:flex-end;
}
.post-categories::before{
	content: "\f318";
	font-family:"dashicons";
	color:var(--basecolor);
	font-size:var(--f3);
	line-height:1;
	margin-right:5px;
}
.nav-previous::before{
	content: "\f141";
}
.nav-next::after{
	content: "\f139";
}
.nav-previous::before,.nav-next::after{
	font-family:"dashicons";
	color:var(--basecolor);
	font-size:var(--f2);
	line-height:1;
}

/*　ヘッダー  */
.myhead>div{
	color: #444444;
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:20px 0;
}
.myhead a{
	font-size:var(--f3);
	font-family:var(--myfont);
}
.myhead p{
	font-size:var(--f6);
}
.myfoot{
	padding:16px;
	background-color:var(--basecolor);
	background-image:var(--gradient);
	color:#fff;
	text-align:center;
	font-family:var(--myfont);
}
.myposthead p{
	color:var(--basecolor);
	font-family:var(--myfont);
	font-weight:bold;
}
.attachment-post-thumbnail{
	max-width:100%;
	height:auto;
}
.mypostlist{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.mypostlist article{
	width:48%;
	margin-bottom:20px;
}
.mypostlist figure{
	margin:0;
}
.mypostlist h2,
.mypostlist h3{
	margin:0;
	padding:0;
	border:none;
	font-size:var(--f6);
}
.mypostlist img{
	height:180px;
	object-fit:cover;
}
.pagination .nav-links{
	margin-bottom:50px;
	justify-content:center;
}
.pagination .page-numbers:not(:last-child){
	margin-right:15px;
}
.pagination a{
	color:var(--basecolor);
}
.pagination .current{
	color:#aaa;
}
/*　メニュー  */
.mymenu{
	background-color:#fbf6e8;
	margin-top:40px;
	padding-top:40px;
	padding-bottom:40px;
}
.mymenu h2{
	padding:10px;
	border:none;
	background-color:var(--basecolor);
	color:#fff;
	font-family:var(--myfont);
	font-size:var(--f5);
}
.myprofile figure{
	text-align:center;
}
.myprofile img{
	width:120px;
	height:120px;
	border-radius:50%;
}
.myprofile strong{
	display:block;
	text-align:center;
	font-family:var(--myfont);
}
.myprofile p{
	font-size:var(--f6);
}
.widget ul{
	padding:0;
	list-style-type:none;
	font-size:var(--f6);
}
.widget li:not(:last-child){
	margin-bottom:5px;
}
.widget select{
	width:100%;
	height:40px;
	border:solid 1px #aaa;
}
@media (min-width:740px){
	.mymenu-columns{
		columns:3;
		column-gap:30px;
	}
	.mymenu-columns>section{
		position:relative;
		overflow:hidden;
		break-inside:avoid;
	}
}
.mymargin{
	margin-top:40px;
	margin-bottom:40px;
}

/*お問い合わせ  */
.wpcf7-text,
.wpcf7-textarea{
	width:100%;
	padding:10px;
	border:1px solid #bbb;
}
.wpcf7-submit{
	width:250px;
	padding:10px;
	border:none;
	background-color:#fa0;
	-webkit-appearance:none;
}
/*ナビゲーションメニュー  */
.mynav{
	padding:7px 0;
	background-image:var(--gradient);
	color:#fff;
	font-size:var(--f6);
}
.mynav ul{
	display:flex;
	margin:0;
	padding:0;
	list-style-type:none;
}
.mynav li:not(:last-child){
	margin-right:1em;
}
/*関連記事  */
.myrelated{
	border:solid 1px var(--basecolor);
	padding:0 10px;
}
.myrelated h2{
	border-width:5px;
	color:var(--basecolor);
	font-family:var(--myfont);
	font-size:var(--f5);
}
.myrelated img{
	height:120px;
}
@media (min-width:740px){
	.myrelated article{
		width:24%;
	}
	.myrelated .mypostlist{
		justify-content:flex-start;
	}
	.myrelated article:not(:last-child){
		margin-right:calc(4%/3);
	}
}
.myshare .mytwitter{
	color:#1da1f2;
}
.myshare .myfacebook{
	color:#3b5998;
}
.myshare a{
	width:43%;
	padding:10px;
	border:solid 1px currentColor;
	line-height:1;
	text-align:center;
}
.myshare{
	margin-top:60px;
	margin-bottom:40px;
}
.myshare h2{
	padding:0;
	border:none;
	color:var(--basecolor);
	font-family:var(--myfont);
	font-size:var(--f5);
	text-align:center;
	line-height:1.2;
}
/*２段組み  */
@media (min-width:1320px){
	.mycols{
		display:flex;
		margin:50px calc((100vw - 1020px)/2);
		justify-content:space-between;
	}
	.mycols .mycontent{
		width:68%;
	}
	.mycols .mymenu{
		width:26%;
		margin-top:0;
		padding:10px;
	}
	.mycols .mycontainer,
	.mycols .alignwide,
	.mycols .alignfull{
		width:auto;
		max-width:none;
		margin-left:0;
		margin-right:0;
	}
	.mycols .mymenu-columns{
		columns:1;
	}
}