@charset "utf-8";
main{
	margin-bottom: 120px;
	/* margin: 150px 0 120px; */
}
main .ttlimg {
	display: block;
	max-width: 1100px;
	margin: 0 auto;
}
h1.ttl{
	/* max-width: 840px; */
	max-width: 1100px;
	font-size: 34px;
	line-height: 1.5;
	/* text-align: center; */
	margin: 35px auto 0;
}
.mainImg{
	margin: 20px 0 0;
}
.snsicon{
	font-size: 0;
	text-align: right;
	margin: 20px 0 0;
}
.snsicon li{
	width: 30px;
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
	font-size: 16px;
}
.snsicon li:first-child{
	width: 45px;
	font-weight: bold;
}
.snsicon li.line{
	display: none;
}
.snsicon li:last-child{
	margin-right: 0;
}
.snsicon li img,.snsicon li.share{
	vertical-align: middle;
}
.snsicon li a{
	border: none;
}
.read{
	max-width: 1100px;
	margin: 20px auto 0;
}
section{
	/* max-width: 840px; */
	max-width: 1100px;
	margin: 50px auto 0;
}
section article{
	margin: 35px auto 0;
}
section article.first{
	margin-top: 0;
}
section a{
	border-bottom: dotted 1px;
}

h2.headline{
	border-left: solid 5px #047e74;
    border-bottom: solid 1px #047e74;
    padding-left: 10px;
    font-size: 26px;
	line-height: 1.5;
    margin-bottom: 20px;
}

.bg_lightbrown{
	background: #efebdf;
    padding: 25px;
    margin: 20px auto 0;
}

dl.between_lines dt{
	margin-top: 20px;
}
dl.between_lines dt:first-child{
	margin-top: 0;
}
.mt0{
	margin-top: 0 !important;
}
.mt10{
	margin-top: 10px;
}
.mt20{
	margin-top: 20px;
}
h3.point{
	font-size: 20px;
	line-height: 1.5;
}
h3.point span{
	font-size: 24px;
	color: #533c32;
}
h3 + p{
	margin-top: 10px;
}
dl.float dt{
	width: 85px;
	float: left;
	clear: left;
}
dl.float dd{
	margin-left: 100px;
}

dl.float02 {
  border-top: 1px solid #533c32;
  border-left: 1px solid #533c32;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
dl.float02 dt {
  font-weight: bold;
  width: 30%;
}
dl.float02 dd {
  width: 70%;
}
dl.float02 dt,
dl.float02 dd {
  padding: 15px;
  box-sizing: border-box;
  border-right:  1px solid #533c32;
  border-bottom: 1px solid #533c32;
}

.fs18{
	font-size: 18px;
}
/*
p span{
	background: linear-gradient(transparent 50%, #ffff99 50%);
	font-weight: bold;
} 
*/	
dt.point{
	font-weight: bold;
}  
dd.point{
	font-weight: bold;
}  



.pan{
	max-width: 1100px;
	font-size: 0;
	/* margin-top: 130px; */
	margin: 130px auto 0;
	/* padding: 0 15px; */
}
.pan li{
	display: inline-block;
	font-size: 14px;
}
.pan li a{
	padding-right: 15px;
	position: relative;
}
.pan li a::after{
	content: ">";
	position: absolute;
	top: 0;
	right: 3px;
	line-height: 1.2;
}
@media screen and (max-width:1025px) {
	.pan{
		margin-top: 116px;
	}
}

/* コラム一覧 */

section#columnlist {
	max-width: 1100px;
	margin: 0 auto;
}
section#columnlist ul {
	font-size: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
section#columnlist li {
	width: 47.5%;
	display: inline-block;
    vertical-align: top;
	font-size: 16px;
    margin-top: 5rem;
	margin-left: 5%;
	background-color: #efebdf;
}
section#columnlist li:nth-child(odd) {
    margin-left: 0;
}
section#columnlist li .inner {
    padding: 0.5rem 20px 2rem;
}
section#columnlist li .inner h2 {
	font-size: 24px;
}
section#columnlist li .inner .link {
	text-align: right;
}
section#columnlist picture,
section#columnlist figure {
	display: block;
    aspect-ratio: 1 / 0.666;
}
section#columnlist picture img,
section#columnlist figure img {
	border: 0;
	vertical-align: top;
	width: 100%;
	height: 100%;
}
@media screen and (max-width:1100px) {
	.pan{
		padding: 0 15px;
	}
	main .ttlimg{
		padding: 0 15px;
	}
	section#columnlist{
		padding: 0 15px;
	}
	section{
		padding: 0 15px;
	}
	h1.ttl {
		padding: 0 15px;
	}
	.read {
		padding: 0 15px;
	}
}
/* コラム一覧 end */


/* @media screen and (max-width:840px) {} */

@media screen and (max-width:770px) {
	.pan{
		margin-top: 65px;
	}
}
@media screen and (max-width:750px) {
	main{
		margin-bottom: 30px;
		/* margin: 100px 0 30px; */
	}
	.snsicon{
		padding: 0 15px;
	}
	.snsicon li.line{
		display: inline-block;
	}
	.mainImg{
		margin-top: 49px;
	}
	/* .mainImg img{
		height: 300px;
		object-fit: cover;
		object-position: center;
	} */
	h1.ttl {
		font-size: 28px;
	}
	h2.headline{
		font-size: 24px;
	}
	section h3{
		font-size: 20px;
	}

	dl.float02{
		display: block;
		border: none;
	}
	dl.float02 dt{
		width: 100%;
		border-right: none;
		padding: 15px 0 0;
		border-bottom: none;
	}
	dl.float02 dd{
		width: 100%;
		border-right: none;
		padding: 0 0 15px;
	}


	/* コラム一覧 */
	section#columnlist li{
		width: auto;
		margin-left: 0;
	}
	section#columnlist .flex-box {
		display: block;
		height: auto !important;
	}
	section#columnlist li .inner h2 {
		font-size: 18px;
	}
	/* コラム一覧 end */
}
@media screen and (max-width:600px) {
	.pan{
		margin-top: 46px;
	}
}

/* ページャーボタン追加 */
.pagination {
	max-width: 1100px;
	margin: 50px auto 0;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	font-size: 18px;
	color: #FFF;
}
.pagination.first-column {
	justify-content: right;
}
.pagination a span {
	font-weight: bold;
}
.pagination a {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}
.pagination a div {
	width: 420px;
	height: 70px;
	background-color: #047E74;
	border-radius: 3px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pagination a.btn_prev::before,
.pagination a.btn_next::after {
    content: "";
    display: block;
    height: 70px;
    width: 30px;
}
.pagination a.btn_prev::before {
    clip-path: polygon(0 50%, 100% 100%, 100% 0%);
    background-color: #047E74;
    border-radius: 1px;
    margin-right: -1px;
}
.pagination a.btn_next::after {
	clip-path: polygon(0 0, 100% 50%, 0 100%);
    background-color: #047E74;
    border-radius: 1px;
	margin-left: -1px;
}
@media screen and (max-width:1100px) {
	.pagination {
		padding: 0 15px;
	}
}
@media screen and (max-width:980px) {
	.pagination {
		width: 92%;
		font-size: 20px;
		padding: 0;
		letter-spacing: 1px;
		line-height: 1.4;
	}
	.pagination a {
		width: 45.5%;
	}
	.pagination a div {
		width: 100%;
		height: 100px;
		flex-direction: column;
		align-items: flex-start;
	}
	.pagination a span {
		display: block;
	}
	.pagination a.btn_prev div {
		padding-right: 6%;
		padding-left: 2%;
	}
	.pagination a.btn_next div {
		padding-left: 6%;
		padding-right: 2%;
	}
	.pagination a.btn_prev::before,
	.pagination a.btn_next::after {
        width: 12%;
		height: 100px;
	}
	.pagination a.btn_prev::before {
		margin-right: -0.5%;

	}
	.pagination a.btn_next::after {
		margin-left: -0.5%;
	}
}
@media screen and (max-width:700px) {
	.pagination { font-size: 3.6vw;}

	.pagination a div {	height: 140px;}

	.pagination a.btn_prev::before,
	.pagination a.btn_next::after {
		width: 25%;
		height: 140px;
	}
}
@media screen and (max-width:500px) {
	.pagination a div {
		height: 80px;
	}
	.pagination a.btn_prev::before,
	.pagination a.btn_next::after {
		height: 80px;
	}
}