@charset "UTF-8";

html{
font-size: 100%;
	scroll-behavior: smooth;
	scroll-padding-top: 50px;
}

body {
	margin:0px;
	padding:0px;
	color:#333;
	line-height: 1.8;
	font-family:"Noto Sans JP", Helvetica, Arial, メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
	text-align:left;
	background:var(--main-color);
}

:root {
	/*color*/
	--main-color:#008D48;
	--sub-color:#D5EAED;
  --main-green:#008D48;
	--st-green:#177d4b;
	--main-orange:#F39800;
	--main-pink:#E3637B;
	--main-red:#e60012;
	--main-white:#ffffff;
	--main-blue:#00AECC;
	--main-pa:#00AECC;
	
	/*font 16px*/
	/*--font-10:0.625rem;
	--font-11:0.688rem;
	--font-12:0.75rem;
	--font-13:0.813rem;
	--font-14:0.875rem;
	--font-16:1rem;;
	--font-18:1.125rem%;
	--font-20:1.25rem;
	--font-22:1.375rem;
	--font-24:1.5rem;
	--font-26:1.625rem;
	--font-28:1.75rem;
	--font-30:1.875rem;
	--font-32:2rem;
	--font-34:2.125rem;
	--font-36:2.25rem;
	--font-38:2.375rem;
	--font-40:2.5rem;*/
	
	/*font 14px（SP基準での制作）*/	
	--font-10:0.714rem;
	--font-11:0.786rem;
	--font-12:0.857rem;
	--font-13:0.929rem;
	--font-14:1rem;
	--font-15:1.071rem;
	--font-16:1.143rem;;
	--font-18:1.286rem;
	--font-20:1.429rem;
	--font-21:1.5rem;
	--font-22:1.571rem;
	--font-24:1.714rem;
	--font-26:1.857rem;
	--font-28:2rem;
	--font-30:2.143rem;
	--font-32:2.286rem;
}


@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

html{
font-size: 87.5%;
}
	
}

img {
  vertical-align: top;
}



a:hover img{
 opacity: 0.7;
 filter: alpha(opacity=70);
 -moz-opacity: 0.7;
}



.padding_top5 {padding-top:5px !important;}

.mt025 { margin-top:2.5px;}
.mt05 { margin-top:5px;}
.mt10 { margin-top:10px ;}
.mt15 { margin-top:15px;}
.mt20 { margin-top:20px;}
.mt25 { margin-top:25px;}
.mt30 { margin-top:30px ;}
.mt35 { margin-top:35px ;}
.mt40 { margin-top:40px;}
.mt50 { margin-top:50px;}

.mb40 { margin-bottom:40px !important;}




section {
	width:100%;
	margin:0 auto 0;
	padding: 0px;
}



h1 {
	text-align: center;
}

h2{
	text-align: center;
	margin:0;
	padding:0px;
}

h3{
	margin:0;
	padding:0px;
}

.p0{
	margin:0;
	padding:0;
}
						
	
.font_add{
	font-size:var(--font-12);
}

	
	
.lh14{
	line-height:140%;
}
		
/*==テキスト==*/
.text_c{text-align:center !important;}
.text_l{text-align:left !important;}
.text_r{text-align:right !important;}

.float_l{float:left;}
.float_r{float:right;}
.clearBoth{clear:both}

.fl_pc{float:left;}
.fr_pc{float:right;}

/*====*/
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

.indent1{margin-left: 1em; text-indent: -1em}







@media screen and (min-width: 769px) {
/* 768px以上の幅の場合に適応される */

.pc_none { display:none; }

.sp_btn { display:none; }

}

@media screen and (max-width: 768px) {
	
.sp_none{
	 display:none; 
}

.t_sp-all{
	width:100%;
}

.t_sp90{
	width:90%;
}

.t_sp80{
	width:80%;
}

.t_sp70{
	width:70%;
}

.t_sp60{
	width:60%;
}

.t_sp50{
	width:50%;
}

.t_sp300{
	width:300px;
}

}

@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.fl_pc,.fr_pc{float: none;}


}



header{
	
}

.header_sns{
	background:var(--main-color);
	padding:15px 0;
}

.header_sns_wrap{
	width:960px;
	margin:0 auto;
}

.header_sns_p{
	text-align:right;
}

.header_sns_dec1{
	margin-right:15px;
}

.header_wrap{
	width:960px;
	margin:20px auto 0;
}

.header_l{
	width:40%;
	margin-top: 40px;
}

.header_r{
	width:46%;
	margin-top: 40px;
	
}


.header_l .header_l_top img{
	width:100%;
}

.header_r img{
	width:100%;
}



nav a{
	text-decoration:none;
	color:#FFF;
	font-size:var(--font-16);
	font-weight:bold;
}







@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.header_sns_wrap{
	width:100%;
}

.header_sns_p{
	text-align:center;
}

.header_wrap{
	width:100%;
}

.header_l{
	width:100%;
	margin:0 auto 0;
}

.header_l .header_l_top img{
	margin: 0 auto;
	width: 80%;
		
	}

.header_r{
	width:90%;
	margin:-20px auto 20px;
}
	



.header_bottom{
	width:100%;
	background:var(--main-color);
	color:#FFF;
	margin:0 auto 0;
	padding:40px 0;
}

.header_bottom_wrap{
	width:90%;
	margin:0 auto;
	font-size:var(--font-16);

}


}



/*==c1==*/

/*==メニュー==*/

.m_wrap{
	width:60%;
	margin:40px auto;
	display: flex;
  	flex-wrap: wrap;
	justify-content:  space-between;
}


.m_btn1{
  width : calc(100% /4 - 40px) ;
}

.m_btn1 img{
  width : 100%;
}

/*==/メニュー==*/



.section_mt{
	margin-top:80px;
}

.c1_back{

	padding: 80px 0;
}

.contents_wrap{
	width:960px;
	margin:0 auto 0;
}


.c1_text1{
	width:825px;
	margin:20px auto 0;
}


.c1_wrap{
	width:960px;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	flex-direction: row; 
}


.c1_common_w {
  width: 47%;
  margin-top: 80px;
  display: flex;
  flex-direction: column;
  height: 100%;
}



.c1_common_c {
  flex: 1; /* 高さを揃える */
  display: flex;
  flex-direction: column;
  position: relative;
  padding: 1px 1px 20px 1px;
  border-radius: 20px;
}


.c1_st-h {
	min-height: 300px;
}





.c1_common_yajirushi{
position: absolute;
left:8%;
bottom:-4%;
}	

.c1_common_yajirushi img{
width: 50px;
}	


.c1_t1{
	width: 400px;
	margin:-50px auto 0;
}

.c1_t1 img{
	width: 100%;
}

.c1_t2{
	font-size:var(--font-24);
	font-weight: bold;
	line-height: 1.5;
}


.c1_p_w{
	width: 90%;
	margin: 20px auto 0;
	color: #FFFFFF;
}

.c1_p_h1{
	min-height: 240px;
}


.c1_wrap_point{
	width: 200px;
	margin: 0 auto 0;
}

.c1_wrap_point img{
	width: 100%;
}

.c1_wrap_t1{
	margin-top: 10px;
	font-size:var(--font-22);
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	letter-spacing:0.1em;
}

.c1_p1{
	margin-top: 30px;
}



.c1_img1{
	margin-top: auto;
}

.c1_img1 img{
	width: 100%;
}


.c1_s1-color1{
background:#e7a025;
}

.c1_s1-color2{
background:#00b08d;
}

.c1_s1-color3{
background:#e76495;
}

.c1_s1-color4{
background:#a060c4;
}


.c1_s1-color1-f{
color:#e7a025;
}

.c1_s1-color2-f{
color:#00b08d;
}

.c1_s1-color3-f{
color:#e76495;
}

.c1_s1-color4-f{
color:#a060c4;
}

.c1_st_w{
	width: 90%;
	min-height: 400px;
	margin: 0px auto 0;
	position: relative;
	display: flex;
	align-items: center;
	
}


.c1_st_l{
	width:70%;
	margin-top: 0px;
}

.c1_st_l_name1_w{
	border-bottom: #000000 1px solid;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.c1_st_l_name1{
	font-size:var(--font-21);
	font-weight: bold;
	margin-bottom: 10px;

}

.c1_st_l_name2{
	font-size:var(--font-14);

}

.c1_st_l_name3{
	font-size:var(--font-11);

}

.c1_st_l_name4{
	padding: 3px 20px 6px;
	border: #000000 1px solid;
	border-radius: 9999px;
}

.c1_st_l_mt1{
	margin-top: 10px;
}


.c1_st_r{
	width:40%;
	position: absolute;
	right: 0;
	bottom: 0;
}


.c1_st_r img{
	width: 100%;
}




.c1_mv_w{
	width: 800px;
	margin: 40px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	
}

.c1_mv_box{
	width: 43%;
	margin-top: 40px;
}

.c1_mv_box img{
	width: 100%;
}








@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.m_wrap{
	width:90%;
		margin:40px auto;
		box-sizing: border-box;
	
}
	
.m_btn1{
  width : calc(100% /4 - 15px) ;
}
	
	
.section_mt{
	margin-top:50px;
}

.c1_back{
	padding: 50px 0;
}	
	
	
.contents_wrap{
	width:100%;
	margin:0 auto 0;
}
	
.c1_text1{
	width:86%;
	margin:20px auto 0;
	font-size:var(--font-16);
}
	
.c1_wrap{
	width:100%;
	margin: 0 auto 0;
}


.c1_common_w{
width:90%;
	margin: 80px auto 0;
}
	
.c1_common_c{
width:100%;	
	border-radius: 20px;
}
	
.c1_st-h {
	min-height:auto;
}
	

	
.c1_common_yajirushi{
width: 20px;
left:8%;
bottom:-2.5%;
}
	
.c1_common_yajirushi img{
width: 30px;
}	
	
	

.c1_t1{
	width:84%;
	margin:-15% auto 0;
}




.c1_wrap_point{
	width: 200px;
	margin: 0 auto 0;
}

.c1_wrap_point img{
	width: 100%;
}

.c1_wrap_t1{
	margin-top: 10px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	letter-spacing:0.1em;
}
	
	
.c1_st_w{
	width: 90%;
	min-height: 300px;
	
}


.c1_st_l{
	width:80%;
	margin-top: 0px;
}

.c1_st_l_name1_w{
	border-bottom: #000000 1px solid;
	padding-bottom: 20px;
	margin-bottom: 20px;
}



.c1_st_l_name4{
	padding: 5px 20px;
	border: #000000 1px solid;
	border-radius: 9999px;
}

.c1_st_l_mt1{
	margin-top: 10px;
}


.c1_st_r{
	width:40%;
	position: absolute;
	right: 0;
	bottom: 0;
}


.c1_st_r img{
	width: 100%;
}


.c1_p1{
	margin-top: 20px;
	font-size:var(--font-16);
}
	
.c1_img1{
	margin: 40px auto 0;
}
	
	
.c1_mv_w{
	width:90%;
	margin: 0px auto 0;
	
}

.c1_mv_box{
	width: 100%;
	margin: 40px auto 0;
}
	

}



/*==c2==*/

.c2_back{
	
	padding: 80px 0;
}

.c2_wrap_t{
	width:754px;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}




.c2_wrap_t-l{
	width:480px;
	margin: 0 auto;
}

.c2_wrap_t-l img{
	width:100%;
}

.c2_wrap_t-r{
	width:876px;
	margin: 40px auto 0;
}


.c2_st_w{
	width:960px;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row; 
	align-items: stretch; 
	justify-content: space-between
}




.c2_st_box1{
	width: calc(100% / 3 - 10px);
	background: #f6f5e6;
	border-radius: 20px;
	margin-top: 40px;
	padding: 0 0 0 0;
	display: flex;
	flex-direction: column;
	position: relative;
}


.c2_st_box1::after {
  content: "";
  position: absolute;
  bottom: -15px; /* 下に突き出す位置 */
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 15px solid  #f6f5e6; 
}




.c2_st_box1 img{
	width:100%;
}

.c2_st_comtents{
	padding: 20px 20px 30px;
}

.c2_st_img1{
	margin-top: 20px;
}



.c2_st_p1{
	margin-top: 20px;
	text-align: center;
	font-weight: bold;
	font-size: var(--font-18);
	line-height: 1.6;
}

.c2_st_p2{
	margin-top: 20px;
}


.c2_intro_w{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width:94%;
	margin-top: auto;
  margin-left: auto;
  margin-right: auto;
}



.c2_intro_l{
	width:38%;
}

.c2_intro_l img{
	width:100%;
}

.c2_intro_r{
	width:57%;
	font-size:var(--font-12);
	line-height: 1.6;
}


.c2_intro_name1{
	font-size:var(--font-18);
	font-weight: bold;
	margin-bottom: 5px;
	color: #ef7da0;
}

.c2_intro_name2{
	font-size:var(--font-12);
}

.c2_intro_name3{
	color: #9a4760;
}


@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.c2_back{
	padding: 50px 0;
	margin-top: 0px;
}	
	
.c2_wrap_t{
	width:90%;
	
}

.c2_wrap_t-l{
	width:90%;
	margin: 0 auto;
}
	

.c2_wrap_t-r{
	width:90%;
	font-size: var(--font-16);
}	
	

.c2_st_w{
	width:90%;
}

	
.c2_st_box1{
	width:100%;
	margin-top: 40px;
	border-radius: 20px 20px 20px 0;
}	
	
.c2_st_comtents{
	padding: 20px 20px;
}	
	
	
.c2_st_p1{
	
	font-size: var(--font-20);
}	
	
	
.c2_st_p2{
	font-size: var(--font-16);
}
	
	
	
	
	
}



/*==c3==*/

.c3_back{
	background: #f4f4e8;
	padding: 80px 0;
}


.c3_wrap_t{
	width:786px;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}




.c3_wrap_t-l{
	width:100%;
}

.c3_wrap_t1{
	width:40%;
	margin: 0 auto 0;
}

.c3_wrap_t2{
	width:640px;
	margin: 0 auto;
}

.c3_wrap_t1 img,.c3_wrap_t2 img{
	width:100%;
}



.c3_wrap_t-r{
	width:876px;
	margin: 40px auto 0;
}


.c3_st_w{
	width:876px;
	margin: 0 auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}




.c3_st_box_w{
	width: calc(100% / 2 - 60px);
	margin-top: 40px;
	display: flex;
	flex-direction: column;
}

.c3_st_box_w img{
	width:100%;
}


.c3_st_p1{
	margin-top: 20px;
	text-align: center;
	font-weight: bold;
	font-size: var(--font-21);
	line-height: 1.6;
}


.c3_st_comtents{
	padding: 20px 0;
	flex-grow: 1;
	min-height: 260px;
}

.c3_st_comtents_t{
	margin-bottom: 20px;
}


.c3_st_box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width:100%;
	margin: 10px auto 0;
}

.c3_st_box_l{
	width:34%;
}

.c3_st_box_l img{
	width:100%;
}

.c3_st_box_r{
	width:60%;
	font-size:var(--font-12);
	line-height: 1.6;
}

.c3_st_line{
	width:100%;
}

.c3_st_line img{
	width:100%;
}

.c3_st_box_name1{
	font-size:var(--font-18);
	font-weight: bold;
	margin-bottom: 5px;
	color: #e99c27;
}

.c3_st_box_name2{
	font-size:var(--font-12);
}

.c3_st_box_name3{
	color: #976f33;
}

.c3_btn_mv{
	margin: 40px auto 0;
	width: 340px;
}

.c3_btn_mv img{
	width:100%;
}


.c3_all_img{
	width:64%;
	margin:120px auto 0;
}

.c3_all_img img{
	width:100%;
}




/*==スライド==*/


.slider_wrap {
	margin-top:40px;
	padding-bottom:10px;
    }
	
.slider {
        width: 84%;
        margin: 0px auto 0;
    }	

    .slick-slide {
      margin: 0px 20px;
    }

    .slick-slide img {
      width: 100%;
    }


    .slick-slide {
      transition: all ease-in-out .3s;
      opacity: .2;
    }
    
    .slick-active {
      opacity: .5;
    }

    .slick-current {
      opacity: 1;
    }
	




@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.c3_back{
	padding: 50px 0;
}
	
.c3_wrap_t{
	width:100%;
	
}

.c3_wrap_t-l{
	width:100%;
}
	
.c3_wrap_t1{
	width:50%;
}

.c3_wrap_t2{
	width:90%;
}	

.c3_wrap_t-r{
	width:90%;
	margin: 20px auto 0;
	font-size:var(--font-16);
}
	
	
.c3_st_p1{
	margin-top: 20px;
}	

.c3_st_w{
	width:100%;
}


.c3_st_box_w{
	width:100%;
	margin-top: 20px;
}
	
	.c3_st_t1{
		width: 90%;
		margin: 0 auto;
	}	
	
.c3_st_comtents{
	width:86%;
	margin: 0 auto;
	min-height:auto;
	font-size:var(--font-16);
}	
	
	
.c3_st_box{
	width:86%;
	margin: 10px auto 0;
}	
	
	
.c3_btn_mv{
	margin: 30px auto 0;
	width:90%;
}	
	
.c3_all_img{
	width:60%;
	margin:20px auto 0;
}	
	
	
/*==スライド==*/	
	
.slider {
        width: 100%;
        margin: 0px auto 0;
    }	
	


}

/*==sns==*/

.sns_wrap{
	width:920px;
	margin:0 auto 0;
	display:flex;
	flex-flow: wrap;
	justify-content: space-between;
}


.sns_box1_l{
	width : calc(100% /2 - 50px) ;
}

.sns_box1_r{
	width : calc(100% /2 - 50px) ;
}

.sns_box2{
	width :96%;
	margin: 0 auto;
}

.sns_img-t{
	width:100%;
}

.sns_img-insta{
	width:100%;
}

.sns_img-btn1{
	width:80%;
}

.sns_img1{
	width:100%;
}







.sns_btn_w{
	width:100%;
	margin:15px auto 30px;
	display:flex;
	flex-flow: wrap;
	justify-content: space-between;
}

.sns_btn{
	margin-top: 15px;
	width : calc(100% /2 - 7px) ;
}

.sns_btn img{
	width:100%;
}

.sns_mt1{
	margin-top: 40px;
}





@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
	
.sns_wrap{
	width:90%;
}


.sns_box1{
	width :100%;
}
	
.sns_box1_l{
	width :100%;
}	

.sns_box1_r{
	width :100%;
	margin-top: 30px;
	padding-top: 30px;
	border-top: #D2D2D2 1px solid;
}	
	
.sns_img-t{
	width:90%;
}
	
.sns_img-insta{
	width:88%;
}	

.sns_img-btn1{
	width:70%;
}
	
.sns_img1{
	width:90%;
}	
	
.sns_btn_w{
	width:70%;
	margin:15px auto 30px;
}

.sns_btn{
	margin-top:15px;
	width :100%;
}	

	
}


/*==編集後期==*/

.c4_back{
	background:#eeeeee;
}

.c4_wrap{
	width:820px;
	margin:0 auto 0;
	padding:50px 0;
}


.c4_t1{
	border-top:#313131 2px solid;
	border-bottom:#313131 2px solid;
	padding:25px 0;
}

.c4_img1{
	width:30%;
}

.c4_img2{
	width:100%;
}


.c4_l{
	width:44%;
	margin-top:50px;
}

.c4_r{
	width:44%;
	margin-top:50px;
}




@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.c4_wrap{
	width:100%;
}

.c4_img1{
	width:70%;
}


.c4_l,.c4_r{
	width:90%;
	margin:25px auto 0;
}

}



/*backnumber*/

.backnumber_t1{
	border-top:#313131 2px solid;
	border-bottom:#313131 2px solid;
	padding:25px 0;
}

.backnumber_ul{
	display: flex;
	flex-wrap: wrap;
	justify-content:  space-between;
	margin-top: 40px;
}

.backnumber_ul li{
	width:calc(100% / 2 - 60px);
	font-size: var(--font-16);
	list-style:disc;
	margin-left: 1em;
	margin-bottom: 0.5em;
	
}



@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.backnumber_ul{
	margin-top: 20px;
}
	
.backnumber_ul li{
	width:100%;
	margin-left:2em;
}
	


}




/*==footer==*/
	
footer {
	text-align:center;
	margin:0 0 0 0;
	padding:35px 0 60px 0;
	background:var(--main-color);
	color:#FFF;
	
}	

.footer_wrap {
	width:820px;
	margin:0 auto;
	text-align:center;
	font-size:var(--font-12);
	
}

.footer_p1 {
	font-size:var(--font-20);
	
	
}

.footer_p2 {
	font-size:var(--font-16);
	
}

.footer_line {
	border-bottom:#FFF 2px solid;
	margin-bottom:20px;
	padding-bottom:20px;
	
	
}

	
.footer_wrap a{
	color:#fff;
	text-decoration:none;
	
}

.footer_wrap a:hover{
	text-decoration: underline;
	
}


@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */

.footer_wrap {
	width:95%;
	margin:0 auto;
	line-height:180%;
}


.footer_p1 {
	margin-bottom: 10px;
}

}



/*==トップボタン==*/

#sp_wrap{
	background:#FFF;
}

.spToTopBtn {
  position: fixed;
  right: 0;
  bottom: 0;
  display: none;
}





