@charset "UTF-8";
/*font*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/*---------------------------------------------------------
	COMMON
---------------------------------------------------------*/
*{
	font-size: min(1.25vw, 16px);
}
:root {
	--base-color-white: #fff;
	--base-color-black: #333;	
	--base-color-green: #43a952;
	--base-color-yellow: #efea3a;
	--base-color-gray: #f2f2f2;

	--base-4: min(0.3125vw, 4px);
	--base-5: min(0.390625vw, 5px);
	--base-10: min(0.78125vw, 10px);
	--base-12: min(0.9375vw, 12px);
	--base-13: min(1.015625vw, 13px);	
	--base-14: min(1.09375vw, 14px);
	--base-15: min(1.171875vw, 15px);
	--base-16: min(1.25vw, 16px);
	--base-17: min(1.328125vw, 17px);
	--base-18: min(1.40625vw, 18px);
	--base-20: min(1.5625vw, 20px);
	--base-22: min(1.71875vw, 22px);	
	--base-24: min(1.875vw, 24px);
	--base-25: min(1.953125vw, 25px);
	--base-28: min(2.1875vw, 28px);
	--base-30: min(2.34375vw, 30px);
	--base-35: min(2.734375vw, 35px);
	--base-40: min(3.125vw, 40px);
	--base-45: min(3.515625vw, 45px);
	--base-50: min(3.90625vw, 50px);
	--base-55: min(4.296875vw, 55px);
	--base-60: min(4.6875vw, 60px);
	--base-65: min(5.078125vw, 65px);
	--base-70: min(5.46875vw, 70px);
	--base-75: min(5.859375vw, 75px);
	--base-80: min(6.25vw, 80px);
	--base-90: min(7.03125vw, 90px);
	--base-100: min(7.8125vw, 100px);
	--base-110: min(8.59375vw, 110px);
	--base-120: min(9.375vw, 120px);
	--base-150: min(11.71875vw, 150px);
	--base-200: min(15.625vw, 200px);	
	--base-560: min(43.75vw, 560px);
}
@media screen and (max-width: 768px){
	*{
		font-size: clamp(13px, 1.40625vw, 18px);
	}
	:root {	
		--base-4: 4px;
		--base-5: 5px;
		--base-10: 10px;
		--base-12: clamp(11px, 0.9375vw, 12px);
		--base-13: clamp(12px, 1.015625vw, 13px);	
		--base-14: clamp(12px, 1.09375vw, 14px);
		--base-15: clamp(12px, 1.171875vw, 15px);
		--base-16: clamp(13px, 1.25vw, 16px);
		--base-17: clamp(13px, 1.328125vw, 17px);
		--base-18: clamp(14px, 1.40625vw, 18px);
		--base-20: clamp(14px, 1.5625vw, 20px);
		--base-22: clamp(16px, 1.71875vw, 22px);
		--base-24: clamp(18px, 1.875vw, 24px);
		--base-25: clamp(18px, 1.953125vw, 25px);
		--base-28: clamp(20px, 2.1875vw, 28px);
		--base-30: clamp(26px, 2.34375vw, 30px);
		--base-35: clamp(28px, 2.734375vw, 35px);
		--base-40: clamp(30px, 3.125vw, 40px);
		--base-45: clamp(32px, 3.515625vw, 45px);
		--base-50: clamp(36px, 3.90625vw, 50px);
		--base-55: clamp(38px, 4.296875vw, 55px);
		--base-60: clamp(40px, 4.6875vw, 60px);
		--base-65: clamp(42px, 5.078125vw, 65px);
		--base-70: clamp(44px, 5.46875vw, 70px);
		--base-75: clamp(46px, 5.859375vw, 75px);
		--base-80: clamp(48px, 6.25vw, 80px);
		--base-90: clamp(52px, 7.03125vw, 90px);
		--base-100: clamp(56px, 7.8125vw, 100px);
		--base-110: clamp(60px, 8.59375vw, 110px);
		--base-120: clamp(64px, 9.375vw, 120px);
		--base-150: clamp(70px, 11.71875vw, 150px);
		--base-200: clamp(90px, 15.625vw, 200px);	
		--base-560: clamp(200px, 43.75vw, 560px);
	}
	.row>* {
		padding-right: 0.1vw;
		padding-left: 0.1vw;
	}
	
}
.row {
    margin-top: 0;
    margin-right: 0;
    margin-left: 0;
}

.font_poppins{
	font-family: "Poppins", sans-serif;
}
.center{
	text-align: center;
}
.right{
	text-align: right;
}
.white{
	color: var(--base-color-white);
}
.black{
	color: var(--base-color-black);
}
.green{
	color: var(--base-color-green);
}
.yellow{
	color: var(--base-color-yellow);
}
.link_blank{
	padding-right:2vw;
	background: url(../img/common/icon-blank.svg) no-repeat right center;
	background-size: 1vw 1vw;
}
.link_blank_g{
	padding-right:2vw;
	background: url(../img/common/icon-blank-g.svg) no-repeat right center;
	background-size: 1vw 1vw;
}
.link_blank_b{
	padding-right:2vw;
	background: url(../img/common/icon-blank-b.svg) no-repeat right center;
	background-size: 1vw 1vw;
}
.link_pdf{
	padding-right:2vw;
	background: url(../img/common/icon-pdf.svg) no-repeat right center;
	background-size: 1vw 1vw;
}
.btn_more_g,
.btn_more_w{
	margin-top: var(--base-35);
}
.btn_more_g a,
.btn_more_w a{
	display: inline-block;
	font-size: var(--base-14);
	padding: var(--base-5) var(--base-13) min(0.46875vw, 6px) var(--base-22);
	letter-spacing: 0.1vw;
	border-radius: 1vw;
}
.btn_more_g a::after,
.btn_more_w a::after{
	padding-left: var(--base-13);
	display: inline-block;
	width: min(0.46875vw, 6px);
	height: var(--base-10);
}
.btn_more_g a{
	background: var(--base-color-green);
	color: var(--base-color-white);
}
.btn_more_g a::after{
	content: "";
	background: url('../img/common/icon-arw-w.svg') no-repeat center right;
	background-size: contain;
}
.btn_more_w a{
	background: var(--base-color-white);
	color: var(--base-color-green);
}
.btn_more_w a::after{
	content: "";
	background: url('../img/common/icon-arw-g.svg') no-repeat center right;
	background-size: contain;
}
@media screen and (min-width: 1500px){
	.link_blank,
	.link_blank_g,
	.link_blank_b,
	.link_pdf{		
		padding-right:25px;
        background-size: 16px 16px;
	}
}
@media screen and (max-width: 768px){
	.link_blank,
	.link_blank_g,
	.link_blank_b,
	.link_pdf{		
		padding-right: 3.5vw;
        background-size: 1.5vw 1.5vw;
	}
}
@media screen and (max-width: 576px) {
	.btn_more_g a,
	.btn_more_w a{
		padding: var(--base-5) var(--base-13) var(--base-10) var(--base-22);
		border-radius: 5vw;
	}
	.btn_more_g a::after,
	.btn_more_w a::after{
		height: 8px;
	}
	.link_blank,
	.link_blank_g,
	.link_blank_b,
	.link_pdf{		
		padding-right: 3.5vw;
        background-size: 2.6vw 2.6vw;
	}	
}

/*-------------------------------------------------------*/
/* HEADER
---------------------------------------------------------*/
header{}
.head_inner{
	position: relative;
	height: var(--base-100);
	width: 100%;
	background: rgba(255, 255, 255, .9);
	position: fixed;
	z-index: 100;
}
.site_logo{
	position: absolute;
	top: min(2.109375vw, 27px);
	left: min(2.890625vw, 37px);
	z-index: 3;
}
.site_logo a{
	display: block;
}	
.site_logo img{
	width: min(4.21875vw, 54px);
}
@media screen and (max-width: 768px){
	.head_inner{
		height: 15vw;
	}
	.site_logo{
		top: var(--base-20);
		left: var(--base-25);
	}
	.site_logo img{
		width: 11vw;
	}
}
/* PC MENU */
#pc_menu ul{
	display: flex;
	justify-content: flex-end;
}
#pc_menu ul li{
	height: var(--base-100);
}
#pc_menu ul li.pc_nav a,
#pc_menu ul li.btn_comp a{
	position: relative;
	display: block;
	padding: 0 min(1.79687vw, 23px);
	line-height: var(--base-100);
	font-size: var(--base-17);
	font-weight: 600;
}
#pc_menu ul li.pc_nav a:hover,
#pc_menu ul li.btn_comp a:hover{
	color: var(--base-color-green);
}
#pc_menu ul li.pc_nav a::after{}
#pc_menu ul li.pc_nav a:hover::after,
#pc_menu ul li.pc_nav a:focus::after,
#pc_menu ul li.pc_nav a.active::after{
	position: absolute;
	left: 0;
	content: '';
	width: 100%;
	height: var(--base-4);
	background: var(--base-color-green);
	bottom: 0;
	visibility: visible;
}
.btn_search{
	padding: min(2.890625vw, 37px) var(--base-45) 0 var(--base-20);
	cursor: pointer;
}
.btn_search img{
	width: min(1.796874vw, 23px);
}
.btn_global, .btn_mail{
	width: var(--base-100);
	text-align: center;
}
.btn_global a, .btn_mail a{
	color: var(--base-color-white);
	font-size: var(--base-12);
	display: block;
	height: 100%;
}
.btn_global{
	background:#4d4c4d;
}
.btn_global a{
	padding-top: min(2.109375vw, 27px);
}
.btn_global img{
	width: var(--base-25);
	margin-bottom: var(--base-13);
}
.btn_mail{
	background: var(--base-color-green);
}
.btn_mail a{
	padding-top: var(--base-30);
}
.btn_mail img{
	width: min(2.109375vw, 27px);
	margin-bottom: var(--base-15);
}
.btn_comp{
	width: var(--base-100);
	text-align: center;
}
.btn_comp a{
	display: block;
	height: 100%;
	padding-top: var(--base-35);
}
.btn_comp img{
	width: min(3.28125vw, 42px);
}
@media screen and (max-width: 768px) {
	.sp_nav_btn{
		margin-top: max(1.5625vw, 12px);
		display: flex;
		justify-content: space-between;
	}
	.btn_global, .btn_mail{
		width: min(38.802vw, 298px);
		height: clamp(87px, 15.625vw, 120px);
		font-size: clamp(18px, 2.994791vw, 23px);
	}
	.btn_global a{
		padding-top: clamp(11px, 2.109375vw, 27px);
	}
	.btn_global img{
		width: clamp(32px, 6.5104vw, 50px);
		margin-bottom: min(1.04166vw, 8px);
	}
	.btn_mail a{
		padding-top: clamp(13px, 2.34375vw, 30px);
	}
	.btn_mail img{
		width: clamp(35px, 7.03125vw, 54px);
		margin-bottom: var(--base-17);
	}
}
@media screen and (max-width: 576px) {
	.sp_nav_btn {
		display: block;
	}
	.sp_nav_btn br{
		display: none;
	}
	.btn_global, .btn_mail{
		height: auto;
		width: 100%;
		text-align: left;
	}
	.btn_global{
		margin-bottom: var(--base-10);
	}
	.btn_global a,
	.btn_mail a {	
		font-size: var(--base-20);
	}
	.btn_global a {
		padding: 10px;
	}
	.btn_mail a {
		padding:10px;
	}
	.btn_global img,
	.btn_mail img {
		margin: 0;
		padding-right: var(--base-10);
	}
}
/* SP MENU */
#sp_menu {
	display: none;
	top: 0;
	width: 100%;
	padding: 0;
	line-height: 1;
	z-index: 999;
	position: fixed;
}
#sp_menu .inner {
	position: relative;
}
/* Toggle Button */
#nav-toggle {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 15vw;
	height: 15vw; 
	cursor: pointer;
	z-index: 999;
	padding: 4vw 4vw 0;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	background: rgba(255, 255, 255, 0.5);
}
#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: min(0.52083vw, 4px);
	width: 100%;
	background: var(--base-color-green);
	left: 0;
	-webkit-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
	top: 0;
}
#nav-toggle span:nth-child(2) {
	top: 3vw;
	width: 5vw;
}
#nav-toggle span:nth-child(3) {
	top: 6vw;
}
.open #nav-toggle span:nth-child(1) {
	top: 3vw;
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 3vw;
	-webkit-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
.open #nav-toggle{
	background: rgba(255, 255, 255, 1);
	-webkit-transform: translateX(-85vw);
	transform: translateX(-85vw);
}

/* #global-nav */
#global-nav {
	position: absolute;
	z-index: 1000;
	left: 100vw;
	color: #000;
	top: 0;
	width: 85vw;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	overflow-y: scroll;
	-webkit-overflow-scrolling:touch;
	line-height: 1.6;
	height:100vh;
	background: rgba(255,255,255,0.9);
	padding: 17vw 3vw 0;
}
.open #global-nav {
	-webkit-transform: translateX(-85vw);
	transform: translateX(-85vw);
}
.global-nav-overlay {
	top: 0;
	left: 100vw;
	position: absolute;
	width: 100vw;
	height: 100vh;
	background: rgb(0, 0, 0, .0);
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	z-index: 1;
}
.open .global-nav-overlay {
	-webkit-transform: translateX(-100vw);
	transform: translateX(-100vw);
	width: 15vw;
	background: rgb(0, 0, 0, .4);
}
/* nav */
#nav-ul {
	font-size: var(--base-24);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
#nav-ul li {
	border-bottom: 1px solid #aaa;
	display: block;
}
#nav-ul li.sp_nav a {
	padding: max(1.5625vw, 12px) max(1.30208vw, 10px);
	/*background: url(../img/common/icon_arw_w2@2x.svg)	no-repeat center right 20px;*/
	/*background-size:20px 20px;*/
	/*color: #666;*/
	display: block;
}
#nav-ul li a:hover {
	color: var(--base-color-green);
}
@media screen and (max-width: 768px){
	#pc_menu{
		display: none;
	}
	#sp_menu{
		display: block;
	}
}
/* search */
.pc_search_wrap{
	position: absolute;
	top: var(--base-100);
	height: var(--base-80);
	width: 100%;
	background: rgba(255, 255, 255, .9);
	display:none;
}
.pc_search{
	max-width: 1280px;
	margin: 0 auto;
}
.sp_search{
	padding:0 0 var(--base-20);
}
.search_container{
	position: relative;
	display: block;
	margin: var(--base-15) auto 0;
	box-sizing: border-box;
	border: min(0.15625vw, 2px) solid #999;
	background: var(--base-color-white);
	padding: min(0.234375vw, 3px) var(--base-10);
	border-radius: min(0.234375vw, 3px);
	height: var(--base-40);
	width: min(62.5vw, 800px);
	overflow: hidden;
}
.search_container input[type="text"]{
	border: none;
	font-size: min(1.25vw, 16px);
}
.search_container input[type="text"]:focus {
	outline: 0;
}
.search_container input[type="submit"]{
	cursor: pointer;
	border: none;
	background: url(../img/common/icon-search.svg) no-repeat center min(0.625vw, 8px)	#999;
	background-size: var(--base-20) var(--base-20);
	color: var(--base-color-white);
	position: absolute;
	width: min(3.4375vw, 44px);
	height: min(3.4375vw, 44px);
	right:0;
	top: 0;
	outline : none;
}
@media screen and (max-width: 768px) {
	.search_container{
		padding: min(1.302vw, 10px);
		width: 100%;
		height: clamp(42px, 8.3333vw, 64px);
	}
	.search_container input[type="text"]{
		font-size: clamp(18px, 2.994791vw, 23px);
	}
	.search_container input[type="submit"]{
		background: url(../img/common/icon-search.svg) no-repeat center center #999;
		background-size: min(4.1666vw, 32px) min(4.1666vw, 32px);
		width: clamp(42px, 8.3333vw, 64px);
		height: clamp(42px, 8.3333vw, 64px);
	}
}
/*-------------------------------------------------------*/
/* BREADCRUMB
---------------------------------------------------------*/
.breadcrumb_wrap{
	margin: var(--base-20) var(--base-40);
}
.breadcrumb_wrap ul{
	list-style: none;
}
.breadcrumb_wrap li{
	display: inline;
	font-size: var(--base-14);
}
.breadcrumb_wrap li a{
	color: inherit;
	text-decoration: none;
}
.breadcrumb_wrap li + li:before{
	content: ">";
	margin:.5em;
}

/*-------------------------------------------------------*/
/* MAIN
---------------------------------------------------------*/
section{
	position: relative;
}
section#page{}
main section{
	overflow: hidden;
}
main section.visible{
	overflow: visible;
}
.section_inner{
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 var(--base-40);
	position: relative;
}
.section_ttl h1{
	font-size: var(--base-80);
	color:#34a652;
	font-weight: 700;
	font-style: normal;
	letter-spacing:0.4vw;
	text-transform: uppercase;
}
.section_ttl h2{
	font-size: var(--base-18);
	font-weight: 500;
	letter-spacing:0.1vw;
}
.section_content{
	padding: var(--base-55) 0;
}
.section_content h3{
	font-size: var(--base-35);
	font-weight: 700;
	/*font-feature-settings: "palt";*/
}
.section_content p{
	line-height: var(--base-40);
}
.section_content .section_sub_img{
	position: absolute;
	top: 0;
	right: calc(var(--base-50) * -1);
	z-index: -1;
}
.section_content .section_sub_img img{
	width: min(51.796875vw, 663px);
}
.bg_rhombus{
	clip-path: polygon(0 0, 100% var(--base-110), 100% 100%, 0 calc(100% - var(--base-110)));
	padding: min(6.875vw, 88px) 0 var(--base-50);
}
.bg_trape{
	clip-path: polygon(0 0, 100% var(--base-110), 100% 100%, 0 100%);
	padding: min(14.84375vw, 190px) 0 min(7.421875vw, 95px);
}
.bg_green{
	background: var(--base-color-green);
}
.bg_green .section_ttl h1{
	color: var(--base-color-white);
}
.bg_gray{
	background: var(--base-color-gray);
}
.overflow_clip{
	overflow: clip;
}
.anker_wrap{
	margin-top: calc( var(--base-110) * -1);
	padding-top: var(--base-110);
}
@media screen and (max-width: 768px) {
	main section.visible{
		overflow: hidden;
	}
	.section_content h3{
		padding:0;
		margin-bottom: var(--base-25);
	}
	.anker_wrap{
		margin-top: -15.5vw;
		padding-top: 15.5vw;
	}
}
@media screen and (max-width: 576px) {
	.section_ttl h1 {
		font-size: var(--base-50);
	}
	.section_content p{
		padding-left: 0;
		padding-right: 0;
	}
}
/*---------------------------------------------------------
	PAGE
---------------------------------------------------------*/
.page_head{
	height: clamp(200px, 31.25vw, 400px);
	background: #eee no-repeat center center;
	background-size: cover;
}
.page_head_ttl{
	position: absolute;
	top: var(--base-200);
	left: var(--base-40);
}
.page_head_ttl h1{
	font-size: var(--base-80);
	font-weight: 500;
	letter-spacing: 0.4vw;
	text-transform: uppercase;
	/*color: var(--base-color-white);*/
}
.page_head_ttl h2{
	font-size: var(--base-18);
	font-weight: 500;
	letter-spacing: 0.2vw;
}
#page_menu{
	margin-top: var(--base-25);
}
#page_menu ul{
	display: flex;
	justify-content: center;
}
#page_menu li{
	width: min(13.28125vw, 170px);
	font-size: var(--base-15);
	height: min(3.75vw, 48px);
	line-height: min(3.75vw, 48px);
	border-right: 1px solid #ccc;
	text-align: center;
}
#page_menu li:first-of-type{
	border-left: 1px solid #ccc;
}	
.page .section_ttl h1{
	font-size: min(5.3125vw, 68px);
}
#foot_contact .section_content{
	padding: var(--base-120) 0 min(8.203125vw, 105px);
}
.btn_contact{
	color: var(--base-color-white);
	background:	var(--base-color-black);
	text-align: center;
	display: inline-block;
	font-size: min(2.5vw, 32px);
	font-weight: 600;
	letter-spacing: 0.3vw;
	padding: var(--base-30) var(--base-100);
	margin-bottom: min(2.65625vw, 34px);
	border-radius: var(--base-10);
	text-transform: uppercase;
}
.block_wrap h2,
.block_wrap h3{
	color: var(--base-color-green);
	font-size: var(--base-25);
    font-weight: 700;
    margin-bottom: var(--base-20);
}
@media screen and (max-width: 768px) {
	#page_menu li{
		width: 25vw;
	}
}
@media screen and (max-width: 576px) {
	#page_menu{
		display: none;
	}
	.btn_contact{
		font-size: var(--base-25);
	}
}
/*---------------------------------------------------------
	NEWS
---------------------------------------------------------*/
.news_wrap {
  display: flex;
  flex-wrap: wrap;
  margin:0;
}
.news_content {
  width: 100%;
  margin: var(--base-50) 0 0;
  font-size: var(--base-13);
  font-weight: 500;
}
.news_content ul{
	margin-top: var(--base-30);
}
.news_content li{
  margin-bottom: min(2.578125vw, 33px);
}
.news_content li span,
.section_content .news_cat a{
  display: inline-block;
  vertical-align: middle;
  font-size: var(--base-16);
}
.news_content li span.news_date{
  color: #999;
  width: min(6.640625vw, 85px);
  line-height: var(--base-22);
}
.news_content li span.news_cate,
.section_content .news_cat a{
  font-size: var(--base-12);
  color:#7f8080;
  background: #f2f2f2;
  width: var(--base-120);
  text-align: center;
  line-height: min(2.03125vw, 26px);
}
.news_content li span.news_ttl{
	width: calc( 100% - min(6.640625vw, 85px) - var(--base-120) - var(--base-50));
	line-height: var(--base-22);
}
.news_content li.ir_lib span.news_ttl{
	width: calc( 100% - min(6.640625vw, 85px) - var(--base-50));
}
.news_content li span span{
  color:#999;
  font-size: 0.8em;
  padding-left: var(--base-5); 
}
@media screen and (max-width: 768px) {
	.news_content li{
		margin-bottom: var(--base-35);
	}
	.news_content li span.news_date{
	  width: 70px;
	}
	.news_content li span.news_cate,
	.section_content .news_cat a{
		width: 120px;
		line-height: 15px;
	}
	.news_content li span.news_ttl{
		width: calc( 100% - 70px - 120px - var(--base-50));
	}
}
@media screen and (max-width: 576px) {
	.news_content li span.news_ttl{
		margin-top: var(--base-10);
		width:100%;
	}
	.news_content li.ir_lib span.news_ttl{
		margin-top: 0;
	}
}
/*-------------------------------------------------------*/
/* FOOTER
---------------------------------------------------------*/
.foot_nav_wrap{
	background: #4d4d4d;
	padding: var(--base-65) 0 var(--base-30);
}
.foot_nav_wrap a{
	color: var(--base-color-white);
}
.foot_inner{
	position: relative;
	max-width:1280px;
	margin:0 auto;
	padding: 0 var(--base-40);
}
.foot_nav_ttl{
	font-size: var(--base-15);
	font-weight: 600;
	margin-bottom: 1.3vw;
	letter-spacing: 0.15vw;
}
.col-md .foot_nav_ttl:first-child{
	margin-top: var(--base-15);
}
.foot_nav{
	font-size: var(--base-13);
}
.foot_nav li{
	margin-bottom: 0.9vw;
	letter-spacing: 0.15vw;
}
.foot_copy_wrap{
	background: var(--base-color-black);
	color: var(--base-color-white);
	padding: 1vw 0;
	font-size: min(0.859375vw, 11px);
}
ul.foot_subnav{
	text-align: right;
}
ul.foot_subnav li{
	display: inline-block;
	padding: 0 1vw;
	border-right: 0.1vw solid var(--base-color-white);
}
ul.foot_subnav li:first-of-type{
	border-left: 0.1vw solid var(--base-color-white);
}
ul.foot_subnav a{
	color: var(--base-color-white);
}
.foot_sns_wrap{
	position: absolute;
	left: var(--base-40);
	bottom: 0;
}
.foot_sns{
	display: inline-block;
	width: clamp(16px, 3.125vw, 40px);
	margin-right: clamp(8px, 1.5625vw, 20px);
}
.foot_sns img{
	width:100%;
}
.iso{
	margin-top: var(--base-20);
	text-align: right;
}
.iso img{
	width:100px;
	height: auto;
}
@media screen and (max-width: 768px) {
	.foot_nav_ttl{
		margin-bottom: clamp(18px, 2.994791vw, 23px);
	}
	.col-md .foot_nav_ttl:first-child{
		margin-top: clamp(20px, 3.90625vw, 30px);
	}
	.foot_nav{
	}
	.foot_nav li{
		margin-bottom: clamp(15px, 2.604166vw, 20px);
		letter-spacing:0.15vw;
	}
	.foot_sns_wrap{
		margin-top: clamp(15px, 2.604166vw, 20px);
		left: var(--base-40);
		bottom: 0;
	}
	.foot_sns{
		width: 40px;
	}
	.foot_copy_wrap{
		font-size: var(--base-12);
	}
}
@media screen and (max-width: 576px) {
	ul.foot_subnav{
		text-align: center;
	}
	ul.foot_subnav li{
		padding: 0 1.5vw;
	}
	.foot_copy_wrap{
		padding: 2vw 0;
	}
	.copyright{
		margin-top: var(--base-15);
		text-align: center;
	}
	.iso{
		bottom: var(--base-80);
	}
}

a.pagetop{
	position:fixed;
	right:20px;
	bottom:20px;
	display:block;
	width:70px;
	height:70px;
	background: url(../img/common/btn_top@2x.svg) no-repeat center center;
	background-size:70px 70px;
	text-indent:-9999px;
	z-index:500;
	transition: unset;
}
/*-------------------------------------------------------*/
/* ANIMATION
---------------------------------------------------------*/
.fadeInDown {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(40px); }
	100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
	0% { opacity: 0; -webkit-transform: translateY(40px); -ms-transform: translateY(40px); transform: translateY(40px); }
	100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}
/*-------------------------------------------------------*/
/* grecaptcha
---------------------------------------------------------*/
.grecaptcha-badge{
	bottom: 200px !important;
	z-index: 2;
}
@media screen and (max-width: 576px) {
	.grecaptcha-badge{
		bottom: 160px !important;
	}
}

/* MEDIA SCREEN 768
---------------------------------------------------------*/
@media screen and (max-width: 768px) {
	/*-------------------------------------------------------*/
	/*HEADER
	---------------------------------------------------------*/
	header{
	}
	/*-------------------------------------------------------*/
	/* MAIN
	---------------------------------------------------------*/
}
/* MEDIA SCREEN 640
---------------------------------------------------------*/
@media screen and (max-width: 640px){
}
/* MEDIA SCREEN 480
---------------------------------------------------------*/
@media screen and (max-width: 480px){

}