@charset "utf-8";
/* ==========================================================================
Googlefont
			font-family: "Roboto", sans-serif;
			font-family: "Noto Sans JP", sans-serif;
			
.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
========================================================================== */

/*===============================================
 レスポンシブ スマホサイズ　横幅 414px以下
===============================================*/
@media screen and (max-width: 414px) {}
/*===============================================
 レスポンシブ	タブレットサイズ　横幅 570px以下
===============================================*/
@media screen and (max-width: 570px) {}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 992px以下
===============================================*/
@media screen and (min-width: 769px) and (max-width: 992px) {}
/*===============================================
 レスポンシブ PCサイズ 横幅 1,200px以下 以上
===============================================*/
@media screen and (min-width: 993px), print {}

/* 共通
------------------------------------------------------------ */
article {}
article#page {}
section {}

/* #Page 共通 */
#page section {
	text-align:center;
	width: 100vw;
}
#page section .wrap {
	width: calc( 100% - 4rem );
	max-width: 108rem;
	margin: 0 auto;
	padding: 8rem 0;
}
#page section h2 {
	color: #00B8B2;
	margin: 2rem 0 8rem 0;
}
#page section h2 em {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 8.4rem;
	line-height: 1.2em;
	padding: 0;
}
#page section h2 span {
	display: block;
	font-size: 2.1rem;
	font-weight: 900;
	line-height: 1em;
	padding: 0;
}


/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
article#page {}
#page section .wrap {
	margin: 0 auto;
	padding: 4rem 0;
}
#page section h2 {
	color: #00B8B2;
	margin: 2rem 0 4rem 0;
}
#page section h2 em {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 3.6rem;
	line-height: 1.2em;
	padding: 0;
}
#page section h2 span {
	display: block;
	font-size: 1.8rem;
	line-height: 1em;
	padding: 0;
}

#page section.top .wrap h2 {
	display: inline-flex;
	flex-wrap: wrap;
	line-height: 1em;
	margin:0 0 2em 0;
	color: #3E3A39;
	font-size: 3.0rem;
	font-weight: 900;
}
#page section.top .wrap p {
	font-size: 2.1rem;
	text-align: left;
}

}

/* title_area ページタイトル
------------------------------------------------------------ */
#page section#title_area {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100vw;
	height: 19.444vw;
	min-width: 108rem;
	min-height: 21rem;	
	background: url("../img/home/top_bg.png") no-repeat right bottom, url("../img/page/title_bg.png") no-repeat right bottom, #AFDFDE;
	background-size: 58.3333vw auto, auto 19.444vw;
	text-align: left;
}
#page section#title_area .wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-width: 108rem;
	margin: 0 auto;
	padding: 0;
}
#page section#title_area .wrap h2 {
	display: inline-flex;
	flex-wrap: wrap;
	line-height: 1em;
	margin:0 0 2em 0;
	color: #3E3A39;
}
#page section#title_area .wrap h2 em {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 2.4rem;
	line-height: 1.5em;
	padding: 0 0.05em;
	text-transform: capitalize;
	color: #FFFFFF;
}
#page section#title_area .wrap h2 span {
	display: block;
	font-size: 4.8rem;
	font-weight: 900;
	line-height: 1em;
	padding: 0;
	text-align: left;
	width: 100%;
}
#page section#title_area .wrap p {
	font-size: 2.1rem;
	line-height: 1.75;
	margin-bottom: 0.5em;
}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page section#title_area {
	width: 100vw;
	height: 40vw;
	min-width: 320px;
	min-height: 120px;
	background: url("../img/home/top_bg.png") no-repeat right bottom, url("../img/page/title_bg.png") no-repeat right bottom, #AFDFDE;
	background-size: auto 40vw, auto 19.444vw;
	text-align: center;
}
#page section#title_area .wrap {
	justify-content: center;
}
#page section#title_area .wrap h2 {
	justify-content: center;
	margin: 0 auto 1rem;
}
#page section#title_area .wrap h2 em {
	order: 1;
	font-size: 1.8rem;
}
#page section#title_area .wrap h2 span {
	order: 2;
	font-size: 2.4rem;
	text-align: center;
}
}

/* ------------------------------------------------------------
   about.html　私たちについて
------------------------------------------------------------ */
#page.about {}
#page.about section.top {}
#page.about section.top .wrap {
	width: calc( 100% - 4rem );
	max-width: 96rem;
}
#page.about section.top .wrap h2 {
	display: inline-flex;
	flex-wrap: wrap;
	line-height: 1em;
	margin:0 0 2em 0;
	color: #3E3A39;
	font-size: 3.0rem;
	font-weight: 900;
}
#page.about section.top .wrap p {
	font-size: 2.1rem;
	text-align: left;
}
/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page.about section.top .wrap {
	max-width: 48rem;
}
#page.about section.top .wrap h2 {
	line-height: 1.5em;
	margin:0 auto 1em;
	font-size: 2.1rem;
	text-align: left;
}
#page.about section.top .wrap p {
	font-size: 1.6rem;
	text-align: left;
	margin:0 auto;
}
}

/* company 会社概要
------------------------------------------------------------ */
#page section#company {
	padding: 0px;
	background: url("../img/home/main_bg.png") no-repeat top right, url("../img/home/bg_tl.png") no-repeat top left, url("../img/home/bg_br.png") no-repeat bottom right, #FFFDFA;
	background-size: 40.2777vw auto, 43.75vw auto, 43.75vw auto;
}
#page #company .wrap {}
#page #company h2 {}
#page #company table {
	width: calc( 100% - 4rem );
	max-width: 96rem;
	margin: 0 auto;
	border: 2px solid #E6E6E6;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.8;
}
#page #company table tr {
	border-bottom: 1px solid #E6E6E6;
}
#page #company table tr th, #page #company table tr td {
	padding: 2rem;
}
#page #company table tr th {
	border-right: 1px solid #E6E6E6;
}
#page #company table tr td {}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #company table {
	width: calc( 100% );
	max-width: 64rem;
	margin: 0 auto;
	border: 2px solid #E6E6E6;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.8;
}
}


/* greeting 挨拶
------------------------------------------------------------ */
#page section#greeting {}
#page #greeting {}

#page #greeting .wrap {}
#page #greeting .wrap h2 {}
#page #greeting .wrap h2 em {}
#page #greeting .wrap .message {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#page #greeting .wrap .message p {
	display: inline-flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-between;
	width: calc( 50% - 8rem );
	margin: 0 8rem 0 0;
	font-size: 1.8rem;
	line-height: 2.4em;
	text-align: left;
	letter-spacing: 0.05em;
}
#page #greeting .wrap .message p span {
	display: inline-block;
	width: 100%;
	text-align: right;
	font-size: 1.4rem;
}
#page #greeting .wrap .message p span em {
	font-size: 2.4rem;
	margin-left: 0.5em;
}
#page #greeting .wrap .message figure {}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #greeting .wrap .message {
	flex-direction: column;
}
#page #greeting .wrap .message p {
	width: calc( 100% - 2rem );
	max-width: 54rem;
	margin: 0 auto;
	font-size: 1.6rem;
	line-height: 2.0em;
}
#page #greeting .wrap .message p span {
	font-size: 1.2rem;
}
#page #greeting .wrap .message p span em {
	font-size: 1.8rem;
}
#page #greeting .wrap .message figure {
	width: calc( 100% - 2rem );
	max-width: 36rem;
	margin: 0 auto;
}
#page #greeting .wrap .message figure img {
	width: 100%;
	height: auto;
}
}

/* history 沿革
------------------------------------------------------------ */
#page section#history {
	background: url("../img/home/bg_tl.png") no-repeat top left, url("../img/home/bg_br.png") no-repeat bottom right, #FFFDFA;
	background-size: 43.75vw auto, 43.75vw auto;
}
#page #history {}

#page #history .wrap {}
#page #history .wrap h2 {}
#page #history .wrap h2 em {}

#page #history .wrap dl {
	display: flex;
	flex-wrap: wrap;
	width: calc( 100% - 4rem );
	max-width: 96rem;
	margin: 0 auto;
	font-size: 1.8rem;
}
#page #history .wrap dl dt, #page #history .wrap dl dd {
	border-bottom: 1px solid #E6E6E6;
	padding: 1em;
}
#page #history .wrap dl dt {
	width: 10em;
}
#page #history .wrap dl dd {
	text-align: left;
	width: calc( 100% - 10em );
}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #history .wrap dl {
	flex-direction: column;
	width: calc( 100% );
	max-width: 64rem;
	margin: 0 auto;
	font-size: 1.4rem;
}
#page #history .wrap dl dt, #page #history .wrap dl dd {
	padding: 0.5em;
}
#page #history .wrap dl dt {
	width: 100%;
	text-align: left;
	background: #E6E6E6;
}
#page #history .wrap dl dd {
	text-align: left;
	width: calc( 100% );
	padding-bottom: 1.5em;
}
}

/* ------------------------------------------------------------
   staff.html　税理士紹介
------------------------------------------------------------ */
#page.staff {}
#page.staff section#cpta {
	padding: 0px;
	background: url("../img/home/main_bg.png") no-repeat top right, url("../img/home/bg_tl.png") no-repeat top left, url("../img/home/bg_br.png") no-repeat bottom right, #FFFDFA;
	background-size: 40.2777vw auto, 43.75vw auto, 43.75vw auto;
}
#page.staff section .wrap {
	width: calc( 100% - 4rem );
	max-width: 96rem;
}
#page.staff section .wrap h2 {}
#page.staff section .wrap p {
	display: inline-block;
	font-size: 2.1rem;
	text-align: left;
	margin: 0 auto 6rem;
}
#page.staff #cpta .wrap ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	margin: 6rem auto;
}
#page.staff #cpta .wrap ul li {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: flex-end;
	text-align: left;
	margin-bottom: 12rem;
}
#page.staff #cpta .wrap ul li .text {
	letter-spacing: 0.1em;
	width: calc( 100% - 36rem );
	background:  #AFDFDE;
	padding: 6rem 4rem 6rem 6rem;
	margin-bottom: 4rem;
	background: url("../img/common/bg_tl_w.png") no-repeat top left, #AFDFDE;
	background-size: 43.75vw auto;
}
#page.staff #cpta .wrap ul li .text h3 {
	display: flex;
	flex-direction: column;
	margin-bottom: 4rem;
}
#page.staff #cpta .wrap ul li .text h3 span {
	font-size: 1.6rem;
}
#page.staff #cpta .wrap ul li .text h3 em {
	font-size: 3.2rem;
}
#page.staff #cpta .wrap ul li .text p {
	font-size: 1.8rem;
	margin: 0 auto;
}
#page.staff #cpta .wrap ul li .text p span {
	display: inline-block;
	font-size: 1.6rem;
	margin-top: 1em;
}
#page.staff #cpta .wrap ul li figure {}
#page.staff #cpta .wrap ul li:nth-of-type(even) figure {
	order: -1;
}
/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page.staff section .wrap {
	width: calc( 100% - 0rem );
}
#page.staff section .wrap h2 {
	margin: 2rem 5% 4rem;
}
#page.staff section .wrap p {
	font-size: 1.6rem;
	text-align: left;
	margin: 0 5% 4rem 5%;
}
#page.staff #cpta .wrap ul {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	margin: 2rem auto 2rem;
}
#page.staff #cpta .wrap ul li {
	display: inline-flex;
	flex-wrap: wrap;
	align-items:center;
	text-align: left;
	margin-bottom: 4rem;
}
#page.staff #cpta .wrap ul li .text {
	letter-spacing: 0.1em;
	width: calc( 100% - 4rem );
	padding: 2rem 2rem 4rem 2rem;
	margin-bottom: 0rem;
}
#page.staff #cpta .wrap ul li .text h3 {
	display: flex;
	flex-direction: column;
	margin-bottom: 2rem;
}
#page.staff #cpta .wrap ul li .text h3 span {
	font-size: 1.4rem;
}
#page.staff #cpta .wrap ul li .text h3 em {
	font-size: 2.7rem;
}
#page.staff #cpta .wrap ul li .text p {
	font-size: 1.6rem;
	margin: 0 auto;
}
#page.staff #cpta .wrap ul li .text p span {
	display: inline-block;
	font-size: 1.2rem;
	margin-top: 1em;
}
#page.staff #cpta .wrap ul li figure {
	width: calc( 100% - 4rem );
	margin: -2rem 0 0 auto;
}
#page.staff #cpta .wrap ul li figure img {
	width: 100%;
	height: auto;
	max-width: 36rem;
}
#page.staff #cpta .wrap ul li:nth-of-type(even) figure {
	order: 0;
}

}


/* ------------------------------------------------------------
   access.html　アクセス
------------------------------------------------------------ */
#page.access {}
#page.access section.top {}
#page.access section.top .wrap {
	width: calc( 100% - 4rem );
	max-width: 96rem;
}
#page.access section.top .wrap h2 {
	display: inline-flex;
	flex-wrap: wrap;
	line-height: 1em;
	margin:0 0 2em 0;
	color: #3E3A39;
	font-size: 3.0rem;
	font-weight: 900;
}
#page.access section.top .wrap p {
	display: inline-block;
	font-size: 2.1rem;
	text-align: left;
	margin: 0 auto;
}
/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page.access section.top .wrap h2 {
	margin:0 0 1.5em 0;
	font-size: 2.1rem;
}
#page.access section.top .wrap p {
	font-size: 1.6rem;
}
}

/* #access アクセス
------------------------------------------------------------ */
#page section#accessmap {
	padding: 0px;
	background: url("../img/home/bg_tl.png") no-repeat top left, url("../img/home/bg_br.png") no-repeat bottom right, #FFFDFA;
	background-size: 43.75vw auto, 43.75vw auto;
}
#page #accessmap .wrap {}
#page #accessmap h2 {}

#page #accessmap .box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#page #accessmap .box figure {}
#page #accessmap .box figure.map {
	width: 100%;
	margin: 0 auto 8rem;
}
#page #accessmap .box figure.map img {
	width: 100%;
	height: auto;
	max-width: 108rem;
}
#page #accessmap .box figure.exterior {
	margin: 0 3rem 6rem 3rem;
}
#page #accessmap .box .txt {
	text-align: left;
	margin: 3rem 3rem 8rem 3rem;
}
#page #accessmap .box .txt ul {
	margin-bottom: 6rem;
}
#page #accessmap .box .txt ul li {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 1rem;
}

#page #accessmap .box .txt dl {
	display: block;
	width: auto;
	margin: 0 auto;
}
#page #accessmap .box .txt dl dt, #page #accessmap .box .txt dl dd {
	border-bottom: none;
	padding: 0;
}
#page #accessmap .box .txt dl dt {
	font-size: 2.1rem;
	font-weight: 900;
	margin-bottom: 0.5em;
	width:auto;
}
#page #accessmap .box .txt dl dd {
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 1rem;
	width: auto;
}

#page #accessmap .photos {
	margin-bottom: 6rem;
}
#page #accessmap .photos h3 {
	font-size: 3rem;
	font-weight: 900;
	text-align: left;
	padding: 0 0 0 1.5rem;
	margin-bottom: 3rem;
}
#page #accessmap .photos ul {
	display: flex;
	flex-wrap: wrap;
}
#page #accessmap .photos li {
	margin: 0 1.5rem;
}
#page #accessmap .photos li figure {}
#page #accessmap .photos li figcaption {
	font-size: 1.6rem;
	line-height: 3em;
}
/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #accessmap .wrap {
 width: calc( 100% - 0rem );
 max-width: 108rem;
 margin: 0 auto;
 padding: 2rem 0;
}
#page #accessmap .box figure img {
	width: 100%;
	height: auto;
	max-width: 108rem;
}
#page #accessmap .box figure.map {
width: 100%;
margin: 0 auto 2rem;
}
#page #accessmap .box figure.exterior {
	margin: 0 5% 2rem;
}
#page #accessmap .box .txt {
	margin: 0 5% 2rem;
}
#page #accessmap .box .txt ul {
	margin-bottom: 2rem;
}
#page #accessmap .box .txt ul li {
	font-size: 1.4rem;
	margin-bottom: .5em;
}

#page #accessmap .box .txt dl {}
#page #accessmap .box .txt dl dt, #page #accessmap .box .txt dl dd {}
#page #accessmap .box .txt dl dt {
	font-size: 1.8rem;
}
#page #accessmap .box .txt dl dd {
	font-size: 1.2rem;
	margin-bottom: .5em;
}

#page #accessmap .photos {
	margin-bottom: 2rem;
}
#page #accessmap .photos h3 {
	font-size: 1.8rem;
	padding: 0 5%;
	margin-bottom: 1rem;
}
#page #accessmap .photos ul {
	display: flex;
	flex-wrap: wrap;
}
#page #accessmap .photos li {
	margin: 0 5% 1rem;
}
#page #accessmap .photos li figure {}
#page #accessmap .photos li figcaption {
	font-size: 1.2rem;
	line-height: 2em;
}

}

/* ------------------------------------------------------------
   recruit.html　採用情報
------------------------------------------------------------ */
#page.recruit section#title_area {
	background: url("../img/page/title_bg.png") no-repeat right bottom, url("../img/recruit/title_bg.jpg") no-repeat center top;
	background-size: auto 19.444vw, 100vw auto;
}
#page.recruit section#title_area .wrap h2 {
	color: #FFFFFF;
}

#page.recruit {}
#page.recruit section.top {}
#page.recruit section.top .wrap {
	width: calc( 100% - 4rem );
	max-width: 96rem;
}
#page.recruit section.top .wrap h2 {
	display: inline-flex;
	flex-wrap: wrap;
	line-height: 1em;
	margin:0 0 2em 0;
	color: #3E3A39;
	font-size: 3.0rem;
	font-weight: 900;
}
#page.recruit section.top .wrap p {
	font-size: 2.1rem;
	text-align: left;
}

#page.recruit section.top .wrap ul {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 6rem auto 4rem;
}
#page.recruit section.top .wrap ul li {
	margin: 2rem;
}
#page.recruit section.top .wrap ul li a {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	border: .4rem solid #3FA9F5;
	border-radius: 3rem;
	font-size: 2.7rem;
	font-weight: 700;
	color: #3FA9F5;
	width: 36rem;
	height: 10rem;
}
#page.recruit section.top .wrap ul li a:before {
	display: block;
	position: absolute;
	content: "";
	width: 3.2rem;
	height: 3.2rem;
	border-radius: 3.2rem;
	background: #ffffff;
	border: 0.4rem solid #3FA9F5;
	bottom: calc( -1.8rem - 0.6rem );
}
#page.recruit section.top .wrap ul li a:after {
	display:block;
	content:"";
	position:absolute;
	border-bottom:.3rem solid #3FA9F5;
	border-right:.3rem solid #3FA9F5;
	width: 1rem;
	height: 1rem;
	bottom: -0.75rem;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page.recruit section#title_area {
	background: url("../img/page/title_bg.png") no-repeat right bottom, url("../img/recruit/title_bg.jpg") no-repeat center top;
	background-size: contain, cover;
}

#page.recruit {}
#page.recruit section.top {
}
#page.recruit section.top .wrap {
	width: calc( 100% - 0rem );
}
#page.recruit section.top .wrap h2 {
	margin:0 5% 1em;
	font-size: 2.1rem;
	line-height: 1.5;
	text-align: left;
}
#page.recruit section.top .wrap p {
	margin:0 5% 1em;
	font-size: 1.6rem;
	text-align: left;
}

#page.recruit section.top .wrap ul {
	margin: 2rem 2.5% 2rem;
}
#page.recruit section.top .wrap ul li {
	margin: .5rem;
	width: calc( 50% - 1rem );
}
#page.recruit section.top .wrap ul li a {
	border: .4rem solid #3FA9F5;
	border-radius: 3rem;
	font-size: 1.8rem;
	font-weight: 700;
	color: #3FA9F5;
	width: 100%;
	height: auto;
	padding: 1em .5em 1.25em; 
}

}

/*-- 新卒採用 newgrads --*/
#page.recruit section#newgrads {}
#page #newgrads {
	display: flex;
	flex-wrap: wrap;
	background: #3FA9F5;
}

#page #newgrads .wrap {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 50vw;
	margin: 0 auto;
	padding: 4rem 0;
	color: #ffffff;
}
#page #newgrads .wrap h2 {
	color: #ffffff;
	margin: 0 0 3rem 0;
}
#page #newgrads .wrap h2 em {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 2.1rem;
	line-height: 1.5em;
	padding: 0;
}
#page #newgrads .wrap h2 span {
	display: block;
	font-size: 4.8rem;
	line-height: 1em;
	font-weight: 900;
	padding: 0;
}
#page #newgrads .wrap p {
	margin: 0 0 3rem 0;
}

#page #newgrads .wrap .btn {
	position: relative;
	margin: 0 auto 0rem;
	font-size: 2rem;
	font-weight: 700;
	line-height: 2em;
}
#page #newgrads .wrap .btn a {
	display: block;
	background: #ffffff;
	padding: 0;
}
#page #newgrads .wrap .btn a:after {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #FFFFFF;
	border-right:2px solid #FFFFFF;
	width:6px;
	height:6px;
	top:50%;
	right:12px;
	margin-top:-4px;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
#page #newgrads .wrap .btn a figure {}
#page #newgrads .wrap .btn a figure img {
	transform: scale(1);
}
#page #newgrads .wrap .btn a:hover figure img {
	transform: scale(1.10);
}

#page #newgrads figure {
	width: 50vw;
}
#page #newgrads figure img {
	width: 100%;
	height: auto;
}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #newgrads .wrap {
	width: 90vw;
	padding: 2rem 0;
}
#page #newgrads .wrap h2 {
	margin: 0 0 2rem 0;
}
#page #newgrads .wrap h2 em {
	font-size: 1.8rem;
}
#page #newgrads .wrap h2 span {
	font-size: 3.0rem;
}
#page #newgrads .wrap p {
	margin: 0 0 2rem 0;
	text-align: left;
}
#page #newgrads .wrap p br {
	display: none;
}
#page #newgrads .wrap .btn {
	font-size: 1.6rem;
}
#page #newgrads .wrap .btn a {
	width: 90%;
	margin: 0 auto;
}
#page #newgrads .wrap .btn a img {
	width: 100%;
	height: auto;
	max-width: 36rem;
}
#page #newgrads figure {
	width: 113vw;
	margin-left: -13vw;
	height: 60vw;
	overflow: hidden;
}
#page #newgrads figure img {
	width: 100%;
	height: auto;
}
}

/*-- キャリア採用 newgrads --*/
#page.recruit section#career {}
#page #career {
	padding: 0px;
	background: url("../img/home/bg_tl.png") no-repeat top left, url("../img/home/bg_br.png") no-repeat bottom right, #FFFDFA;
	background-size: 43.75vw auto, 43.75vw auto;
}
#page #career .wrap {}
#page #career h3 {
	font-size: 3rem;
	margin-bottom: 4rem;
}
#page #career table {
	width: calc( 100% - 4rem );
	max-width: 96rem;
	margin: 0 auto 6rem;
	text-align: left;
	font-size: 1.6rem;
	line-height: 1.8;
}
#page #career table tr {}
#page #career table tr th, #page #career table tr td {
	padding: 2.5rem 2rem;
}
#page #career table tr th {
	width: 10em;
	border-bottom: .1rem solid #E6E6E6;
}
#page #career table tr td {}


/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page #career .wrap {
	width: 90vw;
	padding: 2rem 0;
}
#page #career h3 {
	font-size: 1.8rem;
	margin-bottom: 1rem;
}
#page #career table {
	width: calc( 100% - 0rem );
	margin: 0 auto 2rem;
	font-size: 1.4rem;
	line-height: 1.5;
}
#page #career table tr th, #page #career table tr td {
	padding: .5em;
}
#page #career table tr th {
	width: 6.5em;
}

}

/* ==========================================================================
   #page #contacr_area
   ========================================================================== */
#page section#contact_area {
	width: 100%;
	margin: 0 auto;
	padding: 8rem 0;
	background: #AFDFDE;
}
#page section#contact_area .wrap {
	width: calc( 90% );
	max-width: 1200px;
	margin: 0 auto;
	padding: 4rem 0!important;
	text-align:center;
	background: #ffffff;
	border-radius: 2rem;
	box-shadow: 0px 0px 6px 0px rgba(26, 26, 26, 0.15);
}
#page #contact_area .wrap h2 {
	color: #00B8B2;
	margin: 0 0 2.5rem 0;
}
#page #contact_area .wrap h2 em {
	display: block;
	font-family: "Roboto", sans-serif;
	font-size: 8.4rem;
	line-height: 1em;
	padding: 0;
}
#page #contact_area .wrap h2 span {
	display: block;
	font-size: 2.1rem;
	line-height: 1em;
	padding: 0;
}
#page #contact_area .wrap p {
	margin: 0 0 4rem 0;
}

#page #contact_area .wrap .box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#page #contact_area .wrap .box span {
	display: block;
	margin: 0px 2rem 0 0;
	padding: 0;
	text-align: left;
}
#page #contact_area .wrap .box span h3 {
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 0.25rem;
}
#page #contact_area .wrap .box span i {
	font-size: 2.8rem;
	line-height: 1em;
	margin: 0 0.2em 0 0;
}
#page #contact_area .wrap .box span em {
	font-family: "Roboto", sans-serif;
	font-size: 4.4rem;
	line-height: 1em;
}
#page #contact_area .wrap .box span p {
	display: block;
	font-size: 1.4rem;
	line-height: 1em;
	font-weight: 700;
	text-align: right;
	margin: 0 0 auto 0;
}
#page #contact_area .wrap .box a {
	display: block;
	background: #00B8B2;
	color: #fff;
	font-size: 2.0rem;
	line-height: 1em;
	padding: 2.0rem 8rem;
	border-radius: 3rem;
	margin: 0 0 0 2rem;
	transform: scale(1.00);
}
#page #contact_area .wrap .box a:hover {
	transform: scale(1.00);
}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {

#page section#contact_area {
	padding: 4rem 0;
}
#page section#contact_area .wrap {
	width: calc( 90% )!important;
	padding: 4rem 0 1rem 0!important;
}

#page #contact_area .wrap h2 {
	margin: 0 auto;
}
#page #contact_area .wrap h2 em {
	font-size: 3.6rem;
}
#page #contact_area .wrap h2 span {
	font-size: 1.8rem;
	font-weight: 700;
}
#page #contact_area .wrap p {
	margin: 0 auto;
	padding: 2rem;
	text-align: left;
}
#page #contact_area .wrap .box {
	flex-direction: column;
	padding: 0 2rem 2rem 2rem;
}
#page #contact_area .wrap .box span {
	display: block;
	margin: 0px auto 2rem;
	padding: 0;
	text-align: left;
}
#page #contact_area .wrap .box span h3 {
	font-size: 1.4rem;
	margin-bottom: 0.25rem;
}
#page #contact_area .wrap .box span i {
	display: inline-block;
	font-size: 2.1rem;
	line-height: 1em;
	margin: 0 0.2em 0 0;
}
#page #contact_area .wrap .box span em {
	font-family: "Roboto", sans-serif;
	font-size: 3.6rem;
	line-height: 1em;
}
#page #contact_area .wrap .box span p {
	display: block;
	font-size: 1.2rem;
	line-height: 1em;
	font-weight: 700;
	text-align: right;
	margin: 0;
	padding: 0;
}
#page #contact_area .wrap .box a {
	font-size:1.4rem;
	line-height: 1em;
	padding: 1.6rem 4rem;
	margin: 0 auto;
}

}



/* ------------------------------------------------------------
   contact.html　お問い合わせ
------------------------------------------------------------ */
section#title_area.contact {
	background: url("../img/company/title_photo.jpg") center center no-repeat;
	background-size: cover;
}

/* contact_area ポイント
------------------------------------------------------------ */
#page section.contact_area {}
#page .contact_area {
	overflow: hidden;
	padding: 20px 0px 40px 0px;
	margin: 0px auto;
	width: 100%;
}
#page .contact_area .wrap {
	width: 100%;
	margin: 0px auto 50px;
	padding: 50px 0px 0px 0px;
}
#page .contact_area .wrap h2 {
	display: inline-block;
	overflow: hidden;
	color: #00B8B2;
	margin: 0 auto 40px;
	padding: 0;
}
#page .contact_area .wrap h2 em {
	display: inline-block;
	font-family: "century-gothic", sans-serif;
	font-weight: 500;
	font-size: 4.8rem;
	line-height: 1em;
	letter-spacing: 0.1em;
	padding: 0.2em 1em;
	border-bottom: 2px solid #00B8B2;
}
#page .contact_area .wrap h2 span {
	display: block;
	padding: 0.75em 1.5em;
	font-size: 1.6rem;
	line-height: 1em;
}
#page .contact_area .wrap > p {}
#page .contact_area .wrap > p br {
	display: none;
}

#page .contact_area .wrap.form {
	background: #F4F7FC;
	margin: 0px auto 0px;
	padding: 60px 0px 80px 0px;
	text-align: left;
}
#page .contact_area .wrap.form form {
	width: calc( 100% - 40px );
	max-width: 800px;
	margin: 0px auto 20px;
	padding: 50px 0px 10px 0px;
	background: #FFFFFF;
}
#page .contact_area .wrap.form form .wp-block-snow-monkey-forms-item {
	border-bottom: 1px solid #ccc;
	padding: 20px;
}
#page .contact_area .wrap.form form .wp-block-snow-monkey-forms-item.name {
	border-top: 1px solid #ccc;
}
#page .contact_area form ol.smf-progress-tracker {
	margin: 0px auto 40px;
}

#page .contact_area form .name input {
	width: 18em;
}
#page .contact_area form .furigana input {
	width: 18em;
}
#page .contact_area form .email input {
	width: 24em;
}
#page .contact_area form .email .smf-item__description {
	font-size: 1.4rem;
}
#page .contact_area form .post_num input {
	width: 12em;
}
#page .contact_area form .address input {
	width: 40em;
}
#page .contact_area form .tel_num input {
	width: 18em;
}
#page .contact_area form .txt_box input {
	width: 40em;
}
#page .contact_area form .checkbox_consent label {}
#page .contact_area form .checkbox_consent	input {}
#page .contact_area form .checkbox_consent	.smf-item__description {
	font-size: 1.4rem;
}
#page .contact_area form button.smf-button-control__control {
	border: none;
	background: #00B8B2;
	color: #fff;
	padding: 0.85em 3em 0.95em 3em;
	line-height: 1em;
	border-radius: 1.4em;
}
#page .contact_area form .smf-form {
	margin-bottom: 40px;
}
#page .contact_area form .has-vivid-red-background-color {
	display: inline-block;
	color: #fff;
	font-size: 12px;
	line-height: 1em;
	padding: 0.2em 0.25em 0.3em 0.25em;
	margin-left: 0.5em;
}



/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#page .contact_area {
	padding: 20px 0px 20px 0px;
	margin: 0px auto;
}
#page .contact_area .wrap {
	width: 100%;
	margin: 0px auto 0px;
	padding: 20px 20px 20px 20px;
}
#page .contact_area .wrap h2 {
	margin: 0 auto 10px;
	padding: 0;
}
#page .contact_area .wrap h2 em {
	font-size: 3.0rem;
}
#page .contact_area .wrap h2 span {
	font-size: 1.5rem;
}
#page .contact_area .wrap > p {
	font-size: 1.4rem;
}
#page .contact_area .wrap.form {
	padding: 30px 0px 10px 0px;
}
#page .contact_area .wrap > p br {
	display: inline;
}

}

/*送信完了画面*/
#page .contact_area form .smf-complete-content {
	text-align: center;
}
#page .contact_area form .smf-complete-content h2 {
	font-size: 3.0rem;
}
#page .contact_area form .smf-complete-content p {
	margin-bottom: 40px;
}
#page .contact_area form .smf-complete-content .smb-box {
	margin: 20px auto;
	width: 90%;
}
#page .contact_area form .smf-complete-content .smb-box p {
	font-size: 1.2rem;
	text-align: left;
	margin: 10px;
}

/* ------------------------------------------------------------
   entry.html　エントリー
------------------------------------------------------------ */
section#title_area.entry {
	background: url("../img/recruit/title_photo.jpg") center center no-repeat;
	background-size: cover;
}



/* ------------------------------------------------------------
   sitemap.html　サイトマップ
------------------------------------------------------------ */
section#title_area.sitemap {
	background: url("../img/company/title_photo.jpg") center center no-repeat;
	background-size: cover;
}

/* sitemap_area サイトマップ
------------------------------------------------------------ */
#page section.sitemap_area {}
#page .sitemap_area {
	overflow: hidden;
	padding: 20px 0px 40px 0px;
	margin: 0px auto;
	width: 100%;
}
#page .sitemap_area .wrap {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	width: 100%;
	margin: 0px auto 50px;
	padding: 50px 0px 0px 0px;
}
#page .sitemap_area .wrap h2 {
	display: inline-block;
	overflow: hidden;
	color: #00B8B2;
	margin: 0 auto 40px;
	padding: 0;
}
#page .sitemap_area .wrap h2 em {
	display: inline-block;
	font-family: "century-gothic", sans-serif;
	font-weight: 500;
	font-size: 4.8rem;
	line-height: 1em;
	letter-spacing: 0.1em;
	padding: 0.2em 1em;
	border-bottom: 2px solid #00B8B2;
}
#page .sitemap_area .wrap h2 span {
	display: block;
	padding: 0.75em 1.5em;
	font-size: 1.6rem;
	line-height: 1em;
}
#page .sitemap_area .wrap > p {}
#page .sitemap_area .wrap > p br {
	display: none;
}

dl.sitemap_list {
	display: inline-block;
	text-align: left;
	margin: 30px auto;
	padding: 0px;
	border-bottom: 2px dotted #ccc;
}
dl.sitemap_list dt {
	border-top: 2px dotted #ccc;
	padding-top: 10px;
}
dl.sitemap_list dt a {
	display: inline-block;
	position: relative;
	padding: 6px 20px 6px 20px;
	width: 100%;
}
dl.sitemap_list dt a:before {
	display:block;
	content:"";
	position:absolute;
	border-top:2px solid #00B8B2;
	border-right:2px solid #00B8B2;
	width:5px;
	height:5px;
	top:50%;
	left: 5px;
	margin-top:-0.2em;
	-webkit-transform: rotate(45deg);
  	      transform: rotate(45deg);
}
dl.sitemap_list dd {
	padding: 0px 20px 20px 30px;
	font-size: 1.4rem;
}
dl.sitemap_list dt a:hover {
	background: #EEEEEE;
}

/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {

#page #sitemap_area {
	padding: 20px 0px 20px 0px;
	margin: 0px auto;
}
#page #sitemap_area .wrap {
	width: 100%;
	margin: 0px auto 0px;
	padding: 20px 0px 0px 0px;
}
#page #sitemap_area .wrap h2 {
	margin: 0 auto 10px;
	padding: 0;
}
#page #sitemap_area .wrap h2 em {
	font-size: 3.0rem;
}
#page #sitemap_area .wrap h2 span {
	font-size: 1.5rem;
}

dl.sitemap_list {
	margin: 20px auto;
	width: calc( 100% - 20px );
}
dl.sitemap_list dt {}
dl.sitemap_list dt a {}
dl.sitemap_list dd {}

}



/* ==========================================================================
   プライバシーポリシー　PRIVACY POLICY
   ========================================================================== */
article#privacy.page {}
#privacy {}

#privacy #main_info {}
#privacy #main_info .wrap {}
#privacy #main_info .wrap .txt {
	padding: 60px 0px 0px 0px;
}
#privacy #main_info .wrap .txt h3 {}
#privacy #main_info .wrap .txt p {}
#privacy #main_info .wrap .txt p em {
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0px auto 20px;
}

section#privacy_area {
	margin: 40px auto 100px;
}
section#privacy_area .wrap {
	width: 960px;
	margin: 0px auto 60px;
	text-align: center;
}
#privacy_area .wrap h2 {
	display: inline-block;
	font-size: 2.7rem;
	font-weight: 700px;
	margin: 0px auto 40px;
	padding: 0px 0.5em;
}
#privacy_area .wrap p {
	text-align: left;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2.0em;
	margin:0px 70px 60px;
}

#privacy_area .wrap dl {
	text-align: left;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.8em;
	margin:0px 60px 20px;
}
#privacy_area dl dt {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.4em;
	border-bottom: 2px dotted #3B3839;
	text-indent: 1em;
	margin-bottom: 10px;
}
#privacy_area dl dd {
	display: block;
	font-size: 1.6rem;
	font-weight: 400;
	margin: 0px 40px 20px;
}
#privacy_area p.sign {
 text-align: right;
	font-size: 1.6rem;
}
#privacy_area p.sign span {
	font-size: 1.2rem;
	margin-right: 0.5em;
}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
section#privacy_area {
	margin: 40px auto 40px;
}
section#privacy_area .wrap {
	width: 100%;
	margin: 0px auto 0px;
	text-align: center;
}
#privacy_area .wrap h2 {
	display: inline-block;
	font-size: 1.8rem;
	font-weight: 700px;
	margin: 0px auto 20px;
	padding: 0px 0.5em;
}
#privacy_area .wrap p {
	text-align: left;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 2.0em;
	margin:0px 20px 40px;
}
#privacy_area .wrap dl {
	text-align: left;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.8em;
	margin:0px 10px 0px;
}
#privacy_area dl dt {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2.4em;
	border-bottom: 2px dotted #3B3839;
	text-indent: 1em;
	margin-bottom: 10px;
}
#privacy_area dl dd {
	display: block;
	font-size: 1.4rem;
	font-weight: 400;
	margin: 0px 16px 10px;
}
#privacy_area p.sign {
 text-align: right;
	font-size: 1.5rem;
}
#privacy_area p.sign span {
	font-size: 1.1rem;
	margin-right: 0.5em;
}
}




/* ------------------------------------------------------------
   ブログ
------------------------------------------------------------ */
article#blog {}
#blog.page {}
section#blog_area {}

#blog_area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: calc( 100% );
	max-width: 1140px;
	min-width: 960px;
	padding: 40px 0px;
	margin: 0px auto;
}
#blog_area .blog_main {
	width: calc( 100% - 180px );
}
#blog_area .blog_side {
	width: 180px;
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#blog_area {
	width: calc( 100% );
	min-width: 320px;
	margin: 0px auto;
	padding: 40px 0px 0px 0px;
	display: block;
}
#blog_area .blog_main {
	box-sizing: border-box;
	width: 100%;
	margin: 0px auto;
	padding: 0px;
}
#blog_area #side.blog_side {
	width: 100%;
}
}

/* ------------------------------------------------------------
   news.html　お知らせ
------------------------------------------------------------ */
section#title_area.news {
	background: url("../img/company/title_photo.jpg") center center no-repeat;
	background-size: cover;
}


/*記事エリア*/
#blog_area .blog_main .blog_box {}
#blog_area .blog_box {
	width: calc( 100% - 30px );
	margin: 0px 30px 0px 0px;
	padding: 0px 0px 50px 0px;
	text-align: left;
}
#blog_area .blog_box h2 {
	display: block;
	margin: 0px auto 0px;
	padding: 10px 10px;
	border-bottom: 4px solid #0830A3;
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.25em;
}
#blog_area .blog_box h2 a {
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.25em;
}
#blog_area .blog_box  span.date {
	display: block;
	font-size: 1.6rem;
	font-family: "Cabin", sans-serif;
	line-height: 1.5em;
	padding: 5px 10px;
	width: 8em;
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #E8ECF4 0%) repeat scroll 0 0;
}
#blog_area .blog_box  span.cat {
	display: block;
	margin: 0px auto;
	padding: 5px 10px;
	text-align: right;
	font-size: 1.2rem;
	line-height: 1.6em;
	font-family: "Cabin", sans-serif;
	letter-spacing: 0;
}
#blog_area .blog_box  span.cat a {
	font-size: 1.4rem;
	font-weight: 700;
}

#blog_area .blog_box  div.txt {
	overflow: hidden;
	font-weight: 400;
	font-size: 1.6rem;
	margin: 0px 0px 40px;
	padding: 40px 20px;
}
#blog_area .blog_box  div.txt p {
	display: block;
	margin: 0px 0px 20px 0px;
	line-height: 1.8em;
}
#blog_area .blog_box  div.txt a {
	display: inline;
}
#blog_area .blog_box  div.txt img {
	display: block;
	border: 4px solid #EEEEEE;
	margin: 20px 0px;
	max-width: calc( 100% - 8px );
	height: auto;
}
#navigation {}


/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#blog_area .blog_box {
	width: calc( 100% - 30px );
	margin: 0px auto;
	padding: 0px 0px 50px 0px;
}
#blog_area .blog_box h2 {
	margin: 0px auto 0px;
	padding: 10px;
	font-size: 1.6rem;
}
#blog_area .blog_box  h2 a {
	font-size: 1.6rem;
}
#blog_area .blog_box  span.cat {
	display: block;
	margin: 0px auto;
	padding: 5px 10px;
	text-align: right;
	font-size: 1.0rem;
	font-weight: 600;
	line-height: 1.6em;
	letter-spacing: 0;
}
#blog_area .blog_box  span.cat a {
	font-size: 1.0rem;
	font-weight: 700;
}

#blog_area .blog_box  div.txt {
	overflow: hidden;
	font-weight: 400;
	font-size: 1.4rem;
	margin: 0px 0px 20px;
	padding: 10px;
}
#blog_area .blog_box  div.txt p {
	display: block;
	margin: 0px 0px 10px 0px;
	line-height: 1.8em;
}
#blog_area .blog_box  div.txt a {
	display: inline;
}
#blog_area .blog_box  div.txt img {
	display: block;
	border: 4px solid #E4E5E6;
	margin: 10px 0px;
	width: calc( 100% - 8px );
	height: auto;
}
#navigation {}
}

/* ブログサイド */
section#side {}
#side.blog_side {
	position: relative;
	box-sizing: border-box;
	padding: 0px;
	margin: 0px 0px 0px 0px;
	text-align: left;
}
#side.blog_side h3 {
	font-size: 1.6rem;
	padding: 8px;
	margin: 0px auto 0px;
	border-top: 1px solid #1E140A;
	border-bottom: 1px solid #1E140A;
}
#side.blog_side aside {
	margin: 0px 0px 30px 0px;
}
#side.blog_side a:hover {
	background: rgba(255,255,255,0.75);
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
section#side {}
	#side.blog_side h3 {
		font-size: 1.4rem;
	}
}

/* 新着 */
#side aside.widget_recent_entries {
}
#side aside.widget_recent_entries ul {
	border-top: none;
	padding: 0px;
}
#side aside.widget_recent_entries ul li {
	position: relative;
	border-bottom: none;
	padding: 0px;
	margin: 0px;
	border-bottom: 1px dotted #1E140A;
}
#side aside.widget_recent_entries ul li a {
	display: block;
	padding: 30px 10px 10px 10px;
	font-size: 1.4rem;
}
#side aside.widget_recent_entries ul li span.post-date {
	display: block;
	position: absolute;
	top: 10px;
	left: 0px;
	font-size: 1.1rem;
	font-weight: 700;
	padding: 0px 10px;
	line-height: 20px;
}
/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
#side aside.widget_recent_entries ul li a {
	display: block;
	padding: 30px 10px 10px 10px;
	font-size: 1.4rem;
}
}

/*categories*/
aside.widget_categories ul {
	padding: 10px 0px;
}
aside.widget_categories ul li {
	padding: 0px;
}
aside.widget_categories ul li a {
	display: block;
	padding: 6px 6px 6px 6px;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.6em;
}
aside.widget_categories ul li a:before {
	display: block;
	content: "";
	float: left;
	width: 4px;
	height: 4px;
	margin: 0.55em 10px 0px 0px;
	border-top: 2px solid #1E140A;
	border-right: 2px solid #1E140A;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

aside.widget_categories ul li ul.children {
	padding: 0px 0px;
}
aside.widget_categories ul li ul.children li {}
aside.widget_categories ul li ul.children li a {
	padding-left: 24px;
	font-size: 1.3rem;
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
aside.widget_categories ul li a {
	font-size: 1.4rem;
}
aside.widget_categories ul li ul.children li a {
	font-size: 1.2rem;
}
}

/*archives*/
aside.widget_archive  {}
aside.widget_archive label {
	display: none;
	visibility: hidden;
}
aside.widget_archive select {
	width: calc( 100% - 20px );
	border: 2px solid #E4E5E6;
	margin: 20px 10px;
	padding: 3px 10px;
	font-size: 1.4rem;
}

/* カレンダー */
#side #calendar_wrap {}
#side #calendar_wrap table {
	width: calc( 100% - 0px );
	border-collapse: collapse;
	margin: 0px auto;
	font-size: 1.4rem;
}

#side #calendar_wrap table thead tr th {
}
#side #calendar_wrap table th,
#side #calendar_wrap table td {
	text-align: center;
	line-height: 20px;
	padding: 8px 0px;
}
#side #calendar_wrap table td {
}

#side #calendar_wrap table caption {
	text-align: left;
	margin: 10px 0px 8px 0px;
	font-size: 1.4rem;
	font-weight: 700;
}
#side #calendar_wrap table thead {
	border-bottom: 1px solid #1E140A;
}
#side #calendar_wrap table thead th {
	font-size: 1.1rem;
	padding: 0px 0px;
}
#side #calendar_wrap table tfoot {}
#side #calendar_wrap table tbody {}
#side #calendar_wrap table tbody tr {
	border-bottom: 1px solid #1E140A;
}
#side #calendar_wrap table tbody td#today {
	display: block;
	background: #E4E5E6;
	margin: 0px auto;
}
#side #calendar_wrap table tbody td {
	color: #3B3839;
}
#side #calendar_wrap table tbody a {
	display: block;
	font-weight: 700;
	text-decoration: underline;
	color: #C80014;
}
#side #calendar_wrap table tbody a:hover {}

aside#custom_html {}
aside#custom_html a {}
aside figure {}
aside figure figcaption {
	text-align: center;
	margin: 10px auto 0px;
}

#side #calendar_wrap nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin: 10px auto;
	font-size: 1.4rem;
	font-weight: 700;
}
#side #calendar_wrap nav span {}
#side #calendar_wrap nav .wp-calendar-nav-prev,
#side #calendar_wrap nav .wp-calendar-nav-next {
	text-align: center;
}

/*===============================================
 レスポンシブ タブレットサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
	#side #calendar_wrap table {
		width: calc( 100% - 20px );
		border-collapse: collapse;
		margin: 0px auto;
		font-size: 1.4rem;
	}
}


/*===============================================
 レスポンシブ TB・SPサイズ 横幅 768px以下
===============================================*/
@media screen and (max-width: 768px) {
.blog_area .wrap .content p {
	clear: both;
	margin: 10px auto 10px;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2em;
}
.blog_area .wrap .content img {
	max-width: calc( 100% );
	max-width: 300px;
	height: auto;
}

/* wp
------------------------------------------------------------ */
.aligncenter {
	text-align: center;
	margin: 10px auto 10px !important;
	display: block;
}
.alignleft {
	margin: 10px auto 10px !important;
	float: none;
}
.alignright {
	margin: 10px auto 10px !important;
	float: none;
}

}







