@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;900&family=Noto+Serif+JP:wght@400;500;900&family=Sawarabi+Mincho&family=Shippori+Mincho+B1:wght@400;600;800&display=swap');

html{
  font-size: 62.5%;
  line-height: normal;
}
body{
  font-size: 1.6rem;
  line-height: 1.5;
  color: #000;
  max-width: 100vw;
  font-family: 'Hina Mincho','Noto Sans JP',"Noto Serif JP","Sawarabi Mincho",sans-serif, "serif";
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color:#ffffff;
  font-weight: 400;
}
.position_r{
    position: relative;
}
.pc{
	display: block;
}
.sp{
	display: none;
}
/*--ここから--*/
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

		ベース用

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/****************************************************************************************************************************
		共通
****************************************************************************************************************************/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
/*-------------------------------------------------------------------------------------------
	初期設定
-------------------------------------------------------------------------------------------*/
html{
	margin: 0;
	padding: 0;
	width: 100%;
}

body{
	font-family:'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
	font-weight:300;
	font-weight: normal;
	color: #666;
	font-size: 15px;
	letter-spacing: 0.1em;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	position: relative;
	background-color: #fff;
}

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

img{
	width: 100%;
}

p{
	margin: 0;
	padding: 0;
}

ul{
	margin: 0;
	padding: 0;
}

li{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

a{
	color: #dd3264;
	text-decoration: none;
	/*-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all  0.5s ease;*/
}

a:hover{
	color: #ee0046;
	/*-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all  0.5s ease;*/
}

.w1200{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

h1{
	text-align: center;
	letter-spacing: 0.2em;
	font-size: 30px;
	line-height: 1.5em;
	color: #333;
	margin: 0;
}

h2{
	text-align: center;
	letter-spacing: 0.2em;
	font-size: 30px;
	line-height: 1.9em;
	color: #333;
}

input,textarea{
	margin: 0;
	padding: 0;
	-webkit-appearance: none;
	border-radius: 0;
	background-color: transparent;
	background-color: initial;
}

.w1200{
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.w900{
	width: 900px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 1220px){
	.w1200{
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;
	}
	.pc{
		display: none;
	}
}
@media screen and (max-width: 920px){
	.w900{
		width: 100%;
		padding-left: 10px;
		padding-right: 10px;
	}
}
@media screen and (max-width: 640px){
	h1{
		letter-spacing: 0.1em;
		font-size: 25px;
		line-height: 1.5em;
		color: #333;
	}
	h2{
		letter-spacing: 0.1em;
		font-size: 25px;
		line-height: 1.5em;
		color: 
		#333;
	}
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
}


/****************************************************************************************************************************
		ヘッダー
****************************************************************************************************************************/
header{
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background-color: #fff;
	border-bottom: solid 1px #ddd;
}

header .in_head{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .logoArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .logoArea a{
	display: block;
	height: 70px;
	padding: 15px 0;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .logoArea img{
	display: block;
	width: auto;
	height: 45px;
	margin: 0;
	padding: 0;
	line-height: 1em;
}

header .in_head .infohead{
	flex: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .infohead .headtop{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

header .in_head .infohead .headtop ul{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

header .in_head .infohead .headtop li{
	position: relative;
}

header .in_head .infohead .headtop li:before{
	content: '';
	display: block;
	width: 1px;
	height: 70%;
	position: absolute;
	top:0;
	left: 0;
	right:auto;
	bottom:0;
	margin: auto;
	background-color: #ccc;
}

header .in_head .infohead .headtop li:nth-child(1):before{
	display: none;
}

header .in_head .infohead .headtop li a{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 13px;
	letter-spacing: 0.1em;
	color: #333;
	background-color: #f5f5f5;
	padding: 0 20px;
	height: 30px;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .infohead .headtop .head_icon{
	margin-left: 8px;
}

header .in_head .infohead .headtop .head_icon a{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-size: 16px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	letter-spacing: 0;
	line-height: 1;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .infohead .headtop .head_tw_icon a{
	background-color: #00acee;
	color: #fff;
	font-size: 17px;
}

header .in_head .infohead .headtop .head_mail_icon a{
	background-color: #ff426e;
	color: #fff;
}

header .in_head .infohead .headbottom{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .infohead .headbottom nav{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .infohead .headbottom nav ul{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

header .in_head .infohead .headbottom nav li{
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 0 0 0;
	padding: 0 15px;
	position: relative;
	cursor:pointer;
}

header .in_head .infohead .headbottom nav li span{
	display: block;
	position: relative;
	padding-right: 20px;
}

header .in_head .infohead .headbottom nav li span:before{
	font-family: fontawesome;
	content: '\f0d7';
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 20px;
	height: 20px;
	position: absolute;
	top:0;
	left: auto;
	right:0px;
	bottom:0;
	margin: auto;
	color: #999;
}

header .in_head .infohead .headbottom nav li ul.child{
	display: none;
	position: absolute;
	top:70px;
	left: 0;
	background-color: #fff;
	border: solid 1px #aaa;
	min-width: 200px;
	padding-top: 10px;
	padding-bottom: 10px;
}

header .in_head .infohead .headbottom nav li ul.child li{
	display: block;
	text-align: left;
	padding: 0 0px;
	cursor: default;
}

header .in_head .infohead .headbottom nav li ul.child li.ft{
	border-top: solid 1px #ddd;
	margin-top: 10px;
	padding-top: 10px;
}

header .in_head .infohead .headbottom nav li ul.child li.ft:nth-child(1){
	border-top:none;
	margin-top: 0px;
	padding-top: 0px;
}

header .in_head .infohead .headbottom nav li ul.child li a{
	display: block;
	color: #666;
	padding: 2px 10px;
}


/* on */
header .in_head .infohead .headbottom nav li.on{
	background-color: #e7e7e7;
}
header .in_head .infohead .headbottom nav li.on ul.child{
	display: block;
}

/*----------------------------------------------
検索窓
----------------------------------------------*/
header .in_head .infohead .headbottom .headSearchArea{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 190px;
	margin-left: 10px;
}

header .in_head .infohead .headbottom .headSearchArea .search-box{
}

header .in_head .infohead .headbottom .headSearchArea .search-box form{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
}

header .in_head .infohead .headbottom .headSearchArea .search-box #search-input{
	font-family:'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
	display: block;
	width: 100%;
	height: 30px;
	border: solid 1px #ccc;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	padding: 0px 35px 0px 10px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	outline: none;
	background-color: inherit;
	color: #666;
}

header .in_head .infohead .headbottom .headSearchArea .search-box #search-input::placeholder{
	color: #aaa;
	font-weight: normal;
	letter-spacing: 0.1em;
}

header .in_head .infohead .headbottom .headSearchArea .search-box button{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-size: 16px;
	color: #666;
	background-color: inherit;
	border: none;
	position: absolute;
	top:0;
	left: auto;
	right:0;
	bottom:0;
	margin: auto;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 5px;
	line-height: 1em;
	cursor:pointer;
}

/*----------------------------------------------
trigger
----------------------------------------------*/
header .in_head .infohead .headbottom .trigger{
	display: none;
	width: 45px;
	height: 100%;
	margin-left: 15px;
}

header .in_head .infohead .headbottom .trigger p{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 45px;
	height: 45px;
	position: relative;
	cursor:pointer;
	background-repeat: repeat;
	background-color: #333;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .infohead .headbottom .trigger span{
	display: block;
	width: 25px;
	height: 1px;
	background-color: #fff;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .infohead .headbottom .trigger span:before{
	content: '';
	display: block;
	width: 25px;
	height: 1px;
	position: absolute;
	top:13px;
	left: 0;
	right:0;
	bottom:auto;
	margin: auto;
	background-color: #fff;
	z-index: 2;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

header .in_head .infohead .headbottom .trigger span:after{
	content: '';
	display: block;
	width: 25px;
	height: 1px;
	position: absolute;
	top:auto;
	left: 0;
	right:0;
	bottom:13px;
	margin: auto;
	background-color: #fff;
	z-index: 2;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}




/* とりあえず */
header .in_head .infohead .searchBox{
	display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 230px;
	height: 30px;
	font-size: 13px;
	color: #888;
	border: solid 1px #ddd;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	position: relative;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 15px;
	margin-left: 10px;
	line-height: 1.7em;
}

header .in_head .infohead .searchBox:before{
	font-family: fontawesome;
	content: '\f002';
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #ffec04;
	width: 30px;
	height: 30px;
	position: absolute;
	top:0;
	left: auto;
	right:-1px;
	bottom:0;
	margin: auto;
	border-radius: 0px 30px 30px 0px;
	-webkit-border-radius: 0px 30px 30px 0px;
	-moz-border-radius: 0px 30px 30px 0px;
	cursor:pointer;
	font-size: 16px;
	color: #555;
}

.headline{
	display: block;
	text-align: center;
	/*background-position: center center;
	background-repeat: repeat-x;*/
}

.headline .headline_in{
	display: block;
	font-size: 18px;
	letter-spacing: 0.2em;
}

.headline .headline_in a{
	display: block;
	background-color: #ffec04;
	padding: 10px 0;
	font-size: 18px;
	letter-spacing: 0.2em;
	color: #333;
	text-align: center;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	position: relative;
}

.headline .headline_in a:after{
	content: '';
	display: block;
	width: 0;
	height: 5px;
	position: absolute;
	top:auto;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	background-color: #ffd504;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

.headline .headline_in p{
	display: inline-block;
	font-weight: bold;
	font-size: 20px;
	margin-right: 20px;
}

.headline .headline_in span{
	display: inline-block;
	font-weight: bold;
	font-size: 25px;
	padding: 0px 10px;
	color: #ff4209;
}

header iframe{
	display: block;
	width: 100%;
	height: auto;
}


@media screen and (min-width: 920px){
	header .in_head .logoArea a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
	header .in_head .infohead .headbottom nav li:hover span{
		color: #333;
	}
	header .in_head .infohead .headbottom nav li:hover span:before{
		color: #333;
	}
	header .in_head .infohead .headbottom nav li ul.child li a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
}

@media screen and (max-width: 1220px){
	header .in_head .infohead .headbottom nav{
		display: none;
	}
	header .in_head .infohead .headbottom .trigger{
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}
@media screen and (max-width: 920px){
	header .in_head{
		padding-left: 0px;
	}
}
@media screen and (max-width: 640px){
	header .in_head .infohead .headbottom .headSearchArea{
		display: none;
	}
}
@media screen and (max-width: 500px){
	header .in_head .logoArea{
		width: 250px;
	}
	header .in_head .logoArea a{
		width: 100%;
		height: auto;
		padding: 8px 0;
	}
	header .in_head .logoArea img{
		width: 100%;
		height: auto;
	}
	header .in_head .infohead .headbottom .trigger{
		width: 40px;
		margin-left: 0px;
	}
	header .in_head .infohead .headbottom .trigger p{
		width: 40px;
		height: 41px;
	}
	header .in_head .infohead .headbottom .trigger span{
		width: 22px;
	}
	header .in_head .infohead .headbottom .trigger span:before{
		width: 22px;
		top:12px;
		left: 0;
		right:0;
		bottom:auto;
	}
	header .in_head .infohead .headbottom .trigger span:after{
		width: 22px;
		top:auto;
		left: 0;
		right:0;
		bottom:12px;
	}
}





/****************************************************************************************************************************
		サイドナビ
****************************************************************************************************************************/
.sideNavi{
	display: block;
	width: 300px;
	height: 100%;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: auto;
	right:0;
	z-index: 10000;
	overflow: hidden;
	-moz-transform: translate(317px, 0);
	-webkit-transform: translate(317px, 0);
	-o-transform: translate(317px, 0);
	-ms-transform: translate(317px, 0);
	transform: translate(317px, 0);
	-moz-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

.sideNavi.on{
	-moz-transform: translate(0px, 0);
	-webkit-transform: translate(0px, 0);
	-o-transform: translate(0px, 0);
	-ms-transform: translate(0px, 0);
	transform: translate(0px, 0);
	-moz-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-ms-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}

.sideNavi .sideNavi_in{
	width: 317px;
	height: 100%;
	overflow-y: scroll;
}

.sideNavi .sideNavi_in .sideNavi_box{
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 60px;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding: 0 0 0 15px;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title p{
	flex: 1;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn{
	width: 60px;
	height: 60px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	cursor:pointer;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span{
	width: 31px;
	height: 31px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span:before{
	content: '';
	display: block;
	width: 31px;
	height: 1px;
	background-color: #333;
	position: absolute;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	margin: auto;
}

.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn span:after{
	content: '';
	display: block;
	width: 1px;
	height: 31px;
	background-color: #333;
	position: absolute;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	margin: auto;
}

.sideNavi .sideNavi_in .sideNavi_box .menu{
	border-top: solid 1px #ddd;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li{
	display: block;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li a{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	border-bottom: dashed 1px #ddd;
	padding: 0 40px 0 15px;
	color: #333;
	position: relative;
	font-weight: bold;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li a:hover{
	opacity: 0.5;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li a:hover:after{
	color: #fff;
	-webkit-transition: all 1s;
	-moz-transition: all 1s;
	-ms-transition: all 1s;
	-o-transition: all 1s;
	transition: all 1s;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li.on a{
	background-color: #38bbd3;
	color: #fff;
}

.sideNavi .sideNavi_in .sideNavi_box .menu li.on a:after{
	display: none;
}

.sideNavi_bg{
	display: none;
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background-color: rgba(0,0,0,0.4);
	cursor:pointer;
}

@media screen and (max-width: 920px){
	.sideNavi .sideNavi_in .sideNavi_box .menu li a:after{
		right: 30px;
	}
	.sideNavi .sideNavi_in .sideNavi_box .sideNavi_title .close_btn{
		margin-right: 15px;
	}
}

@media screen and (max-width: 500px){
}


/****************************************************************************************************************************
		フッター
****************************************************************************************************************************/
footer{
	/*background-color: #f9f9f9;*/
	background: #333;
	padding-top: 50px;
	padding-bottom: 0px;
}

footer .in_foot{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

footer .in_foot .foot_navArea{
}

footer .in_foot .foot_navArea .foot_navArea_in{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

footer .in_foot .foot_navArea .navBox{
	width: 20%;
}


footer .in_foot .foot_navArea .navBox ul{

}

footer .in_foot .foot_navArea .navBox li{

}

footer .in_foot .foot_navArea .navBox li a{
	display: inline-block;
	color: #fff;
	font-size: 15px;
	padding: 3px 0px;
}

footer .copyright{
	text-align: center;
	padding-top: 30px;
	padding-bottom: 30px;
	border-top: solid 1px #393939;
	margin-top: 50px;
}

footer .copyright .foot_logo{
	margin-bottom: 10px;
}

footer .copyright .foot_logo a{
	display: block;
	width: 450px;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	color: #fff;
	line-height: 1.7em;
	font-size: 13px;
}

footer .copyright .foot_logo a img{
	display: block;
	width: 100%;
	line-height: 1em;
}

footer .copyright .foot_text{
}

footer .copyright .foot_text a{
	color: #fff;
	line-height: 1.7em;
	font-size: 13px;
}

footer .copyright .copy{
	display: inline-block;
	text-align: center;
	font-size: 11px;
	letter-spacing: 0.2em;
	color: #fff;
}

#page-top{
  position: fixed;
	top:auto;
	left:auto;
	right: 20px;
  bottom: 20px;
	width: 45px;
	height: 45px;
	z-index: 1000;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#page-top a{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 45px;
	height: 45px;
	background-color: #333;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

#page-top a span{
	width: 12px;
	height: 12px;
	position: relative;
	-moz-transform: rotate(135deg);
	-webkit-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
	margin-top: 8px;
}

#page-top a span:before{
	display: block;
	content: '';
	width: 1px;
	height: 12px;
	background-color: #fff;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

#page-top a span:after{
	display: block;
	content: '';
	width: 12px;
	height: 1px;
	background-color: #fff;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

@media screen and (min-width: 920px){
	footer .in_foot .foot_logo a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
	footer .in_foot .foot_navArea .navBox li a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
	#page-top a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}

	footer .copyright a:hover{
		opacity: 0.5;
		-webkit-transition: all 0.5s;
		-moz-transition: all 0.5s;
		-ms-transition: all 0.5s;
		-o-transition: all 0.5s;
		transition: all 0.5s;
	}
}

@media screen and (max-width: 1200px){
	footer{
		padding-top: 0px;
	}
	footer .in_foot{
		display: none;
	}
	footer .copyright{
		border-top: none;
		margin-top: 0px;
	}
}
@media screen and (max-width: 640px){
	footer .copyright .foot_logo a{
		width: 350px;
	}
}
@media screen and (max-width: 500px){
	footer .copyright .foot_logo a{
		width: 250px;
	}
	#page-top{
		right: 10px;
	  bottom: 10px;
		width: 40px;
		height: 40px;
	}
}
@media screen and (max-width: 400px){
	footer .copyright .foot_text a{
		font-size: 12px;
	}
	footer .copyright .copy{
		font-size: 10px;
	}
}
/****************************************************************************************************************************
		ページナビ
****************************************************************************************************************************/
/****************************************************************************************************************************
		コンテンツ
****************************************************************************************************************************/
article{
	padding-top: 70px;
}

@media screen and (max-width: 500px){
	article{
		padding-top: 58px;
	}
}


/****************************************************************************************************************************

****************************************************************************************************************************/

/*ここまで*/


/*新規SDGｓ*/
main{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}
.header_eyechach{
	position: relative;
	margin-bottom: 4.17vw;
}
.header_bgi{
	width: 100%;
}
.h1_posi_i{
	position: absolute;
	top: 6.25vw;
	left: 51.88vw;
	color: #fff;
}
.h_logo{
	background-color: #fff;
	border-radius: 10px;
	padding: 2.34vw 1.51vw;
	box-sizing: border-box;
	margin-bottom: 1.67vw;
}
.h_logo img{
	width: 26.15vw;
}
.header_eyechach h1{
	font-size: 2.08vw;
	font-weight: bold;
	text-shadow: 0px 10px 20px #00000080;
	text-align: left;
	color: #fff;
	margin-bottom: 25px;
}
.header_eyechach p{
	font-size: 1.04vw;
	font-weight: 400;
	line-height: 1.5;
	text-shadow: 0px 3px 6px #00000080;
	width: 35.52vw;
	color: #fff;
}

.sdgs_one_sec h2{
	font-size: 2.08vw;
	font-weight: bold;
	color: #666666;
	text-shadow: 0px 10px 20px #00000029;	
	text-align: center;
	margin-bottom: 1.25vw;
}
.sdgs_one_sec p{
	font-size: 1.04vw;
	font-weight: 400;
	color: #707070;
	line-height: 1.5;
	margin-bottom: 0.94vw;
	width: 1088px;
	margin: auto;
	margin-bottom: 0.94vw;
	letter-spacing: 2.4px;
}
.sdgs_logo{
	width: 42.29vw;
	margin: auto;
	margin-bottom: 6.56vw;
}

.sdgs_two_sec h2{
	font-size: 2.08vw;
	color: #fff;
	letter-spacing: 1.6px;
	line-height: 2;
	text-align: center;
	background-color: #2F2F2F;
	width: 85.42vw;
	height: 4.17vw;
	margin: auto;
	margin-bottom: 4.17vw;
}
.two_ul{
	display: flex;
	justify-content: space-between;
	width: 85.42vw;
	margin: auto;
	margin-bottom: 7.55vw;
}
.two_ul>li{
	width: 26.04vw;
	box-shadow: 0px 6px 9px #00000029;
	border: 1px solid #AFAFAF;
	padding-bottom: 1.56vw;
}
.two_ul li h3{
	font-size: 1.56vw;
	color: #fff;
	margin-bottom: 0.94vw;
	padding: 1.61vw 3.33vw;
	box-sizing: border-box;
}
.two_ul li:first-of-type h3{
	background-color: #37646C;
}
.two_ul li:nth-of-type(2) h3{
	background-color: #396B55;
}
.two_ul li:last-of-type h3{
	background-color: #477248;
	padding: 2.81vw 3.33vw;
}
.two_ul li div{
	margin: auto;
	width: 20.83vw;
	margin-bottom: 0.94vw;
}
.two_ul li div img{
	width: 20.83vw;
	margin: auto;
}
.two_ul li p{
	font-size: 1.04vw;
	font-weight: 400;
	letter-spacing: 0.8px;
	line-height: 1.5;
	color: #707070;
	width: 20.83vw;
	margin: auto;
}
.two_ul li p a{
	color: #707070;
	border-bottom: 1px solid #707070;
}
.two_ul li:first-of-type p{
	margin-bottom: 6.61vw;
}
.two_ul li:nth-of-type(2) p{
	margin-bottom: 3.65vw;
}
.two_ul li:last-of-type p{
	margin-bottom: 16.5vw;
}
.logo_ul{
	display: flex;
	width: 20.83vw;
	margin: auto;
	height: 6.82vw;
}
.logo_ul li{
	width: 6.82vw;
	margin-bottom: 0.94vw;
}

.sdgs_the_sec p{
	font-size: 2.08vw;
	font-weight: 400;
	color: #707070;
	line-height: 1.5;
	width: 59.22vw;
	margin: auto;
	margin-bottom: 6.77vw;
}
/*END SDGs*/
/*SDGs SP*/
@media screen and (max-width: 768px){
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
	.header_eyechach{
		margin-bottom: 7.73vw;
	}
	.h1_posi_i{
		top: 28.53vw;
		left: 9.6vw;
	}
	.h_logo{
		width: 52.53vw;
		padding: 4.27vw 2.4vw;
		box-sizing: border-box;
		margin-bottom: 1.67vw;
	}
	.h_logo img{
		width: 46.93vw;
	}
	.header_eyechach h1{
		font-size: 5.87vw;
		margin-bottom: 2.67vw;
	}
	.header_eyechach p{
		font-size: 3.2vw;
		width: 77.07vw;
		font-weight: 300;
	}
	.sdgs_one_sec h2{
		font-size: 5.87vw;
		margin-bottom: 5.33vw;
	}
	.sdgs_one_sec p{
		font-size: 3.73vw;
		margin-bottom: 5.33vw;
		width: 80.53vw;
	}
	.sdgs_logo{
		width: 96vw;
		margin: auto;
		margin-bottom: 13.33vw;
	}
	.sdgs_two_sec h2{
		font-size: 5.87vw;
		width: 96vw;
		height: 16vw;
		margin: auto;
		margin-bottom: 5.33vw;
	}
	.two_ul{
		display: block;
		width: auto;
		margin: auto;
		margin-bottom: 13.33vw;
	}
	.two_ul>li{
		width: 85.87vw;
		padding-bottom: 3.47vw;
		margin: auto;
		margin-bottom: 4vw;
	}
	.two_ul>li:last-of-type{
		margin-bottom: 0;
	}
	.two_ul li h3{
		font-size: 3.73vw;
		margin-bottom: 2.67vw;
		padding: 2.67vw 8.13vw;
		box-sizing: border-box;
	}

	.two_ul li div{
		margin: auto;
		width: 56vw;
		margin-bottom: 2.67vw;
	}
	.two_ul li div img{
		width: 56vw;
		margin: auto;
	}
	.two_ul li p{
		font-size: 3.2vw;
		letter-spacing: 0.5px;
		width: 71.73vw;
		margin: auto;
	}
	.two_ul li:first-of-type p{
		margin-bottom: 5.33vw;
	}
	.two_ul li:nth-of-type(2) p{
		margin-bottom: 5.87vw;
	}
	.two_ul li:last-of-type p{
		margin-bottom: 5.33vw;
	}
	.logo_ul{
		display: flex;
		justify-content: space-between;
		width: 71.73vw;
		height: 18.4vw;
	}
	.logo_ul li{
		width: 18.67vw;
		margin-bottom: 3.73vw;
	}
	
	.sdgs_the_sec p{
		font-size: 5.87vw;
		width: 80.53vw;
		margin: auto;
		margin-bottom: 15.2vw;
	}

}
/*END SDGs SP*/