/* CSS Document */
/*ロードの時*/
html:not(.wcpagereturn) body[page-img="svg"]::before {
  background-color: transparent !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  -webkit-mask-position: inherit !important;
  mask-position: inherit !important;
  -webkit-mask-repeat: inherit !important;
  mask-repeat: inherit !important;
  -webkit-mask-size: inherit !important;
  mask-size:inherit !important;
  background-image: url(/img/favicon/safari-pinned-tab.png) !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
/*キャッチコピー*/
#wccatchcopy{
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
  border-bottom: 0 !important;
}
#wccatchcopy div.wcinner > * {
  padding: 0 !important;
  white-space: inherit !important;
  line-height: 0 !important;
  font-size: 0 !important;
  height: 0  !important;
}
/*main*/
main{
	margin-top: calc(var(--headerHeight) * -1);
}
/*画像*/
figure{
}
figure picture{
	width: 100%;
	height: 100%;
	display: block;
}
figure img{
	width: 100%;
	height: auto;
	object-fit: cover;
}
/*透明*/
.opa{
	width: 0;
	height: 0;
	opacity: 0;
	display: block;
	overflow: hidden;
}
/*タイトル*/
.contents_title{
	text-align: center;
	font-size: 1.35rem;
	transition: opacity 600ms ease;
	opacity: 0;
}

.contents_title.wcvisible{
	opacity: 1;
}
.contents_title::after{
	content: "About";
	color: var(--accentColor);
	letter-spacing: 1px;
	font-family: "Montserrat";
	display: block;
	font-size: 1.25rem;
}
.sub_title {
  font-size: 1.5rem;
  text-align: center;
  margin: 1.25rem 0;
	transition: opacity 600ms ease;
	opacity: 0;
}
.sub_title.wcvisible{
	opacity: 1;
}
/*ページタイトル*/
.page_title{
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: var(--headerHeight);
}
body[wc-view-code="sp"] .page_title{
	height: calc(175px + var(--headerHeight));
}
body[wc-view-type="tb"] .page_title{
	height: calc(200px + var(--headerHeight));
}
body[wc-view-type="tb-l"] .page_title{
	height: calc(230px + var(--headerHeight));
}
body[wc-view-code="pc"] .page_title{
	height: calc(260px + var(--headerHeight));
}
.page_title > .contents_title{
	position: relative;
	z-index: 5;
	color: #fff;
}
.page_title > .contents_title::after{
	color: #fff;
}
.page_title > figure{
	position: absolute;
	inset:0;
	z-index: 2;
}
.page_title > figure::before{
	content: "";
	background-color: rgba(23,81,43,0.5);
	inset:0;
	z-index: 3;
	position: absolute;
}
body[wc-view-code="sp"] .page_title > figure img{
	height: calc(175px + var(--headerHeight));
}
body[wc-view-type="tb"] .page_title > figure img{
	height: calc(200px + var(--headerHeight));
}
body[wc-view-type="tb-l"] .page_title > figure img{
	height: calc(230px + var(--headerHeight));
}
body[wc-view-code="pc"] .page_title > figure img{
	height: calc(260px + var(--headerHeight));
}
/*ボタン*/
.btn{
	width: fit-content;
}
.btn a{
	background-color: rgba(87,152,70,0.7);
  display: flex;
  width: fit-content;
  color: #fff;
  font-size: 1.2rem;
  gap: 0.25rem;
  border-radius: 2rem;
  text-decoration: none;
  padding: 0.65rem 0.85rem 0.65rem 1.25rem;
  position: relative;
	box-sizing: border-box;
  align-items: center;
}
.btn.white a{
	background-color: rgba(255,255,255,0.85);
	color: var(--accentColor);
}
.btn a::before{
	content: "";
  inset: 3px;
  border: solid 1px #fff;
  box-sizing: border-box;
  border-radius: calc(2rem + 3px);
  position: absolute;
	z-index: 2;
}
.btn.white a::before{
	border-color: var(--accentColor);
}
.btn a::after{
	content: "";
	width: 1.75rem;
	height: 1.75rem;
	-webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
	background-color: #fff;
}
.btn.white a::after{
	background-color: var(--accentColor);
}
/*ボタンブロック*/
.btn_block{
	display: flex;
	width: fit-content;
	gap:0.55rem;
}
body[wc-view-code="sp"] .btn_block{
	flex-direction: column;
}
.btn_block .btn{
	width: 100%;
}
.btn_block .btn a{
	width: 100%;
	justify-content: space-between;
	white-space: nowrap;
}
/*header*/
header#wcheader{
	background-color: rgba(255,255,255,0) !important;
}
header#wcheader div.header{
	padding: 0 !important;
	background-color: #fff !important;
	max-width: calc(var(--innerWidth) - 20px) !important; 
	border-radius: 10px;
}
html.wcscroll header#wcheader div.header{
	 box-shadow: inset 0px 0px 5px 0px rgba(23, 81, 43, 0.5) !important;
}
header[header-pos="top"]#wcheader{
	top: 10px !important;
}
header#wcheader .menubtn{
	margin-top: 10px !important; 
}
body:not([wc-view-code="sp"]) header#wcheader .menubtn {
  margin-top: 20px !important;
  margin-right: 15px !important;
}
body[wc-view-code="pc"] header#wcheader div.headerlogo[logo-pos="left"]{
	left: 15px !important;
}
/*ドロワーメニュー*/
.wcdrawermenu div.header div.drawerclosebtn[wc-icon] span::before{
	mask-size:cover;
}
/*footer*/
.f_contact{
	border-radius: 2rem;
	background-color: #eff1ee;
	box-sizing: border-box;
}
body[wc-view-code="sp"] .f_contact{
	padding: var(--headerHeight) 7vw;
}
body[wc-view-code="tb"] .f_contact{
	padding: calc(var(--headerHeight) / 2) 0;
	width: 90vw;
	margin: 0 auto;
}
body[wc-view-code="pc"] .f_contact{
	width: 1100px;
	margin: 0 auto;
	padding: calc(var(--headerHeight) / 2) 0;
}
.f_contact .contents_title{
	margin-bottom: 1.5rem;
	opacity: 1;
}
.f_contact > .contents_title::after{
	content: "Contact us";
}
.f_contact > p{
	margin-bottom: 1.5rem;
}
.f_contact > .fc_in_block{
	display: flex;
	gap:1rem;
}
body[wc-view-type="tb"] .f_contact > .fc_in_block,
body[wc-view-code="sp"] .f_contact > .fc_in_block{
	flex-direction: column;
}
body[wc-view-type="tb"] .f_contact > .fc_in_block{
	width: 425px;
	margin: 0 auto;
}
body:not([wc-view-code="sp"]) .f_contact > .fc_in_block{
	justify-content: center;
}
.f_contact > .fc_in_block .fc_in_box{
	background-color: #fff;
	border-radius: 1rem;
	padding: 1rem;
	box-sizing: border-box;
}

body[wc-view-type="tb-l"] .f_contact > .fc_in_block .fc_in_box{
	min-width: 407px;
}
body[wc-view-code="pc"] .f_contact > .fc_in_block .fc_in_box{
	min-width: 415px;
}
.f_contact > .fc_in_block .fc_in_box > dt{
	border-bottom: 1px solid var(--accentColor);
  padding-bottom: 0.5rem;
}
.f_contact > .fc_in_block .fc_in_box > dt .contents_title{
	font-size: 1.2rem;
	margin-bottom: 0 !important;
}
.f_contact > .fc_in_block .fc_in_box > dt .contents_title::after{
	font-size: 0.9rem;
}
.f_contact > .fc_in_block .fc_in_box.f_tel > dt .contents_title::after{
	content: "Telephone";
}
.f_contact > .fc_in_block .fc_in_box.f_mail > dt .contents_title::after{
	content: "Mail";
}
.f_contact > .fc_in_block .fc_in_box > dd{
	padding: 0.5rem 0.5rem 0 0.5rem;
	box-sizing: border-box;
}
.f_contact > .fc_in_block .fc_in_box > dd .f_in_tel{
	display: flex;
	width: fit-content;
	margin: 0 auto;
	font-family: "Montserrat";
	font-size: 1.95rem;
	text-decoration: none;
	align-items: center;
}
.f_contact > .fc_in_block .fc_in_box > dd .f_in_tel::before{
	content: "";
  width: 2.25rem;
  height: 2.25rem;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: var(--defColor);
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block{
	width: fit-content;
  display: flex;
  gap: 5px;
  margin: 0.5rem auto 0 auto;
}
body[wc-view-code="sp"] .f_contact > .fc_in_block .fc_in_box > dd .b_time_block{
  flex-direction: column;
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box{
	display: flex;
  padding: 3.5px;
  background-color: #eff1ee;
  border-radius: 1rem;
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box > dt{
  box-sizing: border-box;
  background-color: #fff;
  padding: 2px 5px;
  border-radius: calc(1rem + 3.5px);
  font-size: 0.85rem;
	display: table;
  min-width: 4.25rem;
  margin-right: 0.5rem;
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box > dt span{
	color: var(--accentColor);
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box > dd p{
	white-space: nowrap;
	padding-right: 0.5rem;
	box-sizing: border-box;
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box > dd .jp{
	padding-right: 0.75rem;
}
.f_contact > .fc_in_block .fc_in_box > dd .b_time_block .b_time_box > dd .eg{
	font-family: "Montserrat";
}
.f_contact > .fc_in_block .fc_in_box > dd .btn{
	margin: 1rem auto 0 auto;
}
.footersnsarea > div{
	background-color: transparent !important;
}
.footersnsarea > div[svg-color="true"] a{
	background-color: transparent !important;
  box-shadow: inset 0px 0px 3px 0px rgba(23, 81, 43, 0.5) !important;
}
/*フッター共通のcss*/
footer .namedataarea[flex-flow]{
  justify-content: flex-start !important;
}
footer .namedataarea{
}
footer div.footer .footeritem.logolineitem {
  width: fit-content !important;
  margin: 0 !important;
}
footer .namedataarea{
  width: auto !important;
}
body[wc-view-code="pc"] footer div.footer .footeritem.logolineitem{
  margin-left: 1.5rem !important;
}
footer .footerflex {
  flex-direction: column !important;
  align-items: baseline !important;
}
body[wc-view-code="tb"] footer div.footer,
body[wc-view-code="pc"] footer div.footer{
  justify-content: flex-start !important;
}
body[wc-view-code="tb"] footer .footerflex > :not(.topauto),
body[wc-view-code="pc"] footer .footerflex > :not(.topauto){
  margin-top: 0 !important;
}
.footersnsarea > div{
  background-color: transparent !important;
}
#wcCopyright, #wcCopyright a{
  font-weight: 400 !important;
}
body[touch-pos] footer div.footer::before, body[touch-pos] footer div.footer::after{
  background-color: var(--defColor) !important;
}
body[touch-pos] footer div.footer{
  border-color: var(--defColor) !important;
}