@charset "UTF-8";

#contents {
	padding: 15px 0 100px;
}

/* ------------------------------
    pagettl
------------------------------ */

.pagettl {
	background: url(../img/blog/bg_pagettl_pc.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.pagettl img {
	width: 178px;
	height: auto;
}

.pagettl.h200 {
	background-position: center top;
}


/* ------------------------------
	 目次 
-------------------------------  */
.contents_bg {
    background: #FFFDFA;
    padding: 2rem;
}
#toc_container {
    border: #C8DACE solid 6px;
    padding: 5vw;
}
.toc_depth_2, .toc_depth_3 {
    display: none;
}
.toc_title {
    color: #337B58;
    font-size: 3rem;
    margin-bottom: 3vw;
}
.toc_title,
.toc_list li {
    font-weight: 600;
}
.toc_list li a {
    color: #337B58;
}
.toc_depth_1 {
    color: #74A58C;
}
.toc_depth_1::after {
    content: "";
    border-right: #74A58C solid 2px;
    display: inline-block;
    height: 1.3rem;
    margin: 0 .5rem 0 0.8rem;
}
#toc_container>ul>li {
    padding-bottom: 2rem;
}
#toc_container>ul>li>ul>li {
    line-height: 1.8;
}
.toc_list li ul li {
    list-style: disc;
    list-style-position: inside;
    padding-left: 4rem;
}
.toc_list li ul li::marker {
    color: #74A58C;
}
@media screen and (min-width: 1900px){
    #toc_container {
        padding: 3vw;
    }
}
@media screen and (max-width:768px){
    .toc_title {
        font-size: 2rem;
    }
}
@media screen and (max-width:600px){
    .contents_bg {
        padding: 1rem;
    }
    #toc_container {
        border: #C8DACE solid 4px;
    }
    .toc_title {
        font-size: 1.8rem;
    }
    .toc_list li ul li {
        padding-left: 5vw;
    }
}


/* ------------------------------
    contents
------------------------------ */
.blog .list {
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 80px auto 50px;
}

.blog .list li {
	width: 485px;
	line-height: 0;
}
.blog .list li:nth-child(even){
	margin-left: 30px;
}
.blog .list li + li {
	margin-top: 40px;
}

.blog .list li:nth-child(2) {
	margin-top: 0;
}

.blog .list li a {
	display: block;
}

.blog .list li a .img {
	width: 100%;
	position: relative;
	margin-bottom: 20px;
}

.blog .list li a .img .icon_new {
	position: absolute;
	background: #ff6c02;
	text-align: center;
	display: inline-block;
	line-height: 0;
	padding: 9px 12px;
	top: 0;
	left: 0;
}

.blog .list li a .img .icon_new img {
	width: 37px;
	height: auto;
}

.blog .list li a .cate {
	display: inline-block;
	font-size: 1.2rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 2px 10px;
	border-radius: 8px;
	margin-left: 8px;
	background: #025e32;
}

.blog .list li a .date {
	display: inline-block;
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1;
	vertical-align: middle;
	color: #c1c1c1;
}

.blog .list li a .ttl {
	font-size: 1.4rem;
	letter-spacing: 0;
	line-height: 1.5;
	margin-top: 5px;
}

/*
.blog .list li a:hover .link_txt::before {
	width: 100%;
}
*/

/* ----- detail_main ----- */

.detail_main {
	background: #fffaef;
	padding: 50px;
	margin: 80px auto 50px;
}

.detail_main .blog_ttl {
	margin: 50px 0 20px;
}

.detail_main .blog_ttl .date {
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0;
	line-height: 1;
	vertical-align: middle;
	color: #c1c1c1;
}

.detail_main .blog_ttl .cate {
	display: inline-block;
	font-size: 1.6rem;
	letter-spacing: 0;
	vertical-align: middle;
	color: #fff;
	line-height: 1;
	padding: 4px 10px;
	border-radius: 12px;
	margin-left: 8px;
	background: #025e32;
}

.detail_main .blog_ttl .ttl {
	font-size: 1.8rem;
	letter-spacing: 0;
	line-height: 1.5;
	margin-top: 5px;
}

.detail_main .blog_txt p + p {
	margin-top: 1.5em;
}

.detail_main .blog_txt{
	font-size: 1.6rem;
    line-height: 1.625;
}
.detail_main .blog_txt h1{
	position: relative;
	margin: 2em 0 1em;
	font-size: 2.6rem;
    line-height: 1.3em;
    font-weight: 600;
	padding: 0.6em;
	background: #005e32;
	color: #fff;
}
.detail_main .blog_txt h1:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	border: 15px solid transparent;
	border-top: 15px solid #005e32;
	width: 0;
	height: 0;
}

/*.detail_main .blog_txt h2{
	margin: 2em 0 1em;
	font-size: 2.4rem;
    line-height: 1.3em;
    font-weight: 600;
	position: relative;
	padding-bottom: 0.5em;
	border-bottom: solid 3px #8cc63f;
}*/
.detail_main .blog_txt h2{
  padding: 0.5em;/*文字周りの余白*/
  color: #494949;/*文字色*/
  background: #f6f6f6;/*背景色*/
  border-left: solid 5px #3B8E27;/*左線（実線 太さ 色）*/
	font-weight: 600;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 30px;
	border-bottom-width: 20px;
	margin-bottom: 20px;
}

.detail_main .blog_txt h2:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #005e32;
	bottom: -3px;
	width: 30%;
}

/*
.detail_main .blog_txt h3{
	font-weight: 300;
	font-size: 2rem;
    line-height: 1.3em;
	margin: 2em 0 1em;
	padding-bottom: 0.5em;
	background: linear-gradient(transparent 70%, #005e32 70%);
}
*/
.detail_main .blog_txt h3 {
	  font-size: 24px;
    color: #444;
    margin: 40px 0 16px;
    font-weight: 700!important;
	padding:2rem;
    background-color: #efeef3;
    border-radius: 4px;
}

.detail_main .blog_txt h4{
	font-weight: 300;
	font-size:1.7rem;
    line-height: 1.3em;
	margin: 1em 0 0.5em;
	padding-bottom: 0.2em;
	border-bottom: 1px solid #005e32;
}
.detail_main .blog_txt h5{
	position: relative;
	font-weight: 300;
	font-size:1.5rem;
    line-height: 1.3em;
	margin: 1em 0 0.5em;
	padding-left: 15px;
}
.detail_main .blog_txt h5:before{
	position: absolute;
	top:0;
	left:0;
	content: "◆";
	color: #005e32;
}
.detail_main .blog_txt a{
	transition: opacity .3s ease;
	-webkit-backface-visibility: hidden;
	backface-visibility:hidden;
}
.detail_main .blog_txt a * {
	outline: 1px solid transparent;
	-webkit-backface-visibility: hidden;
	backface-visibility:hidden;
}
.detail_main .blog_txt a:hover {
	opacity: .6;
	cursor: pointer;
}
.detail_main .blog_txt .hr,
.detail_main .blog_txt hr {
    border: 0;
    background: #eee;
    border-bottom: 2px solid #666666;
    height: 1px;
    margin: 30px 0;
    clear: both;
}
.detail_main .blog_txt img{
	margin: 1em auto;
}
.detail_main .blog_txt .title01 {
	position: static;
	padding: 0 0 5px 50px !important;
	line-height: 30px !important;
	font-weight: normal;
	border-bottom: dotted 3px #115e33;
	color: #115e33;
	background: url(../img/v_f/icon_tsukasa.png) no-repeat;
}
.detail_main .blog_txt .title01:before,
.detail_main .blog_txt .title01:after{
	content: none;
}
.detail_main .blog_txt .title02 {
	position:relative;
	margin:0 -1px 50px -1px !important;
	font:bold 30px/1.6 Arial, Helvetica, sans-serif;
	text-align:center;
	color:#333;
	background:#f0e800;
	-webkit-transform: rotate(-3deg) skew(-3deg);
	-moz-transform: rotate(-3deg) skew(-3deg);
	-o-transform: rotate(-3deg) skew(-3deg);
	-ms-transform: rotate(-3deg) skew(-3deg);
	transform: rotate(-3deg) skew(-3deg);
	text-shadow:1px 1px 0 rgba(255,255,255,1);
	box-shadow:	0 1px 2px 0 rgba(0,0,0,0.2),
				30px 0 0 0 #f0e800,
				-30px 0 0 0 #f0e800;
	border-bottom: none;
	padding: 0;
}
.detail_main .blog_txt .title02:before,
.detail_main .blog_txt .title02:after{
	content: none;
}
.detail_main .blog_txt .title03 {
	position:relative;
	margin:2em 0 1em;
	padding:10px 10px 10px 30px;
	font:bold 22px/1.2 Arial, Helvetica, sans-serif;
	color:#666;
	background:#ccc;
	border-top:#ccc solid 1px;
	border-right:#999 solid 1px;
	border-bottom:#999 solid 1px;
	border-left:#ccc solid 1px;
	text-shadow:1px 1px 0 rgba(255,255,255,1);
	box-shadow:
		0 0 0 1px rgba(255,255,255,0.5) inset;
    background-image: -webkit-gradient(linear, left top, left bottom,
			from(			 rgba(220, 220, 220, 1.0)), 
			color-stop(0.25, rgba(240, 240, 240, 1.0)),
			color-stop(0.30, rgba(235, 235, 235, 1.0)),
			color-stop(0.36, rgba(240, 240, 240, 1.0)),
			color-stop(0.50, rgba(235, 235, 235, 1.0)),
			color-stop(0.80, rgba(215, 215, 215, 1.0)),
			to(				 rgba(210, 210, 210, 1.0))
			);
	background-image: -webkit-linear-gradient(top,
			rgba(220, 220, 220, 1.0), 
			rgba(240, 240, 240, 1.0) 25%,
			rgba(235, 235, 235, 1.0) 30%,
			rgba(240, 240, 240, 1.0) 36%,
			rgba(235, 235, 235, 1.0) 50%,
			rgba(215, 215, 215, 1.0) 80%,
			rgba(210, 210, 210, 1.0)
			);
	background-image: -moz-linear-gradient(top,
			rgba(220, 220, 220, 1.0), 
			rgba(240, 240, 240, 1.0) 25%,
			rgba(235, 235, 235, 1.0) 30%,
			rgba(240, 240, 240, 1.0) 36%,
			rgba(235, 235, 235, 1.0) 50%,
			rgba(215, 215, 215, 1.0) 80%,
			rgba(210, 210, 210, 1.0)
			);
	background-image: -o-linear-gradient(top,
			rgba(220, 220, 220, 1.0), 
			rgba(240, 240, 240, 1.0) 25%,
			rgba(235, 235, 235, 1.0) 30%,
			rgba(240, 240, 240, 1.0) 36%,
			rgba(235, 235, 235, 1.0) 50%,
			rgba(215, 215, 215, 1.0) 80%,
			rgba(210, 210, 210, 1.0)
			);
	background-image: linear-gradient(to bottom,
			rgba(220, 220, 220, 1.0), 
			rgba(240, 240, 240, 1.0) 25%,
			rgba(235, 235, 235, 1.0) 30%,
			rgba(240, 240, 240, 1.0) 36%,
			rgba(235, 235, 235, 1.0) 50%,
			rgba(215, 215, 215, 1.0) 80%,
			rgba(210, 210, 210, 1.0)
			);
}
.detail_main .blog_txt .title03:before{
	content:" ";
	position:absolute;
	top:0;
	left:15px;
	width:0;
	height:100%;
	border-left:#ccc solid 1px;
	border-top:none;
	border-right:none;
	border-bottom:none;
}
.detail_main .blog_txt .title03:after{
	content:" ";
	position:absolute;
	top:0;
	left:16px;
	width:0;
	height:100%;
	border-right:#eee solid 1px;
	border-bottom:none;
	bottom: auto;
}
/* 04.吹き出し */
.detail_main .blog_txt .title04{
	position:relative;
	margin:2em 15px 1em;
	padding:10px 20px;
	font:bold 24px/1.6 Arial, Helvetica, sans-serif;
	color:#333;
	border:#333 solid 3px;
	border-radius:18px;
	background:#fff;
	box-shadow:
		-7px -5px 0 0 #e8e8e8 inset,
		2px 3px 0 0 #000;
	display: inline-block;
}
.detail_main .blog_txt .title04:before{
	content:" ";
	position:absolute;
	top:100%;
	left:14px;
	width:0;
	height:0;
	border-width:20px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#333;
}
.detail_main .blog_txt .title04:after{
	content:" ";
	position:absolute;
	bottom:-27px;
	left:18px;
	width:0;
	height:0;
	border-width:14px;
	border-style:solid;
	border-color:transparent;
	border-top-color:#e8e8e8;
}
/* 05.付箋 */
.detail_main .blog_txt .title05{
	position:relative;
	margin:2em 22px 30px 10px !important;
	padding:14px 15px 0 20px;
	font-size:20px !important;
	font:normal 20px/1.3 !important;
	color:#009;
	background:#ffc;
	box-shadow:
		12px 0 0 0 #ffc,
		0 12px 0 0 #ffc,
		1px 15px 4px -3px rgba(0,0,0,0.2);
	border-bottom:none;
}
.detail_main .blog_txt .title05:before{
	content:" ";
	position:absolute;
	top:100%;
	left:100%;
	width:0;
	height:0;
	border-width:12px 12px 0 0;
	border-style:solid;
	border-color:transparent;
	border-top-color:#cc9;
}
.detail_main .blog_txt .title05:after{
	content:" ";
	position:absolute;
	padding:0 20px;
	bottom:0;
	left:10px;
	width:120px;
	height:20px;
	background:rgba(255,182,182,0.4);
	-webkit-transform: rotate(-1deg);
	-moz-transform: rotate(-1deg);
	-o-transform: rotate(-1deg);
	transform: rotate(-1deg);
	border-bottom:none;
}
.detail_main .blog_txt .aligncenter{
    display:block;	
}


/* ------------------------------
    index
------------------------------ */
.toc_depth_2 {
    display: none;
}
.toc_title {
    color: #337B58;
}
.toc_list li ul li {
    list-style: disc !important;
    list-style-position: inside !important;
}
.toc_list li ul li::marker {
    color: #337B58;
}



/*  */

@media screen and (min-width: 769px) {
	.blog .list li a:hover .link_txt::before {
		width: 100%;
	}
}

@media screen and (max-width: 768px) {
	#contents {
		padding: 40px 0 50px;
	}
	/* ------------------------------
			pagettl
	------------------------------ */
	.pagettl {
		background: url(../img/blog/bg_pagettl_sp.jpg) no-repeat;
		background-size: cover;
		background-position: center;
		padding: 0;
	}
	.txt_pagettl img {
		width: 89px;
		height: auto;
	}
	/* ------------------------------
			contents
	------------------------------ */
	.blog .list {
		flex-direction: column;
		margin: 0 auto 25px;
	}
	.blog .list li {
		width: inherit;
	}
	.blog .list li:nth-child(even){
		margin-left: 0;
	}

	.blog .list li + li {
		margin-top: 20px;
	}
	.blog .list li:nth-child(2) {
		margin-top: 20px;
	}
	.blog .list li a .img {
		margin-bottom: 10px;
	}
	.blog .list li a .img .icon_new {
		padding: 6px 8px;
	}
	.blog .list li a .img .icon_new img {
		width: 25px;
	}

	.blog .list li a .cate {
		font-size: .8rem;
		padding: 2px 6px;
		border-radius: 7px;
		margin-left: 4px;
	}
	.blog .list li a .date {
		font-size: .9rem;
	}
	.blog .list li a .ttl {
		font-size: 1.2rem;
	}

	/* ----- detail_main ----- */
	.detail_main {
		background: #fffaef;
		padding: 25px;
		margin: 0 auto 25px;
	}
	.detail_main .blog_ttl {
		margin: 15px 0 8px;
	}
	.detail_main .blog_ttl .date {
		font-size: 0.9rem;
	}
	.detail_main .blog_ttl .cate {
		font-size: 0.9rem;
		padding: 2px 6px;
		border-radius: 7px;
		margin-left: 4px;
	}
	.detail_main .blog_ttl .ttl {
		font-size: 1.2rem;
	}
	.detail_main .blog_txt{
		font-size: 1.2rem;
    	line-height: 1.416;
	}
	
	.detail_main .blog_txt h1{
		font-size: 2.4rem;
	}
	.detail_main .blog_txt h2{
		font-size: 2.2rem;
	}	
	
	/*
	.detail_main .blog_txt h3{
		font-size: 1.8rem;
		padding-bottom: 0.3em;
		border-bottom: 8px solid #005e32;
		background: none;
	}
	*/
	
	.detail_main .blog_txt h4{
		font-size: 1.6rem;
	}
	.detail_main .blog_txt h5{
		font-size: 1.4rem;
	}
	
	.detail_main .blog_txt .title01 {
		padding: 0 0 5px 40px !important;
		line-height: 30px !important;
		border-bottom: dotted 3px #115e33;
		color: #115e33;
	}
	.detail_main .blog_txt .title02 {
		margin:0 -1px 20px -1px !important;
		font:bold 1.8rem/1.6 Arial, Helvetica, sans-serif;
	}
	.detail_main .blog_txt .title03 {
		font:bold 1.8rem/1.2 Arial, Helvetica, sans-serif;
	}
	/* 04.吹き出し */
	.detail_main .blog_txt .title04{
		margin:2em 0 1em;
		padding:10px 15px;
		font:bold 1.8rem/1.6 Arial, Helvetica, sans-serif;
	}
	.detail_main .blog_txt .title05{
		font-size:1.8rem !important;
	}
}