@charset "utf-8";
/* CSS Document */

header .visible_sp {
	display: none;
}
#sp_btn_req .visible_w420 {
	display: none;
}

/*--- ヘッダー ---*/
header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	background-color: #fff;
	text-align: center;
	height:70px !important;

}
header #header_content2 {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	height:40px !important;
}
header #header_logo2 {
	width: 150px;
	max-width: 150px;
	float: left;
	margin-left: 9px;
	padding-top: 5px;
	padding-bottom: 5px;
}
header #header_img_012 {
	width: 100%;
	max-width: 50px;
	float: left;
	margin-top: 11px;
	margin-left: 16px;
}
header #header_btn_req2 {
	width: 100%;
	max-width: 170px;
	float: right;
	z-index:999999;
	position:fixd;
}
header #navigation_pc2 {
	margin-top: 13px;
	display: block;
	float: left;
	margin-left: auto;
	margin-right: auto;
	min-width:950px !important;
	height:65px !important;

}
header #navigation_pc2 ul {
	margin-top: 18px;
	display: inline-block;
	float: left;

}
header #navigation_pc2 ul li {
	display: inline-block;
	padding: 0 12px;
}
header #navigation_pc2 ul li + li {
	border-left: 1px solid #595757;
}
header #navigation_pc2 ul li a {
	color: #595757;
	font-size: 14px;
	line-height: 16px;
	display: inline-block;
}
header #navigation_pc2 .btn_box {
	width: 120px;
	margin-left: 5px;
	margin-top: -5px;
	display: inline-block;
	float:left;

}
header #navigation_pc2 .btn_box .btn {
}
header #navigation_pc2 .btn_box .btn + .btn {
	margin-top: 3px;
}
header #navigation_pc2 .btn_box .mypage a,
header #navigation_pc2 .btn_box .inquiry a {
	font-size: 14px;
	border: 1px solid #37B0CF;
	border-radius: 12px;
	text-align: center;
	display: block;
	line-height: 22px;
}
header #navigation_pc2 .btn_box .mypage a {
	color: #37B0CF;
	background-color: #fff;
}
header #navigation_pc2 .btn_box .inquiry a {
	color: #fff;
	background-color: #37B0CF;
}


nav {
	font-size:14px;
}
nav:not(.areaparts) {
  position: absolute;
  top:0;
  margin: 0 auto;
  height: 40px;
  text-align: center;
  white-space: nowrap !important;
  width:100%;
/*  font-size:14px; */
  min-width:1210px !important;

/*	font-family: 'EB Garamond', serif;*/
}
nav .br{
  border-right: 1px solid #b8b8b8;

}

nav ul {
  width: 100%;
  max-width:1360px !important;




}
/* 親メニュー */
nav ul li {
  position: relative;
  float:left;
  height: 40px;
  font-size:14px;
}

/*
nav ul li:nth-child(1) {
  width: 13% !important;
  min-width:170px;
  max-width:140px;
}
nav ul li:nth-child(2) {
 width: 5% !important;
 min-width:50px;
  max-width:170px;
}
nav ul li:nth-child(3){
  width: 13% !important;
  min-width:120px;
}

nav ul li:nth-child(4) {
  width: 7% !important;
}
nav ul li:nth-child(5) ,
nav ul li:nth-child(6){
  width: 11% !important;
  min-width:100px;
}
nav ul li:nth-child(7) {
  width: 6% !important;
}
*/
nav ul li:nth-child(1) {
  width: 13% !important;
  min-width:170px;
  max-width:140px;
}
nav ul li:nth-child(2) {
 width: 5% !important;
 min-width:50px;
  max-width:170px;
}




nav ul li:nth-child(3) ,
nav ul li:nth-child(4) ,
nav ul li:nth-child(5) ,
nav ul li:nth-child(7) ,
nav ul li:nth-child(6){
  min-width:135px;
}

nav ul li:nth-child(8) {




  width: 90px !important;
}

nav ul li:nth-child(9) {
  width: 170px !important;
  float:right;
}

nav ul li a {
  display: block;
  line-height: 40px;
  color: #ffffff;
	text-decoration:none !important;
}
nav ul li a:hover {
  background: #ffffff;
  color: #434343;
}



/* 子メニュー */
nav ul li ul {
  position: absolute;
  z-index: 100;
  top: 100%;
  left: 0;
  width: 100%;
  text-align:center;
  color:#ffffff !important;
}
nav ul li ul li {
  overflow: hidden;
  width: 100% !important;
  height: 0;
  background: #0091AC;
  color:#ffffff !important;
  font-size:85% !important;

}
nav ul li ul li:nth-child(1),
nav ul li ul li:nth-child(2),
nav ul li ul li:nth-child(3),
nav ul li ul li:nth-child(4),
nav ul li ul li:nth-child(5),
nav ul li ul li:nth-child(6),
nav ul li ul li:nth-child(7),
nav ul li ul li:nth-child(8),
nav ul li ul li:nth-child(9)
{
  min-width: 135px !important;
  color:#ffffff !important;

}


nav ul li ul li a {
  display: block;
  background: #fffffff;
  color:#ffffff !important;
}
/* ホバーで子メニュー表示 */
nav > ul > li:hover > a {
  height: 40px;
  background: #ffffff;
  color: #434343 !important;
  border:1px solid #0091AC;
}


nav > ul > li:hover li:hover > a {
  background: #fffffff !important;
  color: #434343 !important;
  opacity: 1;
	border-top: 1px solid #b8b8b8;
	border-right: 1px solid #b8b8b8;
}

nav ul li:hover > ul >li {
  height: 40px;
	border-bottom: 1px solid #b8b8b8;
	border-left: 1px solid #b8b8b8;
  background: #fffffff;
  color: #434343 !important;


}

.head_logo{
 position: relative;  float:left;
}
.head_logo:hover{
  opacity: 0.5;



}

.head_entry{
 position: absolute;
 right:0px;


}

.head_entry img{

height:70px;width:auto;
}

@media screen and (min-width: 1050px) {

.rightbtn{

display:none;	}


}
@media screen and (max-width: 1024px) and (min-width: 870px) {

.mypage_none{

display:none;}




.head_entry{
 position: absolute;
 right:185px;


}

.head_entry img{

height:58px;width:auto;
margin-top:5px;
}


}



@media screen and (max-width: 869px) and (min-width: 769px)  {

header .visible_sp,
footer .visible_sp{
	display: block;	
}




header {
	height:65px !important;

}

	/*--- ヘッダー ---*/
	header .header_logo3 {
	width: 120px;
	max-width: 120px;
	float: left;
	margin-left: 0px;
	padding-top: 10px;
	padding-bottom: 0px;
	}

	header .header_img_03 {
		width: 30px;
		max-width: 30px;
		float:left;
		margin-top: 13px;
		margin-left: 0px;
	}

	/*--- ハンバーガーボタン ---*/
	/*--- 	.navToggle {
		display: block;
		position: absolute;
		right: 4.1vw;
		top: 2.5vw;
		width: 9.6vw;
		cursor: pointer;
		z-index: 10;
		text-align: left;
	}
	---*/
	
/*============
nav
=============*/

nav:not(.areaparts) {
  display: block;
  position: fixed;
  top: 0;
  right:0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 9999;
  opacity: 0;
  height: 300px !important;
  width: 100% !important;
  white-space: nowrap !important;
  min-width:320px !important;
    visibility: hidden;

}
.open nav {
  left:0;
  opacity: 1;
  width: 100% !important;
  visibility: visible;

}

nav .inner {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 65px;
	left: 0;
	z-index: 9999;
	width: 100% !important;


}
nav .inner ul {
		display: block;
		width: 100% !important;
}


nav .inner ul li,
nav .inner ul li .mypage,
nav .inner ul li .inquiry {
		float: left;
		display: block;
		width: 50% !important;
		margin: 0;
		padding: 0;
		text-align:center;
		 height: 40px;

}

nav .inner ul li .btn_request {
		width: 100% !important;
		text-align:center;
	}

	
	

nav .inner ul li:nth-child(1) ,
nav .inner ul li:nth-child(2) ,
nav .inner ul li:nth-child(3) ,
nav .inner ul li:nth-child(4) ,
nav .inner ul li:nth-child(5) ,
nav .inner ul li:nth-child(6) ,
nav .inner ul li:nth-child(7) ,
nav .inner ul li:nth-child(8){
  width: 50% !important;
  min-width:50%;
  max-width:50%;
}


nav ul li:nth-child(9) {
  width: 100% !important;
}
	
	
	
	
	
nav .inner ul li + li {
		border-left: none;
	}

nav .inner ul li a,
nav .inner ul li.mypage a,
nav .inner ul li.inquiry a,
nav .inner ul li.btn_request a {
		padding: 2.5vw 0px;
		color: #595757;
		font-size: 4vw;
		line-height: 1.3em;
		display: block;
		text-align: center;
		text-decoration: none;
		background-color: rgba(255,255,255,1.00);
}
nav .inner ul li a{
		border-top: 1px solid #999;
	}
nav .inner ul li:nth-child(2n+1) a{
		border-right: 1px solid #999;
	}
nav .inner ul li.mypage a,
nav .inner ul li.inquiry a{
		color: #fff;
		border-right: 1px solid #999;
		background-color: rgba(66,176,207,1.00);
		border-bottom: 1px solid #999;
	}
nav .inner ul li.btn_request a{
		color: #fff;
		background-color: rgba(240,131,0,1.00);
		border-bottom: 1px solid #999;
	}
nav .inner ul li a:hover {
		opacity: 1;
	}



.toggle_btn {
  display: block;
  position: fixed;
  top: 10px;
  right: 15px;
  width: 34px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  z-index: 99999;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 34px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 0px;
}
.toggle_btn span:nth-child(2) {
  top: 8px;
}
.toggle_btn span:nth-child(3) {
  top: 16px;
}
.toggle_btn span:nth-child(3)::after {
 content:"MENU";
 font-size:12px;
 color:#000000;
position: absolute;
	top:3px;
	left:0; 
	}
 
.open .toggle_btn span {
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
 color:#000000;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
 color:#000000;
}
.open .toggle_btn span:nth-child(3)::after {
 content:"CLOSE";
 transform: translateY(0) rotate(-45deg);
 font-size:12px;
 color:#000000;
	top:2px;
	left:12px !important;
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 7%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: .8;
  cursor: pointer;
}	
	
	
	/*--- スマホメニュー ---*/
	/*--- 	header #navigation_sp {
		margin: 0;
		padding: 0;
		position: absolute;
		width: 100%;
		height: auto;
		top: 13vw;
		left: 0;
		z-index: 8;
		display: none;
	}---*/
	header #navigation_pc2 {
		display: none;
	}


.menu-accordion {
  width: 100%;
  margin-top:10px;
  overflow: hidden;
  background: #ffffff;
border:2px solid #0091AC !important;
}
.menu-accordion .ac-content {
  margin: 0;
  padding: 0;
display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    }
.menu-accordion input {
  display: none;
}
.menu-accordion label {
  width: 150px;
  height: 40px;
  background: #fff;
  cursor: pointer;
  padding: 8px 0 10px 10px;
  border-bottom: 1px solid #0091AC;
  border-right: 1px solid #0091AC;
  color:#0091AC;
	text-align: left;

}
.menu-accordion label:hover {
  background: #0091AC;
  color:#ffffff;
}

.menu-accordion label span {
 float:right;
  color:#ffffff;
  padding-right:5px;
}

.menu-accordion label:checked + input {
  background: #0091AC;
  color:#ffffff;

}

.menu-accordion .ac-cont {
  width: auto;
  display: none;
  margin-left:140px;
  margin-top:-40px;
  text-decoration:none !important;

}
.menu-accordion input:checked + .ac-cont {
  width: 100%;
 padding:0 10px;
  height: 40px;
  display: block
}

.menu-accordion .ac-cont p{
text-align:left !important;
 background: #0091AC;
 padding:8px;
  border-bottom: 1px solid #fff;
  height: auto;

}

.menu-accordion .ac-cont p a{
  text-decoration:none !important;
  color:#ffffff;
  display: block;

}
	
.mmat40	{margin-top:-40px !important;}	
.mmat80	{margin-top:-80px !important;}	
.mmat120	{margin-top:-120px !important;}	
.mmat160	{margin-top:-160px !important;}	
.bobno	{border-bottom:1px solid #0091AC !important;}	
.bobno_last	{border-bottom:0px !important;}	
.botbl	{border-top:1px solid #0091AC !important;}	
	
.btn_request2 {
		width: 100%;
		background: #f39800 !important;
		padding:10px;
		color:#ffffff;
		font-size:120%;
  		text-decoration:none !important;
		font-weight:bold;
	}
.btn_request2 a{
		color:#ffffff;
  		text-decoration:none !important;
		
	}
	
.menu_close {
		width: 100%;
		background: #ffffff !important;
		padding:10px;
		height:45px;
		font-weight:bold;
  		text-decoration:none !important;
		
	}
					
.menu_close a {
  		text-decoration:none !important;
		
	}

}

#container {
	padding-top: 70px;
}



@media screen and (max-width: 768px) {
	header .visible_sp {
		display: block;
	}
header {
	height:65px !important;

}

	/*--- ヘッダー ---*/
	header .header_logo3 {
	width: 120px;
	max-width: 120px;
	float: left;
	margin-left: 0px;
	padding-top: 10px;
	padding-bottom: 0px;
	}

	header .header_img_03 {
		width: 30px;
		max-width: 30px;
		float:left;
		margin-top: 13px;
		margin-left: 0px;
	}

	/*--- ハンバーガーボタン ---*/
	/*--- 	.navToggle {
		display: block;
		position: absolute;
		right: 4.1vw;
		top: 2.5vw;
		width: 9.6vw;
		cursor: pointer;
		z-index: 10;
		text-align: left;
	}
	---*/
	
/*============
nav
=============*/

nav:not(.areaparts) {
  display: block;
  position: fixed;
  top: 0;
  right:0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 9999;
  opacity: 0;
  height: 300px !important;
  width: 100% !important;
  white-space: nowrap !important;
  min-width:320px !important;
    visibility: hidden;

}
.open nav {
  left:0;
  opacity: 1;
  width: 100% !important;
  visibility: visible;

}

nav .inner {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 65px;
	left: 0;
	z-index: 9999;
	width: 100% !important;


}
nav .inner ul {
		display: block;
		width: 100% !important;
}


nav .inner ul li,
nav .inner ul li .mypage,
nav .inner ul li .inquiry {
		float: left;
		display: block;
		width: 50% !important;
		margin: 0;
		padding: 0;
		text-align:center;
		 height: 40px;

}

nav .inner ul li .btn_request {
		width: 100% !important;
		text-align:center;
	}

	
	

nav .inner ul li:nth-child(1) ,
nav .inner ul li:nth-child(2) ,
nav .inner ul li:nth-child(3) ,
nav .inner ul li:nth-child(4) ,
nav .inner ul li:nth-child(5) ,
nav .inner ul li:nth-child(6) ,
nav .inner ul li:nth-child(7) ,
nav .inner ul li:nth-child(8){
  width: 50% !important;
  min-width:50%;
  max-width:50%;
}


nav ul li:nth-child(9) {
  width: 100% !important;
}
	
	
	
	
	
nav .inner ul li + li {
		border-left: none;
	}

nav .inner ul li a,
nav .inner ul li.mypage a,
nav .inner ul li.inquiry a,
nav .inner ul li.btn_request a {
		padding: 2.5vw 0px;
		color: #595757;
		font-size: 4vw;
		line-height: 1.3em;
		display: block;
		text-align: center;
		text-decoration: none;
		background-color: rgba(255,255,255,1.00);
}
nav .inner ul li a{
		border-top: 1px solid #999;
	}
nav .inner ul li:nth-child(2n+1) a{
		border-right: 1px solid #999;
	}
nav .inner ul li.mypage a,
nav .inner ul li.inquiry a{
		color: #fff;
		border-right: 1px solid #999;
		background-color: rgba(66,176,207,1.00);
		border-bottom: 1px solid #999;
	}
nav .inner ul li.btn_request a{
		color: #fff;
		background-color: rgba(240,131,0,1.00);
		border-bottom: 1px solid #999;
	}
nav .inner ul li a:hover {
		opacity: 1;
	}



.toggle_btn {
  display: block;
  position: fixed;
  top: 10px;
  right: 15px;
  width: 34px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  z-index: 99999;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 34px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 0px;
}
.toggle_btn span:nth-child(2) {
  top: 8px;
}
.toggle_btn span:nth-child(3) {
  top: 16px;
}
.toggle_btn span:nth-child(3)::after {
 content:"MENU";
 font-size:12px;
 color:#000000;
position: absolute;
	top:3px;
	left:0; 
	}
 
.open .toggle_btn span {
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
 color:#000000;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
 color:#000000;
}
.open .toggle_btn span:nth-child(3)::after {
 content:"CLOSE";
 transform: translateY(0) rotate(-45deg);
 font-size:12px;
 color:#000000;
	top:2px;
	left:12px !important;
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 7%;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: .8;
  cursor: pointer;
}	
	
	
	/*--- スマホメニュー ---*/
	/*--- 	header #navigation_sp {
		margin: 0;
		padding: 0;
		position: absolute;
		width: 100%;
		height: auto;
		top: 13vw;
		left: 0;
		z-index: 8;
		display: none;
	}---*/
	header #navigation_pc2 {
		display: none;
	}


.menu-accordion {
  width: 100%;
  margin-top:10px;
  overflow: hidden;
  background: #ffffff;
border:2px solid #0091AC !important;
}
.menu-accordion .ac-content {
  margin: 0;
  padding: 0;
display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    }
.menu-accordion input {
  display: none;
}
.menu-accordion label {
  width: 150px;
  height: 40px;
  background: #fff;
  cursor: pointer;
  padding: 8px 0 10px 10px;
  border-bottom: 1px solid #0091AC;
  border-right: 1px solid #0091AC;
  color:#0091AC;
	text-align: left;

}
.menu-accordion label:hover {
  background: #0091AC;
  color:#ffffff;
}

.menu-accordion label span {
 float:right;
  color:#ffffff;
  padding-right:5px;
}

.menu-accordion label:checked + input {
  background: #0091AC;
  color:#ffffff;

}

.menu-accordion .ac-cont {
  width: auto;
  display: none;
  margin-left:140px;
  margin-top:-40px;
  text-decoration:none !important;

}
.menu-accordion input:checked + .ac-cont {
  width: 100%;
 padding:0 10px;
  height: 40px;
  display: block
}

.menu-accordion .ac-cont p{
text-align:left !important;
 background: #0091AC;
 padding:8px;
  border-bottom: 1px solid #fff;
  height: auto;

}

.menu-accordion .ac-cont p a{
  text-decoration:none !important;
  color:#ffffff;
  display: block;

}
	
.mmat40	{margin-top:-40px !important;}	
.mmat80	{margin-top:-80px !important;}	
.mmat120	{margin-top:-120px !important;}	
.mmat160	{margin-top:-160px !important;}	
.bobno	{border-bottom:1px solid #0091AC !important;}	
.bobno_last	{border-bottom:0px !important;}	
.botbl	{border-top:1px solid #0091AC !important;}	
	
.btn_request2 {
		width: 100%;
		background: #f39800 !important;
		padding:10px;
		color:#ffffff;
		font-size:120%;
  		text-decoration:none !important;
		font-weight:bold;
	}
.btn_request2 a{
		color:#ffffff;
  		text-decoration:none !important;
		
	}
	
.menu_close {
		width: 100%;
		background: #ffffff !important;
		padding:10px;
		height:45px;
		font-weight:bold;
  		text-decoration:none !important;
		
	}
					
.menu_close a {
  		text-decoration:none !important;
		
	}
					
	/*
	header #navigation_sp ul {
		display: block;
		height: 100%;
	}
	header #navigation_sp ul li,
	header #navigation_sp ul li.mypage,
	header #navigation_sp ul li.inquiry {
		float: left;
		display: block;
		width: 50%;
		margin: 0;
		padding: 0;
	}
	header #navigation_sp ul li.btn_request {
		width: 100%;
	}
	header #navigation_sp ul li + li {
		border-left: none;
	}
	header #navigation_sp ul li a,
	header #navigation_sp ul li.mypage a,
	header #navigation_sp ul li.inquiry a,
	header #navigation_sp ul li.btn_request a{
		padding: 2.5vw 0px;
		color: #595757;
		font-size: 4vw;
		line-height: 1.3em;
		display: block;
		text-align: center;
		text-decoration: none;
		background-color: rgba(255,255,255,1.00);
	}
	header #navigation_sp ul li a{
		border-top: 1px solid #999;
	}
	header #navigation_sp ul li:nth-child(2n+1) a{
		border-right: 1px solid #999;
	}
	header #navigation_sp ul li.mypage a,
	header #navigation_sp ul li.inquiry a{
		color: #fff;
		border-right: 1px solid #999;
		background-color: rgba(66,176,207,1.00);
		border-bottom: 1px solid #999;
	}
	header #navigation_sp ul li.btn_request a{
		color: #fff;
		background-color: rgba(240,131,0,1.00);
		border-bottom: 1px solid #999;
	}
	header #navigation_sp ul li a:hover {
		opacity: 1;
	}
	body #container {
		padding-top: 13.2vw;
	}
	*/

}




/*--- フッター ---*/
#footer_link2 {
	background-color: #F6F6F6;
}
#footer_link2 .content {
	padding: 30px;
}
#footer_link2 .footer_link_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#footer_link2 .footer_link_box > p {
	width: 32%;
	margin-left: 2.66%;
}
#footer_link2 .footer_link_box > p:nth-child(3n+1) {
	margin-left: 0%;
}
#footer_link2 .footer_link_box > p:nth-child(n+4) {
	margin-top: 30px;
}
#footer_link2 .footer_link_box > p:nth-child(3n+2) {
	width: 30%;
}
#footer_link2 .footer_link_box > p:nth-child(3n) {
	width: 30%;
}
#footer_link2 .footer_link_box p a {
	font-size: 14px;
	line-height: 24px;
	padding-left: 30px;
	display: block;
	color: #000;
	text-decoration: underline;
	/*background-image: url(../images_new/common/circle_footer.png);
	background-size: 10px auto;
	background-repeat: no-repeat;
	background-position: left 2px;*/
}

#footer_link2 .footer_link_box p span {
	color:#434343 !important;
	font-weight:bold !important;
}


#footer_txt2 .footer_txt_box {
}
#footer_txt2 .footer_txt_box .txt_box {
	width: 100%;
}
#footer_txt2 .footer_txt_box .txt_box p {
	color: #7d7d7d;
	text-align: center;
}
#footer_txt2 .footer_txt_box .txt_box .txt01 {
	font-size: 21px;
	font-weight: bold;
}
#footer_txt2 .footer_txt_box .txt_box .txt02 {
	font-size: 14px;
	margin-top: 32px;
}
#footer_txt2 .footer_txt_box .txt_box .txt03 {
	font-size: 14px;
	font-weight: bold;
}
#footer_txt2 .footer_txt_box .txt_box .txt04 {
	font-size: 12px;
	margin-top: 18px;
}
#footer_txt2 .footer_sub_link {
	text-align: center;
	margin-top: 30px;
	color: #7d7d7d;
	font-size: 16px;
}
#footer_txt2 .footer_sub_link a {
	font-size: 14px;
	color: #7d7d7d;
	text-decoration: underline;
}

@media screen and (max-width: 420px) {
	#sp_btn_req .visible_w420 {
		display: block;
	}

	/*--- フッター ---*/
	#footer_link2 .content {
		padding: 20px;
	}
	#footer_link2 .footer_link_box {
		display: block;
	}
	#footer_link2 .footer_link_box > p,
	#footer_link2 .footer_link_box > p:nth-child(3n+2),
	#footer_link2 .footer_link_box > p:nth-child(3n) {
		width: 100%;
	}
	#footer_link2 .footer_link_box > p,
	#footer_link2 .footer_link_box > p:nth-child(3n+1) {
		margin-left: 0%;
	}
	#footer_link2 .footer_link_box > p:nth-child(n+2) {
		margin-top: 2vw;
	}
	#footer_link2 .footer_link_box p a {
		display: inline;
		background-position: left 6px;
	}
	
	#footer_link2 .footer_link_box p span {
		padding-top:10px !important;
	}

	#footer_link2 .footer_link_box_02 {
		margin-top: 3vw;
	}
	#footer_link2 .footer_link_box_02 p {
		color: #000;
	}
	#footer_link2 .footer_link_box_02 p + p {
		margin-top: 1vw;	
	}
	#footer_txt2 .content {
		padding-top: 3vw;
		padding-bottom: 12vw;
	}
	#footer_txt2 .footer_txt_box {
		justify-content: flex-start;
		padding-bottom: 2vw;
	}
	#footer_txt2 .footer_txt_box .txt_box {
		width: 100%;
		margin-bottom: 8vw;
		order: 1;
	}
	#footer_txt2 .footer_txt_box .txt_box .txt01 {
		font-size: 5vw;
	}
	#footer_txt2 .footer_txt_box .txt_box .txt02 {
		font-size: 3.5vw;
		margin-top: 6vw;
	}
	#footer_txt2 .footer_txt_box .txt_box .txt03 {
		font-size: 3.5vw;
	}
	#footer_txt2 .footer_txt_box .txt_box .txt04 {
		font-size: 3vw;
		margin-top: 4vw;
	}


}

p.icon_t{display:flex;text-align:left;font-weight:100 !important;}
p.icon_y{display:flex;text-align:left;font-weight:100 !important;}

p.icon_t span{margin-left:-23px;margin-right:23px;}
p.icon_y span{margin-left:-23px;margin-right:23px;}



p.icon_t::before {
  content: url("../images/site/icon_twitter.png");
  margin-left:3px;
  margin-top:3px;
}

p.icon_y::before {
  content: url("../images/site/icon_youtube.png");
  margin-left:3px;
  margin-top:3px;
}