@charset "UTF-8";

/*下層m_title
---------------------------------------------------------*/
.contentpage .m_title {
	text-align: center;
}
.contentpage .m_title > div{
	right: 0;
	margin: auto;
}
.contentpage .m_title .ft_cinz{
    font-size:412%;
	letter-spacing: 0.1em;
	color: #3F372B;
    padding-left: 0;
    margin-top: 0;
}
.contentpage .m_title h1{
    font-size:177%;
	letter-spacing: 0.05em;
	 margin-top: .5em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.contentpage .m_title .ft_cinz{
    font-size: 5.356vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
.contentpage .m_title .ft_cinz{
    font-size: 190%;
}
.contentpage .m_title h1{
   font-size: 5vw;
}
}



/*共通
---------------------------------------------------------*/
/* 日付 */
.entry-date {
    color:#665C4F!important;
}
/* タイトル */
.entry-title a:hover {
	color:#DE9682!important;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 

}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 

}



/*Single
--------------------------------------------------------------------*/
.single_page article {
    border-top:none;
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
}
.single_page article p {
	margin-top: 0;
}
.single_page .entry-inf {
	text-align: center;
	margin-bottom: 80px;
}
.single_page .entry-date {
	font-size: min(2.1vw,148%);
	margin-bottom: 1em;
}
.single_page .entry-title {
	font-size: min(3.2vw,235%);
	margin-bottom: 40px;
}
.single_page .post_cat{
	margin-bottom: 0;
}
.single_page .arrow_com.backtoList span {
	min-width: auto;
	max-width: 17em;
	width: 100%;
	padding-left: 1em!important;
	padding-right: 1em!important;
}
.single_page .list_link a {
    background: #DE9682!important;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.single_page .entry-inf {
	margin-bottom: 8%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.single_page .entry-inf {
	margin-bottom: 10%;
}
.single_page .entry-title {
	font-size: 125%;
}
}



/*Single - TOC
-----------------------------------------------*/
.single_page #toc_container {
	display: block !important;
	background: transparent !important;
	width: 96%;
	max-width: 1100px;
	font-size: 85%;
	letter-spacing: .12em;
	line-height: 1.2em;
	border-top: #B79839 solid 2px;
	margin: 7.2% auto;
}
.single_page #toc_container .toc_title {
	position: relative;
	color: #B79839;
	font-style: normal;
	font-size: min(2.5vw,170%);
	font-weight: bold;
	letter-spacing: .15em;
	background: url("../../images/topics/mokuzi.svg") no-repeat .5em center;
	background-size: .8em .8em;
	padding: 1em 1.8em;
	margin: 0;
}
.single_page #toc_container .toc_title .toc_toggle {
	display: inline-block;
	vertical-align: 0.15em;
	font-size: 60%;
	letter-spacing: .15em;
}
.single_page #toc_container .toc_title .toc_toggle a {
	color: inherit !important;
	text-decoration: none;
	display: inline-block;
	text-align: center;
}
.single_page #toc_container .toc_list {
	margin: 0;
	width: 100%;
	font-size: 94%;
	background-color: #fff;
}
.single_page #toc_container .toc_list > li {
	font-size: 100%;
}
.single_page #toc_container .toc_list > li:nth-of-type(odd) {
	background-color: rgba(214,187,121,0.2);
}
.single_page #toc_container .toc_list li {
	padding: 0;
	margin: 0;
	border-bottom: none;
}
.single_page #toc_container .toc_list li::before {
	display: none;
}
.single_page #toc_container .toc_list a {
	position: relative;
	display: block;
	color: inherit;
	line-height: 1.5em;
	padding: 1em 1.5em 1em 0;
	text-decoration: none;
	opacity: 1;
}
.single_page #toc_container .toc_list a:hover {
	color: #B79839;
}
.single_page #toc_container .toc_list > li ul {
	margin: .5em 0 0 0;
}
.single_page #toc_container .toc_list > li li {
	font-size: 85% !important;
	padding-top: .4em !important;
	padding-bottom: .4em !important;
}
.single_page #toc_container .toc_list .toc_number {
	display: inline-block;
	color: #B79839;
	width: 3em;
	text-align: center;
	font-size: 143%;
	letter-spacing: .12em;
	line-height: 1;
	font-family: "trajan-pro-3", serif;
	font-weight: 400;
	font-style: normal;
	border-right: solid 1px currentColor;
	margin-right: .6em;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.single_page #toc_container {
	width: 96%;
	margin-top: 10%;
	margin-bottom: 14%;
}
.single_page #toc_container .toc_title {
	font-size: 110%;
	padding-bottom: .8em;
}
.single_page #toc_container .toc_list {
	font-size: 90%;
}
.single_page #toc_container .toc_list a {
	padding-top: .7em;
	padding-bottom: .7em;
}

.single_page #toc_container .toc_list .toc_number {
	width: 2.6em;
	font-size: 130%;
}
}




/*free_area
---------------------------------------------------------*/
.free_area > * {
	width: 96%;
	max-width: 1000px;
	margin-inline: auto;
}
.free_area hr {
	height: 1px;
	width: 100%;
	max-width: 100%;
	background: #9F9B95;
	border: none;
	margin: 5.0rem 0;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.free_area hr {
	margin: 3.0rem 0;
}
}



/*free_area: heading
---------------------------------------------------------*/
.free_area h3,
.free_area h4,
.free_area h5 {
	max-width: 1100px;
}
.free_area :where(h3,h4,h5) {
	position: relative;
	margin-top: 1.9em;
	margin-bottom: 1.5em;
}
.free_area h2 {
	width: 100%;
	max-width: 100%;
	color: #fff;
	font-size: min(3.6vw,206%);
	line-height: 1.5;
	letter-spacing: .06em;
	text-align: center;
	font-family: fot-tsukuaoldmin-pr6n,sans-serif;
	font-weight: 300;
	font-style: normal;
	background: linear-gradient(to right,  #665c4f 0%,#7f7c64 100%);
	padding: 0.8em 1em;
	box-sizing: border-box;
	margin-top: 2.0em;
	margin-bottom: 1.2em;
}
.free_area h3 {
	font-size: min(3.1vw,176%);
	line-height: 1.5;
	letter-spacing: .06em;
	font-family: fot-tsukuaoldmin-pr6n,sans-serif;
	font-weight: 300;
	font-style: normal;
	background-color: rgba(183,152,57,0.2);
	padding: 0.8em 1.5em;
	box-sizing: border-box;
	border-radius: 0.67em;
}
.free_area h4 {
	font-size:  min(3.1vw,176%);
	line-height: 1.5;
	letter-spacing: .06em;
	font-family: fot-tsukuaoldmin-pr6n,sans-serif;
	font-weight: 300;
	font-style: normal;
	padding: 0 1.5em 0.6em;
	box-sizing: border-box;
	margin-top: 1.2em;
	position: relative;
}
.free_area h4::before{
	position: absolute;
	content: "";
	background: linear-gradient(to right,  #665c4f 0%,#b79839 100%);
	width: 100%;
	height: 2px;
	left: 0;
	bottom:0; 
}
.free_area h5 {
	color: #B79839;
	font-size: min(2.6vw,147%);
	line-height: 1.5;
	letter-spacing: .06em;
	font-weight: normal;
	padding: 0.6em 1.5em 0.6em 1.8em;
	box-sizing: border-box;
	margin-bottom: 1.2em;
	border-left: 4px solid #B79839;
}
.free_area :where(h2,h3,h4,h5) strong {
	font-weight: inherit;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.free_area h3 {
	padding: 0.8em 1em;
}
.free_area h4 {
	padding: 0 1em 0.6em;
}
.free_area h5 {
	padding: 0.6em 1em 0.6em 1.3em;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.free_area :where(h2,h3,h4,h5) {
	margin-top: 1.5em;
	margin-bottom: .8em;
}
.free_area h2 {
	font-size:145%;
	padding: 0.6em 0.8em;
}
.free_area h3 {
	font-size: 126%;
	padding: 0.6em 0.8em;
}
.free_area h4 {
	font-size: 126%;
	padding: 0 0.8em 0.4em;
}
.free_area h5 {
	font-size: 105%;
	padding: 0.4em 0.8em 0.4em 1.1em;
}
}



/*free_area:space
---------------------------------------------------------*/
.free_area > div,
.free_area p {
	margin-bottom: 1.5rem;
}
.free_area p:last-child {
	margin-bottom: 0;
}
.free_area table,
.free_area ul,
.free_area ol {
	margin-bottom: 3rem;
}
.free_area > *:last-child {
	margin-bottom: 0 !important;
}
.free_area table p {
    margin-bottom: 0 !important;
}
.free_area p:has(+ .free_copy),
.free_area p:has(+ div),
.free_area p:has(+ table),
.free_area p:has(+ ol),
.free_area p:has(+ ul) {
    margin-bottom: 4rem;
}
.free_area table:has(+ h2),
.free_area ol:has(+ h2),
.free_area ul:has(+ h2),
.free_area p:has(+ h2) {
    margin-bottom: 6rem !important;
}
.free_area table:has(+ h3),
.free_area ol:has(+ h3),
.free_area ul:has(+ h3),
.free_area p:has(+ h3) {
    margin-bottom: 5rem !important;
}
.free_area table:has(+ h4),
.free_area ol:has(+ h4),
.free_area ul:has(+ h4),
.free_area p:has(+ h4) {
    margin-bottom: 5rem !important;
}
.free_area a {
	transition: all 1.0s;
	text-decoration: underline;
}
.free_area a:hover {
	transition: all 0.4s;
	opacity: 0.6;
	text-decoration: none;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.free_area p:has(+ .free_copy),
.free_area p:has(+ div),
.free_area p:has(+ table),
.free_area p:has(+ ol),
.free_area p:has(+ ul) {
    margin-bottom: 3rem;
}
.free_area table:has(+ h2),
.free_area ol:has(+ h2),
.free_area ul:has(+ h2),
.free_area p:has(+ h2) {
    margin-bottom: 5rem !important;
}
.free_area table:has(+ h3),
.free_area ol:has(+ h3),
.free_area ul:has(+ h3),
.free_area p:has(+ h3) {
    margin-bottom: 4rem !important;
}
.free_area table:has(+ h4),
.free_area ol:has(+ h4),
.free_area ul:has(+ h4),
.free_area p:has(+ h4) {
    margin-bottom: 3rem !important;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.free_area p:has(+ .free_copy),
.free_area p:has(+ div),
.free_area p:has(+ table),
.free_area p:has(+ ol),
.free_area p:has(+ ul) {
    margin-bottom: 3rem;
}
.free_area table:has(+ h2),
.free_area ol:has(+ h2),
.free_area ul:has(+ h2),
.free_area p:has(+ h2) {
    margin-bottom: 5rem !important;
}
.free_area table:has(+ h3),
.free_area ol:has(+ h3),
.free_area ul:has(+ h3),
.free_area p:has(+ h3) {
    margin-bottom: 4rem !important;
}
.free_area table:has(+ h4),
.free_area ol:has(+ h4),
.free_area ul:has(+ h4),
.free_area p:has(+ h4) {
    margin-bottom: 3rem !important;
}
}



/*free_area:list
---------------------------------------------------------*/
.free_area :where(ul,ol) {
	list-style: none;
	margin-top: 1em;
	margin-bottom: 1em;
}
.free_area :where(ul,ol) li {
	position: relative;
	line-height: 2em;
	padding-left: 2.5em;
	padding-bottom: 1.4em;
	margin-bottom: 1.4em;
	border-bottom:#9F9B95 solid 1px;
}
.free_area :where(ul,ol) li:last-of-type {
	margin-bottom: 0;
}
.free_area :where(ul,ol) li::before {
	position: absolute;
	display: block;
	color: #B8A93C;
	left: 0;
	top: 0;
}
.free_area ul > li::before {
	font-family: 'fontello';
	content: "";
	background-color: #B8A93C;
	width: .8em;
	height: .8em;
	border-radius: 50%;
	left: 0.8em;
	top: .6em;
}
.free_area ol {
	counter-reset: number;
}
.free_area ol > li::before {
	width: 1.6em;
	counter-increment: number;
	content: counter(number);
	text-align: center;
	font-family: "trajan-pro-3", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 147%;
	letter-spacing: .12em;
	left: 0.1em;
	top: 0;
}

.free_area ul > li a,
.free_area ol > li a {
	transition: all 0.8s;
}
.free_area ul > li a:hover,
.free_area ol > li a:hover {
	transition: all 0.4s;
	text-decoration: none;
	opacity: 0.5;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

.free_area :where(ul,ol) li {
	padding-left: 2.2em;
	padding-bottom: 1em;
	margin-bottom: 1.2em;
}
.free_area ul > li::before {
}
.free_area ol > li::before {
	font-size: 140%;
	top: 0;
}
}



/*free_area:image
---------------------------------------------------------*/
.free_area img {
	display: block;
	width: 100%;
	max-width: max-content;
	margin: 2em auto;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.free_area img.size-medium {
	width: 50%;
}
.free_area img.alignright,
.free_area img.alignleft {
	width: 35%;
	max-width: 340px;
	margin-top: 0;
	margin-bottom: .5em;
}
.free_area img.alignright {
	float: right;
	margin-left: 4%;
}
.free_area img.alignleft {
	float: left;
	margin-right: 4%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.free_area img {
	float: none;
	width: 70%;
	padding: 0;
	margin: 1em auto;
}
.free_area img.size-large {
	width: 90%;
}
}



/*free_area:table
---------------------------------------------------------*/
.free_area table  {
	width: 100%;
	border-collapse: collapse;
	background-color: #fff;
}
.free_area table th,
.free_area table td {
	text-align: left;
	padding: 1.2em 3%;
	border: 1px solid #D1D1D1;
}
.free_area table th {
	background-color: rgba(183,152,57,0.2);
	font-weight: normal;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.free_area table  {
	font-size: 95%;
	line-height: 1.4;
	letter-spacing: .02em;
}
.free_area table th,
.free_area table td {
	padding: .8em 4%;
}
}



/*free_area:custom
---------------------------------------------------------*/
.free_copy {
	position: relative;
	font-size: min(2.6vw,150%);
	line-height: 1.6;
	letter-spacing: .1em;
	margin-bottom: .6em;
}
.free_check {
	position: relative;
	line-height: 2em;
	padding-left: 2.5em;
	padding-bottom: 1.4em;
	margin-bottom: 1.4em;
	border-bottom:#9F9B95 solid 1px;
}
.free_check::before {
	position: absolute;
	display: block;
	content: "";
	background: url(../../images/topics/icon-check.svg) no-repeat;
	background-size: contain;
	width: 1.47em;
	height: 1.47em;
	left: 0em;
	top: 0.2em;
}
/* box */
.flee_flt_box {
	margin: 2em auto;
}
.free_box {
	position: relative;
	background-color: #FAF9F6;
	max-width: 1000px;
	padding: 3% 5%;
	box-sizing: border-box;
	border-radius: 2em;
	margin: 2em auto!important;
}
/*com_link2*/
article a.com_link2 {
	position: relative;
    background: #b8a93c;
    font-size:120%;
    letter-spacing: 0.05em;
    line-height: 1.5em;
    padding: .7em 2.5em .7em 1.2em;
    box-sizing: border-box;
    color: #fff;
    display: inline-block;
    border-radius: 50px;
    transition: 1s;
	text-decoration: none;
}
article a.com_link2::before{
    position: absolute;
    font-family: 'fontello';
    content: '\e800';
    font-size: 130%;
    top: 50%;
	transform: translateY(-50%);
    right: .8em;
}
article a.com_link2:hover{
    opacity: 0.8;
    transition: 0.3s;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1200px) { 
article a.com_link2{
    letter-spacing: normal;
}
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.com_link2 +.com_link2 {
	margin-left: 1.333%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.free_copy {
	font-size: 110%;
}
.free_check {
	padding-left: 2.2em;
}
.free_flt_box,
.free_box {
	padding: 6% 5%;
}
article a.com_link2{
    font-size:100%;
    letter-spacing: normal;
    line-height: 1.5em;
    padding: .7em 2.5em .7em .9em;
    box-sizing: border-box;
    color: #fff;
    display: block;
    font-family: fot-tsukuaoldmin-pr6n,sans-serif;
	font-weight: 300;
	font-style: normal;
    border-radius: 50px;
    transition: 1s;
}
article a.com_link2::before{
    font-size: 110%;
    right: .5em;
}
.com_link2 + .com_link2 {
	margin-top: 2%;
}
}



/*page number
--------------------------------------------------------------------*/
.wp-pagenavi a,.wp-pagenavi span{
	border: none!important;
}
.wp-pagenavi span.current::before{	
    background: #DE9682!important;
}
.wp-pagenavi a.page:hover{
    color: #DE9682!important;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 

}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 

}



/*ウィジェット
--------------------------------------------------------------------*/
.widget_box .wid_index {
	color: #DE9682!important;
}
.widget_box #wp-calendar tfoot a::before {
    background-image: url(../images/topics/arrow5.svg)!important;
}
.widget_box #wp-calendar thead th{
	background: #DE9682!important;
} 
.wp-calendar-nav-prev,
.wp-calendar-nav-next{
	font-size: 85% !important;
}
.wp-calendar-nav-prev a,
.wp-calendar-nav-next a{
	position: relative;
	z-index: 1;
}
.wp-calendar-nav-prev a::after,
.wp-calendar-nav-next a::after{
	position: absolute;
	content: "";
	background: #F2F1EC;
	width: 0.8em;
	height: 1em;
	top:0;
	z-index: 1;
}
.wp-calendar-nav-prev a::after{
	left: 0;
}
.wp-calendar-nav-next a::after{
	right: 0;
}
.wp-calendar-nav-prev a::before,
.wp-calendar-nav-next a::before{
	position: absolute;
    display: block;
    content: "";
    background: url(../images/topics/arrow5.svg)no-repeat top right;
    background-size: 100% auto;
    width: 8px;
    height: 8px;
    top:.2em;
	z-index: 2;
}
.wp-calendar-nav-prev a::before {
    left: 0;
}
.wp-calendar-nav-next a::before {
	right: 0;
	transform: scale(-1, 1);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 

}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 

}



/*child_cat_list
--------------------------------------------------------------------*/
.child_cat_list2 li{
    background: none;
    color: #665C4F;
    padding: 0;
    font-size:90%;
    font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans","游ゴシック","Yu Gothic",Meiryo,"Helvetica Neue",Arial,sans-serif;
	font-weight: 400;
}
.child_cat_list2 li a{
	transition: all 1.0s;
	text-decoration: underline;
}
.child_cat_list2 li a:hover{
	transition: all 0.4s;
	opacity: 0.6;
	text-decoration: none;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 

}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 

}



/*
--------------------------------------------------------------------*/

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 

}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 

}

