@charset "utf-8";
/* ===================================================================
CSS
 file name  :  common.css
=================================================================== */
/* web font */
body, button, input, select, textarea {
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',YuGothic,'Yu Gothic','メイリオ',Meiryo,sans-serif;
	font-weight: 400;
	line-height: 2;
	color: #333333;
}
.font_ko{
	font-family: 'Kaisei Opti', serif;
}
.font_pari{
	font-family: 'Parisienne', cursive;
}
html{
    font-size: 62.5%;/* 10px*/
}
body{
    font-size:1.6rem;
	position: relative;
}
@media screen and (max-width: 768px) {
	body{
		font-size:1.2rem;
	}
}
img{
	max-width: 100%;
	height: auto;
	width: auto;
}
a{
	color: #DB963E;
}
a:hover{
	color: #DB963E;
	text-decoration: underline;
}
/* ボタン共通 */
.btn_wrap{
	align-items: center;
	display: flex;
	justify-content: center;
}
.btn_wrap::before,
.btn_wrap::after{
	content: "";
	height: 2px;
	width: 20px;
	background-color: #FAE34C;
}
.btn_wrap:hover::before,
.btn_wrap:hover::after{
	background-color: #FFFF00;
}
a.btn,
button.btn{
	position: relative;
	align-items: center;
	display: flex;
	justify-content: center;
	padding: 0.8em 0;
	border: none;
	background: #FAE34C;
	text-align: center;
	text-decoration: none;
	color: #333;
	font-family: 'Kaisei Opti', serif;
	font-size: 2.2rem;
	transition: all .3s;
}
a.btn:hover,
button.btn:hover{
	background: #FFFF00;
}
a.btn::before,
a.btn::after,
button.btn::before,
button.btn::after{
	content: "";
	height: 2px;
	width: 20px;
	background-color: #FFF;
}
a.btn > div,
button.btn > div{
	padding: 0 4em 0 3em;
	line-height: 1.4;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
a.btn > div::before,
a.btn > div::after,
button.btn > div::before,
button.btn > div::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
a.btn > div::before,
button.btn > div::before{
	right: 2.5em;
	width: 15px;
	height: 1px;
	background: #333;
}
a.btn > div::after,
button.btn > div::after{
	right: 2.5em;
	width: 7px;
	height: 7px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
a.btn.back > div{
	padding: 0 3em 0 4em;
}
a.btn.back > div::before{
	left: -4em;
}
a.btn.back > div::after{
	left: calc(-4em - 7px);
	width: 7px;
	height: 7px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
@media screen and (max-width: 768px) {
	.btn_wrap::before,
	.btn_wrap::after{
		width: 10px;
	}
	a.btn,
	button.btn{
		font-size: 1.6rem;
	}
	a.btn::before,
	a.btn::after,
	button.btn::before,
	button.btn::after{
		width: 10px;
	}
	a.btn > div,
	button.btn > div{
		padding: 0 3.5em 0 2.5em;
	}
	a.btn > div::before,
	button.btn > div::before{
		width: 10px;
	}
	a.btn > div::after,
	button.btn > div::after{
		width: 5px;
		height: 5px;
	}
	a.btn.back > div::after{
		left: calc(-4em - 4px);
	}
}
.bg_gray{
	background-color: #F5F5F5;
}
.bg_orange{
	background-color: #F4EBD0;
}
.bg_beige{
	background-color: #EEECE9;
}
@media print, screen and (min-width: 769px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
	.pc_none{
		display:none;
	}
}
@media screen and (max-width: 768px) {
	.sp_none{
		display:none;
	}
	.anchor{
		display: block;
		padding-top: 50px;
		margin-top: -50px;
		position: relative;
		z-index: -10;
	}
}
/* =====================================
ヘッダー
======================================== */
@media print, screen and (min-width: 769px) {
	.header{
		/*top: -80px;
		margin: 80px auto 0;*/
		position: absolute;
		width: 100%;
		height:140px;
		z-index: 10000;
	}
	/*---固定化されたときのCSS
	.header.fixed{
		position: fixed;
		margin: 0px auto 0;
		top: 0;
        background-color: #FFF;
		-webkit-transition: top 0.65s ease-in;
		-moz-transition: top 0.65s ease-in;
		transition: top 0.65s ease-in;
	}
	---*/
	.header_wrap{
		width: 100%;
		height: 140px;
		margin: 0 auto;
		padding: 0;
	}
	.header_wrap .head_upper{
        /* task: ヘッダー割れ start */
        display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 3rem;
        /* end */

		width: 100%;
		height: 80px;
		/* margin: 0 auto;
		position: relative; */
	}
	.header_wrap .head_upper .h_logo{
		/* position: absolute;
		top: 20px;
		left: 50px; */
        /* task: ヘッダー割れ start */
        display: flex;
		align-items: center;
		gap: 2rem;
        /* end */
	}
	.header_wrap .head_upper .h_logo a{
		display: block;
		width: 191px;
		height: 40px;
		background: url("../images/common/logo.png") no-repeat;
		background-size: contain;
		text-indent: -9999px;
	}
	.header_wrap .head_upper .h_logo_yamada{
		/* position: absolute;
		top: 25px;
		left: 270px; */
		width: 210px;
		height: 30px;
	}
	.header_wrap .head_upper .h_tel{
		/* position: absolute;
		top: 17px;
		right: 280px; */
		width: 300px;
		height: 46px;
	}
	.header_wrap .head_upper .h_line{
		/* position: absolute;
		top: 17px;
		right: 50px; */
		width: 200px;
		height: 46px;
	}
    .header_wrap .head_upper .h_group {
        display: flex;
        gap: 15px;
    }
    /* task: ヘッダー割れ start */
    @media print, screen and (max-width: 1000px) {
		.header_wrap .head_upper .h_logo a{
			display: block;
			width: 149px;
			height: 30px;
			background: url("../images/common/logo.png") no-repeat;
			background-size: contain;
			text-indent: -9999px;
		}
		.header_wrap .head_upper .h_logo_yamada{
			width: 160px;
			height: 40px;
		}
		.header_wrap .head_upper .h_tel{
			width: 200px;
			height: 35px;
		}
		.header_wrap .head_upper .h_line{
			width: 150px;
			height: 35px;
		}
	}
    /* end */
	.global_nav{
		background: rgba(0,0,0,0.7);
		padding: 0 40px;
		height: 60px;
	}
	.global_nav.top_nav{
		background: rgba(0,0,0,0.3);
	}
	.global_nav > ul{
		/* max-width: 1180px; */
        /* task: ヘッダー割れ start */
        max-width: max-content;
        /* end */
		margin: auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.global_nav > ul > li{
		padding: 0 0.5em;
		position: relative;
	}
	.global_nav > ul > li > a,
	.global_nav > ul > li.sub_menu > div{
		position: relative;
		height: 60px;
		display: flex;
		align-items: center;
		color: #FFF;
		font-size: 1.8rem;
		text-decoration: none;
		cursor: pointer;
	}
    /* task: ヘッダー割れ start */
    @media print, screen and (max-width: 1400px) {
		.global_nav > ul > li > a,
		.global_nav > ul > li.sub_menu > div{
			font-size: 1.5rem;
		}
	}
	@media print, screen and (max-width: 1100px) {
        .global_nav {
            padding: 0 !important;
        }
		.global_nav > ul > li > a,
		.global_nav > ul > li.sub_menu > div{
			font-size: 1.3rem;
		}
	}
	@media print, screen and (max-width: 900px) {
        .global_nav {
            padding: 0 !important;
        }
		.global_nav > ul > li > a,
		.global_nav > ul > li.sub_menu > div{
			font-size: 1rem;
		}
	}
    /* end */
	.global_nav > ul > li > a::after,
	.global_nav > ul > li.sub_menu > div::after{
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #FFF;
		transform: scaleX(0);
		transition: all .3s ease;
	}
	.global_nav > ul > li > a:hover::after,
	.global_nav > ul > li.sub_menu > div:hover::after{
		transform: scaleX(1);
	}
	.global_nav ul li ul{
        /* task: ヘッダー割れ start */
		/* visibility: hidden; */
        display: none;
        /* end */
		position: absolute;
		top: 60px;
		left: 0;
	}
	.global_nav ul li:hover > ul{
        /* task: ヘッダー割れ start */
		/* visibility: visible; */
        display: block;
        /* end */
		background: #333333;
		height: inherit;
		padding: 1em 0;
		transition: all .3s ease;
	}
	.global_nav ul li:hover > ul li a{
		text-decoration: none;
		color: #EAEAEA;
		white-space: nowrap;
		font-size: 1.4rem;
		font-weight: 300;
		line-height: 1.7;
		display: block;
		padding: 0.8em 3em;
	}
	.global_nav ul li:hover > ul li a:before{
		content: '-　';
	}
	.global_nav ul li:hover > ul li a span{
		display: block;
		font-size: 10px;
		font-size: 1.0rem;
		padding-left: 2em
	}
	.global_nav ul li:hover > ul li a:hover{
		color: #DB963E;
	}
    /* task: ヘッダー割れ start */
    .navbar-scroll li {
		position: relative;
	}
    /* end */
	.header_wrap .nav-toggle{
		display: none;
	}
}
/* =====================================
スマホヘッダー
======================================== */
@media screen and (max-width: 768px) {
	.header{
		position: fixed;
		background: #FFF;
		width: 100%;
		z-index: 10000;
	}
	.header_wrap{
		margin:0;
		height: 50px;
		box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.15);
	}
	.header_wrap .head_upper{
		width: 100%;
		height: 50px;
		margin: 0 auto;
	}
	.header_wrap .head_upper .h_logo{
		position: absolute;
		top: 15px;
		left: 10px;
	}
	.header_wrap .head_upper .h_logo a{
		display: block;
		width: 103px;
		height: 20px;
		background: url("../images/common/logo.png") no-repeat;
		background-size: contain;
		text-indent: -9999px;
	}
	.header_wrap .head_upper .h_logo_yamada{
		position: absolute;
		top: 10px;
		left: 130px;
		width: 140px;
		height: 20px;
	}
	.header_wrap .head_upper .h_tel{
		display: none;
	}
	.header_wrap .head_upper .h_line{
		position: absolute;
		top: 10px;
		right: 60px;
		width: 30px;
		height: 30px;
	}
	/* Toggle Button */
	.nav-toggle {
		position: fixed;
		right: 15px;
		top: 5px;
		width: 40px;
		height: 40px;
		cursor: pointer;
		z-index: 10200;
	}
	.nav-toggle div {
		position: relative;
	}
	.nav-toggle span {
		display: block;
		position: absolute;
		left: 8px;
		height: 1px;
		width: 24px;
		background: #333333;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}
	.nav-toggle span:nth-child(1) {
		top: 10px;
	}
	.nav-toggle span:nth-child(2) {
		top: 19px;
	}
	.nav-toggle span:nth-child(3) {
		top: 28px;
	}
	/* #nav-toggle 切り替えアニメーション */
	.nav-toggle.active span {
		background: #FFF;
	}
	.nav-toggle.active span:nth-child(1) {
		top: 20px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	.nav-toggle.active span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.nav-toggle.active span:nth-child(3) {
		top: 20px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}

	/* .global_nav スライドアニメーション */
	.open .global_nav {
		-moz-transform: translateX(-100vw);
		-webkit-transform: translateX(-100vw);
		transform: translateX(-100vw);
	}
	/* 開いてないときは画面外に配置 */
	.global_nav{
		position: fixed;
		top: 0;
		right: -100vw;
        width: 100%;
		height: 100%;
		overflow: scroll;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
		z-index: 10100;
		background: rgba(21,22,26,0.9);
		padding-top: 60px;
	}
	.global_nav ul{
		border-top: 1px solid #333333;
	}
	.global_nav ul li{
		border-bottom: 1px solid #333333;
	}
	.global_nav ul li a,
	.global_nav ul li.sub_menu div{
		display: block;
		color: #FFF;
		text-decoration: none;
		font-size: 12px;
		font-size: 1.2rem;
		padding: 2em 4em;
		cursor: pointer;
	}
	.global_nav ul li a span,
	.global_nav ul li.sub_menu span{
		font-size: 10px;
		font-size: 1.0rem;
		margin-left: 2em
	}
	.global_nav ul li ul{
		display: none;
	}
	.global_nav ul li ul li{
		border-bottom: 1px solid #4B4B4B;
	}
	.global_nav ul li ul li:last-child{
		border-bottom: none;
	}
	.global_nav ul li ul li a{
		background: #333333;
	}
	.global_nav ul li ul li a:before{
		content: '-　';
	}
	.global_nav ul li.sub_menu > div{
		background: url("../images/common/swich_down.png") no-repeat center right 20px;
		background-size: 14px auto;
	}
	.global_nav ul li.sub_menu > div.sub_active{
		background: url("../images/common/swich_up.png") no-repeat center right 20px;
		background-size: 14px auto;
	}
}
/* =====================================
パンくず
======================================== */
.breadcrumb{
	margin: auto;
	max-width: 1280px;
	padding: 10px 50px 0 50px;
	font-size:12px;
	font-size:1.2rem;
	display:flex;
	flex-wrap:wrap;
}
.breadcrumb li{
	display: inline-block;
}
.breadcrumb li a{
	position: relative;
	color: #333;
	text-decoration:none;
	padding-right: 2em;
}
.breadcrumb li a:hover{
	color: #DB963E;
	text-decoration:underline
}
.breadcrumb li a::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 0.8em;
	width: 6px;
	height: 6px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
	margin-top: -3px;
}
@media screen and (max-width: 768px) {
	.breadcrumb{
		padding: 10px 20px 0 20px;
		font-size: 1.0rem;
	}
	.breadcrumb li a::after{
		width: 4px;
		height: 4px;
		margin-top: -2px;
	}
}
/* =====================================
コンテンツ共通
======================================== */
.btn_area{
	margin: 60px auto auto;
}
@media print, screen and (min-width: 769px) {
	.btn_area.col2{
		display: flex;
		justify-content: center;
	}
	.btn_area.col2 .btn_wrap{
		margin: auto 30px;
	}
}
.wrap{
	padding: 140px 0;
}
h1.page_title{
	margin-top: 60px;
	font-family: 'Kaisei Opti', serif;
	text-align: center;
	font-size: 3.4rem;
	line-height: 1.4;
}
h1.page_title span{
	font-family: 'Parisienne', cursive;
	display: block;
	color: #DB963E;
	font-size: 2.8rem;
	line-height: 1;
}
.lead_text{
	text-align: center;
	font-size: 2.2rem;
}
.bottom_line{
	border-top: 1px solid #CCC;
	margin-top: 70px;
}
.nopage_txt_wrap{
	max-width: 1260px;
	margin: auto;
	padding: 70px 40px;
}
.nopage_txt{
	max-width: 980px;
	margin: auto;
	padding: 50px;
	border: 1px solid #CCC;
}
@media screen and (max-width: 768px) {
	.btn_area{
		margin: 30px auto auto;
	}
	.btn_area.col2 .btn_wrap{
		margin: 20px auto auto;
	}
	.wrap{
		padding: 50px 0;
	}
	h1.page_title{
		margin-top: 30px;
		font-size: 1.8rem;
	}
	h1.page_title span{
		font-size: 1.8rem;
	}
	.lead_text{
		font-size: 1.4rem;
	}
	.bottom_line{
		margin-top: 30px;
	}
	.nopage_txt_wrap{
		padding: 30px 20px;
	}
	.nopage_txt{
		padding: 30px;
	}
}

.page_banner {
	margin: 60px auto 40px;
    max-width: 1050px;
    padding: 0 40px;
    margin-top: 60px;
    margin-bottom: 40px;
}
.page_banner a {
	display: block;
	transition: .3s;
	opacity: 1;
}
.page_banner a:hover {
	opacity: .6;
}
@media screen and (max-width: 768px) {
	.page_banner {
		padding: 0 20px;
	}
}

/*! コンテンツ共通 */
.page_description {
  text-align: center;
  font-family: "Kaisei Opti", serif;
  font-size: 2.2rem;
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .page_description {
    font-size: 1.6rem;
    margin-top: 10px;
  }
}

.page_lead {
  font-family: "Kaisei Opti", serif;
  font-size: 2rem;
  text-align: center;
  margin-top: 23px;
  margin-bottom: 70px;
}
@media screen and (max-width: 768px) {
  .page_lead {
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
}
.page_lead span {
  position: relative;
}
.page_lead span::before {
  content: "";
  display: block;
  width: 100px;
  height: 1px;
  background-color: #DB963E;
  position: absolute;
  top: 50%;
  left: -138px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .page_lead span::before {
    width: 30px;
    left: -38px;
  }
}
.page_lead span::after {
  content: "";
  display: block;
  width: 100px;
  height: 1px;
  background-color: #DB963E;
  position: absolute;
  top: 50%;
  right: -138px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .page_lead span::after {
    width: 30px;
    right: -38px;
  }
}

/* =====================================
ページトップ
======================================== */
.page_top{
	position: fixed;
	right: 20px;
	width: 60px;
	z-index: 10;
}
@media screen and (max-width: 1080px) {
	.page_top{
		width: 70px;
	}
}
@media screen and (max-width: 768px) {
	.page_top{
		right: 10px;
		width: 40px;
	}
}
/* =====================================
問い合わせ
======================================== */
.fix_contact{
	position: fixed;
	bottom:0;
	z-index: 100;
	background: #F19B38;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media print, screen and (min-width: 769px) {
	.fix_contact{
		padding: 20px 40px;
	}
	.fix_contact .f_tel{
		width: 30%;
		max-width: 300px;
	}
	.fix_contact .f_link_btn_box{
		width: 68%;
		max-width: 830px;
		margin-left: 2%;
		display: flex;
		align-items: center;
	}
	.fix_contact .f_link_btn_box div{
		margin-left: 10px;
		width: 25%;
		max-width: 200px;
	}
	.fix_contact .f_link_btn_box div a{
		display: block;
		background: #FAE34C;
	}
	.fix_contact .f_link_btn_box div a:hover{
		background: #FFFF00;
	}
}
@media screen and (max-width: 768px) {
	.fix_contact{
		height: 60px;
	}
	.fix_contact .f_tel{
		width: 28%;
		text-align: center;
	}
	.fix_contact .f_tel a{
		display: block;
		height: 60px;
		width: 100%;
		text-decoration: none;
	}
	.fix_contact .f_tel a img{
		height: 60px;
		width: auto;
	}
	.fix_contact .f_link_btn_box{
		width: 72%;
		display: flex;
		align-items: center;
		height: 60px;
		background: #FAE34C;
	}
	.fix_contact .f_link_btn_box div{
		display: flex;
		align-items: center;
		width: 25%;
		border-left: 1px solid #F19B38;
	}
	.fix_contact .f_link_btn_box div a{
		display: block;
		width: 100%;
		height: 60px;
		text-align: center;
	}
	.fix_contact .f_link_btn_box div a img{
		height: 60px;
		width: auto;
	}
}
/* =====================================
フッター
======================================== */
.footer{
	background: #F5F5F5;
}
.footer a{
	color: #333;
	text-decoration: none;
}
.footer_info_wrap{
	background: #EEEEEE;
}
@media print, screen and (min-width: 769px) {
	.footer{
		font-size: 1.4rem;
		display: flex;
		padding-bottom: 100px;
	}
	.footer_navi_wrap{
		width: 65%;
		padding: 80px;
	}
	.footer_nav{
		display: flex;
		flex-wrap: wrap;
		font-weight: 600;
		max-width: 720px;
		margin: auto 0 auto auto;
	}
	.footer_nav > ul,
	.footer_nav .f_sns{
		width: 33.333%;
		padding-right: 1em;
		margin-bottom: 40px !important;
	}
	.footer_nav ul li a:hover{
		color: #DB963E;
	}
	.footer_nav ul li ul li a{
		position: relative;
		display: inline-block;
		vertical-align: middle;
		padding-left: 1em;
	}
	.footer_nav ul li ul li a::before{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 1px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 6px;
		height: 6px;
		border-top: 1px solid #404040;
		border-right: 1px solid #404040;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.footer_nav .f_sns .f_sns_list{
		display: flex;
		margin-top: 10px;
	}
	.footer_nav .f_sns .f_sns_list a{
		display: block;
		max-width: 40px;
		margin-right: 17px;
	}
	.footer_nav .f_sns .f_sns_list a:last-child{
		margin-right: 0;
	}
	.footer_info_wrap{
		width: 35%;
		padding: 80px;
	}
	.footer_info_wrap .f_logo{
		max-width: 190px;
	}
	.footer_info_wrap .f_logo img{
		margin-bottom: 10px;
	}
	.footer_info_wrap p{
		margin-top: 1.5em;
	}
	.footer_info_wrap p.sub{
		margin-top: 0.5em;
	}
	.footer_info_wrap p a{
		text-decoration: underline
	}
	.footer_info_wrap p a:hover{
		color: #DB963E;
	}
	.footer_info_wrap .copy{
		margin-top: 2em;
		font-size: 1.2rem;
	}
}
.footer_nav ul li .f_menu_icon::before{
	content: "";
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	margin: 0 0.5em 0 0;
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
}
.footer_nav ul li .f_menu_event::before{
	background-image: url("../images/common/f_menu_icon_event.png")
}
.footer_nav ul li .f_menu_works::before{
	background-image: url("../images/common/f_menu_icon_works.png")
}
.footer_nav ul li .f_menu_sale::before{
	background-image: url("../images/common/f_menu_icon_sale.png")
}
.footer_nav ul li .f_menu_lineup::before{
	background-image: url("../images/common/f_menu_icon_lineup.png")
}
@media screen and (max-width: 768px) {
	.footer{
		padding-bottom: 60px;
	}
	.footer_navi_wrap{
		padding: 0;
	}
	.footer_nav{
		font-weight: 600;
	}
	.footer_nav > ul > li{
		border-bottom: 1px solid #D1D1D1;
	}
	.footer_nav > ul > li a{
		display: block;
		color: #333333;
		text-decoration: none;
		padding: 2em 3em;
		cursor: pointer;
	}
	.footer_nav > ul > li.f_sub_menu div{
		padding: 2em 3em 1em 3em;
	}
	.footer_nav ul li ul li{
		padding: 0 0 1em 3em !important;
	}
	.footer_nav ul li ul li:last-child{
		padding: 0 0 2em 3em;
	}
	.footer_nav ul li ul li a{
		position: relative;
		display: inline-block;
		vertical-align: middle;
		padding: 0 0 0 1em;
	}
	.footer_nav ul li ul li a::before{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 1px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 4px;
		height: 4px;
		border-top: 1px solid #404040;
		border-right: 1px solid #404040;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.footer_nav .f_sns{
		padding: 30px 20px 50px 20px;
		text-align: center;
	}
	.footer_nav .f_sns .f_sns_list{
		display: flex;
		justify-content: center;
		margin-top: 10px;
	}
	.footer_nav .f_sns .f_sns_list a{
		display: block;
		max-width: 50px;
		margin-right: 20px;
	}
	.footer_nav .f_sns .f_sns_list a:last-child{
		margin-right: 0;
	}
	.footer_info_wrap{
		padding: 50px 20px;
		text-align: center;
	}
	.footer_info_wrap .f_logo{
		max-width: 200px;
		margin: auto;
	}
	.footer_info_wrap .f_logo img{
		margin-bottom: 10px;
	}
	.footer_info_wrap p{
		margin-top: 1.5em;
	}
	.footer_info_wrap p.sub{
		margin-top: 0.5em;
	}
	.footer_info_wrap p a{
		text-decoration: underline
	}
	.footer_info_wrap .copy{
		margin-top: 3em;
		font-size: 1.0rem;
	}
}