@charset "utf-8";
/*
* {
  outline: 2px solid blue;
}*/

html,body{
	/*font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif; 20220322まで*/
	/*font-family: "貂ｸ繧ｴ繧ｷ繝�け菴�", YuGothic, "貂ｸ繧ｴ繧ｷ繝�け", "Yu Gothic", "繝｡繧､繝ｪ繧ｪ", sans-serif;　コピペ*/
	font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	color:#5b4636;
	line-height:1.6;
	width:100%;
	font-size: 1rem;
}

@font-face {
  font-family: "raleigh_01_LT";
  src: url("../font/raleigh_01_LT.woff2") format("woff2");
  font-weight: 200;/*変わらないけど*/
}
@font-face {
  font-family: "raleigh_02_RE";
  src: url("../font/raleigh_01_LT.woff2") format("woff2");
  font-weight: 400;
}
@font-face {
  font-family: "raleigh_03_ME";
  src: url("../font/raleigh_01_LT.woff2") format("woff2");
  font-weight: 500;
}
@font-face {
  font-family: "raleigh_04_BO";
  src: url("../font/raleigh_01_LT.woff2") format("woff2");
  font-weight: 700;
}
@font-face {
  font-family: "raleigh_05_BL";
  src: url("../font/raleigh_01_LT.woff2") format("woff2");
  font-weight: 900;
}

.text_pp{
	color:#95bb93;
}
.font_pp{
font-family: "raleigh_01_LT";
}

/*************font size**************/

.fs200p{
	font-size:2rem;
}
.fs150p{
	font-size:1.5rem;
}
.fs120p{
	font-size:1.2rem;
}
.fs100p{
	font-size:1rem;
}
.fs90p{
	font-size:0.9rem;
}
.fs80p{
	font-size:0.8rem;
}
.fs70p{
	font-size:0.7rem;
}
.fs60p{
	font-size:0.6rem;
}



/*************link**************/

a { 
	text-decoration: none;
	color:#5b4636;
}

a:hover { 
	color:#659661;
	/*position:relative;
	top:1px;
	left:1px;*/
	transition: 1.0s ;
opacity: 0.5 ;
	text-decoration:none;
}

a:focus { 
	outline:none;
	}
/*
a:visited { 
	color: #4f77bf; 
	}*/　

	
/*************margin**************/

.mb_01{
	margin-bottom:1rem;
}
.mb_02{
	margin-bottom:2rem;
}
.mb_03{
	margin-bottom:3rem;
}
.mb_04{
	margin-bottom:4rem;
}
.mb_05{
	margin-bottom:5rem;
}
.mb_06{
	margin-bottom:6rem;
}
.mb_07{
	margin-bottom:7rem;
}
.mb_08{
	margin-bottom:8rem;
}
.mb_09{
	margin-bottom:9rem;
}
.mb_10{
	margin-bottom:10rem;
}
.mb_20{
	margin-bottom:20rem;
}

@media screen and (min-width: 1500px) {
.mb_1500_10{
	margin-bottom:10rem !important;
}
.mb_1500_20{
	margin-bottom:20rem;
}

}
/*************text選択**************/

::selection {
    background: #5b4636;
    color: #fff;
}

::-moz-selection {
    background: #5b4636;
    color: #fff;
}

/*************foat**************/

.float_left{
	float:left;
}

.float_right{
	float:right;
}
.clear{
	clear:both;
}
.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/*************header**************/

.logo22{
        width: 12rem;
		 transition: all 0.4s ease;
		 display: block;
}
@media (min-width: 992px) {
.logo22{
        width: 20rem;
}
}
.logo22.logo22mini{
    width: 10rem!important;
}
@media (min-width: 992px) {
.logo22.logo22mini{
    width: 15rem!important;
}
}

.header_ec22{
padding: .5rem 0 0 0;
}

/*************margin-bottom**************/
.cont_mb{
margin-bottom: 10rem;
}

.cont_mb5rem{
margin-bottom: 5rem;
}

/*************emergency**************/

.eme22_wrap{
background: #F4F9F3;
}


/*************header**************/

.header_wrap22{
z-index: +10;
position: fixed;
/*top: 5.1%;
left: 49.9%;
transform: translate(-50%, -50%);*/
}
@media (min-width: 992px) {
.header_wrap22{
/*top: 5.1%;*/
}
}

/*　上に上がる動き　*/

#header22.UpMove{
	animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime{
  from {
    opacity: 1;
	transform: translateY(0);
  }
  to {
    opacity: 0;
	transform: translateY(-100px);
  }
}

/*　下に下がる動き　*/

#header22.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-100px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}


/*************menuコンテンツ**************/
.full_menu22 .menu_in22 {
	position: fixed;
	top: 0;
	left: 0;
	visibility: hidden;
	width: 100%;
	height: 100vh;
	transition: all 0.3s ease-in-out;
	opacity: 0;
	background-image: linear-gradient(to top, rgba(121, 139, 99, 1) 0%, rgba(121, 139, 99, .7) 100%);
	z-index: +20;
}
.menu_in_ligo22 img{
filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(82deg) brightness(104%) contrast(105%);
}
.menu_in22{
color: #ffffff;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
transition: all 0.3s ease-in-out;
}
.menu_in22 a{
color: #ffffff;
}
.menu_in22 a:hover {
	color: rgba(121,139,99 ,1);
text-shadow: 1px 1px 2px rgba(225, 225, 225, 1);
}
.menu_cont22 dt{
   font-family: "raleigh_01_LT";
   letter-spacing: .1rem;
   font-size: 1.2rem;
   margin-top: .9rem;
   font-weight: normal;
}
.menu_cont22 dd {
font-size: 0.8rem;
margin-bottom: .3rem;
}

.full_menu22 .menu_in22 ul li {
	opacity: 0;
}
.full_menu22 .menu_in22 ul li a {
	display: block;
	padding: 10px 0;
	transition: all 0.2s ease-in-out;
}
/*クリックしたらメニューが開閉の動作*/
.full_menu22 #toggle_22:checked ~ .menu_in22 {
	visibility: visible;
	opacity: 1;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul {
	top: 70px;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul li {
	-webkit-transform: translateY(0px);
	        transform: translateY(0px);
	opacity: 1;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul li:nth-child(1) {
	transition: all 0.3s cubic-bezier(0.6, 0, 0.8, 1.5) 0.1s;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul li:nth-child(2) {
	transition: all 0.3s cubic-bezier(0.6, 0, 0.8, 1.5) 0.2s;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul li:nth-child(3) {
	transition: all 0.3s cubic-bezier(0.6, 0, 0.8, 1.5) 0.3s;
}
.full_menu22 #toggle_22:checked ~ .menu_in22 ul li:nth-child(4) {
	transition: all 0.3s cubic-bezier(0.6, 0, 0.8, 1.5) 0.4s;
}
.full_menu22 #toggle_22:checked + label.ham22 .bar22 {
	background-color: rgba(255,255,255 ,1);
}

/*.full_menu22 #toggle_22:checked + label.ham22 .bar22:nth-child(2) {
	-webkit-transform: translateX(50px);
	        transform: translateX(50px);
	opacity: 0;
}横にシュっと消える*/
.full_menu22 #toggle_22:checked + label.ham22 .bar22:nth-child(1) {
	-webkit-transform: translateY(8px) rotate(45deg);
	        transform: translateY(8px) rotate(45deg);
}
.full_menu22 #toggle_22:checked + label.ham22 .bar22:nth-child(2) {
	-webkit-transform: translateY(-0px) rotate(-45deg);
	        transform: translateY(-0px) rotate(-45deg);
}
/*ハンバーガー*/
.full_menu22 .ham22 {
	position: fixed;
/*	top: 3.7rem;
	right: 1.25rem;*/
	z-index: +30;
	display: block;
	cursor: pointer;
	margin: -0.55rem 0 0 0;
}
@media (min-width: 992px) {
.full_menu22 .ham22 {
	margin: -0.75rem 0 0 0;
}
}
.full_menu22 .ham22 .bar22 {
	width: 30px;
	height: 1px;
	margin: 7px auto;
	transition: all 0.3s ease-in-out;
	background-color: rgba(121, 139, 99, 1);
}


/*************tittle**************/

.main_tittle22s h2{
   position:relative;
   color: #659661;
   font-family: "raleigh_01_LT";
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
	padding-left: 2.1rem!important;
	margin-bottom: 1.5rem;
	font-size: .8rem;
}

.main_tittle22s h2::before{
   content:"";
   display:inline-block;
   width:1.6rem;
   height:1px;
   background-color:#659661;
   position:absolute;
   top:.5rem;
   left:0rem;
}

@media (min-width: 992px) {
.main_tittle22s h2{
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
	padding-left: 11rem!important;
	margin-bottom: 2.5rem;
	font-size: 1rem;
}
.main_tittle22s h2::before{
   width:10rem;
   height:1px;
   position:absolute;
   top:.4rem;
   left:0rem;
}
}


.main_tittle22 h2{
   position:relative;
   color: #659661;
   font-family: "raleigh_01_LT";
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
	padding-left: 2.1rem!important;
	margin-bottom: 1.5rem;
}

.main_tittle22 h2::before{
   content:"";
   display:inline-block;
   width:1.6rem;
   height:1px;
   background-color:#659661;
   position:absolute;
   top:1.2rem;
   left:0rem;
}
@media (min-width: 992px) {
.main_tittle22 h2{
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
	padding-left: 11rem!important;
	margin-bottom: 2.5rem;
	font-size: 2.5rem;
}
.main_tittle22 h2::before{
   width:10rem;
   height:1px;
   position:absolute;
   top:1.3rem;
   left:0rem;
font-size: 1.1rem;
}
}

@media (min-width: 1200px) {
.main_tittle22 h2{
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
	padding-left: 11rem!important;
	margin-bottom: 2.5rem;
	font-size: 4rem;
}
.main_tittle22 h2::before{
   width:10rem;
   height:1px;
   position:absolute;
   top:2.3rem;
   left:0rem;
font-size: 1.1rem;
}
}


h3.cont_tittle22 {
   font-family: "raleigh_01_LT";
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
}

/*************link Btn**************/

.link_btn22 p{
border: 1px solid #659661;
border-radius: 0.2rem;
    position: relative;
}

.link_btn22 p a{
color: #659661;
display: block;
}
.link_btn22 p a::after{
 content: "";
   display: inline-flex;
	position: absolute;
    width: 1.6rem;
    height: .2rem;
    right: 1rem;
	top: 1.2rem;
    border-bottom: 1px solid #659661;
    border-right: 1px solid #659661;
    -webkit-transform: skew(45deg);
    transform: skew(45deg);
}

.link_btn22 p a:hover{
transition: 1.0s ;
opacity: 0.5 ;
}

.link_btn22 p a:hover::after{
   width: 1.6rem;
    height: .2rem;
    right: -1rem;
	top: 1.2rem;
	 transition: all 0.4s ease;
}

@media (min-width: 992px) {
.link_btn22 p a::after{
	top: 2.2rem;
}
.link_btn22 p a:hover::after{
    right: -1rem;
	top: 2.2rem;
	 transition: all 0.4s ease;
}

}

		
/*************common footer**************/


.footer_info22{
 height: auto;
 background:url("../img/common/smp_footer_02.jpg") no-repeat ;
background-size:100% auto;/*この場合は高さが自動設定*/
}

.footer_info22 h3{
    font-family: 'Noto Serif JP', serif;
	font-weight:400;
	font-size: 1.2rem;
	line-height: 2rem;
	}

.footer_info22 p{
line-height: 1.5rem;
text-shadow: 1px 1px 2px #ffffff;
font-size: .7rem;
}


@media (min-width: 992px) {
.footer_info22{
padding: 2rem 0 5rem 0!important;
 height: auto;
 background:url("../img/common/pc_footer_02.jpg") no-repeat ;
background-size:100% auto;
}
@media (min-width: 1200px) {
.footer_info22{
padding: 7rem 0 5rem 0!important;
}
}

.footer_info22 h3{
	font-size: 2.2rem;
	line-height: 3.2rem;
	margin-bottom: 1.2rem;
	}
.footer_info22 p{
line-height: 2.1rem;
font-size: 1rem;
}

}

/*************footer**************/

.foot_info22 p{
background-color: #f2f1ef;
}

.foot_ethos22 h3{
   font-family: "raleigh_01_LT";
   letter-spacing: .1rem;
   font-weight: 200;
	font-style: normal;
/*	color: #dc938a;*/
	font-size: 2.5rem;
}

.foot_ethos22 p{
font-size: .8rem;
line-height: 1.7rem;
}

.foot_ethos22 img{
filter: invert(26%) sepia(5%) saturate(3253%) hue-rotate(343deg) brightness(94%) contrast(84%);
}

/*acd*/
/*
.foot_acd22 *, .foot_acd22 *:after, .foot_acd22 *:before {
	        box-sizing: border-box;
}*/
.foot_acd22 .foot_tab22 {
	position: relative;
	overflow: hidden;
	margin: 0;
   font-family: "raleigh_01_LT";
    font-family: 'Homemade Apple', cursive;
    font-family: 'Shippori Mincho', serif;
   letter-spacing: .1rem;
	font-style: normal;
}
.foot_acd22 .foot_tab22 input {
	position: absolute;
	opacity: 0;
}

.foot_acd22 .foot_tab22 label {
	font-size: 1.1rem;
	line-height: 1.6em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 1rem 0rem 1rem .2rem;
	cursor: pointer;
	text-indent: 1rem;
	border-bottom: 1px solid #F4F9F3;
}

/*.foot_acd22 .foot_tab22 label:hover {
	transition: all 0.3s;
}*/
/* ＋アイコン */
.foot_tab22 label span {
	display: block;
	position: absolute;
	right: 1rem;
	top:2rem;
}

.foot_tab22 label span.foot_acd22_op {
	right: 1.2rem;
}

.foot_acd22 .foot_tab22 label span.foot_acd22_op::before,
.foot_acd22 .foot_tab22 label span.foot_acd22_op::after
{
	display: block;
	width: .7rem;
	height: 1px;
	content: '';
	transition-duration:0.5s;
	background: #659661;
}

label span.foot_acd22_link::before,
label span.foot_acd22_link::after
{
	display: block;
	width: 0.5rem;
	height: 1px;
	content: '';
	transition-duration:1s;
	background: #659661;
}

.foot_tab22 label span.foot_acd22_op:before {
	position: absolute;
	top: 0px;
}
.foot_tab22 label span.foot_acd22_op:after {
	transform:rotate(90deg);
}

.foot_tab22 label span.foot_acd22_link:before {
	position: absolute;
	top: 2px;
	right: 5px;
	transform:rotate(-45deg);
}
.foot_tab22 label span.foot_acd22_link:after {
	position: absolute;
	top: -3px;
	right: 5px;
	transform:rotate(45deg);
}

/*  */
.foot_acd22 .foot_tab22 .foot_tab22-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 1.3rem;
/*	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
					transition-timing-function:ease;*/
	transition-duration:0s;
}

.foot_acd22 .foot_tab22 .foot_tab22-content p {
	margin: 1em 1em 1em 0;
}

/* 高さ */
.foot_acd22 .foot_tab22 input:checked ~ .foot_tab22-content {
	max-height: 100em;
}
/* クリックした時の+の動き */
.foot_acd22 .foot_tab22 input[type=checkbox]:checked + label span.foot_acd22_op::after {
	-webkit-transform: rotateZ(0deg);
	transform: rotateZ(0deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}


.foot_last22{
background: #cae1c7;/*#F4F9F3 220526まで*/
line-height: 2rem;
}

.foot_copy22{
/*border-top: 1px solid #ffffff;*/
background: #cae1c7;/*#659661　220804まで*/
}
/*************top back Btn**************/

.top_wrap{
	overflow:hidden;
}

#page-top {
    position: fixed;
    bottom: 0;
    right: 1rem;
	margin-bottom:.8rem;
	z-index:999999999;
}

#page-top a {
   /* background: #659661;*/
    text-decoration: none;
    color: #659661;
    width: 4rem;
    padding: 0.8rem 0 0.5rem;
    text-align: center;
    display: block;
	z-index:999999999;
}

#page-top a:hover {
    text-decoration: none;
   /* background: #659661;*/
}

/*************decoration**************/

.no_sq01{
display: inline-block;
align-items: center;
border: 2px solid #95bb93;
border-radius: 5px;
/*display: flex;
justify-content: center;
position: absolute;*/
text-align: center;
margin-right: .2rem;
padding: .1rem .7rem;
}

.no_ra01{
	display: inline-block;
align-items: center;
border-radius: 50%;
	background: #cae1c7;
padding: .1rem .6rem;
	margin: 0 0.2rem .3rem;
}
